@inseefr/lunatic 2.6.2 → 2.6.3

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 (129) hide show
  1. package/README.md +49 -3
  2. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +3 -3
  3. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +7 -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 -1
  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/__snapshots__/datepicker.spec.tsx.snap +2 -0
  20. package/lib/components/datepicker/html/datepicker-input.js +4 -2
  21. package/lib/components/datepicker/html/datepicker.js +3 -3
  22. package/lib/components/datepicker/lunatic-datepicker.js +2 -1
  23. package/lib/components/dropdown/lunatic-dropdown.js +2 -1
  24. package/lib/components/input/html/__snapshots__/input.spec.tsx.snap +2 -0
  25. package/lib/components/input/html/input.js +3 -3
  26. package/lib/components/input/lunatic-input.js +2 -1
  27. package/lib/components/input-number/html/__snapshots__/input-number.spec.tsx.snap +2 -2
  28. package/lib/components/input-number/html/input-number-thousand.js +4 -17
  29. package/lib/components/input-number/html/input-number.js +3 -5
  30. package/lib/components/input-number/lunatic-input-number.js +2 -3
  31. package/lib/components/lunatic-components.js +2 -11
  32. package/lib/components/radio/html/radio-group-content.js +4 -2
  33. package/lib/components/radio/html/radio-group.js +3 -3
  34. package/lib/components/radio/html/radio-option.js +3 -1
  35. package/lib/components/radio/lunatic-radio-group.js +2 -1
  36. package/lib/components/suggester/find-best-label/find-best-label.js +6 -6
  37. package/lib/components/suggester/idb-suggester/idb-suggester.js +4 -3
  38. package/lib/components/suggester/lunatic-suggester.js +7 -4
  39. package/lib/components/suggester/searching/create-searching.js +20 -39
  40. package/lib/components/switch/html/switch.js +2 -2
  41. package/lib/components/switch/lunatic-switch.js +2 -1
  42. package/lib/components/table/lunatic-table.js +2 -2
  43. package/lib/components/textarea/html/__snapshots__/textarea.spec.tsx.snap +2 -0
  44. package/lib/components/textarea/html/textarea.js +6 -4
  45. package/lib/components/textarea/lunatic-textarea.js +6 -3
  46. package/lib/hooks/use-auto-focus.js +26 -0
  47. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.d.ts +1 -1
  48. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.d.ts +2 -1
  49. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group.d.ts +1 -1
  50. package/lib/src/components/checkbox/commons/checkbox-option.d.ts +1 -0
  51. package/lib/src/components/commons/components/combo-box/combo-box-container.d.ts +2 -2
  52. package/lib/src/components/commons/components/combo-box/combo-box.d.ts +2 -2
  53. package/lib/src/components/commons/components/combo-box/combo-box.stories.d.ts +4 -6
  54. package/lib/src/components/commons/components/combo-box/selection/LabelOrInput.d.ts +1 -0
  55. package/lib/src/components/commons/components/combo-box/selection/input.d.ts +1 -0
  56. package/lib/src/components/commons/components/combo-box/selection/selection.d.ts +2 -1
  57. package/lib/src/components/commons/components/errors/errors.d.ts +6 -3
  58. package/lib/src/components/datepicker/html/datepicker-input.d.ts +2 -1
  59. package/lib/src/components/datepicker/html/datepicker.d.ts +1 -1
  60. package/lib/src/components/dropdown/html/dropdown-writable/dropdown-writable.d.ts +1 -1
  61. package/lib/src/components/dropdown/html/dropdown.d.ts +3 -1
  62. package/lib/src/components/input/html/input.d.ts +2 -2
  63. package/lib/src/components/input-number/html/input-number-thousand.d.ts +2 -2
  64. package/lib/src/components/input-number/html/input-number.d.ts +2 -3
  65. package/lib/src/components/radio/html/radio-group-content.d.ts +2 -1
  66. package/lib/src/components/radio/html/radio-group.d.ts +1 -1
  67. package/lib/src/components/radio/html/radio-option.d.ts +1 -0
  68. package/lib/src/components/suggester/find-best-label/find-best-label.d.ts +1 -1
  69. package/lib/src/components/suggester/html/suggester.d.ts +1 -1
  70. package/lib/src/components/suggester/idb-suggester/idb-suggester.d.ts +5 -2
  71. package/lib/src/components/suggester/lunatic-suggester.d.ts +1 -1
  72. package/lib/src/components/suggester/searching/create-searching.d.ts +1 -1
  73. package/lib/src/components/switch/html/switch.d.ts +1 -1
  74. package/lib/src/components/textarea/html/textarea.d.ts +3 -2
  75. package/lib/src/components/type.d.ts +4 -3
  76. package/lib/src/hooks/use-auto-focus.d.ts +6 -0
  77. package/lib/src/use-lunatic/actions.d.ts +3 -0
  78. package/lib/src/use-lunatic/commons/fill-components/fill-component-required.d.ts +418 -0
  79. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +20 -0
  80. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +1 -0
  81. package/lib/src/use-lunatic/type.d.ts +2 -1
  82. package/lib/src/use-lunatic/use-lunatic.d.ts +8 -5
  83. package/lib/src/use-lunatic/use-suggesters.d.ts +2 -1
  84. package/lib/src/utils/suggester-workers/append-to-index/create-append-task.d.ts +1 -1
  85. package/lib/src/utils/suggester-workers/worker-path.d.ts +6 -0
  86. package/lib/stories/behaviour/cleaning/source.json +151 -0
  87. package/lib/stories/behaviour/cleaning/test.stories.js +84 -0
  88. package/lib/stories/{questionnaires-test → behaviour}/controls/controls.stories.js +5 -5
  89. package/lib/stories/{questionnaires-test → behaviour/others}/test.stories.js +7 -7
  90. package/lib/stories/{paste-questionnaire → behaviour/paste}/test.stories.js +3 -3
  91. package/lib/stories/{resizing-questionnaire → behaviour/resizing}/test.stories.js +3 -3
  92. package/lib/use-lunatic/commons/fill-components/fill-component-required.js +23 -0
  93. package/lib/use-lunatic/commons/fill-components/fill-components.js +2 -1
  94. package/lib/use-lunatic/commons/fill-components/fill-from-state.js +2 -0
  95. package/lib/use-lunatic/initial-state.js +2 -1
  96. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.js +7 -1
  97. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-resizing.js +12 -3
  98. package/lib/use-lunatic/reducer/reduce-on-init.js +4 -2
  99. package/lib/use-lunatic/use-lunatic.js +19 -8
  100. package/lib/use-lunatic/use-lunatic.test.js +34 -2
  101. package/lib/use-lunatic/use-suggesters.js +4 -3
  102. package/lib/utils/suggester-workers/append-to-index/create-append-task.js +4 -3
  103. package/lib/utils/suggester-workers/worker-path.js +29 -0
  104. package/package.json +15 -10
  105. package/scripts/build/add-workers-to-public.js +44 -0
  106. package/scripts/build/workers-paths.js +44 -0
  107. package/workers-release/lunatic-append-worker-0.3.0-experimental.js +2 -0
  108. package/workers-release/lunatic-append-worker-0.3.0-experimental.js.LICENSE.txt +34 -0
  109. package/workers-release/lunatic-label-worker-0.3.0-experimental.js +2 -0
  110. package/workers-release/lunatic-label-worker-0.3.0-experimental.js.LICENSE.txt +13 -0
  111. package/workers-release/lunatic-searching-worker-0.3.0-experimental.js +2 -0
  112. package/workers-release/lunatic-searching-worker-0.3.0-experimental.js.LICENSE.txt +34 -0
  113. package/lib/src/utils/store-tools/worker-path.d.ts +0 -1
  114. package/lib/utils/store-tools/worker-path.js +0 -13
  115. package/lib/utils/suggester-workers/create-worker.js +0 -55
  116. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNonNum_horsBoucle_PasPageFin.json +0 -0
  117. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_ControlesNum_horsBoucle_PasPageFin.json +0 -0
  118. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees2_PasPageFin.json +0 -0
  119. /package/lib/stories/{questionnaires-test → behaviour}/controls/V2_Controles_BouclesLiees_PasPageFin.json +0 -0
  120. /package/lib/stories/{questionnaires-test → behaviour}/controls/boucles-n.json +0 -0
  121. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.json +0 -0
  122. /package/lib/stories/{questionnaires-test → behaviour}/controls/controls-externes.stories.js +0 -0
  123. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_DeclarationsSimples.json +0 -0
  124. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_MinMaxSum_Boucles.json +0 -0
  125. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_QuestSimple_Boucles.json +0 -0
  126. /package/lib/stories/{questionnaires-test → behaviour/others}/V2_TCMRallyeGames.json +0 -0
  127. /package/lib/stories/{questionnaires-test → behaviour/others}/test-dylan.json +0 -0
  128. /package/lib/stories/{paste-questionnaire → behaviour/paste}/source.json +0 -0
  129. /package/lib/stories/{resizing-questionnaire → behaviour/resizing}/source.json +0 -0
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createAppendTask = createAppendTask;
7
- var _createWorkerTs = require("../create-worker-ts");
8
- var _workerPath = require("../../store-tools/worker-path");
9
7
  var _logger = require("../../logger");
8
+ var _createWorkerTs = require("../create-worker-ts");
9
+ var _workerPath = require("../worker-path");
10
10
  function consoleLogging() {
11
11
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
12
12
  args[_key] = arguments[_key];
@@ -21,11 +21,12 @@ function consoleLogging() {
21
21
  */
22
22
  function createAppendTask(info, version) {
23
23
  var log = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : consoleLogging;
24
+ var workersBasePath = arguments.length > 3 ? arguments[3] : undefined;
24
25
  var name = info.name,
25
26
  fields = info.fields,
26
27
  stopWords = info.stopWords,
27
28
  meloto = info.meloto;
28
- var worker = (0, _createWorkerTs.createWorker)((0, _workerPath.getWorkerPath)());
29
+ var worker = (0, _createWorkerTs.createWorker)((0, _workerPath.getWorkerPath)(_workerPath.WorkerEnum.LOADER, workersBasePath));
29
30
  var start = false;
30
31
  var stop = false;
31
32
  function launch(entities) {
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WorkerEnum = void 0;
7
+ exports.getWorkerPath = getWorkerPath;
8
+ var _package = _interopRequireDefault(require("../../../package.json"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
+ var WorkerEnum = /*#__PURE__*/function (WorkerEnum) {
11
+ WorkerEnum["LOADER"] = "LOADER";
12
+ WorkerEnum["SEARCH"] = "SEARCH";
13
+ WorkerEnum["LABEL"] = "LABEL";
14
+ return WorkerEnum;
15
+ }({});
16
+ exports.WorkerEnum = WorkerEnum;
17
+ var DEFAULT_BASE_PATH = 'workers';
18
+ var WORKER_PATH = {
19
+ LOADER: "lunatic-append-worker-".concat(_package["default"].workersVersion, ".js"),
20
+ SEARCH: "lunatic-searching-worker-".concat(_package["default"].workersVersion, ".js"),
21
+ LABEL: "lunatic-label-worker-".concat(_package["default"].workersVersion, ".js")
22
+ };
23
+ function getWorkerPath(workerType, workersBasePath) {
24
+ if (workersBasePath) {
25
+ return "".concat(workersBasePath, "/").concat(WORKER_PATH[workerType]);
26
+ } else {
27
+ return "".concat(DEFAULT_BASE_PATH, "/").concat(WORKER_PATH[workerType]);
28
+ }
29
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@inseefr/lunatic",
3
- "version": "2.6.2",
4
- "workersVersion": "0.2.5-experimental",
3
+ "version": "2.6.3",
4
+ "workersVersion": "0.3.0-experimental",
5
5
  "description": "Library of questionnaire components",
6
6
  "repository": {
7
7
  "type": "git",
@@ -26,7 +26,10 @@
26
26
  "main": "lib/index.js",
27
27
  "types": "lib/src/index.d.ts",
28
28
  "files": [
29
- "lib"
29
+ "lib",
30
+ "workers-release",
31
+ "scripts/build/workers-paths.js",
32
+ "scripts/build/add-workers-to-public.js"
30
33
  ],
31
34
  "scripts": {
32
35
  "test": "vitest run",
@@ -42,13 +45,15 @@
42
45
  "format": "npm run _format -- --write",
43
46
  "format:check": "npm run _format -- --list-different",
44
47
  "test-coverage": "vitest run --coverage",
45
- "build": "babel src --out-dir lib --extensions \".ts,.js,.tsx,.jsx\" --copy-files && tsc --project tsconfig.prod.json",
46
- "build-append-worker": "webpack --config ./webpack-append-worker.config.js",
47
- "build-searching-worker": "webpack --config ./webpack-searching-worker.config.js",
48
- "build-label-worker": "webpack --config ./webpack-label-worker.config.js",
49
- "build-workers": "yarn build-append-worker && yarn build-searching-worker && yarn build-label-worker",
50
- "storybook": "start-storybook -p 9999 -s ./public",
51
- "build-storybook": "build-storybook"
48
+ "build-workers": "node ./scripts/build/build-workers.js",
49
+ "build": "babel src --out-dir lib --extensions \".ts,.js,.tsx,.jsx\" --copy-files && tsc --project tsconfig.prod.json && npm run build-workers",
50
+ "prepare-workers": "npm run build-workers && node ./scripts/build/add-workers-to-public.js",
51
+ "postinstall": "node ./scripts/build/add-workers-to-public.js",
52
+ "storybook": "npm run prepare-workers && start-storybook -p 9999 -s ./public",
53
+ "build-storybook": "npm run prepare-workers && build-storybook"
54
+ },
55
+ "bin": {
56
+ "workers": "./scripts/build/add-workers-to-public.js"
52
57
  },
53
58
  "keywords": [
54
59
  "react",
@@ -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,44 @@
1
+ var PACKAGE = require('../../package.json');
2
+ const path = require('path');
3
+
4
+ var version = PACKAGE.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: {
20
+ name: 'Label worker',
21
+ source: `${workersReleaseFolder}/lunatic-label-worker-${version}.js`,
22
+ dest: `${currentPublicFolder}/lunatic-label-worker-${version}.js`,
23
+ webpack: {
24
+ entry:
25
+ './src/utils/suggester-workers/find-best-label/find-best-label.worker.js',
26
+ filename: `lunatic-label-worker-${version}.js`,
27
+ },
28
+ },
29
+ searching: {
30
+ name: 'Searching worker',
31
+ source: `${workersReleaseFolder}/lunatic-searching-worker-${version}.js`,
32
+ dest: `${currentPublicFolder}/lunatic-searching-worker-${version}.js`,
33
+ webpack: {
34
+ entry: './src/utils/suggester-workers/searching/searching.worker.js',
35
+ filename: `lunatic-searching-worker-${version}.js`,
36
+ },
37
+ },
38
+ };
39
+
40
+ module.exports = {
41
+ currentPublicFolder: currentPublicFolder,
42
+ workersReleaseFolder: workersReleaseFolder,
43
+ workersPath: workersPath,
44
+ };