Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -844,7 +844,7 @@ type Claim {
This target accepts multipart file uploads, and will automatically attach the uploaded files to the given claim.
Therefore, the same claim can be refreshed in GraphQL and it should be visible in the `Claim.files` field.
"""
targetFileUploadUri: String!
targetFileUploadUri: String
"""
A list of all the member-visible, uploaded files for this claim.
"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -194,19 +194,19 @@ private fun ClaimDetailScreen(
is ClaimDetailUiState.Content -> {
val photoCaptureState = rememberPhotoCaptureState(appPackageId = appPackageId) { uri ->
logcat { "ChatFileState sending photoCaptureState uri:$uri" }
onFilesToUploadSelected(listOf(uri.toAndroidUri()), uiState.uploadUri)
uiState.uploadUri?.let { onFilesToUploadSelected(listOf(uri.toAndroidUri()), it) }
}
val photoPicker = rememberLauncherForActivityResult(
contract = ActivityResultContracts.PickMultipleVisualMedia(),
) { resultingUriList: List<Uri> ->
logcat { "ChatFileState sending photoPicker uris:$resultingUriList" }
onFilesToUploadSelected(resultingUriList, uiState.uploadUri)
uiState.uploadUri?.let { onFilesToUploadSelected(resultingUriList, it) }
}
val filePicker = rememberLauncherForActivityResult(
contract = ActivityResultContracts.GetMultipleContents(),
) { resultingUriList: List<Uri> ->
logcat { "ChatFileState sending filePicker uris:$resultingUriList" }
onFilesToUploadSelected(resultingUriList, uiState.uploadUri)
uiState.uploadUri?.let { onFilesToUploadSelected(resultingUriList, it) }
}
ClaimDetailContentScreen(
uiState = uiState,
Expand Down Expand Up @@ -504,29 +504,34 @@ private fun BeforeGridContent(
.fillMaxWidth()
.padding(horizontal = 2.dp),
)
Spacer(Modifier.height(24.dp))
HedvigText(
stringResource(Res.string.claim_status_detail_uploaded_files_info_title),
Modifier.padding(horizontal = 2.dp),
)
Spacer(Modifier.height(8.dp))
when (uiState.submittedContent) {
is ClaimDetailUiState.Content.SubmittedContent.Audio -> {
ClaimDetailHedvigAudioPlayerItem(uiState.submittedContent.signedAudioURL)
}
val hasUploadedFilesSection = uiState.submittedContent != null ||
uiState.files.isNotEmpty() ||
uiState.isUploadingFilesEnabled
if (hasUploadedFilesSection) {
Spacer(Modifier.height(24.dp))
HedvigText(
stringResource(Res.string.claim_status_detail_uploaded_files_info_title),
Modifier.padding(horizontal = 2.dp),
)
Spacer(Modifier.height(8.dp))
when (uiState.submittedContent) {
is ClaimDetailUiState.Content.SubmittedContent.Audio -> {
ClaimDetailHedvigAudioPlayerItem(uiState.submittedContent.signedAudioURL)
}

is ClaimDetailUiState.Content.SubmittedContent.FreeText -> {
HedvigCard(Modifier.fillMaxWidth()) {
HedvigText(
uiState.submittedContent.text,
Modifier.padding(16.dp),
)
is ClaimDetailUiState.Content.SubmittedContent.FreeText -> {
HedvigCard(Modifier.fillMaxWidth()) {
HedvigText(
uiState.submittedContent.text,
Modifier.padding(16.dp),
)
}
}
}

else -> {}
null -> {}
}
Spacer(Modifier.height(8.dp))
}
Spacer(Modifier.height(8.dp))
}

@Composable
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ internal sealed interface ClaimDetailUiState {
val claimStatusCardUiState: ClaimStatusCardUiState,
val claimStatus: ClaimStatus,
val claimOutcome: ClaimOutcome,
val uploadUri: String,
val uploadUri: String?,
val isUploadingFile: Boolean,
val uploadError: String?,
val claimType: String?,
Expand Down
Loading