@inseefr/lunatic 3.0.0-rc.11 → 3.0.0-rc.13
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.d.ts +1 -1
- 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.d.ts +6 -6
- 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.d.ts +36 -19
- 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.d.ts +58 -19
- 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.d.ts +18 -16
- 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.d.ts +61 -5
- 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.d.ts +9 -5
- package/lib/src/use-lunatic/commons/page-tag.js +50 -0
- package/lib/src/use-lunatic/commons/page-tag.js.map +1 -0
- package/lib/src/use-lunatic/commons/page-tag.spec.js +19 -0
- package/lib/src/use-lunatic/commons/page-tag.spec.js.map +1 -0
- package/lib/src/use-lunatic/commons/page.d.ts +1 -1
- 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.d.ts +1 -1
- 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.d.ts +4 -4
- 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 +55 -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.d.ts +1 -1
- 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.d.ts +6 -1
- 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.d.ts +5 -4
- 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.d.ts +15 -15
- 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/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 -177
- 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
- /package/lib/src/{components/shared/VariableStatus/VariableStatus.spec.d.ts → use-lunatic/commons/page-tag.spec.d.ts} +0 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import { act, renderHook } from '@testing-library/react-hooks';
|
|
2
|
+
import { describe, expect, it, vi, beforeEach } from 'vitest';
|
|
3
|
+
import useLunatic from './use-lunatic';
|
|
4
|
+
import sourceWithoutHierarchy from '../stories/overview/source.json';
|
|
5
|
+
import sourceLogement from '../stories/questionnaires/logement/source.json';
|
|
6
|
+
import sourceSimpsons from '../stories/questionnaires2023/simpsons/source.json';
|
|
7
|
+
import sourceCleaningLoop from '../stories/behaviour/cleaning/source-loop.json';
|
|
8
|
+
import sourceCleaningResizing from '../stories/behaviour/resizing/source-resizing-cleaning.json';
|
|
9
|
+
const dataFromObject = (o) => {
|
|
10
|
+
return {
|
|
11
|
+
EXTERNAL: {},
|
|
12
|
+
COLLECTED: Object.keys(o).reduce((acc, k) => ({
|
|
13
|
+
...acc,
|
|
14
|
+
[k]: {
|
|
15
|
+
EDITED: null,
|
|
16
|
+
FORCED: null,
|
|
17
|
+
INPUTED: null,
|
|
18
|
+
PREVIOUS: null,
|
|
19
|
+
COLLECTED: o[k],
|
|
20
|
+
},
|
|
21
|
+
}), {}),
|
|
22
|
+
CALCULATED: {},
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
describe('use-lunatic()', () => {
|
|
26
|
+
const defaultParams = [
|
|
27
|
+
sourceSimpsons,
|
|
28
|
+
dataFromObject({}),
|
|
29
|
+
{},
|
|
30
|
+
];
|
|
31
|
+
it('should initialize correctly', () => {
|
|
32
|
+
const { result } = renderHook(() => useLunatic(...defaultParams));
|
|
33
|
+
expect(result.current.pager.page).toBe(1);
|
|
34
|
+
expect(result.current.pager.lastReachedPage).toBe('1');
|
|
35
|
+
expect(result.current.pager.maxPage).toBe(41);
|
|
36
|
+
});
|
|
37
|
+
it('should go to the next page correcly', () => {
|
|
38
|
+
const { result } = renderHook(() => useLunatic(...defaultParams));
|
|
39
|
+
expect(result.current.pager.page).toBe(1);
|
|
40
|
+
expect(result.current.pager.lastReachedPage).toBe('1');
|
|
41
|
+
act(() => {
|
|
42
|
+
result.current.goNextPage();
|
|
43
|
+
});
|
|
44
|
+
expect(result.current.pager.page).toBe(2);
|
|
45
|
+
expect(result.current.pager.lastReachedPage).toBe('2');
|
|
46
|
+
});
|
|
47
|
+
it('should jump to a specific page', () => {
|
|
48
|
+
const params = [
|
|
49
|
+
sourceSimpsons,
|
|
50
|
+
dataFromObject({
|
|
51
|
+
COMMENT: 'Hello world',
|
|
52
|
+
READY: true,
|
|
53
|
+
NAME_CHAR: ['a', 'b'],
|
|
54
|
+
}),
|
|
55
|
+
{
|
|
56
|
+
initialPage: '35.1#1',
|
|
57
|
+
},
|
|
58
|
+
];
|
|
59
|
+
const { result } = renderHook(() => useLunatic(...params));
|
|
60
|
+
const components = result.current.getComponents();
|
|
61
|
+
expect(result.current.pager.lastReachedPage).toBe('35.1#1');
|
|
62
|
+
expect(result.current.pager.iteration).toBe(0);
|
|
63
|
+
expect(result.current.pager.subPage).toBe(0);
|
|
64
|
+
expect(result.current.pager.page).toBe(35);
|
|
65
|
+
expect(components[0].id).toBe('kiq5xw5p');
|
|
66
|
+
});
|
|
67
|
+
describe('Provider', () => {
|
|
68
|
+
it('should not generate a new Provider every render', () => {
|
|
69
|
+
const { result } = renderHook(() => useLunatic(...defaultParams));
|
|
70
|
+
const oldProvider = result.current.Provider;
|
|
71
|
+
act(() => {
|
|
72
|
+
result.current.goNextPage();
|
|
73
|
+
});
|
|
74
|
+
expect(result.current.Provider).toBe(oldProvider);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
describe('overview', () => {
|
|
78
|
+
const lunaticConfigurationWithoutOverview = {
|
|
79
|
+
management: false,
|
|
80
|
+
activeControls: false,
|
|
81
|
+
initialPage: '1',
|
|
82
|
+
getStoreInfo: () => { },
|
|
83
|
+
missing: false,
|
|
84
|
+
shortcut: false,
|
|
85
|
+
activeGoNextForMissing: false,
|
|
86
|
+
showOverview: false,
|
|
87
|
+
filterDescription: true,
|
|
88
|
+
};
|
|
89
|
+
const lunaticConfiguration = {
|
|
90
|
+
...lunaticConfigurationWithoutOverview,
|
|
91
|
+
withOverview: true,
|
|
92
|
+
};
|
|
93
|
+
const advancedQestionnaireData = dataFromObject({ CADR: '1' });
|
|
94
|
+
it('should not calculate overview by default', function () {
|
|
95
|
+
const { result } = renderHook(() => useLunatic(sourceLogement, undefined, lunaticConfigurationWithoutOverview));
|
|
96
|
+
const overview = result.current.overview;
|
|
97
|
+
expect(overview).toHaveLength(0);
|
|
98
|
+
});
|
|
99
|
+
it('should make the first sequence visible', function () {
|
|
100
|
+
const { result } = renderHook(() => useLunatic(sourceLogement, undefined, lunaticConfiguration));
|
|
101
|
+
const overview = result.current.overview;
|
|
102
|
+
expect(overview).toHaveLength(11);
|
|
103
|
+
expect(overview[0].reached).toEqual(true);
|
|
104
|
+
expect(overview[0].visible).toEqual(true);
|
|
105
|
+
expect(overview[1].reached).toEqual(false);
|
|
106
|
+
expect(overview[1].visible).toEqual(true);
|
|
107
|
+
});
|
|
108
|
+
it('should update the breadcrumb on page change', function () {
|
|
109
|
+
const { result } = renderHook(() => useLunatic(sourceLogement, undefined, lunaticConfiguration));
|
|
110
|
+
// '8' page should not be visible
|
|
111
|
+
expect(result.current.overview[0].children[0].visible).toBe(false);
|
|
112
|
+
// Simulate a change of value in the form
|
|
113
|
+
act(() => {
|
|
114
|
+
const c = result.current.getComponents();
|
|
115
|
+
c[0].handleChange({ name: 'CADR' }, '3', {});
|
|
116
|
+
result.current.goNextPage();
|
|
117
|
+
});
|
|
118
|
+
// Page '8' should now be visible
|
|
119
|
+
expect(result.current.overview[0].children[0].visible).toBe(true);
|
|
120
|
+
});
|
|
121
|
+
it('should be empty when no hierarchy', function () {
|
|
122
|
+
const { result } = renderHook(() => useLunatic(sourceWithoutHierarchy, undefined, lunaticConfiguration));
|
|
123
|
+
expect(result.current.overview).toHaveLength(0);
|
|
124
|
+
});
|
|
125
|
+
describe('with initial data', function () {
|
|
126
|
+
it('should make second sequence visible', function () {
|
|
127
|
+
const { result } = renderHook(() => useLunatic(sourceLogement, advancedQestionnaireData, {
|
|
128
|
+
...lunaticConfiguration,
|
|
129
|
+
// hack on initialPage : useLunatic SHOULD find lastReachedPage from COLLECTED data
|
|
130
|
+
initialPage: '1',
|
|
131
|
+
// use lastReachedPage saved by orchestrator
|
|
132
|
+
lastReachedPage: '16',
|
|
133
|
+
}));
|
|
134
|
+
const overview = result.current.overview;
|
|
135
|
+
expect(overview).toHaveLength(11);
|
|
136
|
+
expect(overview[0].reached).toEqual(true);
|
|
137
|
+
expect(overview[0].visible).toEqual(true);
|
|
138
|
+
expect(overview[1].reached).toEqual(true);
|
|
139
|
+
expect(overview[1].visible).toEqual(true);
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
describe('cleaning', () => {
|
|
144
|
+
it('should handle cleaning in a loop', () => {
|
|
145
|
+
const { result } = renderHook(() => useLunatic(sourceCleaningLoop, undefined, {}));
|
|
146
|
+
act(() => {
|
|
147
|
+
result.current.onChange({ name: 'PRENOM' }, ['John', 'Doe', 'Marc']);
|
|
148
|
+
result.current.onChange({ name: 'AGE' }, [18, 18, 18]);
|
|
149
|
+
// Go in the first iteration
|
|
150
|
+
result.current.goNextPage();
|
|
151
|
+
result.current.goNextPage();
|
|
152
|
+
});
|
|
153
|
+
const expectCollectedAgeToEqual = (expectation) => {
|
|
154
|
+
expect(result.current.getData(false).COLLECTED.AGE.COLLECTED).toEqual(expectation);
|
|
155
|
+
};
|
|
156
|
+
expectCollectedAgeToEqual([18, 18, 18]);
|
|
157
|
+
act(() => {
|
|
158
|
+
result.current.onChange({ name: 'HIDE_AGE' }, true, { iteration: [0] });
|
|
159
|
+
});
|
|
160
|
+
expectCollectedAgeToEqual([null, 18, 18]);
|
|
161
|
+
});
|
|
162
|
+
});
|
|
163
|
+
describe('resizing', () => {
|
|
164
|
+
it('should resize after cleaning', () => {
|
|
165
|
+
const spy = vi.fn();
|
|
166
|
+
const { result } = renderHook(() => useLunatic(sourceCleaningResizing, undefined, {
|
|
167
|
+
onChange: spy,
|
|
168
|
+
}));
|
|
169
|
+
result.current.onChange({ name: 'NB' }, 3);
|
|
170
|
+
expect((result.current.getData(true).COLLECTED?.PRENOMS).COLLECTED).toEqual([null, null, null]);
|
|
171
|
+
result.current.onChange({ name: 'NB' }, 2);
|
|
172
|
+
expect((result.current.getData(true).COLLECTED?.PRENOMS).COLLECTED).toEqual([null, null]);
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
describe('getData()', () => {
|
|
176
|
+
let hookRef;
|
|
177
|
+
beforeEach(() => {
|
|
178
|
+
const { result } = renderHook(() => useLunatic(sourceSimpsons, undefined, {}));
|
|
179
|
+
act(() => {
|
|
180
|
+
result.current.onChange({ name: 'COMMENT' }, 'Mon commentaire');
|
|
181
|
+
result.current.onChange({ name: 'READY' }, true);
|
|
182
|
+
});
|
|
183
|
+
hookRef = result;
|
|
184
|
+
});
|
|
185
|
+
it('should return every value', () => {
|
|
186
|
+
const data = hookRef.current.getData(false);
|
|
187
|
+
expect(data).toMatchObject({
|
|
188
|
+
COLLECTED: {
|
|
189
|
+
COMMENT: {
|
|
190
|
+
COLLECTED: 'Mon commentaire',
|
|
191
|
+
},
|
|
192
|
+
READY: {
|
|
193
|
+
COLLECTED: true,
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
});
|
|
197
|
+
expect(data.COLLECTED && Object.keys(data.COLLECTED)).toHaveLength(109);
|
|
198
|
+
expect(data.CALCULATED && Object.keys(data?.CALCULATED)).toHaveLength(0);
|
|
199
|
+
});
|
|
200
|
+
it('should return calculated values', () => {
|
|
201
|
+
const data = hookRef.current.getData(true);
|
|
202
|
+
expect(data.COLLECTED && Object.keys(data.COLLECTED)).toHaveLength(109);
|
|
203
|
+
expect(data.CALCULATED && Object.keys(data?.CALCULATED)).toHaveLength(33);
|
|
204
|
+
});
|
|
205
|
+
it('should only return requested variables', () => {
|
|
206
|
+
const data = hookRef.current.getData(false, ['COMMENT']);
|
|
207
|
+
expect(data).toMatchObject({
|
|
208
|
+
COLLECTED: {
|
|
209
|
+
COMMENT: {
|
|
210
|
+
COLLECTED: 'Mon commentaire',
|
|
211
|
+
},
|
|
212
|
+
},
|
|
213
|
+
});
|
|
214
|
+
expect(data.COLLECTED && Object.keys(data.COLLECTED)).toHaveLength(1);
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
describe('getChangedData()', () => {
|
|
218
|
+
let hookRef;
|
|
219
|
+
beforeEach(() => {
|
|
220
|
+
const { result } = renderHook(() => useLunatic(sourceSimpsons, undefined, { trackChanges: true }));
|
|
221
|
+
hookRef = result;
|
|
222
|
+
});
|
|
223
|
+
it('should return every value', () => {
|
|
224
|
+
const data = hookRef.current.getChangedData();
|
|
225
|
+
expect(data.COLLECTED).toEqual({});
|
|
226
|
+
});
|
|
227
|
+
it('should return changes since the last update', () => {
|
|
228
|
+
act(() => {
|
|
229
|
+
hookRef.current.onChange({ name: 'COMMENT' }, 'Mon commentaire');
|
|
230
|
+
hookRef.current.onChange({ name: 'READY' }, true);
|
|
231
|
+
});
|
|
232
|
+
expect(hookRef.current.getChangedData()).toMatchObject({
|
|
233
|
+
COLLECTED: {
|
|
234
|
+
COMMENT: {
|
|
235
|
+
COLLECTED: 'Mon commentaire',
|
|
236
|
+
},
|
|
237
|
+
READY: {
|
|
238
|
+
COLLECTED: true,
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
it('should reset changes with true parameter', () => {
|
|
244
|
+
act(() => {
|
|
245
|
+
hookRef.current.onChange({ name: 'COMMENT' }, 'Mon commentaire');
|
|
246
|
+
hookRef.current.onChange({ name: 'READY' }, true);
|
|
247
|
+
});
|
|
248
|
+
const data = hookRef.current.getChangedData(true);
|
|
249
|
+
expect(data).toMatchObject({
|
|
250
|
+
COLLECTED: {
|
|
251
|
+
COMMENT: {
|
|
252
|
+
COLLECTED: 'Mon commentaire',
|
|
253
|
+
},
|
|
254
|
+
READY: {
|
|
255
|
+
COLLECTED: true,
|
|
256
|
+
},
|
|
257
|
+
},
|
|
258
|
+
});
|
|
259
|
+
expect(hookRef.current.getChangedData().COLLECTED).toEqual({});
|
|
260
|
+
});
|
|
261
|
+
it('should reset changes with resetChanges()', () => {
|
|
262
|
+
act(() => {
|
|
263
|
+
hookRef.current.onChange({ name: 'COMMENT' }, 'Mon commentaire');
|
|
264
|
+
hookRef.current.onChange({ name: 'READY' }, true);
|
|
265
|
+
});
|
|
266
|
+
hookRef.current.resetChangedData();
|
|
267
|
+
expect(hookRef.current.getChangedData().COLLECTED).toEqual({});
|
|
268
|
+
act(() => {
|
|
269
|
+
hookRef.current.onChange({ name: 'READY' }, false);
|
|
270
|
+
});
|
|
271
|
+
expect(hookRef.current.getChangedData().COLLECTED).toMatchObject({
|
|
272
|
+
READY: {
|
|
273
|
+
COLLECTED: false,
|
|
274
|
+
},
|
|
275
|
+
});
|
|
276
|
+
});
|
|
277
|
+
});
|
|
278
|
+
});
|
|
279
|
+
//# sourceMappingURL=use-lunatic.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-lunatic.test.js","sourceRoot":"","sources":["../../../src/use-lunatic/use-lunatic.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef, useState, } from 'react';
|
|
2
|
+
import { initStore } from '../utils/store-tools/initStore';
|
|
3
|
+
import { createAppendTask } from '../utils/suggester-workers/append-to-index/create-append-task';
|
|
4
|
+
export var SuggesterStatus;
|
|
5
|
+
(function (SuggesterStatus) {
|
|
6
|
+
SuggesterStatus[SuggesterStatus["unused"] = 0] = "unused";
|
|
7
|
+
SuggesterStatus[SuggesterStatus["idle"] = 1] = "idle";
|
|
8
|
+
SuggesterStatus[SuggesterStatus["pending"] = 2] = "pending";
|
|
9
|
+
SuggesterStatus[SuggesterStatus["success"] = 3] = "success";
|
|
10
|
+
SuggesterStatus[SuggesterStatus["unknown"] = 4] = "unknown";
|
|
11
|
+
SuggesterStatus[SuggesterStatus["error"] = 5] = "error";
|
|
12
|
+
})(SuggesterStatus || (SuggesterStatus = {}));
|
|
13
|
+
function nothing() { }
|
|
14
|
+
/**
|
|
15
|
+
* Update the status ref
|
|
16
|
+
*/
|
|
17
|
+
function setStatus(status,
|
|
18
|
+
// Name of the referentiel
|
|
19
|
+
name,
|
|
20
|
+
// New state
|
|
21
|
+
state) {
|
|
22
|
+
if (status && status.current) {
|
|
23
|
+
const { current } = status;
|
|
24
|
+
if (name in current)
|
|
25
|
+
current[name] = state;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function useSuggesters({ auto, getReferentiel, suggesters, workersBasePath, }) {
|
|
29
|
+
const status = useRef();
|
|
30
|
+
const [timestamp, setTimestamp] = useState(Date.now());
|
|
31
|
+
const getSuggesterStatus = useCallback(function (name) {
|
|
32
|
+
const { current } = status;
|
|
33
|
+
if (!auto) {
|
|
34
|
+
return { status: SuggesterStatus.unused, timestamp };
|
|
35
|
+
}
|
|
36
|
+
if (current && name in current) {
|
|
37
|
+
return { status: current[name], timestamp };
|
|
38
|
+
}
|
|
39
|
+
return { status: SuggesterStatus.unknown, timestamp };
|
|
40
|
+
}, [status, timestamp, auto]);
|
|
41
|
+
// Make all status "idle"
|
|
42
|
+
useEffect(function () {
|
|
43
|
+
if (!suggesters) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
status.current = suggesters.reduce((a, { name }) => ({ ...a, [name]: SuggesterStatus.idle }), {});
|
|
47
|
+
}, [suggesters, status]);
|
|
48
|
+
// Index the data
|
|
49
|
+
useEffect(function () {
|
|
50
|
+
const aborts = { current: [] };
|
|
51
|
+
if (typeof getReferentiel === 'function' &&
|
|
52
|
+
Array.isArray(suggesters) &&
|
|
53
|
+
auto) {
|
|
54
|
+
const suggesterWorkers = suggesters.map(async (store) => {
|
|
55
|
+
const { name } = store;
|
|
56
|
+
if (!status.current) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
if (status.current[name] === SuggesterStatus.idle) {
|
|
61
|
+
const isClean = await initStore(store);
|
|
62
|
+
if (!isClean) {
|
|
63
|
+
setStatus(status, name, SuggesterStatus.error);
|
|
64
|
+
setTimestamp(Date.now());
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
setStatus(status, name, SuggesterStatus.pending);
|
|
68
|
+
setTimestamp(Date.now());
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
if (status.current[name] === SuggesterStatus.pending) {
|
|
72
|
+
const data = await getReferentiel(name);
|
|
73
|
+
const [append, abort] = createAppendTask(store, 1, nothing, workersBasePath);
|
|
74
|
+
aborts.current.push(abort);
|
|
75
|
+
const result = await append(data);
|
|
76
|
+
if (result) {
|
|
77
|
+
setStatus(status, name, SuggesterStatus.success);
|
|
78
|
+
setTimestamp(Date.now());
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
setStatus(status, name, SuggesterStatus.error);
|
|
82
|
+
setTimestamp(Date.now());
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
console.error(e);
|
|
88
|
+
setStatus(status, name, SuggesterStatus.error);
|
|
89
|
+
setTimestamp(Date.now());
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
const clearWorkers = () => aborts.current.forEach((a) => a());
|
|
93
|
+
Promise.all(suggesterWorkers).finally(clearWorkers);
|
|
94
|
+
return clearWorkers;
|
|
95
|
+
}
|
|
96
|
+
}, [suggesters, auto, getReferentiel, status, workersBasePath]);
|
|
97
|
+
return getSuggesterStatus;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=use-suggesters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-suggesters.js","sourceRoot":"","sources":["../../../src/use-lunatic/use-suggesters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Call a callback x times
|
|
3
|
+
*/
|
|
4
|
+
export function times(n, cb) {
|
|
5
|
+
return new Array(n).fill(null).map((_, k) => cb(k));
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Update an item in an array without mutating the array
|
|
9
|
+
*/
|
|
10
|
+
export function setAtIndex(arr, index, newValue) {
|
|
11
|
+
if (!Array.isArray(index)) {
|
|
12
|
+
return setAtIndex(arr, [index], newValue);
|
|
13
|
+
}
|
|
14
|
+
const [currentIndex, ...restIndex] = index;
|
|
15
|
+
let newArray = Array.isArray(arr) ? [...arr] : [arr];
|
|
16
|
+
if (newArray.length < currentIndex + 1) {
|
|
17
|
+
newArray = resizeArray(newArray, currentIndex + 1, null);
|
|
18
|
+
}
|
|
19
|
+
newArray[currentIndex] =
|
|
20
|
+
restIndex.length === 0
|
|
21
|
+
? newValue
|
|
22
|
+
: setAtIndex(newArray[currentIndex], restIndex, newValue);
|
|
23
|
+
return newArray;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Get a value inside an array
|
|
27
|
+
*/
|
|
28
|
+
export function getAtIndex(arr, indexes) {
|
|
29
|
+
let current = arr;
|
|
30
|
+
if (!Array.isArray(current)) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
for (const index of indexes) {
|
|
34
|
+
if (index < 0 || index >= current.length) {
|
|
35
|
+
return undefined; // Index out of bounds, return undefined
|
|
36
|
+
}
|
|
37
|
+
current = current[index];
|
|
38
|
+
}
|
|
39
|
+
return current;
|
|
40
|
+
}
|
|
41
|
+
export function resizeArray(array, newLength, defaultValue) {
|
|
42
|
+
// The value is not an array, create an empty array
|
|
43
|
+
if (!Array.isArray(array)) {
|
|
44
|
+
return new Array(newLength).fill(defaultValue ?? null);
|
|
45
|
+
}
|
|
46
|
+
if (array.length === newLength) {
|
|
47
|
+
return array;
|
|
48
|
+
}
|
|
49
|
+
return new Array(newLength).fill(defaultValue ?? null).map(function (value, index) {
|
|
50
|
+
return index < array.length ? array[index] : value;
|
|
51
|
+
}, []);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Return the first non null/undefined value of an array
|
|
55
|
+
*/
|
|
56
|
+
export function firstValueItem(items) {
|
|
57
|
+
if (!Array.isArray(items)) {
|
|
58
|
+
return items;
|
|
59
|
+
}
|
|
60
|
+
return items.find((v) => v !== undefined && v !== null);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Return a list of partial array
|
|
64
|
+
*
|
|
65
|
+
* Example :
|
|
66
|
+
* - subArray([1, 2, 3]) // [[1], [1, 2], [1, 2, 3]]
|
|
67
|
+
*/
|
|
68
|
+
export function subArrays(items) {
|
|
69
|
+
if (!Array.isArray(items)) {
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
if (items.length === 1) {
|
|
73
|
+
return [items];
|
|
74
|
+
}
|
|
75
|
+
const arrays = [];
|
|
76
|
+
for (let i = 1; i <= items.length; i++) {
|
|
77
|
+
arrays.push(items.slice(0, i));
|
|
78
|
+
}
|
|
79
|
+
return arrays;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Calculates the depth of an array
|
|
83
|
+
*/
|
|
84
|
+
export function depth(arr, base = 0) {
|
|
85
|
+
if (!Array.isArray(arr)) {
|
|
86
|
+
return base;
|
|
87
|
+
}
|
|
88
|
+
return depth(arr[0], base + 1);
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=array.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { firstValueItem, resizeArray, setAtIndex } from './array';
|
|
3
|
+
describe('array', () => {
|
|
4
|
+
describe('resizeArray()', () => {
|
|
5
|
+
it('should append new value', () => {
|
|
6
|
+
expect(resizeArray([1, 2], 3, 3)).toEqual([1, 2, 3]);
|
|
7
|
+
expect(resizeArray([1, 2], 4, 3)).toEqual([1, 2, 3, 3]);
|
|
8
|
+
});
|
|
9
|
+
it('should remove value', () => {
|
|
10
|
+
expect(resizeArray([1, 2, 3], 1)).toEqual([1]);
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
describe('setAtIndex', () => {
|
|
14
|
+
it('should work with simple index', () => {
|
|
15
|
+
expect(setAtIndex([1, 2, 3], 1, 3)).toEqual([1, 3, 3]);
|
|
16
|
+
});
|
|
17
|
+
it('should work with non array value', () => {
|
|
18
|
+
expect(setAtIndex(null, 1, 3)).toEqual([null, 3]);
|
|
19
|
+
expect(setAtIndex(4, 1, 3)).toEqual([4, 3]);
|
|
20
|
+
});
|
|
21
|
+
it('should work with deep index', () => {
|
|
22
|
+
expect(setAtIndex([
|
|
23
|
+
[1, 2, 3],
|
|
24
|
+
[1, 2, 3],
|
|
25
|
+
[1, 2, 3],
|
|
26
|
+
], [1, 2], 10)).toEqual([
|
|
27
|
+
[1, 2, 3],
|
|
28
|
+
[1, 2, 10],
|
|
29
|
+
[1, 2, 3],
|
|
30
|
+
]);
|
|
31
|
+
});
|
|
32
|
+
it('should work with deep and non array value', () => {
|
|
33
|
+
expect(setAtIndex([null], [1, 2], 10)).toEqual([null, [null, null, 10]]);
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
it('firstValueItem', () => {
|
|
37
|
+
expect(firstValueItem([0, 1, 2])).toBe(0);
|
|
38
|
+
expect(firstValueItem([null, 1, 2])).toBe(1);
|
|
39
|
+
expect(firstValueItem([null, undefined, false])).toBe(false);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=array.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"array.spec.js","sourceRoot":"","sources":["../../../src/utils/array.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alphabet.js","sourceRoot":"","sources":["../../../../src/utils/constants/alphabet.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../../../src/utils/constants/features.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,GAAG,GAAG,KAAc,CAAC;AAClC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAa,CAAC;AAChC,MAAM,CAAC,MAAM,MAAM,GAAG,QAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../../../src/utils/constants/links.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC;AAC9B,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missing.js","sourceRoot":"","sources":["../../../../src/utils/constants/missing.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EAAE,GAAG,IAAa,CAAC;AAChC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-status.js","sourceRoot":"","sources":["../../../../src/utils/constants/variable-status.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAmB,CAAC;AAC5C,MAAM,CAAC,MAAM,SAAS,GAAG,WAAoB,CAAC;AAC9C,MAAM,CAAC,MAAM,MAAM,GAAG,QAAiB,CAAC;AACxC,MAAM,CAAC,MAAM,MAAM,GAAG,QAAiB,CAAC;AACxC,MAAM,CAAC,MAAM,OAAO,GAAG,SAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variable-types.js","sourceRoot":"","sources":["../../../../src/utils/constants/variable-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,YAAqB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Wrap a callback calling preventDefault and stopPropagation on the event before passing it
|
|
3
|
+
*/
|
|
4
|
+
export function prevent(cb) {
|
|
5
|
+
if (!cb) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
return (e) => {
|
|
9
|
+
e.preventDefault();
|
|
10
|
+
e.stopPropagation();
|
|
11
|
+
cb(e);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Check if an event is within a rectangle
|
|
16
|
+
*/
|
|
17
|
+
export function isEventInRect(event, rect) {
|
|
18
|
+
return (rect.top <= event.clientY &&
|
|
19
|
+
event.clientY <= rect.top + rect.height &&
|
|
20
|
+
rect.left <= event.clientX &&
|
|
21
|
+
event.clientX <= rect.left + rect.width);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=dom.js.map
|