@inseefr/lunatic 2.7.0-rc.2 → 2.7.0-rc.4

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.
@@ -1,8 +1,3 @@
1
- declare global {
2
- interface Window {
3
- _env_: Record<string, string>;
4
- }
5
- }
6
1
  export declare enum WorkerEnum {
7
2
  LOADER = "LOADER",
8
3
  SEARCH = "SEARCH",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inseefr/lunatic",
3
- "version": "2.7.0-rc.2",
3
+ "version": "2.7.0-rc.4",
4
4
  "workersVersion": "0.3.0-experimental",
5
5
  "description": "Library of questionnaire components",
6
6
  "repository": {
@@ -26,7 +26,9 @@
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"
30
32
  ],
31
33
  "scripts": {
32
34
  "test": "vitest run",
@@ -42,12 +44,15 @@
42
44
  "format": "npm run _format -- --write",
43
45
  "format:check": "npm run _format -- --list-different",
44
46
  "test-coverage": "vitest run --coverage",
47
+ "build-workers": "node ./scripts/build/build-workers.js",
45
48
  "build": "babel src --out-dir lib --extensions \".ts,.js,.tsx,.jsx\" --copy-files && tsc --project tsconfig.prod.json",
49
+ "postbuild": "yarn build-workers",
50
+ "postinstall": "yarn build-workers && node ./scripts/build/add-workers-to-public.js",
46
51
  "storybook": "storybook dev -p 9999 --no-open",
47
- "build-storybook": "storybook build"
52
+ "build-storybook": "yarn postinstall && storybook build"
48
53
  },
49
54
  "bin": {
50
- "build-lunatic-worker": "./scripts/build/build-worker-to-public.js"
55
+ "add-lunatic-workers": "./scripts/build/add-workers-to-public.js"
51
56
  },
52
57
  "keywords": [
53
58
  "react",
@@ -0,0 +1,44 @@
1
+ #!/usr/bin/env node
2
+ const fs = require('fs');
3
+ const { currentPublicFolder, workersPath } = require('./workers-paths');
4
+
5
+ /**
6
+ * Copy worker only if not exists
7
+ */
8
+ const copyWorkerToPublicFolder = () => {
9
+ if (!fs.existsSync(currentPublicFolder)) {
10
+ fs.mkdirSync(currentPublicFolder, { recursive: true });
11
+ }
12
+ const isAppendWorkerExists = fs.existsSync(workersPath.append.dest);
13
+ const isLabelWorkerExists = fs.existsSync(workersPath.label.dest);
14
+ const isSearchingWorkerExists = fs.existsSync(workersPath.searching.dest);
15
+
16
+ if (!isAppendWorkerExists) {
17
+ console.log(`Copy : ${workersPath.append.name} to ${currentPublicFolder}`);
18
+ fs.copyFileSync(workersPath.append.source, workersPath.append.dest);
19
+ } else {
20
+ console.log(
21
+ `${workersPath.append.name} is already in ${currentPublicFolder} -> Skipped`
22
+ );
23
+ }
24
+ if (!isLabelWorkerExists) {
25
+ console.log(`Copy : ${workersPath.label.name} to ${currentPublicFolder}`);
26
+ fs.copyFileSync(workersPath.label.source, workersPath.label.dest);
27
+ } else {
28
+ console.log(
29
+ `${workersPath.label.name} is already in ${currentPublicFolder} -> Skipped`
30
+ );
31
+ }
32
+ if (!isSearchingWorkerExists) {
33
+ console.log(
34
+ `Copy : ${workersPath.searching.name} to ${currentPublicFolder}`
35
+ );
36
+ fs.copyFileSync(workersPath.searching.source, workersPath.searching.dest);
37
+ } else {
38
+ console.log(
39
+ `${workersPath.searching.name} is already in ${currentPublicFolder} -> Skipped`
40
+ );
41
+ }
42
+ };
43
+
44
+ copyWorkerToPublicFolder();
@@ -0,0 +1,34 @@
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: `${path.resolve(__dirname)}/webpack-append-worker.config.js`,
15
+ },
16
+ label: {
17
+ name: 'Label worker',
18
+ source: `${workersReleaseFolder}/lunatic-label-worker-${version}.js`,
19
+ dest: `${currentPublicFolder}/lunatic-label-worker-${version}.js`,
20
+ webpack: `${path.resolve(__dirname)}/webpack-label-worker.config.js`,
21
+ },
22
+ searching: {
23
+ name: 'Searching worker',
24
+ source: `${workersReleaseFolder}/lunatic-searching-worker-${version}.js`,
25
+ dest: `${currentPublicFolder}/lunatic-searching-worker-${version}.js`,
26
+ webpack: `${path.resolve(__dirname)}/webpack-searching-worker.config.js`,
27
+ },
28
+ };
29
+
30
+ module.exports = {
31
+ currentPublicFolder: currentPublicFolder,
32
+ workersReleaseFolder: workersReleaseFolder,
33
+ workersPath: workersPath,
34
+ };