@oneblink/apps-react 2.3.0-beta.2 → 2.3.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/OneBlinkAutoSaveForm.d.ts +10 -10
- package/dist/OneBlinkAutoSaveForm.js +28 -28
- package/dist/OneBlinkForm.d.ts +11 -11
- package/dist/OneBlinkForm.js +11 -11
- package/dist/OneBlinkFormBase.d.ts +29 -28
- package/dist/OneBlinkFormBase.js +479 -472
- package/dist/OneBlinkFormBase.js.map +1 -1
- package/dist/OneBlinkReadOnlyForm.d.ts +11 -11
- package/dist/OneBlinkReadOnlyForm.js +48 -48
- package/dist/components/CopyToClipboardIconButton.d.ts +10 -10
- package/dist/components/CopyToClipboardIconButton.js +32 -32
- package/dist/components/CustomAccordion.d.ts +27 -27
- package/dist/components/CustomAccordion.js +37 -37
- package/dist/components/ErrorSnackbar.d.ts +8 -8
- package/dist/components/ErrorSnackbar.js +25 -25
- package/dist/components/Lists.d.ts +25 -25
- package/dist/components/Lists.js +44 -44
- package/dist/components/LoadingWithMessage.d.ts +6 -6
- package/dist/components/LoadingWithMessage.js +11 -11
- package/dist/components/formStore/FormStoreTableProvider.d.ts +6 -6
- package/dist/components/formStore/FormStoreTableProvider.js +90 -90
- package/dist/components/formStore/OneBlinkFormStoreClearFiltersButton.d.ts +5 -5
- package/dist/components/formStore/OneBlinkFormStoreClearFiltersButton.js +19 -19
- package/dist/components/formStore/OneBlinkFormStoreColumnsButton.d.ts +5 -5
- package/dist/components/formStore/OneBlinkFormStoreColumnsButton.js +66 -66
- package/dist/components/formStore/OneBlinkFormStoreDownloadButton.d.ts +5 -5
- package/dist/components/formStore/OneBlinkFormStoreDownloadButton.js +86 -86
- package/dist/components/formStore/OneBlinkFormStoreProvider.d.ts +8 -8
- package/dist/components/formStore/OneBlinkFormStoreProvider.js +24 -24
- package/dist/components/formStore/OneBlinkFormStoreRefreshButton.d.ts +5 -5
- package/dist/components/formStore/OneBlinkFormStoreRefreshButton.js +11 -11
- package/dist/components/formStore/OneBlinkFormStoreTable.d.ts +4 -4
- package/dist/components/formStore/OneBlinkFormStoreTable.js +194 -194
- package/dist/components/formStore/display/ElementDisplay.d.ts +23 -23
- package/dist/components/formStore/display/ElementDisplay.js +77 -77
- package/dist/components/formStore/display/FormStoreIcon.d.ts +2 -2
- package/dist/components/formStore/display/FormStoreIcon.js +2 -2
- package/dist/components/formStore/table/ActionedByTableCell.d.ts +11 -11
- package/dist/components/formStore/table/ActionedByTableCell.js +43 -43
- package/dist/components/formStore/table/ColumnFilters.d.ts +9 -9
- package/dist/components/formStore/table/ColumnFilters.js +179 -179
- package/dist/components/formStore/table/FormElementTableCell.d.ts +10 -10
- package/dist/components/formStore/table/FormElementTableCell.js +228 -228
- package/dist/components/formStore/table/HeaderCellMoreButton.d.ts +9 -9
- package/dist/components/formStore/table/HeaderCellMoreButton.js +48 -48
- package/dist/components/formStore/table/RepeatableSetCell.d.ts +8 -8
- package/dist/components/formStore/table/RepeatableSetCell.js +62 -62
- package/dist/components/formStore/table/RepeatableSetCellAccordion.d.ts +9 -9
- package/dist/components/formStore/table/RepeatableSetCellAccordion.js +11 -11
- package/dist/components/formStore/table/TableCellCopyButton.d.ts +7 -7
- package/dist/components/formStore/table/TableCellCopyButton.js +27 -27
- package/dist/components/formStore/table/generateColumns.d.ts +24 -24
- package/dist/components/formStore/table/generateColumns.js +290 -290
- package/dist/components/formStore/table/useFormStoreTable.d.ts +52 -52
- package/dist/components/formStore/table/useFormStoreTable.js +157 -157
- package/dist/components/formStore/useFormStoreTableContext.d.ts +44 -44
- package/dist/components/formStore/useFormStoreTableContext.js +9 -9
- package/dist/components/messages/ErrorMessage.d.ts +12 -12
- package/dist/components/messages/ErrorMessage.js +12 -12
- package/dist/components/messages/LargeIconMessage.d.ts +18 -18
- package/dist/components/messages/LargeIconMessage.js +33 -33
- package/dist/components/messages/NoResourcesYet.d.ts +11 -11
- package/dist/components/messages/NoResourcesYet.js +6 -6
- package/dist/components/pickers/V4CompatibleDatePicker.d.ts +32 -32
- package/dist/components/pickers/V4CompatibleDatePicker.js +70 -70
- package/dist/components/pickers/V4CompatibleDateTimePicker.d.ts +32 -32
- package/dist/components/pickers/V4CompatibleDateTimePicker.js +70 -70
- package/dist/components/pickers/V4CompatibleTimePicker.d.ts +28 -28
- package/dist/components/pickers/V4CompatibleTimePicker.js +53 -53
- package/dist/components/renderer/AnnotationModal.d.ts +8 -8
- package/dist/components/renderer/AnnotationModal.js +101 -101
- package/dist/components/renderer/AutocompleteDropdown.d.ts +26 -26
- package/dist/components/renderer/AutocompleteDropdown.js +175 -175
- package/dist/components/renderer/CopyToClipboardButton.d.ts +8 -8
- package/dist/components/renderer/CopyToClipboardButton.js +13 -13
- package/dist/components/renderer/CustomisableButtonInner.d.ts +7 -7
- package/dist/components/renderer/CustomisableButtonInner.js +8 -8
- package/dist/components/renderer/FormElementLabelContainer.d.ts +12 -12
- package/dist/components/renderer/FormElementLabelContainer.js +15 -15
- package/dist/components/renderer/FormElementOptions.d.ts +9 -9
- package/dist/components/renderer/FormElementOptions.js +14 -14
- package/dist/components/renderer/LookupButton.d.ts +10 -10
- package/dist/components/renderer/LookupButton.js +29 -29
- package/dist/components/renderer/LookupNotification.d.ts +12 -12
- package/dist/components/renderer/LookupNotification.js +230 -230
- package/dist/components/renderer/Modal.d.ts +14 -14
- package/dist/components/renderer/Modal.js +14 -14
- package/dist/components/renderer/OnLoading.d.ts +10 -10
- package/dist/components/renderer/OnLoading.js +11 -11
- package/dist/components/renderer/OneBlinkAppsErrorOriginalMessage.d.ts +7 -7
- package/dist/components/renderer/OneBlinkAppsErrorOriginalMessage.js +12 -12
- package/dist/components/renderer/OneBlinkFormElements.d.ts +19 -19
- package/dist/components/renderer/OneBlinkFormElements.js +202 -202
- package/dist/components/renderer/PageFormElements.d.ts +17 -17
- package/dist/components/renderer/PageFormElements.js +48 -48
- package/dist/components/renderer/ProgressBar.d.ts +7 -7
- package/dist/components/renderer/ProgressBar.js +6 -6
- package/dist/components/renderer/ProgressBar.js.map +1 -1
- package/dist/components/renderer/ToggleAllCheckbox.d.ts +13 -13
- package/dist/components/renderer/ToggleAllCheckbox.js +26 -26
- package/dist/components/renderer/attachments/AttachmentStatus.d.ts +10 -10
- package/dist/components/renderer/attachments/AttachmentStatus.js +36 -36
- package/dist/components/renderer/attachments/FileCard.d.ts +19 -19
- package/dist/components/renderer/attachments/FileCard.js +60 -60
- package/dist/components/renderer/attachments/FileCardContent.d.ts +5 -5
- package/dist/components/renderer/attachments/FileCardContent.js +10 -10
- package/dist/components/renderer/attachments/ImagePreviewUnavailable.d.ts +4 -4
- package/dist/components/renderer/attachments/ImagePreviewUnavailable.js +11 -11
- package/dist/components/renderer/attachments/ProgressBar.d.ts +8 -8
- package/dist/components/renderer/attachments/ProgressBar.js +33 -33
- package/dist/form-elements/ComplianceButton.d.ts +10 -10
- package/dist/form-elements/ComplianceButton.js +11 -11
- package/dist/form-elements/FormElementABN.d.ts +14 -14
- package/dist/form-elements/FormElementABN.js +155 -155
- package/dist/form-elements/FormElementAutocomplete.d.ts +19 -19
- package/dist/form-elements/FormElementAutocomplete.js +81 -81
- package/dist/form-elements/FormElementBSB.d.ts +18 -18
- package/dist/form-elements/FormElementBSB.js +100 -100
- package/dist/form-elements/FormElementBarcodeScanner.d.ts +14 -14
- package/dist/form-elements/FormElementBarcodeScanner.js +306 -306
- package/dist/form-elements/FormElementBoolean.d.ts +14 -14
- package/dist/form-elements/FormElementBoolean.js +16 -16
- package/dist/form-elements/FormElementCalculation.d.ts +11 -11
- package/dist/form-elements/FormElementCalculation.js +179 -179
- package/dist/form-elements/FormElementCamera.d.ts +15 -15
- package/dist/form-elements/FormElementCamera.js +227 -227
- package/dist/form-elements/FormElementCaptcha.d.ts +12 -12
- package/dist/form-elements/FormElementCaptcha.js +14 -14
- package/dist/form-elements/FormElementCheckBoxes.d.ts +15 -15
- package/dist/form-elements/FormElementCheckBoxes.js +64 -64
- package/dist/form-elements/FormElementCivicaNameRecord.d.ts +8 -8
- package/dist/form-elements/FormElementCivicaNameRecord.js +51 -51
- package/dist/form-elements/FormElementCivicaStreetName.d.ts +15 -15
- package/dist/form-elements/FormElementCivicaStreetName.js +38 -38
- package/dist/form-elements/FormElementCompliance.d.ts +22 -22
- package/dist/form-elements/FormElementCompliance.js +129 -129
- package/dist/form-elements/FormElementDate.d.ts +14 -14
- package/dist/form-elements/FormElementDate.js +74 -74
- package/dist/form-elements/FormElementDateTime.d.ts +14 -14
- package/dist/form-elements/FormElementDateTime.js +67 -67
- package/dist/form-elements/FormElementEmail.d.ts +14 -14
- package/dist/form-elements/FormElementEmail.js +22 -22
- package/dist/form-elements/FormElementFile.d.ts +13 -13
- package/dist/form-elements/FormElementFile.js +31 -31
- package/dist/form-elements/FormElementFiles.d.ts +15 -15
- package/dist/form-elements/FormElementFiles.js +42 -42
- package/dist/form-elements/FormElementForm.d.ts +17 -17
- package/dist/form-elements/FormElementForm.js +63 -63
- package/dist/form-elements/FormElementFreshdeskDependentField.d.ts +8 -8
- package/dist/form-elements/FormElementFreshdeskDependentField.js +15 -15
- package/dist/form-elements/FormElementGeoscapeAddress.d.ts +15 -15
- package/dist/form-elements/FormElementGeoscapeAddress.js +62 -62
- package/dist/form-elements/FormElementHTML.d.ts +8 -8
- package/dist/form-elements/FormElementHTML.js +15 -15
- package/dist/form-elements/FormElementHeading.d.ts +8 -8
- package/dist/form-elements/FormElementHeading.js +23 -23
- package/dist/form-elements/FormElementImage.d.ts +8 -8
- package/dist/form-elements/FormElementImage.js +6 -6
- package/dist/form-elements/FormElementLocation.d.ts +20 -20
- package/dist/form-elements/FormElementLocation.js +204 -204
- package/dist/form-elements/FormElementNumber.d.ts +14 -14
- package/dist/form-elements/FormElementNumber.js +72 -72
- package/dist/form-elements/FormElementPointAddress.d.ts +15 -15
- package/dist/form-elements/FormElementPointAddress.js +69 -69
- package/dist/form-elements/FormElementRadio.d.ts +15 -15
- package/dist/form-elements/FormElementRadio.js +41 -41
- package/dist/form-elements/FormElementRepeatableSet.d.ts +19 -19
- package/dist/form-elements/FormElementRepeatableSet.js +126 -126
- package/dist/form-elements/FormElementSection.d.ts +8 -8
- package/dist/form-elements/FormElementSection.js +69 -69
- package/dist/form-elements/FormElementSelect.d.ts +15 -15
- package/dist/form-elements/FormElementSelect.js +44 -44
- package/dist/form-elements/FormElementSignature.d.ts +15 -15
- package/dist/form-elements/FormElementSignature.js +138 -138
- package/dist/form-elements/FormElementSummary.d.ts +11 -11
- package/dist/form-elements/FormElementSummary.js +159 -159
- package/dist/form-elements/FormElementTelephone.d.ts +14 -14
- package/dist/form-elements/FormElementTelephone.js +22 -22
- package/dist/form-elements/FormElementText.d.ts +14 -14
- package/dist/form-elements/FormElementText.js +29 -29
- package/dist/form-elements/FormElementTextarea.d.ts +14 -14
- package/dist/form-elements/FormElementTextarea.js +30 -30
- package/dist/form-elements/FormElementTime.d.ts +14 -14
- package/dist/form-elements/FormElementTime.js +53 -53
- package/dist/form-elements/OptionButton.d.ts +11 -11
- package/dist/form-elements/OptionButton.js +9 -9
- package/dist/hooks/attachments/useAttachment.d.ts +12 -12
- package/dist/hooks/attachments/useAttachment.js +242 -242
- package/dist/hooks/attachments/useAttachmentBlobs.d.ts +19 -19
- package/dist/hooks/attachments/useAttachmentBlobs.js +23 -23
- package/dist/hooks/attachments/useAttachments.d.ts +10 -10
- package/dist/hooks/attachments/useAttachments.js +69 -69
- package/dist/hooks/useAbnLookupAuthenticationGuid.d.ts +3 -3
- package/dist/hooks/useAbnLookupAuthenticationGuid.js +5 -5
- package/dist/hooks/useAuth.d.ts +15 -15
- package/dist/hooks/useAuth.js +42 -42
- package/dist/hooks/useBooleanState.d.ts +5 -5
- package/dist/hooks/useBooleanState.js +8 -8
- package/dist/hooks/useCaptchaSiteKey.d.ts +3 -3
- package/dist/hooks/useCaptchaSiteKey.js +5 -5
- package/dist/hooks/useClickOutsideElement.d.ts +3 -3
- package/dist/hooks/useClickOutsideElement.js +14 -14
- package/dist/hooks/useConditionalLogic.d.ts +6 -6
- package/dist/hooks/useConditionalLogic.js +22 -22
- package/dist/hooks/useContrastColor.d.ts +2 -2
- package/dist/hooks/useContrastColor.js +12 -12
- package/dist/hooks/useDynamicOptionsLoaderState.d.ts +7 -7
- package/dist/hooks/useDynamicOptionsLoaderState.js +44 -44
- package/dist/hooks/useExecutedLookupCallback.d.ts +12 -12
- package/dist/hooks/useExecutedLookupCallback.js +15 -15
- package/dist/hooks/useFlatpickr.d.ts +10 -10
- package/dist/hooks/useFlatpickr.js +73 -73
- package/dist/hooks/useFlatpickrGuid.d.ts +7 -7
- package/dist/hooks/useFlatpickrGuid.js +11 -11
- package/dist/hooks/useFlattenElementsContext.d.ts +2 -2
- package/dist/hooks/useFlattenElementsContext.js +7 -7
- package/dist/hooks/useFormDefinition.d.ts +4 -4
- package/dist/hooks/useFormDefinition.js +9 -9
- package/dist/hooks/useFormElementOptions.d.ts +9 -9
- package/dist/hooks/useFormElementOptions.js +35 -35
- package/dist/hooks/useFormIsReadOnly.d.ts +3 -3
- package/dist/hooks/useFormIsReadOnly.js +5 -5
- package/dist/hooks/useFormSubmissionAutoSaveState.d.ts +24 -24
- package/dist/hooks/useFormSubmissionAutoSaveState.js +145 -145
- package/dist/hooks/useFormSubmissionModelContext.d.ts +15 -15
- package/dist/hooks/useFormSubmissionModelContext.js +32 -32
- package/dist/hooks/useFormSubmissionState.d.ts +10 -10
- package/dist/hooks/useFormSubmissionState.js +13 -13
- package/dist/hooks/useFormValidation.d.ts +7 -7
- package/dist/hooks/useFormValidation.js +29 -29
- package/dist/hooks/useGoogleMapsApiKey.d.ts +3 -3
- package/dist/hooks/useGoogleMapsApiKey.js +5 -5
- package/dist/hooks/useInfiniteScrollDataLoad.d.ts +30 -30
- package/dist/hooks/useInfiniteScrollDataLoad.js +124 -124
- package/dist/hooks/useInjectPages.d.ts +7 -7
- package/dist/hooks/useInjectPages.js +5 -5
- package/dist/hooks/useIsHovering.d.ts +5 -5
- package/dist/hooks/useIsHovering.js +12 -12
- package/dist/hooks/useIsMounted.d.ts +3 -3
- package/dist/hooks/useIsMounted.js +11 -11
- package/dist/hooks/useIsOffline.d.ts +6 -6
- package/dist/hooks/useIsOffline.js +26 -26
- package/dist/hooks/useIsPageVisible.d.ts +9 -9
- package/dist/hooks/useIsPageVisible.js +8 -8
- package/dist/hooks/useLoadDataState.d.ts +15 -15
- package/dist/hooks/useLoadDataState.js +54 -54
- package/dist/hooks/useLogin.d.ts +46 -46
- package/dist/hooks/useLogin.js +295 -295
- package/dist/hooks/useLookupNotification.d.ts +9 -9
- package/dist/hooks/useLookupNotification.js +10 -10
- package/dist/hooks/useLookups.d.ts +5 -5
- package/dist/hooks/useLookups.js +62 -62
- package/dist/hooks/useNullableState.d.ts +2 -2
- package/dist/hooks/useNullableState.js +6 -6
- package/dist/hooks/usePages.d.ts +24 -24
- package/dist/hooks/usePages.js +141 -141
- package/dist/hooks/useQuery.d.ts +2 -2
- package/dist/hooks/useQuery.js +7 -7
- package/dist/hooks/useSubmissionIdIsValid.d.ts +3 -3
- package/dist/hooks/useSubmissionIdIsValid.js +19 -19
- package/dist/hooks/useToggleComplianceChildren.d.ts +3 -3
- package/dist/hooks/useToggleComplianceChildren.js +13 -13
- package/dist/index.d.ts +23 -23
- package/dist/index.js +23 -23
- package/dist/services/attachments.d.ts +10 -10
- package/dist/services/attachments.js +72 -72
- package/dist/services/barcode-readers/quagger.d.ts +1 -1
- package/dist/services/barcode-readers/quagger.js +34 -34
- package/dist/services/blob-utils.d.ts +5 -5
- package/dist/services/blob-utils.js +73 -73
- package/dist/services/checkBsbsAreInvalid.d.ts +3 -3
- package/dist/services/checkBsbsAreInvalid.js +40 -40
- package/dist/services/checkIfAttachmentsExist.d.ts +5 -5
- package/dist/services/checkIfAttachmentsExist.js +144 -144
- package/dist/services/checkIfBsbsAreValidating.d.ts +3 -3
- package/dist/services/checkIfBsbsAreValidating.js +40 -40
- package/dist/services/cleanFormSubmissionModel.d.ts +6 -6
- package/dist/services/cleanFormSubmissionModel.js +203 -203
- package/dist/services/defaultCoordinates.d.ts +5 -5
- package/dist/services/defaultCoordinates.js +8 -8
- package/dist/services/download-file.d.ts +3 -3
- package/dist/services/download-file.js +90 -90
- package/dist/services/drawTimestampOnCanvas.d.ts +1 -1
- package/dist/services/drawTimestampOnCanvas.js +22 -22
- package/dist/services/form-validation.d.ts +10 -10
- package/dist/services/form-validation.js +561 -561
- package/dist/services/generate-default-data.d.ts +13 -13
- package/dist/services/generate-default-data.js +494 -494
- package/dist/services/generateCivicaNameRecordElements.d.ts +2 -2
- package/dist/services/generateCivicaNameRecordElements.js +140 -140
- package/dist/services/generateFreshdeskDependentFieldElements.d.ts +2 -2
- package/dist/services/generateFreshdeskDependentFieldElements.js +69 -69
- package/dist/services/sanitize-html.d.ts +2 -2
- package/dist/services/sanitize-html.js +20 -20
- package/dist/services/scrolling-service.d.ts +7 -7
- package/dist/services/scrolling-service.js +38 -38
- package/dist/services/utils-service.d.ts +5 -5
- package/dist/services/utils-service.js +16 -16
- package/dist/types/attachments.d.ts +19 -19
- package/dist/types/attachments.js +1 -1
- package/dist/types/form.d.ts +40 -40
- package/dist/types/form.js +2 -2
- package/package.json +2 -2
- package/dist/OneBlinkFormStoreView.d.ts +0 -8
- package/dist/OneBlinkFormStoreView.js +0 -55
- package/dist/OneBlinkFormStoreView.js.map +0 -1
- package/dist/components/AnnotationModal.d.ts +0 -8
- package/dist/components/AnnotationModal.js +0 -104
- package/dist/components/AnnotationModal.js.map +0 -1
- package/dist/components/AutocompleteDropdown.d.ts +0 -26
- package/dist/components/AutocompleteDropdown.js +0 -174
- package/dist/components/AutocompleteDropdown.js.map +0 -1
- package/dist/components/CopyToClipboardButton.d.ts +0 -9
- package/dist/components/CopyToClipboardButton.js +0 -14
- package/dist/components/CopyToClipboardButton.js.map +0 -1
- package/dist/components/CustomisableButtonInner.d.ts +0 -7
- package/dist/components/CustomisableButtonInner.js +0 -9
- package/dist/components/CustomisableButtonInner.js.map +0 -1
- package/dist/components/ErrorMessage.d.ts +0 -13
- package/dist/components/ErrorMessage.js +0 -13
- package/dist/components/ErrorMessage.js.map +0 -1
- package/dist/components/FormElementLabelContainer.d.ts +0 -12
- package/dist/components/FormElementLabelContainer.js +0 -16
- package/dist/components/FormElementLabelContainer.js.map +0 -1
- package/dist/components/FormElementOptions.d.ts +0 -9
- package/dist/components/FormElementOptions.js +0 -15
- package/dist/components/FormElementOptions.js.map +0 -1
- package/dist/components/LookupButton.d.ts +0 -10
- package/dist/components/LookupButton.js +0 -30
- package/dist/components/LookupButton.js.map +0 -1
- package/dist/components/LookupNotification.d.ts +0 -12
- package/dist/components/LookupNotification.js +0 -231
- package/dist/components/LookupNotification.js.map +0 -1
- package/dist/components/Modal.d.ts +0 -14
- package/dist/components/Modal.js +0 -15
- package/dist/components/Modal.js.map +0 -1
- package/dist/components/NoResourcesYet.d.ts +0 -12
- package/dist/components/NoResourcesYet.js +0 -7
- package/dist/components/NoResourcesYet.js.map +0 -1
- package/dist/components/OnLoading.d.ts +0 -10
- package/dist/components/OnLoading.js +0 -12
- package/dist/components/OnLoading.js.map +0 -1
- package/dist/components/OneBlinkAppsErrorOriginalMessage.d.ts +0 -7
- package/dist/components/OneBlinkAppsErrorOriginalMessage.js +0 -13
- package/dist/components/OneBlinkAppsErrorOriginalMessage.js.map +0 -1
- package/dist/components/OneBlinkFormElements.d.ts +0 -19
- package/dist/components/OneBlinkFormElements.js +0 -196
- package/dist/components/OneBlinkFormElements.js.map +0 -1
- package/dist/components/PageFormElements.d.ts +0 -17
- package/dist/components/PageFormElements.js +0 -49
- package/dist/components/PageFormElements.js.map +0 -1
- package/dist/components/ToggleAllCheckbox.d.ts +0 -13
- package/dist/components/ToggleAllCheckbox.js +0 -27
- package/dist/components/ToggleAllCheckbox.js.map +0 -1
- package/dist/components/attachments/AttachmentStatus.d.ts +0 -12
- package/dist/components/attachments/AttachmentStatus.js +0 -35
- package/dist/components/attachments/AttachmentStatus.js.map +0 -1
- package/dist/components/attachments/FileCard.d.ts +0 -18
- package/dist/components/attachments/FileCard.js +0 -58
- package/dist/components/attachments/FileCard.js.map +0 -1
- package/dist/components/attachments/FileCardContent.d.ts +0 -5
- package/dist/components/attachments/FileCardContent.js +0 -11
- package/dist/components/attachments/FileCardContent.js.map +0 -1
- package/dist/components/attachments/Files.d.ts +0 -14
- package/dist/components/attachments/Files.js +0 -27
- package/dist/components/attachments/Files.js.map +0 -1
- package/dist/components/attachments/ImagePreviewUnavailable.d.ts +0 -4
- package/dist/components/attachments/ImagePreviewUnavailable.js +0 -12
- package/dist/components/attachments/ImagePreviewUnavailable.js.map +0 -1
- package/dist/components/attachments/UploadingAttachment.d.ts +0 -4
- package/dist/components/attachments/UploadingAttachment.js +0 -13
- package/dist/components/attachments/UploadingAttachment.js.map +0 -1
- package/dist/components/formStore/ColumnsConfigurationButton.d.ts +0 -10
- package/dist/components/formStore/ColumnsConfigurationButton.js +0 -29
- package/dist/components/formStore/ColumnsConfigurationButton.js.map +0 -1
- package/dist/components/formStore/DownloadSubmissionDataButton.d.ts +0 -13
- package/dist/components/formStore/DownloadSubmissionDataButton.js +0 -45
- package/dist/components/formStore/DownloadSubmissionDataButton.js.map +0 -1
- package/dist/components/formStore/FormStore.d.ts +0 -9
- package/dist/components/formStore/FormStore.js +0 -103
- package/dist/components/formStore/FormStore.js.map +0 -1
- package/dist/components/formStore/table/index.d.ts +0 -17
- package/dist/components/formStore/table/index.js +0 -194
- package/dist/components/formStore/table/index.js.map +0 -1
- package/dist/components/renderer/attachments/Files.d.ts +0 -14
- package/dist/components/renderer/attachments/Files.js +0 -27
- package/dist/components/renderer/attachments/Files.js.map +0 -1
- package/dist/components/renderer/attachments/UploadingAttachment.d.ts +0 -4
- package/dist/components/renderer/attachments/UploadingAttachment.js +0 -13
- package/dist/components/renderer/attachments/UploadingAttachment.js.map +0 -1
- package/dist/form-elements/FormElementFiles/FormElementFile.d.ts +0 -13
- package/dist/form-elements/FormElementFiles/FormElementFile.js +0 -32
- package/dist/form-elements/FormElementFiles/FormElementFile.js.map +0 -1
- package/dist/form-elements/FormElementFiles/FormElementFileDisplay.d.ts +0 -10
- package/dist/form-elements/FormElementFiles/FormElementFileDisplay.js +0 -11
- package/dist/form-elements/FormElementFiles/FormElementFileDisplay.js.map +0 -1
- package/dist/form-elements/FormElementFiles/FormElementFiles.d.ts +0 -15
- package/dist/form-elements/FormElementFiles/FormElementFiles.js +0 -17
- package/dist/form-elements/FormElementFiles/FormElementFiles.js.map +0 -1
- package/dist/form-elements/FormElementFiles/FormElementFilesInvalidAttachment.d.ts +0 -7
- package/dist/form-elements/FormElementFiles/FormElementFilesInvalidAttachment.js +0 -11
- package/dist/form-elements/FormElementFiles/FormElementFilesInvalidAttachment.js.map +0 -1
- package/dist/form-elements/FormElementFiles/index.d.ts +0 -17
- package/dist/form-elements/FormElementFiles/index.js +0 -18
- package/dist/form-elements/FormElementFiles/index.js.map +0 -1
- package/dist/form-elements/FormElementFiles/legacy/FormElementFiles.d.ts +0 -18
- package/dist/form-elements/FormElementFiles/legacy/FormElementFiles.js +0 -61
- package/dist/form-elements/FormElementFiles/legacy/FormElementFiles.js.map +0 -1
- package/dist/hooks/attachments/useAttachmentObjectURLs.d.ts +0 -24
- package/dist/hooks/attachments/useAttachmentObjectURLs.js +0 -37
- package/dist/hooks/attachments/useAttachmentObjectURLs.js.map +0 -1
- package/dist/hooks/attachments/useLocalAttachmentBlobs.d.ts +0 -24
- package/dist/hooks/attachments/useLocalAttachmentBlobs.js +0 -40
- package/dist/hooks/attachments/useLocalAttachmentBlobs.js.map +0 -1
- package/dist/hooks/useButtonsConfiguration.d.ts +0 -45
- package/dist/hooks/useButtonsConfiguration.js +0 -6
- package/dist/hooks/useButtonsConfiguration.js.map +0 -1
- package/dist/hooks/useChangeEffect.d.ts +0 -1
- package/dist/hooks/useChangeEffect.js +0 -14
- package/dist/hooks/useChangeEffect.js.map +0 -1
- package/dist/hooks/useConditionallyShowOptionCallback.d.ts +0 -5
- package/dist/hooks/useConditionallyShowOptionCallback.js +0 -20
- package/dist/hooks/useConditionallyShowOptionCallback.js.map +0 -1
- package/dist/hooks/useCustomValidation.d.ts +0 -1
- package/dist/hooks/useCustomValidation.js +0 -9
- package/dist/hooks/useCustomValidation.js.map +0 -1
- package/dist/hooks/useDynamicOptionsLoaderEffect.d.ts +0 -7
- package/dist/hooks/useDynamicOptionsLoaderEffect.js +0 -45
- package/dist/hooks/useDynamicOptionsLoaderEffect.js.map +0 -1
- package/dist/hooks/useLegacyElements.d.ts +0 -16
- package/dist/hooks/useLegacyElements.js +0 -55
- package/dist/hooks/useLegacyElements.js.map +0 -1
- package/dist/hooks/useToggleAll.d.ts +0 -6
- package/dist/hooks/useToggleAll.js +0 -24
- package/dist/hooks/useToggleAll.js.map +0 -1
- package/dist/services/checkIfAttachmentsAreUploading.d.ts +0 -3
- package/dist/services/checkIfAttachmentsAreUploading.js +0 -58
- package/dist/services/checkIfAttachmentsAreUploading.js.map +0 -1
- package/dist/services/clean-form-elements-ctrl-model.d.ts +0 -4
- package/dist/services/clean-form-elements-ctrl-model.js +0 -166
- package/dist/services/clean-form-elements-ctrl-model.js.map +0 -1
- package/dist/services/conditionally-show-element.d.ts +0 -11
- package/dist/services/conditionally-show-element.js +0 -92
- package/dist/services/conditionally-show-element.js.map +0 -1
- package/dist/services/conditionally-show-option.d.ts +0 -3
- package/dist/services/conditionally-show-option.js +0 -135
- package/dist/services/conditionally-show-option.js.map +0 -1
- package/dist/services/flattenFormElements.d.ts +0 -2
- package/dist/services/flattenFormElements.js +0 -13
- package/dist/services/flattenFormElements.js.map +0 -1
- package/dist/services/getCorrectDateFromDateOnlyString.d.ts +0 -2
- package/dist/services/getCorrectDateFromDateOnlyString.js +0 -4
- package/dist/services/getCorrectDateFromDateOnlyString.js.map +0 -1
- package/dist/styles/boolean.scss +0 -12
- package/dist/styles/ob-file.scss +0 -63
@@ -1,70 +1,70 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { formService } from '@oneblink/apps';
|
3
|
-
import AutocompleteDropdown from '../components/renderer/AutocompleteDropdown';
|
4
|
-
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
5
|
-
import useIsMounted from '../hooks/useIsMounted';
|
6
|
-
function FormElementPointAddress({ formId, id, element, value, displayValidationMessage, validationMessage, onChange, }) {
|
7
|
-
const isMounted = useIsMounted();
|
8
|
-
const [label, setLabel] = React.useState('');
|
9
|
-
const [error, setError] = React.useState();
|
10
|
-
const [isLoadingAddressDetails, setIsLoadingAddressDetails] = React.useState(false);
|
11
|
-
const handleSearch = React.useCallback(async (address, abortSignal) => {
|
12
|
-
setError(undefined);
|
13
|
-
const params = {
|
14
|
-
address,
|
15
|
-
maxNumberOfResults: 10,
|
16
|
-
};
|
17
|
-
if (element.stateTerritoryFilter) {
|
18
|
-
params.stateTerritory = element.stateTerritoryFilter.join(',');
|
19
|
-
}
|
20
|
-
if (element.addressTypeFilter) {
|
21
|
-
let addressType = 'all';
|
22
|
-
if (element.addressTypeFilter.length === 1) {
|
23
|
-
addressType = element.addressTypeFilter[0];
|
24
|
-
}
|
25
|
-
params.addressType = addressType;
|
26
|
-
}
|
27
|
-
const result = await formService.searchPointAddresses(formId, params, abortSignal);
|
28
|
-
return result.map((suggestion, index) => ({
|
29
|
-
value: suggestion.id || index.toString(),
|
30
|
-
label: suggestion.address || index.toString(),
|
31
|
-
}));
|
32
|
-
}, [element.addressTypeFilter, element.stateTerritoryFilter, formId]);
|
33
|
-
const handleChange = React.useCallback(async (addressId) => {
|
34
|
-
if (!addressId) {
|
35
|
-
onChange(element, undefined);
|
36
|
-
return;
|
37
|
-
}
|
38
|
-
setIsLoadingAddressDetails(true);
|
39
|
-
try {
|
40
|
-
const result = await formService.getPointAddress(formId, addressId);
|
41
|
-
onChange(element, result);
|
42
|
-
}
|
43
|
-
catch (newError) {
|
44
|
-
if (isMounted.current) {
|
45
|
-
setError(newError);
|
46
|
-
}
|
47
|
-
}
|
48
|
-
if (isMounted.current) {
|
49
|
-
setIsLoadingAddressDetails(false);
|
50
|
-
}
|
51
|
-
}, [isMounted, onChange, element, formId]);
|
52
|
-
// Ensure the label is set if the value is set outside of this component
|
53
|
-
React.useEffect(() => {
|
54
|
-
var _a;
|
55
|
-
if (value) {
|
56
|
-
const newLabel = ((_a = value.addressDetails) === null || _a === void 0 ? void 0 : _a.formattedAddress) || value.addressId;
|
57
|
-
if (label !== newLabel) {
|
58
|
-
setLabel(newLabel || '');
|
59
|
-
}
|
60
|
-
}
|
61
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
62
|
-
}, [value]);
|
63
|
-
return (React.createElement("div", { className: "cypress-point-address-element" },
|
64
|
-
React.createElement(FormElementLabelContainer, { className: "ob-point-address ob-autocomplete", element: element, id: id, required: element.required },
|
65
|
-
React.createElement(AutocompleteDropdown, { id: id, label: label, disabled: element.readOnly || isLoadingAddressDetails, placeholder: element.placeholderValue, required: element.required, value: value, validationMessage: validationMessage, displayValidationMessage: displayValidationMessage, onChangeValue: handleChange, isLoading: isLoadingAddressDetails, hasError: !!error, onChangeLabel: setLabel, searchDebounceMs: 750, searchMinCharacters: 4, onSearch: handleSearch })),
|
66
|
-
error && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
67
|
-
React.createElement("div", { className: "has-text-danger ob-error__text cypress-point-address-details-error-message" }, error.toString())))));
|
68
|
-
}
|
69
|
-
export default React.memo(FormElementPointAddress);
|
1
|
+
import * as React from 'react';
|
2
|
+
import { formService } from '@oneblink/apps';
|
3
|
+
import AutocompleteDropdown from '../components/renderer/AutocompleteDropdown';
|
4
|
+
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
5
|
+
import useIsMounted from '../hooks/useIsMounted';
|
6
|
+
function FormElementPointAddress({ formId, id, element, value, displayValidationMessage, validationMessage, onChange, }) {
|
7
|
+
const isMounted = useIsMounted();
|
8
|
+
const [label, setLabel] = React.useState('');
|
9
|
+
const [error, setError] = React.useState();
|
10
|
+
const [isLoadingAddressDetails, setIsLoadingAddressDetails] = React.useState(false);
|
11
|
+
const handleSearch = React.useCallback(async (address, abortSignal) => {
|
12
|
+
setError(undefined);
|
13
|
+
const params = {
|
14
|
+
address,
|
15
|
+
maxNumberOfResults: 10,
|
16
|
+
};
|
17
|
+
if (element.stateTerritoryFilter) {
|
18
|
+
params.stateTerritory = element.stateTerritoryFilter.join(',');
|
19
|
+
}
|
20
|
+
if (element.addressTypeFilter) {
|
21
|
+
let addressType = 'all';
|
22
|
+
if (element.addressTypeFilter.length === 1) {
|
23
|
+
addressType = element.addressTypeFilter[0];
|
24
|
+
}
|
25
|
+
params.addressType = addressType;
|
26
|
+
}
|
27
|
+
const result = await formService.searchPointAddresses(formId, params, abortSignal);
|
28
|
+
return result.map((suggestion, index) => ({
|
29
|
+
value: suggestion.id || index.toString(),
|
30
|
+
label: suggestion.address || index.toString(),
|
31
|
+
}));
|
32
|
+
}, [element.addressTypeFilter, element.stateTerritoryFilter, formId]);
|
33
|
+
const handleChange = React.useCallback(async (addressId) => {
|
34
|
+
if (!addressId) {
|
35
|
+
onChange(element, undefined);
|
36
|
+
return;
|
37
|
+
}
|
38
|
+
setIsLoadingAddressDetails(true);
|
39
|
+
try {
|
40
|
+
const result = await formService.getPointAddress(formId, addressId);
|
41
|
+
onChange(element, result);
|
42
|
+
}
|
43
|
+
catch (newError) {
|
44
|
+
if (isMounted.current) {
|
45
|
+
setError(newError);
|
46
|
+
}
|
47
|
+
}
|
48
|
+
if (isMounted.current) {
|
49
|
+
setIsLoadingAddressDetails(false);
|
50
|
+
}
|
51
|
+
}, [isMounted, onChange, element, formId]);
|
52
|
+
// Ensure the label is set if the value is set outside of this component
|
53
|
+
React.useEffect(() => {
|
54
|
+
var _a;
|
55
|
+
if (value) {
|
56
|
+
const newLabel = ((_a = value.addressDetails) === null || _a === void 0 ? void 0 : _a.formattedAddress) || value.addressId;
|
57
|
+
if (label !== newLabel) {
|
58
|
+
setLabel(newLabel || '');
|
59
|
+
}
|
60
|
+
}
|
61
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
62
|
+
}, [value]);
|
63
|
+
return (React.createElement("div", { className: "cypress-point-address-element" },
|
64
|
+
React.createElement(FormElementLabelContainer, { className: "ob-point-address ob-autocomplete", element: element, id: id, required: element.required },
|
65
|
+
React.createElement(AutocompleteDropdown, { id: id, label: label, disabled: element.readOnly || isLoadingAddressDetails, placeholder: element.placeholderValue, required: element.required, value: value, validationMessage: validationMessage, displayValidationMessage: displayValidationMessage, onChangeValue: handleChange, isLoading: isLoadingAddressDetails, hasError: !!error, onChangeLabel: setLabel, searchDebounceMs: 750, searchMinCharacters: 4, onSearch: handleSearch })),
|
66
|
+
error && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
67
|
+
React.createElement("div", { className: "has-text-danger ob-error__text cypress-point-address-details-error-message" }, error.toString())))));
|
68
|
+
}
|
69
|
+
export default React.memo(FormElementPointAddress);
|
70
70
|
//# sourceMappingURL=FormElementPointAddress.js.map
|
@@ -1,15 +1,15 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { FormTypes } from '@oneblink/types';
|
3
|
-
import { FormElementValueChangeHandler } from '../types/form';
|
4
|
-
declare type Props = {
|
5
|
-
id: string;
|
6
|
-
element: FormTypes.RadioButtonElement;
|
7
|
-
value: unknown;
|
8
|
-
onChange: FormElementValueChangeHandler<string>;
|
9
|
-
displayValidationMessage: boolean;
|
10
|
-
validationMessage: string | undefined;
|
11
|
-
conditionallyShownOptions: FormTypes.ChoiceElementOption[] | undefined;
|
12
|
-
};
|
13
|
-
declare function FormElementRadio({ id, element, value, onChange, conditionallyShownOptions, validationMessage, displayValidationMessage, }: Props): JSX.Element;
|
14
|
-
declare const _default: React.MemoExoticComponent<typeof FormElementRadio>;
|
15
|
-
export default _default;
|
1
|
+
import * as React from 'react';
|
2
|
+
import { FormTypes } from '@oneblink/types';
|
3
|
+
import { FormElementValueChangeHandler } from '../types/form';
|
4
|
+
declare type Props = {
|
5
|
+
id: string;
|
6
|
+
element: FormTypes.RadioButtonElement;
|
7
|
+
value: unknown;
|
8
|
+
onChange: FormElementValueChangeHandler<string>;
|
9
|
+
displayValidationMessage: boolean;
|
10
|
+
validationMessage: string | undefined;
|
11
|
+
conditionallyShownOptions: FormTypes.ChoiceElementOption[] | undefined;
|
12
|
+
};
|
13
|
+
declare function FormElementRadio({ id, element, value, onChange, conditionallyShownOptions, validationMessage, displayValidationMessage, }: Props): JSX.Element;
|
14
|
+
declare const _default: React.MemoExoticComponent<typeof FormElementRadio>;
|
15
|
+
export default _default;
|
@@ -1,42 +1,42 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import clsx from 'clsx';
|
3
|
-
import { Radio } from '@mui/material';
|
4
|
-
import FormElementOptions from '../components/renderer/FormElementOptions';
|
5
|
-
import useFormElementOptions from '../hooks/useFormElementOptions';
|
6
|
-
import useBooleanState from '../hooks/useBooleanState';
|
7
|
-
import OptionButton from './OptionButton';
|
8
|
-
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
9
|
-
function FormElementRadio({ id, element, value, onChange, conditionallyShownOptions, validationMessage, displayValidationMessage, }) {
|
10
|
-
const [isDirty, setIsDirty] = useBooleanState(false);
|
11
|
-
const filteredOptions = useFormElementOptions({
|
12
|
-
element,
|
13
|
-
value,
|
14
|
-
onChange,
|
15
|
-
conditionallyShownOptions,
|
16
|
-
});
|
17
|
-
return (React.createElement("div", { className: "cypress-radio-element" },
|
18
|
-
React.createElement(FormElementLabelContainer, { className: "ob-radio", id: id, element: element, required: element.required },
|
19
|
-
React.createElement(FormElementOptions, { options: element.options }, !element.buttons ? (React.createElement("div", null, filteredOptions.map((option) => (React.createElement("div", { className: "control", key: option.value },
|
20
|
-
React.createElement("label", { className: "radio ob-radio__input-label cypress-radio-label", htmlFor: `${id}_${option.value}` },
|
21
|
-
React.createElement(Radio, { color: "primary", className: "ob-radio__input cypress-radio-control", classes: {
|
22
|
-
checked: 'ob-radio__input-checked',
|
23
|
-
}, disableRipple: true, value: option.value || '', id: `${id}_${option.value}`, disabled: element.readOnly, checked: value === option.value, onChange: (e) => {
|
24
|
-
setIsDirty();
|
25
|
-
onChange(element, e.target.value);
|
26
|
-
} }),
|
27
|
-
` ${option.label}`)))))) : (React.createElement("div", { className: "buttons ob-buttons ob-buttons-radio cypress-radio-button-group" }, filteredOptions.map((option) => {
|
28
|
-
const isSelected = value === option.value;
|
29
|
-
return (React.createElement("div", { className: "ob-button-radio-container", key: option.value },
|
30
|
-
React.createElement(OptionButton, { element: element, option: option, isSelected: isSelected, onClick: () => {
|
31
|
-
setIsDirty();
|
32
|
-
onChange(element, option.value);
|
33
|
-
}, className: clsx('button ob-button ob-button__input ob-radio__button cypress-radio-button-control', {
|
34
|
-
'is-primary': isSelected,
|
35
|
-
'is-light': !isSelected,
|
36
|
-
}) })));
|
37
|
-
})))),
|
38
|
-
(isDirty || displayValidationMessage) && !!validationMessage && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
39
|
-
React.createElement("div", { className: "has-text-danger ob-error__text cypress-validation-message" }, validationMessage))))));
|
40
|
-
}
|
41
|
-
export default React.memo(FormElementRadio);
|
1
|
+
import * as React from 'react';
|
2
|
+
import clsx from 'clsx';
|
3
|
+
import { Radio } from '@mui/material';
|
4
|
+
import FormElementOptions from '../components/renderer/FormElementOptions';
|
5
|
+
import useFormElementOptions from '../hooks/useFormElementOptions';
|
6
|
+
import useBooleanState from '../hooks/useBooleanState';
|
7
|
+
import OptionButton from './OptionButton';
|
8
|
+
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
9
|
+
function FormElementRadio({ id, element, value, onChange, conditionallyShownOptions, validationMessage, displayValidationMessage, }) {
|
10
|
+
const [isDirty, setIsDirty] = useBooleanState(false);
|
11
|
+
const filteredOptions = useFormElementOptions({
|
12
|
+
element,
|
13
|
+
value,
|
14
|
+
onChange,
|
15
|
+
conditionallyShownOptions,
|
16
|
+
});
|
17
|
+
return (React.createElement("div", { className: "cypress-radio-element" },
|
18
|
+
React.createElement(FormElementLabelContainer, { className: "ob-radio", id: id, element: element, required: element.required },
|
19
|
+
React.createElement(FormElementOptions, { options: element.options }, !element.buttons ? (React.createElement("div", null, filteredOptions.map((option) => (React.createElement("div", { className: "control", key: option.value },
|
20
|
+
React.createElement("label", { className: "radio ob-radio__input-label cypress-radio-label", htmlFor: `${id}_${option.value}` },
|
21
|
+
React.createElement(Radio, { color: "primary", className: "ob-radio__input cypress-radio-control", classes: {
|
22
|
+
checked: 'ob-radio__input-checked',
|
23
|
+
}, disableRipple: true, value: option.value || '', id: `${id}_${option.value}`, disabled: element.readOnly, checked: value === option.value, onChange: (e) => {
|
24
|
+
setIsDirty();
|
25
|
+
onChange(element, e.target.value);
|
26
|
+
} }),
|
27
|
+
` ${option.label}`)))))) : (React.createElement("div", { className: "buttons ob-buttons ob-buttons-radio cypress-radio-button-group" }, filteredOptions.map((option) => {
|
28
|
+
const isSelected = value === option.value;
|
29
|
+
return (React.createElement("div", { className: "ob-button-radio-container", key: option.value },
|
30
|
+
React.createElement(OptionButton, { element: element, option: option, isSelected: isSelected, onClick: () => {
|
31
|
+
setIsDirty();
|
32
|
+
onChange(element, option.value);
|
33
|
+
}, className: clsx('button ob-button ob-button__input ob-radio__button cypress-radio-button-control', {
|
34
|
+
'is-primary': isSelected,
|
35
|
+
'is-light': !isSelected,
|
36
|
+
}) })));
|
37
|
+
})))),
|
38
|
+
(isDirty || displayValidationMessage) && !!validationMessage && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
39
|
+
React.createElement("div", { className: "has-text-danger ob-error__text cypress-validation-message" }, validationMessage))))));
|
40
|
+
}
|
41
|
+
export default React.memo(FormElementRadio);
|
42
42
|
//# sourceMappingURL=FormElementRadio.js.map
|
@@ -1,19 +1,19 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { FormTypes } from '@oneblink/types';
|
3
|
-
import { FormElementConditionallyShown, FormElementLookupHandler, FormElementValidation, FormElementValueChangeHandler, FormSubmissionModel } from '../types/form';
|
4
|
-
declare type Props = {
|
5
|
-
formId: number;
|
6
|
-
id: string;
|
7
|
-
isEven: boolean;
|
8
|
-
element: FormTypes.RepeatableSetElement;
|
9
|
-
value: Array<FormSubmissionModel> | undefined;
|
10
|
-
onChange: FormElementValueChangeHandler<FormSubmissionModel[]>;
|
11
|
-
onLookup: FormElementLookupHandler;
|
12
|
-
formElementConditionallyShown: FormElementConditionallyShown | undefined;
|
13
|
-
formElementValidation: FormElementValidation | undefined;
|
14
|
-
displayValidationMessage: boolean;
|
15
|
-
};
|
16
|
-
export declare const RepeatableSetIndexContext: React.Context<number>;
|
17
|
-
declare function FormElementRepeatableSet({ formId, element, value, formElementValidation, id, isEven, displayValidationMessage, formElementConditionallyShown, onChange, onLookup, }: Props): JSX.Element;
|
18
|
-
declare const _default: React.MemoExoticComponent<typeof FormElementRepeatableSet>;
|
19
|
-
export default _default;
|
1
|
+
import * as React from 'react';
|
2
|
+
import { FormTypes } from '@oneblink/types';
|
3
|
+
import { FormElementConditionallyShown, FormElementLookupHandler, FormElementValidation, FormElementValueChangeHandler, FormSubmissionModel } from '../types/form';
|
4
|
+
declare type Props = {
|
5
|
+
formId: number;
|
6
|
+
id: string;
|
7
|
+
isEven: boolean;
|
8
|
+
element: FormTypes.RepeatableSetElement;
|
9
|
+
value: Array<FormSubmissionModel> | undefined;
|
10
|
+
onChange: FormElementValueChangeHandler<FormSubmissionModel[]>;
|
11
|
+
onLookup: FormElementLookupHandler;
|
12
|
+
formElementConditionallyShown: FormElementConditionallyShown | undefined;
|
13
|
+
formElementValidation: FormElementValidation | undefined;
|
14
|
+
displayValidationMessage: boolean;
|
15
|
+
};
|
16
|
+
export declare const RepeatableSetIndexContext: React.Context<number>;
|
17
|
+
declare function FormElementRepeatableSet({ formId, element, value, formElementValidation, id, isEven, displayValidationMessage, formElementConditionallyShown, onChange, onLookup, }: Props): JSX.Element;
|
18
|
+
declare const _default: React.MemoExoticComponent<typeof FormElementRepeatableSet>;
|
19
|
+
export default _default;
|
@@ -1,127 +1,127 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import useBooleanState from '../hooks/useBooleanState';
|
3
|
-
import generateDefaultData from '../services/generate-default-data';
|
4
|
-
import OneBlinkFormElements from '../components/renderer/OneBlinkFormElements';
|
5
|
-
import Modal from '../components/renderer/Modal';
|
6
|
-
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
7
|
-
export const RepeatableSetIndexContext = React.createContext(0);
|
8
|
-
function FormElementRepeatableSet({ formId, element, value, formElementValidation, id, isEven, displayValidationMessage, formElementConditionallyShown, onChange, onLookup, }) {
|
9
|
-
const [isDirty, setIsDirty] = useBooleanState(false);
|
10
|
-
const entries = React.useMemo(() => (Array.isArray(value) ? value : []), [value]);
|
11
|
-
const handleAddEntry = React.useCallback(() => {
|
12
|
-
onChange(element, (existingEntries) => {
|
13
|
-
const newEntries = [...(existingEntries || [])];
|
14
|
-
const entry = generateDefaultData(element.elements, {});
|
15
|
-
newEntries.push(entry);
|
16
|
-
return newEntries;
|
17
|
-
});
|
18
|
-
setIsDirty();
|
19
|
-
}, [element, onChange, setIsDirty]);
|
20
|
-
const handleRemoveEntry = React.useCallback((index) => {
|
21
|
-
onChange(element, (existingEntries) => {
|
22
|
-
const newEntries = [...(existingEntries || [])];
|
23
|
-
newEntries.splice(index, 1);
|
24
|
-
return newEntries;
|
25
|
-
});
|
26
|
-
setIsDirty();
|
27
|
-
}, [element, onChange, setIsDirty]);
|
28
|
-
const handleNestedChange = React.useCallback((index, nestedElement, value) => {
|
29
|
-
if (nestedElement.type === 'page') {
|
30
|
-
return;
|
31
|
-
}
|
32
|
-
onChange(element, (existingEntries) => {
|
33
|
-
const newEntries = (existingEntries || []).map((entry, i) => {
|
34
|
-
if (i === index) {
|
35
|
-
return {
|
36
|
-
...entry,
|
37
|
-
[nestedElement.name]: typeof value === 'function'
|
38
|
-
? value(entry[nestedElement.name])
|
39
|
-
: value,
|
40
|
-
};
|
41
|
-
}
|
42
|
-
else {
|
43
|
-
return entry;
|
44
|
-
}
|
45
|
-
});
|
46
|
-
return newEntries;
|
47
|
-
});
|
48
|
-
}, [element, onChange]);
|
49
|
-
const repeatableSetValidation = !formElementValidation ||
|
50
|
-
typeof formElementValidation === 'string' ||
|
51
|
-
formElementValidation.type !== 'repeatableSet'
|
52
|
-
? undefined
|
53
|
-
: formElementValidation;
|
54
|
-
const repeatableSetEntriesConditionallyShown = formElementConditionallyShown &&
|
55
|
-
formElementConditionallyShown.type === 'repeatableSet'
|
56
|
-
? formElementConditionallyShown.entries
|
57
|
-
: {};
|
58
|
-
return (React.createElement("div", { className: "cypress-repeatable-set-element" },
|
59
|
-
React.createElement(FormElementLabelContainer, { className: `ob-repeatable-set ${isEven ? 'even' : 'odd'}`, element: element, id: id, required: !!element.minSetEntries },
|
60
|
-
entries.map((entry, index) => {
|
61
|
-
return (React.createElement(RepeatableSetEntry, { key: index, formId: formId, index: index, id: id, isEven: isEven, entry: entry, element: element, onChange: handleNestedChange, onLookup: onLookup, onRemove: handleRemoveEntry, formElementsConditionallyShown: repeatableSetEntriesConditionallyShown[index.toString()], formElementsValidation: repeatableSetValidation &&
|
62
|
-
repeatableSetValidation.entries[index.toString()], displayValidationMessages: displayValidationMessage }));
|
63
|
-
}),
|
64
|
-
(!element.maxSetEntries || entries.length < element.maxSetEntries) && (React.createElement("button", { type: "button", className: "button ob-button ob-button__add is-primary cypress-add-repeatable-set", onClick: handleAddEntry, disabled: element.readOnly },
|
65
|
-
React.createElement("span", { className: "icon" },
|
66
|
-
React.createElement("i", { className: "material-icons" }, "add")),
|
67
|
-
!!element.addSetEntryLabel && (React.createElement("span", null, element.addSetEntryLabel)))),
|
68
|
-
(isDirty || displayValidationMessage) &&
|
69
|
-
!!repeatableSetValidation &&
|
70
|
-
!!repeatableSetValidation.set && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
71
|
-
React.createElement("div", { className: "has-text-danger ob-error__text cypress-validation-message" }, repeatableSetValidation.set))))));
|
72
|
-
}
|
73
|
-
export default React.memo(FormElementRepeatableSet);
|
74
|
-
const RepeatableSetEntry = React.memo(function RepeatableSetEntry({ formId, id, index, isEven, entry, element, formElementsConditionallyShown, displayValidationMessages, formElementsValidation, onChange, onLookup, onRemove, }) {
|
75
|
-
const [isConfirmingRemove, confirmRemove, cancelRemove] = useBooleanState(false);
|
76
|
-
const handleChange = React.useCallback((element, value) => {
|
77
|
-
onChange(index, element, value);
|
78
|
-
}, [index, onChange]);
|
79
|
-
const handleLookup = React.useCallback((mergeLookupResults) => {
|
80
|
-
onLookup((currentFormSubmission) => {
|
81
|
-
let newEntry = {};
|
82
|
-
const entries = currentFormSubmission.submission[element.name];
|
83
|
-
const elements = currentFormSubmission.elements.map((formElement) => {
|
84
|
-
if (formElement.type === 'repeatableSet' &&
|
85
|
-
formElement.name === element.name) {
|
86
|
-
const { elements, submission } = mergeLookupResults({
|
87
|
-
elements: formElement.elements,
|
88
|
-
submission: entries[index],
|
89
|
-
});
|
90
|
-
newEntry = submission;
|
91
|
-
return {
|
92
|
-
...formElement,
|
93
|
-
elements,
|
94
|
-
};
|
95
|
-
}
|
96
|
-
return formElement;
|
97
|
-
});
|
98
|
-
const submission = {
|
99
|
-
...currentFormSubmission.submission,
|
100
|
-
[element.name]: entries.map((entry, i) => {
|
101
|
-
if (i === index) {
|
102
|
-
return newEntry;
|
103
|
-
}
|
104
|
-
return entry;
|
105
|
-
}),
|
106
|
-
};
|
107
|
-
return {
|
108
|
-
elements,
|
109
|
-
submission,
|
110
|
-
};
|
111
|
-
});
|
112
|
-
}, [element.name, index, onLookup]);
|
113
|
-
return (React.createElement(RepeatableSetIndexContext.Provider, { value: index },
|
114
|
-
React.createElement(Modal, { isOpen: isConfirmingRemove, className: "cypress-repeatable-set-prompt", titleClassName: "cypress-repeatable-set-remove-entry-header", title: element.removeSetEntryLabel || 'Remove Entry', actions: React.createElement(React.Fragment, null,
|
115
|
-
React.createElement("button", { type: "button", className: "button ob-button is-light cypress-cancel-repeatable-set", onClick: cancelRemove }, "Cancel"),
|
116
|
-
React.createElement("button", { type: "button", className: "button ob-button is-primary cypress-confirm-repeatable-set", onClick: () => {
|
117
|
-
cancelRemove();
|
118
|
-
onRemove(index);
|
119
|
-
} }, "Yes")) }, "Are you sure you want to remove this entry?"),
|
120
|
-
React.createElement("div", { key: index, className: "ob-repeatable-set__container cypress-repeatable-set-container" },
|
121
|
-
React.createElement("button", { type: "button", className: "button ob-button ob-button_remove is-light cypress-remove-repeatable-set-entry", onClick: confirmRemove, disabled: element.readOnly },
|
122
|
-
React.createElement("span", { className: "icon" },
|
123
|
-
React.createElement("i", { className: "material-icons" }, "delete_outline")),
|
124
|
-
!!element.removeSetEntryLabel && (React.createElement("span", null, element.removeSetEntryLabel))),
|
125
|
-
React.createElement(OneBlinkFormElements, { formId: formId, idPrefix: `${id}_entry-${index}_`, isEven: isEven, formElementsValidation: formElementsValidation, displayValidationMessages: displayValidationMessages, elements: element.elements, onChange: handleChange, onLookup: handleLookup, model: entry, parentElement: element, formElementsConditionallyShown: formElementsConditionallyShown }))));
|
126
|
-
});
|
1
|
+
import * as React from 'react';
|
2
|
+
import useBooleanState from '../hooks/useBooleanState';
|
3
|
+
import generateDefaultData from '../services/generate-default-data';
|
4
|
+
import OneBlinkFormElements from '../components/renderer/OneBlinkFormElements';
|
5
|
+
import Modal from '../components/renderer/Modal';
|
6
|
+
import FormElementLabelContainer from '../components/renderer/FormElementLabelContainer';
|
7
|
+
export const RepeatableSetIndexContext = React.createContext(0);
|
8
|
+
function FormElementRepeatableSet({ formId, element, value, formElementValidation, id, isEven, displayValidationMessage, formElementConditionallyShown, onChange, onLookup, }) {
|
9
|
+
const [isDirty, setIsDirty] = useBooleanState(false);
|
10
|
+
const entries = React.useMemo(() => (Array.isArray(value) ? value : []), [value]);
|
11
|
+
const handleAddEntry = React.useCallback(() => {
|
12
|
+
onChange(element, (existingEntries) => {
|
13
|
+
const newEntries = [...(existingEntries || [])];
|
14
|
+
const entry = generateDefaultData(element.elements, {});
|
15
|
+
newEntries.push(entry);
|
16
|
+
return newEntries;
|
17
|
+
});
|
18
|
+
setIsDirty();
|
19
|
+
}, [element, onChange, setIsDirty]);
|
20
|
+
const handleRemoveEntry = React.useCallback((index) => {
|
21
|
+
onChange(element, (existingEntries) => {
|
22
|
+
const newEntries = [...(existingEntries || [])];
|
23
|
+
newEntries.splice(index, 1);
|
24
|
+
return newEntries;
|
25
|
+
});
|
26
|
+
setIsDirty();
|
27
|
+
}, [element, onChange, setIsDirty]);
|
28
|
+
const handleNestedChange = React.useCallback((index, nestedElement, value) => {
|
29
|
+
if (nestedElement.type === 'page') {
|
30
|
+
return;
|
31
|
+
}
|
32
|
+
onChange(element, (existingEntries) => {
|
33
|
+
const newEntries = (existingEntries || []).map((entry, i) => {
|
34
|
+
if (i === index) {
|
35
|
+
return {
|
36
|
+
...entry,
|
37
|
+
[nestedElement.name]: typeof value === 'function'
|
38
|
+
? value(entry[nestedElement.name])
|
39
|
+
: value,
|
40
|
+
};
|
41
|
+
}
|
42
|
+
else {
|
43
|
+
return entry;
|
44
|
+
}
|
45
|
+
});
|
46
|
+
return newEntries;
|
47
|
+
});
|
48
|
+
}, [element, onChange]);
|
49
|
+
const repeatableSetValidation = !formElementValidation ||
|
50
|
+
typeof formElementValidation === 'string' ||
|
51
|
+
formElementValidation.type !== 'repeatableSet'
|
52
|
+
? undefined
|
53
|
+
: formElementValidation;
|
54
|
+
const repeatableSetEntriesConditionallyShown = formElementConditionallyShown &&
|
55
|
+
formElementConditionallyShown.type === 'repeatableSet'
|
56
|
+
? formElementConditionallyShown.entries
|
57
|
+
: {};
|
58
|
+
return (React.createElement("div", { className: "cypress-repeatable-set-element" },
|
59
|
+
React.createElement(FormElementLabelContainer, { className: `ob-repeatable-set ${isEven ? 'even' : 'odd'}`, element: element, id: id, required: !!element.minSetEntries },
|
60
|
+
entries.map((entry, index) => {
|
61
|
+
return (React.createElement(RepeatableSetEntry, { key: index, formId: formId, index: index, id: id, isEven: isEven, entry: entry, element: element, onChange: handleNestedChange, onLookup: onLookup, onRemove: handleRemoveEntry, formElementsConditionallyShown: repeatableSetEntriesConditionallyShown[index.toString()], formElementsValidation: repeatableSetValidation &&
|
62
|
+
repeatableSetValidation.entries[index.toString()], displayValidationMessages: displayValidationMessage }));
|
63
|
+
}),
|
64
|
+
(!element.maxSetEntries || entries.length < element.maxSetEntries) && (React.createElement("button", { type: "button", className: "button ob-button ob-button__add is-primary cypress-add-repeatable-set", onClick: handleAddEntry, disabled: element.readOnly },
|
65
|
+
React.createElement("span", { className: "icon" },
|
66
|
+
React.createElement("i", { className: "material-icons" }, "add")),
|
67
|
+
!!element.addSetEntryLabel && (React.createElement("span", null, element.addSetEntryLabel)))),
|
68
|
+
(isDirty || displayValidationMessage) &&
|
69
|
+
!!repeatableSetValidation &&
|
70
|
+
!!repeatableSetValidation.set && (React.createElement("div", { role: "alert", className: "has-margin-top-8" },
|
71
|
+
React.createElement("div", { className: "has-text-danger ob-error__text cypress-validation-message" }, repeatableSetValidation.set))))));
|
72
|
+
}
|
73
|
+
export default React.memo(FormElementRepeatableSet);
|
74
|
+
const RepeatableSetEntry = React.memo(function RepeatableSetEntry({ formId, id, index, isEven, entry, element, formElementsConditionallyShown, displayValidationMessages, formElementsValidation, onChange, onLookup, onRemove, }) {
|
75
|
+
const [isConfirmingRemove, confirmRemove, cancelRemove] = useBooleanState(false);
|
76
|
+
const handleChange = React.useCallback((element, value) => {
|
77
|
+
onChange(index, element, value);
|
78
|
+
}, [index, onChange]);
|
79
|
+
const handleLookup = React.useCallback((mergeLookupResults) => {
|
80
|
+
onLookup((currentFormSubmission) => {
|
81
|
+
let newEntry = {};
|
82
|
+
const entries = currentFormSubmission.submission[element.name];
|
83
|
+
const elements = currentFormSubmission.elements.map((formElement) => {
|
84
|
+
if (formElement.type === 'repeatableSet' &&
|
85
|
+
formElement.name === element.name) {
|
86
|
+
const { elements, submission } = mergeLookupResults({
|
87
|
+
elements: formElement.elements,
|
88
|
+
submission: entries[index],
|
89
|
+
});
|
90
|
+
newEntry = submission;
|
91
|
+
return {
|
92
|
+
...formElement,
|
93
|
+
elements,
|
94
|
+
};
|
95
|
+
}
|
96
|
+
return formElement;
|
97
|
+
});
|
98
|
+
const submission = {
|
99
|
+
...currentFormSubmission.submission,
|
100
|
+
[element.name]: entries.map((entry, i) => {
|
101
|
+
if (i === index) {
|
102
|
+
return newEntry;
|
103
|
+
}
|
104
|
+
return entry;
|
105
|
+
}),
|
106
|
+
};
|
107
|
+
return {
|
108
|
+
elements,
|
109
|
+
submission,
|
110
|
+
};
|
111
|
+
});
|
112
|
+
}, [element.name, index, onLookup]);
|
113
|
+
return (React.createElement(RepeatableSetIndexContext.Provider, { value: index },
|
114
|
+
React.createElement(Modal, { isOpen: isConfirmingRemove, className: "cypress-repeatable-set-prompt", titleClassName: "cypress-repeatable-set-remove-entry-header", title: element.removeSetEntryLabel || 'Remove Entry', actions: React.createElement(React.Fragment, null,
|
115
|
+
React.createElement("button", { type: "button", className: "button ob-button is-light cypress-cancel-repeatable-set", onClick: cancelRemove }, "Cancel"),
|
116
|
+
React.createElement("button", { type: "button", className: "button ob-button is-primary cypress-confirm-repeatable-set", onClick: () => {
|
117
|
+
cancelRemove();
|
118
|
+
onRemove(index);
|
119
|
+
} }, "Yes")) }, "Are you sure you want to remove this entry?"),
|
120
|
+
React.createElement("div", { key: index, className: "ob-repeatable-set__container cypress-repeatable-set-container" },
|
121
|
+
React.createElement("button", { type: "button", className: "button ob-button ob-button_remove is-light cypress-remove-repeatable-set-entry", onClick: confirmRemove, disabled: element.readOnly },
|
122
|
+
React.createElement("span", { className: "icon" },
|
123
|
+
React.createElement("i", { className: "material-icons" }, "delete_outline")),
|
124
|
+
!!element.removeSetEntryLabel && (React.createElement("span", null, element.removeSetEntryLabel))),
|
125
|
+
React.createElement(OneBlinkFormElements, { formId: formId, idPrefix: `${id}_entry-${index}_`, isEven: isEven, formElementsValidation: formElementsValidation, displayValidationMessages: displayValidationMessages, elements: element.elements, onChange: handleChange, onLookup: handleLookup, model: entry, parentElement: element, formElementsConditionallyShown: formElementsConditionallyShown }))));
|
126
|
+
});
|
127
127
|
//# sourceMappingURL=FormElementRepeatableSet.js.map
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import * as React from 'react';
|
2
|
-
import { FormTypes } from '@oneblink/types';
|
3
|
-
import { Props } from '../components/renderer/OneBlinkFormElements';
|
4
|
-
declare function FormElementSection<T extends FormTypes._NestedElementsElement>({ element, onLookup, displayValidationMessages, ...props }: Omit<Props<T>, 'elements'> & {
|
5
|
-
element: FormTypes.SectionElement;
|
6
|
-
}): JSX.Element;
|
7
|
-
declare const _default: React.MemoExoticComponent<typeof FormElementSection>;
|
8
|
-
export default _default;
|
1
|
+
import * as React from 'react';
|
2
|
+
import { FormTypes } from '@oneblink/types';
|
3
|
+
import { Props } from '../components/renderer/OneBlinkFormElements';
|
4
|
+
declare function FormElementSection<T extends FormTypes._NestedElementsElement>({ element, onLookup, displayValidationMessages, ...props }: Omit<Props<T>, 'elements'> & {
|
5
|
+
element: FormTypes.SectionElement;
|
6
|
+
}): JSX.Element;
|
7
|
+
declare const _default: React.MemoExoticComponent<typeof FormElementSection>;
|
8
|
+
export default _default;
|