@aehrc/smart-forms-renderer 0.17.0 → 0.20.0
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/__mocks__/zustand.ts +1 -1
- package/lib/api/smartClient.js +1 -1
- package/lib/components/Alert.styles.js +1 -1
- package/lib/components/Box.styles.js +1 -1
- package/lib/components/FormComponents/AttachmentItem/AttachmentField.js +1 -1
- package/lib/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.js +1 -1
- package/lib/components/FormComponents/AttachmentItem/AttachmentFileDropBox.js +1 -1
- package/lib/components/FormComponents/AttachmentItem/AttachmentItem.js +1 -1
- package/lib/components/FormComponents/AttachmentItem/AttachmentUrlField.js +1 -1
- package/lib/components/FormComponents/BooleanItem/BooleanField.d.ts +7 -3
- package/lib/components/FormComponents/BooleanItem/BooleanField.js +27 -5
- package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -1
- package/lib/components/FormComponents/BooleanItem/BooleanItem.js +20 -11
- package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.js +6 -4
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js +4 -4
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.d.ts +2 -3
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.js +5 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js +4 -4
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js +6 -7
- package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js +5 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +4 -4
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js +5 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.d.ts +0 -2
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +4 -4
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js +1 -1
- package/lib/components/FormComponents/DateTimeItem/DateTimeField.js +1 -1
- package/lib/components/FormComponents/DateTimeItem/DateTimeItem.js +1 -1
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/CustomDateField.js +1 -1
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js.map +1 -0
- package/lib/components/FormComponents/{CustomDateItem → DateTimeItems/CustomDateItem}/CustomDateItem.d.ts +1 -1
- package/lib/components/FormComponents/{CustomDateItem → DateTimeItems/CustomDateItem}/CustomDateItem.js +13 -13
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateItem.js.map +1 -0
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/DatePicker.js +1 -2
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePicker.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePickerButton.js +29 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/DatePickerButton.js.map +1 -0
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/MuiDatePicker.js +1 -1
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/MuiDatePicker.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.d.ts +9 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js +116 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.d.ts +15 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js +40 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.d.ts +22 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.js +28 -0
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.js.map +1 -0
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems}/index.js +1 -1
- package/lib/components/FormComponents/DateTimeItems/index.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/utils/index.d.ts +1 -0
- package/lib/components/FormComponents/{CustomDateItem → DateTimeItems/utils}/index.js +2 -2
- package/lib/components/FormComponents/DateTimeItems/utils/index.js.map +1 -0
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker/utils/parseDates.d.ts → DateTimeItems/utils/parseDate.d.ts} +2 -2
- package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker/utils/parseDates.js → DateTimeItems/utils/parseDate.js} +10 -10
- package/lib/components/FormComponents/DateTimeItems/utils/parseDate.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItems/utils/parseTime.d.ts +19 -0
- package/lib/components/FormComponents/DateTimeItems/utils/parseTime.js +81 -0
- package/lib/components/FormComponents/DateTimeItems/utils/parseTime.js.map +1 -0
- package/lib/components/FormComponents/DecimalItem/DecimalField.js +1 -1
- package/lib/components/FormComponents/DecimalItem/DecimalItem.js +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayItem.js +1 -1
- package/lib/components/FormComponents/GridGroup/GridGroup.js +1 -1
- package/lib/components/FormComponents/GridGroup/GridRow.js +1 -1
- package/lib/components/FormComponents/GridGroup/GridTable.js +1 -1
- package/lib/components/FormComponents/GridGroup/index.js +1 -1
- package/lib/components/FormComponents/GroupItem/GroupHeading.js +1 -1
- package/lib/components/FormComponents/GroupItem/GroupItem.d.ts +2 -1
- package/lib/components/FormComponents/GroupItem/GroupItem.js +4 -4
- package/lib/components/FormComponents/GroupItem/GroupItem.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/GroupItem.styles.js +1 -1
- package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.d.ts +2 -1
- package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js +5 -5
- package/lib/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButton.js +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js +1 -1
- package/lib/components/FormComponents/IntegerItem/IntegerField.js +1 -1
- package/lib/components/FormComponents/IntegerItem/IntegerItem.js +1 -1
- package/lib/components/FormComponents/Item.styles.js +1 -1
- package/lib/components/FormComponents/ItemParts/CheckboxSingle.js +1 -1
- package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js +1 -1
- package/lib/components/FormComponents/ItemParts/ContextDisplayItem.js +1 -1
- package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelText.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +1 -1
- package/lib/components/FormComponents/ItemParts/RadioAnswerOptionButtons.js +1 -1
- package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js +1 -1
- package/lib/components/FormComponents/Lists.styles.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.d.ts +0 -2
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js +7 -5
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.d.ts +0 -2
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js +4 -4
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js +3 -5
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.d.ts +0 -2
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.js +5 -2
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.d.ts +0 -2
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js +3 -3
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroup.d.ts +2 -2
- package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js +9 -3
- package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.d.ts +1 -0
- package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +3 -3
- package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/index.js +1 -1
- package/lib/components/FormComponents/RepeatItem/AddItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RemoveItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatField.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.js +1 -1
- package/lib/components/FormComponents/RepeatItem/index.js +1 -1
- package/lib/components/FormComponents/SingleItem/SingleItem.d.ts +2 -2
- package/lib/components/FormComponents/SingleItem/SingleItem.js +12 -7
- package/lib/components/FormComponents/SingleItem/SingleItem.js.map +1 -1
- package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +4 -4
- package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
- package/lib/components/FormComponents/SingleItem/index.js +1 -1
- package/lib/components/FormComponents/SliderItem/Slider.styles.js +1 -1
- package/lib/components/FormComponents/SliderItem/SliderDisplayValue.js +1 -1
- package/lib/components/FormComponents/SliderItem/SliderField.js +1 -1
- package/lib/components/FormComponents/SliderItem/SliderItem.js +1 -1
- package/lib/components/FormComponents/SliderItem/SliderLabels.js +1 -1
- package/lib/components/FormComponents/StringItem/StringField.js +1 -1
- package/lib/components/FormComponents/StringItem/StringItem.js +1 -1
- package/lib/components/FormComponents/Tables/AddRowButton.js +1 -1
- package/lib/components/FormComponents/Tables/GroupTable.js +1 -1
- package/lib/components/FormComponents/Tables/GroupTableBody.js +1 -1
- package/lib/components/FormComponents/Tables/GroupTableRow.js +1 -1
- package/lib/components/FormComponents/Tables/GroupTableRowCells.js +1 -1
- package/lib/components/FormComponents/Tables/GroupTableView.js +1 -1
- package/lib/components/FormComponents/Tables/RemoveRowButton.js +1 -1
- package/lib/components/FormComponents/Tables/SelectRowButton.js +1 -1
- package/lib/components/FormComponents/Tables/Table.styles.js +1 -1
- package/lib/components/FormComponents/Tables/index.js +1 -1
- package/lib/components/FormComponents/TextItem/MuiTextField.js +1 -1
- package/lib/components/FormComponents/TextItem/TextField.js +1 -1
- package/lib/components/FormComponents/TextItem/TextItem.js +1 -1
- package/lib/components/FormComponents/Textfield.styles.js +1 -1
- package/lib/components/FormComponents/TimeItem/TimeField.js +1 -1
- package/lib/components/FormComponents/TimeItem/TimeItem.js +1 -1
- package/lib/components/FormComponents/UrlItem/UrlField.js +1 -1
- package/lib/components/FormComponents/UrlItem/UrlItem.js +1 -1
- package/lib/components/FormComponents/index.d.ts +1 -1
- package/lib/components/FormComponents/index.js +2 -2
- package/lib/components/FormComponents/index.js.map +1 -1
- package/lib/components/Iconify/Iconify.js +1 -1
- package/lib/components/Lists.styles.js +1 -1
- package/lib/components/Renderer/BaseRenderer.js +1 -1
- package/lib/components/Renderer/FormBodyCollapsible.js +1 -1
- package/lib/components/Renderer/FormBodySingleCollapsible.js +1 -1
- package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.js +1 -1
- package/lib/components/Renderer/FormBodyTabbed.js +1 -1
- package/lib/components/Renderer/FormTitle.js +1 -1
- package/lib/components/Renderer/FormTopLevelItem.js +1 -1
- package/lib/components/Renderer/SmartFormsRenderer.js +1 -1
- package/lib/components/Renderer/index.js +1 -1
- package/lib/components/Tabs/CompleteTabButton.js +1 -1
- package/lib/components/Tabs/FormBodySingleTab.js +1 -1
- package/lib/components/Tabs/FormBodyTabList.js +1 -1
- package/lib/components/Tabs/FormBodyTabListWrapper.js +1 -1
- package/lib/components/Tabs/ShowCompletedTabsSection.js +1 -1
- package/lib/components/index.js +1 -1
- package/lib/hooks/useAttachmentUrlValidation.js +1 -1
- package/lib/hooks/useContextDisplayItems.js +1 -1
- package/lib/hooks/useDateTimeNonEmpty.d.ts +2 -0
- package/lib/{components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.js → hooks/useDateTimeNonEmpty.js} +9 -3
- package/lib/hooks/useDateTimeNonEmpty.js.map +1 -0
- package/lib/hooks/useDateValidation.js +3 -3
- package/lib/hooks/useDateValidation.js.map +1 -1
- package/lib/hooks/useDebounce.js +1 -1
- package/lib/hooks/useDecimalCalculatedExpression.js +1 -1
- package/lib/hooks/useGroupTableRows.js +1 -1
- package/lib/hooks/useHidden.d.ts +1 -1
- package/lib/hooks/useHidden.js +4 -3
- package/lib/hooks/useHidden.js.map +1 -1
- package/lib/hooks/useInitialiseGroupTable.js +1 -1
- package/lib/hooks/useInitialiseRenderer.js +1 -1
- package/lib/hooks/useInitialiseRepeatAnswers.js +1 -1
- package/lib/hooks/useInitialiseRepeatGroups.js +1 -1
- package/lib/hooks/useIntegerCalculatedExpression.js +1 -1
- package/lib/hooks/useNumberInput.js +1 -1
- package/lib/hooks/useQueryClient.js +1 -1
- package/lib/hooks/useReadOnly.js +1 -1
- package/lib/hooks/useRenderingExtensions.js +1 -1
- package/lib/hooks/useResponsive.js +1 -1
- package/lib/hooks/useSliderExtensions.js +1 -1
- package/lib/hooks/useStringCalculatedExpression.js +1 -1
- package/lib/hooks/useStringInput.js +1 -1
- package/lib/hooks/useTerminologyServerQuery.js +1 -1
- package/lib/hooks/useTimeValidation.d.ts +5 -0
- package/lib/hooks/useTimeValidation.js +54 -0
- package/lib/hooks/useTimeValidation.js.map +1 -0
- package/lib/hooks/useValidationFeedback.js +1 -1
- package/lib/hooks/useValueSetCodings.js +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/interfaces/answerExpression.interface.js +1 -1
- package/lib/interfaces/choice.enum.js +1 -1
- package/lib/interfaces/enableWhen.interface.d.ts +20 -5
- package/lib/interfaces/enableWhen.interface.js +1 -1
- package/lib/interfaces/groupTable.interface.js +1 -1
- package/lib/interfaces/index.d.ts +1 -0
- package/lib/interfaces/index.js +2 -0
- package/lib/interfaces/index.js.map +1 -0
- package/lib/interfaces/populate.interface.js +1 -1
- package/lib/interfaces/questionnaireStore.interface.d.ts +2 -2
- package/lib/interfaces/questionnaireStore.interface.js +1 -1
- package/lib/interfaces/regex.interface.js +1 -1
- package/lib/interfaces/renderProps.interface.d.ts +4 -0
- package/lib/interfaces/renderProps.interface.js +1 -1
- package/lib/interfaces/repeatGroup.interface.js +1 -1
- package/lib/interfaces/valueSet.interface.js +1 -1
- package/lib/interfaces/variables.interface.js +1 -1
- package/lib/stores/questionnaireResponseStore.js +1 -1
- package/lib/stores/questionnaireStore.d.ts +5 -3
- package/lib/stores/questionnaireStore.js +13 -6
- package/lib/stores/questionnaireStore.js.map +1 -1
- package/lib/stores/smartConfigStore.js +1 -1
- package/lib/stores/terminologyServerStore.js +1 -1
- package/lib/theme/customGlobalStyles.js +1 -1
- package/lib/theme/overrides/Accordion.js +1 -1
- package/lib/theme/overrides/Autocomplete.js +1 -1
- package/lib/theme/overrides/Button.js +1 -1
- package/lib/theme/overrides/Card.js +1 -1
- package/lib/theme/overrides/Input.js +1 -1
- package/lib/theme/overrides/Overrides.js +1 -1
- package/lib/theme/overrides/Paper.js +1 -1
- package/lib/theme/overrides/SpeedDial.js +1 -1
- package/lib/theme/overrides/Table.js +1 -1
- package/lib/theme/palette.js +1 -1
- package/lib/theme/shadows.js +1 -1
- package/lib/theme/typography.js +1 -1
- package/lib/utils/calculatedExpression.js +1 -1
- package/lib/utils/choice.d.ts +1 -1
- package/lib/utils/choice.js +1 -1
- package/lib/utils/choice.js.map +1 -1
- package/lib/utils/dayjsExtend.js +1 -1
- package/lib/utils/debounce.js +1 -1
- package/lib/utils/emptyResource.js +1 -1
- package/lib/utils/enableWhen.d.ts +11 -4
- package/lib/utils/enableWhen.js +131 -54
- package/lib/utils/enableWhen.js.map +1 -1
- package/lib/utils/enableWhenExpression.d.ts +1 -1
- package/lib/utils/enableWhenExpression.js +27 -8
- package/lib/utils/enableWhenExpression.js.map +1 -1
- package/lib/utils/fhirpath.js +1 -1
- package/lib/utils/formChanges.js +1 -1
- package/lib/utils/groupTable.js +1 -1
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +2 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/initialise.js +1 -1
- package/lib/utils/itemControl.js +1 -1
- package/lib/utils/mapItem.js +1 -1
- package/lib/utils/misc.d.ts +5 -0
- package/lib/utils/misc.js +116 -0
- package/lib/utils/misc.js.map +1 -0
- package/lib/utils/openChoice.js +1 -1
- package/lib/utils/parseInputs.js +1 -1
- package/lib/utils/populateContexts.js +1 -1
- package/lib/utils/qItem.d.ts +2 -1
- package/lib/utils/qItem.js +20 -8
- package/lib/utils/qItem.js.map +1 -1
- package/lib/utils/qrItem.js +1 -1
- package/lib/utils/questionnaireStoreUtils/addAdditionalVariables.js +1 -1
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js +2 -2
- package/lib/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/extractContainedValueSets.js +1 -1
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.d.ts +13 -3
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js +82 -19
- package/lib/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +1 -1
- package/lib/utils/questionnaireStoreUtils/extractTabs.js +1 -1
- package/lib/utils/questionnaireStoreUtils/extractVariables.js +1 -1
- package/lib/utils/questionnaireStoreUtils/resolveValueSets.js +1 -1
- package/lib/utils/removeEmptyAnswers.js +1 -1
- package/lib/utils/repopulateItems.js +1 -1
- package/lib/utils/slider.js +1 -1
- package/lib/utils/tabs.d.ts +1 -1
- package/lib/utils/tabs.js +7 -5
- package/lib/utils/tabs.js.map +1 -1
- package/lib/utils/validateQuestionnaire.js +1 -1
- package/lib/utils/valueSet.js +1 -1
- package/package.json +2 -2
- package/src/api/smartClient.ts +1 -1
- package/src/components/Alert.styles.ts +1 -1
- package/src/components/Box.styles.ts +1 -1
- package/src/components/FormComponents/AttachmentItem/AttachmentField.tsx +1 -1
- package/src/components/FormComponents/AttachmentItem/AttachmentFieldWrapper.tsx +1 -1
- package/src/components/FormComponents/AttachmentItem/AttachmentFileDropBox.tsx +1 -1
- package/src/components/FormComponents/AttachmentItem/AttachmentItem.tsx +1 -1
- package/src/components/FormComponents/AttachmentItem/AttachmentUrlField.tsx +1 -1
- package/src/components/FormComponents/BooleanItem/BooleanField.tsx +54 -18
- package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +48 -14
- package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteField.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionFields.tsx +5 -3
- package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.tsx +1 -6
- package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetFields.tsx +7 -4
- package/src/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.tsx +3 -6
- package/src/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.tsx +2 -7
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionFields.tsx +5 -3
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.tsx +2 -6
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetFields.tsx +5 -4
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx +2 -6
- package/src/components/FormComponents/ChoiceItems/ChoiceRadioSingle.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +1 -1
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.tsx +1 -1
- package/src/components/FormComponents/DateTimeItem/DateTimeField.tsx +1 -1
- package/src/components/FormComponents/DateTimeItem/DateTimeItem.tsx +1 -1
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/CustomDateField.tsx +1 -1
- package/src/components/FormComponents/{CustomDateItem → DateTimeItems/CustomDateItem}/CustomDateItem.tsx +15 -15
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/DatePicker.tsx +1 -2
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/DatePickerButton.tsx +18 -1
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/MuiDatePicker.ts +1 -1
- package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomDateTimeItem.tsx +222 -0
- package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx +117 -0
- package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/DateTimeField.tsx +96 -0
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems}/index.ts +1 -1
- package/src/components/FormComponents/{CustomDateItem → DateTimeItems/utils}/index.ts +2 -2
- package/src/components/FormComponents/{CustomDateItem/customDateTimePicker/utils/parseDates.ts → DateTimeItems/utils/parseDate.ts} +10 -10
- package/src/components/FormComponents/DateTimeItems/utils/parseTime.ts +127 -0
- package/src/components/FormComponents/DecimalItem/DecimalField.tsx +1 -1
- package/src/components/FormComponents/DecimalItem/DecimalItem.tsx +1 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.ts +1 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.tsx +1 -1
- package/src/components/FormComponents/DisplayItem/DisplayItem.tsx +1 -1
- package/src/components/FormComponents/GridGroup/GridGroup.tsx +1 -1
- package/src/components/FormComponents/GridGroup/GridRow.tsx +1 -1
- package/src/components/FormComponents/GridGroup/GridTable.tsx +1 -1
- package/src/components/FormComponents/GridGroup/index.ts +1 -1
- package/src/components/FormComponents/GroupItem/GroupHeading.tsx +1 -1
- package/src/components/FormComponents/GroupItem/GroupItem.styles.ts +1 -1
- package/src/components/FormComponents/GroupItem/GroupItem.tsx +9 -3
- package/src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx +11 -3
- package/src/components/FormComponents/GroupItem/NextTabButton.tsx +1 -1
- package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.tsx +1 -1
- package/src/components/FormComponents/IntegerItem/IntegerField.tsx +1 -1
- package/src/components/FormComponents/IntegerItem/IntegerItem.tsx +1 -1
- package/src/components/FormComponents/Item.styles.ts +1 -1
- package/src/components/FormComponents/ItemParts/CheckboxSingle.tsx +1 -1
- package/src/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.tsx +1 -1
- package/src/components/FormComponents/ItemParts/ContextDisplayItem.tsx +1 -1
- package/src/components/FormComponents/ItemParts/FadingCheckIcon.tsx +1 -1
- package/src/components/FormComponents/ItemParts/ItemFieldGrid.tsx +1 -1
- package/src/components/FormComponents/ItemParts/ItemLabelText.tsx +1 -1
- package/src/components/FormComponents/ItemParts/ItemLabelWrapper.tsx +1 -1
- package/src/components/FormComponents/ItemParts/RadioAnswerOptionButtons.tsx +1 -1
- package/src/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.tsx +1 -1
- package/src/components/FormComponents/Lists.styles.ts +1 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteField.tsx +1 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.tsx +1 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.tsx +4 -3
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.tsx +1 -6
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.tsx +1 -6
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionFields.tsx +4 -3
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.tsx +2 -5
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.tsx +1 -1
- package/src/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.tsx +1 -1
- package/src/components/FormComponents/RepeatGroup/AddItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatGroup/DeleteItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatGroup/RepeatGroup.tsx +14 -3
- package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +5 -1
- package/src/components/FormComponents/RepeatGroup/index.ts +1 -1
- package/src/components/FormComponents/RepeatItem/AddItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RemoveItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RepeatField.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.styles.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/index.ts +1 -1
- package/src/components/FormComponents/SingleItem/SingleItem.tsx +20 -7
- package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +4 -4
- package/src/components/FormComponents/SingleItem/index.ts +1 -1
- package/src/components/FormComponents/SliderItem/Slider.styles.ts +1 -1
- package/src/components/FormComponents/SliderItem/SliderDisplayValue.tsx +1 -1
- package/src/components/FormComponents/SliderItem/SliderField.tsx +1 -1
- package/src/components/FormComponents/SliderItem/SliderItem.tsx +1 -1
- package/src/components/FormComponents/SliderItem/SliderLabels.tsx +1 -1
- package/src/components/FormComponents/StringItem/StringField.tsx +1 -1
- package/src/components/FormComponents/StringItem/StringItem.tsx +1 -1
- package/src/components/FormComponents/Tables/AddRowButton.tsx +1 -1
- package/src/components/FormComponents/Tables/GroupTable.tsx +1 -1
- package/src/components/FormComponents/Tables/GroupTableBody.tsx +1 -1
- package/src/components/FormComponents/Tables/GroupTableRow.tsx +1 -1
- package/src/components/FormComponents/Tables/GroupTableRowCells.tsx +1 -1
- package/src/components/FormComponents/Tables/GroupTableView.tsx +1 -1
- package/src/components/FormComponents/Tables/RemoveRowButton.tsx +1 -1
- package/src/components/FormComponents/Tables/SelectRowButton.tsx +1 -1
- package/src/components/FormComponents/Tables/Table.styles.tsx +1 -1
- package/src/components/FormComponents/Tables/index.ts +1 -1
- package/src/components/FormComponents/TextItem/MuiTextField.ts +1 -1
- package/src/components/FormComponents/TextItem/TextField.tsx +1 -1
- package/src/components/FormComponents/TextItem/TextItem.tsx +1 -1
- package/src/components/FormComponents/Textfield.styles.ts +1 -1
- package/src/components/FormComponents/TimeItem/TimeField.tsx +1 -1
- package/src/components/FormComponents/TimeItem/TimeItem.tsx +1 -1
- package/src/components/FormComponents/UrlItem/UrlField.tsx +1 -1
- package/src/components/FormComponents/UrlItem/UrlItem.tsx +1 -1
- package/src/components/FormComponents/index.ts +2 -2
- package/src/components/Iconify/Iconify.tsx +1 -1
- package/src/components/Lists.styles.ts +1 -1
- package/src/components/Renderer/BaseRenderer.tsx +1 -1
- package/src/components/Renderer/FormBodyCollapsible.tsx +1 -1
- package/src/components/Renderer/FormBodySingleCollapsible.tsx +1 -1
- package/src/components/Renderer/FormBodySingleCollapsibleWrapper.tsx +1 -1
- package/src/components/Renderer/FormBodyTabbed.tsx +1 -1
- package/src/components/Renderer/FormTitle.tsx +1 -1
- package/src/components/Renderer/FormTopLevelItem.tsx +1 -1
- package/src/components/Renderer/SmartFormsRenderer.tsx +1 -1
- package/src/components/Renderer/index.ts +1 -1
- package/src/components/Tabs/CompleteTabButton.tsx +1 -1
- package/src/components/Tabs/FormBodySingleTab.tsx +1 -1
- package/src/components/Tabs/FormBodyTabList.tsx +1 -1
- package/src/components/Tabs/FormBodyTabListWrapper.tsx +1 -1
- package/src/components/Tabs/ShowCompletedTabsSection.tsx +1 -1
- package/src/components/index.ts +1 -1
- package/src/hooks/useAttachmentUrlValidation.ts +1 -1
- package/src/hooks/useContextDisplayItems.ts +1 -1
- package/src/{components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.ts → hooks/useDateTimeNonEmpty.ts} +15 -2
- package/src/hooks/useDateValidation.tsx +3 -3
- package/src/hooks/useDebounce.ts +1 -1
- package/src/hooks/useDecimalCalculatedExpression.ts +1 -1
- package/src/hooks/useGroupTableRows.ts +1 -1
- package/src/hooks/useHidden.ts +4 -3
- package/src/hooks/useInitialiseGroupTable.ts +1 -1
- package/src/hooks/useInitialiseRenderer.ts +1 -1
- package/src/hooks/useInitialiseRepeatAnswers.ts +1 -1
- package/src/hooks/useInitialiseRepeatGroups.ts +1 -1
- package/src/hooks/useIntegerCalculatedExpression.ts +1 -1
- package/src/hooks/useNumberInput.ts +1 -1
- package/src/hooks/useQueryClient.ts +1 -1
- package/src/hooks/useReadOnly.ts +1 -1
- package/src/hooks/useRenderingExtensions.ts +1 -1
- package/src/hooks/useResponsive.ts +1 -1
- package/src/hooks/useSliderExtensions.ts +1 -1
- package/src/hooks/useStringCalculatedExpression.ts +1 -1
- package/src/hooks/useStringInput.ts +1 -1
- package/src/hooks/useTerminologyServerQuery.ts +1 -1
- package/src/hooks/useTimeValidation.tsx +70 -0
- package/src/hooks/useValidationFeedback.ts +1 -1
- package/src/hooks/useValueSetCodings.ts +1 -1
- package/src/index.ts +1 -0
- package/src/interfaces/answerExpression.interface.ts +1 -1
- package/src/interfaces/choice.enum.ts +1 -1
- package/src/interfaces/enableWhen.interface.ts +25 -6
- package/src/interfaces/groupTable.interface.ts +1 -1
- package/src/interfaces/index.ts +8 -0
- package/src/interfaces/populate.interface.ts +1 -1
- package/src/interfaces/questionnaireStore.interface.ts +3 -3
- package/src/interfaces/regex.interface.ts +1 -1
- package/src/interfaces/renderProps.interface.ts +5 -1
- package/src/interfaces/repeatGroup.interface.ts +1 -1
- package/src/interfaces/tab.interface.ts +1 -1
- package/src/interfaces/valueSet.interface.ts +1 -1
- package/src/interfaces/variables.interface.ts +1 -1
- package/src/stores/questionnaireResponseStore.ts +1 -1
- package/src/stores/questionnaireStore.ts +46 -9
- package/src/stores/smartConfigStore.ts +1 -1
- package/src/stores/terminologyServerStore.ts +1 -1
- package/src/stories/MedicalHistoryTable.stories.tsx +1 -1
- package/src/stories/SmartFormsRenderer.stories.ts +1 -1
- package/src/theme/Theme.tsx +1 -1
- package/src/theme/customGlobalStyles.tsx +1 -1
- package/src/theme/overrides/Accordion.ts +1 -1
- package/src/theme/overrides/Autocomplete.ts +1 -1
- package/src/theme/overrides/Button.ts +1 -1
- package/src/theme/overrides/Card.ts +1 -1
- package/src/theme/overrides/Input.ts +1 -1
- package/src/theme/overrides/Overrides.ts +1 -1
- package/src/theme/overrides/Paper.ts +1 -1
- package/src/theme/overrides/SpeedDial.ts +1 -1
- package/src/theme/overrides/Table.ts +1 -1
- package/src/theme/palette.ts +1 -1
- package/src/theme/shadows.ts +1 -1
- package/src/theme/typography.ts +1 -1
- package/src/utils/calculatedExpression.ts +1 -1
- package/src/utils/choice.ts +5 -3
- package/src/utils/dayjsExtend.ts +1 -1
- package/src/utils/debounce.ts +1 -1
- package/src/utils/emptyResource.ts +1 -1
- package/src/utils/enableWhen.ts +195 -56
- package/src/utils/enableWhenExpression.ts +36 -9
- package/src/utils/fhirpath.ts +1 -1
- package/src/utils/formChanges.ts +1 -1
- package/src/utils/groupTable.ts +1 -1
- package/src/utils/index.ts +6 -1
- package/src/utils/initialise.ts +1 -1
- package/src/utils/itemControl.ts +1 -1
- package/src/utils/mapItem.ts +1 -1
- package/src/utils/misc.ts +160 -0
- package/src/utils/openChoice.ts +1 -1
- package/src/utils/parseInputs.ts +1 -1
- package/src/utils/populateContexts.ts +1 -1
- package/src/utils/qItem.ts +32 -9
- package/src/utils/qrItem.ts +1 -1
- package/src/utils/questionnaireStoreUtils/addAdditionalVariables.ts +1 -1
- package/src/utils/questionnaireStoreUtils/createQuestionaireModel.ts +2 -2
- package/src/utils/questionnaireStoreUtils/extractContainedValueSets.ts +1 -1
- package/src/utils/questionnaireStoreUtils/extractOtherExtensions.ts +123 -26
- package/src/utils/questionnaireStoreUtils/extractTabs.ts +1 -1
- package/src/utils/questionnaireStoreUtils/extractVariables.ts +1 -1
- package/src/utils/questionnaireStoreUtils/resolveValueSets.ts +1 -1
- package/src/utils/removeEmptyAnswers.ts +1 -1
- package/src/utils/repopulateItems.ts +1 -1
- package/src/utils/slider.ts +1 -1
- package/src/utils/tabs.ts +9 -6
- package/src/utils/validateQuestionnaire.ts +1 -1
- package/src/utils/valueSet.ts +1 -1
- package/lib/components/FormComponents/CustomDateItem/CustomDateItem.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/CustomDateField.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePicker.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.js +0 -13
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/DatePickerButton.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/MuiDatePicker.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/index.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.d.ts +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/index.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/customDateTimePicker/utils/parseDates.js.map +0 -1
- package/lib/components/FormComponents/CustomDateItem/index.d.ts +0 -1
- package/lib/components/FormComponents/CustomDateItem/index.js.map +0 -1
- package/lib/components/FormComponents/DateItem/DateField.d.ts +0 -12
- package/lib/components/FormComponents/DateItem/DateItem.d.ts +0 -9
- package/lib/components/FormComponents/ItemParts/ItemExtensionLabels.d.ts +0 -7
- package/lib/setup-jest.js +0 -1
- package/lib/stories/MedicalHistoryTable.stories.js +0 -45
- package/lib/stories/SmartFormsRenderer.stories.js +0 -117
- /package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/CustomDateField.d.ts +0 -0
- /package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/DatePicker.d.ts +0 -0
- /package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/DatePickerButton.d.ts +0 -0
- /package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems/CustomDateItem}/MuiDatePicker.d.ts +0 -0
- /package/lib/components/FormComponents/{CustomDateItem/customDateTimePicker → DateTimeItems}/index.d.ts +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
3
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -14,5 +14,5 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
-
export
|
|
17
|
+
export { parseFhirDateToDisplayDate } from './parseDate';
|
|
18
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export declare function
|
|
1
|
+
export declare function validateDateInput(input: string): boolean;
|
|
2
2
|
export declare function validateTwoMatches(monthInput: string, yearInput: string): boolean;
|
|
3
3
|
export declare function validateThreeMatches(dayInput: string, monthInput: string, yearInput: string): boolean;
|
|
4
4
|
export declare function getNumOfSeparators(valueDate: string, seperator: string): number;
|
|
5
5
|
export declare function parseFhirDateToDisplayDate(fhirDate: string): {
|
|
6
6
|
displayDate: string;
|
|
7
|
-
|
|
7
|
+
dateParseFail?: boolean;
|
|
8
8
|
};
|
|
9
9
|
export declare function parseInputDateToFhirDate(displayDate: string): string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
3
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -16,25 +16,25 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import dayjs from 'dayjs';
|
|
18
18
|
const inputMatchRegex = /(\d{4}|\d{3}|\d{2})/g;
|
|
19
|
-
export function
|
|
19
|
+
export function validateDateInput(input) {
|
|
20
20
|
const matches = input.match(inputMatchRegex);
|
|
21
21
|
if (!matches) {
|
|
22
22
|
return false;
|
|
23
23
|
}
|
|
24
|
-
const
|
|
24
|
+
const separator = input.includes('/') ? '/' : null;
|
|
25
25
|
if (matches.length === 1) {
|
|
26
|
-
//
|
|
27
|
-
if (
|
|
26
|
+
// separator not supposed to be present if only one match present
|
|
27
|
+
if (separator) {
|
|
28
28
|
return false;
|
|
29
29
|
}
|
|
30
30
|
return matches[0].length === 4;
|
|
31
31
|
}
|
|
32
|
-
// Invalid if
|
|
33
|
-
if (!
|
|
32
|
+
// Invalid if separator is not present
|
|
33
|
+
if (!separator) {
|
|
34
34
|
return false;
|
|
35
35
|
}
|
|
36
36
|
// Invalid if num of slots don't match the number of regex matches
|
|
37
|
-
const slotsMatched = input.split(
|
|
37
|
+
const slotsMatched = input.split(separator);
|
|
38
38
|
if (slotsMatched.length != matches.length) {
|
|
39
39
|
return false;
|
|
40
40
|
}
|
|
@@ -93,7 +93,7 @@ export function parseFhirDateToDisplayDate(fhirDate) {
|
|
|
93
93
|
if (oneMatchDate.isValid()) {
|
|
94
94
|
return { displayDate: oneMatchDate.format('YYYY') };
|
|
95
95
|
}
|
|
96
|
-
return { displayDate: fhirDate,
|
|
96
|
+
return { displayDate: fhirDate, dateParseFail: true };
|
|
97
97
|
}
|
|
98
98
|
export function parseInputDateToFhirDate(displayDate) {
|
|
99
99
|
const numOfSeparators = getNumOfSeparators(displayDate, '/');
|
|
@@ -118,4 +118,4 @@ export function parseInputDateToFhirDate(displayDate) {
|
|
|
118
118
|
// Default to YYYY-MM-DD format if all else fails
|
|
119
119
|
return dayjs(displayDate).format('YYYY-MM-DD');
|
|
120
120
|
}
|
|
121
|
-
//# sourceMappingURL=
|
|
121
|
+
//# sourceMappingURL=parseDate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseDate.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/utils/parseDate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Dayjs } from 'dayjs';
|
|
2
|
+
export declare function getTimeSegments(timeInput: string): {
|
|
3
|
+
hourSegment: string | null;
|
|
4
|
+
minuteSegment: string | null;
|
|
5
|
+
};
|
|
6
|
+
export declare function validateTimeInput(timeInput: string, periodInput: string): {
|
|
7
|
+
timeIsValid: boolean;
|
|
8
|
+
is24HourNotation: boolean;
|
|
9
|
+
};
|
|
10
|
+
export declare function validateHourSegment(hourSegment: string): {
|
|
11
|
+
hourSegmentValid: boolean;
|
|
12
|
+
is24HourNotation: boolean | null;
|
|
13
|
+
};
|
|
14
|
+
export declare function parseDateTimeToDisplayTime(dateTime: Dayjs | null): {
|
|
15
|
+
displayTime: string;
|
|
16
|
+
displayPeriod: string;
|
|
17
|
+
timeParseFail?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare function parseInputDateTimeToFhirDateTime(dateInput: string, newTimeInput: string, periodInput: string, is24HourNotation: boolean): string;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import dayjs from 'dayjs';
|
|
18
|
+
const inputMatchRegex = /^\d{2}:\d{2}$/;
|
|
19
|
+
export function getTimeSegments(timeInput) {
|
|
20
|
+
if (!inputMatchRegex.test(timeInput)) {
|
|
21
|
+
return { hourSegment: null, minuteSegment: null };
|
|
22
|
+
}
|
|
23
|
+
const timeInputSegments = timeInput.split(':');
|
|
24
|
+
if (timeInputSegments.length !== 2) {
|
|
25
|
+
return { hourSegment: null, minuteSegment: null };
|
|
26
|
+
}
|
|
27
|
+
return { hourSegment: timeInputSegments[0], minuteSegment: timeInputSegments[1] };
|
|
28
|
+
}
|
|
29
|
+
export function validateTimeInput(timeInput, periodInput) {
|
|
30
|
+
// Test time input is valid
|
|
31
|
+
const { hourSegment, minuteSegment } = getTimeSegments(timeInput);
|
|
32
|
+
if (!hourSegment || !minuteSegment) {
|
|
33
|
+
return { timeIsValid: false, is24HourNotation: false };
|
|
34
|
+
}
|
|
35
|
+
const { hourSegmentValid, is24HourNotation } = validateHourSegment(hourSegment);
|
|
36
|
+
const minuteSegmentValid = validateMinuteSegment(minuteSegment);
|
|
37
|
+
if (!hourSegmentValid || !minuteSegmentValid) {
|
|
38
|
+
return { timeIsValid: false, is24HourNotation: false };
|
|
39
|
+
}
|
|
40
|
+
// Test period input is valid
|
|
41
|
+
if (!(periodInput === 'AM' || periodInput === 'PM' || is24HourNotation)) {
|
|
42
|
+
return { timeIsValid: false, is24HourNotation: false };
|
|
43
|
+
}
|
|
44
|
+
return { timeIsValid: true, is24HourNotation: !!is24HourNotation };
|
|
45
|
+
}
|
|
46
|
+
export function validateHourSegment(hourSegment) {
|
|
47
|
+
const hour = parseInt(hourSegment, 10);
|
|
48
|
+
const hourSegmentValid = hour >= 0 && hour <= 23;
|
|
49
|
+
const is24HourNotation = hourSegmentValid ? hour >= 13 && hour <= 23 : null;
|
|
50
|
+
return { hourSegmentValid, is24HourNotation };
|
|
51
|
+
}
|
|
52
|
+
function validateMinuteSegment(minuteSegment) {
|
|
53
|
+
const minutes = parseInt(minuteSegment, 10);
|
|
54
|
+
return minutes >= 0 && minutes <= 59;
|
|
55
|
+
}
|
|
56
|
+
export function parseDateTimeToDisplayTime(dateTime) {
|
|
57
|
+
if (!dateTime) {
|
|
58
|
+
return { displayTime: '', displayPeriod: '' };
|
|
59
|
+
}
|
|
60
|
+
if (!dateTime.isValid()) {
|
|
61
|
+
return { displayTime: '', displayPeriod: '', timeParseFail: true };
|
|
62
|
+
}
|
|
63
|
+
const displayTime = dateTime.format('HH:mm');
|
|
64
|
+
const displayPeriod = dateTime.format('A');
|
|
65
|
+
return { displayTime, displayPeriod };
|
|
66
|
+
}
|
|
67
|
+
function convertTo12HourFormat(timeInput) {
|
|
68
|
+
const timeSegments = timeInput.split(':');
|
|
69
|
+
const hour = parseInt(timeSegments[0], 10);
|
|
70
|
+
if (hour >= 12) {
|
|
71
|
+
timeSegments[0] = `${hour - 12}`;
|
|
72
|
+
}
|
|
73
|
+
return `${timeSegments[0]}:${timeSegments[1]}`;
|
|
74
|
+
}
|
|
75
|
+
export function parseInputDateTimeToFhirDateTime(dateInput, newTimeInput, periodInput, is24HourNotation) {
|
|
76
|
+
periodInput = is24HourNotation ? 'PM' : periodInput;
|
|
77
|
+
const new12HourTimeInput = convertTo12HourFormat(newTimeInput);
|
|
78
|
+
const dateTimeDayJs = dayjs(`${dateInput} ${new12HourTimeInput} ${periodInput}`, `YYYY-MM-DD hh:mm A`);
|
|
79
|
+
return dayjs(dateTimeDayJs).format('YYYY-MM-DDTHH:mm:ssZ');
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=parseTime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseTime.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/utils/parseTime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
|
|
3
3
|
import type { PropsWithIsRepeatedAttribute, PropsWithParentIsReadOnlyAttribute, PropsWithQrItemChangeHandler } from '../../../interfaces/renderProps.interface';
|
|
4
|
+
import type { PropsWithParentIsRepeatGroupAttribute } from '../../../interfaces/renderProps.interface';
|
|
4
5
|
import type { Tabs } from '../../../interfaces/tab.interface';
|
|
5
|
-
interface GroupItemProps extends PropsWithQrItemChangeHandler, PropsWithIsRepeatedAttribute, PropsWithParentIsReadOnlyAttribute {
|
|
6
|
+
interface GroupItemProps extends PropsWithQrItemChangeHandler, PropsWithIsRepeatedAttribute, PropsWithParentIsReadOnlyAttribute, PropsWithParentIsRepeatGroupAttribute {
|
|
6
7
|
qItem: QuestionnaireItem;
|
|
7
8
|
qrItem: QuestionnaireResponseItem | null;
|
|
8
9
|
groupCardElevation: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
3
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -25,10 +25,10 @@ import NextTabButtonWrapper from './NextTabButtonWrapper';
|
|
|
25
25
|
import GroupItemSwitcher from './GroupItemSwitcher';
|
|
26
26
|
import useReadOnly from '../../../hooks/useReadOnly';
|
|
27
27
|
function GroupItem(props) {
|
|
28
|
-
const { qItem, qrItem, isRepeated, groupCardElevation, tabIsMarkedAsComplete, tabs, currentTabIndex, parentIsReadOnly, onQrItemChange } = props;
|
|
28
|
+
const { qItem, qrItem, isRepeated, groupCardElevation, tabIsMarkedAsComplete, tabs, currentTabIndex, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange } = props;
|
|
29
29
|
const qItemsIndexMap = useMemo(() => mapQItemsIndex(qItem), [qItem]);
|
|
30
30
|
const readOnly = useReadOnly(qItem, parentIsReadOnly);
|
|
31
|
-
const itemIsHidden = useHidden(qItem);
|
|
31
|
+
const itemIsHidden = useHidden(qItem, parentRepeatGroupIndex);
|
|
32
32
|
if (itemIsHidden) {
|
|
33
33
|
return null;
|
|
34
34
|
}
|
|
@@ -56,7 +56,7 @@ function GroupItem(props) {
|
|
|
56
56
|
React.createElement(GroupHeading, { qItem: qItem, readOnly: readOnly, tabIsMarkedAsComplete: tabIsMarkedAsComplete, isRepeated: isRepeated }),
|
|
57
57
|
qItems.map((qItem, i) => {
|
|
58
58
|
const qrItemOrItems = qrItemsByIndex[i];
|
|
59
|
-
return (React.createElement(GroupItemSwitcher, { key: qItem.linkId, qItem: qItem, qrItemOrItems: qrItemOrItems, groupCardElevation: groupCardElevation, parentIsReadOnly: readOnly, onQrItemChange: handleQrItemChange, onQrRepeatGroupChange: handleQrRepeatGroupChange }));
|
|
59
|
+
return (React.createElement(GroupItemSwitcher, { key: qItem.linkId, qItem: qItem, qrItemOrItems: qrItemOrItems, groupCardElevation: groupCardElevation, parentIsReadOnly: readOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: handleQrItemChange, onQrRepeatGroupChange: handleQrRepeatGroupChange }));
|
|
60
60
|
}),
|
|
61
61
|
React.createElement(NextTabButtonWrapper, { currentTabIndex: currentTabIndex, tabs: tabs }))));
|
|
62
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItem.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"GroupItem.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { PropsWithParentIsReadOnlyAttribute, PropsWithQrItemChangeHandler, PropsWithQrRepeatGroupChangeHandler } from '../../../interfaces/renderProps.interface';
|
|
3
|
+
import type { PropsWithParentIsRepeatGroupAttribute } from '../../../interfaces/renderProps.interface';
|
|
3
4
|
import type { QuestionnaireItem, QuestionnaireResponseItem } from 'fhir/r4';
|
|
4
|
-
interface GroupItemSwitcherProps extends PropsWithQrItemChangeHandler, PropsWithQrRepeatGroupChangeHandler, PropsWithParentIsReadOnlyAttribute {
|
|
5
|
+
interface GroupItemSwitcherProps extends PropsWithQrItemChangeHandler, PropsWithQrRepeatGroupChangeHandler, PropsWithParentIsReadOnlyAttribute, PropsWithParentIsRepeatGroupAttribute {
|
|
5
6
|
qItem: QuestionnaireItem;
|
|
6
7
|
qrItemOrItems: QuestionnaireResponseItem | QuestionnaireResponseItem[] | undefined;
|
|
7
8
|
groupCardElevation: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
3
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -24,8 +24,8 @@ import useHidden from '../../../hooks/useHidden';
|
|
|
24
24
|
import GroupItem from './GroupItem';
|
|
25
25
|
import GridGroup from '../GridGroup/GridGroup';
|
|
26
26
|
function GroupItemSwitcher(props) {
|
|
27
|
-
const { qItem, qrItemOrItems, groupCardElevation, parentIsReadOnly, onQrItemChange, onQrRepeatGroupChange } = props;
|
|
28
|
-
const itemIsHidden = useHidden(qItem);
|
|
27
|
+
const { qItem, qrItemOrItems, groupCardElevation, parentIsReadOnly, parentIsRepeatGroup, parentRepeatGroupIndex, onQrItemChange, onQrRepeatGroupChange } = props;
|
|
28
|
+
const itemIsHidden = useHidden(qItem, parentRepeatGroupIndex);
|
|
29
29
|
if (itemIsHidden) {
|
|
30
30
|
return null;
|
|
31
31
|
}
|
|
@@ -63,10 +63,10 @@ function GroupItemSwitcher(props) {
|
|
|
63
63
|
}
|
|
64
64
|
// if qItem is not a repeating question or is a checkbox
|
|
65
65
|
if (qItem.type === 'group') {
|
|
66
|
-
return (React.createElement(GroupItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: false, groupCardElevation: groupCardElevation + 1, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange }));
|
|
66
|
+
return (React.createElement(GroupItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: false, groupCardElevation: groupCardElevation + 1, parentIsReadOnly: parentIsReadOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: onQrItemChange }));
|
|
67
67
|
}
|
|
68
68
|
// Defaults to a single, non-group item
|
|
69
|
-
return (React.createElement(SingleItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: false, isTabled: false, groupCardElevation: groupCardElevation + 1, parentIsReadOnly: parentIsReadOnly, onQrItemChange: onQrItemChange }));
|
|
69
|
+
return (React.createElement(SingleItem, { qItem: qItem, qrItem: qrItem !== null && qrItem !== void 0 ? qrItem : null, isRepeated: false, isTabled: false, groupCardElevation: groupCardElevation + 1, parentIsReadOnly: parentIsReadOnly, parentIsRepeatGroup: parentIsRepeatGroup, parentRepeatGroupIndex: parentRepeatGroupIndex, onQrItemChange: onQrItemChange }));
|
|
70
70
|
}
|
|
71
71
|
export default GroupItemSwitcher;
|
|
72
72
|
//# sourceMappingURL=GroupItemSwitcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupItemSwitcher.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"GroupItemSwitcher.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/GroupItem/GroupItemSwitcher.tsx"],"names":[],"mappings":"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"}
|
package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ChoiceItemOrientation } from '../../../interfaces/choice.enum';
|
|
3
2
|
import type { QuestionnaireItem, QuestionnaireResponseItemAnswer } from 'fhir/r4';
|
|
4
3
|
interface OpenChoiceCheckboxAnswerOptionFieldsProps {
|
|
5
4
|
qItem: QuestionnaireItem;
|
|
@@ -8,7 +7,6 @@ interface OpenChoiceCheckboxAnswerOptionFieldsProps {
|
|
|
8
7
|
openLabelValue: string;
|
|
9
8
|
openLabelChecked: boolean;
|
|
10
9
|
readOnly: boolean;
|
|
11
|
-
orientation: ChoiceItemOrientation;
|
|
12
10
|
onValueChange: (changedOptionValue: string | null, changedOpenLabelValue: string | null) => void;
|
|
13
11
|
onOpenLabelCheckedChange: (checked: boolean) => void;
|
|
14
12
|
onOpenLabelInputChange: (input: string) => void;
|
package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright
|
|
2
|
+
* Copyright 2024 Commonwealth Scientific and Industrial Research
|
|
3
3
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
4
|
*
|
|
5
5
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -19,11 +19,13 @@ import { StyledFormGroup } from '../Item.styles';
|
|
|
19
19
|
import { ChoiceItemOrientation } from '../../../interfaces/choice.enum';
|
|
20
20
|
import CheckboxSingle from '../ItemParts/CheckboxSingle';
|
|
21
21
|
import CheckboxSingleWithOpenLabel from '../ItemParts/CheckboxSingleWithOpenLabel';
|
|
22
|
+
import { getChoiceOrientation } from '../../../utils/choice';
|
|
22
23
|
function OpenChoiceCheckboxAnswerOptionFields(props) {
|
|
23
|
-
var _a;
|
|
24
|
-
const { qItem, answers, openLabelText, openLabelValue, openLabelChecked, readOnly,
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
var _a, _b;
|
|
25
|
+
const { qItem, answers, openLabelText, openLabelValue, openLabelChecked, readOnly, onValueChange, onOpenLabelCheckedChange, onOpenLabelInputChange } = props;
|
|
26
|
+
const orientation = (_a = getChoiceOrientation(qItem)) !== null && _a !== void 0 ? _a : ChoiceItemOrientation.Vertical;
|
|
27
|
+
return (React.createElement(StyledFormGroup, { row: orientation === ChoiceItemOrientation.Horizontal }, (_b = qItem.answerOption) === null || _b === void 0 ? void 0 :
|
|
28
|
+
_b.map((option) => {
|
|
27
29
|
var _a, _b, _c;
|
|
28
30
|
if (option['valueCoding']) {
|
|
29
31
|
return (React.createElement(CheckboxSingle, { key: (_a = option.valueCoding.code) !== null && _a !== void 0 ? _a : '', value: (_b = option.valueCoding.code) !== null && _b !== void 0 ? _b : '', label: (_c = option.valueCoding.display) !== null && _c !== void 0 ? _c : `${option.valueCoding.code}`, readOnly: readOnly, isChecked: answers.some((answer) => JSON.stringify(answer) === JSON.stringify(option)), onCheckedChange: (changedValue) => onValueChange(changedValue, null) }));
|
package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenChoiceCheckboxAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,2BAA2B,MAAM,0CAA0C,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenChoiceCheckboxAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionFields.tsx"],"names":[],"mappings":"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"}
|