@inseefr/lunatic 2.7.1 → 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 (164) 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 +19 -42
  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 +8 -3
  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 +6 -0
  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 +15 -0
  120. package/lib/use-lunatic/commons/variables/lunatic-variables-store.spec.js +9 -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 +7 -3
  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 +5 -4
  127. package/lib/utils/suggester-workers/create-worker.js +10 -1
  128. package/lib/utils/suggester-workers/worker-path.js +29 -0
  129. package/package.json +24 -11
  130. package/scripts/build/add-workers-to-public.js +44 -0
  131. package/scripts/build/workers-paths.js +45 -0
  132. package/workers-release/lunatic-append-worker-0.3.0.js +2 -0
  133. package/workers-release/lunatic-append-worker-0.3.0.js.LICENSE.txt +34 -0
  134. package/workers-release/lunatic-label-worker-0.3.0.js +2 -0
  135. package/workers-release/lunatic-label-worker-0.3.0.js.LICENSE.txt +13 -0
  136. package/workers-release/lunatic-search-worker-0.3.0.js +2 -0
  137. package/workers-release/lunatic-search-worker-0.3.0.js.LICENSE.txt +34 -0
  138. package/lib/components/datepicker/html/datepicker-container.js +0 -17
  139. package/lib/components/datepicker/html/datepicker-input.js +0 -35
  140. package/lib/env.d.js +0 -1
  141. package/lib/src/components/datepicker/html/datepicker-container.d.ts +0 -3
  142. package/lib/src/components/datepicker/html/datepicker-input.d.ts +0 -13
  143. package/lib/src/utils/get-component-value.d.ts +0 -5
  144. package/lib/src/utils/store-tools/worker-path.d.ts +0 -1
  145. package/lib/utils/get-component-value.js +0 -34
  146. package/lib/utils/get-component-value.test.js +0 -57
  147. package/lib/utils/store-tools/worker-path.js +0 -13
  148. package/lib/utils/suggester-workers/create-worker-ts.js +0 -54
  149. /package/lib/src/{utils/get-component-value.test.d.ts → components/loop/roster-for-loop/roster-for-loop.spec.d.ts} +0 -0
  150. /package/lib/src/utils/suggester-workers/{create-worker-ts.d.ts → create-worker.d.ts} +0 -0
  151. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNonNum_horsBoucle_PasPageFin.json +0 -0
  152. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNum_horsBoucle_PasPageFin.json +0 -0
  153. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees2_PasPageFin.json +0 -0
  154. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees_PasPageFin.json +0 -0
  155. /package/lib/stories/{questionnaires-test → behaviour}/controls/boucles-n.json +0 -0
  156. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.json +0 -0
  157. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.stories.js +0 -0
  158. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_DeclarationsSimples.json +0 -0
  159. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_MinMaxSum_Boucles.json +0 -0
  160. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_QuestSimple_Boucles.json +0 -0
  161. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_TCMRallyeGames.json +0 -0
  162. /package/lib/stories/{questionnaires-test → behaviour/others}/test-dylan.json +0 -0
  163. /package/lib/stories/{paste-questionnaire → behaviour/paste}/source.json +0 -0
  164. /package/lib/stories/{resizing-questionnaire → behaviour/resizing}/source.json +0 -0
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env node
2
+ const fs = require('fs');
3
+ const path = require('path');
4
+ const { currentPublicFolder, workersPath } = require('./workers-paths');
5
+
6
+ const currentPackageJson = require(path.resolve(
7
+ `${process.cwd()}/package.json`
8
+ ));
9
+ const lunaticPackageJson = require('../../package.json');
10
+
11
+ /**
12
+ * Copy worker only if not exists
13
+ */
14
+ const copyWorkerToPublicFolder = () => {
15
+ console.log('Running add-workers-to-public....');
16
+
17
+ if (!fs.existsSync(currentPublicFolder)) {
18
+ fs.mkdirSync(currentPublicFolder, { recursive: true });
19
+ }
20
+
21
+ Object.keys(workersPath).forEach((worker) => {
22
+ const { name, source, dest } = workersPath[worker];
23
+ const isWorkerExists = fs.existsSync(dest);
24
+
25
+ if (!isWorkerExists) {
26
+ console.log(`Copy : ${name} to ${currentPublicFolder}`);
27
+ fs.copyFileSync(source, dest);
28
+ } else {
29
+ console.log(`${name} is already in ${currentPublicFolder} -> Skipped`);
30
+ }
31
+ });
32
+ };
33
+
34
+ const isLunaticPostInstall = () => {
35
+ const lunaticName = lunaticPackageJson.name;
36
+ const currentName = currentPackageJson.name;
37
+
38
+ const currentNpmLiveCycle = process.env.npm_lifecycle_event;
39
+ return lunaticName === currentName && currentNpmLiveCycle === 'postinstall';
40
+ };
41
+
42
+ if (isLunaticPostInstall()) {
43
+ console.log('PostInstall skipped !');
44
+ } else copyWorkerToPublicFolder();
@@ -0,0 +1,45 @@
1
+ const lunaticPackageJson = require('../../package.json');
2
+ const path = require('path');
3
+
4
+ const version = lunaticPackageJson.workersVersion;
5
+
6
+ const currentPublicFolder = path.resolve(`${process.cwd()}/public/workers`);
7
+ const workersReleaseFolder = path.resolve(__dirname, '../../workers-release');
8
+
9
+ const workersPath = {
10
+ append: {
11
+ name: 'Append worker',
12
+ source: `${workersReleaseFolder}/lunatic-append-worker-${version}.js`,
13
+ dest: `${currentPublicFolder}/lunatic-append-worker-${version}.js`,
14
+ webpack: {
15
+ entry: './src/utils/suggester-workers/append-to-index/append.worker.js',
16
+ filename: `lunatic-append-worker-${version}.js`,
17
+ },
18
+ },
19
+ // Label worker is not currently used
20
+ label: {
21
+ name: 'Label worker',
22
+ source: `${workersReleaseFolder}/lunatic-label-worker-${version}.js`,
23
+ dest: `${currentPublicFolder}/lunatic-label-worker-${version}.js`,
24
+ webpack: {
25
+ entry:
26
+ './src/utils/suggester-workers/find-best-label/find-best-label.worker.js',
27
+ filename: `lunatic-label-worker-${version}.js`,
28
+ },
29
+ },
30
+ searching: {
31
+ name: 'Searching worker',
32
+ source: `${workersReleaseFolder}/lunatic-search-worker-${version}.js`,
33
+ dest: `${currentPublicFolder}/lunatic-search-worker-${version}.js`,
34
+ webpack: {
35
+ entry: './src/utils/suggester-workers/searching/searching.worker.js',
36
+ filename: `lunatic-search-worker-${version}.js`,
37
+ },
38
+ },
39
+ };
40
+
41
+ module.exports = {
42
+ currentPublicFolder: currentPublicFolder,
43
+ workersReleaseFolder: workersReleaseFolder,
44
+ workersPath: workersPath,
45
+ };