@atlaspack/transformer-css 2.14.5-canary.27 → 2.14.5-canary.270

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.
@@ -60,6 +60,13 @@ function _diagnostic() {
60
60
  };
61
61
  return data;
62
62
  }
63
+ function _featureFlags() {
64
+ const data = require("@atlaspack/feature-flags");
65
+ _featureFlags = function () {
66
+ return data;
67
+ };
68
+ return data;
69
+ }
63
70
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
64
71
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
65
72
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -78,15 +85,27 @@ var _default = exports.default = new (_plugin().Transformer)({
78
85
  packageKey: '@atlaspack/transformer-css'
79
86
  });
80
87
  let contents = conf === null || conf === void 0 ? void 0 : conf.contents;
88
+ // @ts-expect-error TS2339
81
89
  if (typeof (contents === null || contents === void 0 || (_contents$cssModules = contents.cssModules) === null || _contents$cssModules === void 0 ? void 0 : _contents$cssModules.include) === 'string') {
90
+ // @ts-expect-error TS2339
82
91
  contents.cssModules.include = [(0, _utils().globToRegex)(contents.cssModules.include)];
92
+ // @ts-expect-error TS2339
83
93
  } else if (Array.isArray(contents === null || contents === void 0 || (_contents$cssModules2 = contents.cssModules) === null || _contents$cssModules2 === void 0 ? void 0 : _contents$cssModules2.include)) {
84
- contents.cssModules.include = contents.cssModules.include.map(include => typeof include === 'string' ? (0, _utils().globToRegex)(include) : include);
94
+ // @ts-expect-error TS2339
95
+ contents.cssModules.include = contents.cssModules.include.map(
96
+ // @ts-expect-error TS7006
97
+ include => typeof include === 'string' ? (0, _utils().globToRegex)(include) : include);
85
98
  }
99
+ // @ts-expect-error TS2339
86
100
  if (typeof (contents === null || contents === void 0 || (_contents$cssModules3 = contents.cssModules) === null || _contents$cssModules3 === void 0 ? void 0 : _contents$cssModules3.exclude) === 'string') {
101
+ // @ts-expect-error TS2339
87
102
  contents.cssModules.exclude = [(0, _utils().globToRegex)(contents.cssModules.exclude)];
103
+ // @ts-expect-error TS2339
88
104
  } else if (Array.isArray(contents === null || contents === void 0 || (_contents$cssModules4 = contents.cssModules) === null || _contents$cssModules4 === void 0 ? void 0 : _contents$cssModules4.exclude)) {
89
- contents.cssModules.exclude = contents.cssModules.exclude.map(exclude => typeof exclude === 'string' ? (0, _utils().globToRegex)(exclude) : exclude);
105
+ // @ts-expect-error TS2339
106
+ contents.cssModules.exclude = contents.cssModules.exclude.map(
107
+ // @ts-expect-error TS7006
108
+ exclude => typeof exclude === 'string' ? (0, _utils().globToRegex)(exclude) : exclude);
90
109
  }
91
110
  return contents;
92
111
  },
@@ -96,6 +115,10 @@ var _default = exports.default = new (_plugin().Transformer)({
96
115
  options,
97
116
  logger
98
117
  }) {
118
+ if ((0, _featureFlags().getFeatureFlag)('compiledCssInJsTransformer') && asset.filePath.endsWith('.compiled.css')) {
119
+ return handleCompiledCssAsset(asset);
120
+ }
121
+
99
122
  // Normalize the asset's environment so that properties that only affect JS don't cause CSS to be duplicated.
100
123
  // For example, with ESModule and CommonJS targets, only a single shared CSS bundle should be produced.
101
124
  let env = asset.env;
@@ -106,10 +129,11 @@ var _default = exports.default = new (_plugin().Transformer)({
106
129
  },
107
130
  shouldOptimize: asset.env.shouldOptimize,
108
131
  shouldScopeHoist: asset.env.shouldScopeHoist,
109
- sourceMap: asset.env.sourceMap
132
+ sourceMap: asset.env.sourceMap,
133
+ unstableSingleFileOutput: (0, _featureFlags().getFeatureFlag)('preserveUnstableSingleFileOutputInCss') ? asset.env.unstableSingleFileOutput : undefined
110
134
  });
111
135
  let [code, originalMap] = await Promise.all([asset.getBuffer(), asset.getMap(),
112
- // $FlowFixMe native.default is the init function only when bundled for the browser build
136
+ // @ts-expect-error TS2339
113
137
  process.browser && native().default()]);
114
138
  let targets = getTargets(asset.env.engines.browsers);
115
139
  let res;
@@ -118,12 +142,14 @@ var _default = exports.default = new (_plugin().Transformer)({
118
142
  res = transformStyleAttribute({
119
143
  code,
120
144
  analyzeDependencies: true,
145
+ // @ts-expect-error TS2339
121
146
  errorRecovery: (config === null || config === void 0 ? void 0 : config.errorRecovery) || false,
122
147
  targets
123
148
  });
124
149
  } else {
125
150
  let cssModules = false;
126
151
  if (asset.meta.type !== 'tag' && asset.meta.cssModulesCompiled == null) {
152
+ // @ts-expect-error TS2339
127
153
  let cssModulesConfig = config === null || config === void 0 ? void 0 : config.cssModules;
128
154
  let isCSSModule = /\.module\./.test(asset.filePath);
129
155
  if (asset.isSource) {
@@ -132,6 +158,7 @@ var _default = exports.default = new (_plugin().Transformer)({
132
158
  if (typeof cssModulesConfig === 'boolean') {
133
159
  isCSSModule = true;
134
160
  } else if (cssModulesConfig !== null && cssModulesConfig !== void 0 && cssModulesConfig.include) {
161
+ // @ts-expect-error TS7006
135
162
  isCSSModule = cssModulesConfig.include.some(include => include.test(projectRootPath));
136
163
  } else if (cssModulesConfig !== null && cssModulesConfig !== void 0 && cssModulesConfig.global) {
137
164
  isCSSModule = true;
@@ -155,8 +182,11 @@ var _default = exports.default = new (_plugin().Transformer)({
155
182
  preserveImports: true
156
183
  } : false,
157
184
  sourceMap: !!asset.env.sourceMap,
185
+ // @ts-expect-error TS2339
158
186
  drafts: config === null || config === void 0 ? void 0 : config.drafts,
187
+ // @ts-expect-error TS2339
159
188
  pseudoClasses: config === null || config === void 0 ? void 0 : config.pseudoClasses,
189
+ // @ts-expect-error TS2339
160
190
  errorRecovery: (config === null || config === void 0 ? void 0 : config.errorRecovery) || false,
161
191
  targets
162
192
  });
@@ -196,7 +226,10 @@ var _default = exports.default = new (_plugin().Transformer)({
196
226
  });
197
227
  }
198
228
  }
229
+
230
+ // @ts-expect-error TS2339
199
231
  if (res.map != null) {
232
+ // @ts-expect-error TS2339
200
233
  let vlqMap = JSON.parse(Buffer.from(res.map).toString());
201
234
  let map = new (_sourceMap().default)(options.projectRoot);
202
235
  map.addVLQMap(vlqMap);
@@ -209,8 +242,10 @@ var _default = exports.default = new (_plugin().Transformer)({
209
242
  for (let dep of res.dependencies) {
210
243
  let loc = convertLoc(dep.loc);
211
244
  if (originalMap) {
212
- loc = (0, _utils().remapSourceLocation)(loc, originalMap);
245
+ loc = (0, _utils().remapSourceLocation)(loc, originalMap, options.projectRoot);
213
246
  }
247
+
248
+ // @ts-expect-error TS2339
214
249
  if (dep.type === 'import' && !res.exports) {
215
250
  asset.addDependency({
216
251
  specifier: dep.url,
@@ -236,7 +271,10 @@ var _default = exports.default = new (_plugin().Transformer)({
236
271
  }
237
272
  let assets = [asset];
238
273
  let buffer = Buffer.from(res.code);
274
+
275
+ // @ts-expect-error TS2339
239
276
  if (res.exports != null) {
277
+ // @ts-expect-error TS2339
240
278
  let exports = res.exports;
241
279
  asset.symbols.ensure();
242
280
  asset.symbols.set('default', 'default');
@@ -246,6 +284,7 @@ var _default = exports.default = new (_plugin().Transformer)({
246
284
  let depjs = '';
247
285
  let js = '';
248
286
  let cssImports = '';
287
+ let jsDeps = [];
249
288
  for (let key in exports) {
250
289
  locals.set(exports[key].name, key);
251
290
  }
@@ -327,7 +366,10 @@ var _default = exports.default = new (_plugin().Transformer)({
327
366
  }
328
367
  }
329
368
  }
369
+
370
+ // @ts-expect-error TS2339
330
371
  if (res.references != null) {
372
+ // @ts-expect-error TS2339
331
373
  let references = res.references;
332
374
  for (let symbol in references) {
333
375
  let reference = references[symbol];
@@ -347,8 +389,9 @@ var _default = exports.default = new (_plugin().Transformer)({
347
389
  }
348
390
  assets.push({
349
391
  type: 'js',
392
+ // @ts-expect-error TS2353
350
393
  content: depjs + js,
351
- dependencies: [],
394
+ dependencies: jsDeps,
352
395
  env
353
396
  });
354
397
 
@@ -386,4 +429,14 @@ function convertLoc(loc) {
386
429
  column: loc.end.column + 1
387
430
  }
388
431
  };
432
+ }
433
+ async function handleCompiledCssAsset(asset) {
434
+ const code = await asset.getCode();
435
+ const rules = code.split('\n').map(line => line.trim());
436
+ // styleRules will be consumed by the optimiser in @compiled/parcel-optimizer
437
+ asset.meta.styleRules = rules;
438
+
439
+ // Empty the code because we only use compiled CSS assets for their metadata
440
+ asset.setCode('');
441
+ return [asset];
389
442
  }
@@ -0,0 +1,3 @@
1
+ import { Transformer } from '@atlaspack/plugin';
2
+ declare const _default: Transformer<unknown>;
3
+ export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaspack/transformer-css",
3
- "version": "2.14.5-canary.27+6fce152f5",
3
+ "version": "2.14.5-canary.270+ec3abe4df",
4
4
  "license": "(MIT OR Apache-2.0)",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -9,15 +9,18 @@
9
9
  "type": "git",
10
10
  "url": "https://github.com/atlassian-labs/atlaspack.git"
11
11
  },
12
- "main": "lib/CSSTransformer.js",
13
- "source": "src/CSSTransformer.js",
12
+ "main": "./lib/CSSTransformer.js",
13
+ "source": "./src/CSSTransformer.ts",
14
+ "types": "./lib/types/CSSTransformer.d.ts",
14
15
  "engines": {
15
16
  "node": ">= 16.0.0"
16
17
  },
17
18
  "dependencies": {
18
- "@atlaspack/diagnostic": "2.14.1-canary.95+6fce152f5",
19
- "@atlaspack/plugin": "2.14.5-canary.27+6fce152f5",
20
- "@atlaspack/utils": "2.14.5-canary.27+6fce152f5",
19
+ "@atlaspack/diagnostic": "2.14.1-canary.338+ec3abe4df",
20
+ "@atlaspack/feature-flags": "2.14.1-canary.338+ec3abe4df",
21
+ "@atlaspack/plugin": "2.14.5-canary.270+ec3abe4df",
22
+ "@atlaspack/types": "2.14.5-canary.270+ec3abe4df",
23
+ "@atlaspack/utils": "2.14.5-canary.270+ec3abe4df",
21
24
  "@parcel/source-map": "^2.1.1",
22
25
  "browserslist": "^4.6.6",
23
26
  "lightningcss": "^1.28.2",
@@ -30,5 +33,8 @@
30
33
  "lightningcss": "lightningcss-wasm"
31
34
  },
32
35
  "type": "commonjs",
33
- "gitHead": "6fce152f53ea2b495291733792f5c0546bc1b062"
34
- }
36
+ "scripts": {
37
+ "build:lib": "gulp build --gulpfile ../../../gulpfile.js --cwd ."
38
+ },
39
+ "gitHead": "ec3abe4dffc98560a850fd2f71fb566577e6c99c"
40
+ }
@@ -1,6 +1,4 @@
1
- // @flow strict-local
2
-
3
- import type {SourceLocation} from '@atlaspack/types';
1
+ import type {MutableAsset, SourceLocation} from '@atlaspack/types';
4
2
 
5
3
  import path from 'path';
6
4
  import SourceMap from '@parcel/source-map';
@@ -11,37 +9,57 @@ import {
11
9
  globToRegex,
12
10
  normalizeSeparators,
13
11
  } from '@atlaspack/utils';
14
- import {type SourceLocation as LightningSourceLocation} from 'lightningcss';
12
+ import {SourceLocation as LightningSourceLocation} from 'lightningcss';
15
13
  import * as native from 'lightningcss';
16
14
  import browserslist from 'browserslist';
17
15
  import nullthrows from 'nullthrows';
18
16
  import ThrowableDiagnostic, {errorToDiagnostic} from '@atlaspack/diagnostic';
17
+ import {getFeatureFlag} from '@atlaspack/feature-flags';
19
18
 
20
19
  const {transform, transformStyleAttribute, browserslistToTargets} = native;
21
20
 
22
- export default (new Transformer({
21
+ export default new Transformer({
23
22
  async loadConfig({config, options}) {
24
23
  let conf = await config.getConfigFrom(options.projectRoot + '/index', [], {
25
24
  packageKey: '@atlaspack/transformer-css',
26
25
  });
27
26
  let contents = conf?.contents;
27
+ // @ts-expect-error TS2339
28
28
  if (typeof contents?.cssModules?.include === 'string') {
29
+ // @ts-expect-error TS2339
29
30
  contents.cssModules.include = [globToRegex(contents.cssModules.include)];
31
+ // @ts-expect-error TS2339
30
32
  } else if (Array.isArray(contents?.cssModules?.include)) {
31
- contents.cssModules.include = contents.cssModules.include.map((include) =>
32
- typeof include === 'string' ? globToRegex(include) : include,
33
+ // @ts-expect-error TS2339
34
+ contents.cssModules.include = contents.cssModules.include.map(
35
+ // @ts-expect-error TS7006
36
+ (include) =>
37
+ typeof include === 'string' ? globToRegex(include) : include,
33
38
  );
34
39
  }
40
+ // @ts-expect-error TS2339
35
41
  if (typeof contents?.cssModules?.exclude === 'string') {
42
+ // @ts-expect-error TS2339
36
43
  contents.cssModules.exclude = [globToRegex(contents.cssModules.exclude)];
44
+ // @ts-expect-error TS2339
37
45
  } else if (Array.isArray(contents?.cssModules?.exclude)) {
38
- contents.cssModules.exclude = contents.cssModules.exclude.map((exclude) =>
39
- typeof exclude === 'string' ? globToRegex(exclude) : exclude,
46
+ // @ts-expect-error TS2339
47
+ contents.cssModules.exclude = contents.cssModules.exclude.map(
48
+ // @ts-expect-error TS7006
49
+ (exclude) =>
50
+ typeof exclude === 'string' ? globToRegex(exclude) : exclude,
40
51
  );
41
52
  }
42
53
  return contents;
43
54
  },
44
55
  async transform({asset, config, options, logger}) {
56
+ if (
57
+ getFeatureFlag('compiledCssInJsTransformer') &&
58
+ asset.filePath.endsWith('.compiled.css')
59
+ ) {
60
+ return handleCompiledCssAsset(asset);
61
+ }
62
+
45
63
  // Normalize the asset's environment so that properties that only affect JS don't cause CSS to be duplicated.
46
64
  // For example, with ESModule and CommonJS targets, only a single shared CSS bundle should be produced.
47
65
  let env = asset.env;
@@ -53,12 +71,17 @@ export default (new Transformer({
53
71
  shouldOptimize: asset.env.shouldOptimize,
54
72
  shouldScopeHoist: asset.env.shouldScopeHoist,
55
73
  sourceMap: asset.env.sourceMap,
74
+ unstableSingleFileOutput: getFeatureFlag(
75
+ 'preserveUnstableSingleFileOutputInCss',
76
+ )
77
+ ? asset.env.unstableSingleFileOutput
78
+ : undefined,
56
79
  });
57
80
 
58
81
  let [code, originalMap] = await Promise.all([
59
82
  asset.getBuffer(),
60
83
  asset.getMap(),
61
- // $FlowFixMe native.default is the init function only when bundled for the browser build
84
+ // @ts-expect-error TS2339
62
85
  process.browser && native.default(),
63
86
  ]);
64
87
 
@@ -69,6 +92,7 @@ export default (new Transformer({
69
92
  res = transformStyleAttribute({
70
93
  code,
71
94
  analyzeDependencies: true,
95
+ // @ts-expect-error TS2339
72
96
  errorRecovery: config?.errorRecovery || false,
73
97
  targets,
74
98
  });
@@ -78,6 +102,7 @@ export default (new Transformer({
78
102
  asset.meta.type !== 'tag' &&
79
103
  asset.meta.cssModulesCompiled == null
80
104
  ) {
105
+ // @ts-expect-error TS2339
81
106
  let cssModulesConfig = config?.cssModules;
82
107
  let isCSSModule = /\.module\./.test(asset.filePath);
83
108
  if (asset.isSource) {
@@ -88,6 +113,7 @@ export default (new Transformer({
88
113
  if (typeof cssModulesConfig === 'boolean') {
89
114
  isCSSModule = true;
90
115
  } else if (cssModulesConfig?.include) {
116
+ // @ts-expect-error TS7006
91
117
  isCSSModule = cssModulesConfig.include.some((include) =>
92
118
  include.test(projectRootPath),
93
119
  );
@@ -96,7 +122,7 @@ export default (new Transformer({
96
122
  }
97
123
 
98
124
  if (
99
- cssModulesConfig?.exclude?.some((exclude) =>
125
+ cssModulesConfig?.exclude?.some((exclude: any) =>
100
126
  exclude.test(projectRootPath),
101
127
  )
102
128
  ) {
@@ -126,13 +152,16 @@ export default (new Transformer({
126
152
  }
127
153
  : false,
128
154
  sourceMap: !!asset.env.sourceMap,
155
+ // @ts-expect-error TS2339
129
156
  drafts: config?.drafts,
157
+ // @ts-expect-error TS2339
130
158
  pseudoClasses: config?.pseudoClasses,
159
+ // @ts-expect-error TS2339
131
160
  errorRecovery: config?.errorRecovery || false,
132
161
  targets,
133
162
  });
134
163
  }
135
- } catch (err) {
164
+ } catch (err: any) {
136
165
  err.filePath = asset.filePath;
137
166
  let diagnostic = errorToDiagnostic(err, {
138
167
  origin: '@atlaspack/transformer-css',
@@ -180,7 +209,9 @@ export default (new Transformer({
180
209
  }
181
210
  }
182
211
 
212
+ // @ts-expect-error TS2339
183
213
  if (res.map != null) {
214
+ // @ts-expect-error TS2339
184
215
  let vlqMap = JSON.parse(Buffer.from(res.map).toString());
185
216
  let map = new SourceMap(options.projectRoot);
186
217
  map.addVLQMap(vlqMap);
@@ -196,9 +227,10 @@ export default (new Transformer({
196
227
  for (let dep of res.dependencies) {
197
228
  let loc = convertLoc(dep.loc);
198
229
  if (originalMap) {
199
- loc = remapSourceLocation(loc, originalMap);
230
+ loc = remapSourceLocation(loc, originalMap, options.projectRoot);
200
231
  }
201
232
 
233
+ // @ts-expect-error TS2339
202
234
  if (dep.type === 'import' && !res.exports) {
203
235
  asset.addDependency({
204
236
  specifier: dep.url,
@@ -226,7 +258,9 @@ export default (new Transformer({
226
258
  let assets = [asset];
227
259
  let buffer = Buffer.from(res.code);
228
260
 
261
+ // @ts-expect-error TS2339
229
262
  if (res.exports != null) {
263
+ // @ts-expect-error TS2339
230
264
  let exports = res.exports;
231
265
  asset.symbols.ensure();
232
266
  asset.symbols.set('default', 'default');
@@ -238,7 +272,7 @@ export default (new Transformer({
238
272
  let js = '';
239
273
  let cssImports = '';
240
274
 
241
- let jsDeps = [];
275
+ let jsDeps: Array<never> = [];
242
276
 
243
277
  for (let key in exports) {
244
278
  locals.set(exports[key].name, key);
@@ -247,7 +281,7 @@ export default (new Transformer({
247
281
  asset.uniqueKey ??= asset.id;
248
282
 
249
283
  let seen = new Set();
250
- let add = (key) => {
284
+ let add = (key: string) => {
251
285
  if (seen.has(key)) {
252
286
  return;
253
287
  }
@@ -299,6 +333,7 @@ export default (new Transformer({
299
333
  asset.addDependency({
300
334
  specifier: nullthrows(asset.uniqueKey),
301
335
  specifierType: 'esm',
336
+
302
337
  symbols: new Map([
303
338
  [key, {local: exports[key].name, isWeak: false, loc: null}],
304
339
  ]),
@@ -322,12 +357,15 @@ export default (new Transformer({
322
357
  let d = `dep_$${c++}`;
323
358
  depjs += `import * as ${d} from ${JSON.stringify(dep.url)};\n`;
324
359
  js += `for (let key in ${d}) { if (key in module.exports) module.exports[key] += ' ' + ${d}[key]; else module.exports[key] = ${d}[key]; }\n`;
360
+
325
361
  asset.symbols.set('*', '*');
326
362
  }
327
363
  }
328
364
  }
329
365
 
366
+ // @ts-expect-error TS2339
330
367
  if (res.references != null) {
368
+ // @ts-expect-error TS2339
331
369
  let references = res.references;
332
370
  for (let symbol in references) {
333
371
  let reference = references[symbol];
@@ -347,6 +385,7 @@ export default (new Transformer({
347
385
 
348
386
  assets.push({
349
387
  type: 'js',
388
+ // @ts-expect-error TS2353
350
389
  content: depjs + js,
351
390
  dependencies: jsDeps,
352
391
  env,
@@ -361,11 +400,11 @@ export default (new Transformer({
361
400
  asset.setBuffer(buffer);
362
401
  return assets;
363
402
  },
364
- }): Transformer);
403
+ }) as Transformer<unknown>;
365
404
 
366
405
  let cache = new Map();
367
406
 
368
- function getTargets(browsers) {
407
+ function getTargets(browsers: undefined | string | Array<string>) {
369
408
  if (browsers == null) {
370
409
  return undefined;
371
410
  }
@@ -388,3 +427,16 @@ function convertLoc(loc: LightningSourceLocation): SourceLocation {
388
427
  end: {line: loc.end.line, column: loc.end.column + 1},
389
428
  };
390
429
  }
430
+
431
+ async function handleCompiledCssAsset(asset: MutableAsset) {
432
+ const code = await asset.getCode();
433
+
434
+ const rules: Array<string> = code.split('\n').map((line) => line.trim());
435
+ // styleRules will be consumed by the optimiser in @compiled/parcel-optimizer
436
+ asset.meta.styleRules = rules;
437
+
438
+ // Empty the code because we only use compiled CSS assets for their metadata
439
+ asset.setCode('');
440
+
441
+ return [asset];
442
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,24 @@
1
+ {
2
+ "extends": "../../../tsconfig.base.json",
3
+ "include": ["src"],
4
+ "compilerOptions": {
5
+ "composite": true
6
+ },
7
+ "references": [
8
+ {
9
+ "path": "../../core/diagnostic/tsconfig.json"
10
+ },
11
+ {
12
+ "path": "../../core/feature-flags/tsconfig.json"
13
+ },
14
+ {
15
+ "path": "../../core/plugin/tsconfig.json"
16
+ },
17
+ {
18
+ "path": "../../core/types/tsconfig.json"
19
+ },
20
+ {
21
+ "path": "../../core/utils/tsconfig.json"
22
+ }
23
+ ]
24
+ }