@aehrc/smart-forms-renderer 0.4.0 → 0.6.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/lib/api/smartClient.d.ts +5 -0
- package/lib/api/smartClient.js +41 -0
- package/lib/api/smartClient.js.map +1 -0
- package/lib/components/Alert.styles.d.ts +4 -4
- package/lib/components/Alert.styles.js +2 -1
- package/lib/components/Alert.styles.js.map +1 -1
- package/lib/components/BackToTopButton/BackToTopButton.js +3 -1
- package/lib/components/BackToTopButton/BackToTopButton.js.map +1 -1
- package/lib/components/Box.styles.d.ts +9 -9
- package/lib/components/Box.styles.js +2 -1
- package/lib/components/Box.styles.js.map +1 -1
- package/lib/components/FormComponents/BooleanItem/BooleanField.js +2 -1
- package/lib/components/FormComponents/BooleanItem/BooleanField.js.map +1 -1
- package/lib/components/FormComponents/BooleanItem/BooleanItem.js +1 -1
- package/lib/components/FormComponents/BooleanItem/BooleanItem.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.d.ts +9 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js +91 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceAutocompleteItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js +70 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js +67 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceCheckboxAnswerValueSetItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.d.ts +9 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js +61 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceItemSwitcher.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadio.d.ts +8 -0
- package/{src/components/FormComponents/ItemParts/FadingCheckIcon.js → lib/components/FormComponents/ChoiceItems/ChoiceRadio.js} +7 -8
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadio.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js +70 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.d.ts +11 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js +73 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioAnswerValueSetItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioButton.d.ts +8 -0
- package/{src/components/FormComponents/BooleanItem/BooleanField.js → lib/components/FormComponents/ChoiceItems/ChoiceRadioButton.js} +9 -8
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioButton.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.d.ts +8 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js +25 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingle.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingleItem.d.ts +8 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingleItem.js +25 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceRadioSingleItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.d.ts +9 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js +75 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.d.ts +9 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js +84 -0
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetItem.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoice.d.ts +9 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoice.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceAutocomplete.d.ts +9 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceAutocomplete.js +5 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceAutocomplete.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceCheckboxAnswerOption.d.ts +11 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceCheckboxAnswerOption.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceCheckboxAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceCheckboxAnswerValueSet.d.ts +11 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceCheckboxAnswerValueSet.js +2 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceCheckboxAnswerValueSet.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioAnswerOption.d.ts +11 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceRadioAnswerOption.js +1 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioAnswerValueSet.d.ts +11 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceRadioAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioAnswerValueSet.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioSingle.d.ts +8 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceRadioSingle.js +2 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceRadioSingle.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceSelectAnswerOption.d.ts +9 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceSelectAnswerOption.js +4 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceSelectAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceSelectAnswerValueSet.d.ts +9 -0
- package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoiceSelectAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/ChoiceItems/QItemChoiceSelectAnswerValueSet.js.map +1 -0
- package/lib/components/FormComponents/DateTimeItem/DateTimeField.js +1 -1
- package/lib/components/FormComponents/DateTimeItem/DateTimeField.js.map +1 -1
- package/lib/components/FormComponents/DecimalItem/DecimalField.js +1 -1
- package/lib/components/FormComponents/DecimalItem/DecimalField.js.map +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.js.map +1 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.d.ts +3 -3
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js +2 -1
- package/lib/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +1 -1
- package/lib/components/FormComponents/GridGroup/GridGroup.js +4 -1
- package/lib/components/FormComponents/GridGroup/GridGroup.js.map +1 -1
- package/lib/components/FormComponents/GridGroup/GridRow.js +1 -1
- package/lib/components/FormComponents/GridGroup/GridRow.js.map +1 -1
- package/lib/components/FormComponents/GridGroup/GridTable.js +5 -1
- package/lib/components/FormComponents/GridGroup/GridTable.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/GroupHeading.js +2 -1
- package/lib/components/FormComponents/GroupItem/GroupHeading.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/GroupItem.styles.d.ts +3 -3
- package/lib/components/FormComponents/GroupItem/GroupItem.styles.js +2 -1
- package/lib/components/FormComponents/GroupItem/GroupItem.styles.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButton.js +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButton.js.map +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js +1 -1
- package/lib/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +1 -1
- package/lib/components/FormComponents/IntegerItem/IntegerField.js +1 -1
- package/lib/components/FormComponents/IntegerItem/IntegerField.js.map +1 -1
- package/lib/components/FormComponents/Item.styles.d.ts +4 -4
- package/lib/components/FormComponents/Item.styles.js +4 -1
- package/lib/components/FormComponents/Item.styles.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/CheckboxSingle.d.ts +10 -0
- package/{src/components/FormComponents/ItemParts/QItemCheckboxSingle.js → lib/components/FormComponents/ItemParts/CheckboxSingle.js} +5 -4
- package/lib/components/FormComponents/ItemParts/CheckboxSingle.js.map +1 -0
- package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.d.ts +10 -0
- package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js +35 -0
- package/lib/components/FormComponents/ItemParts/CheckboxSingleWithOpenLabel.js.map +1 -0
- package/lib/components/FormComponents/ItemParts/CheckboxWithOpenLabel.d.ts +10 -0
- package/{src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js → lib/components/FormComponents/ItemParts/CheckboxWithOpenLabel.js} +6 -4
- package/lib/components/FormComponents/ItemParts/CheckboxWithOpenLabel.js.map +1 -0
- package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js +1 -1
- package/lib/components/FormComponents/ItemParts/FadingCheckIcon.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemFieldGrid.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelText.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelText.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js +1 -1
- package/lib/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/QItemCheckboxSingle.js +2 -1
- package/lib/components/FormComponents/ItemParts/QItemCheckboxSingle.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js +3 -1
- package/lib/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js +3 -3
- package/lib/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js.map +1 -1
- package/lib/components/FormComponents/ItemParts/RadioButtonItemWithOpenLabel.d.ts +10 -0
- package/{src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js → lib/components/FormComponents/ItemParts/RadioButtonItemWithOpenLabel.js} +6 -6
- package/lib/components/FormComponents/ItemParts/RadioButtonItemWithOpenLabel.js.map +1 -0
- package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.d.ts +10 -0
- package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js +31 -0
- package/lib/components/FormComponents/ItemParts/RadioButtonWithOpenLabel.js.map +1 -0
- package/lib/components/FormComponents/Lists.styles.d.ts +3 -3
- package/lib/components/FormComponents/Lists.styles.js +2 -2
- package/lib/components/FormComponents/Lists.styles.js.map +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.d.ts +9 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js +111 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceAutocompleteItem.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.d.ts +11 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js +105 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.d.ts +9 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js +49 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceItemSwitcher.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.d.ts +11 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js +116 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.d.ts +9 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js +77 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.d.ts +9 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js +70 -0
- package/lib/components/FormComponents/OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoice.d.ts +9 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoice.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceAutocomplete.d.ts +9 -0
- package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoiceAutocomplete.js +6 -1
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceAutocomplete.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceCheckboxAnswerOption.d.ts +11 -0
- package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoiceCheckboxAnswerOption.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceCheckboxAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceRadioAnswerOption.d.ts +11 -0
- package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoiceRadioAnswerOption.js +1 -1
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceRadioAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceSelectAnswerOption.d.ts +9 -0
- package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoiceSelectAnswerOption.js +2 -1
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceSelectAnswerOption.js.map +1 -0
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceSelectAnswerValueSet.d.ts +9 -0
- package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoiceSelectAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/OpenChoiceItems/QItemOpenChoiceSelectAnswerValueSet.js.map +1 -0
- package/lib/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js +5 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js +2 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js +2 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js +4 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js.map +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js +6 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js.map +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js +2 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js.map +1 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js +3 -1
- package/lib/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/AddItemButton.js +2 -1
- package/lib/components/FormComponents/RepeatGroup/AddItemButton.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js +3 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroup.js.map +1 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js +1 -1
- package/lib/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/AddItemButton.js +2 -1
- package/lib/components/FormComponents/RepeatItem/AddItemButton.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js +1 -1
- package/lib/components/FormComponents/RepeatItem/DeleteItemButton.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatField.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatField.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.js +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.js.map +1 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.d.ts +7 -7
- package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.js +3 -1
- package/lib/components/FormComponents/RepeatItem/RepeatItem.styles.js.map +1 -1
- package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js +5 -5
- package/lib/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +1 -1
- package/lib/components/FormComponents/StringItem/StringField.js +1 -1
- package/lib/components/FormComponents/StringItem/StringField.js.map +1 -1
- package/lib/components/FormComponents/Tables/DeleteRowButton.js +2 -1
- package/lib/components/FormComponents/Tables/DeleteRowButton.js.map +1 -1
- package/lib/components/FormComponents/Tables/QItemGroupTable.js +11 -1
- package/lib/components/FormComponents/Tables/QItemGroupTable.js.map +1 -1
- package/lib/components/FormComponents/Tables/Table.styles.d.ts +5 -5
- package/lib/components/FormComponents/Tables/Table.styles.js +2 -1
- package/lib/components/FormComponents/Tables/Table.styles.js.map +1 -1
- package/lib/components/FormComponents/Textfield.styles.d.ts +2 -2
- package/lib/components/FormComponents/Textfield.styles.js +2 -1
- package/lib/components/FormComponents/Textfield.styles.js.map +1 -1
- package/lib/components/FormComponents/Typography.styles.d.ts +2 -2
- package/lib/components/FormComponents/Typography.styles.js +2 -1
- package/lib/components/FormComponents/Typography.styles.js.map +1 -1
- package/lib/components/FormComponents/UrlItem/UrlField.js +1 -1
- package/lib/components/FormComponents/UrlItem/UrlField.js.map +1 -1
- package/lib/components/FormRenderer/SmartFormsRenderer.js +4 -2
- package/lib/components/FormRenderer/SmartFormsRenderer.js.map +1 -1
- package/lib/components/Iconify/Iconify.d.ts +1 -1
- package/lib/components/Iconify/Iconify.js +1 -1
- package/lib/components/Iconify/Iconify.js.map +1 -1
- package/lib/components/Lists.styles.d.ts +3 -3
- package/lib/components/Lists.styles.js +2 -2
- package/lib/components/Lists.styles.js.map +1 -1
- package/lib/components/Renderer/BaseRenderer.d.ts +3 -0
- package/lib/components/Renderer/BaseRenderer.js +55 -0
- package/lib/components/Renderer/BaseRenderer.js.map +1 -0
- package/lib/components/Renderer/FormBodyCollapsible.d.ts +9 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/FormBodyCollapsible.js +1 -1
- package/lib/components/Renderer/FormBodyCollapsible.js.map +1 -0
- package/lib/components/Renderer/FormBodySingleCollapsible.d.ts +12 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/FormBodySingleCollapsible.js +6 -1
- package/lib/components/Renderer/FormBodySingleCollapsible.js.map +1 -0
- package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.d.ts +12 -0
- package/lib/components/Renderer/FormBodySingleCollapsibleWrapper.js.map +1 -0
- package/lib/components/Renderer/FormBodyTabbed.d.ts +9 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/FormBodyTabbed.js +1 -1
- package/lib/components/Renderer/FormBodyTabbed.js.map +1 -0
- package/lib/components/Renderer/FormTitle.d.ts +7 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/FormTitle.js +1 -1
- package/lib/components/Renderer/FormTitle.js.map +1 -0
- package/lib/components/Renderer/FormTopLevelItem.d.ts +9 -0
- package/lib/components/Renderer/FormTopLevelItem.js.map +1 -0
- package/lib/components/Renderer/SmartFormsRenderer.d.ts +11 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/SmartFormsRenderer.js +10 -6
- package/lib/components/Renderer/SmartFormsRenderer.js.map +1 -0
- package/lib/components/Renderer/index.d.ts +2 -0
- package/{src/components/FormRenderer → lib/components/Renderer}/index.js +1 -0
- package/lib/components/Renderer/index.js.map +1 -0
- package/lib/components/Tabs/CompleteTabButton.js +2 -1
- package/lib/components/Tabs/CompleteTabButton.js.map +1 -1
- package/lib/components/Tabs/FormBodySingleTab.js +4 -1
- package/lib/components/Tabs/FormBodySingleTab.js.map +1 -1
- package/lib/components/Tabs/FormBodyTabList.js +3 -1
- package/lib/components/Tabs/FormBodyTabList.js.map +1 -1
- package/lib/components/index.d.ts +1 -1
- package/lib/components/index.js +1 -1
- package/lib/components/index.js.map +1 -1
- package/lib/contexts/TestContext.d.ts +11 -0
- package/{src/components/FormComponents/ItemParts/ContextDisplayItem.js → lib/contexts/TestContext.js} +15 -12
- package/lib/contexts/TestContext.js.map +1 -0
- package/lib/contexts/index.d.ts +1 -0
- package/lib/contexts/index.js +2 -0
- package/lib/contexts/index.js.map +1 -0
- package/lib/hooks/useInitialiseRenderer.d.ts +2 -1
- package/lib/hooks/useInitialiseRenderer.js +28 -5
- package/lib/hooks/useInitialiseRenderer.js.map +1 -1
- package/lib/hooks/useTerminologyServerQuery.d.ts +1 -1
- package/lib/hooks/useTestContext.d.ts +5 -0
- package/{src/components/FormComponents/Typography.styles.js → lib/hooks/useTestContext.js} +11 -7
- package/lib/hooks/useTestContext.js.map +1 -0
- package/lib/hooks/useValueSetCodings.js +4 -4
- package/lib/hooks/useValueSetCodings.js.map +1 -1
- package/lib/index.d.ts +5 -63
- package/lib/index.js +6 -87
- package/lib/index.js.map +1 -1
- package/lib/interfaces/choice.enum.d.ts +4 -4
- package/lib/interfaces/choice.enum.js +24 -24
- package/lib/interfaces/choice.enum.js.map +1 -1
- package/lib/stores/index.d.ts +3 -0
- package/lib/stores/index.js +4 -0
- package/lib/stores/index.js.map +1 -0
- package/lib/stores/useQuestionnaireResponseStore.d.ts +3 -3
- package/lib/stores/useQuestionnaireResponseStore.js +5 -4
- package/lib/stores/useQuestionnaireResponseStore.js.map +1 -1
- package/lib/stores/useSmartClientStore.d.ts +7 -0
- package/lib/stores/useSmartClientStore.js +7 -0
- package/lib/stores/useSmartClientStore.js.map +1 -0
- package/lib/stores/useSmartConfigStore.d.ts +14 -0
- package/lib/stores/useSmartConfigStore.js +13 -0
- package/lib/stores/useSmartConfigStore.js.map +1 -0
- package/lib/theme/Theme.d.ts +38 -0
- package/lib/theme/Theme.js +39 -0
- package/lib/theme/Theme.js.map +1 -0
- package/lib/theme/globalStyles.d.ts +2 -0
- package/lib/theme/globalStyles.js +64 -0
- package/lib/theme/globalStyles.js.map +1 -0
- package/lib/theme/overrides/Accordion.d.ts +14 -0
- package/lib/theme/overrides/Accordion.js +32 -0
- package/lib/theme/overrides/Accordion.js.map +1 -0
- package/lib/theme/overrides/Autocomplete.d.ts +10 -0
- package/{src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js → lib/theme/overrides/Autocomplete.js} +12 -7
- package/lib/theme/overrides/Autocomplete.js.map +1 -0
- package/lib/theme/overrides/Backdrop.d.ts +13 -0
- package/{src/components/FormComponents/RepeatItem/RepeatItem.styles.js → lib/theme/overrides/Backdrop.js} +16 -13
- package/lib/theme/overrides/Backdrop.js.map +1 -0
- package/lib/theme/overrides/Button.d.ts +33 -0
- package/lib/theme/overrides/Button.js +52 -0
- package/lib/theme/overrides/Button.js.map +1 -0
- package/lib/theme/overrides/Card.d.ts +35 -0
- package/lib/theme/overrides/Card.js +49 -0
- package/lib/theme/overrides/Card.js.map +1 -0
- package/lib/theme/overrides/Input.d.ts +64 -0
- package/lib/theme/overrides/Input.js +81 -0
- package/lib/theme/overrides/Input.js.map +1 -0
- package/lib/theme/overrides/Overrides.d.ts +3 -0
- package/{src/components/BackToTopButton/BackToTopButton.js → lib/theme/overrides/Overrides.js} +14 -15
- package/lib/theme/overrides/Overrides.js.map +1 -0
- package/lib/theme/overrides/Paper.d.ts +12 -0
- package/{src/hooks/useQueryClient.js → lib/theme/overrides/Paper.js} +12 -10
- package/lib/theme/overrides/Paper.js.map +1 -0
- package/lib/theme/overrides/SpeedDial.d.ts +16 -0
- package/{src/hooks/useInitialiseRepeatAnswers.js → lib/theme/overrides/SpeedDial.js} +16 -18
- package/lib/theme/overrides/SpeedDial.js.map +1 -0
- package/lib/theme/overrides/Table.d.ts +11 -0
- package/lib/theme/overrides/Table.js +29 -0
- package/lib/theme/overrides/Table.js.map +1 -0
- package/lib/theme/overrides/Typography.d.ts +13 -0
- package/{src/components/FormComponents/Item.styles.js → lib/theme/overrides/Typography.js} +15 -11
- package/lib/theme/overrides/Typography.js.map +1 -0
- package/lib/theme/palette.d.ts +27 -0
- package/lib/theme/palette.js +67 -0
- package/lib/theme/palette.js.map +1 -0
- package/lib/theme/shadows.d.ts +2 -0
- package/lib/theme/shadows.js +52 -0
- package/lib/theme/shadows.js.map +1 -0
- package/lib/theme/typography.d.ts +139 -0
- package/lib/theme/typography.js +80 -0
- package/lib/theme/typography.js.map +1 -0
- package/lib/utils/choice.d.ts +3 -3
- package/lib/utils/choice.js +11 -11
- package/lib/utils/choice.js.map +1 -1
- package/lib/utils/openChoice.d.ts +3 -3
- package/lib/utils/openChoice.js +7 -7
- package/lib/utils/openChoice.js.map +1 -1
- package/lib/utils/qItem.js +3 -3
- package/lib/utils/qItem.js.map +1 -1
- package/lib/utils/removeHidden.d.ts +2 -2
- package/lib/utils/valueSet.js +13 -1
- package/lib/utils/valueSet.js.map +1 -1
- package/package.json +12 -11
- package/src/api/smartClient.ts +31 -0
- package/src/components/Alert.styles.ts +2 -1
- package/src/components/BackToTopButton/BackToTopButton.tsx +3 -1
- package/src/components/Box.styles.ts +2 -1
- package/src/components/FormComponents/BooleanItem/BooleanField.tsx +2 -1
- package/src/components/FormComponents/BooleanItem/BooleanItem.tsx +1 -1
- package/src/components/FormComponents/{QItemChoice/QItemChoiceAutocomplete.tsx → ChoiceItems/ChoiceAutocompleteItem.tsx} +13 -8
- package/src/components/FormComponents/{QItemChoice/QItemChoiceCheckboxAnswerOption.tsx → ChoiceItems/ChoiceCheckboxAnswerOptionItem.tsx} +8 -8
- package/src/components/FormComponents/{QItemChoice/QItemChoiceCheckboxAnswerValueSet.tsx → ChoiceItems/ChoiceCheckboxAnswerValueSetItem.tsx} +10 -9
- package/src/components/FormComponents/{QItemChoice/QItemChoice.tsx → ChoiceItems/ChoiceItemSwitcher.tsx} +22 -22
- package/src/components/FormComponents/{QItemChoice/QItemChoiceRadioAnswerOption.tsx → ChoiceItems/ChoiceRadioAnswerOptionItem.tsx} +11 -11
- package/src/components/FormComponents/{QItemChoice/QItemChoiceRadioAnswerValueSet.tsx → ChoiceItems/ChoiceRadioAnswerValueSetItem.tsx} +15 -13
- package/src/components/FormComponents/{QItemChoice/QItemChoiceRadioSingle.tsx → ChoiceItems/ChoiceRadioSingle.tsx} +5 -4
- package/src/components/FormComponents/{QItemChoice/QItemChoiceSelectAnswerOption.tsx → ChoiceItems/ChoiceSelectAnswerOptionItem.tsx} +13 -9
- package/src/components/FormComponents/{QItemChoice/QItemChoiceSelectAnswerValueSet.tsx → ChoiceItems/ChoiceSelectAnswerValueSetItem.tsx} +11 -8
- package/src/components/FormComponents/DateTimeItem/DateTimeField.tsx +1 -1
- package/src/components/FormComponents/DecimalItem/DecimalField.tsx +1 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.ts +2 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.tsx +1 -1
- package/src/components/FormComponents/GridGroup/GridGroup.tsx +4 -1
- package/src/components/FormComponents/GridGroup/GridRow.tsx +1 -1
- package/src/components/FormComponents/GridGroup/GridTable.tsx +5 -1
- package/src/components/FormComponents/GroupItem/GroupHeading.tsx +2 -1
- package/src/components/FormComponents/GroupItem/GroupItem.styles.ts +2 -1
- 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/Item.styles.ts +4 -1
- package/src/components/FormComponents/ItemParts/{QItemCheckboxSingle.tsx → CheckboxSingle.tsx} +4 -3
- package/src/components/FormComponents/ItemParts/{QItemCheckboxSingleWithOpenLabel.tsx → CheckboxSingleWithOpenLabel.tsx} +5 -3
- 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/{QItemRadioButtonWithOpenLabel.tsx → RadioButtonWithOpenLabel.tsx} +6 -6
- package/src/components/FormComponents/Lists.styles.ts +2 -2
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoiceAutocomplete.tsx → OpenChoiceItems/OpenChoiceAutocompleteItem.tsx} +15 -8
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.tsx → OpenChoiceItems/OpenChoiceCheckboxAnswerOptionItem.tsx} +15 -15
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoice.tsx → OpenChoiceItems/OpenChoiceItemSwitcher.tsx} +18 -18
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.tsx → OpenChoiceItems/OpenChoiceRadioAnswerOptionItem.tsx} +13 -13
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.tsx → OpenChoiceItems/OpenChoiceSelectAnswerOptionItem.tsx} +11 -9
- package/src/components/FormComponents/{QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.tsx → OpenChoiceItems/OpenChoiceSelectAnswerValueSetItem.tsx} +11 -9
- package/src/components/FormComponents/RepeatGroup/AddItemButton.tsx +2 -1
- package/src/components/FormComponents/RepeatGroup/DeleteItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatGroup/RepeatGroup.tsx +4 -1
- package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/AddItemButton.tsx +2 -1
- package/src/components/FormComponents/RepeatItem/DeleteItemButton.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RepeatField.tsx +1 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.styles.tsx +3 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.tsx +1 -1
- package/src/components/FormComponents/SingleItem/SingleItemSwitcher.tsx +5 -5
- package/src/components/FormComponents/StringItem/StringField.tsx +1 -1
- package/src/components/FormComponents/Tables/DeleteRowButton.tsx +3 -1
- package/src/components/FormComponents/Tables/QItemGroupTable.tsx +12 -13
- package/src/components/FormComponents/Tables/Table.styles.tsx +2 -1
- package/src/components/FormComponents/Textfield.styles.ts +2 -1
- package/src/components/FormComponents/Typography.styles.ts +2 -1
- package/src/components/FormComponents/UrlItem/UrlField.tsx +1 -1
- package/src/components/Iconify/Iconify.tsx +2 -2
- package/src/components/Lists.styles.ts +2 -2
- package/src/components/{FormRenderer → Renderer}/BaseRenderer.tsx +3 -2
- package/src/components/{FormRenderer → Renderer}/FormBodyCollapsible.tsx +1 -1
- package/src/components/{FormRenderer → Renderer}/FormBodySingleCollapsible.tsx +6 -8
- package/src/components/{FormRenderer → Renderer}/FormBodyTabbed.tsx +1 -1
- package/src/components/{FormRenderer → Renderer}/FormTitle.tsx +1 -1
- package/src/components/{FormRenderer → Renderer}/SmartFormsRenderer.tsx +15 -6
- package/src/components/Tabs/CompleteTabButton.tsx +2 -1
- package/src/components/Tabs/FormBodySingleTab.tsx +5 -1
- package/src/components/Tabs/FormBodyTabList.tsx +3 -1
- package/src/components/index.ts +1 -1
- package/src/hooks/useInitialiseRenderer.ts +34 -5
- package/src/hooks/useTerminologyServerQuery.ts +1 -1
- package/src/hooks/useValueSetCodings.ts +4 -4
- package/src/index.ts +6 -94
- package/src/interfaces/choice.enum.ts +4 -4
- package/src/stores/index.ts +3 -0
- package/src/stores/useQuestionnaireResponseStore.ts +8 -8
- package/src/stores/useSmartConfigStore.ts +27 -0
- package/src/stories/SmartFormsRenderer.stories.ts +25 -16
- package/src/stories/assets/QTestGrid.json +245 -0
- package/src/theme/Theme.tsx +107 -0
- package/src/theme/globalStyles.tsx +68 -0
- package/src/theme/overrides/Accordion.ts +34 -0
- package/src/{components/index.js → theme/overrides/Autocomplete.ts} +14 -2
- package/src/theme/overrides/Backdrop.ts +34 -0
- package/src/theme/overrides/Button.ts +54 -0
- package/src/theme/overrides/Card.ts +51 -0
- package/src/theme/overrides/Input.ts +83 -0
- package/src/theme/overrides/Overrides.ts +45 -0
- package/src/{interfaces/answerExpression.interface.js → theme/overrides/Paper.ts} +15 -2
- package/src/{hooks/useInitialiseGroupTable.js → theme/overrides/SpeedDial.ts} +17 -17
- package/src/{hooks/useBackToTop.js → theme/overrides/Table.ts} +14 -9
- package/src/theme/overrides/Typography.ts +33 -0
- package/src/theme/palette.ts +99 -0
- package/src/theme/shadows.ts +54 -0
- package/src/theme/typography.ts +114 -0
- package/src/utils/choice.ts +12 -12
- package/src/utils/openChoice.ts +8 -8
- package/src/utils/qItem.ts +3 -3
- package/src/utils/removeHidden.ts +2 -2
- package/src/utils/valueSet.ts +16 -1
- package/tsconfig.json +3 -2
- package/src/api/populate.js +0 -63
- package/src/api/populate.js.map +0 -1
- package/src/api/populate.ts +0 -70
- package/src/components/Alert.styles.js +0 -40
- package/src/components/Alert.styles.js.map +0 -1
- package/src/components/BackToTopButton/BackToTopButton.js.map +0 -1
- package/src/components/Box.styles.js +0 -30
- package/src/components/Box.styles.js.map +0 -1
- package/src/components/FormComponents/BooleanItem/BooleanField.js.map +0 -1
- package/src/components/FormComponents/BooleanItem/BooleanItem.js +0 -49
- package/src/components/FormComponents/BooleanItem/BooleanItem.js.map +0 -1
- package/src/components/FormComponents/DateItem/DateField.js +0 -31
- package/src/components/FormComponents/DateItem/DateField.js.map +0 -1
- package/src/components/FormComponents/DateItem/DateItem.js +0 -52
- package/src/components/FormComponents/DateItem/DateItem.js.map +0 -1
- package/src/components/FormComponents/DateTimeItem/DateTimeField.js +0 -33
- package/src/components/FormComponents/DateTimeItem/DateTimeField.js.map +0 -1
- package/src/components/FormComponents/DateTimeItem/DateTimeItem.js +0 -52
- package/src/components/FormComponents/DateTimeItem/DateTimeItem.js.map +0 -1
- package/src/components/FormComponents/DecimalItem/DecimalField.js +0 -30
- package/src/components/FormComponents/DecimalItem/DecimalField.js.map +0 -1
- package/src/components/FormComponents/DecimalItem/DecimalItem.js +0 -80
- package/src/components/FormComponents/DecimalItem/DecimalItem.js.map +0 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.js +0 -26
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.js.map +0 -1
- package/src/components/FormComponents/DisplayItem/DisplayInstructions.styles.js.map +0 -1
- package/src/components/FormComponents/DisplayItem/DisplayItem.js +0 -31
- package/src/components/FormComponents/DisplayItem/DisplayItem.js.map +0 -1
- package/src/components/FormComponents/GridGroup/GridGroup.js +0 -58
- package/src/components/FormComponents/GridGroup/GridGroup.js.map +0 -1
- package/src/components/FormComponents/GridGroup/GridRow.js +0 -55
- package/src/components/FormComponents/GridGroup/GridRow.js.map +0 -1
- package/src/components/FormComponents/GridGroup/GridTable.js +0 -42
- package/src/components/FormComponents/GridGroup/GridTable.js.map +0 -1
- package/src/components/FormComponents/GroupItem/GroupHeading.js +0 -39
- package/src/components/FormComponents/GroupItem/GroupHeading.js.map +0 -1
- package/src/components/FormComponents/GroupItem/GroupItem.js +0 -62
- package/src/components/FormComponents/GroupItem/GroupItem.js.map +0 -1
- package/src/components/FormComponents/GroupItem/GroupItem.styles.js +0 -27
- package/src/components/FormComponents/GroupItem/GroupItem.styles.js.map +0 -1
- package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js +0 -73
- package/src/components/FormComponents/GroupItem/GroupItemSwitcher.js.map +0 -1
- package/src/components/FormComponents/GroupItem/NextTabButton.js +0 -25
- package/src/components/FormComponents/GroupItem/NextTabButton.js.map +0 -1
- package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js +0 -55
- package/src/components/FormComponents/GroupItem/NextTabButtonWrapper.js.map +0 -1
- package/src/components/FormComponents/IntegerItem/IntegerField.js +0 -30
- package/src/components/FormComponents/IntegerItem/IntegerField.js.map +0 -1
- package/src/components/FormComponents/IntegerItem/IntegerItem.js +0 -73
- package/src/components/FormComponents/IntegerItem/IntegerItem.js.map +0 -1
- package/src/components/FormComponents/Item.styles.js.map +0 -1
- package/src/components/FormComponents/ItemParts/ContextDisplayItem.js.map +0 -1
- package/src/components/FormComponents/ItemParts/FadingCheckIcon.js.map +0 -1
- package/src/components/FormComponents/ItemParts/ItemFieldGrid.js +0 -31
- package/src/components/FormComponents/ItemParts/ItemFieldGrid.js.map +0 -1
- package/src/components/FormComponents/ItemParts/ItemLabelText.js +0 -45
- package/src/components/FormComponents/ItemParts/ItemLabelText.js.map +0 -1
- package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js +0 -32
- package/src/components/FormComponents/ItemParts/ItemLabelWrapper.js.map +0 -1
- package/src/components/FormComponents/ItemParts/QItemCheckboxSingle.js.map +0 -1
- package/src/components/FormComponents/ItemParts/QItemCheckboxSingleWithOpenLabel.js.map +0 -1
- package/src/components/FormComponents/ItemParts/QItemRadioButtonWithOpenLabel.js.map +0 -1
- package/src/components/FormComponents/Lists.styles.js +0 -38
- package/src/components/FormComponents/Lists.styles.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoice.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceAutocomplete.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceCheckboxAnswerValueSet.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceRadioAnswerValueSet.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceRadioSingle.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemChoice/QItemChoiceSelectAnswerValueSet.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoice.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceAutocomplete.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceCheckboxAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceRadioAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerOption.js.map +0 -1
- package/src/components/FormComponents/QItemOpenChoice/QItemOpenChoiceSelectAnswerValueSet.js.map +0 -1
- package/src/components/FormComponents/RepeatGroup/AddItemButton.js +0 -27
- package/src/components/FormComponents/RepeatGroup/AddItemButton.js.map +0 -1
- package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js +0 -30
- package/src/components/FormComponents/RepeatGroup/DeleteItemButton.js.map +0 -1
- package/src/components/FormComponents/RepeatGroup/RepeatGroup.js +0 -81
- package/src/components/FormComponents/RepeatGroup/RepeatGroup.js.map +0 -1
- package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js +0 -30
- package/src/components/FormComponents/RepeatGroup/RepeatGroupItem.js.map +0 -1
- package/src/components/FormComponents/RepeatItem/AddItemButton.js +0 -27
- package/src/components/FormComponents/RepeatItem/AddItemButton.js.map +0 -1
- package/src/components/FormComponents/RepeatItem/DeleteItemButton.js +0 -30
- package/src/components/FormComponents/RepeatItem/DeleteItemButton.js.map +0 -1
- package/src/components/FormComponents/RepeatItem/RepeatField.js +0 -31
- package/src/components/FormComponents/RepeatItem/RepeatField.js.map +0 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.js +0 -69
- package/src/components/FormComponents/RepeatItem/RepeatItem.js.map +0 -1
- package/src/components/FormComponents/RepeatItem/RepeatItem.styles.js.map +0 -1
- package/src/components/FormComponents/SingleItem/SingleItem.js +0 -32
- package/src/components/FormComponents/SingleItem/SingleItem.js.map +0 -1
- package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js +0 -63
- package/src/components/FormComponents/SingleItem/SingleItemSwitcher.js.map +0 -1
- package/src/components/FormComponents/StringItem/StringField.js +0 -30
- package/src/components/FormComponents/StringItem/StringField.js.map +0 -1
- package/src/components/FormComponents/StringItem/StringItem.js +0 -71
- package/src/components/FormComponents/StringItem/StringItem.js.map +0 -1
- package/src/components/FormComponents/Tables/DeleteRowButton.js +0 -31
- package/src/components/FormComponents/Tables/DeleteRowButton.js.map +0 -1
- package/src/components/FormComponents/Tables/QItemGroupTable.js +0 -99
- package/src/components/FormComponents/Tables/QItemGroupTable.js.map +0 -1
- package/src/components/FormComponents/Tables/QItemGroupTableRow.js +0 -46
- package/src/components/FormComponents/Tables/QItemGroupTableRow.js.map +0 -1
- package/src/components/FormComponents/Tables/Table.styles.js +0 -46
- package/src/components/FormComponents/Tables/Table.styles.js.map +0 -1
- package/src/components/FormComponents/TextItem/TextField.js +0 -29
- package/src/components/FormComponents/TextItem/TextField.js.map +0 -1
- package/src/components/FormComponents/TextItem/TextItem.js +0 -71
- package/src/components/FormComponents/TextItem/TextItem.js.map +0 -1
- package/src/components/FormComponents/Textfield.styles.js +0 -27
- package/src/components/FormComponents/Textfield.styles.js.map +0 -1
- package/src/components/FormComponents/TimeItem/TimeField.js +0 -30
- package/src/components/FormComponents/TimeItem/TimeField.js.map +0 -1
- package/src/components/FormComponents/TimeItem/TimeItem.js +0 -52
- package/src/components/FormComponents/TimeItem/TimeItem.js.map +0 -1
- package/src/components/FormComponents/Typography.styles.js.map +0 -1
- package/src/components/FormComponents/UrlItem/UrlField.js +0 -25
- package/src/components/FormComponents/UrlItem/UrlField.js.map +0 -1
- package/src/components/FormComponents/UrlItem/UrlItem.js +0 -61
- package/src/components/FormComponents/UrlItem/UrlItem.js.map +0 -1
- package/src/components/FormRenderer/FormBodyCollapsible.js.map +0 -1
- package/src/components/FormRenderer/FormBodySingleCollapsible.js.map +0 -1
- package/src/components/FormRenderer/FormBodySingleCollapsibleWrapper.js.map +0 -1
- package/src/components/FormRenderer/FormBodyTabbed.js.map +0 -1
- package/src/components/FormRenderer/FormTitle.js.map +0 -1
- package/src/components/FormRenderer/FormTopLevelItem.js.map +0 -1
- package/src/components/FormRenderer/SmartFormsRenderer.js.map +0 -1
- package/src/components/FormRenderer/index.js.map +0 -1
- package/src/components/Iconify/Iconify.js +0 -26
- package/src/components/Iconify/Iconify.js.map +0 -1
- package/src/components/Lists.styles.js +0 -38
- package/src/components/Lists.styles.js.map +0 -1
- package/src/components/Tabs/CompleteTabButton.js +0 -29
- package/src/components/Tabs/CompleteTabButton.js.map +0 -1
- package/src/components/Tabs/FormBodySingleTab.js +0 -39
- package/src/components/Tabs/FormBodySingleTab.js.map +0 -1
- package/src/components/Tabs/FormBodyTabList.js +0 -52
- package/src/components/Tabs/FormBodyTabList.js.map +0 -1
- package/src/components/index.js.map +0 -1
- package/src/hooks/useBackToTop.js.map +0 -1
- package/src/hooks/useDebounce.js +0 -38
- package/src/hooks/useDebounce.js.map +0 -1
- package/src/hooks/useDecimalCalculatedExpression.js +0 -50
- package/src/hooks/useDecimalCalculatedExpression.js.map +0 -1
- package/src/hooks/useHidden.js +0 -35
- package/src/hooks/useHidden.js.map +0 -1
- package/src/hooks/useInitialiseGroupTable.js.map +0 -1
- package/src/hooks/useInitialiseRenderer.js +0 -49
- package/src/hooks/useInitialiseRenderer.js.map +0 -1
- package/src/hooks/useInitialiseRepeatAnswers.js.map +0 -1
- package/src/hooks/useInitialiseRepeatGroups.js +0 -36
- package/src/hooks/useInitialiseRepeatGroups.js.map +0 -1
- package/src/hooks/useIntegerCalculatedExpression.js +0 -44
- package/src/hooks/useIntegerCalculatedExpression.js.map +0 -1
- package/src/hooks/useQueryClient.js.map +0 -1
- package/src/hooks/useRenderingExtensions.js +0 -30
- package/src/hooks/useRenderingExtensions.js.map +0 -1
- package/src/hooks/useResponsive.js +0 -37
- package/src/hooks/useResponsive.js.map +0 -1
- package/src/hooks/useStringCalculatedExpression.js +0 -44
- package/src/hooks/useStringCalculatedExpression.js.map +0 -1
- package/src/hooks/useTerminologyServerQuery.js +0 -73
- package/src/hooks/useTerminologyServerQuery.js.map +0 -1
- package/src/hooks/useValidationError.js +0 -38
- package/src/hooks/useValidationError.js.map +0 -1
- package/src/hooks/useValueSetCodings.js +0 -125
- package/src/hooks/useValueSetCodings.js.map +0 -1
- package/src/index.js +0 -2
- package/src/index.js.map +0 -1
- package/src/interfaces/answerExpression.interface.js.map +0 -1
- package/src/interfaces/calculatedExpression.interface.js +0 -2
- package/src/interfaces/calculatedExpression.interface.js.map +0 -1
- package/src/interfaces/choice.enum.js +0 -41
- package/src/interfaces/choice.enum.js.map +0 -1
- package/src/interfaces/enableWhen.interface.js +0 -18
- package/src/interfaces/enableWhen.interface.js.map +0 -1
- package/src/interfaces/groupTable.interface.js +0 -18
- package/src/interfaces/groupTable.interface.js.map +0 -1
- package/src/interfaces/populate.interface.js +0 -18
- package/src/interfaces/populate.interface.js.map +0 -1
- package/src/interfaces/questionnaireStore.interface.js +0 -18
- package/src/interfaces/questionnaireStore.interface.js.map +0 -1
- package/src/interfaces/regex.interface.js +0 -18
- package/src/interfaces/regex.interface.js.map +0 -1
- package/src/interfaces/renderProps.interface.js +0 -18
- package/src/interfaces/renderProps.interface.js.map +0 -1
- package/src/interfaces/repeatGroup.interface.js +0 -18
- package/src/interfaces/repeatGroup.interface.js.map +0 -1
- package/src/interfaces/repeatItem.interface.js +0 -2
- package/src/interfaces/repeatItem.interface.js.map +0 -1
- package/src/interfaces/tab.interface.js +0 -2
- package/src/interfaces/tab.interface.js.map +0 -1
- package/src/interfaces/valueSet.interface.js +0 -18
- package/src/interfaces/valueSet.interface.js.map +0 -1
- package/src/interfaces/variables.interface.js +0 -18
- package/src/interfaces/variables.interface.js.map +0 -1
- package/src/setup-jest.js +0 -2
- package/src/setup-jest.js.map +0 -1
- package/src/stores/useConfigStore.js +0 -17
- package/src/stores/useConfigStore.js.map +0 -1
- package/src/stores/useConfigStore.ts +0 -36
- package/src/stores/useQuestionnaireResponseStore.js +0 -39
- package/src/stores/useQuestionnaireResponseStore.js.map +0 -1
- package/src/stores/useQuestionnaireStore.js +0 -151
- package/src/stores/useQuestionnaireStore.js.map +0 -1
- package/src/stories/SmartFormsRenderer.stories.js +0 -90
- package/src/stories/SmartFormsRenderer.stories.js.map +0 -1
- package/src/utils/calculatedExpression.js +0 -180
- package/src/utils/calculatedExpression.js.map +0 -1
- package/src/utils/choice.js +0 -160
- package/src/utils/choice.js.map +0 -1
- package/src/utils/debounce.js +0 -19
- package/src/utils/debounce.js.map +0 -1
- package/src/utils/emptyResource.js +0 -25
- package/src/utils/emptyResource.js.map +0 -1
- package/src/utils/enableWhen.js +0 -228
- package/src/utils/enableWhen.js.map +0 -1
- package/src/utils/enableWhenExpression.js +0 -76
- package/src/utils/enableWhenExpression.js.map +0 -1
- package/src/utils/fhirpath.js +0 -98
- package/src/utils/fhirpath.js.map +0 -1
- package/src/utils/initialiseForm.js +0 -45
- package/src/utils/initialiseForm.js.map +0 -1
- package/src/utils/itemControl.js +0 -299
- package/src/utils/itemControl.js.map +0 -1
- package/src/utils/mapItem.js +0 -80
- package/src/utils/mapItem.js.map +0 -1
- package/src/utils/openChoice.js +0 -150
- package/src/utils/openChoice.js.map +0 -1
- package/src/utils/parseInputs.js +0 -49
- package/src/utils/parseInputs.js.map +0 -1
- package/src/utils/populate.js +0 -78
- package/src/utils/populate.js.map +0 -1
- package/src/utils/populate.ts +0 -117
- package/src/utils/populateCallback.js +0 -40
- package/src/utils/populateCallback.js.map +0 -1
- package/src/utils/populateCallback.ts +0 -53
- package/src/utils/populateContexts.js +0 -76
- package/src/utils/populateContexts.js.map +0 -1
- package/src/utils/populateInputParams.js +0 -193
- package/src/utils/populateInputParams.js.map +0 -1
- package/src/utils/qItem.js +0 -73
- package/src/utils/qItem.js.map +0 -1
- package/src/utils/qrItem.js +0 -221
- package/src/utils/qrItem.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js +0 -47
- package/src/utils/questionnaireStoreUtils/addAdditionalVariables.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js +0 -79
- package/src/utils/questionnaireStoreUtils/createQuestionaireModel.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js +0 -59
- package/src/utils/questionnaireStoreUtils/extractContainedValueSets.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/extractLaunchContext.js +0 -18
- package/src/utils/questionnaireStoreUtils/extractLaunchContext.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js +0 -174
- package/src/utils/questionnaireStoreUtils/extractOtherExtensions.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/extractTabs.js +0 -31
- package/src/utils/questionnaireStoreUtils/extractTabs.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/extractVariables.js +0 -63
- package/src/utils/questionnaireStoreUtils/extractVariables.js.map +0 -1
- package/src/utils/questionnaireStoreUtils/resolveValueSets.js +0 -58
- package/src/utils/questionnaireStoreUtils/resolveValueSets.js.map +0 -1
- package/src/utils/tabs.js +0 -190
- package/src/utils/tabs.js.map +0 -1
- package/src/utils/valueSet.js +0 -126
- package/src/utils/valueSet.js.map +0 -1
- /package/{src/components/FormComponents/QItemChoice → lib/components/FormComponents/ChoiceItems}/QItemChoice.js +0 -0
- /package/{src/components/FormComponents/QItemOpenChoice → lib/components/FormComponents/OpenChoiceItems}/QItemOpenChoice.js +0 -0
- /package/{src/components/FormRenderer → lib/components/Renderer}/FormBodySingleCollapsibleWrapper.js +0 -0
- /package/{src/components/FormRenderer → lib/components/Renderer}/FormTopLevelItem.js +0 -0
- /package/src/components/{FormRenderer → Renderer}/FormBodySingleCollapsibleWrapper.tsx +0 -0
- /package/src/components/{FormRenderer → Renderer}/FormTopLevelItem.tsx +0 -0
- /package/src/components/{FormRenderer → Renderer}/index.ts +0 -0
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2023 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
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
import { create } from 'zustand';
|
|
27
|
-
import { updateItemAnswer } from '../utils/enableWhen';
|
|
28
|
-
import { evaluateUpdatedExpressions } from '../utils/fhirpath';
|
|
29
|
-
import { evaluateInitialCalculatedExpressions, initialiseCalculatedExpressionValues } from '../utils/calculatedExpression';
|
|
30
|
-
import { createQuestionnaireModel } from '../utils/questionnaireStoreUtils/createQuestionaireModel';
|
|
31
|
-
import { initialiseFormFromResponse } from '../utils/initialiseForm';
|
|
32
|
-
import { emptyQuestionnaire, emptyResponse } from '../utils/emptyResource';
|
|
33
|
-
import cloneDeep from 'lodash.clonedeep';
|
|
34
|
-
const useQuestionnaireStore = create()((set, get) => ({
|
|
35
|
-
sourceQuestionnaire: cloneDeep(emptyQuestionnaire),
|
|
36
|
-
tabs: {},
|
|
37
|
-
currentTabIndex: 0,
|
|
38
|
-
variables: { fhirPathVariables: {}, xFhirQueryVariables: {} },
|
|
39
|
-
launchContexts: {},
|
|
40
|
-
calculatedExpressions: {},
|
|
41
|
-
enableWhenExpressions: {},
|
|
42
|
-
answerExpressions: {},
|
|
43
|
-
enableWhenItems: {},
|
|
44
|
-
enableWhenLinkedQuestions: {},
|
|
45
|
-
enableWhenIsActivated: true,
|
|
46
|
-
processedValueSetCodings: {},
|
|
47
|
-
processedValueSetUrls: {},
|
|
48
|
-
cachedValueSetCodings: {},
|
|
49
|
-
buildSourceQuestionnaire: (questionnaire, questionnaireResponse = cloneDeep(emptyResponse), additionalVariables = {}) => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
-
const questionnaireModel = yield createQuestionnaireModel(questionnaire, additionalVariables);
|
|
51
|
-
const { initialEnableWhenItems, initialEnableWhenLinkedQuestions, initialEnableWhenExpressions, initialCalculatedExpressions, firstVisibleTab } = initialiseFormFromResponse({
|
|
52
|
-
questionnaireResponse,
|
|
53
|
-
enableWhenItems: questionnaireModel.enableWhenItems,
|
|
54
|
-
enableWhenExpressions: questionnaireModel.enableWhenExpressions,
|
|
55
|
-
calculatedExpressions: questionnaireModel.calculatedExpressions,
|
|
56
|
-
variablesFhirPath: questionnaireModel.variables.fhirPathVariables,
|
|
57
|
-
tabs: questionnaireModel.tabs
|
|
58
|
-
});
|
|
59
|
-
set({
|
|
60
|
-
sourceQuestionnaire: questionnaire,
|
|
61
|
-
tabs: questionnaireModel.tabs,
|
|
62
|
-
currentTabIndex: firstVisibleTab,
|
|
63
|
-
variables: questionnaireModel.variables,
|
|
64
|
-
launchContexts: questionnaireModel.launchContexts,
|
|
65
|
-
enableWhenItems: initialEnableWhenItems,
|
|
66
|
-
enableWhenLinkedQuestions: initialEnableWhenLinkedQuestions,
|
|
67
|
-
enableWhenExpressions: initialEnableWhenExpressions,
|
|
68
|
-
calculatedExpressions: initialCalculatedExpressions,
|
|
69
|
-
answerExpressions: questionnaireModel.answerExpressions,
|
|
70
|
-
processedValueSetCodings: questionnaireModel.processedValueSetCodings,
|
|
71
|
-
processedValueSetUrls: questionnaireModel.processedValueSetUrls
|
|
72
|
-
});
|
|
73
|
-
}),
|
|
74
|
-
destroySourceQuestionnaire: () => set({
|
|
75
|
-
sourceQuestionnaire: cloneDeep(emptyQuestionnaire),
|
|
76
|
-
tabs: {},
|
|
77
|
-
currentTabIndex: 0,
|
|
78
|
-
variables: { fhirPathVariables: {}, xFhirQueryVariables: {} },
|
|
79
|
-
launchContexts: {},
|
|
80
|
-
enableWhenItems: {},
|
|
81
|
-
enableWhenLinkedQuestions: {},
|
|
82
|
-
enableWhenExpressions: {},
|
|
83
|
-
calculatedExpressions: {},
|
|
84
|
-
answerExpressions: {},
|
|
85
|
-
processedValueSetCodings: {},
|
|
86
|
-
processedValueSetUrls: {}
|
|
87
|
-
}),
|
|
88
|
-
switchTab: (newTabIndex) => set(() => ({ currentTabIndex: newTabIndex })),
|
|
89
|
-
markTabAsComplete: (tabLinkId) => {
|
|
90
|
-
const tabs = get().tabs;
|
|
91
|
-
set(() => ({
|
|
92
|
-
tabs: Object.assign(Object.assign({}, tabs), { [tabLinkId]: Object.assign(Object.assign({}, tabs[tabLinkId]), { isComplete: !tabs[tabLinkId].isComplete }) })
|
|
93
|
-
}));
|
|
94
|
-
},
|
|
95
|
-
updateEnableWhenItem: (linkId, newAnswer) => {
|
|
96
|
-
const enableWhenLinkedQuestions = get().enableWhenLinkedQuestions;
|
|
97
|
-
const enableWhenItems = get().enableWhenItems;
|
|
98
|
-
if (!enableWhenLinkedQuestions[linkId]) {
|
|
99
|
-
return;
|
|
100
|
-
}
|
|
101
|
-
const itemLinkedQuestions = enableWhenLinkedQuestions[linkId];
|
|
102
|
-
const updatedEnableWhenItems = updateItemAnswer(Object.assign({}, enableWhenItems), itemLinkedQuestions, linkId, newAnswer);
|
|
103
|
-
set(() => ({
|
|
104
|
-
enableWhenItems: updatedEnableWhenItems
|
|
105
|
-
}));
|
|
106
|
-
},
|
|
107
|
-
toggleEnableWhenActivation: (isActivated) => set(() => ({ enableWhenIsActivated: isActivated })),
|
|
108
|
-
updateExpressions: (updatedResponse) => {
|
|
109
|
-
const { isUpdated, updatedCalculatedExpressions, updatedEnableWhenExpressions } = evaluateUpdatedExpressions({
|
|
110
|
-
updatedResponse: updatedResponse,
|
|
111
|
-
enableWhenExpressions: get().enableWhenExpressions,
|
|
112
|
-
calculatedExpressions: get().calculatedExpressions,
|
|
113
|
-
variablesFhirPath: get().variables.fhirPathVariables
|
|
114
|
-
});
|
|
115
|
-
if (isUpdated) {
|
|
116
|
-
set(() => ({
|
|
117
|
-
enableWhenExpressions: updatedEnableWhenExpressions,
|
|
118
|
-
calculatedExpressions: updatedCalculatedExpressions
|
|
119
|
-
}));
|
|
120
|
-
}
|
|
121
|
-
},
|
|
122
|
-
addCodingToCache: (valueSetUrl, codings) => set(() => ({
|
|
123
|
-
cachedValueSetCodings: Object.assign(Object.assign({}, get().cachedValueSetCodings), { [valueSetUrl]: codings })
|
|
124
|
-
})),
|
|
125
|
-
updatePopulatedProperties: (populatedResponse) => {
|
|
126
|
-
const initialCalculatedExpressions = evaluateInitialCalculatedExpressions({
|
|
127
|
-
initialResponse: populatedResponse,
|
|
128
|
-
calculatedExpressions: get().calculatedExpressions,
|
|
129
|
-
variablesFhirPath: get().variables.fhirPathVariables
|
|
130
|
-
});
|
|
131
|
-
const updatedResponse = initialiseCalculatedExpressionValues(get().sourceQuestionnaire, populatedResponse, initialCalculatedExpressions);
|
|
132
|
-
const { initialEnableWhenItems, initialEnableWhenLinkedQuestions, initialEnableWhenExpressions, firstVisibleTab } = initialiseFormFromResponse({
|
|
133
|
-
questionnaireResponse: updatedResponse,
|
|
134
|
-
enableWhenItems: get().enableWhenItems,
|
|
135
|
-
enableWhenExpressions: get().enableWhenExpressions,
|
|
136
|
-
calculatedExpressions: initialCalculatedExpressions,
|
|
137
|
-
variablesFhirPath: get().variables.fhirPathVariables,
|
|
138
|
-
tabs: get().tabs
|
|
139
|
-
});
|
|
140
|
-
set(() => ({
|
|
141
|
-
enableWhenItems: initialEnableWhenItems,
|
|
142
|
-
enableWhenLinkedQuestions: initialEnableWhenLinkedQuestions,
|
|
143
|
-
enableWhenExpressions: initialEnableWhenExpressions,
|
|
144
|
-
calculatedExpressions: initialCalculatedExpressions,
|
|
145
|
-
currentTabIndex: firstVisibleTab
|
|
146
|
-
}));
|
|
147
|
-
return updatedResponse;
|
|
148
|
-
}
|
|
149
|
-
}));
|
|
150
|
-
export default useQuestionnaireStore;
|
|
151
|
-
//# sourceMappingURL=useQuestionnaireStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useQuestionnaireStore.js","sourceRoot":"","sources":["useQuestionnaireStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2023 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 { SmartFormsRenderer } from '../components';
|
|
18
|
-
import Q715Json from './assets/Q715.json';
|
|
19
|
-
import R715Json from './assets/R715.json';
|
|
20
|
-
import QTestGridJson from './assets/QTestGrid.json';
|
|
21
|
-
import RTestGridJson from './assets/RTestGrid.json';
|
|
22
|
-
// More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction#default-export
|
|
23
|
-
const meta = {
|
|
24
|
-
title: 'Component/SmartFormsRenderer',
|
|
25
|
-
component: SmartFormsRenderer,
|
|
26
|
-
// This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/react/writing-docs/autodocs
|
|
27
|
-
tags: ['autodocs']
|
|
28
|
-
};
|
|
29
|
-
const Q715 = Q715Json;
|
|
30
|
-
const R715 = R715Json;
|
|
31
|
-
const QTestGrid = QTestGridJson;
|
|
32
|
-
const RTestGrid = RTestGridJson;
|
|
33
|
-
export default meta;
|
|
34
|
-
// More on writing stories with args: https://storybook.js.org/docs/react/writing-stories/args
|
|
35
|
-
export const Form715 = {
|
|
36
|
-
args: {
|
|
37
|
-
questionnaire: Q715
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
export const Form715WithResponse = {
|
|
41
|
-
args: {
|
|
42
|
-
questionnaire: Q715,
|
|
43
|
-
questionnaireResponse: R715
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
export const FormTestGrid = {
|
|
47
|
-
args: {
|
|
48
|
-
questionnaire: QTestGrid
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
export const FormTestGridWithResponse = {
|
|
52
|
-
args: {
|
|
53
|
-
questionnaire: QTestGrid,
|
|
54
|
-
questionnaireResponse: RTestGrid,
|
|
55
|
-
additionalVariables: {}
|
|
56
|
-
}
|
|
57
|
-
};
|
|
58
|
-
export const QTestGridWithResponseAddFhirPath = {
|
|
59
|
-
args: {
|
|
60
|
-
questionnaire: QTestGrid,
|
|
61
|
-
questionnaireResponse: RTestGrid,
|
|
62
|
-
additionalVariables: {
|
|
63
|
-
addVar1: {
|
|
64
|
-
url: 'http://hl7.org/fhir/StructureDefinition/variable',
|
|
65
|
-
valueExpression: {
|
|
66
|
-
name: 'addVar1',
|
|
67
|
-
language: 'text/fhirpath',
|
|
68
|
-
expression: "%resource.item.where(linkId='grid').item.where(linkId='1').item.where(linkId='1.1').item.where(linkId='1.1.1').answer.value"
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
// export const QTestGridWithResponseAddXFhirQuery: Story = {
|
|
75
|
-
// args: {
|
|
76
|
-
// questionnaire: QTestGrid,
|
|
77
|
-
// questionnaireResponse: RTestGrid,
|
|
78
|
-
// additionalVariables: {
|
|
79
|
-
// addVar2: {
|
|
80
|
-
// url: 'http://hl7.org/fhir/StructureDefinition/variable',
|
|
81
|
-
// valueExpression: {
|
|
82
|
-
// name: 'addVar2',
|
|
83
|
-
// language: 'application/x-fhir-query',
|
|
84
|
-
// expression: 'Condition?patient={{%patient.id}}'
|
|
85
|
-
// }
|
|
86
|
-
// }
|
|
87
|
-
// }
|
|
88
|
-
// }
|
|
89
|
-
// };
|
|
90
|
-
//# sourceMappingURL=SmartFormsRenderer.stories.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SmartFormsRenderer.stories.js","sourceRoot":"","sources":["SmartFormsRenderer.stories.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,aAAa,MAAM,yBAAyB,CAAC;AACpD,OAAO,aAAa,MAAM,yBAAyB,CAAC;AAEpD,oHAAoH;AACpH,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,8BAA8B;IACrC,SAAS,EAAE,kBAAkB;IAC7B,gIAAgI;IAChI,IAAI,EAAE,CAAC,UAAU,CAAC;CACuB,CAAC;AAE5C,MAAM,IAAI,GAAG,QAAyB,CAAC;AACvC,MAAM,IAAI,GAAG,QAAiC,CAAC;AAC/C,MAAM,SAAS,GAAG,aAA8B,CAAC;AACjD,MAAM,SAAS,GAAG,aAAsC,CAAC;AAEzD,eAAe,IAAI,CAAC;AAGpB,8FAA8F;AAE9F,MAAM,CAAC,MAAM,OAAO,GAAU;IAC5B,IAAI,EAAE;QACJ,aAAa,EAAE,IAAI;KACpB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAU;IACxC,IAAI,EAAE;QACJ,aAAa,EAAE,IAAI;QACnB,qBAAqB,EAAE,IAAI;KAC5B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,IAAI,EAAE;QACJ,aAAa,EAAE,SAAS;KACzB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAU;IAC7C,IAAI,EAAE;QACJ,aAAa,EAAE,SAAS;QACxB,qBAAqB,EAAE,SAAS;QAChC,mBAAmB,EAAE,EAAE;KACxB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gCAAgC,GAAU;IACrD,IAAI,EAAE;QACJ,aAAa,EAAE,SAAS;QACxB,qBAAqB,EAAE,SAAS;QAChC,mBAAmB,EAAE;YACnB,OAAO,EAAE;gBACP,GAAG,EAAE,kDAAkD;gBACvD,eAAe,EAAE;oBACf,IAAI,EAAE,SAAS;oBACf,QAAQ,EAAE,eAAe;oBACzB,UAAU,EACR,6HAA6H;iBAChI;aACF;SACF;KACF;CACF,CAAC;AAEF,6DAA6D;AAC7D,YAAY;AACZ,gCAAgC;AAChC,wCAAwC;AACxC,6BAA6B;AAC7B,mBAAmB;AACnB,mEAAmE;AACnE,6BAA6B;AAC7B,6BAA6B;AAC7B,kDAAkD;AAClD,4DAA4D;AAC5D,YAAY;AACZ,UAAU;AACV,QAAQ;AACR,MAAM;AACN,KAAK"}
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2023 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 fhirpath from 'fhirpath';
|
|
18
|
-
import fhirpath_r4_model from 'fhirpath/fhir-context/r4';
|
|
19
|
-
import _isEqual from 'lodash/isEqual';
|
|
20
|
-
import { emptyResponse } from './emptyResource';
|
|
21
|
-
import { createFhirPathContext } from './fhirpath';
|
|
22
|
-
import { getQrItemsIndex, mapQItemsIndex } from './mapItem';
|
|
23
|
-
import { updateQrGroup } from './qrItem';
|
|
24
|
-
import cloneDeep from 'lodash.clonedeep';
|
|
25
|
-
export function evaluateInitialCalculatedExpressions(params) {
|
|
26
|
-
const { initialResponse, calculatedExpressions, variablesFhirPath } = params;
|
|
27
|
-
// Return early if initialResponse is empty
|
|
28
|
-
if (_isEqual(initialResponse, cloneDeep(emptyResponse))) {
|
|
29
|
-
return calculatedExpressions;
|
|
30
|
-
}
|
|
31
|
-
const initialExpressions = Object.assign({}, calculatedExpressions);
|
|
32
|
-
if (Object.keys(initialExpressions).length > 0) {
|
|
33
|
-
const fhirPathContext = createFhirPathContext(initialResponse, variablesFhirPath);
|
|
34
|
-
for (const linkId in initialExpressions) {
|
|
35
|
-
try {
|
|
36
|
-
const result = fhirpath.evaluate(initialResponse, calculatedExpressions[linkId].expression, fhirPathContext, fhirpath_r4_model);
|
|
37
|
-
if (calculatedExpressions[linkId].value !== result[0]) {
|
|
38
|
-
initialExpressions[linkId].value = result[0];
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
catch (e) {
|
|
42
|
-
console.warn(e.message, `LinkId: ${linkId}\nExpression: ${calculatedExpressions[linkId].expression}`);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
return initialExpressions;
|
|
47
|
-
}
|
|
48
|
-
export function evaluateCalculatedExpressions(fhirPathContext, calculatedExpressions) {
|
|
49
|
-
const updatedCalculatedExpressions = Object.assign({}, calculatedExpressions);
|
|
50
|
-
let isUpdated = false;
|
|
51
|
-
for (const linkId in calculatedExpressions) {
|
|
52
|
-
try {
|
|
53
|
-
const result = fhirpath.evaluate('', calculatedExpressions[linkId].expression, fhirPathContext, fhirpath_r4_model);
|
|
54
|
-
if (result.length > 0) {
|
|
55
|
-
if (calculatedExpressions[linkId].value !== result[0]) {
|
|
56
|
-
isUpdated = true;
|
|
57
|
-
updatedCalculatedExpressions[linkId].value = result[0];
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
catch (e) {
|
|
62
|
-
console.warn(e.message, `LinkId: ${linkId}\nExpression: ${calculatedExpressions[linkId].expression}`);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
return {
|
|
66
|
-
calculatedExpsIsUpdated: isUpdated,
|
|
67
|
-
updatedCalculatedExpressions: updatedCalculatedExpressions
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
export function initialiseCalculatedExpressionValues(questionnaire, populatedResponse, calculatedExpressions) {
|
|
71
|
-
var _a;
|
|
72
|
-
const calculatedExpressionsWithValues = Object.keys(calculatedExpressions)
|
|
73
|
-
.filter((key) => calculatedExpressions[key].value !== undefined)
|
|
74
|
-
.reduce((mapping, key) => ((mapping[key] = calculatedExpressions[key]), mapping), {});
|
|
75
|
-
if (!questionnaire.item ||
|
|
76
|
-
questionnaire.item.length === 0 ||
|
|
77
|
-
!populatedResponse.item ||
|
|
78
|
-
populatedResponse.item.length === 0) {
|
|
79
|
-
return populatedResponse;
|
|
80
|
-
}
|
|
81
|
-
const topLevelQrItems = [];
|
|
82
|
-
for (const [index, topLevelQItem] of questionnaire.item.entries()) {
|
|
83
|
-
const populatedTopLevelQrItem = (_a = populatedResponse.item[index]) !== null && _a !== void 0 ? _a : {
|
|
84
|
-
linkId: topLevelQItem.linkId,
|
|
85
|
-
text: topLevelQItem.text,
|
|
86
|
-
item: []
|
|
87
|
-
};
|
|
88
|
-
const updatedTopLevelQRItem = initialiseItemCalculatedExpressionValueRecursive(topLevelQItem, populatedTopLevelQrItem, calculatedExpressionsWithValues);
|
|
89
|
-
if (Array.isArray(updatedTopLevelQRItem)) {
|
|
90
|
-
if (updatedTopLevelQRItem.length > 0) {
|
|
91
|
-
topLevelQrItems.push(...updatedTopLevelQRItem);
|
|
92
|
-
}
|
|
93
|
-
continue;
|
|
94
|
-
}
|
|
95
|
-
if (updatedTopLevelQRItem) {
|
|
96
|
-
topLevelQrItems.push(updatedTopLevelQRItem);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
return Object.assign(Object.assign({}, populatedResponse), { item: topLevelQrItems });
|
|
100
|
-
}
|
|
101
|
-
function initialiseItemCalculatedExpressionValueRecursive(qItem, qrItem, calculatedExpressions) {
|
|
102
|
-
var _a;
|
|
103
|
-
const childQItems = qItem.item;
|
|
104
|
-
if (childQItems && childQItems.length > 0) {
|
|
105
|
-
// iterate through items of item recursively
|
|
106
|
-
const childQrItems = (_a = qrItem === null || qrItem === void 0 ? void 0 : qrItem.item) !== null && _a !== void 0 ? _a : [];
|
|
107
|
-
// const updatedChildQrItems: QuestionnaireResponseItem[] = [];
|
|
108
|
-
// FIXME Not implemented for repeat groups
|
|
109
|
-
if (qItem.type === 'group' && qItem.repeats) {
|
|
110
|
-
return qrItem !== null && qrItem !== void 0 ? qrItem : null;
|
|
111
|
-
}
|
|
112
|
-
const indexMap = mapQItemsIndex(qItem);
|
|
113
|
-
const qrItemsByIndex = getQrItemsIndex(childQItems, childQrItems, indexMap);
|
|
114
|
-
// Otherwise loop through qItem as usual
|
|
115
|
-
for (const [index, childQItem] of childQItems.entries()) {
|
|
116
|
-
const childQrItem = qrItemsByIndex[index];
|
|
117
|
-
// FIXME Not implemented for repeat groups
|
|
118
|
-
if (Array.isArray(childQrItem)) {
|
|
119
|
-
continue;
|
|
120
|
-
}
|
|
121
|
-
const newQrItem = initialiseItemCalculatedExpressionValueRecursive(childQItem, childQrItem, calculatedExpressions);
|
|
122
|
-
// FIXME Not implemented for repeat groups
|
|
123
|
-
if (Array.isArray(newQrItem)) {
|
|
124
|
-
continue;
|
|
125
|
-
}
|
|
126
|
-
if (newQrItem) {
|
|
127
|
-
updateQrGroup(newQrItem, null, qrItem !== null && qrItem !== void 0 ? qrItem : { linkId: qItem.linkId, text: qItem.text, item: [] }, indexMap);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
return constructGroupItem(qItem, qrItem, calculatedExpressions);
|
|
131
|
-
}
|
|
132
|
-
return constructSingleItem(qItem, calculatedExpressions);
|
|
133
|
-
}
|
|
134
|
-
function constructGroupItem(qItem, qrItem, calculatedExpressions) {
|
|
135
|
-
const itemCalculatedExpression = calculatedExpressions[qItem.linkId];
|
|
136
|
-
let calculatedExpressionAnswer;
|
|
137
|
-
if (itemCalculatedExpression && itemCalculatedExpression.value) {
|
|
138
|
-
calculatedExpressionAnswer = parseValueToAnswer(qItem, itemCalculatedExpression.value);
|
|
139
|
-
}
|
|
140
|
-
// If group item has an existing answer, do not overwrite it with calculated expression value
|
|
141
|
-
if ((qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer) && (qrItem === null || qrItem === void 0 ? void 0 : qrItem.answer.length) > 0) {
|
|
142
|
-
return qrItem !== null && qrItem !== void 0 ? qrItem : null;
|
|
143
|
-
}
|
|
144
|
-
if (!calculatedExpressionAnswer) {
|
|
145
|
-
return qrItem !== null && qrItem !== void 0 ? qrItem : null;
|
|
146
|
-
}
|
|
147
|
-
if (qrItem) {
|
|
148
|
-
return Object.assign(Object.assign({}, qrItem), { answer: [calculatedExpressionAnswer] });
|
|
149
|
-
}
|
|
150
|
-
return {
|
|
151
|
-
linkId: qItem.linkId,
|
|
152
|
-
text: qItem.text,
|
|
153
|
-
answer: [calculatedExpressionAnswer]
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
function constructSingleItem(qItem, calculatedExpressions) {
|
|
157
|
-
const itemCalculatedExpression = calculatedExpressions[qItem.linkId];
|
|
158
|
-
let calculatedExpressionAnswer;
|
|
159
|
-
if (itemCalculatedExpression && itemCalculatedExpression.value) {
|
|
160
|
-
calculatedExpressionAnswer = parseValueToAnswer(qItem, itemCalculatedExpression.value);
|
|
161
|
-
}
|
|
162
|
-
if (!calculatedExpressionAnswer) {
|
|
163
|
-
return null;
|
|
164
|
-
}
|
|
165
|
-
return {
|
|
166
|
-
linkId: qItem.linkId,
|
|
167
|
-
text: qItem.text,
|
|
168
|
-
answer: [calculatedExpressionAnswer]
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
function parseValueToAnswer(qItem, value) {
|
|
172
|
-
if (typeof value === 'number') {
|
|
173
|
-
if (qItem.type === 'integer') {
|
|
174
|
-
return { valueInteger: value };
|
|
175
|
-
}
|
|
176
|
-
return { valueDecimal: value };
|
|
177
|
-
}
|
|
178
|
-
return { valueString: value };
|
|
179
|
-
}
|
|
180
|
-
//# sourceMappingURL=calculatedExpression.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"calculatedExpression.js","sourceRoot":"","sources":["calculatedExpression.ts"],"names":[],"mappings":"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"}
|
package/src/utils/choice.js
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2023 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 { QItemChoiceControl, QItemChoiceOrientation } from '../interfaces/choice.enum';
|
|
18
|
-
import { isSpecificItemControl } from './itemControl';
|
|
19
|
-
/**
|
|
20
|
-
* Get choice control type based on certain criteria in choice items
|
|
21
|
-
*
|
|
22
|
-
* @author Sean Fong
|
|
23
|
-
*/
|
|
24
|
-
export function getChoiceControlType(qItem) {
|
|
25
|
-
const dropdownOptionsCount = 5;
|
|
26
|
-
if (isSpecificItemControl(qItem, 'autocomplete')) {
|
|
27
|
-
return QItemChoiceControl.Autocomplete;
|
|
28
|
-
}
|
|
29
|
-
if (isSpecificItemControl(qItem, 'check-box')) {
|
|
30
|
-
return QItemChoiceControl.Checkbox;
|
|
31
|
-
}
|
|
32
|
-
if (isSpecificItemControl(qItem, 'radio-button')) {
|
|
33
|
-
return QItemChoiceControl.Radio;
|
|
34
|
-
}
|
|
35
|
-
if (isSpecificItemControl(qItem, 'drop-down')) {
|
|
36
|
-
return QItemChoiceControl.Select;
|
|
37
|
-
}
|
|
38
|
-
if (qItem.answerOption) {
|
|
39
|
-
return qItem.answerOption.length > 0 && qItem.answerOption.length < dropdownOptionsCount
|
|
40
|
-
? QItemChoiceControl.Radio
|
|
41
|
-
: QItemChoiceControl.Select;
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
return QItemChoiceControl.Select;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Find and return corresponding answerOption based on selected answer in form
|
|
49
|
-
*
|
|
50
|
-
* @author Sean Fong
|
|
51
|
-
*/
|
|
52
|
-
export function findInAnswerOptions(answerOptions, selected) {
|
|
53
|
-
for (const option of answerOptions) {
|
|
54
|
-
if (option['valueCoding']) {
|
|
55
|
-
if (selected === option.valueCoding.code) {
|
|
56
|
-
return option;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
else if (option['valueString']) {
|
|
60
|
-
if (selected === option.valueString) {
|
|
61
|
-
return option;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else if (option['valueInteger']) {
|
|
65
|
-
if (selected === option.valueInteger.toString()) {
|
|
66
|
-
return option;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Find and return corresponding coding from AnswerValyeSet based on selected answer in form
|
|
73
|
-
*
|
|
74
|
-
* @author Sean Fong
|
|
75
|
-
*/
|
|
76
|
-
export function findInAnswerValueSetCodings(codings, selected) {
|
|
77
|
-
for (const coding of codings) {
|
|
78
|
-
if (selected === coding.code) {
|
|
79
|
-
return coding;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Find and return string value from selected answer
|
|
85
|
-
*
|
|
86
|
-
* @author Sean Fong
|
|
87
|
-
*/
|
|
88
|
-
export function getQrChoiceValue(qrChoice, returnNull) {
|
|
89
|
-
if (qrChoice['answer']) {
|
|
90
|
-
const answer = qrChoice['answer'][0];
|
|
91
|
-
if (answer['valueCoding']) {
|
|
92
|
-
return answer.valueCoding.code ? answer.valueCoding.code : '';
|
|
93
|
-
}
|
|
94
|
-
else if (answer['valueString'] !== undefined) {
|
|
95
|
-
return answer.valueString;
|
|
96
|
-
}
|
|
97
|
-
else if (answer['valueInteger']) {
|
|
98
|
-
return answer.valueInteger.toString();
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return returnNull ? null : '';
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Update choice checkbox group answers based on checkbox changes
|
|
105
|
-
*
|
|
106
|
-
* @author Sean Fong
|
|
107
|
-
*/
|
|
108
|
-
export function updateQrCheckboxAnswers(changedValue, answers, answerOptions, qrChoiceCheckbox, isMultiSelection) {
|
|
109
|
-
// search for answer item of changedValue from list of answer options
|
|
110
|
-
const newAnswer = findInAnswerOptions(answerOptions, changedValue);
|
|
111
|
-
if (!newAnswer)
|
|
112
|
-
return null;
|
|
113
|
-
if (isMultiSelection && answers.length > 0) {
|
|
114
|
-
// check and filter if new answer exists in existing qrAnswers
|
|
115
|
-
const updatedAnswers = answers.filter((answer) => JSON.stringify(answer) !== JSON.stringify(newAnswer));
|
|
116
|
-
// new answer is not present in existing answers, so we add it to the array
|
|
117
|
-
if (updatedAnswers.length === answers.length) {
|
|
118
|
-
updatedAnswers.push(newAnswer);
|
|
119
|
-
}
|
|
120
|
-
return Object.assign(Object.assign({}, qrChoiceCheckbox), { answer: updatedAnswers });
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
return answers.some((answer) => JSON.stringify(answer) === JSON.stringify(newAnswer))
|
|
124
|
-
? Object.assign(Object.assign({}, qrChoiceCheckbox), { answer: [] }) : Object.assign(Object.assign({}, qrChoiceCheckbox), { answer: [newAnswer] });
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Get choice orientation from its itemControl
|
|
129
|
-
*
|
|
130
|
-
* @author Sean Fong
|
|
131
|
-
*/
|
|
132
|
-
export function getChoiceOrientation(qItem) {
|
|
133
|
-
var _a;
|
|
134
|
-
const itemControl = (_a = qItem.extension) === null || _a === void 0 ? void 0 : _a.find((extension) => extension.url === 'http://hl7.org/fhir/StructureDefinition/questionnaire-choiceOrientation');
|
|
135
|
-
if (itemControl) {
|
|
136
|
-
const code = itemControl.valueCode;
|
|
137
|
-
if (code) {
|
|
138
|
-
if (code === 'horizontal') {
|
|
139
|
-
return QItemChoiceOrientation.Horizontal;
|
|
140
|
-
}
|
|
141
|
-
else if (code === 'vertical') {
|
|
142
|
-
return QItemChoiceOrientation.Vertical;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
return QItemChoiceOrientation.Vertical;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Converts an array of codings to an array of valueCodings which can use the QuestionnaireItemAnswerOption type
|
|
150
|
-
*
|
|
151
|
-
* @author Sean Fong
|
|
152
|
-
*/
|
|
153
|
-
export function mapCodingsToOptions(codings) {
|
|
154
|
-
return codings.map((coding) => {
|
|
155
|
-
return {
|
|
156
|
-
valueCoding: coding
|
|
157
|
-
};
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
|
-
//# sourceMappingURL=choice.js.map
|
package/src/utils/choice.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"choice.js","sourceRoot":"","sources":["choice.ts"],"names":[],"mappings":"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"}
|
package/src/utils/debounce.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright 2023 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
|
-
export const DEBOUNCE_DURATION = 200;
|
|
18
|
-
export const AUTOCOMPLETE_DEBOUNCE_DURATION = 300;
|
|
19
|
-
//# sourceMappingURL=debounce.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"debounce.js","sourceRoot":"","sources":["debounce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAErC,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC"}
|