@inseefr/lunatic 3.0.0-rc.10 → 3.0.0-rc.12
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/package.json +162 -0
- package/lib/src/components/CheckboxBoolean/CheckboxBoolean.js +14 -0
- package/lib/src/components/CheckboxBoolean/CheckboxBoolean.js.map +1 -0
- package/lib/src/components/CheckboxBoolean/CheckboxBoolean.spec.js +37 -0
- package/lib/src/components/CheckboxBoolean/CheckboxBoolean.spec.js.map +1 -0
- package/lib/src/components/CheckboxGroup/CheckboxGroup.js +27 -0
- package/lib/src/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/lib/src/components/CheckboxGroup/CustomCheckboxGroup.js +14 -0
- package/lib/src/components/CheckboxGroup/CustomCheckboxGroup.js.map +1 -0
- package/lib/src/components/CheckboxGroup/CustomCheckboxGroup.spec.js +45 -0
- package/lib/src/components/CheckboxGroup/CustomCheckboxGroup.spec.js.map +1 -0
- package/lib/src/components/CheckboxOne/CheckboxOne.js +10 -0
- package/lib/src/components/CheckboxOne/CheckboxOne.js.map +1 -0
- package/lib/src/components/CheckboxOne/CheckboxOne.spec.js +25 -0
- package/lib/src/components/CheckboxOne/CheckboxOne.spec.js.map +1 -0
- package/lib/src/components/Datepicker/Datepicker.js +66 -0
- package/lib/src/components/Datepicker/Datepicker.js.map +1 -0
- package/lib/src/components/Datepicker/Datepicker.spec.js +56 -0
- package/lib/src/components/Datepicker/Datepicker.spec.js.map +1 -0
- package/lib/src/components/Datepicker/DatepickerField.js +13 -0
- package/lib/src/components/Datepicker/DatepickerField.js.map +1 -0
- package/lib/src/components/Dropdown/Dropdown.js +15 -0
- package/lib/src/components/Dropdown/Dropdown.js.map +1 -0
- package/lib/src/components/Dropdown/Dropdown.spec.js +38 -0
- package/lib/src/components/Dropdown/Dropdown.spec.js.map +1 -0
- package/lib/src/components/Dropdown/helpers.js +68 -0
- package/lib/src/components/Dropdown/helpers.js.map +1 -0
- package/lib/src/components/Dropdown/renderer/SimpleLabelRenderer.js +19 -0
- package/lib/src/components/Dropdown/renderer/SimpleLabelRenderer.js.map +1 -0
- package/lib/src/components/Dropdown/renderer/SimpleOptionRenderer.js +10 -0
- package/lib/src/components/Dropdown/renderer/SimpleOptionRenderer.js.map +1 -0
- package/lib/src/components/Duration/Duration.js +31 -0
- package/lib/src/components/Duration/Duration.js.map +1 -0
- package/lib/src/components/Duration/durationUtils.js +26 -0
- package/lib/src/components/Duration/durationUtils.js.map +1 -0
- package/lib/src/components/Duration/formatDuration.js +18 -0
- package/lib/src/components/Duration/formatDuration.js.map +1 -0
- package/lib/src/components/Duration/formatDuration.spec.js +16 -0
- package/lib/src/components/Duration/formatDuration.spec.js.map +1 -0
- package/lib/src/components/Duration/getDurationFromValue.js +37 -0
- package/lib/src/components/Duration/getDurationFromValue.js.map +1 -0
- package/lib/src/components/FilterDescription/FilterDescription.js +4 -0
- package/lib/src/components/FilterDescription/FilterDescription.js.map +1 -0
- package/lib/src/components/FilterDescription/FilterDescription.spec.js +16 -0
- package/lib/src/components/FilterDescription/FilterDescription.spec.js.map +1 -0
- package/lib/src/components/Input/Input.js +15 -0
- package/lib/src/components/Input/Input.js.map +1 -0
- package/lib/src/components/Input/Input.spec.js +50 -0
- package/lib/src/components/Input/Input.spec.js.map +1 -0
- package/lib/src/components/InputNumber/InputNumber.js +15 -0
- package/lib/src/components/InputNumber/InputNumber.js.map +1 -0
- package/lib/src/components/InputNumber/InputNumber.spec.js +71 -0
- package/lib/src/components/InputNumber/InputNumber.spec.js.map +1 -0
- package/lib/src/components/InputNumber/InputNumberThousand.js +19 -0
- package/lib/src/components/InputNumber/InputNumberThousand.js.map +1 -0
- package/lib/src/components/Loop/Loop.js +45 -0
- package/lib/src/components/Loop/Loop.js.map +1 -0
- package/lib/src/components/Loop/constant.js +10 -0
- package/lib/src/components/Loop/constant.js.map +1 -0
- package/lib/src/components/LunaticComponents.js +79 -0
- package/lib/src/components/LunaticComponents.js.map +1 -0
- package/lib/src/components/PairwiseLinks/PairwiseLinks.js +16 -0
- package/lib/src/components/PairwiseLinks/PairwiseLinks.js.map +1 -0
- package/lib/src/components/Question/Question.js +15 -0
- package/lib/src/components/Question/Question.js.map +1 -0
- package/lib/src/components/Radio/Radio.js +10 -0
- package/lib/src/components/Radio/Radio.js.map +1 -0
- package/lib/src/components/RosterForLoop/RosterForLoop.js +52 -0
- package/lib/src/components/RosterForLoop/RosterForLoop.js.map +1 -0
- package/lib/src/components/RosterForLoop/RosterForLoop.spec.js +28 -0
- package/lib/src/components/RosterForLoop/RosterForLoop.spec.js.map +1 -0
- package/lib/src/components/Roundabout/CustomRoundabout.js +20 -0
- package/lib/src/components/Roundabout/CustomRoundabout.js.map +1 -0
- package/lib/src/components/Roundabout/Roundabout.js +18 -0
- package/lib/src/components/Roundabout/Roundabout.js.map +1 -0
- package/lib/src/components/Roundabout/RoundaboutItButton.js +41 -0
- package/lib/src/components/Roundabout/RoundaboutItButton.js.map +1 -0
- package/lib/src/components/Roundabout/RoundaboutItButton.spec.js +48 -0
- package/lib/src/components/Roundabout/RoundaboutItButton.spec.js.map +1 -0
- package/lib/src/components/Roundabout/RoundaboutRedirect.js +11 -0
- package/lib/src/components/Roundabout/RoundaboutRedirect.js.map +1 -0
- package/lib/src/components/Roundabout/extra.js +9 -0
- package/lib/src/components/Roundabout/extra.js.map +1 -0
- package/lib/src/components/Roundabout/redirect.spec.js +13 -0
- package/lib/src/components/Roundabout/redirect.spec.js.map +1 -0
- package/lib/src/components/Roundabout/roundabout.spec.js +50 -0
- package/lib/src/components/Roundabout/roundabout.spec.js.map +1 -0
- package/lib/src/components/Sequence/Sequence.js +9 -0
- package/lib/src/components/Sequence/Sequence.js.map +1 -0
- package/lib/src/components/Subsequence/Subsequence.js +8 -0
- package/lib/src/components/Subsequence/Subsequence.js.map +1 -0
- package/lib/src/components/Subsequence/Subsequence.spec.js +42 -0
- package/lib/src/components/Subsequence/Subsequence.spec.js.map +1 -0
- package/lib/src/components/Suggester/CustomSuggester.js +40 -0
- package/lib/src/components/Suggester/CustomSuggester.js.map +1 -0
- package/lib/src/components/Suggester/Suggester.js +61 -0
- package/lib/src/components/Suggester/Suggester.js.map +1 -0
- package/lib/src/components/Suggester/SuggesterNotification.js +21 -0
- package/lib/src/components/Suggester/SuggesterNotification.js.map +1 -0
- package/lib/src/components/Suggester/SuggesterStatus.js +24 -0
- package/lib/src/components/Suggester/SuggesterStatus.js.map +1 -0
- package/lib/src/components/Suggester/SuggesterType.js +2 -0
- package/lib/src/components/Suggester/SuggesterType.js.map +1 -0
- package/lib/src/components/Suggester/helpers.js +28 -0
- package/lib/src/components/Suggester/helpers.js.map +1 -0
- package/lib/src/components/Summary/Summary.js +66 -0
- package/lib/src/components/Summary/Summary.js.map +1 -0
- package/lib/src/components/Switch/Switch.js +31 -0
- package/lib/src/components/Switch/Switch.js.map +1 -0
- package/lib/src/components/Table/Table.js +12 -0
- package/lib/src/components/Table/Table.js.map +1 -0
- package/lib/src/components/Textarea/Textarea.js +14 -0
- package/lib/src/components/Textarea/Textarea.js.map +1 -0
- package/lib/src/components/Textarea/Textarea.spec.js +31 -0
- package/lib/src/components/Textarea/Textarea.spec.js.map +1 -0
- package/lib/src/components/library.js +48 -0
- package/lib/src/components/library.js.map +1 -0
- package/lib/src/components/shared/Button/Button.js +14 -0
- package/lib/src/components/shared/Button/Button.js.map +1 -0
- package/lib/src/components/shared/Button/Button.spec.js +51 -0
- package/lib/src/components/shared/Button/Button.spec.js.map +1 -0
- package/lib/src/components/shared/Button/IconButton.js +7 -0
- package/lib/src/components/shared/Button/IconButton.js.map +1 -0
- package/lib/src/components/shared/Button/IconButton.spec.js +53 -0
- package/lib/src/components/shared/Button/IconButton.spec.js.map +1 -0
- package/lib/src/components/shared/Checkbox/CheckboxOption.js +29 -0
- package/lib/src/components/shared/Checkbox/CheckboxOption.js.map +1 -0
- package/lib/src/components/shared/Checkbox/CheckboxOption.spec.js +52 -0
- package/lib/src/components/shared/Checkbox/CheckboxOption.spec.js.map +1 -0
- package/lib/src/components/shared/Checkbox/getShortcutKey.js +3 -0
- package/lib/src/components/shared/Checkbox/getShortcutKey.js.map +1 -0
- package/lib/src/components/shared/Combobox/Combobox.js +97 -0
- package/lib/src/components/shared/Combobox/Combobox.js.map +1 -0
- package/lib/src/components/shared/Combobox/Combobox.stories.js +46 -0
- package/lib/src/components/shared/Combobox/Combobox.stories.js.map +1 -0
- package/lib/src/components/shared/Combobox/ComboboxContainer.js +6 -0
- package/lib/src/components/shared/Combobox/ComboboxContainer.js.map +1 -0
- package/lib/src/components/shared/Combobox/ComboboxContainer.spec.js +24 -0
- package/lib/src/components/shared/Combobox/ComboboxContainer.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/ComboboxContent.js +33 -0
- package/lib/src/components/shared/Combobox/ComboboxContent.js.map +1 -0
- package/lib/src/components/shared/Combobox/ComboboxContentBox.js +8 -0
- package/lib/src/components/shared/Combobox/ComboboxContentBox.js.map +1 -0
- package/lib/src/components/shared/Combobox/ComboboxType.js +2 -0
- package/lib/src/components/shared/Combobox/ComboboxType.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOption.js +11 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOption.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOption.spec.js +33 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOption.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOptionContainer.js +36 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOptionContainer.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js +18 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanel.js +13 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanel.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanel.spec.js +57 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanel.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanelContainer.js +9 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanelContainer.js.map +1 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js +31 -0
- package/lib/src/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxClearButton.js +28 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxClearButton.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxClearButton.spec.js +53 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxClearButton.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxInput.js +21 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxInput.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxLabelSelection.js +25 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxLabelSelection.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js +27 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxSelection.js +18 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxSelection.js.map +1 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxSelection.spec.js +36 -0
- package/lib/src/components/shared/Combobox/Selection/ComboboxSelection.spec.js.map +1 -0
- package/lib/src/components/shared/Combobox/constants.js +10 -0
- package/lib/src/components/shared/Combobox/constants.js.map +1 -0
- package/lib/src/components/shared/Combobox/index.js +2 -0
- package/lib/src/components/shared/Combobox/index.js.map +1 -0
- package/lib/src/components/shared/ComponentErrors/ComponentErrors.js +24 -0
- package/lib/src/components/shared/ComponentErrors/ComponentErrors.js.map +1 -0
- package/lib/src/components/shared/ComponentErrors/ComponentErrors.spec.js +40 -0
- package/lib/src/components/shared/ComponentErrors/ComponentErrors.spec.js.map +1 -0
- package/lib/src/components/shared/ComponentWrapper.js +29 -0
- package/lib/src/components/shared/ComponentWrapper.js.map +1 -0
- package/lib/src/components/shared/Declarations/Declarations.js +14 -0
- package/lib/src/components/shared/Declarations/Declarations.js.map +1 -0
- package/lib/src/components/shared/Declarations/Declarations.spec.js +54 -0
- package/lib/src/components/shared/Declarations/Declarations.spec.js.map +1 -0
- package/lib/src/components/shared/Fieldset/Fieldset.js +29 -0
- package/lib/src/components/shared/Fieldset/Fieldset.js.map +1 -0
- package/lib/src/components/shared/Fieldset/Fieldset.spec.js +25 -0
- package/lib/src/components/shared/Fieldset/Fieldset.spec.js.map +1 -0
- package/lib/src/components/shared/HOC/slottableComponent.js +28 -0
- package/lib/src/components/shared/HOC/slottableComponent.js.map +1 -0
- package/lib/src/components/shared/Icons/checkbox-checked-icon.js +7 -0
- package/lib/src/components/shared/Icons/checkbox-checked-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/checkbox-unchecked-icon.js +7 -0
- package/lib/src/components/shared/Icons/checkbox-unchecked-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/closed-icon.js +7 -0
- package/lib/src/components/shared/Icons/closed-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/cross-icon.js +7 -0
- package/lib/src/components/shared/Icons/cross-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/icon-props.js +2 -0
- package/lib/src/components/shared/Icons/icon-props.js.map +1 -0
- package/lib/src/components/shared/Icons/index.js +11 -0
- package/lib/src/components/shared/Icons/index.js.map +1 -0
- package/lib/src/components/shared/Icons/load-icon.js +7 -0
- package/lib/src/components/shared/Icons/load-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/lunatic-icon.js +7 -0
- package/lib/src/components/shared/Icons/lunatic-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/network-icon.js +7 -0
- package/lib/src/components/shared/Icons/network-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/on-drag-icon.js +7 -0
- package/lib/src/components/shared/Icons/on-drag-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/opened-icon.js +7 -0
- package/lib/src/components/shared/Icons/opened-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/radio-checked-icon.js +8 -0
- package/lib/src/components/shared/Icons/radio-checked-icon.js.map +1 -0
- package/lib/src/components/shared/Icons/radio-unchecked-icon.js +7 -0
- package/lib/src/components/shared/Icons/radio-unchecked-icon.js.map +1 -0
- package/lib/src/components/shared/Label/Label.js +16 -0
- package/lib/src/components/shared/Label/Label.js.map +1 -0
- package/lib/src/components/shared/Label/Label.spec.js +19 -0
- package/lib/src/components/shared/Label/Label.spec.js.map +1 -0
- package/lib/src/components/shared/LabelDescription.js +11 -0
- package/lib/src/components/shared/LabelDescription.js.map +1 -0
- package/lib/src/components/shared/MDLabel/MDLabel.js +22 -0
- package/lib/src/components/shared/MDLabel/MDLabel.js.map +1 -0
- package/lib/src/components/shared/MDLabel/MDLabel.spec.js +89 -0
- package/lib/src/components/shared/MDLabel/MDLabel.spec.js.map +1 -0
- package/lib/src/components/shared/MDLabel/MDLabelLink.js +35 -0
- package/lib/src/components/shared/MDLabel/MDLabelLink.js.map +1 -0
- package/lib/src/components/shared/MDLabel/RouterLink.js +7 -0
- package/lib/src/components/shared/MDLabel/RouterLink.js.map +1 -0
- package/lib/src/components/shared/MDLabel/generateUniqueId.js +2 -0
- package/lib/src/components/shared/MDLabel/generateUniqueId.js.map +1 -0
- package/lib/src/components/shared/Missing/Missing.js +47 -0
- package/lib/src/components/shared/Missing/Missing.js.map +1 -0
- package/lib/src/components/shared/Missing/Missing.spec.js +41 -0
- package/lib/src/components/shared/Missing/Missing.spec.js.map +1 -0
- package/lib/src/components/shared/ModalControls/ModalControls.js +30 -0
- package/lib/src/components/shared/ModalControls/ModalControls.js.map +1 -0
- package/lib/src/components/shared/ModalControls/ModalControls.spec.js +61 -0
- package/lib/src/components/shared/ModalControls/ModalControls.spec.js.map +1 -0
- package/lib/src/components/shared/Notification.js +9 -0
- package/lib/src/components/shared/Notification.js.map +1 -0
- package/lib/src/components/shared/Radio/RadioGroup.js +22 -0
- package/lib/src/components/shared/Radio/RadioGroup.js.map +1 -0
- package/lib/src/components/shared/Radio/RadioOption.js +54 -0
- package/lib/src/components/shared/Radio/RadioOption.js.map +1 -0
- package/lib/src/components/shared/Radio/RadioOption.spec.js +46 -0
- package/lib/src/components/shared/Radio/RadioOption.spec.js.map +1 -0
- package/lib/src/components/shared/Table/Table.js +9 -0
- package/lib/src/components/shared/Table/Table.js.map +1 -0
- package/lib/src/components/shared/Table/Table.spec.js +15 -0
- package/lib/src/components/shared/Table/Table.spec.js.map +1 -0
- package/lib/src/components/shared/Table/TableHeader.js +14 -0
- package/lib/src/components/shared/Table/TableHeader.js.map +1 -0
- package/lib/src/components/shared/Table/Tbody.js +8 -0
- package/lib/src/components/shared/Table/Tbody.js.map +1 -0
- package/lib/src/components/shared/Table/Tbody.spec.js +24 -0
- package/lib/src/components/shared/Table/Tbody.spec.js.map +1 -0
- package/lib/src/components/shared/Table/Td.js +8 -0
- package/lib/src/components/shared/Table/Td.js.map +1 -0
- package/lib/src/components/shared/Table/Td.spec.js +23 -0
- package/lib/src/components/shared/Table/Td.spec.js.map +1 -0
- package/lib/src/components/shared/Table/Th.js +8 -0
- package/lib/src/components/shared/Table/Th.js.map +1 -0
- package/lib/src/components/shared/Table/Th.spec.js +27 -0
- package/lib/src/components/shared/Table/Th.spec.js.map +1 -0
- package/lib/src/components/shared/Table/Thead.js +9 -0
- package/lib/src/components/shared/Table/Thead.js.map +1 -0
- package/lib/src/components/shared/Table/Thead.spec.js +17 -0
- package/lib/src/components/shared/Table/Thead.spec.js.map +1 -0
- package/lib/src/components/shared/Table/Tr.js +8 -0
- package/lib/src/components/shared/Table/Tr.js.map +1 -0
- package/lib/src/components/shared/Table/Tr.spec.js +20 -0
- package/lib/src/components/shared/Table/Tr.spec.js.map +1 -0
- package/lib/src/components/shared/Table/index.js +8 -0
- package/lib/src/components/shared/Table/index.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/dragger.js +43 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/dragger.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/dragger.spec.js +55 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/dragger.spec.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/index.js +2 -0
- package/lib/src/components/shared/suggester-loader-widget/dragger/index.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/index.js +2 -0
- package/lib/src/components/shared/suggester-loader-widget/index.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/index.js +2 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/index.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/is-network.js +23 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/is-network.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/is-network.spec.js +32 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/is-network.spec.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/use-online-status.js +41 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/use-online-status.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/use-online-status.spec.js +30 -0
- package/lib/src/components/shared/suggester-loader-widget/is-network/use-online-status.spec.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/loader-row.js +36 -0
- package/lib/src/components/shared/suggester-loader-widget/loader-row.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/loader.js +51 -0
- package/lib/src/components/shared/suggester-loader-widget/loader.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/progress.js +13 -0
- package/lib/src/components/shared/suggester-loader-widget/progress.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/action-tool.js +11 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/action-tool.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/index.js +3 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/index.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/tools.js +7 -0
- package/lib/src/components/shared/suggester-loader-widget/tools/tools.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/widget-container.js +16 -0
- package/lib/src/components/shared/suggester-loader-widget/widget-container.js.map +1 -0
- package/lib/src/components/shared/suggester-loader-widget/widget.js +55 -0
- package/lib/src/components/shared/suggester-loader-widget/widget.js.map +1 -0
- package/lib/src/components/type.js +3 -0
- package/lib/src/components/type.js.map +1 -0
- package/lib/src/constants/component-types.js +2 -0
- package/lib/src/constants/component-types.js.map +1 -0
- package/lib/src/constants/declarations.js +12 -0
- package/lib/src/constants/declarations.js.map +1 -0
- package/lib/src/constants/event-types.js +13 -0
- package/lib/src/constants/event-types.js.map +1 -0
- package/lib/src/constants/index.js +6 -0
- package/lib/src/constants/index.js.map +1 -0
- package/lib/src/constants/indexedDBStore.js +19 -0
- package/lib/src/constants/indexedDBStore.js.map +1 -0
- package/lib/src/constants/supported-preferences.js +10 -0
- package/lib/src/constants/supported-preferences.js.map +1 -0
- package/lib/src/constants/value-types.js +6 -0
- package/lib/src/constants/value-types.js.map +1 -0
- package/lib/src/constants/variable-types.js +5 -0
- package/lib/src/constants/variable-types.js.map +1 -0
- package/lib/src/hooks/use-auto-focus.js +19 -0
- package/lib/src/hooks/use-auto-focus.js.map +1 -0
- package/lib/src/hooks/use-ref-sync.js +10 -0
- package/lib/src/hooks/use-ref-sync.js.map +1 -0
- package/lib/src/hooks/use-track-changes.js +41 -0
- package/lib/src/hooks/use-track-changes.js.map +1 -0
- package/lib/src/hooks/use-why-render.js +14 -0
- package/lib/src/hooks/use-why-render.js.map +1 -0
- package/lib/src/hooks/useDocumentEvent.js +18 -0
- package/lib/src/hooks/useDocumentEvent.js.map +1 -0
- package/lib/src/hooks/useListKeyboardHandler.js +18 -0
- package/lib/src/hooks/useListKeyboardHandler.js.map +1 -0
- package/lib/src/hooks/useSuggesterInfo.js +29 -0
- package/lib/src/hooks/useSuggesterInfo.js.map +1 -0
- package/lib/src/i18n/build-dictionary.js +38 -0
- package/lib/src/i18n/build-dictionary.js.map +1 -0
- package/lib/src/i18n/dictionary.js +11 -0
- package/lib/src/i18n/dictionary.js.map +1 -0
- package/lib/src/i18n/index.js +13 -0
- package/lib/src/i18n/index.js.map +1 -0
- package/lib/src/i18n/inputNumberProps.js +7 -0
- package/lib/src/i18n/inputNumberProps.js.map +1 -0
- package/lib/src/index.js +10 -0
- package/lib/src/index.js.map +1 -0
- package/lib/src/stories/behaviour/cleaning/source-loop.json +130 -0
- package/lib/src/stories/behaviour/resizing/source-resizing-cleaning.json +171 -0
- package/lib/src/stories/overview/source.json +28 -0
- package/lib/src/stories/questionnaires/logement/source.json +31762 -0
- package/lib/src/stories/questionnaires2023/simpsons/source.json +4728 -0
- package/lib/src/type.utils.js +2 -0
- package/lib/src/type.utils.js.map +1 -0
- package/lib/src/use-lunatic/actions.js +34 -0
- package/lib/src/use-lunatic/actions.js.map +1 -0
- package/lib/src/use-lunatic/commons/check-loops.js +62 -0
- package/lib/src/use-lunatic/commons/check-loops.js.map +1 -0
- package/lib/src/use-lunatic/commons/check-pager.js +17 -0
- package/lib/src/use-lunatic/commons/check-pager.js.map +1 -0
- package/lib/src/use-lunatic/commons/compile-controls.js +134 -0
- package/lib/src/use-lunatic/commons/compile-controls.js.map +1 -0
- package/lib/src/use-lunatic/commons/component.js +22 -0
- package/lib/src/use-lunatic/commons/component.js.map +1 -0
- package/lib/src/use-lunatic/commons/compose.js +7 -0
- package/lib/src/use-lunatic/commons/compose.js.map +1 -0
- package/lib/src/use-lunatic/commons/create-map-pages.js +56 -0
- package/lib/src/use-lunatic/commons/create-map-pages.js.map +1 -0
- package/lib/src/use-lunatic/commons/execute-condition-filter.js +13 -0
- package/lib/src/use-lunatic/commons/execute-condition-filter.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.js +109 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +23 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.spec.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-required.js +13 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-required.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.js +34 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.spec.js +54 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.spec.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-components.js +38 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-components.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-from-state.js +20 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-from-state.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-iterations.js +36 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-iterations.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-management.js +9 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-management.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-missing-response.js +20 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-missing-response.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-pagination.js +10 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-pagination.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.js +133 -0
- package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.js.map +1 -0
- package/lib/src/use-lunatic/commons/fill-components/index.js +2 -0
- package/lib/src/use-lunatic/commons/fill-components/index.js.map +1 -0
- package/lib/src/use-lunatic/commons/get-compatible-vtl-expression.js +19 -0
- package/lib/src/use-lunatic/commons/get-compatible-vtl-expression.js.map +1 -0
- package/lib/src/use-lunatic/commons/get-components-from-state.js +36 -0
- package/lib/src/use-lunatic/commons/get-components-from-state.js.map +1 -0
- package/lib/src/use-lunatic/commons/getOverview.js +31 -0
- package/lib/src/use-lunatic/commons/getOverview.js.map +1 -0
- package/lib/src/use-lunatic/commons/index.js +10 -0
- package/lib/src/use-lunatic/commons/index.js.map +1 -0
- package/lib/src/use-lunatic/commons/is-First-last-page.js +8 -0
- package/lib/src/use-lunatic/commons/is-First-last-page.js.map +1 -0
- package/lib/src/use-lunatic/commons/is-paginated-loop.js +5 -0
- package/lib/src/use-lunatic/commons/is-paginated-loop.js.map +1 -0
- package/lib/src/use-lunatic/commons/is-roundabout.js +5 -0
- package/lib/src/use-lunatic/commons/is-roundabout.js.map +1 -0
- package/lib/src/use-lunatic/commons/page-navigation.js +93 -0
- package/lib/src/use-lunatic/commons/page-navigation.js.map +1 -0
- package/lib/src/use-lunatic/commons/page-navigation.spec.js +136 -0
- package/lib/src/use-lunatic/commons/page-navigation.spec.js.map +1 -0
- package/lib/src/use-lunatic/commons/page-tag.js +43 -0
- package/lib/src/use-lunatic/commons/page-tag.js.map +1 -0
- package/lib/src/use-lunatic/commons/page.js +35 -0
- package/lib/src/use-lunatic/commons/page.js.map +1 -0
- package/lib/src/use-lunatic/commons/use-components-from-state.js +15 -0
- package/lib/src/use-lunatic/commons/use-components-from-state.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +52 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/missing-behaviour.js +26 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/missing-behaviour.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/resizing-behaviour.js +60 -0
- package/lib/src/use-lunatic/commons/variables/behaviours/resizing-behaviour.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/get-questionnaire-data.js +49 -0
- package/lib/src/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.d.ts +4 -2
- package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.js +325 -0
- package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -0
- package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.spec.js +369 -0
- package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -0
- package/lib/src/use-lunatic/hooks/use-loop-variables.js +17 -0
- package/lib/src/use-lunatic/hooks/use-loop-variables.js.map +1 -0
- package/lib/src/use-lunatic/hooks/use-page-has-response.js +83 -0
- package/lib/src/use-lunatic/hooks/use-page-has-response.js.map +1 -0
- package/lib/src/use-lunatic/index.js +2 -0
- package/lib/src/use-lunatic/index.js.map +1 -0
- package/lib/src/use-lunatic/initial-state.js +45 -0
- package/lib/src/use-lunatic/initial-state.js.map +1 -0
- package/lib/src/use-lunatic/lunatic-context.js +44 -0
- package/lib/src/use-lunatic/lunatic-context.js.map +1 -0
- package/lib/src/use-lunatic/reducer/commons/auto-explore-loop.js +46 -0
- package/lib/src/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -0
- package/lib/src/use-lunatic/reducer/commons/index.js +3 -0
- package/lib/src/use-lunatic/reducer/commons/index.js.map +1 -0
- package/lib/src/use-lunatic/reducer/commons/resize-array-variable.js +21 -0
- package/lib/src/use-lunatic/reducer/commons/resize-array-variable.js.map +1 -0
- package/lib/src/use-lunatic/reducer/commons/validate-condition-filter.js +15 -0
- package/lib/src/use-lunatic/reducer/commons/validate-condition-filter.js.map +1 -0
- package/lib/src/use-lunatic/reducer/controls/check-base-control.js +33 -0
- package/lib/src/use-lunatic/reducer/controls/check-base-control.js.map +1 -0
- package/lib/src/use-lunatic/reducer/controls/check-roundabout-control.js +29 -0
- package/lib/src/use-lunatic/reducer/controls/check-roundabout-control.js.map +1 -0
- package/lib/src/use-lunatic/reducer/index.js +2 -0
- package/lib/src/use-lunatic/reducer/index.js.map +1 -0
- package/lib/src/use-lunatic/reducer/overview/overview-on-change.js +30 -0
- package/lib/src/use-lunatic/reducer/overview/overview-on-change.js.map +1 -0
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.js +59 -0
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-go-next-page.js +37 -0
- package/lib/src/use-lunatic/reducer/reduce-go-next-page.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-go-previous-page.js +30 -0
- package/lib/src/use-lunatic/reducer/reduce-go-previous-page.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-go-to-page.js +58 -0
- package/lib/src/use-lunatic/reducer/reduce-go-to-page.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-handle-change.js +20 -0
- package/lib/src/use-lunatic/reducer/reduce-handle-change.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-on-init.js +118 -0
- package/lib/src/use-lunatic/reducer/reduce-on-init.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-on-set-waiting.js +8 -0
- package/lib/src/use-lunatic/reducer/reduce-on-set-waiting.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reduce-update-state.js +11 -0
- package/lib/src/use-lunatic/reducer/reduce-update-state.js.map +1 -0
- package/lib/src/use-lunatic/reducer/reducer.js +30 -0
- package/lib/src/use-lunatic/reducer/reducer.js.map +1 -0
- package/lib/src/use-lunatic/replace-component-sequence.js +19 -0
- package/lib/src/use-lunatic/replace-component-sequence.js.map +1 -0
- package/lib/src/use-lunatic/type-source.js +2 -0
- package/lib/src/use-lunatic/type-source.js.map +1 -0
- package/lib/src/use-lunatic/type.js +2 -0
- package/lib/src/use-lunatic/type.js.map +1 -0
- package/lib/src/use-lunatic/use-lunatic.js +153 -0
- package/lib/src/use-lunatic/use-lunatic.js.map +1 -0
- package/lib/src/use-lunatic/use-lunatic.test.js +279 -0
- package/lib/src/use-lunatic/use-lunatic.test.js.map +1 -0
- package/lib/src/use-lunatic/use-suggesters.js +99 -0
- package/lib/src/use-lunatic/use-suggesters.js.map +1 -0
- package/lib/src/utils/array.js +90 -0
- package/lib/src/utils/array.js.map +1 -0
- package/lib/src/utils/array.spec.js +42 -0
- package/lib/src/utils/array.spec.js.map +1 -0
- package/lib/src/utils/constants/alphabet.js +2 -0
- package/lib/src/utils/constants/alphabet.js.map +1 -0
- package/lib/src/utils/constants/features.js +4 -0
- package/lib/src/utils/constants/features.js.map +1 -0
- package/lib/src/utils/constants/index.js +6 -0
- package/lib/src/utils/constants/index.js.map +1 -0
- package/lib/src/utils/constants/links.js +3 -0
- package/lib/src/utils/constants/links.js.map +1 -0
- package/lib/src/utils/constants/missing.js +3 -0
- package/lib/src/utils/constants/missing.js.map +1 -0
- package/lib/src/utils/constants/variable-status.js +6 -0
- package/lib/src/utils/constants/variable-status.js.map +1 -0
- package/lib/src/utils/constants/variable-types.js +2 -0
- package/lib/src/utils/constants/variable-types.js.map +1 -0
- package/lib/src/utils/dom.js +23 -0
- package/lib/src/utils/dom.js.map +1 -0
- package/lib/src/utils/env.js +13 -0
- package/lib/src/utils/env.js.map +1 -0
- package/lib/src/utils/function.js +5 -0
- package/lib/src/utils/function.js.map +1 -0
- package/lib/src/utils/idb-tools/clear-store.js +17 -0
- package/lib/src/utils/idb-tools/clear-store.js.map +1 -0
- package/lib/src/utils/idb-tools/create-db-opener.js +39 -0
- package/lib/src/utils/idb-tools/create-db-opener.js.map +1 -0
- package/lib/src/utils/idb-tools/create-open-db.js +20 -0
- package/lib/src/utils/idb-tools/create-open-db.js.map +1 -0
- package/lib/src/utils/idb-tools/get-entity.js +15 -0
- package/lib/src/utils/idb-tools/get-entity.js.map +1 -0
- package/lib/src/utils/idb-tools/get-idb.js +10 -0
- package/lib/src/utils/idb-tools/get-idb.js.map +1 -0
- package/lib/src/utils/idb-tools/idb-bulk-insert.js +76 -0
- package/lib/src/utils/idb-tools/idb-bulk-insert.js.map +1 -0
- package/lib/src/utils/idb-tools/idb-types.js +2 -0
- package/lib/src/utils/idb-tools/idb-types.js.map +1 -0
- package/lib/src/utils/idb-tools/index.js +8 -0
- package/lib/src/utils/idb-tools/index.js.map +1 -0
- package/lib/src/utils/idb-tools/insert-entity.js +15 -0
- package/lib/src/utils/idb-tools/insert-entity.js.map +1 -0
- package/lib/src/utils/idb-tools/open-db.js +11 -0
- package/lib/src/utils/idb-tools/open-db.js.map +1 -0
- package/lib/src/utils/idb-tools/open-or-create-db.js +34 -0
- package/lib/src/utils/idb-tools/open-or-create-db.js.map +1 -0
- package/lib/src/utils/is-element.js +6 -0
- package/lib/src/utils/is-element.js.map +1 -0
- package/lib/src/utils/is-object.js +7 -0
- package/lib/src/utils/is-object.js.map +1 -0
- package/lib/src/utils/logger.js +15 -0
- package/lib/src/utils/logger.js.map +1 -0
- package/lib/src/utils/number.js +32 -0
- package/lib/src/utils/number.js.map +1 -0
- package/lib/src/utils/number.spec.js +10 -0
- package/lib/src/utils/number.spec.js.map +1 -0
- package/lib/src/utils/object.js +20 -0
- package/lib/src/utils/object.js.map +1 -0
- package/lib/src/utils/store-tools/clear-store-data.js +7 -0
- package/lib/src/utils/store-tools/clear-store-data.js.map +1 -0
- package/lib/src/utils/store-tools/clear-store-info.js +7 -0
- package/lib/src/utils/store-tools/clear-store-info.js.map +1 -0
- package/lib/src/utils/store-tools/create/create.js +18 -0
- package/lib/src/utils/store-tools/create/create.js.map +1 -0
- package/lib/src/utils/store-tools/create/index.js +3 -0
- package/lib/src/utils/store-tools/create/index.js.map +1 -0
- package/lib/src/utils/store-tools/create/update-store-info.js +21 -0
- package/lib/src/utils/store-tools/create/update-store-info.js.map +1 -0
- package/lib/src/utils/store-tools/get-store-count.js +18 -0
- package/lib/src/utils/store-tools/get-store-count.js.map +1 -0
- package/lib/src/utils/store-tools/index.js +8 -0
- package/lib/src/utils/store-tools/index.js.map +1 -0
- package/lib/src/utils/store-tools/initStore.js +17 -0
- package/lib/src/utils/store-tools/initStore.js.map +1 -0
- package/lib/src/utils/store-tools/open-or-create-store.js +43 -0
- package/lib/src/utils/store-tools/open-or-create-store.js.map +1 -0
- package/lib/src/utils/store-tools/use-store-index.js +18 -0
- package/lib/src/utils/store-tools/use-store-index.js.map +1 -0
- package/lib/src/utils/suggester-workers/append-to-index/append.js +27 -0
- package/lib/src/utils/suggester-workers/append-to-index/append.js.map +1 -0
- package/lib/src/utils/suggester-workers/append-to-index/create-append-task.js +54 -0
- package/lib/src/utils/suggester-workers/append-to-index/create-append-task.js.map +1 -0
- package/lib/src/utils/suggester-workers/append-to-index/index.js +3 -0
- package/lib/src/utils/suggester-workers/append-to-index/index.js.map +1 -0
- package/lib/src/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.js +9 -0
- package/lib/src/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.js.map +1 -0
- package/lib/src/utils/suggester-workers/create-worker.js +62 -0
- package/lib/src/utils/suggester-workers/create-worker.js.map +1 -0
- package/lib/src/utils/suggester-workers/searching/compute-score.js +17 -0
- package/lib/src/utils/suggester-workers/searching/compute-score.js.map +1 -0
- package/lib/src/utils/suggester-workers/searching/meloto-order.js +41 -0
- package/lib/src/utils/suggester-workers/searching/meloto-order.js.map +1 -0
- package/lib/src/utils/suggester-workers/worker-path.js +23 -0
- package/lib/src/utils/suggester-workers/worker-path.js.map +1 -0
- package/lib/src/utils/to-number.js +13 -0
- package/lib/src/utils/to-number.js.map +1 -0
- package/lib/src/utils/variables.js +19 -0
- package/lib/src/utils/variables.js.map +1 -0
- package/lib/src/utils/variables.spec.js +79 -0
- package/lib/src/utils/variables.spec.js.map +1 -0
- package/lib/src/utils/vtl.js +93 -0
- package/lib/src/utils/vtl.js.map +1 -0
- package/package.json +3 -24
- package/scripts/build/add-workers-to-public.js +0 -0
- package/workers-release/lunatic-append-worker-0.3.0.js +1 -1
- package/workers-release/lunatic-label-worker-0.3.0.js +1 -1
- package/workers-release/lunatic-search-worker-0.3.0.js +1 -1
- package/lib/components/CheckboxBoolean/CheckboxBoolean.js +0 -65
- package/lib/components/CheckboxBoolean/CheckboxBoolean.spec.js +0 -71
- package/lib/components/CheckboxGroup/CheckboxGroup.js +0 -51
- package/lib/components/CheckboxGroup/CheckboxGroup.scss +0 -13
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.js +0 -44
- package/lib/components/CheckboxGroup/CustomCheckboxGroup.spec.js +0 -46
- package/lib/components/CheckboxOne/CheckboxOne.js +0 -38
- package/lib/components/CheckboxOne/CheckboxOne.scss +0 -19
- package/lib/components/CheckboxOne/CheckboxOne.spec.js +0 -53
- package/lib/components/Datepicker/Datepicker.js +0 -161
- package/lib/components/Datepicker/Datepicker.scss +0 -19
- package/lib/components/Datepicker/Datepicker.spec.js +0 -92
- package/lib/components/Datepicker/DatepickerField.js +0 -47
- package/lib/components/Datepicker/__snapshots__/Datepicker.spec.tsx.snap +0 -166
- package/lib/components/Dropdown/Dropdown.js +0 -63
- package/lib/components/Dropdown/Dropdown.scss +0 -38
- package/lib/components/Dropdown/Dropdown.spec.js +0 -49
- package/lib/components/Dropdown/__snapshots__/Dropdown.spec.tsx.snap +0 -85
- package/lib/components/Dropdown/helpers.js +0 -94
- package/lib/components/Dropdown/renderer/SimpleLabelRenderer.js +0 -34
- package/lib/components/Dropdown/renderer/SimpleOptionRenderer.js +0 -40
- package/lib/components/Duration/Duration.js +0 -104
- package/lib/components/Duration/Duration.scss +0 -9
- package/lib/components/Duration/durationUtils.js +0 -59
- package/lib/components/Duration/formatDuration.js +0 -27
- package/lib/components/Duration/formatDuration.spec.js +0 -38
- package/lib/components/Duration/getDurationFromValue.js +0 -62
- package/lib/components/FilterDescription/FilterDescription.js +0 -17
- package/lib/components/FilterDescription/FilterDescription.spec.js +0 -21
- package/lib/components/Input/Input.js +0 -79
- package/lib/components/Input/Input.scss +0 -42
- package/lib/components/Input/Input.spec.js +0 -84
- package/lib/components/Input/__snapshots__/Input.spec.tsx.snap +0 -36
- package/lib/components/InputNumber/InputNumber.js +0 -80
- package/lib/components/InputNumber/InputNumber.scss +0 -11
- package/lib/components/InputNumber/InputNumber.spec.js +0 -113
- package/lib/components/InputNumber/InputNumberThousand.js +0 -55
- package/lib/components/InputNumber/__snapshots__/InputNumber.spec.tsx.snap +0 -40
- package/lib/components/Loop/Loop.js +0 -130
- package/lib/components/Loop/constant.js +0 -10
- package/lib/components/LunaticComponents.js +0 -129
- package/lib/components/PairwiseLinks/PairwiseLinks.js +0 -54
- package/lib/components/Question/Question.js +0 -54
- package/lib/components/Radio/Radio.js +0 -41
- package/lib/components/Radio/Radio.scss +0 -19
- package/lib/components/RosterForLoop/RosterForLoop.js +0 -135
- package/lib/components/RosterForLoop/RosterForLoop.scss +0 -39
- package/lib/components/RosterForLoop/RosterForLoop.spec.js +0 -46
- package/lib/components/RosterForLoop/__snapshots__/RosterForLoop.spec.tsx.snap +0 -95
- package/lib/components/Roundabout/CustomRoundabout.js +0 -67
- package/lib/components/Roundabout/Roundabout.js +0 -35
- package/lib/components/Roundabout/Roundabout.scss +0 -13
- package/lib/components/Roundabout/RoundaboutItButton.js +0 -76
- package/lib/components/Roundabout/RoundaboutItButton.spec.js +0 -101
- package/lib/components/Roundabout/RoundaboutRedirect.js +0 -21
- package/lib/components/Roundabout/extra.js +0 -44
- package/lib/components/Roundabout/redirect.spec.js +0 -17
- package/lib/components/Roundabout/roundabout.spec.js +0 -71
- package/lib/components/Sequence/Sequence.js +0 -32
- package/lib/components/Sequence/Sequence.scss +0 -10
- package/lib/components/Subsequence/Subsequence.js +0 -27
- package/lib/components/Subsequence/Subsequence.spec.js +0 -59
- package/lib/components/Suggester/CustomSuggester.js +0 -122
- package/lib/components/Suggester/Suggester.js +0 -140
- package/lib/components/Suggester/Suggester.scss +0 -170
- package/lib/components/Suggester/SuggesterNotification.js +0 -60
- package/lib/components/Suggester/SuggesterStatus.js +0 -46
- package/lib/components/Suggester/SuggesterType.js +0 -5
- package/lib/components/Suggester/helpers.js +0 -50
- package/lib/components/Summary/Summary.js +0 -116
- package/lib/components/Switch/Switch.js +0 -107
- package/lib/components/Switch/switch.scss +0 -45
- package/lib/components/Table/Table.js +0 -65
- package/lib/components/Textarea/Textarea.js +0 -79
- package/lib/components/Textarea/Textarea.scss +0 -8
- package/lib/components/Textarea/Textarea.spec.js +0 -46
- package/lib/components/Textarea/__snapshots__/Textarea.spec.tsx.snap +0 -32
- package/lib/components/index.scss +0 -154
- package/lib/components/library.js +0 -53
- package/lib/components/shared/Button/Button.js +0 -45
- package/lib/components/shared/Button/Button.scss +0 -24
- package/lib/components/shared/Button/Button.spec.js +0 -85
- package/lib/components/shared/Button/IconButton.js +0 -32
- package/lib/components/shared/Button/IconButton.scss +0 -33
- package/lib/components/shared/Button/IconButton.spec.js +0 -101
- package/lib/components/shared/Button/__snapshots__/Button.spec.tsx.snap +0 -80
- package/lib/components/shared/Checkbox/CheckboxOption.js +0 -72
- package/lib/components/shared/Checkbox/CheckboxOption.scss +0 -19
- package/lib/components/shared/Checkbox/CheckboxOption.spec.js +0 -69
- package/lib/components/shared/Checkbox/getShortcutKey.js +0 -10
- package/lib/components/shared/Combobox/Combobox.js +0 -208
- package/lib/components/shared/Combobox/Combobox.scss +0 -206
- package/lib/components/shared/Combobox/Combobox.stories.js +0 -109
- package/lib/components/shared/Combobox/ComboboxContainer.js +0 -27
- package/lib/components/shared/Combobox/ComboboxContainer.spec.js +0 -43
- package/lib/components/shared/Combobox/ComboboxContent.js +0 -62
- package/lib/components/shared/Combobox/ComboboxContentBox.js +0 -22
- package/lib/components/shared/Combobox/ComboboxType.js +0 -5
- package/lib/components/shared/Combobox/Panel/ComboboxOption.js +0 -42
- package/lib/components/shared/Combobox/Panel/ComboboxOption.spec.js +0 -63
- package/lib/components/shared/Combobox/Panel/ComboboxOptionContainer.js +0 -56
- package/lib/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js +0 -26
- package/lib/components/shared/Combobox/Panel/ComboboxPanel.js +0 -44
- package/lib/components/shared/Combobox/Panel/ComboboxPanel.spec.js +0 -110
- package/lib/components/shared/Combobox/Panel/ComboboxPanelContainer.js +0 -26
- package/lib/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js +0 -57
- package/lib/components/shared/Combobox/Selection/ComboboxClearButton.js +0 -49
- package/lib/components/shared/Combobox/Selection/ComboboxClearButton.spec.js +0 -122
- package/lib/components/shared/Combobox/Selection/ComboboxInput.js +0 -57
- package/lib/components/shared/Combobox/Selection/ComboboxLabelSelection.js +0 -46
- package/lib/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js +0 -41
- package/lib/components/shared/Combobox/Selection/ComboboxSelection.js +0 -68
- package/lib/components/shared/Combobox/Selection/ComboboxSelection.spec.js +0 -68
- package/lib/components/shared/Combobox/Selection/__snapshots__/ComboboxSelection.spec.tsx.snap +0 -76
- package/lib/components/shared/Combobox/constants.js +0 -15
- package/lib/components/shared/Combobox/index.js +0 -1
- package/lib/components/shared/ComponentErrors/ComponentErrors.js +0 -50
- package/lib/components/shared/ComponentErrors/ComponentErrors.scss +0 -5
- package/lib/components/shared/ComponentErrors/ComponentErrors.spec.js +0 -44
- package/lib/components/shared/ComponentWrapper.js +0 -68
- package/lib/components/shared/Declarations/Declarations.js +0 -46
- package/lib/components/shared/Declarations/Declarations.scss +0 -42
- package/lib/components/shared/Declarations/Declarations.spec.js +0 -77
- package/lib/components/shared/Fieldset/Fieldset.js +0 -43
- package/lib/components/shared/Fieldset/Fieldset.scss +0 -5
- package/lib/components/shared/Fieldset/Fieldset.spec.js +0 -37
- package/lib/components/shared/HOC/slottableComponent.js +0 -51
- package/lib/components/shared/Icons/checkbox-checked-icon.js +0 -35
- package/lib/components/shared/Icons/checkbox-unchecked-icon.js +0 -35
- package/lib/components/shared/Icons/closed-icon.js +0 -32
- package/lib/components/shared/Icons/cross-icon.js +0 -32
- package/lib/components/shared/Icons/icon-props.js +0 -5
- package/lib/components/shared/Icons/index.js +0 -75
- package/lib/components/shared/Icons/load-icon.js +0 -32
- package/lib/components/shared/Icons/lunatic-icon.js +0 -17
- package/lib/components/shared/Icons/lunatic-icon.scss +0 -4
- package/lib/components/shared/Icons/network-icon.js +0 -32
- package/lib/components/shared/Icons/on-drag-icon.js +0 -32
- package/lib/components/shared/Icons/opened-icon.js +0 -32
- package/lib/components/shared/Icons/radio-checked-icon.js +0 -37
- package/lib/components/shared/Icons/radio-unchecked-icon.js +0 -35
- package/lib/components/shared/Label/Label.js +0 -35
- package/lib/components/shared/Label/Label.scss +0 -6
- package/lib/components/shared/Label/Label.spec.js +0 -45
- package/lib/components/shared/LabelDescription.js +0 -21
- package/lib/components/shared/MDLabel/MDLabel.js +0 -45
- package/lib/components/shared/MDLabel/MDLabel.spec.js +0 -103
- package/lib/components/shared/MDLabel/MDLabelLink.js +0 -75
- package/lib/components/shared/MDLabel/RouterLink.js +0 -27
- package/lib/components/shared/MDLabel/generateUniqueId.js +0 -1
- package/lib/components/shared/Missing/Missing.js +0 -84
- package/lib/components/shared/Missing/Missing.scss +0 -27
- package/lib/components/shared/Missing/Missing.spec.js +0 -81
- package/lib/components/shared/ModalControls/ModalControls.js +0 -84
- package/lib/components/shared/ModalControls/ModalControls.scss +0 -48
- package/lib/components/shared/ModalControls/ModalControls.spec.js +0 -69
- package/lib/components/shared/Notification.js +0 -29
- package/lib/components/shared/Radio/RadioGroup.js +0 -67
- package/lib/components/shared/Radio/RadioGroup.scss +0 -21
- package/lib/components/shared/Radio/RadioOption.js +0 -116
- package/lib/components/shared/Radio/RadioOption.spec.js +0 -87
- package/lib/components/shared/Table/Table.js +0 -22
- package/lib/components/shared/Table/Table.scss +0 -27
- package/lib/components/shared/Table/Table.spec.js +0 -23
- package/lib/components/shared/Table/TableHeader.js +0 -38
- package/lib/components/shared/Table/Tbody.js +0 -21
- package/lib/components/shared/Table/Tbody.spec.js +0 -32
- package/lib/components/shared/Table/Td.js +0 -27
- package/lib/components/shared/Table/Td.spec.js +0 -41
- package/lib/components/shared/Table/Th.js +0 -26
- package/lib/components/shared/Table/Th.spec.js +0 -44
- package/lib/components/shared/Table/Thead.js +0 -21
- package/lib/components/shared/Table/Thead.spec.js +0 -29
- package/lib/components/shared/Table/Tr.js +0 -22
- package/lib/components/shared/Table/Tr.spec.js +0 -39
- package/lib/components/shared/Table/index.js +0 -54
- package/lib/components/shared/VariableStatus/VariableStatus.js +0 -72
- package/lib/components/shared/VariableStatus/VariableStatus.scss +0 -39
- package/lib/components/shared/VariableStatus/VariableStatus.spec.js +0 -24
- package/lib/components/shared/VariableStatus/icons/edited.png +0 -0
- package/lib/components/shared/VariableStatus/icons/forced.png +0 -0
- package/lib/components/shared/suggester-loader-widget/dragger/dragger.js +0 -84
- package/lib/components/shared/suggester-loader-widget/dragger/dragger.scss +0 -8
- package/lib/components/shared/suggester-loader-widget/dragger/dragger.spec.js +0 -89
- package/lib/components/shared/suggester-loader-widget/dragger/index.js +0 -13
- package/lib/components/shared/suggester-loader-widget/index.js +0 -13
- package/lib/components/shared/suggester-loader-widget/is-network/index.js +0 -13
- package/lib/components/shared/suggester-loader-widget/is-network/is-network.js +0 -52
- package/lib/components/shared/suggester-loader-widget/is-network/is-network.spec.js +0 -34
- package/lib/components/shared/suggester-loader-widget/is-network/use-online-status.js +0 -45
- package/lib/components/shared/suggester-loader-widget/is-network/use-online-status.spec.js +0 -40
- package/lib/components/shared/suggester-loader-widget/loader-row.js +0 -103
- package/lib/components/shared/suggester-loader-widget/loader.js +0 -132
- package/lib/components/shared/suggester-loader-widget/progress.js +0 -40
- package/lib/components/shared/suggester-loader-widget/tools/action-tool.js +0 -29
- package/lib/components/shared/suggester-loader-widget/tools/index.js +0 -20
- package/lib/components/shared/suggester-loader-widget/tools/tools.js +0 -17
- package/lib/components/shared/suggester-loader-widget/widget-container.js +0 -43
- package/lib/components/shared/suggester-loader-widget/widget.js +0 -133
- package/lib/components/shared/suggester-loader-widget/widget.scss +0 -176
- package/lib/components/type.js +0 -5
- package/lib/constants/component-types.js +0 -7
- package/lib/constants/declarations.js +0 -20
- package/lib/constants/event-types.js +0 -19
- package/lib/constants/index.js +0 -60
- package/lib/constants/indexedDBStore.js +0 -24
- package/lib/constants/supported-preferences.js +0 -12
- package/lib/constants/value-types.js +0 -11
- package/lib/constants/variable-types.js +0 -10
- package/lib/css/components/Button.scss +0 -24
- package/lib/css/components/CheckboxGroup.scss +0 -13
- package/lib/css/components/CheckboxOne.scss +0 -19
- package/lib/css/components/CheckboxOption.scss +0 -19
- package/lib/css/components/Combobox.scss +0 -206
- package/lib/css/components/ComponentErrors.scss +0 -5
- package/lib/css/components/Datepicker.scss +0 -19
- package/lib/css/components/Declarations.scss +0 -42
- package/lib/css/components/Dragger.scss +0 -8
- package/lib/css/components/Dropdown.scss +0 -38
- package/lib/css/components/Duration.scss +0 -9
- package/lib/css/components/Fieldset.scss +0 -5
- package/lib/css/components/IconButton.scss +0 -38
- package/lib/css/components/Input.scss +0 -42
- package/lib/css/components/InputNumber.scss +0 -11
- package/lib/css/components/Label.scss +0 -6
- package/lib/css/components/Missing.scss +0 -27
- package/lib/css/components/ModalControls.scss +0 -48
- package/lib/css/components/RadioGroup.scss +0 -21
- package/lib/css/components/RosterForLoop.scss +0 -39
- package/lib/css/components/Roundabout.scss +0 -13
- package/lib/css/components/Sequence.scss +0 -10
- package/lib/css/components/Suggester.scss +0 -170
- package/lib/css/components/SuggesterWidget.scss +0 -176
- package/lib/css/components/Table.scss +0 -27
- package/lib/css/components/Textarea.scss +0 -8
- package/lib/css/components/VariableStatus.scss +0 -36
- package/lib/css/main.scss +0 -181
- package/lib/hooks/use-auto-focus.js +0 -26
- package/lib/hooks/use-ref-sync.js +0 -15
- package/lib/hooks/use-track-changes.js +0 -50
- package/lib/hooks/use-why-render.js +0 -20
- package/lib/hooks/useDocumentEvent.js +0 -23
- package/lib/hooks/useListKeyboardHandler.js +0 -24
- package/lib/hooks/useSuggesterInfo.js +0 -69
- package/lib/i18n/build-dictionary.js +0 -56
- package/lib/i18n/dictionary.js +0 -37
- package/lib/i18n/index.js +0 -26
- package/lib/i18n/inputNumberProps.js +0 -18
- package/lib/index.js +0 -41
- package/lib/insee.d.js +0 -1
- package/lib/src/components/shared/VariableStatus/VariableStatus.d.ts +0 -6
- package/lib/src/components/shared/VariableStatus/VariableStatus.spec.d.ts +0 -1
- package/lib/stories/behaviour/cleaning/cleaning.stories.js +0 -90
- package/lib/stories/behaviour/cleaning/source-loop.json +0 -130
- package/lib/stories/behaviour/cleaning/source.json +0 -151
- package/lib/stories/behaviour/controls/V2_Controles_BouclesLiees2_PasPageFin.json +0 -709
- package/lib/stories/behaviour/controls/boucles-n.json +0 -202
- package/lib/stories/behaviour/controls/controls-externes.json +0 -75
- package/lib/stories/behaviour/controls/controls-externes.stories.js +0 -60
- package/lib/stories/behaviour/controls/controls.stories.js +0 -98
- package/lib/stories/behaviour/controls/loop.json +0 -130
- package/lib/stories/behaviour/controls/simple-numeric.json +0 -1966
- package/lib/stories/behaviour/controls/simple.json +0 -666
- package/lib/stories/behaviour/missing/missing.stories.js +0 -90
- package/lib/stories/behaviour/missing/source.json +0 -822
- package/lib/stories/behaviour/others/V2_DeclarationsSimples.json +0 -964
- package/lib/stories/behaviour/others/V2_MinMaxSum_Boucles.json +0 -509
- package/lib/stories/behaviour/others/V2_QuestSimple_Boucles.json +0 -4354
- package/lib/stories/behaviour/others/V2_TCMRallyeGames.json +0 -2892
- package/lib/stories/behaviour/others/test-dylan.json +0 -558
- package/lib/stories/behaviour/others/test.stories.js +0 -87
- package/lib/stories/behaviour/paste/source.json +0 -44949
- package/lib/stories/behaviour/paste/test.stories.js +0 -83
- package/lib/stories/behaviour/performance/performance.stories.js +0 -47
- package/lib/stories/behaviour/performance/source.json +0 -172
- package/lib/stories/behaviour/resizing/resizing.stories.js +0 -90
- package/lib/stories/behaviour/resizing/source-resizing-cleaning.json +0 -171
- package/lib/stories/behaviour/resizing/source.json +0 -789
- package/lib/stories/behaviour/slots.stories.js +0 -64
- package/lib/stories/checkbox-boolean/checkboxBoolean.stories.js +0 -32
- package/lib/stories/checkbox-boolean/source.json +0 -58
- package/lib/stories/checkbox-group/checkbox-group.stories.js +0 -46
- package/lib/stories/checkbox-group/source.json +0 -402
- package/lib/stories/checkbox-group/sourceLoop.json +0 -83
- package/lib/stories/checkbox-one/checkboxOne.stories.js +0 -41
- package/lib/stories/checkbox-one/source.json +0 -52
- package/lib/stories/date-picker/data.json +0 -3
- package/lib/stories/date-picker/datepicker.stories.js +0 -38
- package/lib/stories/date-picker/source.json +0 -65
- package/lib/stories/declaration/data.json +0 -1
- package/lib/stories/declaration/input.stories.js +0 -34
- package/lib/stories/declaration/source.json +0 -84
- package/lib/stories/disabled/data.json +0 -32
- package/lib/stories/disabled/disabled.stories.js +0 -34
- package/lib/stories/disabled/source.json +0 -382
- package/lib/stories/dropdown/data.json +0 -16
- package/lib/stories/dropdown/dropdown.stories.js +0 -37
- package/lib/stories/dropdown/source.json +0 -141
- package/lib/stories/duration/duration.stories.js +0 -38
- package/lib/stories/duration/mois.json +0 -32
- package/lib/stories/duration/time.json +0 -32
- package/lib/stories/filter-description/filter-description.stories.js +0 -47
- package/lib/stories/filter-description/source-options.json +0 -81
- package/lib/stories/filter-description/source.json +0 -12
- package/lib/stories/input/data.json +0 -1
- package/lib/stories/input/input.stories.js +0 -34
- package/lib/stories/input/source.json +0 -35
- package/lib/stories/input-number/input-number.stories.js +0 -32
- package/lib/stories/input-number/source.json +0 -31
- package/lib/stories/loop/loop.stories.js +0 -46
- package/lib/stories/loop/roster-for-loop.stories.js +0 -126
- package/lib/stories/loop/source-bloc.json +0 -85
- package/lib/stories/loop/source-paginated.json +0 -113
- package/lib/stories/loop/source-roster.json +0 -114
- package/lib/stories/loop/source-with-header.json +0 -127
- package/lib/stories/markdown/markdown.stories.js +0 -32
- package/lib/stories/markdown/source.json +0 -40
- package/lib/stories/overview/data.json +0 -1
- package/lib/stories/overview/overview.stories.js +0 -35
- package/lib/stories/overview/source.json +0 -28
- package/lib/stories/overview/sourceWithHierarchy.json +0 -6298
- package/lib/stories/pairwise/data.json +0 -12
- package/lib/stories/pairwise/pairwise-links.stories.js +0 -134
- package/lib/stories/pairwise/source.json +0 -266
- package/lib/stories/question/question.stories.js +0 -28
- package/lib/stories/question/source.json +0 -220
- package/lib/stories/questionnaires/logement/data.json +0 -2686
- package/lib/stories/questionnaires/logement/logement.stories.js +0 -72
- package/lib/stories/questionnaires/logement/source-sequence.json +0 -34181
- package/lib/stories/questionnaires/logement/source-sum.json +0 -31806
- package/lib/stories/questionnaires/logement/source.json +0 -34191
- package/lib/stories/questionnaires/recensement/data.json +0 -12
- package/lib/stories/questionnaires/recensement/recensement.stories.js +0 -50
- package/lib/stories/questionnaires/recensement/source.json +0 -15190
- package/lib/stories/questionnaires/rp/data.json +0 -5
- package/lib/stories/questionnaires/rp/rp.stories.js +0 -35
- package/lib/stories/questionnaires/rp/source.json +0 -262
- package/lib/stories/questionnaires/simpsons/simpsons.stories.js +0 -547
- package/lib/stories/questionnaires/simpsons/source.json +0 -6296
- package/lib/stories/questionnaires2023/bySequence/source.json +0 -5054
- package/lib/stories/questionnaires2023/bySequence/ticWeb.stories.js +0 -62
- package/lib/stories/questionnaires2023/famille/famille.stories.js +0 -62
- package/lib/stories/questionnaires2023/famille/source.json +0 -50344
- package/lib/stories/questionnaires2023/simpsons/simpsons.stories.js +0 -62
- package/lib/stories/questionnaires2023/simpsons/source.json +0 -5176
- package/lib/stories/questionnaires2023/ticTel/source.json +0 -12888
- package/lib/stories/questionnaires2023/ticTel/ticWeb.stories.js +0 -62
- package/lib/stories/questionnaires2023/ticWeb/source.json +0 -11331
- package/lib/stories/questionnaires2023/ticWeb/ticWeb.stories.js +0 -62
- package/lib/stories/radio/radio.stories.js +0 -41
- package/lib/stories/radio/source.json +0 -51
- package/lib/stories/roundabout/data1.json +0 -25
- package/lib/stories/roundabout/data2.json +0 -25
- package/lib/stories/roundabout/roundabout.stories.js +0 -42
- package/lib/stories/roundabout/source.json +0 -286
- package/lib/stories/sequence/sequence.stories.js +0 -38
- package/lib/stories/sequence/source-declarations.json +0 -40
- package/lib/stories/sequence/source.json +0 -17
- package/lib/stories/suggester/SuggesterNotification.js +0 -26
- package/lib/stories/suggester/fakeReferentiel.json +0 -12
- package/lib/stories/suggester/source-option-responses.json +0 -145
- package/lib/stories/suggester/source.json +0 -398
- package/lib/stories/suggester/suggester-workers.stories.js +0 -249
- package/lib/stories/suggester/suggester.stories.js +0 -81
- package/lib/stories/summary/data.json +0 -32
- package/lib/stories/summary/source.json +0 -368
- package/lib/stories/summary/summary.stories.js +0 -35
- package/lib/stories/switch/README.md +0 -31
- package/lib/stories/switch/data-forced.json +0 -48
- package/lib/stories/switch/source.json +0 -80
- package/lib/stories/switch/switch.stories.js +0 -32
- package/lib/stories/table/data-roster.json +0 -1
- package/lib/stories/table/data.json +0 -1
- package/lib/stories/table/source-colspan.json +0 -314
- package/lib/stories/table/source-roster.json +0 -513
- package/lib/stories/table/source.json +0 -31
- package/lib/stories/table/table-dynamique.json +0 -67
- package/lib/stories/table/table.stories.js +0 -54
- package/lib/stories/textarea/data.json +0 -1
- package/lib/stories/textarea/source.json +0 -35
- package/lib/stories/textarea/textarea.stories.js +0 -34
- package/lib/stories/utils/custom-lunatic.scss +0 -28
- package/lib/stories/utils/default-arg-types.js +0 -21
- package/lib/stories/utils/options.js +0 -28
- package/lib/stories/utils/orchestrator.js +0 -319
- package/lib/stories/utils/orchestrator.scss +0 -54
- package/lib/stories/utils/overview.js +0 -53
- package/lib/stories/utils/overview.scss +0 -30
- package/lib/stories/utils/referentiel.js +0 -33
- package/lib/stories/utils/waiting/index.js +0 -13
- package/lib/stories/utils/waiting/preloader.svg +0 -1
- package/lib/stories/utils/waiting/waiting.js +0 -32
- package/lib/stories/utils/waiting/waiting.scss +0 -21
- package/lib/test.d.js +0 -3
- package/lib/type.utils.js +0 -5
- package/lib/use-lunatic/actions.js +0 -52
- package/lib/use-lunatic/commons/check-loops.js +0 -98
- package/lib/use-lunatic/commons/check-pager.js +0 -23
- package/lib/use-lunatic/commons/compile-controls.js +0 -177
- package/lib/use-lunatic/commons/component.js +0 -22
- package/lib/use-lunatic/commons/compose.js +0 -19
- package/lib/use-lunatic/commons/create-map-pages.js +0 -80
- package/lib/use-lunatic/commons/execute-condition-filter.js +0 -21
- package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +0 -118
- package/lib/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +0 -40
- package/lib/use-lunatic/commons/fill-components/fill-component-required.js +0 -23
- package/lib/use-lunatic/commons/fill-components/fill-component-value.js +0 -46
- package/lib/use-lunatic/commons/fill-components/fill-component-value.spec.js +0 -67
- package/lib/use-lunatic/commons/fill-components/fill-components.js +0 -54
- package/lib/use-lunatic/commons/fill-components/fill-from-state.js +0 -38
- package/lib/use-lunatic/commons/fill-components/fill-iterations.js +0 -45
- package/lib/use-lunatic/commons/fill-components/fill-management.js +0 -22
- package/lib/use-lunatic/commons/fill-components/fill-missing-response.js +0 -29
- package/lib/use-lunatic/commons/fill-components/fill-pagination.js +0 -23
- package/lib/use-lunatic/commons/fill-components/fill-specific-expression.js +0 -162
- package/lib/use-lunatic/commons/fill-components/index.js +0 -13
- package/lib/use-lunatic/commons/get-compatible-vtl-expression.js +0 -28
- package/lib/use-lunatic/commons/get-components-from-state.js +0 -46
- package/lib/use-lunatic/commons/getOverview.js +0 -39
- package/lib/use-lunatic/commons/index.js +0 -81
- package/lib/use-lunatic/commons/is-First-last-page.js +0 -17
- package/lib/use-lunatic/commons/is-paginated-loop.js +0 -10
- package/lib/use-lunatic/commons/is-roundabout.js +0 -10
- package/lib/use-lunatic/commons/page-navigation.js +0 -109
- package/lib/use-lunatic/commons/page-navigation.spec.js +0 -129
- package/lib/use-lunatic/commons/page-tag.js +0 -72
- package/lib/use-lunatic/commons/page.js +0 -51
- package/lib/use-lunatic/commons/use-components-from-state.js +0 -28
- package/lib/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +0 -58
- package/lib/use-lunatic/commons/variables/behaviours/missing-behaviour.js +0 -47
- package/lib/use-lunatic/commons/variables/behaviours/resizing-behaviour.js +0 -83
- package/lib/use-lunatic/commons/variables/get-questionnaire-data.js +0 -70
- package/lib/use-lunatic/commons/variables/lunatic-variables-store.js +0 -418
- package/lib/use-lunatic/commons/variables/lunatic-variables-store.spec.js +0 -397
- package/lib/use-lunatic/hooks/use-loop-variables.js +0 -26
- package/lib/use-lunatic/hooks/use-page-has-response.js +0 -128
- package/lib/use-lunatic/index.js +0 -13
- package/lib/use-lunatic/initial-state.js +0 -54
- package/lib/use-lunatic/lunatic-context.js +0 -72
- package/lib/use-lunatic/reducer/commons/auto-explore-loop.js +0 -56
- package/lib/use-lunatic/reducer/commons/index.js +0 -28
- package/lib/use-lunatic/reducer/commons/resize-array-variable.js +0 -31
- package/lib/use-lunatic/reducer/commons/validate-condition-filter.js +0 -29
- package/lib/use-lunatic/reducer/controls/check-base-control.js +0 -40
- package/lib/use-lunatic/reducer/controls/check-roundabout-control.js +0 -53
- package/lib/use-lunatic/reducer/index.js +0 -13
- package/lib/use-lunatic/reducer/overview/overview-on-change.js +0 -48
- package/lib/use-lunatic/reducer/overview/overview-on-init.js +0 -106
- package/lib/use-lunatic/reducer/reduce-go-next-page.js +0 -53
- package/lib/use-lunatic/reducer/reduce-go-previous-page.js +0 -47
- package/lib/use-lunatic/reducer/reduce-go-to-page.js +0 -70
- package/lib/use-lunatic/reducer/reduce-handle-change.js +0 -29
- package/lib/use-lunatic/reducer/reduce-on-init.js +0 -148
- package/lib/use-lunatic/reducer/reduce-on-set-waiting.js +0 -20
- package/lib/use-lunatic/reducer/reduce-update-state.js +0 -22
- package/lib/use-lunatic/reducer/reducer.js +0 -36
- package/lib/use-lunatic/replace-component-sequence.js +0 -30
- package/lib/use-lunatic/type-source.js +0 -5
- package/lib/use-lunatic/type.js +0 -5
- package/lib/use-lunatic/use-lunatic.js +0 -217
- package/lib/use-lunatic/use-lunatic.test.js +0 -352
- package/lib/use-lunatic/use-suggesters.js +0 -178
- package/lib/utils/array.js +0 -129
- package/lib/utils/array.spec.js +0 -35
- package/lib/utils/constants/alphabet.js +0 -7
- package/lib/utils/constants/features.js +0 -9
- package/lib/utils/constants/index.js +0 -60
- package/lib/utils/constants/links.js +0 -8
- package/lib/utils/constants/missing.js +0 -8
- package/lib/utils/constants/variable-status.js +0 -11
- package/lib/utils/constants/variable-types.js +0 -7
- package/lib/utils/dom.js +0 -27
- package/lib/utils/env.js +0 -17
- package/lib/utils/function.js +0 -10
- package/lib/utils/idb-tools/clear-store.js +0 -39
- package/lib/utils/idb-tools/create-db-opener.js +0 -53
- package/lib/utils/idb-tools/create-open-db.js +0 -28
- package/lib/utils/idb-tools/get-entity.js +0 -20
- package/lib/utils/idb-tools/get-idb.js +0 -12
- package/lib/utils/idb-tools/idb-bulk-insert.js +0 -126
- package/lib/utils/idb-tools/idb-types.js +0 -5
- package/lib/utils/idb-tools/index.js +0 -64
- package/lib/utils/idb-tools/insert-entity.js +0 -20
- package/lib/utils/idb-tools/open-db.js +0 -24
- package/lib/utils/idb-tools/open-or-create-db.js +0 -43
- package/lib/utils/is-element.js +0 -10
- package/lib/utils/is-object.js +0 -13
- package/lib/utils/logger.js +0 -43
- package/lib/utils/number.js +0 -42
- package/lib/utils/number.spec.js +0 -11
- package/lib/utils/object.js +0 -37
- package/lib/utils/store-tools/clear-store-data.js +0 -32
- package/lib/utils/store-tools/clear-store-info.js +0 -32
- package/lib/utils/store-tools/create/create.js +0 -50
- package/lib/utils/store-tools/create/index.js +0 -20
- package/lib/utils/store-tools/create/update-store-info.js +0 -26
- package/lib/utils/store-tools/get-store-count.js +0 -23
- package/lib/utils/store-tools/index.js +0 -54
- package/lib/utils/store-tools/initStore.js +0 -57
- package/lib/utils/store-tools/open-or-create-store.js +0 -51
- package/lib/utils/store-tools/use-store-index.js +0 -57
- package/lib/utils/suggester-workers/append-to-index/append.js +0 -78
- package/lib/utils/suggester-workers/append-to-index/append.worker.js +0 -32
- package/lib/utils/suggester-workers/append-to-index/create-append-task.js +0 -70
- package/lib/utils/suggester-workers/append-to-index/index.js +0 -20
- package/lib/utils/suggester-workers/append-to-index/prepare-entities.js +0 -87
- package/lib/utils/suggester-workers/append-to-index/store-messages.js +0 -44
- package/lib/utils/suggester-workers/commons-tokenizer/create-entity-tokenizer.js +0 -53
- package/lib/utils/suggester-workers/commons-tokenizer/create-fields-tokenizer.js +0 -76
- package/lib/utils/suggester-workers/commons-tokenizer/create-filter-stop-words.js +0 -35
- package/lib/utils/suggester-workers/commons-tokenizer/filters/compose-filters.js +0 -20
- package/lib/utils/suggester-workers/commons-tokenizer/filters/create-filter-stop-words.js +0 -35
- package/lib/utils/suggester-workers/commons-tokenizer/filters/create-filter-stop-words.spec.js +0 -15
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-accents.js +0 -18
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-accents.spec.js +0 -17
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-double.js +0 -24
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-double.spec.js +0 -24
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-length.js +0 -14
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-length.spec.js +0 -24
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-stemmer.js +0 -22
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-stemmer.spec.js +0 -17
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-synonyms.js +0 -52
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-synonyms.spec.js +0 -13
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-to-lower.js +0 -15
- package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-to-lower.spec.js +0 -15
- package/lib/utils/suggester-workers/commons-tokenizer/filters/index.js +0 -20
- package/lib/utils/suggester-workers/commons-tokenizer/filters/stop-words.js +0 -8
- package/lib/utils/suggester-workers/commons-tokenizer/get-regexp-from-pattern.js +0 -13
- package/lib/utils/suggester-workers/commons-tokenizer/get-stemmer.js +0 -22
- package/lib/utils/suggester-workers/commons-tokenizer/get-stemmer.spec.js +0 -11
- package/lib/utils/suggester-workers/commons-tokenizer/index.js +0 -69
- package/lib/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.js +0 -17
- package/lib/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.spec.js +0 -10
- package/lib/utils/suggester-workers/commons-tokenizer/soft-tokenizer.js +0 -11
- package/lib/utils/suggester-workers/create-worker.js +0 -60
- package/lib/utils/suggester-workers/find-best-label/find-best-label.js +0 -62
- package/lib/utils/suggester-workers/find-best-label/find-best-label.worker.js +0 -53
- package/lib/utils/suggester-workers/find-best-label/index.js +0 -1
- package/lib/utils/suggester-workers/find-best-label/tokenize.js +0 -44
- package/lib/utils/suggester-workers/find-best-label/tokenize.spec.js +0 -25
- package/lib/utils/suggester-workers/searching/compute-score.js +0 -30
- package/lib/utils/suggester-workers/searching/get-db.js +0 -47
- package/lib/utils/suggester-workers/searching/index.js +0 -13
- package/lib/utils/suggester-workers/searching/meloto-order.js +0 -54
- package/lib/utils/suggester-workers/searching/meloto-order.spec.js +0 -67
- package/lib/utils/suggester-workers/searching/order/create-alphanumeric-orderer.js +0 -27
- package/lib/utils/suggester-workers/searching/order/index.js +0 -24
- package/lib/utils/suggester-workers/searching/query-parser/index.js +0 -20
- package/lib/utils/suggester-workers/searching/query-parser/query-parser-soft.js +0 -11
- package/lib/utils/suggester-workers/searching/query-parser/query-parser-soft.spec.js +0 -27
- package/lib/utils/suggester-workers/searching/query-parser/query-parser-tokenized.js +0 -34
- package/lib/utils/suggester-workers/searching/resolve-query-parser.js +0 -56
- package/lib/utils/suggester-workers/searching/search-in-index.js +0 -21
- package/lib/utils/suggester-workers/searching/searching.js +0 -150
- package/lib/utils/suggester-workers/searching/searching.worker.js +0 -26
- package/lib/utils/suggester-workers/worker-path.js +0 -29
- package/lib/utils/to-number.js +0 -18
- package/lib/utils/variables.js +0 -26
- package/lib/utils/variables.spec.js +0 -74
- package/lib/utils/vtl.js +0 -100
- /package/lib/{components/Suggester/icons → icons}/alert-icon.svg +0 -0
- /package/lib/{components/Suggester/icons → icons}/wait-icon.svg +0 -0
- /package/lib/{components/Suggester/icons → icons}/warn-icon.svg +0 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { render, screen } from '@testing-library/react';
|
|
3
|
+
import userEvent from '@testing-library/user-event';
|
|
4
|
+
import { expect, it, describe, vi } from 'vitest';
|
|
5
|
+
import { IconButton } from './IconButton';
|
|
6
|
+
describe('Fab', () => {
|
|
7
|
+
it('renders children', () => {
|
|
8
|
+
render(_jsx(IconButton, { children: "Test Children" }));
|
|
9
|
+
expect(screen.getByText('Test Children')).toBeInTheDocument();
|
|
10
|
+
});
|
|
11
|
+
it('renders title', () => {
|
|
12
|
+
render(_jsx(IconButton, { title: "Test Title", children: "Test Children" }));
|
|
13
|
+
const button = screen.getByRole('button');
|
|
14
|
+
expect(button).toHaveAttribute('title', 'Test Title');
|
|
15
|
+
expect(button).toHaveAttribute('aria-label', 'Test Title');
|
|
16
|
+
});
|
|
17
|
+
it('calls onClick when clicked', async () => {
|
|
18
|
+
const handleClick = vi.fn();
|
|
19
|
+
render(_jsx(IconButton, { onClick: handleClick, children: "Test Children" }));
|
|
20
|
+
const button = screen.getByRole('button');
|
|
21
|
+
await userEvent.click(button);
|
|
22
|
+
expect(handleClick).toHaveBeenCalledTimes(1);
|
|
23
|
+
});
|
|
24
|
+
it('calls onKeyDown when a key is pressed', async () => {
|
|
25
|
+
const handleKeyDown = vi.fn();
|
|
26
|
+
render(_jsx(IconButton, { onKeyDown: handleKeyDown, children: "Test Children" }));
|
|
27
|
+
const button = screen.getByRole('button');
|
|
28
|
+
await userEvent.type(button, '{enter}');
|
|
29
|
+
expect(handleKeyDown).toHaveBeenCalledTimes(1);
|
|
30
|
+
});
|
|
31
|
+
it('is disabled when disabled prop is true', () => {
|
|
32
|
+
render(_jsx(IconButton, { disabled: true, children: "Test Children" }));
|
|
33
|
+
const button = screen.getByRole('button');
|
|
34
|
+
expect(button).toBeDisabled();
|
|
35
|
+
});
|
|
36
|
+
it('has custom className', () => {
|
|
37
|
+
render(_jsx(IconButton, { className: "test-class", children: "Test Children" }));
|
|
38
|
+
const button = screen.getByRole('button');
|
|
39
|
+
expect(button).toHaveClass('test-class');
|
|
40
|
+
});
|
|
41
|
+
it('has custom tabIndex', () => {
|
|
42
|
+
render(_jsx(IconButton, { tabIndex: 1, children: "Test Children" }));
|
|
43
|
+
const button = screen.getByRole('button');
|
|
44
|
+
expect(button).toHaveAttribute('tabIndex', '1');
|
|
45
|
+
});
|
|
46
|
+
it('has default props', () => {
|
|
47
|
+
render(_jsx(IconButton, {}));
|
|
48
|
+
const button = screen.getByRole('button');
|
|
49
|
+
expect(button).toHaveAttribute('title', 'Fab');
|
|
50
|
+
expect(button).not.toBeDisabled();
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
//# sourceMappingURL=IconButton.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.spec.js","sourceRoot":"","sources":["../../../../../src/components/shared/Button/IconButton.spec.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { CheckboxCheckedIcon, CheckboxUncheckedIcon } from '../Icons';
|
|
5
|
+
import KeyboardEventHandler from 'react-keyboard-event-handler';
|
|
6
|
+
import { slottableComponent } from '../HOC/slottableComponent';
|
|
7
|
+
import { Label } from '../Label/Label';
|
|
8
|
+
function LunaticCheckboxOption({ disabled, checked, id, onClick, label, description, codeModality, shortcut, invalid, }) {
|
|
9
|
+
const onClickOption = useCallback(function () {
|
|
10
|
+
onClick(!checked);
|
|
11
|
+
}, [checked, onClick]);
|
|
12
|
+
const handleKeyDown = useCallback(function (e) {
|
|
13
|
+
const { code } = e;
|
|
14
|
+
if (code === 'Space') {
|
|
15
|
+
onClickOption();
|
|
16
|
+
}
|
|
17
|
+
}, [onClickOption]);
|
|
18
|
+
const Icon = checked ? CheckboxCheckedIcon : CheckboxUncheckedIcon;
|
|
19
|
+
const labelId = `label-${id}`;
|
|
20
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { className: classnames('checkbox-modality', 'checkbox-modality-block', {
|
|
21
|
+
checked,
|
|
22
|
+
disabled,
|
|
23
|
+
}), children: _jsxs("span", { id: id, role: "checkbox", "aria-invalid": invalid, className: `lunatic-input-checkbox`, "aria-checked": checked, tabIndex: 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelId, children: [_jsx(Icon, {}), _jsxs(Label, { id: labelId, htmlFor: id, description: description, children: [codeModality && (_jsx("span", { className: "code-modality", children: codeModality.toUpperCase() })), label] })] }) }), shortcut && codeModality && (_jsx(KeyboardEventHandler, { handleKeys: [codeModality], onKeyEvent: (key, e) => {
|
|
24
|
+
e.preventDefault();
|
|
25
|
+
onClickOption();
|
|
26
|
+
}, handleFocusableElements: true }))] }));
|
|
27
|
+
}
|
|
28
|
+
export const CheckboxOption = slottableComponent('CheckboxOption', LunaticCheckboxOption);
|
|
29
|
+
//# sourceMappingURL=CheckboxOption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxOption.js","sourceRoot":"","sources":["../../../../../src/components/shared/Checkbox/CheckboxOption.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,WAAW,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AACtE,OAAO,oBAAoB,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAcvC,SAAS,qBAAqB,CAAC,EAC9B,QAAQ,EACR,OAAO,EACP,EAAE,EACF,OAAO,EACP,KAAK,EACL,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,OAAO,GACc;IACrB,MAAM,aAAa,GAAG,WAAW,CAChC;QACC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC,EACD,CAAC,OAAO,EAAE,OAAO,CAAC,CAClB,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAChC,UAAU,CAAmB;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACnB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACtB,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,EACD,CAAC,aAAa,CAAC,CACf,CAAC;IAEF,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,qBAAqB,CAAC;IACnE,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAE9B,OAAO,CACN,8BACC,cACC,SAAS,EAAE,UAAU,CAAC,mBAAmB,EAAE,yBAAyB,EAAE;oBACrE,OAAO;oBACP,QAAQ;iBACR,CAAC,YAEF,gBACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,kBACD,OAAO,EACrB,SAAS,EAAE,wBAAwB,kBACrB,OAAO,EACrB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,OAAO,aAExB,KAAC,IAAI,KAAG,EACR,MAAC,KAAK,IAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aACvD,YAAY,IAAI,CAChB,eAAM,SAAS,EAAC,eAAe,YAC7B,YAAY,CAAC,WAAW,EAAE,GACrB,CACP,EACA,KAAK,IACC,IACF,GACF,EACL,QAAQ,IAAI,YAAY,IAAI,CAC5B,KAAC,oBAAoB,IACpB,UAAU,EAAE,CAAC,YAAY,CAAC,EAC1B,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;oBACtB,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,aAAa,EAAE,CAAC;gBACjB,CAAC,EACD,uBAAuB,SACtB,CACF,IACC,CACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,gBAAgB,EAChB,qBAAqB,CACrB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { render, fireEvent } from '@testing-library/react';
|
|
3
|
+
import { CheckboxOption } from './CheckboxOption';
|
|
4
|
+
import { describe, it, expect, vi } from 'vitest';
|
|
5
|
+
describe('CheckboxOption', () => {
|
|
6
|
+
const props = {
|
|
7
|
+
id: 'checkbox',
|
|
8
|
+
onClick: vi.fn(),
|
|
9
|
+
checked: false,
|
|
10
|
+
disabled: false,
|
|
11
|
+
label: 'Option 1',
|
|
12
|
+
description: 'This is option 1',
|
|
13
|
+
codeModality: 'ctrl',
|
|
14
|
+
shortcut: false,
|
|
15
|
+
};
|
|
16
|
+
const defaultProps = {
|
|
17
|
+
id: 'test-checkbox',
|
|
18
|
+
onClick: vi.fn(),
|
|
19
|
+
label: 'Test checkbox',
|
|
20
|
+
};
|
|
21
|
+
it('renders the component correctly', () => {
|
|
22
|
+
const { getByRole, getByText } = render(_jsx(CheckboxOption, { ...props }));
|
|
23
|
+
const checkbox = getByRole('checkbox');
|
|
24
|
+
const label = getByText('Option 1');
|
|
25
|
+
expect(checkbox).toBeInTheDocument();
|
|
26
|
+
expect(checkbox).not.toBeChecked();
|
|
27
|
+
expect(label).toBeInTheDocument();
|
|
28
|
+
});
|
|
29
|
+
it('renders the label text', () => {
|
|
30
|
+
const { getByText } = render(_jsx(CheckboxOption, { ...defaultProps }));
|
|
31
|
+
expect(getByText(defaultProps.label)).toBeInTheDocument();
|
|
32
|
+
});
|
|
33
|
+
it('renders the component with the checked attribute', () => {
|
|
34
|
+
const { getByRole } = render(_jsx(CheckboxOption, { ...props, checked: true }));
|
|
35
|
+
const checkbox = getByRole('checkbox');
|
|
36
|
+
expect(checkbox).toBeChecked();
|
|
37
|
+
});
|
|
38
|
+
it('calls the onClick function when clicked', () => {
|
|
39
|
+
const { getByRole } = render(_jsx(CheckboxOption, { ...props }));
|
|
40
|
+
const checkbox = getByRole('checkbox');
|
|
41
|
+
fireEvent.click(checkbox);
|
|
42
|
+
expect(props.onClick).toHaveBeenCalledTimes(1);
|
|
43
|
+
expect(props.onClick).toHaveBeenCalledWith(true);
|
|
44
|
+
});
|
|
45
|
+
it('calls the onClick function when space key is pressed', () => {
|
|
46
|
+
const { getByRole } = render(_jsx(CheckboxOption, { ...defaultProps }));
|
|
47
|
+
const checkbox = getByRole('checkbox');
|
|
48
|
+
fireEvent.keyDown(checkbox, { code: 'Space' });
|
|
49
|
+
expect(defaultProps.onClick).toHaveBeenCalledWith(true);
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=CheckboxOption.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxOption.spec.js","sourceRoot":"","sources":["../../../../../src/components/shared/Checkbox/CheckboxOption.spec.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getShortcutKey.js","sourceRoot":"","sources":["../../../../../src/components/shared/Checkbox/getShortcutKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,MAAM,CAAC,MAAM,cAAc,GAAG,CAC7B,YAAoB,EACpB,QAAgB,EACP,EAAE,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import classnames from 'classnames';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { ComboboxContainer } from './ComboboxContainer';
|
|
5
|
+
import { ComboboxContent } from './ComboboxContent';
|
|
6
|
+
import { KEYBOARD_KEY_CODES } from './constants';
|
|
7
|
+
import { ComboboxPanel } from './Panel/ComboboxPanel';
|
|
8
|
+
import { ComboboxClearButton } from './Selection/ComboboxClearButton';
|
|
9
|
+
import { ComboboxSelection } from './Selection/ComboboxSelection';
|
|
10
|
+
import { between, forceInt } from '../../../utils/number';
|
|
11
|
+
import { Label } from '../Label/Label';
|
|
12
|
+
import { slottableComponent } from '../HOC/slottableComponent';
|
|
13
|
+
const EMPTY_SEARCH = '';
|
|
14
|
+
function LunaticComboBox({ className, classNamePrefix, classStyle = 'default-style', placeholder = 'Commencez votre saisie...', editable = false, disabled, readOnly, id, optionRenderer, labelRenderer, onChange, onSelect, value, options, messageError, search: searchProps = EMPTY_SEARCH, getOptionValue = getDefaultOptionValue, label, description, errors, onBlur, }) {
|
|
15
|
+
const [expanded, setExpanded] = useState(false);
|
|
16
|
+
const [focused, setFocused] = useState(false);
|
|
17
|
+
const [search, setSearch] = useState(searchProps ?? '');
|
|
18
|
+
const selectedIndex = getIndexFromOptions(options, value, getOptionValue);
|
|
19
|
+
const labelId = `label-${id}`;
|
|
20
|
+
const handleFocus = () => {
|
|
21
|
+
if (disabled || readOnly) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
setExpanded(true);
|
|
25
|
+
setFocused(true);
|
|
26
|
+
};
|
|
27
|
+
const handleBlur = () => {
|
|
28
|
+
if (disabled || readOnly) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
onBlur?.();
|
|
32
|
+
setExpanded(false);
|
|
33
|
+
setFocused(false);
|
|
34
|
+
};
|
|
35
|
+
const handleSelect = (index, close = true) => {
|
|
36
|
+
const indexNumber = between(forceInt(index), 0, options.length);
|
|
37
|
+
const option = options[indexNumber];
|
|
38
|
+
if (close) {
|
|
39
|
+
setExpanded(false);
|
|
40
|
+
}
|
|
41
|
+
onSelect(getOptionValue(option));
|
|
42
|
+
};
|
|
43
|
+
const handleChange = (s) => {
|
|
44
|
+
setSearch(s ?? '');
|
|
45
|
+
onChange?.(s);
|
|
46
|
+
};
|
|
47
|
+
const handleClear = () => {
|
|
48
|
+
setSearch('');
|
|
49
|
+
setExpanded(false);
|
|
50
|
+
onChange?.(EMPTY_SEARCH);
|
|
51
|
+
onSelect(null);
|
|
52
|
+
};
|
|
53
|
+
const onKeyDown = (key) => {
|
|
54
|
+
const length = options.length;
|
|
55
|
+
switch (key) {
|
|
56
|
+
case KEYBOARD_KEY_CODES.Tab:
|
|
57
|
+
case KEYBOARD_KEY_CODES.Escape:
|
|
58
|
+
setExpanded(false);
|
|
59
|
+
return;
|
|
60
|
+
case KEYBOARD_KEY_CODES.ArrowDown:
|
|
61
|
+
handleSelect((selectedIndex ?? -1) + 1, false);
|
|
62
|
+
return;
|
|
63
|
+
case KEYBOARD_KEY_CODES.ArrowUp:
|
|
64
|
+
handleSelect((selectedIndex ?? length) - 1, false);
|
|
65
|
+
return;
|
|
66
|
+
case KEYBOARD_KEY_CODES.Home:
|
|
67
|
+
handleSelect(0, false);
|
|
68
|
+
return;
|
|
69
|
+
case KEYBOARD_KEY_CODES.End:
|
|
70
|
+
handleSelect(length - 1, false);
|
|
71
|
+
return;
|
|
72
|
+
case KEYBOARD_KEY_CODES.Enter:
|
|
73
|
+
setExpanded((v) => !v);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
const showClearButton = !disabled || !readOnly;
|
|
78
|
+
if (messageError) {
|
|
79
|
+
return (_jsx("div", { className: "lunatic-combo-box-message-error", children: messageError }));
|
|
80
|
+
}
|
|
81
|
+
return (_jsxs(ComboboxContainer, { id: id, className: className, classStyle: classStyle, classNamePrefix: classNamePrefix, errors: errors, children: [_jsx(Label, { htmlFor: id, id: labelId, description: description, children: label }), _jsxs(ComboboxContent, { focused: focused, onFocus: handleFocus, onBlur: handleBlur, onKeyDown: onKeyDown, classNamePrefix: classNamePrefix, children: [_jsx(ComboboxSelection, { labelRenderer: labelRenderer, placeholder: placeholder, search: search, expanded: expanded, id: id, labelId: labelId, disabled: disabled, readOnly: readOnly, focused: focused, editable: editable, selectedIndex: selectedIndex, options: options, onChange: handleChange, classNamePrefix: classNamePrefix, invalid: !!errors }), _jsx(ComboboxPanel, { optionRenderer: optionRenderer, options: options, focused: focused, selectedIndex: selectedIndex, expanded: expanded, id: id, search: search, onSelect: handleSelect })] }), showClearButton && (_jsx(ComboboxClearButton, { className: classnames({ focused }), search: search, onClick: handleClear, editable: editable }))] }));
|
|
82
|
+
}
|
|
83
|
+
function getIndexFromOptions(options, value, getOptionValue) {
|
|
84
|
+
if (!Array.isArray(options)) {
|
|
85
|
+
return undefined;
|
|
86
|
+
}
|
|
87
|
+
return options.map(getOptionValue).findIndex((v) => v === value);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Extract value from an option item
|
|
91
|
+
*/
|
|
92
|
+
function getDefaultOptionValue(option = { value: '' }) {
|
|
93
|
+
const { id, value } = option;
|
|
94
|
+
return id || value;
|
|
95
|
+
}
|
|
96
|
+
export const Combobox = slottableComponent('Combobox', LunaticComboBox);
|
|
97
|
+
//# sourceMappingURL=Combobox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Combobox.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/Combobox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import {} from '@storybook/react';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { Combobox } from './Combobox';
|
|
5
|
+
const meta = {
|
|
6
|
+
title: 'Components/Shared/ComboBox',
|
|
7
|
+
component: Combobox,
|
|
8
|
+
};
|
|
9
|
+
export default meta;
|
|
10
|
+
const LabelRenderer = ({ option, placeholder, }) => _jsx(_Fragment, { children: option?.label ?? placeholder });
|
|
11
|
+
const Template = (args) => {
|
|
12
|
+
const [localValue, setLocalValue] = useState(args.value);
|
|
13
|
+
const [search, setSearch] = useState('');
|
|
14
|
+
// Simulate a search
|
|
15
|
+
const options = search
|
|
16
|
+
? args.options.filter((v) => v.value.toLowerCase().includes(search.toLowerCase()))
|
|
17
|
+
: args.options;
|
|
18
|
+
return (_jsxs("fieldset", { children: [_jsxs("legend", { children: ["Select an option : ", localValue] }), _jsx(Combobox, { ...args, value: localValue, onSelect: (v) => {
|
|
19
|
+
setLocalValue(v);
|
|
20
|
+
args.onSelect?.(v);
|
|
21
|
+
}, onChange: (v) => {
|
|
22
|
+
setSearch(v);
|
|
23
|
+
args.onChange?.(v);
|
|
24
|
+
}, options: options, labelRenderer: LabelRenderer, optionRenderer: LabelRenderer }), _jsx("button", { onClick: () => setLocalValue('4'), children: "S\u00E9lectionner paris" })] }));
|
|
25
|
+
};
|
|
26
|
+
export const Default = {
|
|
27
|
+
render: (args) => _jsx(Template, { ...args }),
|
|
28
|
+
args: {
|
|
29
|
+
value: '1',
|
|
30
|
+
options: [
|
|
31
|
+
{ id: '1', value: 'Option 1', label: _jsx("strong", { children: "Option 1" }) },
|
|
32
|
+
{ id: '2', value: 'Option 2', label: 'Option 2' },
|
|
33
|
+
{ id: '3', value: 'Option 3', label: 'Option 3' },
|
|
34
|
+
{ id: 'paris', value: 'Paris', label: 'Paris' },
|
|
35
|
+
{ id: 'toulouse', value: 'Toulouse', label: 'Toulouse' },
|
|
36
|
+
],
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
export const Editable = {
|
|
40
|
+
...Default,
|
|
41
|
+
args: {
|
|
42
|
+
...Default.parameters,
|
|
43
|
+
editable: true,
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=Combobox.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Combobox.stories.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/Combobox.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA4B,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,IAAI,GAA0B;IACnC,KAAK,EAAE,4BAA4B;IACnC,SAAS,EAAE,QAAQ;CACnB,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,MAAM,aAAa,GAAG,CAAC,EACtB,MAAM,EACN,WAAW,GAIX,EAAE,EAAE,CAAC,4BAAG,MAAM,EAAE,KAAK,IAAI,WAAW,GAAI,CAAC;AAE1C,MAAM,QAAQ,GAAoB,CAAC,IAAI,EAAE,EAAE;IAC1C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IACxD,oBAAoB;IACpB,MAAM,OAAO,GAAG,MAAM;QACrB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CACpD;QACF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IAEhB,OAAO,CACN,+BACC,oDAA4B,UAAU,IAAU,EAChD,KAAC,QAAQ,OACJ,IAAI,EACR,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACf,aAAa,CAAC,CAAC,CAAC,CAAC;oBACjB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAC,EACD,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACf,SAAS,CAAC,CAAC,CAAC,CAAC;oBACb,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAC,EACD,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,aAAa,GAC5B,EACF,iBAAQ,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,wCAA6B,IAC5D,CACX,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAA8B;IACjD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,QAAQ,OAAK,IAAI,GAAI;IACxC,IAAI,EAAE;QACL,KAAK,EAAE,GAAG;QACV,OAAO,EAAE;YACR,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,wCAAyB,EAAE;YAChE,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;YACjD,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;YACjD,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YAC/C,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;SACxD;KACD;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAA8B;IAClD,GAAG,OAAO;IACV,IAAI,EAAE;QACL,GAAG,OAAO,CAAC,UAAU;QACrB,QAAQ,EAAE,IAAI;KACd;CACD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import classnames from 'classnames';
|
|
3
|
+
import { slottableComponent } from '../HOC/slottableComponent';
|
|
4
|
+
import { ComponentErrors } from '../ComponentErrors/ComponentErrors';
|
|
5
|
+
export const ComboboxContainer = slottableComponent('ComboboxContainer', ({ children, className, classNamePrefix, id, classStyle = 'default-style', errors, }) => (_jsxs("div", { id: `${classNamePrefix ?? 'lunatic'}-combo-box-container-${id}`, className: classnames(className, `${classNamePrefix ?? 'lunatic'}-combo-box-container`, `${classNamePrefix ?? 'lunatic'}-suggester-${classStyle}`, `lunatic-suggester-default-style`, classStyle), children: [children, errors && _jsx(ComponentErrors, { errors: errors })] })));
|
|
6
|
+
//# sourceMappingURL=ComboboxContainer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxContainer.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/ComboboxContainer.tsx"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAUrE,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAClD,mBAAmB,EACnB,CAAC,EACA,QAAQ,EACR,SAAS,EACT,eAAe,EACf,EAAE,EACF,UAAU,GAAG,eAAe,EAC5B,MAAM,GACN,EAAE,EAAE,CAAC,CACL,eACC,EAAE,EAAE,GAAG,eAAe,IAAI,SAAS,wBAAwB,EAAE,EAAE,EAC/D,SAAS,EAAE,UAAU,CACpB,SAAS,EACT,GAAG,eAAe,IAAI,SAAS,sBAAsB,EACrD,GAAG,eAAe,IAAI,SAAS,cAAc,UAAU,EAAE,EACzD,iCAAiC,EACjC,UAAU,CACV,aAEA,QAAQ,EAER,MAAM,IAAI,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IACzC,CACN,CACD,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { ComboboxContainer } from './ComboboxContainer';
|
|
4
|
+
import { expect, it, describe } from 'vitest';
|
|
5
|
+
describe('ComboBoxContainer', () => {
|
|
6
|
+
it('renders with default styles when no classStyle prop is provided', () => {
|
|
7
|
+
const { container } = render(_jsx(ComboboxContainer, { id: "test-id", children: "Content" }));
|
|
8
|
+
expect(container.firstChild).toHaveClass('default-style');
|
|
9
|
+
});
|
|
10
|
+
it('renders with additional styles when classStyle prop is provided', () => {
|
|
11
|
+
const { container } = render(_jsx(ComboboxContainer, { id: "test-id", classStyle: "custom-style", children: "Content" }));
|
|
12
|
+
expect(container.firstChild).toHaveClass('lunatic-combo-box-container');
|
|
13
|
+
expect(container.firstChild).toHaveClass('custom-style');
|
|
14
|
+
});
|
|
15
|
+
it('renders children inside the component', () => {
|
|
16
|
+
const { getByText } = render(_jsx(ComboboxContainer, { id: "test-id", children: "Content" }));
|
|
17
|
+
expect(getByText('Content')).toBeInTheDocument();
|
|
18
|
+
});
|
|
19
|
+
it('passes className prop to the component', () => {
|
|
20
|
+
const { container } = render(_jsx(ComboboxContainer, { id: "test-id", className: "test-class", children: "Content" }));
|
|
21
|
+
expect(container.firstChild).toHaveClass('test-class');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=ComboboxContainer.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxContainer.spec.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/ComboboxContainer.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE9C,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,iBAAiB,IAAC,EAAE,EAAC,SAAS,wBAA4B,CAC3D,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,iBAAiB,IAAC,EAAE,EAAC,SAAS,EAAC,UAAU,EAAC,cAAc,wBAErC,CACpB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,6BAA6B,CAAC,CAAC;QACxE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAChD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,iBAAiB,IAAC,EAAE,EAAC,SAAS,wBAA4B,CAC3D,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QACjD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,iBAAiB,IAAC,EAAE,EAAC,SAAS,EAAC,SAAS,EAAC,YAAY,wBAElC,CACpB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React, { useCallback, useRef } from 'react';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { KEYBOARD_KEY_CODES } from './constants';
|
|
5
|
+
import { ComboboxContentBox } from './ComboboxContentBox';
|
|
6
|
+
import useDocumentEvent from '../../../hooks/useDocumentEvent';
|
|
7
|
+
export function ComboboxContent({ children, focused, onFocus, onBlur, onKeyDown, classNamePrefix, }) {
|
|
8
|
+
const ref = useRef(null);
|
|
9
|
+
const onClick = useCallback((e) => {
|
|
10
|
+
if (!ref.current?.contains(e.target) && onBlur) {
|
|
11
|
+
onBlur();
|
|
12
|
+
}
|
|
13
|
+
}, [ref, onBlur]);
|
|
14
|
+
useDocumentEvent('mousedown', onClick);
|
|
15
|
+
const handleKeyDown = useCallback(function (e) {
|
|
16
|
+
const { key } = e;
|
|
17
|
+
e.stopPropagation();
|
|
18
|
+
switch (key) {
|
|
19
|
+
case KEYBOARD_KEY_CODES.Escape:
|
|
20
|
+
case KEYBOARD_KEY_CODES.Enter:
|
|
21
|
+
case KEYBOARD_KEY_CODES.Tab:
|
|
22
|
+
ref.current?.focus();
|
|
23
|
+
break;
|
|
24
|
+
default:
|
|
25
|
+
// e.preventDefault();
|
|
26
|
+
}
|
|
27
|
+
onKeyDown(key);
|
|
28
|
+
}, [onKeyDown]);
|
|
29
|
+
return (_jsx(ComboboxContentBox, { classNamePrefix: classNamePrefix, focused: focused, children: _jsx("div", { className: classnames(`${classNamePrefix ?? 'lunatic'}-combo-box-content`, {
|
|
30
|
+
focused,
|
|
31
|
+
}), ref: ref, tabIndex: 0, onFocus: onFocus, onClick: onFocus, onKeyDown: handleKeyDown, children: children }) }));
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=ComboboxContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxContent.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/ComboboxContent.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,EAA0B,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAU/D,MAAM,UAAU,eAAe,CAAC,EAC/B,QAAQ,EACR,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,eAAe,GACR;IACP,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEzC,MAAM,OAAO,GAAG,WAAW,CAC1B,CAAC,CAAQ,EAAE,EAAE;QACZ,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAqB,CAAC,IAAI,MAAM,EAAE,CAAC;YAC/D,MAAM,EAAE,CAAC;QACV,CAAC;IACF,CAAC,EACD,CAAC,GAAG,EAAE,MAAM,CAAC,CACb,CAAC;IAEF,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAEvC,MAAM,aAAa,GAAG,WAAW,CAChC,UAAU,CAAgB;QACzB,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,QAAQ,GAAG,EAAE,CAAC;YACb,KAAK,kBAAkB,CAAC,MAAM,CAAC;YAC/B,KAAK,kBAAkB,CAAC,KAAK,CAAC;YAC9B,KAAK,kBAAkB,CAAC,GAAG;gBAC1B,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;gBACrB,MAAM;YACP,QAAQ;YACR,sBAAsB;QACvB,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC,EACD,CAAC,SAAS,CAAC,CACX,CAAC;IAEF,OAAO,CACN,KAAC,kBAAkB,IAAC,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,YACrE,cACC,SAAS,EAAE,UAAU,CACpB,GAAG,eAAe,IAAI,SAAS,oBAAoB,EACnD;gBACC,OAAO;aACP,CACD,EACD,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,aAAa,YAEvB,QAAQ,GACJ,GACc,CACrB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React, {} from 'react';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { slottableComponent } from '../HOC/slottableComponent';
|
|
5
|
+
export const ComboboxContentBox = slottableComponent('ComboboxContentBox', ({ children, classNamePrefix, focused }) => (_jsx("div", { className: classnames(`${classNamePrefix ?? 'lunatic'}-combo-box`, {
|
|
6
|
+
focused,
|
|
7
|
+
}), children: children })));
|
|
8
|
+
//# sourceMappingURL=ComboboxContentBox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxContentBox.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/ComboboxContentBox.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAA0B,MAAM,OAAO,CAAC;AACtD,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAO/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,kBAAkB,CACnD,oBAAoB,EACpB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAC3C,cACC,SAAS,EAAE,UAAU,CAAC,GAAG,eAAe,IAAI,SAAS,YAAY,EAAE;QAClE,OAAO;KACP,CAAC,YAED,QAAQ,GACJ,CACN,CACD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxType.js","sourceRoot":"","sources":["../../../../../src/components/shared/Combobox/ComboboxType.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import classnames from 'classnames';
|
|
3
|
+
import { slottableComponent } from '../../HOC/slottableComponent';
|
|
4
|
+
export const ComboboxOption = slottableComponent('ComboboxOption', ({ option, selected }) => {
|
|
5
|
+
const { id, value, label } = option;
|
|
6
|
+
if (label && typeof label === 'string' && label.length) {
|
|
7
|
+
return (_jsxs("div", { className: classnames('lunatic-combo-box-option', { selected }), children: [_jsx("span", { className: "id", children: id || value }), _jsx("span", { children: " - " }), _jsx("span", { className: "label", children: label })] }));
|
|
8
|
+
}
|
|
9
|
+
return (_jsx("div", { className: classnames('lunatic-combo-box-option', { selected }), children: _jsx("span", { className: "id", children: id }) }));
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=ComboboxOption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxOption.js","sourceRoot":"","sources":["../../../../../../src/components/shared/Combobox/Panel/ComboboxOption.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAOlE,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,gBAAgB,EAChB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAS,EAAE,EAAE;IAC/B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEpC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACxD,OAAO,CACN,eAAK,SAAS,EAAE,UAAU,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,CAAC,aACnE,eAAM,SAAS,EAAC,IAAI,YAAE,EAAE,IAAI,KAAK,GAAQ,EACzC,iCAAgB,EAChB,eAAM,SAAS,EAAC,OAAO,YAAE,KAAK,GAAQ,IACjC,CACN,CAAC;IACH,CAAC;IACD,OAAO,CACN,cAAK,SAAS,EAAE,UAAU,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,CAAC,YACnE,eAAM,SAAS,EAAC,IAAI,YAAE,EAAE,GAAQ,GAC3B,CACN,CAAC;AACH,CAAC,CACD,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { ComboboxOption } from './ComboboxOption';
|
|
4
|
+
import { describe, it, expect } from 'vitest';
|
|
5
|
+
describe('DefaultOptionRenderer', () => {
|
|
6
|
+
it('renders without label', () => {
|
|
7
|
+
const option = { id: '1', value: 'Value' };
|
|
8
|
+
const { getByText, queryByText } = render(_jsx(ComboboxOption, { option: option }));
|
|
9
|
+
const idElement = getByText(option.id);
|
|
10
|
+
const labelElement = queryByText('-');
|
|
11
|
+
expect(idElement).toBeInTheDocument();
|
|
12
|
+
expect(labelElement).toBeNull();
|
|
13
|
+
});
|
|
14
|
+
it('renders with label', () => {
|
|
15
|
+
const option = { id: '1', value: 'Value', label: 'Label' };
|
|
16
|
+
const { getByText } = render(_jsx(ComboboxOption, { option: option }));
|
|
17
|
+
const idElement = getByText(option.id);
|
|
18
|
+
const labelElement = getByText(option.label);
|
|
19
|
+
expect(idElement).toBeInTheDocument();
|
|
20
|
+
expect(labelElement).toBeInTheDocument();
|
|
21
|
+
});
|
|
22
|
+
it('renders with selected class', () => {
|
|
23
|
+
const option = { id: '1', value: 'Value', label: 'Label' };
|
|
24
|
+
const { container } = render(_jsx(ComboboxOption, { option: option, selected: true }));
|
|
25
|
+
expect(container.firstChild).toHaveClass('selected');
|
|
26
|
+
});
|
|
27
|
+
it('renders without selected class', () => {
|
|
28
|
+
const option = { id: '1', value: 'Value', label: 'Label' };
|
|
29
|
+
const { container } = render(_jsx(ComboboxOption, { option: option }));
|
|
30
|
+
expect(container.firstChild).not.toHaveClass('selected');
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=ComboboxOption.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxOption.spec.js","sourceRoot":"","sources":["../../../../../../src/components/shared/Combobox/Panel/ComboboxOption.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE9C,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC3C,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CACxC,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,CAClC,CAAC;QACF,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACtC,MAAM,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC7B,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACtC,MAAM,CAAC,YAAY,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACtC,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAG,CAAC,CAAC;QAC1E,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC,CAAC;QACjE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useRef, useEffect, useCallback } from 'react';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
function getMin(rect) {
|
|
5
|
+
const { top } = rect;
|
|
6
|
+
return top;
|
|
7
|
+
}
|
|
8
|
+
function getMax(rect) {
|
|
9
|
+
const { top, height } = rect;
|
|
10
|
+
return top + height;
|
|
11
|
+
}
|
|
12
|
+
function isVisible(optionRect, parentRect) {
|
|
13
|
+
const min = Math.min(getMin(optionRect), getMin(parentRect));
|
|
14
|
+
const max = Math.max(getMax(optionRect), getMax(parentRect));
|
|
15
|
+
return max - min < optionRect.height + parentRect.height;
|
|
16
|
+
}
|
|
17
|
+
export function ComboboxOptionContainer({ children, index, selected, onSelect, }) {
|
|
18
|
+
const ref = useRef(null);
|
|
19
|
+
const onClick = useCallback((e) => {
|
|
20
|
+
e.stopPropagation();
|
|
21
|
+
e.preventDefault();
|
|
22
|
+
onSelect(index);
|
|
23
|
+
}, [onSelect, index]);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
const { current } = ref;
|
|
26
|
+
if (current && selected && current.parentNode) {
|
|
27
|
+
const oRect = current.getBoundingClientRect();
|
|
28
|
+
const pRect = current.parentNode.getBoundingClientRect();
|
|
29
|
+
if (!isVisible(oRect, pRect)) {
|
|
30
|
+
current.scrollIntoView();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}, [ref, selected]);
|
|
34
|
+
return (_jsx("li", { className: classnames('lunatic-combo-box-option-container', { selected }), role: "option", "aria-selected": selected, onClick: onClick, ref: ref, children: children }));
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=ComboboxOptionContainer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxOptionContainer.js","sourceRoot":"","sources":["../../../../../../src/components/shared/Combobox/Panel/ComboboxOptionContainer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,SAAS,MAAM,CAAC,IAAa;IAC5B,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACrB,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,MAAM,CAAC,IAAa;IAC5B,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,OAAO,GAAG,GAAG,MAAM,CAAC;AACrB,CAAC;AAED,SAAS,SAAS,CAAC,UAAmB,EAAE,UAAmB;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7D,OAAO,GAAG,GAAG,GAAG,GAAG,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;AAC1D,CAAC;AAQD,MAAM,UAAU,uBAAuB,CAAC,EACvC,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,GACD;IACP,MAAM,GAAG,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAExC,MAAM,OAAO,GAAG,WAAW,CAC1B,CAAC,CAAa,EAAE,EAAE;QACjB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,EACD,CAAC,QAAQ,EAAE,KAAK,CAAC,CACjB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACxB,IAAI,OAAO,IAAI,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAI,OAAO,CAAC,UAA0B,CAAC,qBAAqB,EAAE,CAAC;YAE1E,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,cAAc,EAAE,CAAC;YAC1B,CAAC;QACF,CAAC;IACF,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEpB,OAAO,CACN,aACC,SAAS,EAAE,UAAU,CAAC,oCAAoC,EAAE,EAAE,QAAQ,EAAE,CAAC,EACzE,IAAI,EAAC,QAAQ,mBACE,QAAQ,EACvB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,YAEP,QAAQ,GACL,CACL,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { ComboboxOptionContainer } from './ComboboxOptionContainer';
|
|
4
|
+
import { expect, it, describe, vi } from 'vitest';
|
|
5
|
+
describe('option-container', () => {
|
|
6
|
+
const props = {
|
|
7
|
+
children: 'Option 1',
|
|
8
|
+
index: '0',
|
|
9
|
+
selected: false,
|
|
10
|
+
onSelect: vi.fn(),
|
|
11
|
+
};
|
|
12
|
+
it('renders without crashing', () => {
|
|
13
|
+
const { getByRole } = render(_jsx(ComboboxOptionContainer, { ...props }));
|
|
14
|
+
const optionContainer = getByRole('option');
|
|
15
|
+
expect(optionContainer).toBeInTheDocument();
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=ComboboxOptionContainer.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxOptionContainer.spec.js","sourceRoot":"","sources":["../../../../../../src/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,MAAM,KAAK,GAAG;QACb,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;KACjB,CAAC;IACF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,uBAAuB,OAAK,KAAK,GAAI,CAAC,CAAC;QACrE,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE5C,MAAM,CAAC,eAAe,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { ComboboxOptionContainer } from './ComboboxOptionContainer';
|
|
3
|
+
import { ComboboxPanelContainer } from './ComboboxPanelContainer';
|
|
4
|
+
import { ComboboxOption } from './ComboboxOption';
|
|
5
|
+
/**
|
|
6
|
+
* Floating menu containing selectable options
|
|
7
|
+
*/
|
|
8
|
+
export function ComboboxPanel({ optionRenderer: OptionRender, options = [], focused, selectedIndex, expanded, id, search, onSelect, }) {
|
|
9
|
+
const visibleOptions = expanded ? options : [];
|
|
10
|
+
const ComboBoxOptionComponent = OptionRender ?? ComboboxOption;
|
|
11
|
+
return (_jsx(ComboboxPanelContainer, { expanded: expanded, focused: focused, id: `${id}-list`, children: visibleOptions.map((option, index) => (_jsx(ComboboxOptionContainer, { index: index.toString(), selected: selectedIndex === index, onSelect: onSelect, children: _jsx(ComboBoxOptionComponent, { option: option, selected: selectedIndex === index, search: search }) }, option.id ?? option.value))) }));
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ComboboxPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComboboxPanel.js","sourceRoot":"","sources":["../../../../../../src/components/shared/Combobox/Panel/ComboboxPanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,EAC7B,cAAc,EAAE,YAAY,EAC5B,OAAO,GAAG,EAAE,EACZ,OAAO,EACP,aAAa,EACb,QAAQ,EACR,EAAE,EACF,MAAM,EACN,QAAQ,GACY;IACpB,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/C,MAAM,uBAAuB,GAAG,YAAY,IAAI,cAAc,CAAC;IAC/D,OAAO,CACN,KAAC,sBAAsB,IACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,GAAG,EAAE,OAAO,YAEf,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,KAAC,uBAAuB,IAEvB,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,EACvB,QAAQ,EAAE,aAAa,KAAK,KAAK,EACjC,QAAQ,EAAE,QAAQ,YAElB,KAAC,uBAAuB,IACvB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,KAAK,KAAK,EACjC,MAAM,EAAE,MAAM,GACb,IATG,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAUL,CAC1B,CAAC,GACsB,CACzB,CAAC;AACH,CAAC"}
|