lucy-cli 0.0.4 → 0.5.0

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 (63) hide show
  1. package/.yarnrc.yml +0 -2
  2. package/config.json +1 -0
  3. package/dist/Gulpfile.js +24 -115
  4. package/dist/dev.d.ts +2 -1
  5. package/dist/dev.js +2 -3
  6. package/dist/gulp/backend.d.ts +2 -0
  7. package/dist/gulp/backend.js +52 -8
  8. package/dist/gulp/checks.d.ts +3 -3
  9. package/dist/gulp/checks.js +37 -27
  10. package/dist/gulp/clean.d.ts +2 -0
  11. package/dist/gulp/clean.js +15 -3
  12. package/dist/gulp/copy.d.ts +1 -0
  13. package/dist/gulp/copy.js +24 -4
  14. package/dist/gulp/docs.d.ts +2 -0
  15. package/dist/gulp/docs.js +27 -0
  16. package/dist/gulp/pages.js +3 -3
  17. package/dist/gulp/pipeline.d.ts +1 -0
  18. package/dist/gulp/pipeline.js +27 -0
  19. package/dist/gulp/public.js +13 -7
  20. package/dist/gulp/styles.js +4 -4
  21. package/dist/gulp/templates.d.ts +1 -0
  22. package/dist/gulp/templates.js +21 -3
  23. package/dist/gulp/test.d.ts +2 -0
  24. package/dist/gulp/test.js +82 -0
  25. package/dist/gulp/types.js +7 -8
  26. package/dist/gulp/watchers.d.ts +17 -0
  27. package/dist/gulp/watchers.js +94 -0
  28. package/dist/index.d.ts +23 -1
  29. package/dist/index.js +46 -46
  30. package/dist/init.d.ts +2 -1
  31. package/dist/init.js +27 -55
  32. package/dist/settings.json +4 -1
  33. package/dist/sync.d.ts +2 -0
  34. package/dist/sync.js +5 -0
  35. package/files/lucy.json +1 -1
  36. package/files/typedoc.json +2 -2
  37. package/package.json +9 -3
  38. package/settings/backend-settings.json +13 -3
  39. package/settings/master-settings.json +10 -3
  40. package/settings/page-settings.json +11 -3
  41. package/settings/public-settings.json +13 -4
  42. package/src/Gulpfile.ts +75 -145
  43. package/src/dev.ts +4 -3
  44. package/src/gulp/backend.ts +57 -9
  45. package/src/gulp/checks.ts +36 -29
  46. package/src/gulp/clean.ts +17 -7
  47. package/src/gulp/copy.ts +27 -5
  48. package/src/gulp/pages.ts +4 -4
  49. package/src/gulp/pipeline.ts +30 -0
  50. package/src/gulp/public.ts +16 -8
  51. package/src/gulp/styles.ts +6 -5
  52. package/src/gulp/templates.ts +24 -5
  53. package/src/gulp/test.ts +82 -0
  54. package/src/gulp/types.ts +9 -12
  55. package/src/gulp/watchers.ts +175 -0
  56. package/src/index.ts +59 -68
  57. package/src/init.ts +28 -62
  58. package/src/settings.json +4 -1
  59. package/src/sync.ts +10 -0
  60. package/src/types.d.ts +2 -1
  61. package/.eslintrc.json +0 -3
  62. package/files/jest.config.ts +0 -28
  63. package/files/tsconfig.json +0 -51
package/src/index.ts CHANGED
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { dirname } from 'path';
3
3
  import { fileURLToPath } from 'url';
4
- import { spawnSync } from 'child_process';
5
- import { existsSync, mkdirSync, promises as fsPromises } from 'fs';
4
+ import { existsSync } from 'fs';
6
5
  import chalk from 'chalk';
7
6
  import settings from './settings.json' assert { type: 'json' };
8
7
 
@@ -11,122 +10,114 @@ import fs from 'fs/promises';
11
10
 
12
11
  import { init } from './init.js';
13
12
  import { dev } from './dev.js';
13
+ import { sync } from './sync.js';
14
14
 
15
- type ModuleSettings = {
15
+ export type ModuleSettings = {
16
16
  packageRoot: string;
17
17
  targetFolder: string;
18
18
  args: string[];
19
19
  wixConfigPath: string;
20
20
  lucyConfigPath: string;
21
+ packageJonPath: string;
22
+ settings: typeof settings;
21
23
  }
22
24
 
23
- type ProjectSettings = {
25
+ export type ProjectSettings = {
24
26
  packages?: Record<string, string>;
25
27
  modules?: Record<string, string>;
28
+ lucySettings?: Record<string, string>;
29
+ packageJSON?: Record<string, any>;
30
+ lucyJSON?: Record<string, any>;
26
31
  }
27
-
32
+ export const orange = chalk.hex('#FFA500');
33
+ export const blue = chalk.blueBright;
34
+ export const green = chalk.greenBright;
35
+ export const red = chalk.redBright;
36
+ export const yellow = chalk.yellow;
37
+ export const magenta = chalk.magentaBright;
28
38
  // eslint-disable-next-line @typescript-eslint/naming-convention
29
39
  const __filename = fileURLToPath(import.meta.url);
30
40
  // eslint-disable-next-line @typescript-eslint/naming-convention
31
41
  const __dirname = dirname(__filename);
32
42
 
33
43
 
34
-
35
44
  /**
36
- *
45
+ * Main function
46
+ * @returns {Promise<void>}
37
47
  */
38
- async function main() {
48
+ async function main(): Promise<void> {
39
49
 
40
50
  const moduleSettings: ModuleSettings = {
41
51
  packageRoot: dirname(__dirname),
42
52
  targetFolder: process.cwd(),
43
53
  args: process.argv.slice(2),
54
+ settings,
44
55
  wixConfigPath: join(process.cwd(), 'wix.config.json'),
45
- lucyConfigPath: join(process.cwd(), 'lucy.json')
56
+ lucyConfigPath: join(process.cwd(), 'lucy.json'),
57
+ packageJonPath: join(process.cwd(), 'package.json'),
46
58
  }
47
59
 
48
- let projectSettings: ProjectSettings | undefined;
60
+ let projectSettings: ProjectSettings = {};
61
+
62
+ if(moduleSettings.args.includes('version') || moduleSettings.args.includes('-v')){
63
+ console.log("🐾" + blue.bold(' => 1.0.0'));
64
+
65
+ return;
66
+ }
67
+
68
+ if(moduleSettings.args.includes('help') || moduleSettings.args.includes('-h')){
69
+ console.log("🦮" + green.underline.bold(' => Lucy CLI Help'));
70
+
71
+ return;
72
+ }
49
73
 
50
74
  if (!existsSync(moduleSettings.wixConfigPath)) {
51
- console.log(chalk.red.underline.bold(`This is not a WIX project ${moduleSettings.targetFolder}`));
75
+ console.log((`💩 ${red.underline.bold("=> This is not a WIX project =>")} ${orange(moduleSettings.targetFolder)}`));
52
76
  return;
53
77
  }
54
78
 
55
- const packageJSONraw = await fs.readFile(join(moduleSettings.targetFolder, 'package.json'), 'utf8');
56
- const packageJSON = JSON.parse(packageJSONraw);
79
+ if(existsSync(moduleSettings.packageJonPath)) {
80
+ const packageJSONraw = await fs.readFile(join(moduleSettings.packageJonPath), 'utf8');
81
+ try {
82
+ projectSettings.packageJSON = JSON.parse(packageJSONraw);
83
+ } catch (parseError) {
84
+ console.log((`💩 ${red.underline.bold("=> Error parsing package.json =>")} ${orange(parseError)}`));
85
+ return;
86
+ }
87
+ }
57
88
 
58
89
  if(existsSync(moduleSettings.lucyConfigPath)) {
59
90
  try {
60
91
  const data = await fs.readFile(moduleSettings.lucyConfigPath, 'utf8');
61
- projectSettings = JSON.parse(data);
92
+ projectSettings.lucySettings = JSON.parse(data);
62
93
  } catch (parseError) {
63
- console.error(chalk.red.underline.bold('Error parsing Lucy.json', parseError));
94
+ console.log((`💩 ${red.underline.bold("=> Error parsing Lucy.json =>")} ${orange(parseError)}`));
64
95
  }
65
96
  } else {
66
- console.log(chalk.blueBright.underline.bold('Project not Intialized!'));
67
- return;
68
- }
69
-
70
-
71
-
72
- if(packageJSON?.wixLucy?.intialized && ! args.includes('-f')) {
73
- console.error(chalk.red.underline.bold(`This project is already initialized ${moduleSettings.targetFolder}`));
74
- return;
75
- }
76
-
77
- console.log({ args, cwd });
78
- if(args.includes('help') || args.includes('-h')){
79
- console.log('Help is on the way!');
80
-
81
- return;
82
- }
83
- if(args.includes('version') || args.includes('-v')){
84
- console.log('1.0.0');
85
-
86
- return;
97
+ if(!moduleSettings.args.includes('init')) {
98
+ return console.log(yellow.underline.bold('🐶 => Project not Intialized! Please initialize using "lucy-cli init"'));
99
+ };
87
100
  }
88
101
 
89
- if(args.includes('init')){
90
- init(cwd, packageRoot, args);
102
+ if(moduleSettings.args.includes('init')){
103
+ console.log("🐕" + magenta.underline(' => Initializing project'));
104
+ init(moduleSettings, projectSettings);
91
105
 
92
106
  return;
93
107
  }
94
108
 
95
- if(args.includes('dev')){
96
- dev(cwd, args);
97
-
98
- return;
109
+ if(moduleSettings.args.includes('dev')){
110
+ dev(moduleSettings, projectSettings);
111
+
112
+ return;
99
113
  }
100
114
 
101
- if(args.includes('sync')){
102
- console.log('Hello serve');
115
+ if(moduleSettings.args.includes('sync')){
116
+ sync(moduleSettings, projectSettings);
103
117
 
104
118
  return;
105
119
  }
106
120
 
107
121
  }
108
122
 
109
- main();
110
-
111
- // const fs = require("fs"),
112
- // path = require("path")
113
-
114
- // /** Parse the command line */
115
- // var args = process.argv.slice(2);
116
-
117
- // // Validate input
118
- // if (args.length !== 2) {
119
- // console.log("Warning: Requires 2 arguments");
120
- // console.log("node index.js [path/source.html] [targetfile]");
121
- // process.exit();
122
- // }
123
-
124
- // const src = args[0];
125
- // const target = args[1];
126
- // const dirsrc = path.dirname(src);
127
-
128
- // if (!fs.existsSync(src)) {
129
- // console.log("Error: Source file doesn't exist. Given: ", src);
130
- // process.exit();
131
- // }
132
-
123
+ main();
package/src/init.ts CHANGED
@@ -2,17 +2,11 @@ import chalk from 'chalk';
2
2
  import { existsSync, mkdirSync, promises as fsPromises } from 'fs';
3
3
  import fse from 'fs-extra';
4
4
  import { join } from 'path';
5
- import { simpleGit, SimpleGit, SimpleGitOptions } from 'simple-git';
5
+ import { simpleGit } from 'simple-git';
6
6
  import fs from 'fs/promises';
7
7
  import { spawnSync } from 'child_process';
8
- import settings from './settings.json' assert { type: 'json' };
9
8
  import path from 'path';
10
-
11
-
12
- type ProjectSettings = {
13
- packages?: Record<string, string>;
14
- modules?: Record<string, string>;
15
- }
9
+ import { ModuleSettings, ProjectSettings, blue, green, orange, red } from './index.js';
16
10
 
17
11
  /**
18
12
  * Init Lucy project
@@ -20,54 +14,26 @@ type ProjectSettings = {
20
14
  * @param {string} packageRoot Package root directory
21
15
  * @returns {void}
22
16
  */
23
- export async function init(cwd: string, packageRoot:string, args: string[]) {
24
- const sourceFolder = join(packageRoot, 'files');
25
- const targetFolder = cwd;
26
- let projectSettings: ProjectSettings|undefined;
27
-
28
- if(existsSync(join(targetFolder, 'lucy.json'))) {
29
- try {
30
- const lucyConfig = join(targetFolder, 'lucy.json');
31
- const data = await fs.readFile(lucyConfig, 'utf8');
32
- projectSettings = JSON.parse(data);
33
- } catch (parseError) {
34
- console.error(chalk.red.underline.bold('Error parsinc Lucy.json', parseError));
35
- }
36
- } else {
37
- const lucyConfig = {
38
- packages: settings.packages,
39
- modules: settings.modules
40
- }
41
- await fs.writeFile(join(targetFolder, 'lucy.json'), JSON.stringify(lucyConfig, null, 2), 'utf8');
42
- console.log(chalk.blueBright.underline.bold('Created Lucy config file!'));
43
- }
44
-
45
- const wixConfigPath = join(targetFolder, 'wix.config.json');
46
- const packageJSONraw = await fs.readFile(join(targetFolder, 'package.json'), 'utf8');
47
- const packageJSON = JSON.parse(packageJSONraw);
17
+ export async function init(moduleSettings: ModuleSettings, projectSettings: ProjectSettings) {
48
18
 
49
- if(packageJSON?.wixLucy?.intialized && ! args.includes('-f')) {
50
- console.error(chalk.red.underline.bold(`This project is already initialized ${targetFolder}`));
19
+ if(projectSettings.packageJSON && projectSettings.packageJSON.wixLucy?.intialized && !moduleSettings.args.includes('-f')) {
20
+ console.log((`💩 ${red.underline.bold("=> This project is already initialized =>")} ${orange(moduleSettings.targetFolder)}`));
51
21
  return;
52
22
  }
53
23
 
54
- if (!existsSync(wixConfigPath)) {
55
- console.error(chalk.red.underline.bold(`This is not a WIX project ${targetFolder}`));
56
- return;
57
- }
24
+ await copyFolder(join(moduleSettings.packageRoot, 'files'), moduleSettings.targetFolder);
58
25
 
59
- await copyFolder(sourceFolder, targetFolder);
26
+ await editJson(moduleSettings.packageJonPath, ['type', 'scripts', 'wixLucy'], ['module', moduleSettings.settings.scripts, moduleSettings.settings.lucySettings ]);
27
+ await stringReplace(join(moduleSettings.targetFolder, 'currents.config.js'), ['__ProjectName__'], [path.basename(moduleSettings.targetFolder)]);
60
28
 
61
- await editJson(join(targetFolder, 'package.json'), ['type', 'scripts', 'wixLucy'], ['module', settings.scripts, settings.lucySettings ]);
62
- await stringReplace(join(targetFolder, 'currents.config.js'), ['__ProjectName__'], [path.basename(targetFolder)]);
29
+ await installPackages(projectSettings?.packages ? projectSettings?.packages : moduleSettings.settings.packages, moduleSettings.targetFolder);
63
30
 
64
- await installPackages(projectSettings?.packages ? projectSettings?.packages : settings.packages, targetFolder);
31
+ await editJson(join(moduleSettings.targetFolder, 'jsconfig.json'), ['compilerOptions', 'exclude'], [moduleSettings.settings.wixSettings.compilerOptions, moduleSettings.settings.wixSettings.exclude]);
32
+ await editJson(join(moduleSettings.targetFolder, 'typedoc.json'), ['name'], [path.basename(moduleSettings.targetFolder)]);
65
33
 
66
- await editJson(join(targetFolder, 'jsconfig.json'), ['compilerOptions', 'exclude'], [settings.wixSettings.compilerOptions, settings.wixSettings.exclude]);
67
- await editJson(join(targetFolder, 'typedoc.json'), ['name'], [path.basename(targetFolder)]);
34
+ await gitInit(moduleSettings.targetFolder, projectSettings?.modules ? projectSettings?.modules : moduleSettings.settings.modules);
68
35
 
69
- await gitInit(targetFolder, projectSettings?.modules ? projectSettings?.modules : settings.modules);
70
- console.log(chalk.blueBright.underline.bold('Done!'));
36
+ console.log(chalk.greenBright.underline('🐶 => Initialization done!'));
71
37
  }
72
38
 
73
39
  /**
@@ -78,7 +44,7 @@ export async function init(cwd: string, packageRoot:string, args: string[]) {
78
44
  */
79
45
  async function copyFolder(source: string, target: string): Promise<void> {
80
46
  if (!existsSync(target)){
81
- console.error(chalk.red.underline.bold(`Target folder doesn't exist: ${target}`));
47
+ console.log((`💩 ${red.underline.bold("=> Target folder doesn't exist =>")} ${orange(target)}`));
82
48
  return;
83
49
  }
84
50
 
@@ -102,9 +68,9 @@ async function copyFolder(source: string, target: string): Promise<void> {
102
68
  }
103
69
  }
104
70
  } catch (err){
105
- console.error(chalk.red.underline.bold(err));
71
+ console.log((`💩 ${red.underline.bold("=> There was an error while copying files =>")} ${orange(err)}`));
106
72
  } finally {
107
- console.log(chalk.blueBright.underline.bold('Copy files completed!'));
73
+ console.log("🐕" + blue.underline.bold(' => Copy files completed!'));
108
74
  }
109
75
  }
110
76
 
@@ -123,7 +89,7 @@ async function editJson(filePath: string, keys: string[], values: string[] | Obj
123
89
  try {
124
90
  jsonData = JSON.parse(data);
125
91
  } catch (parseError) {
126
- console.error(chalk.red.underline.bold('Error parsing JSON:', parseError));
92
+ console.log((`💩 ${red.underline.bold("=> Error parsing JSON =>")} ${orange(parseError)}`));
127
93
  return;
128
94
  }
129
95
 
@@ -136,9 +102,9 @@ async function editJson(filePath: string, keys: string[], values: string[] | Obj
136
102
  const updatedJsonData = JSON.stringify(jsonData, null, 2);
137
103
  await fs.writeFile(filePath, updatedJsonData, 'utf8');
138
104
  } catch (err) {
139
- console.log(chalk.red.underline.bold(err));
105
+ console.log((`💩 ${red.underline.bold("=> Error editing JSON Data =>")} ${orange(err)}`));
140
106
  } finally {
141
- console.log(chalk.blueBright.underline.bold(`File ${filePath} updated successfully!`));
107
+ console.log("🐕" + blue.underline(` => Updated file ${orange(filePath)}`));
142
108
  }
143
109
  }
144
110
 
@@ -156,9 +122,9 @@ async function stringReplace(filePath: string, keys: string[], values: string[])
156
122
 
157
123
  await fs.writeFile(filePath, modifiedContent, 'utf8');
158
124
  } catch (err) {
159
- console.log(chalk.red.underline.bold(err));
125
+ console.log((`💩 ${red.underline.bold("=> Durring string replace =>")} ${orange(err)}`));
160
126
  } finally {
161
- console.log(chalk.blueBright.underline.bold(`File ${filePath} updated successfully!`));
127
+ console.log(blue.underline(`🐕 => Updated file ${orange(filePath)}`));
162
128
  }
163
129
  }
164
130
 
@@ -166,12 +132,12 @@ async function installPackages(packages: Record<string, string>, cwd: string) {
166
132
  const packageNames = Object.keys(packages);
167
133
  const packageVersions = Object.values(packages);
168
134
  const packageNamesAndVersions = packageNames.map((name, index) => `${name}@${packageVersions[index]}`);
169
- const command = `yarn add ${packageNamesAndVersions.join(' ')}`;
135
+ const command = `yarn add -D ${packageNamesAndVersions.join(' ')}`;
170
136
  const result = spawnSync(command, { shell: true, stdio: 'inherit' });
171
137
  if (result.error) {
172
- console.error(chalk.red.underline.bold(`Command failed: ${result.error.message}`));
138
+ console.log((`💩 ${red.underline.bold("=> Failed to install packages =>")} ${orange(result.error.message)}`));
173
139
  } else {
174
- console.log(chalk.blueBright.underline.bold(`Command succeeded: ${result.stdout}`));
140
+ console.log("🐕" + blue.underline(` => Packeges installed!`));
175
141
  }
176
142
  }
177
143
 
@@ -181,11 +147,11 @@ async function gitInit(cwd: string, modules: Record<string, string>) {
181
147
  console.log(chalk.green.underline.bold(`Cloning ${name}`));
182
148
  try {
183
149
  await git.submoduleAdd(url, name)
184
- } catch (e) {
185
- console.error(chalk.red.underline.bold(`Command failed: ${e}`));
150
+ } catch (err) {
151
+ console.log((`💩 ${red.underline.bold("=> Command failed =>")} ${orange(err)}`));
186
152
  } finally {
187
- console.log(chalk.blueBright.underline.bold(`Cloned ${name}`));
153
+ console.log("🐕" + blue.underline(` => Cloned ${orange(name)}`));
188
154
  }
189
155
  }
190
- console.log(chalk.blueBright.underline.bold(`All Modules cloned!`));
156
+ console.log("🐶" + green.underline(' => All Modules cloned!'));
191
157
  }
package/src/settings.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "modules": {
3
- "wix-lucy-lib": "git@github.com:Integral-Systems/wix-lucy-lib.git"
3
+ "lucy-lib": "git@github.com:Integral-Systems/lucy-lib.git"
4
4
  },
5
5
  "wixSettings": {
6
6
  "compilerOptions": {
@@ -24,8 +24,11 @@
24
24
  "@js-joda/locale": "4.8.10",
25
25
  "@js-joda/locale_de": "4.8.10",
26
26
  "@js-joda/locale_en": "4.8.10",
27
+ "@js-joda/locale_fr": "4.8.10",
28
+ "@js-joda/locale_it": "4.8.10",
27
29
  "@js-joda/timezone": "2.18.0",
28
30
  "@react-pdf/renderer": "2.0.17",
31
+ "velo-sync": "^0.0.9",
29
32
  "@total-typescript/ts-reset": "^0.4.2",
30
33
  "@types/i18n": "^0.13.6",
31
34
  "@types/jest": "^29.5.3",
package/src/sync.ts ADDED
@@ -0,0 +1,10 @@
1
+ import { modifierNames } from "chalk";
2
+ import { ModuleSettings, ProjectSettings } from ".";
3
+
4
+ export function sync(moduleSettings: ModuleSettings, projectSettings: ProjectSettings) {
5
+
6
+ if(moduleSettings.args.includes('sync')){
7
+
8
+ }
9
+ console.log('Hello sync');
10
+ }
package/src/types.d.ts CHANGED
@@ -2,4 +2,5 @@ declare module 'gulp-exec';
2
2
  declare module 'gulp-clean';
3
3
  declare module 'gulp-foreach';
4
4
  declare module 'gulp-string-replace';
5
- declare module 'gulp-wait';
5
+ declare module 'gulp-wait';
6
+ declare module 'gulp-jest';
package/.eslintrc.json DELETED
@@ -1,3 +0,0 @@
1
- {
2
- "extends": ["plugin:@wix/cli/recommended"]
3
- }
@@ -1,28 +0,0 @@
1
- import type { JestConfigWithTsJest} from 'ts-jest';
2
-
3
- const config: JestConfigWithTsJest = {
4
- verbose: true,
5
- extensionsToTreatAsEsm: ['.ts'],
6
- transform: {
7
- '^.+\\.tsx?$': [
8
- 'ts-jest',
9
- {
10
- tsconfig: './typescript/tsconfig.json',
11
- usESM: true,
12
- },
13
- ],
14
- },
15
- preset: 'ts-jest',
16
- setupFilesAfterEnv: [],
17
- testEnvironment: 'node',
18
- collectCoverage: true,
19
- coverageDirectory: '../coverage',
20
- coverageReporters: ['clover', 'json', 'lcov', 'text'],
21
- rootDir: './typescript',
22
- testMatch: ['**/*.spec.ts'],
23
- moduleNameMapper: {
24
- "public/(.*)": "<rootDir>/public/$1"
25
- }
26
- };
27
-
28
- export default config;
@@ -1,51 +0,0 @@
1
- {
2
- "typeAcquisition": {
3
- "enable": true
4
- },
5
- "compilerOptions": {
6
- "outDir": "../src",
7
- "rootDir": "../typescript",
8
- "target": "ES2020",
9
- "build": true,
10
- "module": "ESNext",
11
- "moduleResolution": "Node",
12
- "preserveConstEnums": true,
13
- "allowSyntheticDefaultImports": true,
14
- "skipLibCheck": true,
15
- "jsx": "react-jsx",
16
- "lib": ["DOM"],
17
- "declaration": true,
18
- "strict": true,
19
- "noEmitOnError": false,
20
- "strictNullChecks": true,
21
- "noImplicitAny": true,
22
- "noImplicitReturns": true,
23
- "noUncheckedIndexedAccess": true,
24
- "noImplicitThis": true,
25
- "strictBindCallApply": true,
26
- "strictFunctionTypes": true,
27
- "strictPropertyInitialization": true,
28
- "experimentalDecorators": true,
29
- "esModuleInterop": true,
30
- "resolveJsonModule": true,
31
- "paths": {
32
- "public/*": ["./public/*"],
33
- "backend/*": ["./backend/*"],
34
- "pages/*": ["./pages/*"],
35
- },
36
- "plugins": [
37
- {
38
- "name": "typescript-hbs-plugin"
39
- }
40
- ]
41
- },
42
- "exclude": ["../node_modules", "../.wix", "node_modules", "./wix", "./**/*.spec.ts"],
43
- "include":[
44
- "public/**/*.tsx"
45
- ],
46
- "references": [
47
- {
48
- "path": "../jsconfig.json"
49
- }
50
- ]
51
- }