lincd-cli 1.1.3 → 1.1.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.
Files changed (97) hide show
  1. package/defaults/app-static/src/index-static.tsx +3 -3
  2. package/defaults/app-with-backend/.env-cmdrc.json +4 -1
  3. package/defaults/app-with-backend/package.json +9 -8
  4. package/defaults/app-with-backend/scripts/storage-config.js +2 -2
  5. package/defaults/app-with-backend/src/package.ts +2 -1
  6. package/defaults/component.tsx +3 -1
  7. package/defaults/package/package.json +2 -2
  8. package/defaults/package/src/index.ts +0 -1
  9. package/defaults/package/src/ontologies/example-ontology.ts +3 -10
  10. package/defaults/package/src/package.ts +3 -11
  11. package/defaults/set-component.tsx +5 -2
  12. package/defaults/shape.ts +2 -2
  13. package/lib/{cjs/cli-methods.js → cli-methods.js} +293 -663
  14. package/lib/cli-methods.js.map +1 -0
  15. package/lib/{esm/cli.js → cli.js} +44 -59
  16. package/lib/cli.js.map +1 -0
  17. package/lib/{cjs/config-grunt.cjs → config-grunt.js} +13 -15
  18. package/lib/config-grunt.js.map +1 -0
  19. package/lib/config-webpack-app.js +367 -0
  20. package/lib/config-webpack-app.js.map +1 -0
  21. package/lib/{esm/config-webpack.js → config-webpack.js} +39 -27
  22. package/lib/config-webpack.js.map +1 -0
  23. package/lib/{cjs/index.js → index.js} +5 -3
  24. package/lib/index.js.map +1 -0
  25. package/lib/{cjs/interfaces.js.map → interfaces.js.map} +1 -1
  26. package/lib/metadata.js +149 -0
  27. package/lib/metadata.js.map +1 -0
  28. package/lib/plugins/check-imports.js.map +1 -0
  29. package/lib/{esm/plugins → plugins}/declaration-plugin.js +8 -9
  30. package/lib/plugins/declaration-plugin.js.map +1 -0
  31. package/lib/{esm/plugins → plugins}/externalise-modules.js +6 -5
  32. package/lib/plugins/externalise-modules.js.map +1 -0
  33. package/lib/plugins/watch-run.js.map +1 -0
  34. package/lib/{cjs/utils.js → utils.js} +18 -22
  35. package/lib/utils.js.map +1 -0
  36. package/package.json +16 -54
  37. package/defaults/app-static/.env-cmdrc.json +0 -17
  38. package/defaults/app-static/package.json +0 -8
  39. package/defaults/package/src/types.d.ts +0 -9
  40. package/defaults/package/tsconfig-cjs.json +0 -8
  41. package/defaults/package/tsconfig-esm.json +0 -9
  42. package/lib/cjs/cli-methods.js.map +0 -1
  43. package/lib/cjs/cli.js +0 -202
  44. package/lib/cjs/cli.js.map +0 -1
  45. package/lib/cjs/config-grunt.cjs.map +0 -1
  46. package/lib/cjs/config-webpack-app.js +0 -353
  47. package/lib/cjs/config-webpack-app.js.map +0 -1
  48. package/lib/cjs/config-webpack.js +0 -436
  49. package/lib/cjs/config-webpack.js.map +0 -1
  50. package/lib/cjs/index.js.map +0 -1
  51. package/lib/cjs/loaders/css-loader.mjs +0 -82
  52. package/lib/cjs/loaders/css-loader.mjs.map +0 -1
  53. package/lib/cjs/loaders/register.js +0 -6
  54. package/lib/cjs/loaders/register.js.map +0 -1
  55. package/lib/cjs/metadata.js +0 -155
  56. package/lib/cjs/metadata.js.map +0 -1
  57. package/lib/cjs/package.json +0 -139
  58. package/lib/cjs/plugins/check-imports.js.map +0 -1
  59. package/lib/cjs/plugins/declaration-plugin.js +0 -275
  60. package/lib/cjs/plugins/declaration-plugin.js.map +0 -1
  61. package/lib/cjs/plugins/externalise-modules.js +0 -190
  62. package/lib/cjs/plugins/externalise-modules.js.map +0 -1
  63. package/lib/cjs/plugins/watch-run.js.map +0 -1
  64. package/lib/cjs/utils.js.map +0 -1
  65. package/lib/esm/cli-methods.js +0 -1965
  66. package/lib/esm/cli-methods.js.map +0 -1
  67. package/lib/esm/cli.js.map +0 -1
  68. package/lib/esm/config-grunt.cjs +0 -270
  69. package/lib/esm/config-grunt.cjs.map +0 -1
  70. package/lib/esm/config-webpack-app.js +0 -326
  71. package/lib/esm/config-webpack-app.js.map +0 -1
  72. package/lib/esm/config-webpack.js.map +0 -1
  73. package/lib/esm/index.js +0 -9
  74. package/lib/esm/index.js.map +0 -1
  75. package/lib/esm/interfaces.js +0 -2
  76. package/lib/esm/interfaces.js.map +0 -1
  77. package/lib/esm/loaders/css-loader.mjs +0 -75
  78. package/lib/esm/loaders/css-loader.mjs.map +0 -1
  79. package/lib/esm/loaders/register.js +0 -4
  80. package/lib/esm/loaders/register.js.map +0 -1
  81. package/lib/esm/metadata.js +0 -155
  82. package/lib/esm/metadata.js.map +0 -1
  83. package/lib/esm/package.json +0 -139
  84. package/lib/esm/plugins/check-imports.js +0 -65
  85. package/lib/esm/plugins/check-imports.js.map +0 -1
  86. package/lib/esm/plugins/declaration-plugin.js.map +0 -1
  87. package/lib/esm/plugins/externalise-modules.js.map +0 -1
  88. package/lib/esm/plugins/watch-run.js +0 -44
  89. package/lib/esm/plugins/watch-run.js.map +0 -1
  90. package/lib/esm/utils.js +0 -478
  91. package/lib/esm/utils.js.map +0 -1
  92. package/tsconfig-cjs.json +0 -9
  93. package/tsconfig-esm.json +0 -10
  94. /package/{expose-grunt.cjs → expose-grunt.js} +0 -0
  95. /package/lib/{cjs/interfaces.js → interfaces.js} +0 -0
  96. /package/lib/{cjs/plugins → plugins}/check-imports.js +0 -0
  97. /package/lib/{cjs/plugins → plugins}/watch-run.js +0 -0
@@ -1,353 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.getWebpackAppConfig = exports.getLincdConfig = void 0;
30
- const path_1 = __importDefault(require("path"));
31
- const chalk_1 = __importDefault(require("chalk"));
32
- const react_refresh_typescript_1 = __importDefault(require("react-refresh-typescript"));
33
- const react_refresh_webpack_plugin_1 = __importDefault(require("@pmmmwh/react-refresh-webpack-plugin"));
34
- const mini_css_extract_plugin_1 = __importDefault(require("mini-css-extract-plugin"));
35
- const webpack_1 = __importDefault(require("webpack"));
36
- const fs_1 = __importDefault(require("fs"));
37
- const webpack_bundle_analyzer_1 = require("webpack-bundle-analyzer");
38
- const terser_webpack_plugin_1 = __importDefault(require("terser-webpack-plugin"));
39
- const utils_js_1 = require("./utils.js");
40
- const plugin_js_1 = __importDefault(require("tailwindcss/plugin.js"));
41
- const LinkedFileStorage_1 = require("lincd/utils/LinkedFileStorage");
42
- const postcss_url_1 = __importDefault(require("postcss-url"));
43
- const isProduction = process.env.NODE_ENV === 'production';
44
- const isDevelopment = process.env.NODE_ENV === 'development';
45
- const packageJson = JSON.parse(fs_1.default.readFileSync(path_1.default.resolve(process.cwd(), 'package.json'), 'utf-8'));
46
- const cssModes = ['scss-modules', 'tailwind', 'scss', 'mixed'];
47
- class WatchRunPlugin {
48
- apply(compiler) {
49
- compiler.hooks.watchRun.tap('watchRun', (comp) => {
50
- if (comp.modifiedFiles) {
51
- const changedFiles = Array.from(comp.modifiedFiles, (file) => `\n ${file}`).join('');
52
- if (changedFiles.length) {
53
- console.log(chalk_1.default.magenta('Changed files:'), changedFiles);
54
- }
55
- }
56
- });
57
- }
58
- }
59
- function getLocalIdent(context, currentFormat, name) {
60
- return isProduction ? (0, utils_js_1.generateScopedNameProduction)(name, context.resourcePath) : (0, utils_js_1.generateScopedName)(name, context.resourcePath);
61
- }
62
- const getLincdConfig = async () => {
63
- var _a;
64
- const lincdConfigPathJs = path_1.default.resolve(process.cwd(), 'lincd.config.js');
65
- const lincdConfigPathJson = path_1.default.resolve(process.cwd(), 'lincd.config.json');
66
- //default config
67
- let config = {
68
- //scss-modules is default
69
- cssMode: cssModes[0],
70
- analyse: false,
71
- };
72
- //overwriting config from package.json.lincdApp or lincd.config.js(on) file
73
- if (typeof packageJson.lincdApp === 'object') {
74
- //overwrite default with anything that's defined in lincdApp in package.json
75
- config = { ...config, ...packageJson.lincdApp };
76
- }
77
- else if (fs_1.default.existsSync(lincdConfigPathJs)) {
78
- let lincdConfig = await (_a = lincdConfigPathJs, Promise.resolve().then(() => __importStar(require(_a))));
79
- config = { ...config, ...lincdConfig };
80
- }
81
- else if (fs_1.default.existsSync(lincdConfigPathJson)) {
82
- let lincdConfig = JSON.parse(fs_1.default.readFileSync(lincdConfigPathJson, 'utf-8'));
83
- config = { ...config, ...lincdConfig };
84
- }
85
- if (!cssModes.includes(config.cssMode)) {
86
- console.warn('Invalid value for property cssMode. Should be one of: ' +
87
- cssModes.join(', '));
88
- process.exit();
89
- }
90
- return config;
91
- };
92
- exports.getLincdConfig = getLincdConfig;
93
- const getWebpackAppConfig = async () => {
94
- var _a;
95
- // get from the project's config-frontend file
96
- await (_a = path_1.default.join(process.cwd(), 'scripts', 'storage-config.js'), Promise.resolve().then(() => __importStar(require(_a))));
97
- const accessURL = LinkedFileStorage_1.LinkedFileStorage.accessURL;
98
- // Should relate to the use of express.static() in LincdServer.tsx, which makes the build files available through a URL
99
- const publicPath = '/public';
100
- const bundlesPath = publicPath + '/bundles/';
101
- // ASSET_PATH mostly used for the apps to load the assets from the correct path
102
- const ASSET_PATH = process.env.ASSET_PATH || accessURL ? accessURL + bundlesPath : bundlesPath;
103
- let config = await (0, exports.getLincdConfig)();
104
- let postcssPlugins = [
105
- (0, postcss_url_1.default)({
106
- url: (asset) => {
107
- return `${accessURL}${publicPath}${asset.url}`;
108
- },
109
- }),
110
- ];
111
- if (config.cssMode === 'scss-modules' ||
112
- config.cssMode === 'scss' ||
113
- config.cssMode === 'mixed') {
114
- postcssPlugins = postcssPlugins.concat([
115
- // ['stylelint', {
116
- // 'extends': [
117
- // 'stylelint-config-standard'
118
- // ],
119
- // 'plugins': ['stylelint-scss'],
120
- // 'rules': {
121
- // 'at-rule-no-unknown': null,
122
- // 'scss/at-rule-no-unknown': [
123
- // true,
124
- // {
125
- // ignoreAtRules: [
126
- // 'tailwind',
127
- // 'apply',
128
- // 'variants',
129
- // 'responsive',
130
- // 'screen',
131
- // ],
132
- // },
133
- // ],
134
- // 'no-descending-specificity': null,
135
- // 'at-rule-empty-line-before':null,
136
- // 'rule-empty-line-before': null,
137
- // 'no-missing-end-of-source-newline': null,
138
- // 'max-line-length': null,
139
- // 'color-function-notation': null,
140
- // 'alpha-value-notation': null,
141
- // 'number-max-precision':null,
142
- // },
143
- // }],
144
- 'postcss-preset-env',
145
- isProduction && 'cssnano',
146
- // "postcss-reporter",
147
- ]);
148
- if (config.cssMode === 'scss-modules' || config.cssMode === 'mixed') {
149
- // postcssPlugins.push([
150
- // 'postcss-modules',
151
- // {
152
- // generateScopedName: generateScopedName,
153
- // globalModulePaths: (Array.isArray(config.cssGlobalModulePaths)
154
- // ? [/tailwind/, ...config.cssGlobalModulePaths]
155
- // : [/tailwind/, config.cssGlobalModulePaths]
156
- // ).filter(Boolean),
157
- // },
158
- // ]);
159
- }
160
- }
161
- if (config.cssMode === 'tailwind' || config.cssMode === 'mixed') {
162
- //make sure that tailwind classes from any LINCD packages that are listed in package.json:dependencies are included
163
- let lincdPackagePaths = (0, utils_js_1.getLINCDDependencies)(packageJson);
164
- lincdPackagePaths = lincdPackagePaths.map(([packageName, packagePath]) => {
165
- return packagePath + '/lib/**/*.{js,mjs}';
166
- });
167
- // console.log(
168
- // chalk.blueBright('tailwind content: ') + chalk.magenta(['./frontend/src/**/*.{tsx,ts}', ...lincdPackagePaths]),
169
- // );
170
- postcssPlugins.push([
171
- 'tailwindcss',
172
- {
173
- content: [
174
- (process.env.SOURCE_PATH || './src/') + '**/*.{tsx,ts}',
175
- ...lincdPackagePaths,
176
- ],
177
- safelist: isProduction
178
- ? {}
179
- : {
180
- //in development mode we allow all classes here, so that you can easily develop
181
- pattern: /./,
182
- variants: ['sm', 'md', 'lg', 'xl', '2xl'],
183
- },
184
- theme: {
185
- extend: {
186
- colors: (0, utils_js_1.getLinkedTailwindColors)(),
187
- },
188
- },
189
- plugins: [
190
- (0, plugin_js_1.default)(function ({ addBase, config }) {
191
- //we can use LINCD CSS variables for default font color, size etc.
192
- // addBase({
193
- // 'h1': { fontSize: config('theme.fontSize.2xl') },
194
- // 'h2': { fontSize: config('theme.fontSize.xl') },
195
- // 'h3': { fontSize: config('theme.fontSize.lg') },
196
- // })
197
- }),
198
- ],
199
- },
200
- ]);
201
- }
202
- return {
203
- mode: isProduction ? 'production' : 'development',
204
- devtool: isProduction ? 'source-map' : 'cheap-module-source-map',
205
- entry: [
206
- isDevelopment && 'webpack-hot-middleware/client',
207
- path_1.default.resolve(process.cwd(), process.env.ENTRY_PATH ||
208
- (process.env.SOURCE_PATH
209
- ? process.env.SOURCE_PATH + '/index.tsx'
210
- : './src/index.tsx')),
211
- ].filter(Boolean),
212
- watch: isDevelopment || config.analyse,
213
- output: {
214
- path: path_1.default.resolve(process.cwd(), process.env.OUTPUT_PATH || './public/bundles'),
215
- filename: '[name].bundle.js',
216
- publicPath: ASSET_PATH,
217
- clean: true,
218
- },
219
- watchOptions: {
220
- ignored: ['**/*.d.ts', '**/*.js.map', '**/*.scss.json'],
221
- aggregateTimeout: 500,
222
- },
223
- devServer: {
224
- client: {
225
- progress: false,
226
- },
227
- },
228
- plugins: [
229
- // new WatchRunPlugin(),
230
- // new RebuildScssJsonPlugin(),
231
- new mini_css_extract_plugin_1.default({
232
- ignoreOrder: true
233
- }),
234
- new webpack_1.default.EnvironmentPlugin(Object.keys(process.env)),
235
- // new ForkTsCheckerWebpackPlugin(),
236
- isDevelopment && new react_refresh_webpack_plugin_1.default(),
237
- isDevelopment && new webpack_1.default.HotModuleReplacementPlugin(),
238
- config.analyse && new webpack_bundle_analyzer_1.BundleAnalyzerPlugin(),
239
- ...(Array.isArray(config.plugins) ? config.plugins : []),
240
- ].filter(Boolean),
241
- externals: config.externals || {},
242
- module: {
243
- rules: [
244
- {
245
- test: /\.(scss|css)$/,
246
- use: [
247
- mini_css_extract_plugin_1.default.loader,
248
- {
249
- loader: 'css-loader',
250
- options: {
251
- url: false,
252
- importLoaders: 1,
253
- modules: {
254
- mode: 'local',
255
- // namedExport:true,
256
- // exportOnlyLocals:true,
257
- getLocalIdent: getLocalIdent,
258
- localIdentName: '[local]--[hash:base64:6]',
259
- // localIdentName: "[path][name]__[local]--[hash:base64:5]",
260
- },
261
- },
262
- },
263
- {
264
- loader: 'postcss-loader',
265
- options: {
266
- postcssOptions: {
267
- plugins: postcssPlugins,
268
- },
269
- },
270
- },
271
- {
272
- loader: 'sass-loader',
273
- options: { sourceMap: true },
274
- },
275
- ],
276
- },
277
- // {
278
- // test: /\.(ts|tsx)$/,
279
- // exclude: /node_modules/,
280
- // include: [path.join(process.cwd(),"frontend")], // only bundle files in this directory
281
- // use: {
282
- // loader: "babel-loader", // cf. .babelrc.json in this folder and browser list in package.json
283
- // options: {
284
- // plugins: isDevelopment ? ["react-refresh/babel"] : [],
285
- // cacheCompression: false,
286
- // cacheDirectory: true,
287
- // },
288
- // },
289
- // },
290
- // {
291
- // test: /\.m?js/,
292
- // resolve: {
293
- // fullySpecified: false
294
- // }
295
- // },
296
- {
297
- test: /\.tsx?$/,
298
- use: [
299
- {
300
- loader: 'ts-loader?' +
301
- JSON.stringify({
302
- compilerOptions: {
303
- //this is required for dynamic imports & code splitting
304
- module: 'esnext',
305
- moduleResolution: 'node',
306
- sourceMap: isDevelopment,
307
- plugins: [{ 'name': 'typescript-plugin-css-modules' }],
308
- },
309
- }),
310
- options: {
311
- ...(isDevelopment
312
- ? {
313
- getCustomTransformers: () => ({
314
- before: [(0, react_refresh_typescript_1.default)()],
315
- }),
316
- }
317
- : {}),
318
- transpileOnly: isProduction,
319
- },
320
- },
321
- ],
322
- exclude: /node_modules/,
323
- },
324
- ],
325
- },
326
- optimization: {
327
- minimize: isProduction,
328
- minimizer: [
329
- new terser_webpack_plugin_1.default({
330
- terserOptions: {
331
- keep_classnames: true,
332
- },
333
- }),
334
- ],
335
- },
336
- stats: {
337
- chunks: false,
338
- assets: true,
339
- entrypoints: false,
340
- children: true,
341
- modules: false,
342
- },
343
- resolve: {
344
- extensions: ['.tsx', '.ts', '.js', '.css', '.scss', '.json'],
345
- alias: config.alias || {},
346
- },
347
- //Cache is now overwritten in LincdServer based on config, the other value for type would be 'filesystem'
348
- //see also https://webpack.js.org/configuration/other-options/#cache
349
- cache: { type: 'memory' },
350
- };
351
- };
352
- exports.getWebpackAppConfig = getWebpackAppConfig;
353
- //# sourceMappingURL=config-webpack-app.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-webpack-app.js","sourceRoot":"","sources":["../../src/config-webpack-app.ts"],"names":[],"mappings":"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"}