@inseefr/lunatic 3.0.0-rc.32 → 3.0.0-rc.34

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 (141) hide show
  1. package/README.md +19 -19
  2. package/lib/components/CheckboxBoolean/CheckboxBoolean.d.ts +2 -2
  3. package/lib/components/CheckboxBoolean/CheckboxBoolean.js +7 -2
  4. package/lib/components/CheckboxBoolean/CheckboxBoolean.js.map +1 -1
  5. package/lib/components/CheckboxBoolean/CheckboxBoolean.spec.js +7 -7
  6. package/lib/components/CheckboxBoolean/CheckboxBoolean.spec.js.map +1 -1
  7. package/lib/components/CheckboxGroup/CheckboxGroup.d.ts +1 -1
  8. package/lib/components/CheckboxGroup/CheckboxGroup.js +3 -3
  9. package/lib/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
  10. package/lib/components/CheckboxGroup/CustomCheckboxGroup.d.ts +2 -0
  11. package/lib/components/CheckboxGroup/CustomCheckboxGroup.js +2 -2
  12. package/lib/components/CheckboxGroup/CustomCheckboxGroup.js.map +1 -1
  13. package/lib/components/CheckboxOne/CheckboxOne.d.ts +1 -1
  14. package/lib/components/CheckboxOne/CheckboxOne.js +2 -2
  15. package/lib/components/CheckboxOne/CheckboxOne.js.map +1 -1
  16. package/lib/components/CheckboxOne/CheckboxOne.spec.js +5 -3
  17. package/lib/components/CheckboxOne/CheckboxOne.spec.js.map +1 -1
  18. package/lib/components/Datepicker/Datepicker.d.ts +2 -2
  19. package/lib/components/Datepicker/Datepicker.js +2 -2
  20. package/lib/components/Datepicker/Datepicker.js.map +1 -1
  21. package/lib/components/Datepicker/Datepicker.spec.js +28 -9
  22. package/lib/components/Datepicker/Datepicker.spec.js.map +1 -1
  23. package/lib/components/Dropdown/Dropdown.d.ts +2 -2
  24. package/lib/components/Dropdown/Dropdown.js +2 -2
  25. package/lib/components/Dropdown/Dropdown.js.map +1 -1
  26. package/lib/components/Dropdown/Dropdown.spec.js +1 -1
  27. package/lib/components/Dropdown/Dropdown.spec.js.map +1 -1
  28. package/lib/components/Duration/Duration.d.ts +2 -2
  29. package/lib/components/Duration/Duration.js +2 -2
  30. package/lib/components/Duration/Duration.js.map +1 -1
  31. package/lib/components/Input/Input.d.ts +2 -2
  32. package/lib/components/Input/Input.js +2 -2
  33. package/lib/components/Input/Input.js.map +1 -1
  34. package/lib/components/Input/Input.spec.js +4 -2
  35. package/lib/components/Input/Input.spec.js.map +1 -1
  36. package/lib/components/InputNumber/InputNumber.d.ts +2 -2
  37. package/lib/components/InputNumber/InputNumber.js +2 -2
  38. package/lib/components/InputNumber/InputNumber.js.map +1 -1
  39. package/lib/components/InputNumber/InputNumber.spec.js +8 -3
  40. package/lib/components/InputNumber/InputNumber.spec.js.map +1 -1
  41. package/lib/components/Loop/Loop.d.ts +2 -2
  42. package/lib/components/Loop/Loop.js +9 -5
  43. package/lib/components/Loop/Loop.js.map +1 -1
  44. package/lib/components/Question/Question.js +6 -1
  45. package/lib/components/Question/Question.js.map +1 -1
  46. package/lib/components/Radio/Radio.js +2 -2
  47. package/lib/components/Radio/Radio.js.map +1 -1
  48. package/lib/components/RosterForLoop/RosterForLoop.js +9 -5
  49. package/lib/components/RosterForLoop/RosterForLoop.js.map +1 -1
  50. package/lib/components/RosterForLoop/RosterForLoop.spec.js +1 -1
  51. package/lib/components/RosterForLoop/RosterForLoop.spec.js.map +1 -1
  52. package/lib/components/Suggester/Suggester.d.ts +1 -1
  53. package/lib/components/Suggester/Suggester.js +24 -9
  54. package/lib/components/Suggester/Suggester.js.map +1 -1
  55. package/lib/components/Suggester/useSuggestions.js +29 -18
  56. package/lib/components/Suggester/useSuggestions.js.map +1 -1
  57. package/lib/components/Switch/Switch.d.ts +1 -1
  58. package/lib/components/Switch/Switch.js +2 -2
  59. package/lib/components/Switch/Switch.js.map +1 -1
  60. package/lib/components/Text/Text.d.ts +3 -0
  61. package/lib/components/Text/Text.js +4 -0
  62. package/lib/components/Text/Text.js.map +1 -0
  63. package/lib/components/Textarea/Textarea.d.ts +2 -2
  64. package/lib/components/Textarea/Textarea.js +2 -2
  65. package/lib/components/Textarea/Textarea.js.map +1 -1
  66. package/lib/components/Textarea/Textarea.spec.js +1 -1
  67. package/lib/components/Textarea/Textarea.spec.js.map +1 -1
  68. package/lib/components/library.d.ts +5 -3
  69. package/lib/components/library.js +2 -0
  70. package/lib/components/library.js.map +1 -1
  71. package/lib/components/shared/Button/Button.d.ts +1 -0
  72. package/lib/components/shared/Button/Button.js +3 -3
  73. package/lib/components/shared/Button/Button.js.map +1 -1
  74. package/lib/components/shared/Checkbox/CheckboxOption.d.ts +2 -1
  75. package/lib/components/shared/Checkbox/CheckboxOption.js +14 -18
  76. package/lib/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  77. package/lib/components/shared/Combobox/Selection/ComboboxInput.js +1 -1
  78. package/lib/components/shared/Combobox/Selection/ComboboxInput.js.map +1 -1
  79. package/lib/components/shared/Combobox/Selection/ComboboxSelection.js +1 -1
  80. package/lib/components/shared/Combobox/Selection/ComboboxSelection.js.map +1 -1
  81. package/lib/components/shared/ComponentWrapper.d.ts +2 -3
  82. package/lib/components/shared/ComponentWrapper.js +2 -2
  83. package/lib/components/shared/ComponentWrapper.js.map +1 -1
  84. package/lib/components/shared/Icons/checkbox-disabled-icon.d.ts +2 -0
  85. package/lib/components/shared/Icons/checkbox-disabled-icon.js +7 -0
  86. package/lib/components/shared/Icons/checkbox-disabled-icon.js.map +1 -0
  87. package/lib/components/shared/Missing/Missing.d.ts +3 -2
  88. package/lib/components/shared/Missing/Missing.js +4 -3
  89. package/lib/components/shared/Missing/Missing.js.map +1 -1
  90. package/lib/components/shared/Missing/Missing.spec.js +13 -9
  91. package/lib/components/shared/Missing/Missing.spec.js.map +1 -1
  92. package/lib/components/shared/Radio/RadioOption.js +20 -39
  93. package/lib/components/shared/Radio/RadioOption.js.map +1 -1
  94. package/lib/components/shared/Radio/RadioOption.spec.js +4 -4
  95. package/lib/components/shared/Radio/RadioOption.spec.js.map +1 -1
  96. package/lib/components/type.d.ts +7 -9
  97. package/lib/index.d.ts +1 -1
  98. package/lib/main.css +77 -26
  99. package/lib/main.css.map +1 -1
  100. package/lib/use-lunatic/actions.d.ts +13 -11
  101. package/lib/use-lunatic/actions.js +9 -7
  102. package/lib/use-lunatic/actions.js.map +1 -1
  103. package/lib/use-lunatic/commons/compile-controls.js +1 -1
  104. package/lib/use-lunatic/commons/compile-controls.js.map +1 -1
  105. package/lib/use-lunatic/commons/execute-condition-filter.js +1 -2
  106. package/lib/use-lunatic/commons/execute-condition-filter.js.map +1 -1
  107. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +3 -1
  108. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +9 -0
  109. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js.map +1 -1
  110. package/lib/use-lunatic/commons/fill-components/fill-components.d.ts +2 -2
  111. package/lib/use-lunatic/commons/fill-components/fill-components.js +1 -1
  112. package/lib/use-lunatic/commons/fill-components/fill-components.js.map +1 -1
  113. package/lib/use-lunatic/hooks/use-page-has-response.js +2 -1
  114. package/lib/use-lunatic/hooks/use-page-has-response.js.map +1 -1
  115. package/lib/use-lunatic/hooks/useOverview.js +5 -3
  116. package/lib/use-lunatic/hooks/useOverview.js.map +1 -1
  117. package/lib/use-lunatic/props/propComponentType.js +35 -17
  118. package/lib/use-lunatic/props/propComponentType.js.map +1 -1
  119. package/lib/use-lunatic/reducer/controls/check-roundabout-control.js +2 -8
  120. package/lib/use-lunatic/reducer/controls/check-roundabout-control.js.map +1 -1
  121. package/lib/use-lunatic/reducer/reduce-go-to-page.js +1 -1
  122. package/lib/use-lunatic/reducer/reduce-go-to-page.js.map +1 -1
  123. package/lib/use-lunatic/reducer/reduce-handle-changes.d.ts +6 -0
  124. package/lib/use-lunatic/reducer/reduce-handle-changes.js +24 -0
  125. package/lib/use-lunatic/reducer/reduce-handle-changes.js.map +1 -0
  126. package/lib/use-lunatic/reducer/reducer.js +3 -3
  127. package/lib/use-lunatic/reducer/reducer.js.map +1 -1
  128. package/lib/use-lunatic/type.d.ts +8 -8
  129. package/lib/use-lunatic/use-lunatic.d.ts +4 -4
  130. package/lib/use-lunatic/use-lunatic.js +9 -9
  131. package/lib/use-lunatic/use-lunatic.js.map +1 -1
  132. package/lib/utils/search/SearchMinisearch.js +1 -1
  133. package/lib/utils/search/SearchMinisearch.js.map +1 -1
  134. package/lib/utils/search/SuggestersDatabase.d.ts +5 -0
  135. package/lib/utils/search/SuggestersDatabase.js +7 -1
  136. package/lib/utils/search/SuggestersDatabase.js.map +1 -1
  137. package/package.json +1 -1
  138. package/README.fr.md +0 -186
  139. package/lib/use-lunatic/reducer/reduce-handle-change.d.ts +0 -6
  140. package/lib/use-lunatic/reducer/reduce-handle-change.js +0 -20
  141. package/lib/use-lunatic/reducer/reduce-handle-change.js.map +0 -1
package/README.md CHANGED
@@ -82,7 +82,7 @@ And it returns an object that allows you to control the questionnaire:
82
82
  - `getData()`, returns the collected data in the questionnaire.
83
83
  - `loopVariables`, is an array containing the list of variables used for the current loop.
84
84
 
85
- For more information on the types of this return, you can refer to the available types in the [source code](https://github.com/InseeFr/Lunatic/blob/2.7/src/use-lunatic/type.ts). You can also find an example of using the hook in the [Storybook section](https://github.com/InseeFr/Lunatic/blob/2.7/src/stories/utils/orchestrator.jsx#L121-L152).
85
+ For more information on the types of this return, you can refer to the available types in the [source code](https://github.com/InseeFr/Lunatic/blob/3.0/src/use-lunatic/type.ts). You can also find an example of using the hook in the [Storybook section](https://github.com/InseeFr/Lunatic/blob/3.0/src/stories/utils/orchestrator.jsx#L121-L152).
86
86
 
87
87
  ### Components
88
88
 
@@ -93,19 +93,19 @@ Lunatic offers a library of pre-designed components to cover the different types
93
93
  ```jsx
94
94
  import * as lunatic from '@inseefr/lunatic';
95
95
 
96
- function App({ source, data }) {
97
- const { getComponents, getCurrentErrors, getModalErrors } =
98
- lunatic.useLunatic(source, data, {});
99
- const components = getComponents();
100
- const currentErrors = getCurrentErrors();
101
- const modalErrors = getModalErrors();
102
-
103
- return (
104
- <div className="container">
105
- <LunaticComponents components={components} />
106
- <lunatic.Modal errors={modalErrors} goNext={goNextPage} />
107
- </div>
108
- );
96
+ function App({source, data}) {
97
+ const {getComponents, getCurrentErrors, getModalErrors} =
98
+ lunatic.useLunatic(source, data, {});
99
+ const components = getComponents();
100
+ const currentErrors = getCurrentErrors();
101
+ const modalErrors = getModalErrors();
102
+
103
+ return (
104
+ <div className="container">
105
+ <LunaticComponents components={components}/>
106
+ <lunatic.Modal errors={modalErrors} goNext={goNextPageAction}/>
107
+ </div>
108
+ );
109
109
  }
110
110
  ```
111
111
 
@@ -136,13 +136,13 @@ This section covers the internal working of the `useLunatic()` hook. The goal is
136
136
 
137
137
  ### General Functioning
138
138
 
139
- The hook is based on an [internal state](https://github.com/InseeFr/Lunatic/blob/2.7/src/use-lunatic/type.ts#L79-L187) that is updated through a [reducer](https://reactjs.org/docs/hooks-reference.html#usereducer) system. The [actions](https://github.com/InseeFr/Lunatic/blob/2.7/src/use-lunatic/actions.ts) affecting this state are limited:
139
+ The hook is based on an [internal state](https://github.com/InseeFr/Lunatic/blob/3.0/src/use-lunatic/type.ts#L79-L187) that is updated through a [reducer](https://reactjs.org/docs/hooks-reference.html#usereducer) system. The [actions](https://github.com/InseeFr/Lunatic/blob/3.0/src/use-lunatic/actions.ts) affecting this state are limited:
140
140
 
141
141
  - An action `'use-lunatic/on-init'` allows initialization of the state from the data received as a parameter of the hook.
142
142
  - The actions `'use-lunatic/go-previous'`, `'use-lunatic/go-next'`, and `'use-lunatic/go-to-page'` are called during navigation using the methods returned by the hook.
143
143
  - The action `use-lunatic/handle-change` is the most important action and is called whenever data is changed in the questionnaire.
144
144
 
145
- All the [reducers corresponding to these actions are available here](https://github.com/InseeFr/Lunatic/blob/2.7/src/use-lunatic/reducer/reducer.ts). Generally, they are broken down into several methods depending on the part of the state they modify.
145
+ All the [reducers corresponding to these actions are available here](https://github.com/InseeFr/Lunatic/blob/3.0/src/use-lunatic/reducer/reducer.ts). Generally, they are broken down into several methods depending on the part of the state they modify.
146
146
 
147
147
  ### Pages and Pager
148
148
 
@@ -150,7 +150,7 @@ At initialization, the questionnaire scenario is modeled as an object which is s
150
150
 
151
151
  ### VTL Execution
152
152
 
153
- Another important point of Lunatic is the execution of VTL expressions which allow making certain properties dynamic (labels, errors, etc.). This filling is done [when the state changes](https://github.com/InseeFr/Lunatic/blob/2.7/src/use-lunatic/commons/use-components-from-state.ts).
153
+ Another important point of Lunatic is the execution of VTL expressions which allow making certain properties dynamic (labels, errors, etc.). This filling is done [when the state changes](https://github.com/InseeFr/Lunatic/blob/3.0/src/use-lunatic/use-lunatic.ts#L162).
154
154
 
155
155
  To facilitate expression execution, an `executeExpression()` method is exposed in the Lunatic state. This method is accompanied by an `updateBindings()` method which allows updating internal values. This expression execution system uses a memoization system to not re-execute the same expression multiple times. When the `use-lunatic/handle-change` action is executed, the values ("bindings") are updated to memorize the values associated with the different VTL variables. Similarly, the values of calculated variables on which the modified variable depends are forgotten to refresh the value during the next execution.
156
156
 
@@ -158,9 +158,9 @@ To facilitate expression execution, an `executeExpression()` method is exposed i
158
158
 
159
159
  ### Stable Branchs
160
160
 
161
- - Stable branches follow the glob pattern `'2.*'`, like `2.6` or `2.7`.
161
+ - Stable branches follow the glob pattern `'2.*'` or `'3.*'`, like `2.7` or `3.0`.
162
162
  - We can maintain if needs, the old stable branches
163
- - `2.7` branch is currently the most advanced branch
163
+ - `3.0` branch is currently the most advanced branch
164
164
 
165
165
  ### Commits and feature branches
166
166
 
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import type { LunaticComponentProps } from '../type';
3
3
  import type { LunaticError } from '../../use-lunatic/type';
4
- export declare function CheckboxBoolean({ handleChange, response, errors, value, ...props }: LunaticComponentProps<'CheckboxBoolean'>): import("react/jsx-runtime").JSX.Element;
5
- type CustomProps = Omit<LunaticComponentProps<'CheckboxBoolean'>, 'response' | 'handleChange' | 'errors' | 'value'> & {
4
+ export declare function CheckboxBoolean({ handleChanges, response, errors, value, ...props }: LunaticComponentProps<'CheckboxBoolean'>): import("react/jsx-runtime").JSX.Element;
5
+ type CustomProps = Omit<LunaticComponentProps<'CheckboxBoolean'>, 'response' | 'handleChanges' | 'errors' | 'value'> & {
6
6
  onChange: () => void;
7
7
  errors?: LunaticError[];
8
8
  checked?: boolean;
@@ -3,9 +3,14 @@ import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/
3
3
  import { CheckboxOption } from '../shared/Checkbox/CheckboxOption';
4
4
  import { slottableComponent } from '../shared/HOC/slottableComponent';
5
5
  import { Declarations } from '../shared/Declarations/Declarations';
6
- export function CheckboxBoolean({ handleChange, response, errors, value, ...props }) {
6
+ export function CheckboxBoolean({ handleChanges, response, errors, value, ...props }) {
7
7
  const checked = !!value;
8
- return (_jsx(CustomCheckboxBoolean, { ...props, checked: checked, onChange: () => handleChange(response, !checked), errors: getComponentErrors(errors, props.id) }));
8
+ return (_jsx(CustomCheckboxBoolean, { ...props, checked: checked, onChange: () => handleChanges([
9
+ {
10
+ name: response.name,
11
+ value: !checked,
12
+ },
13
+ ]), errors: getComponentErrors(errors, props.id) }));
9
14
  }
10
15
  export const CustomCheckboxBoolean = slottableComponent('CheckboxBoolean', (props) => {
11
16
  const { disabled, checked, id, onChange, label, declarations, description, errors, } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxBoolean.js","sourceRoot":"","sources":["../../../src/components/CheckboxBoolean/CheckboxBoolean.tsx"],"names":[],"mappings":";AACA,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,eAAe,CAAC,EAC/B,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,KAAK,EACL,GAAG,KAAK,EACkC;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;IACxB,OAAO,CACN,KAAC,qBAAqB,OACjB,KAAK,EACT,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAChD,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAWD,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CACtD,iBAAiB,EACjB,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,QAAQ,EACR,OAAO,EACP,EAAE,EACF,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,WAAW,EACX,MAAM,GACN,GAAG,KAAK,CAAC;IACV,OAAO,CACN,eAAK,SAAS,EAAC,0BAA0B,aACxC,KAAC,cAAc,IACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,QAAQ,EACjB,KAAK,EACJ,8BACE,KAAK,EACN,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,GACzB,IACA,EAEJ,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,CAAC,CAAC,MAAM,GAChB,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CACD,CAAC"}
1
+ {"version":3,"file":"CheckboxBoolean.js","sourceRoot":"","sources":["../../../src/components/CheckboxBoolean/CheckboxBoolean.tsx"],"names":[],"mappings":";AACA,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,eAAe,CAAC,EAC/B,aAAa,EACb,QAAQ,EACR,MAAM,EACN,KAAK,EACL,GAAG,KAAK,EACkC;IAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;IACxB,OAAO,CACN,KAAC,qBAAqB,OACjB,KAAK,EACT,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,GAAG,EAAE,CACd,aAAa,CAAC;YACb;gBACC,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,KAAK,EAAE,CAAC,OAAO;aACf;SACD,CAAC,EAEH,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAWD,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CACtD,iBAAiB,EACjB,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,QAAQ,EACR,OAAO,EACP,EAAE,EACF,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,WAAW,EACX,MAAM,GACN,GAAG,KAAK,CAAC;IACV,OAAO,CACN,eAAK,SAAS,EAAC,0BAA0B,aACxC,KAAC,cAAc,IACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,QAAQ,EACjB,KAAK,EACJ,8BACE,KAAK,EACN,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,GACzB,IACA,EAEJ,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,CAAC,CAAC,MAAM,GAChB,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -5,33 +5,33 @@ import { describe, it, expect, vi, afterEach } from 'vitest';
5
5
  describe('CheckboxBoolean', () => {
6
6
  const label = 'I accept the terms and conditions';
7
7
  const description = 'You must accept the terms and conditions to continue.';
8
- const handleChange = vi.fn();
8
+ const handleChanges = vi.fn();
9
9
  const response = { name: 'demo' };
10
10
  afterEach(() => {
11
11
  vi.resetAllMocks();
12
12
  });
13
13
  it('renders label ', () => {
14
- const { getByText } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, value: true, handleChange: handleChange, response: response }));
14
+ const { getByText } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, value: true, handleChanges: handleChanges, response: response }));
15
15
  expect(getByText(label)).toBeInTheDocument();
16
16
  });
17
17
  it('renders unchecked checkbox', () => {
18
- const { getByRole } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, description: description, value: false, handleChange: handleChange, response: response }));
18
+ const { getByRole } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, description: description, value: false, handleChanges: handleChanges, response: response }));
19
19
  const checkbox = getByRole('checkbox');
20
20
  expect(checkbox).not.toBeChecked();
21
21
  expect(checkbox).toBeEnabled();
22
22
  });
23
23
  it('renders checked checkbox', () => {
24
- const { getByRole } = render(_jsx(CheckboxBoolean, { id: 'checkbox', label: label, description: description, value: true, handleChange: handleChange, response: response }));
24
+ const { getByRole } = render(_jsx(CheckboxBoolean, { id: 'checkbox', label: label, description: description, value: true, handleChanges: handleChanges, response: response }));
25
25
  const checkbox = getByRole('checkbox');
26
26
  expect(checkbox).toBeChecked();
27
27
  expect(checkbox).toBeEnabled();
28
28
  });
29
29
  it('calls onClick when checkbox is clicked', () => {
30
- const { getByRole } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, description: description, value: false, handleChange: handleChange, response: response }));
30
+ const { getByRole } = render(_jsx(CheckboxBoolean, { id: "checkbox", label: label, description: description, value: false, handleChanges: handleChanges, response: response }));
31
31
  const checkbox = getByRole('checkbox');
32
32
  fireEvent.click(checkbox);
33
- expect(handleChange).toHaveBeenCalledTimes(1);
34
- expect(handleChange).toHaveBeenCalledWith(response, true);
33
+ expect(handleChanges).toHaveBeenCalledTimes(1);
34
+ expect(handleChanges).toHaveBeenCalledWith([{ ...response, value: true }]);
35
35
  });
36
36
  });
37
37
  //# sourceMappingURL=CheckboxBoolean.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxBoolean.spec.js","sourceRoot":"","sources":["../../../src/components/CheckboxBoolean/CheckboxBoolean.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CheckboxBoolean.spec.js","sourceRoot":"","sources":["../../../src/components/CheckboxBoolean/CheckboxBoolean.spec.tsx"],"names":[],"mappings":"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"}
@@ -8,4 +8,4 @@ export type CheckboxGroupOption = {
8
8
  description?: ReactNode;
9
9
  onClick: (b: boolean) => void;
10
10
  };
11
- export declare function CheckboxGroup({ id, value, responses, shortcut, handleChange, errors, label, description, }: LunaticComponentProps<'CheckboxGroup'>): import("react/jsx-runtime").JSX.Element;
11
+ export declare function CheckboxGroup({ id, value, responses, shortcut, readOnly, disabled, handleChanges, errors, label, description, }: LunaticComponentProps<'CheckboxGroup'>): import("react/jsx-runtime").JSX.Element;
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import {} from 'react';
3
3
  import { CustomCheckboxGroup } from './CustomCheckboxGroup';
4
4
  import { getComponentErrors } from '../shared/ComponentErrors/ComponentErrors';
5
- export function CheckboxGroup({ id, value, responses, shortcut, handleChange, errors, label, description, }) {
5
+ export function CheckboxGroup({ id, value, responses, shortcut, readOnly, disabled, handleChanges, errors, label, description, }) {
6
6
  const options = responses.map(({ label, response, description, id }) => {
7
7
  const { name } = response;
8
8
  return {
@@ -12,11 +12,11 @@ export function CheckboxGroup({ id, value, responses, shortcut, handleChange, er
12
12
  checked: castValueToBoolean(value, name),
13
13
  description,
14
14
  onClick: function (checked) {
15
- handleChange(response, checked);
15
+ handleChanges([{ name: response.name, value: checked }]);
16
16
  },
17
17
  };
18
18
  });
19
- return (_jsx(CustomCheckboxGroup, { id: id, description: description, options: options, label: label, errors: getComponentErrors(errors, id), shortcut: shortcut }));
19
+ return (_jsx(CustomCheckboxGroup, { id: id, description: description, options: options, label: label, errors: getComponentErrors(errors, id), shortcut: shortcut, disabled: disabled, readOnly: readOnly }));
20
20
  }
21
21
  function castValueToBoolean(value, name) {
22
22
  if (value && name in value) {
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAW/E,MAAM,UAAU,aAAa,CAAC,EAC7B,EAAE,EACF,KAAK,EACL,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,WAAW,GAC6B;IACxC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE;QACtE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QAE1B,OAAO;YACN,KAAK;YACL,IAAI;YACJ,EAAE;YACF,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC;YACxC,WAAW;YACX,OAAO,EAAE,UAAU,OAAgB;gBAClC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC;SACD,CAAC;IACH,CAAC,CAAiC,CAAC;IAEnC,OAAO,CACN,KAAC,mBAAmB,IACnB,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,QAAQ,EAAE,QAAQ,GACjB,CACF,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAC1B,KAAsD,EACtD,IAAY;IAEZ,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"CheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CheckboxGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAW/E,MAAM,UAAU,aAAa,CAAC,EAC7B,EAAE,EACF,KAAK,EACL,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,MAAM,EACN,KAAK,EACL,WAAW,GAC6B;IACxC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE;QACtE,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QAE1B,OAAO;YACN,KAAK;YACL,IAAI;YACJ,EAAE;YACF,OAAO,EAAE,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC;YACxC,WAAW;YACX,OAAO,EAAE,UAAU,OAAgB;gBAClC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAC1D,CAAC;SACD,CAAC;IACH,CAAC,CAAiC,CAAC;IAEnC,OAAO,CACN,KAAC,mBAAmB,IACnB,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACjB,CACF,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAC1B,KAAsD,EACtD,IAAY;IAEZ,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC"}
@@ -8,6 +8,8 @@ type Props = {
8
8
  label?: ReactNode;
9
9
  description?: ReactNode;
10
10
  shortcut?: boolean;
11
+ readOnly?: boolean;
12
+ disabled?: boolean;
11
13
  };
12
14
  export declare const CustomCheckboxGroup: import("react").ComponentType<Props>;
13
15
  export {};
@@ -6,9 +6,9 @@ import { ComponentErrors } from '../shared/ComponentErrors/ComponentErrors';
6
6
  import { Fieldset } from '../shared/Fieldset/Fieldset';
7
7
  import { CheckboxOption } from '../shared/Checkbox/CheckboxOption';
8
8
  import { getShortcutKey } from '../shared/Checkbox/getShortcutKey';
9
- export const CustomCheckboxGroup = slottableComponent('CheckboxGroup', ({ options, id, label, description, errors, shortcut }) => {
9
+ export const CustomCheckboxGroup = slottableComponent('CheckboxGroup', ({ options, label, description, errors, shortcut, disabled, readOnly, }) => {
10
10
  return (_jsxs(Fieldset, { className: "lunatic-checkbox-group", legend: label, description: description, children: [options.map((option, index) => {
11
- return (_jsx("div", { className: "lunatic-checkbox-group-option", children: _jsx(CheckboxOption, { ...option, shortcut: shortcut, invalid: !!errors, id: option.id, codeModality: shortcut ? getShortcutKey(index, options.length) : undefined }) }, option.id));
11
+ return (_jsx("div", { className: "lunatic-checkbox-group-option", children: _jsx(CheckboxOption, { ...option, disabled: disabled, readOnly: readOnly, shortcut: shortcut, invalid: !!errors, id: option.id, codeModality: shortcut ? getShortcutKey(index, options.length) : undefined }) }, option.id));
12
12
  }), _jsx(ComponentErrors, { errors: errors })] }));
13
13
  });
14
14
  //# sourceMappingURL=CustomCheckboxGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CustomCheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CustomCheckboxGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,EAA4B,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAWnE,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CACpD,eAAe,EACf,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAS,EAAE,EAAE;IAChE,OAAO,CACN,MAAC,QAAQ,IACR,SAAS,EAAC,wBAAwB,EAClC,MAAM,EAAE,KAAK,EACb,WAAW,EAAE,WAAW,aAEvB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC9B,OAAO,CACN,cAAK,SAAS,EAAC,+BAA+B,YAC7C,KAAC,cAAc,OACV,MAAM,EACV,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EACjB,EAAE,EAAE,MAAM,CAAC,EAAE,EACb,YAAY,EACX,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,GAE5D,IATiD,MAAM,CAAC,EAAE,CAUvD,CACN,CAAC;YACH,CAAC,CAAC,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IACzB,CACX,CAAC;AACH,CAAC,CACD,CAAC"}
1
+ {"version":3,"file":"CustomCheckboxGroup.js","sourceRoot":"","sources":["../../../src/components/CheckboxGroup/CustomCheckboxGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,EAA4B,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAanE,MAAM,CAAC,MAAM,mBAAmB,GAAG,kBAAkB,CACpD,eAAe,EACf,CAAC,EACA,OAAO,EACP,KAAK,EACL,WAAW,EACX,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,QAAQ,GACD,EAAE,EAAE;IACX,OAAO,CACN,MAAC,QAAQ,IACR,SAAS,EAAC,wBAAwB,EAClC,MAAM,EAAE,KAAK,EACb,WAAW,EAAE,WAAW,aAEvB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBAC9B,OAAO,CACN,cAAK,SAAS,EAAC,+BAA+B,YAC7C,KAAC,cAAc,OACV,MAAM,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,MAAM,EACjB,EAAE,EAAE,MAAM,CAAC,EAAE,EACb,YAAY,EACX,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,GAE5D,IAXiD,MAAM,CAAC,EAAE,CAYvD,CACN,CAAC;YACH,CAAC,CAAC,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IACzB,CACX,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -2,4 +2,4 @@ import type { LunaticComponentProps } from '../type';
2
2
  /**
3
3
  * Checkbox acting as a radio (only one option can be checked at a time)
4
4
  */
5
- export declare function CheckboxOne({ options, value, id, label, description, handleChange, errors, shortcut, response, }: LunaticComponentProps<'CheckboxOne'>): import("react/jsx-runtime").JSX.Element;
5
+ export declare function CheckboxOne({ options, value, id, label, description, handleChanges, errors, disabled, readOnly, shortcut, response, }: LunaticComponentProps<'CheckboxOne'>): import("react/jsx-runtime").JSX.Element;
@@ -4,7 +4,7 @@ import { getComponentErrors } from '../shared/ComponentErrors/ComponentErrors';
4
4
  /**
5
5
  * Checkbox acting as a radio (only one option can be checked at a time)
6
6
  */
7
- export function CheckboxOne({ options, value, id, label, description, handleChange, errors, shortcut, response, }) {
8
- return (_jsx(RadioGroup, { id: id, className: "lunatic-checkbox-one", options: options, value: value, errors: getComponentErrors(errors, id), label: label, description: description, onSelect: (value) => handleChange(response, value), checkboxStyle: true, shortcut: shortcut, clearable: true }));
7
+ export function CheckboxOne({ options, value, id, label, description, handleChanges, errors, disabled, readOnly, shortcut, response, }) {
8
+ return (_jsx(RadioGroup, { id: id, className: "lunatic-checkbox-one", options: options, value: value, disabled: disabled, readOnly: readOnly, errors: getComponentErrors(errors, id), label: label, description: description, onSelect: (value) => handleChanges([{ name: response.name, value }]), checkboxStyle: true, shortcut: shortcut, clearable: true }));
9
9
  }
10
10
  //# sourceMappingURL=CheckboxOne.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxOne.js","sourceRoot":"","sources":["../../../src/components/CheckboxOne/CheckboxOne.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE/E;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,EAAE,EACF,KAAK,EACL,WAAW,EACX,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,QAAQ,GAC8B;IACtC,OAAO,CACN,KAAC,UAAU,IACV,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,CAAC,KAAoB,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjE,aAAa,EAAE,IAAI,EACnB,QAAQ,EAAE,QAAQ,EAClB,SAAS,SACR,CACF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"CheckboxOne.js","sourceRoot":"","sources":["../../../src/components/CheckboxOne/CheckboxOne.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE/E;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,EAAE,EACF,KAAK,EACL,WAAW,EACX,aAAa,EACb,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,GAC8B;IACtC,OAAO,CACN,KAAC,UAAU,IACV,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,sBAAsB,EAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,EACtC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,CAAC,KAAoB,EAAE,EAAE,CAClC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAEhD,aAAa,EAAE,IAAI,EACnB,QAAQ,EAAE,QAAQ,EAClB,SAAS,SACR,CACF,CAAC;AACH,CAAC"}
@@ -10,16 +10,18 @@ describe('CheckboxOne component', () => {
10
10
  ];
11
11
  const onSelect = vi.fn();
12
12
  it('renders the component with correct props', () => {
13
- const { getByText } = render(_jsx(CheckboxOne, { response: { name: 'demo' }, options: options, value: "option-1", id: "checkbox-one", handleChange: onSelect }));
13
+ const { getByText } = render(_jsx(CheckboxOne, { response: { name: 'demo' }, options: options, value: "option-1", id: "checkbox-one", handleChanges: onSelect }));
14
14
  expect(getByText('Option 1')).toBeInTheDocument();
15
15
  expect(getByText('Option 2')).toBeInTheDocument();
16
16
  expect(getByText('Option 3')).toBeInTheDocument();
17
17
  });
18
18
  it('calls onSelect when an option is selected', () => {
19
- const { getByText } = render(_jsx(CheckboxOne, { response: { name: 'demo' }, options: options, value: "option-1", id: "checkbox-one", label: "Checkbox One", description: "Choose one option", handleChange: onSelect }));
19
+ const { getByText } = render(_jsx(CheckboxOne, { response: { name: 'demo' }, options: options, value: "option-1", id: "checkbox-one", label: "Checkbox One", description: "Choose one option", handleChanges: onSelect }));
20
20
  fireEvent.click(getByText('Option 2'));
21
21
  expect(onSelect).toHaveBeenCalledTimes(1);
22
- expect(onSelect).toHaveBeenCalledWith({ name: 'demo' }, 'option-2');
22
+ expect(onSelect).toHaveBeenCalledWith([
23
+ { name: 'demo', value: 'option-2' },
24
+ ]);
23
25
  });
24
26
  });
25
27
  //# sourceMappingURL=CheckboxOne.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxOne.spec.js","sourceRoot":"","sources":["../../../src/components/CheckboxOne/CheckboxOne.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG;QACf,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;QACxC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;QACxC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;KACxC,CAAC;IACF,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEzB,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,WAAW,IACX,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,UAAU,EAChB,EAAE,EAAC,cAAc,EACjB,YAAY,EAAE,QAAQ,GACrB,CACF,CAAC;QAEF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,WAAW,IACX,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,UAAU,EAChB,EAAE,EAAC,cAAc,EACjB,KAAK,EAAC,cAAc,EACpB,WAAW,EAAC,mBAAmB,EAC/B,YAAY,EAAE,QAAQ,GACrB,CACF,CAAC;QAEF,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAEvC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"CheckboxOne.spec.js","sourceRoot":"","sources":["../../../src/components/CheckboxOne/CheckboxOne.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG;QACf,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;QACxC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;QACxC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;KACxC,CAAC;IACF,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEzB,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,WAAW,IACX,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,UAAU,EAChB,EAAE,EAAC,cAAc,EACjB,aAAa,EAAE,QAAQ,GACtB,CACF,CAAC;QAEF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC3B,KAAC,WAAW,IACX,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,UAAU,EAChB,EAAE,EAAC,cAAc,EACjB,KAAK,EAAC,cAAc,EACpB,WAAW,EAAC,mBAAmB,EAC/B,aAAa,EAAE,QAAQ,GACtB,CACF,CAAC;QAEF,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAEvC,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC;YACrC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;SACnC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import type { LunaticComponentProps } from '../type';
3
3
  import type { LunaticError } from '../../use-lunatic/type';
4
- export declare function Datepicker({ dateFormat, response, handleChange, errors, ...props }: LunaticComponentProps<'Datepicker'>): import("react/jsx-runtime").JSX.Element;
5
- type CustomProps = Omit<LunaticComponentProps<'Datepicker'>, 'response' | 'handleChange' | 'errors'> & {
4
+ export declare function Datepicker({ dateFormat, response, handleChanges, errors, ...props }: LunaticComponentProps<'Datepicker'>): import("react/jsx-runtime").JSX.Element;
5
+ type CustomProps = Omit<LunaticComponentProps<'Datepicker'>, 'response' | 'handleChanges' | 'errors'> & {
6
6
  onChange: (s: string | null) => void;
7
7
  errors?: LunaticError[];
8
8
  };
@@ -5,8 +5,8 @@ import { slottableComponent } from '../shared/HOC/slottableComponent';
5
5
  import { Label } from '../shared/Label/Label';
6
6
  import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
7
7
  import { Declarations } from '../shared/Declarations/Declarations';
8
- export function Datepicker({ dateFormat = 'YYYY-MM-DD', response, handleChange, errors, ...props }) {
9
- return (_jsx(CustomDatepicker, { ...props, dateFormat: dateFormat ?? 'YYYY-MM-DD', onChange: (v) => handleChange(response, v), errors: getComponentErrors(errors, props.id) }));
8
+ export function Datepicker({ dateFormat = 'YYYY-MM-DD', response, handleChanges, errors, ...props }) {
9
+ return (_jsx(CustomDatepicker, { ...props, dateFormat: dateFormat ?? 'YYYY-MM-DD', onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
10
10
  }
11
11
  export const CustomDatepicker = slottableComponent('Datepicker', (props) => {
12
12
  const { disabled, readOnly, value = '', dateFormat = 'YYYY-MM-DD', id, label, errors, description, declarations, onChange, } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Datepicker.js","sourceRoot":"","sources":["../../../src/components/Datepicker/Datepicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Datepicker.js","sourceRoot":"","sources":["../../../src/components/Datepicker/Datepicker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,UAAU,CAAC,EAC1B,UAAU,GAAG,YAAY,EACzB,QAAQ,EACR,aAAa,EACb,MAAM,EACN,GAAG,KAAK,EAC6B;IACrC,OAAO,CACN,KAAC,gBAAgB,OACZ,KAAK,EACT,UAAU,EAAE,UAAU,IAAI,YAAY,EACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CACjD,YAAY,EACZ,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,QAAQ,EACR,QAAQ,EACR,KAAK,GAAG,EAAE,EACV,UAAU,GAAG,YAAY,EACzB,EAAE,EACF,KAAK,EACL,MAAM,EACN,WAAW,EACX,YAAY,EACZ,QAAQ,GACR,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,sBAAsB,EAAE,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5C,gDAAgD;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAC3C,qBAAqB,CAAC,KAAK,IAAI,SAAS,CAAC,CACzC,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE;QACtD,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,CAAmB,CAAC;QAClD,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;QAC1B,UAAU,CAAC,UAAU,CAAC,CAAC;QACvB,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,OAAiC,EAAE,EAAE;QAC7D,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9D,0BAA0B;QAC1B,IAAI,WAAW,GAAG,CAAC,CAAC,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/D,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACR,CAAC;QAED,oBAAoB;QACpB,IAAI,UAAU,KAAK,YAAY,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1D,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACR,CAAC;QAED,MAAM,MAAM,GAAG,WAAW;aACxB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;aAC5D,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG;QAClB,QAAQ;QACR,QAAQ;KACR,CAAC;IAEF,OAAO,CACN,eAAK,SAAS,EAAC,eAAe,aAC7B,KAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,YACvD,KAAK,GACC,EACR,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,eAAK,SAAS,EAAC,yBAAyB,aACtC,OAAO,IAAI,CACX,KAAC,eAAe,IACf,EAAE,EAAE,EAAE,GAAG,KAAK,EACd,KAAK,EAAC,MAAM,EACZ,WAAW,EAAC,aAAa,EACzB,GAAG,EAAE,EAAE,EACP,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,KAClB,UAAU,GACb,CACF,EACA,SAAS,IAAI,CACb,KAAC,eAAe,IACf,EAAE,EAAE,EAAE,GAAG,OAAO,EAChB,KAAK,EAAC,MAAM,EACZ,WAAW,EAAC,aAAa,EACzB,GAAG,EAAE,EAAE,EACP,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,KAClB,UAAU,GACb,CACF,EACD,KAAC,eAAe,IACf,EAAE,EAAE,EAAE,GAAG,MAAM,EACf,KAAK,EAAC,YAAO,EACb,WAAW,EAAC,eAAe,EAC3B,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,GAAG,EAAE,IAAI,EACT,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,KAClB,UAAU,GACb,IACG,EACN,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CACD,CAAC;AAEF,SAAS,qBAAqB,CAAC,CAAU;IACxC,IAAI,CAAC,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO;QACN,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACtB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACtB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;KACtB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,SAAmC;IACvD,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAE5C,OAAO,CACN,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI;QAC3B,IAAI,CAAC,QAAQ,EAAE,KAAK,KAAK,GAAG,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,CACtB,CAAC;AACH,CAAC"}
@@ -16,41 +16,60 @@ describe('Datepicker', () => {
16
16
  });
17
17
  ['YYYY-MM-DD', 'YYYY-MM', 'YYYY'].forEach((format) => {
18
18
  it('should render properly with format ' + format, () => {
19
- const { container } = render(_jsx(Datepicker, { ...baseProps, handleChange: mockOnChange, dateFormat: format }));
19
+ const { container } = render(_jsx(Datepicker, { ...baseProps, handleChanges: mockOnChange, dateFormat: format }));
20
20
  expect(container).toMatchSnapshot();
21
21
  });
22
22
  });
23
23
  it('handle change correctly for format YYYY-MM-DD', () => {
24
- render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY-MM-DD", handleChange: mockOnChange }));
24
+ render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY-MM-DD", handleChanges: mockOnChange }));
25
25
  fireEvent.change(screen.getByLabelText(/Année/), {
26
26
  target: { valueAsNumber: 2023 },
27
27
  });
28
- expect(mockOnChange).toHaveBeenLastCalledWith(baseProps.response, '2023-01-01');
28
+ expect(mockOnChange).toHaveBeenLastCalledWith([
29
+ {
30
+ ...baseProps.response,
31
+ value: '2023-01-01',
32
+ },
33
+ ]);
29
34
  fireEvent.change(screen.getByLabelText(/Mois/), {
30
35
  target: { valueAsNumber: 2 },
31
36
  });
32
37
  fireEvent.change(screen.getByLabelText(/Jour/), {
33
38
  target: { valueAsNumber: 30 },
34
39
  });
35
- expect(mockOnChange).toHaveBeenLastCalledWith(baseProps.response, null);
40
+ expect(mockOnChange).toHaveBeenLastCalledWith([
41
+ { ...baseProps.response, value: null },
42
+ ]);
36
43
  });
37
44
  it('handle change correctly for format YYYY-MM', () => {
38
- render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY-MM", value: "1999-01", handleChange: mockOnChange }));
45
+ render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY-MM", value: "1999-01", handleChanges: mockOnChange }));
39
46
  fireEvent.change(screen.getByLabelText(/Année/), {
40
47
  target: { valueAsNumber: 2023 },
41
48
  });
42
- expect(mockOnChange).toHaveBeenLastCalledWith(baseProps.response, '2023-01');
49
+ expect(mockOnChange).toHaveBeenLastCalledWith([
50
+ {
51
+ ...baseProps.response,
52
+ value: '2023-01',
53
+ },
54
+ ]);
43
55
  fireEvent.change(screen.getByLabelText(/Mois/), {
44
56
  target: { valueAsNumber: 10 },
45
57
  });
46
- expect(mockOnChange).toHaveBeenLastCalledWith(baseProps.response, '2023-10');
58
+ expect(mockOnChange).toHaveBeenLastCalledWith([
59
+ {
60
+ ...baseProps.response,
61
+ value: '2023-10',
62
+ },
63
+ ]);
47
64
  });
48
65
  it('handle change correctly for year YYYY', () => {
49
- render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY", value: "1999", handleChange: mockOnChange }));
66
+ render(_jsx(Datepicker, { ...baseProps, dateFormat: "YYYY", value: "1999", handleChanges: mockOnChange }));
50
67
  fireEvent.change(screen.getByLabelText(/Année/), {
51
68
  target: { valueAsNumber: 2023 },
52
69
  });
53
- expect(mockOnChange).toHaveBeenLastCalledWith(baseProps.response, '2023');
70
+ expect(mockOnChange).toHaveBeenLastCalledWith([
71
+ { ...baseProps.response, value: '2023' },
72
+ ]);
54
73
  });
55
74
  });
56
75
  //# sourceMappingURL=Datepicker.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Datepicker.spec.js","sourceRoot":"","sources":["../../../src/components/Datepicker/Datepicker.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Datepicker.spec.js","sourceRoot":"","sources":["../../../src/components/Datepicker/Datepicker.spec.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import type { LunaticComponentProps } from '../type';
3
3
  import type { LunaticError } from '../../use-lunatic/type';
4
- export declare function Dropdown({ handleChange, response, errors, ...props }: LunaticComponentProps<'Dropdown'>): import("react/jsx-runtime").JSX.Element;
5
- type CustomProps = Omit<LunaticComponentProps<'Dropdown'>, 'response' | 'handleChange' | 'errors'> & {
4
+ export declare function Dropdown({ handleChanges, response, errors, ...props }: LunaticComponentProps<'Dropdown'>): import("react/jsx-runtime").JSX.Element;
5
+ type CustomProps = Omit<LunaticComponentProps<'Dropdown'>, 'response' | 'handleChanges' | 'errors'> & {
6
6
  onChange: (v: string | null) => void;
7
7
  errors?: LunaticError[];
8
8
  };
@@ -5,8 +5,8 @@ import { SimpleOptionRenderer } from './renderer/SimpleOptionRenderer';
5
5
  import { SimpleLabelRenderer } from './renderer/SimpleLabelRenderer';
6
6
  import { Combobox } from '../shared/Combobox/Combobox';
7
7
  import classNames from 'classnames';
8
- export function Dropdown({ handleChange, response, errors, ...props }) {
9
- return (_jsx(CustomDropdown, { ...props, onChange: (v) => handleChange(response, v), errors: getComponentErrors(errors, props.id) }));
8
+ export function Dropdown({ handleChanges, response, errors, ...props }) {
9
+ return (_jsx(CustomDropdown, { ...props, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
10
10
  }
11
11
  export const CustomDropdown = slottableComponent('Dropdown', (props) => {
12
12
  const { id, disabled, options, className, value, description, label, errors, onChange, readOnly, } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,MAAM,UAAU,QAAQ,CAAC,EACxB,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EAC2B;IACnC,OAAO,CACN,KAAC,cAAc,OACV,KAAK,EACT,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,EAC1C,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,UAAU,EACV,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,SAAS,EACT,KAAK,EACL,WAAW,EACX,KAAK,EACL,MAAM,EACN,QAAQ,EACR,QAAQ,GACR,GAAG,KAAK,CAAC;IAEV,OAAO,CACN,KAAC,QAAQ,IACR,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,kBAAkB,CAAC,EACpD,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,oBAAoB,EACpC,aAAa,EAAE,mBAAmB,EAClC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,CACF,CAAC;AACH,CAAC,CACD,CAAC"}
1
+ {"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,MAAM,UAAU,QAAQ,CAAC,EACxB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EAC2B;IACnC,OAAO,CACN,KAAC,cAAc,OACV,KAAK,EACT,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,UAAU,EACV,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,SAAS,EACT,KAAK,EACL,WAAW,EACX,KAAK,EACL,MAAM,EACN,QAAQ,EACR,QAAQ,GACR,GAAG,KAAK,CAAC;IAEV,OAAO,CACN,KAAC,QAAQ,IACR,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,kBAAkB,CAAC,EACpD,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,oBAAoB,EACpC,aAAa,EAAE,mBAAmB,EAClC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,CACF,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -16,7 +16,7 @@ describe('Dropdown', () => {
16
16
  },
17
17
  ],
18
18
  response: { name: 'demo' },
19
- handleChange: mockOnSelect,
19
+ handleChanges: mockOnSelect,
20
20
  };
21
21
  beforeEach(() => {
22
22
  mockOnSelect.mockClear();
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.spec.js","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAG;QACjB,KAAK,EAAE,MAAM;QACb,EAAE,EAAE,UAAU;QACd,iBAAiB,EAAE,UAAU;QAC7B,OAAO,EAAE;YACR;gBACC,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,MAAM;gBACnB,KAAK,EAAE,MAAM;aACb;SACD;QACD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QAC1B,YAAY,EAAE,YAAY;KAC1B,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACf,YAAY,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,QAAQ,OAAK,SAAS,GAAI,CAAC,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACjC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,QAAQ,OAAK,SAAS,EAAE,QAAQ,SAAG,CAAC,CAAC;QACnE,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACvE,SAAyB,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Dropdown.spec.js","sourceRoot":"","sources":["../../../src/components/Dropdown/Dropdown.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAG;QACjB,KAAK,EAAE,MAAM;QACb,EAAE,EAAE,UAAU;QACd,iBAAiB,EAAE,UAAU;QAC7B,OAAO,EAAE;YACR;gBACC,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,MAAM;gBACnB,KAAK,EAAE,MAAM;aACb;SACD;QACD,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QAC1B,aAAa,EAAE,YAAY;KAC3B,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACf,YAAY,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,QAAQ,OAAK,SAAS,GAAI,CAAC,CAAC;QAC1D,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACjC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,QAAQ,OAAK,SAAS,EAAE,QAAQ,SAAG,CAAC,CAAC;QACnE,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe,EAAE,CAAC;QAEpC,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;QACvE,SAAyB,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import type { LunaticComponentProps } from '../type';
3
3
  import type { LunaticError } from '../../use-lunatic/type';
4
- export declare function Duration({ handleChange, response, errors, ...props }: LunaticComponentProps<'Duration'>): import("react/jsx-runtime").JSX.Element;
5
- type CustomProps = Omit<LunaticComponentProps<'Duration'>, 'response' | 'handleChange' | 'errors'> & {
4
+ export declare function Duration({ handleChanges, response, errors, ...props }: LunaticComponentProps<'Duration'>): import("react/jsx-runtime").JSX.Element;
5
+ type CustomProps = Omit<LunaticComponentProps<'Duration'>, 'response' | 'handleChanges' | 'errors'> & {
6
6
  onChange: (v: string | null) => void;
7
7
  errors?: LunaticError[];
8
8
  };
@@ -8,8 +8,8 @@ import { objectKeys } from '../../utils/object';
8
8
  import { slottableComponent } from '../shared/HOC/slottableComponent';
9
9
  import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
10
10
  import { Declarations } from '../shared/Declarations/Declarations';
11
- export function Duration({ handleChange, response, errors, ...props }) {
12
- return (_jsx(CustomDuration, { ...props, onChange: (v) => handleChange(response, v), errors: getComponentErrors(errors, props.id) }));
11
+ export function Duration({ handleChanges, response, errors, ...props }) {
12
+ return (_jsx(CustomDuration, { ...props, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
13
13
  }
14
14
  export const CustomDuration = slottableComponent('Duration', (props) => {
15
15
  const { errors, value, label, format, onChange, declarations, id } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Duration.js","sourceRoot":"","sources":["../../../src/components/Duration/Duration.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Duration.js","sourceRoot":"","sources":["../../../src/components/Duration/Duration.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,MAAM,UAAU,QAAQ,CAAC,EACxB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EAC2B;IACnC,OAAO,CACN,KAAC,cAAc,OACV,KAAK,EACT,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,UAAU,EACV,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;IAC3E,0FAA0F;IAC1F,mEAAmE;IACnE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CACvC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CACnC,CAAC;IAEF,8DAA8D;IAC9D,MAAM,aAAa,GAClB,CAAC,IAA8C,EAAE,EAAE,CACnD,CAAC,CAGA,EAAE,EAAE;QACJ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/B,OAAO;QACR,CAAC;QACD,MAAM,UAAU,GAAG,aAAa,CAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,EACpE,IAAI,CACJ,CAAC;QACF,MAAM,WAAW,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;QACxD,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;QACtC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEH,OAAO,CACN,oBAAU,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,aAC9C,KAAK,IAAI,2BAAS,KAAK,GAAU,EAClC,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,cAAK,SAAS,EAAC,iBAAiB,YAC9B,UAAU,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnC,eAAK,SAAS,EAAC,gBAAgB,aAC9B,gBAAO,OAAO,EAAE,GAAG,IAAI,OAAO,EAAE,SAAS,EAAC,aAAa,YACrD,WAAW,CAAC,IAAI,CAAC,GACX,EACR,gBACC,EAAE,EAAE,GAAG,IAAI,OAAO,EAClB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAC3B,SAAS,EAAC,aAAa,EACvB,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,KACzB,WAAW,CAAC,IAAI,CAAC,GACpB,KAXkC,IAAI,CAYnC,CACN,CAAC,GACG,EACN,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IACzB,CACX,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import type { LunaticComponentProps } from '../type';
3
3
  import type { LunaticError } from '../../use-lunatic/type';
4
- export declare function Input({ handleChange, response, errors, ...props }: LunaticComponentProps<'Input'>): import("react/jsx-runtime").JSX.Element;
5
- type CustomProps = Omit<LunaticComponentProps<'Input'>, 'response' | 'handleChange' | 'errors'> & {
4
+ export declare function Input({ handleChanges, response, errors, ...props }: LunaticComponentProps<'Input'>): import("react/jsx-runtime").JSX.Element;
5
+ type CustomProps = Omit<LunaticComponentProps<'Input'>, 'response' | 'handleChanges' | 'errors'> & {
6
6
  onChange: (v: string) => void;
7
7
  errors?: LunaticError[];
8
8
  };
@@ -4,8 +4,8 @@ import { Label } from '../shared/Label/Label';
4
4
  import { slottableComponent } from '../shared/HOC/slottableComponent';
5
5
  import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
6
6
  import { Declarations } from '../shared/Declarations/Declarations';
7
- export function Input({ handleChange, response, errors, ...props }) {
8
- return (_jsx(CustomInput, { ...props, onChange: (v) => handleChange(response, v), errors: getComponentErrors(errors, props.id) }));
7
+ export function Input({ handleChanges, response, errors, ...props }) {
8
+ return (_jsx(CustomInput, { ...props, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
9
9
  }
10
10
  export const CustomInput = slottableComponent('Input', (props) => {
11
11
  const { value, onChange, disabled, required, maxLength, label, description, id, errors, readOnly, declarations, } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,KAAK,CAAC,EACrB,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACwB;IAChC,OAAO,CACN,KAAC,WAAW,OACP,KAAK,EACT,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,EAC1C,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAc,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;IAC7E,MAAM,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,WAAW,EACX,EAAE,EACF,MAAM,EACN,QAAQ,EACR,YAAY,GACZ,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAC9B,OAAO,CACN,eAAK,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,aAC1C,KAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,YACvD,KAAK,GACC,EACR,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,gBACC,EAAE,EAAE,EAAE,qBACW,OAAO,EACxB,YAAY,EAAC,KAAK,EAClB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,mBAC1B,QAAQ,EACvB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,kBACN,CAAC,CAAC,MAAM,GACrB,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,KAAK,CAAC,EACrB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACwB;IAChC,OAAO,CACN,KAAC,WAAW,OACP,KAAK,EACT,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAc,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;IAC7E,MAAM,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,WAAW,EACX,EAAE,EACF,MAAM,EACN,QAAQ,EACR,YAAY,GACZ,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAC9B,OAAO,CACN,eAAK,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,aAC1C,KAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,YACvD,KAAK,GACC,EACR,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,gBACC,EAAE,EAAE,EAAE,qBACW,OAAO,EACxB,YAAY,EAAC,KAAK,EAClB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,mBAC1B,QAAQ,EACvB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,kBACN,CAAC,CAAC,MAAM,GACrB,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CAAC,CAAC"}