@inseefr/lunatic 2.7.0-rc.5 → 2.7.2

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.
Files changed (161) hide show
  1. package/README.md +45 -11
  2. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +3 -3
  3. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +2 -1
  4. package/lib/components/checkbox/checkbox-group/checkbox-group-content.js +0 -2
  5. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.js +4 -2
  6. package/lib/components/checkbox/checkbox-group/html/checkbox-group.js +3 -3
  7. package/lib/components/checkbox/checkbox-group/lunatic-checkbox-group.js +2 -2
  8. package/lib/components/checkbox/checkbox-one/lunatic-checkbox-one.js +2 -1
  9. package/lib/components/checkbox/commons/checkbox-option.js +3 -1
  10. package/lib/components/commons/components/combo-box/combo-box-container.js +1 -2
  11. package/lib/components/commons/components/combo-box/combo-box.js +2 -2
  12. package/lib/components/commons/components/combo-box/selection/LabelOrInput.js +3 -1
  13. package/lib/components/commons/components/combo-box/selection/input.js +3 -1
  14. package/lib/components/commons/components/combo-box/selection/selection.js +3 -1
  15. package/lib/components/commons/components/errors/errors.js +12 -10
  16. package/lib/components/commons/components/errors/errors.spec.js +6 -6
  17. package/lib/components/component-set/html/__snapshots__/component-set.spec.tsx.snap +2 -0
  18. package/lib/components/component-set/html/component-set.js +2 -2
  19. package/lib/components/datepicker/html/DatepickerField.js +47 -0
  20. package/lib/components/datepicker/html/__snapshots__/datepicker.spec.tsx.snap +209 -17
  21. package/lib/components/datepicker/html/datepicker.js +104 -21
  22. package/lib/components/datepicker/html/datepicker.scss +19 -1
  23. package/lib/components/datepicker/html/datepicker.spec.js +71 -23
  24. package/lib/components/datepicker/lunatic-datepicker.js +5 -2
  25. package/lib/components/dropdown/lunatic-dropdown.js +2 -1
  26. package/lib/components/duration/duration.js +6 -7
  27. package/lib/components/duration/duration.scss +6 -14
  28. package/lib/components/duration/durationInput.js +14 -8
  29. package/lib/components/duration/durationUtils.js +38 -8
  30. package/lib/components/input/html/__snapshots__/input.spec.tsx.snap +2 -0
  31. package/lib/components/input/html/input.js +3 -3
  32. package/lib/components/input/lunatic-input.js +2 -1
  33. package/lib/components/input-number/html/__snapshots__/input-number.spec.tsx.snap +2 -2
  34. package/lib/components/input-number/html/input-number-thousand.js +4 -17
  35. package/lib/components/input-number/html/input-number.js +3 -5
  36. package/lib/components/input-number/lunatic-input-number.js +2 -3
  37. package/lib/components/loop/roster-for-loop/__snapshots__/roster-for-loop.spec.tsx.snap +88 -0
  38. package/lib/components/loop/roster-for-loop/roster-for-loop.js +7 -3
  39. package/lib/components/loop/roster-for-loop/roster-for-loop.spec.js +46 -0
  40. package/lib/components/lunatic-components.js +2 -11
  41. package/lib/components/radio/html/radio-group-content.js +4 -2
  42. package/lib/components/radio/html/radio-group.js +3 -3
  43. package/lib/components/radio/html/radio-option.js +3 -1
  44. package/lib/components/radio/lunatic-radio-group.js +2 -1
  45. package/lib/components/suggester/find-best-label/find-best-label.js +5 -5
  46. package/lib/components/suggester/idb-suggester/check-store.js +6 -3
  47. package/lib/components/suggester/idb-suggester/idb-suggester.js +8 -7
  48. package/lib/components/suggester/idb-suggester/suggester-status.js +1 -4
  49. package/lib/components/suggester/lunatic-suggester.js +7 -4
  50. package/lib/components/suggester/searching/create-searching.js +5 -5
  51. package/lib/components/switch/html/switch.js +2 -2
  52. package/lib/components/switch/lunatic-switch.js +2 -1
  53. package/lib/components/table/lunatic-table.js +2 -2
  54. package/lib/components/textarea/html/__snapshots__/textarea.spec.tsx.snap +2 -0
  55. package/lib/components/textarea/html/textarea.js +6 -4
  56. package/lib/components/textarea/lunatic-textarea.js +6 -3
  57. package/lib/hooks/use-auto-focus.js +26 -0
  58. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.d.ts +1 -1
  59. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.d.ts +2 -1
  60. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group.d.ts +1 -1
  61. package/lib/src/components/checkbox/commons/checkbox-option.d.ts +1 -0
  62. package/lib/src/components/commons/components/combo-box/combo-box-container.d.ts +2 -2
  63. package/lib/src/components/commons/components/combo-box/combo-box.d.ts +2 -2
  64. package/lib/src/components/commons/components/combo-box/selection/LabelOrInput.d.ts +1 -0
  65. package/lib/src/components/commons/components/combo-box/selection/input.d.ts +1 -0
  66. package/lib/src/components/commons/components/combo-box/selection/selection.d.ts +2 -1
  67. package/lib/src/components/commons/components/errors/errors.d.ts +6 -3
  68. package/lib/src/components/datepicker/html/DatepickerField.d.ts +12 -0
  69. package/lib/src/components/datepicker/html/datepicker.d.ts +4 -3
  70. package/lib/src/components/datepicker/lunatic-datepicker.d.ts +1 -0
  71. package/lib/src/components/dropdown/html/dropdown-writable/dropdown-writable.d.ts +1 -1
  72. package/lib/src/components/dropdown/html/dropdown.d.ts +3 -1
  73. package/lib/src/components/duration/durationInput.d.ts +6 -2
  74. package/lib/src/components/duration/durationUtils.d.ts +24 -7
  75. package/lib/src/components/input/html/input.d.ts +2 -2
  76. package/lib/src/components/input-number/html/input-number-thousand.d.ts +2 -2
  77. package/lib/src/components/input-number/html/input-number.d.ts +2 -3
  78. package/lib/src/components/radio/html/radio-group-content.d.ts +2 -1
  79. package/lib/src/components/radio/html/radio-group.d.ts +1 -1
  80. package/lib/src/components/radio/html/radio-option.d.ts +1 -0
  81. package/lib/src/components/suggester/find-best-label/find-best-label.d.ts +1 -1
  82. package/lib/src/components/suggester/html/suggester.d.ts +1 -1
  83. package/lib/src/components/suggester/idb-suggester/check-store.d.ts +5 -2
  84. package/lib/src/components/suggester/idb-suggester/idb-suggester.d.ts +5 -2
  85. package/lib/src/components/suggester/idb-suggester/suggester-status.d.ts +1 -4
  86. package/lib/src/components/suggester/lunatic-suggester.d.ts +1 -1
  87. package/lib/src/components/suggester/searching/create-searching.d.ts +1 -1
  88. package/lib/src/components/switch/html/switch.d.ts +1 -1
  89. package/lib/src/components/textarea/html/textarea.d.ts +3 -2
  90. package/lib/src/components/type.d.ts +5 -3
  91. package/lib/src/hooks/use-auto-focus.d.ts +6 -0
  92. package/lib/src/use-lunatic/actions.d.ts +2 -0
  93. package/lib/src/use-lunatic/commons/fill-components/fill-component-required.d.ts +383 -0
  94. package/lib/src/use-lunatic/commons/fill-components/fill-component-value.d.ts +1 -1
  95. package/lib/src/use-lunatic/commons/fill-components/fill-component-value.spec.d.ts +1 -0
  96. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +20 -0
  97. package/lib/src/use-lunatic/commons/variables/lunatic-variables-store.d.ts +4 -0
  98. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +1 -0
  99. package/lib/src/use-lunatic/type.d.ts +1 -0
  100. package/lib/src/use-lunatic/use-lunatic.d.ts +9 -5
  101. package/lib/src/use-lunatic/use-suggesters.d.ts +2 -1
  102. package/lib/src/utils/suggester-workers/append-to-index/create-append-task.d.ts +2 -2
  103. package/lib/src/utils/suggester-workers/worker-path.d.ts +1 -1
  104. package/lib/stories/behaviour/cleaning/source.json +151 -0
  105. package/lib/stories/behaviour/cleaning/test.stories.js +82 -0
  106. package/lib/stories/{questionnaires-test → behaviour}/controls/controls.stories.js +5 -5
  107. package/lib/stories/{questionnaires-test → behaviour/others}/test.stories.js +7 -7
  108. package/lib/stories/{paste-questionnaire → behaviour/paste}/test.stories.js +3 -3
  109. package/lib/stories/{resizing-questionnaire → behaviour/resizing}/test.stories.js +3 -3
  110. package/lib/stories/date-picker/datepicker.stories.js +32 -29
  111. package/lib/stories/duration/duration.stories.js +4 -4
  112. package/lib/stories/duration/{source.json → mois.json} +1 -1
  113. package/lib/stories/duration/{source1.json → time.json} +1 -1
  114. package/lib/use-lunatic/commons/fill-components/fill-component-required.js +23 -0
  115. package/lib/use-lunatic/commons/fill-components/fill-component-value.js +1 -1
  116. package/lib/use-lunatic/commons/fill-components/fill-component-value.spec.js +67 -0
  117. package/lib/use-lunatic/commons/fill-components/fill-components.js +2 -1
  118. package/lib/use-lunatic/commons/fill-components/fill-from-state.js +2 -0
  119. package/lib/use-lunatic/commons/variables/lunatic-variables-store.js +20 -0
  120. package/lib/use-lunatic/commons/variables/lunatic-variables-store.spec.js +15 -1
  121. package/lib/use-lunatic/initial-state.js +2 -1
  122. package/lib/use-lunatic/reducer/reduce-on-init.js +4 -2
  123. package/lib/use-lunatic/use-lunatic.js +12 -10
  124. package/lib/use-lunatic/use-suggesters.js +54 -37
  125. package/lib/utils/env.js +9 -1
  126. package/lib/utils/suggester-workers/append-to-index/create-append-task.js +4 -3
  127. package/lib/utils/suggester-workers/{create-worker-ts.js → create-worker.js} +10 -1
  128. package/lib/utils/suggester-workers/worker-path.js +5 -4
  129. package/package.json +20 -10
  130. package/scripts/build/add-workers-to-public.js +31 -31
  131. package/scripts/build/workers-paths.js +18 -7
  132. package/workers-release/{lunatic-append-worker-0.3.0-experimental.js → lunatic-append-worker-0.3.0.js} +1 -1
  133. package/workers-release/{lunatic-label-worker-0.3.0-experimental.js → lunatic-label-worker-0.3.0.js} +1 -1
  134. package/workers-release/{lunatic-searching-worker-0.3.0-experimental.js → lunatic-search-worker-0.3.0.js} +1 -1
  135. package/lib/components/datepicker/html/datepicker-container.js +0 -17
  136. package/lib/components/datepicker/html/datepicker-input.js +0 -35
  137. package/lib/env.d.js +0 -1
  138. package/lib/src/components/datepicker/html/datepicker-container.d.ts +0 -3
  139. package/lib/src/components/datepicker/html/datepicker-input.d.ts +0 -13
  140. package/lib/src/utils/get-component-value.d.ts +0 -5
  141. package/lib/utils/get-component-value.js +0 -34
  142. package/lib/utils/get-component-value.test.js +0 -57
  143. /package/lib/src/{utils/get-component-value.test.d.ts → components/loop/roster-for-loop/roster-for-loop.spec.d.ts} +0 -0
  144. /package/lib/src/utils/suggester-workers/{create-worker-ts.d.ts → create-worker.d.ts} +0 -0
  145. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNonNum_horsBoucle_PasPageFin.json +0 -0
  146. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNum_horsBoucle_PasPageFin.json +0 -0
  147. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees2_PasPageFin.json +0 -0
  148. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees_PasPageFin.json +0 -0
  149. /package/lib/stories/{questionnaires-test → behaviour}/controls/boucles-n.json +0 -0
  150. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.json +0 -0
  151. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.stories.js +0 -0
  152. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_DeclarationsSimples.json +0 -0
  153. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_MinMaxSum_Boucles.json +0 -0
  154. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_QuestSimple_Boucles.json +0 -0
  155. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_TCMRallyeGames.json +0 -0
  156. /package/lib/stories/{questionnaires-test → behaviour/others}/test-dylan.json +0 -0
  157. /package/lib/stories/{paste-questionnaire → behaviour/paste}/source.json +0 -0
  158. /package/lib/stories/{resizing-questionnaire → behaviour/resizing}/source.json +0 -0
  159. /package/workers-release/{lunatic-append-worker-0.3.0-experimental.js.LICENSE.txt → lunatic-append-worker-0.3.0.js.LICENSE.txt} +0 -0
  160. /package/workers-release/{lunatic-label-worker-0.3.0-experimental.js.LICENSE.txt → lunatic-label-worker-0.3.0.js.LICENSE.txt} +0 -0
  161. /package/workers-release/{lunatic-searching-worker-0.3.0-experimental.js.LICENSE.txt → lunatic-search-worker-0.3.0.js.LICENSE.txt} +0 -0
@@ -19,7 +19,7 @@ type Props = {
19
19
  }>;
20
20
  label?: ReactNode;
21
21
  description?: ReactNode;
22
- errors?: Record<string, LunaticError[]>;
22
+ errors?: LunaticError[];
23
23
  };
24
24
  declare const _default: import("react").ComponentType<Props>;
25
25
  export default _default;
@@ -2,7 +2,10 @@ import { type PropsWithChildren } from 'react';
2
2
  type Props = PropsWithChildren<{
3
3
  storeName: string;
4
4
  version: number;
5
- setStore: (v: any) => void;
5
+ onInfo: (v: any) => void;
6
6
  }>;
7
- declare function CheckStore({ storeName, version, setStore, children }: Props): import("react/jsx-runtime").JSX.Element;
7
+ /**
8
+ * Check the store info displaying a message while it is fetching
9
+ */
10
+ declare function CheckStore({ storeName, version, onInfo, children }: Props): import("react/jsx-runtime").JSX.Element;
8
11
  export default CheckStore;
@@ -1,6 +1,9 @@
1
+ import type { LunaticError } from '../../../use-lunatic/type';
1
2
  import type { LunaticComponentProps } from '../../type';
2
- type Props = Pick<LunaticComponentProps<'Suggester'>, 'storeName' | 'idbVersion' | 'id' | 'className' | 'optionRenderer' | 'labelRenderer' | 'disabled' | 'readOnly' | 'value' | 'label' | 'description' | 'getSuggesterStatus' | 'errors'> & {
3
+ type Props = Pick<LunaticComponentProps<'Suggester'>, 'storeName' | 'idbVersion' | 'id' | 'className' | 'optionRenderer' | 'labelRenderer' | 'disabled' | 'readOnly' | 'value' | 'label' | 'description' | 'getSuggesterStatus'> & {
4
+ errors?: LunaticError[];
3
5
  onSelect: (v: string | null) => void;
6
+ workersBasePath?: string;
4
7
  };
5
- export declare function IDBSuggester({ storeName, idbVersion, id, className, optionRenderer, labelRenderer, onSelect, disabled, value, label, description, getSuggesterStatus, errors, readOnly, }: Props): import("react/jsx-runtime").JSX.Element;
8
+ export declare function IDBSuggester({ storeName, idbVersion, id, className, optionRenderer, labelRenderer, onSelect, disabled, value, label, description, getSuggesterStatus, errors, readOnly, workersBasePath, }: Props): import("react/jsx-runtime").JSX.Element;
6
9
  export {};
@@ -17,10 +17,7 @@ type Props = PropsWithChildren<{
17
17
  description?: ReactNode;
18
18
  }>;
19
19
  /**
20
- * Component witch check status of loading process.
21
- * it notifies users through SuggesterNotification, a customizable component.
22
- * @param {} param0
23
- * @returns
20
+ * Check the status of suggester status and shows a warning / error
24
21
  */
25
22
  export declare function SuggesterStatus({ children, storeName, getSuggesterStatus, label, description, }: Props): import("react/jsx-runtime").JSX.Element;
26
23
  export {};
@@ -1,3 +1,3 @@
1
1
  import type { LunaticComponentProps } from '../type';
2
- declare function LunaticSuggester({ id, storeName, optionRenderer, labelRenderer, idbVersion, focused, value, handleChange, disabled, readOnly, errors, label, description, preferences, declarations, missing, missingResponse, management, response, className, getSuggesterStatus, }: LunaticComponentProps<'Suggester'>): import("react/jsx-runtime").JSX.Element;
2
+ declare function LunaticSuggester({ id, storeName, optionRenderer, labelRenderer, idbVersion, focused, value, handleChange, disabled, readOnly, errors, label, description, preferences, declarations, missing, missingResponse, management, response, className, getSuggesterStatus, workersBasePath, }: LunaticComponentProps<'Suggester'>): import("react/jsx-runtime").JSX.Element;
3
3
  export default LunaticSuggester;
@@ -1,6 +1,6 @@
1
1
  import type { ComboBoxOptionType } from '../../commons/components/combo-box/combo-box.type';
2
2
  export declare function isWorkerCompatible(): boolean;
3
- declare function createSearching(name: string, version: string): (search: string | null) => Promise<{
3
+ declare function createSearching(name: string, version: string, workersBasePath?: string): (search: string | null) => Promise<{
4
4
  results: ComboBoxOptionType[];
5
5
  }>;
6
6
  export default createSearching;
@@ -11,7 +11,7 @@ type Props = {
11
11
  onClick: (v: boolean) => void;
12
12
  id: string;
13
13
  label: ReactNode;
14
- errors?: Record<string, LunaticError[]>;
14
+ errors?: LunaticError[];
15
15
  };
16
16
  declare const _default: import("react").ComponentType<Props>;
17
17
  export default _default;
@@ -1,6 +1,6 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import './textarea.scss';
3
- import type { LunaticBaseProps } from '../../type';
3
+ import { type LunaticError } from '../../../use-lunatic/type';
4
4
  type Props = {
5
5
  id?: string;
6
6
  rows?: number;
@@ -11,8 +11,9 @@ type Props = {
11
11
  label?: ReactNode;
12
12
  value?: string | number | null;
13
13
  description?: string;
14
- errors?: LunaticBaseProps['errors'];
14
+ errors?: LunaticError[];
15
15
  readOnly?: boolean;
16
+ required?: boolean;
16
17
  };
17
18
  declare const _default: import("react").ComponentType<Props>;
18
19
  export default _default;
@@ -1,8 +1,8 @@
1
- import type { LunaticComponentDefinition, LunaticError, LunaticState } from '../use-lunatic/type';
2
1
  import type { CSSProperties, FunctionComponent, ReactNode } from 'react';
3
- import { SuggesterStatus } from '../use-lunatic/use-suggesters';
4
2
  import useLunatic from '../use-lunatic';
5
3
  import type { FilledLunaticComponentProps } from '../use-lunatic/commons/fill-components/fill-components';
4
+ import type { LunaticComponentDefinition, LunaticError, LunaticState } from '../use-lunatic/type';
5
+ import { SuggesterStatus } from '../use-lunatic/use-suggesters';
6
6
  type Formats = 'PTnHnM' | 'PnYnM';
7
7
  export type VtlExpression = {
8
8
  value: string;
@@ -60,7 +60,7 @@ export type SuggesterOption = {
60
60
  };
61
61
  type ComponentPropsByType = {
62
62
  InputNumber: LunaticBaseProps<number | null> & {
63
- min: number;
63
+ min?: number;
64
64
  max: number;
65
65
  decimals: number;
66
66
  unit?: string;
@@ -129,6 +129,7 @@ type ComponentPropsByType = {
129
129
  iteration: LunaticState['pager']['iteration'];
130
130
  };
131
131
  Datepicker: LunaticBaseProps<string | null> & {
132
+ format: 'YYYY-MM-DD' | 'YYYY-MM' | 'YYYY';
132
133
  min?: string;
133
134
  max?: string;
134
135
  response: {
@@ -236,6 +237,7 @@ type ComponentPropsByType = {
236
237
  };
237
238
  Suggester: LunaticBaseProps<string | null> & {
238
239
  storeName: string;
240
+ workersBasePath?: string;
239
241
  getSuggesterStatus: (name: string) => {
240
242
  status: SuggesterStatus;
241
243
  timestamp: number;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Focus the first focusable element in the wrapper when the "key" changes and is defined
3
+ */
4
+ export declare function useAutoFocus(wrapperRef: {
5
+ current: HTMLDivElement | null;
6
+ }, key?: string): void;
@@ -40,6 +40,7 @@ export type ActionInit = {
40
40
  goNextPage: () => void;
41
41
  goPreviousPage: () => void;
42
42
  withOverview: boolean;
43
+ workersBasePath?: string;
43
44
  };
44
45
  };
45
46
  export type ActionOnSetWaiting = {
@@ -100,6 +101,7 @@ export declare const onInit: (payload: {
100
101
  goNextPage: () => void;
101
102
  goPreviousPage: () => void;
102
103
  withOverview: boolean;
104
+ workersBasePath?: string | undefined;
103
105
  }) => ActionInit & {
104
106
  type: ActionKind.ON_INIT;
105
107
  };
@@ -0,0 +1,383 @@
1
+ import type { LunaticComponentDefinition } from '../../type';
2
+ /**
3
+ * Add required attribute on component that are mandatory
4
+ */
5
+ export declare function fillComponentRequired(component: LunaticComponentDefinition): (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSequenceType & {
6
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
7
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSubSequenceType & {
8
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
9
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRosterForLoopType & {
10
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
11
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentLoopType & {
12
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
13
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentTableType & {
14
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
15
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentNumberType & {
16
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
17
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDatePickerType & {
18
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
19
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxGroupType & {
20
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
21
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxBooleanType & {
22
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
23
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRadioType & {
24
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
25
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentFilterDescriptionType & {
26
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
27
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDropdownType & {
28
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
29
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentPairWiseLinksType & {
30
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
31
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRoundaboutType & {
32
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
33
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSuggesterType & {
34
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
35
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentInputOrTextareaType & {
36
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
37
+ }) | (import("../../type-source").ComponentTypeBase & {
38
+ componentType: "CheckboxOne";
39
+ } & {
40
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
41
+ }) | (import("../../type-source").ComponentTypeBase & {
42
+ componentType: "ConfirmationModal";
43
+ } & {
44
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
45
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentComponentSetType & {
46
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
47
+ }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentQuestionExplicationType & {
48
+ componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
49
+ }) | {
50
+ required: boolean;
51
+ label: import("../../type-source").LabelType;
52
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
53
+ conditionFilter: import("../../type-source").ConditionFilterType;
54
+ controls?: import("../../type-source").ControlType[] | undefined;
55
+ id: string;
56
+ bindingDependencies?: string[] | undefined;
57
+ hierarchy: import("../../type-source").Hierarchy;
58
+ mandatory?: boolean | undefined;
59
+ page: string;
60
+ componentType: "Sequence";
61
+ } | {
62
+ required: boolean;
63
+ label: import("../../type-source").LabelType;
64
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
65
+ conditionFilter: import("../../type-source").ConditionFilterType;
66
+ controls?: import("../../type-source").ControlType[] | undefined;
67
+ id: string;
68
+ bindingDependencies?: string[] | undefined;
69
+ hierarchy: import("../../type-source").Hierarchy;
70
+ mandatory?: boolean | undefined;
71
+ page: string;
72
+ componentType: "Subsequence";
73
+ gotoPage: string;
74
+ } | {
75
+ required: boolean;
76
+ label: import("../../type-source").LabelType;
77
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
78
+ conditionFilter: import("../../type-source").ConditionFilterType;
79
+ controls?: import("../../type-source").ControlType[] | undefined;
80
+ id: string;
81
+ bindingDependencies?: string[] | undefined;
82
+ hierarchy: import("../../type-source").Hierarchy;
83
+ mandatory?: boolean | undefined;
84
+ page: string;
85
+ componentType: "RosterForLoop";
86
+ components: import("../../type-source").ComponentType[];
87
+ lines: {
88
+ min: import("../../type-source").LabelType;
89
+ max: import("../../type-source").LabelType;
90
+ };
91
+ header: {
92
+ value: string;
93
+ label: string | import("../../type-source").LabelType;
94
+ options: {
95
+ value: string;
96
+ label: import("../../type-source").LabelType;
97
+ }[];
98
+ colspan?: number | undefined;
99
+ rowspan?: number | undefined;
100
+ }[];
101
+ body: (import("../../type-source").ComponentType | {
102
+ label: import("../../type-source").LabelType;
103
+ })[][];
104
+ positioning: "HORIZONTAL";
105
+ } | {
106
+ required: boolean;
107
+ label: import("../../type-source").LabelType;
108
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
109
+ conditionFilter: import("../../type-source").ConditionFilterType;
110
+ controls?: import("../../type-source").ControlType[] | undefined;
111
+ id: string;
112
+ bindingDependencies?: string[] | undefined;
113
+ hierarchy: import("../../type-source").Hierarchy;
114
+ mandatory?: boolean | undefined;
115
+ page: string;
116
+ componentType: "Loop";
117
+ loopDependencies: string[];
118
+ lines: {
119
+ min: import("../../type-source").LabelType;
120
+ max: import("../../type-source").LabelType;
121
+ };
122
+ components: import("../../type-source").ComponentType[];
123
+ iterations: import("../../type-source").LabelType;
124
+ maxPage: string;
125
+ depth: number;
126
+ paginatedLoop: boolean;
127
+ } | {
128
+ required: boolean;
129
+ label: import("../../type-source").LabelType;
130
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
131
+ conditionFilter: import("../../type-source").ConditionFilterType;
132
+ controls?: import("../../type-source").ControlType[] | undefined;
133
+ id: string;
134
+ bindingDependencies?: string[] | undefined;
135
+ hierarchy: import("../../type-source").Hierarchy;
136
+ mandatory?: boolean | undefined;
137
+ page: string;
138
+ componentType: "Table";
139
+ lines: {
140
+ min: import("../../type-source").LabelType;
141
+ max: import("../../type-source").LabelType;
142
+ };
143
+ header: {
144
+ value: string;
145
+ label: string | import("../../type-source").LabelType;
146
+ options: {
147
+ value: string;
148
+ label: import("../../type-source").LabelType;
149
+ }[];
150
+ colspan?: number | undefined;
151
+ rowspan?: number | undefined;
152
+ }[];
153
+ body: (import("../../type-source").ComponentType | {
154
+ label: import("../../type-source").LabelType;
155
+ })[][];
156
+ positioning: "HORIZONTAL";
157
+ } | {
158
+ required: boolean;
159
+ label: import("../../type-source").LabelType;
160
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
161
+ conditionFilter: import("../../type-source").ConditionFilterType;
162
+ controls?: import("../../type-source").ControlType[] | undefined;
163
+ id: string;
164
+ bindingDependencies?: string[] | undefined;
165
+ hierarchy: import("../../type-source").Hierarchy;
166
+ mandatory?: boolean | undefined;
167
+ page: string;
168
+ componentType: "InputNumber";
169
+ unit: string;
170
+ response: import("../../type-source").ResponseType;
171
+ min?: number | undefined;
172
+ max?: number | undefined;
173
+ decimals?: number | undefined;
174
+ } | {
175
+ required: boolean;
176
+ label: import("../../type-source").LabelType;
177
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
178
+ conditionFilter: import("../../type-source").ConditionFilterType;
179
+ controls?: import("../../type-source").ControlType[] | undefined;
180
+ id: string;
181
+ bindingDependencies?: string[] | undefined;
182
+ hierarchy: import("../../type-source").Hierarchy;
183
+ mandatory?: boolean | undefined;
184
+ page: string;
185
+ componentType: "Datepicker";
186
+ dateFormat: string;
187
+ response: import("../../type-source").ResponseType;
188
+ min?: string | undefined;
189
+ max?: string | undefined;
190
+ } | {
191
+ required: boolean;
192
+ label: import("../../type-source").LabelType;
193
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
194
+ conditionFilter: import("../../type-source").ConditionFilterType;
195
+ controls?: import("../../type-source").ControlType[] | undefined;
196
+ id: string;
197
+ bindingDependencies?: string[] | undefined;
198
+ hierarchy: import("../../type-source").Hierarchy;
199
+ mandatory?: boolean | undefined;
200
+ page: string;
201
+ componentType: "CheckboxGroup";
202
+ responses: {
203
+ label: import("../../type-source").LabelType;
204
+ response: import("../../type-source").ResponseType;
205
+ id: string;
206
+ }[];
207
+ } | {
208
+ required: boolean;
209
+ label: import("../../type-source").LabelType;
210
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
211
+ conditionFilter: import("../../type-source").ConditionFilterType;
212
+ controls?: import("../../type-source").ControlType[] | undefined;
213
+ id: string;
214
+ bindingDependencies?: string[] | undefined;
215
+ hierarchy: import("../../type-source").Hierarchy;
216
+ mandatory?: boolean | undefined;
217
+ page: string;
218
+ componentType: "CheckboxBoolean";
219
+ response: import("../../type-source").ResponseType;
220
+ missingResponse?: import("../../type-source").ResponseType | undefined;
221
+ } | {
222
+ required: boolean;
223
+ label: import("../../type-source").LabelType;
224
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
225
+ conditionFilter: import("../../type-source").ConditionFilterType;
226
+ controls?: import("../../type-source").ControlType[] | undefined;
227
+ id: string;
228
+ bindingDependencies?: string[] | undefined;
229
+ hierarchy: import("../../type-source").Hierarchy;
230
+ mandatory?: boolean | undefined;
231
+ page: string;
232
+ componentType: "Radio";
233
+ options: {
234
+ value: string;
235
+ label: import("../../type-source").LabelType;
236
+ }[];
237
+ response: import("../../type-source").ResponseType;
238
+ missingResponse?: import("../../type-source").ResponseType | undefined;
239
+ } | {
240
+ required: boolean;
241
+ label: import("../../type-source").LabelType;
242
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
243
+ conditionFilter: import("../../type-source").ConditionFilterType;
244
+ controls?: import("../../type-source").ControlType[] | undefined;
245
+ id: string;
246
+ bindingDependencies?: string[] | undefined;
247
+ hierarchy: import("../../type-source").Hierarchy;
248
+ mandatory?: boolean | undefined;
249
+ page: string;
250
+ componentType: "FilterDescription";
251
+ filterDescription: boolean;
252
+ } | {
253
+ required: boolean;
254
+ label: import("../../type-source").LabelType;
255
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
256
+ conditionFilter: import("../../type-source").ConditionFilterType;
257
+ controls?: import("../../type-source").ControlType[] | undefined;
258
+ id: string;
259
+ bindingDependencies?: string[] | undefined;
260
+ hierarchy: import("../../type-source").Hierarchy;
261
+ mandatory?: boolean | undefined;
262
+ page: string;
263
+ componentType: "Dropdown";
264
+ options: {
265
+ value: string;
266
+ label: import("../../type-source").LabelType;
267
+ }[];
268
+ response: import("../../type-source").ResponseType;
269
+ missingResponse?: import("../../type-source").ResponseType | undefined;
270
+ } | {
271
+ required: boolean;
272
+ label: import("../../type-source").LabelType;
273
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
274
+ conditionFilter: import("../../type-source").ConditionFilterType;
275
+ controls?: import("../../type-source").ControlType[] | undefined;
276
+ id: string;
277
+ bindingDependencies?: string[] | undefined;
278
+ hierarchy: import("../../type-source").Hierarchy;
279
+ mandatory?: boolean | undefined;
280
+ page: string;
281
+ componentType: "PairwiseLinks";
282
+ xAxisIterations: import("../../type-source").LabelType;
283
+ yAxisIterations: import("../../type-source").LabelType;
284
+ symLinks: {
285
+ [variableName: string]: Record<string, string>;
286
+ };
287
+ components: import("../../type-source").ComponentType[];
288
+ } | {
289
+ required: boolean;
290
+ label: import("../../type-source").LabelType;
291
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
292
+ conditionFilter: import("../../type-source").ConditionFilterType;
293
+ controls?: import("../../type-source").ControlType[] | undefined;
294
+ id: string;
295
+ bindingDependencies?: string[] | undefined;
296
+ hierarchy: import("../../type-source").Hierarchy;
297
+ mandatory?: boolean | undefined;
298
+ page: string;
299
+ componentType: "Roundabout";
300
+ components: import("../../type-source").ComponentType[];
301
+ iterations: import("../../type-source").LabelType;
302
+ locked: boolean;
303
+ expressions: Record<string, import("../../type-source").LabelType>;
304
+ } | {
305
+ required: boolean;
306
+ label: import("../../type-source").LabelType;
307
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
308
+ conditionFilter: import("../../type-source").ConditionFilterType;
309
+ controls?: import("../../type-source").ControlType[] | undefined;
310
+ id: string;
311
+ bindingDependencies?: string[] | undefined;
312
+ hierarchy: import("../../type-source").Hierarchy;
313
+ mandatory?: boolean | undefined;
314
+ page: string;
315
+ componentType: "Suggester";
316
+ storeName: string;
317
+ } | {
318
+ required: boolean;
319
+ label: import("../../type-source").LabelType;
320
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
321
+ conditionFilter: import("../../type-source").ConditionFilterType;
322
+ controls?: import("../../type-source").ControlType[] | undefined;
323
+ id: string;
324
+ bindingDependencies?: string[] | undefined;
325
+ hierarchy: import("../../type-source").Hierarchy;
326
+ mandatory?: boolean | undefined;
327
+ page: string;
328
+ componentType: "Input" | "Textarea";
329
+ maxLength: number;
330
+ missingResponse?: import("../../type-source").ResponseType | undefined;
331
+ response: import("../../type-source").ResponseType;
332
+ } | {
333
+ required: boolean;
334
+ label: import("../../type-source").LabelType;
335
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
336
+ conditionFilter: import("../../type-source").ConditionFilterType;
337
+ controls?: import("../../type-source").ControlType[] | undefined;
338
+ id: string;
339
+ bindingDependencies?: string[] | undefined;
340
+ hierarchy: import("../../type-source").Hierarchy;
341
+ mandatory?: boolean | undefined;
342
+ page: string;
343
+ componentType: "CheckboxOne";
344
+ } | {
345
+ required: boolean;
346
+ label: import("../../type-source").LabelType;
347
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
348
+ conditionFilter: import("../../type-source").ConditionFilterType;
349
+ controls?: import("../../type-source").ControlType[] | undefined;
350
+ id: string;
351
+ bindingDependencies?: string[] | undefined;
352
+ hierarchy: import("../../type-source").Hierarchy;
353
+ mandatory?: boolean | undefined;
354
+ page: string;
355
+ componentType: "ConfirmationModal";
356
+ } | {
357
+ required: boolean;
358
+ label: import("../../type-source").LabelType;
359
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
360
+ conditionFilter: import("../../type-source").ConditionFilterType;
361
+ controls?: import("../../type-source").ControlType[] | undefined;
362
+ id: string;
363
+ bindingDependencies?: string[] | undefined;
364
+ hierarchy: import("../../type-source").Hierarchy;
365
+ mandatory?: boolean | undefined;
366
+ page: string;
367
+ componentType: "ComponentSet";
368
+ components: import("../../type-source").ComponentType[];
369
+ } | {
370
+ required: boolean;
371
+ label: import("../../type-source").LabelType;
372
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
373
+ conditionFilter: import("../../type-source").ConditionFilterType;
374
+ controls?: import("../../type-source").ControlType[] | undefined;
375
+ id: string;
376
+ bindingDependencies?: string[] | undefined;
377
+ hierarchy: import("../../type-source").Hierarchy;
378
+ mandatory?: boolean | undefined;
379
+ page: string;
380
+ componentType: "QuestionExplication";
381
+ description: string;
382
+ bgColor?: string | undefined;
383
+ };
@@ -2,4 +2,4 @@ import type { LunaticComponentDefinition, LunaticState } from '../../type';
2
2
  export type FilledProps = {
3
3
  value?: unknown;
4
4
  };
5
- export declare function fillComponentValue(component: LunaticComponentDefinition, state: LunaticState): LunaticComponentDefinition & FilledProps;
5
+ export declare function fillComponentValue(component: LunaticComponentDefinition, state: Pick<LunaticState, 'pager' | 'variables'>): LunaticComponentDefinition & FilledProps;