@atlaspack/transformer-js 3.2.3-canary.7 → 3.2.3-canary.70

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.
@@ -160,24 +160,25 @@ var _default = exports.default = new (_plugin().Transformer)({
160
160
  config,
161
161
  options
162
162
  }) {
163
- let pkg = await config.getPackage();
163
+ let packageJson = await config.getPackage();
164
164
  let isJSX, pragma, pragmaFrag, jsxImportSource, automaticJSXRuntime, reactRefresh, decorators, useDefineForClassFields;
165
165
  if (config.isSource) {
166
- var _pkg$dependencies2, _pkg$devDependencies2, _pkg$peerDependencies2, _tsconfig$contents;
166
+ var _packageJson$dependen2, _packageJson$devDepen2, _packageJson$peerDepe2, _await$config$getConf;
167
167
  let reactLib;
168
- if (pkg !== null && pkg !== void 0 && pkg.alias && pkg.alias['react']) {
168
+ if (packageJson !== null && packageJson !== void 0 && packageJson.alias && packageJson.alias['react']) {
169
169
  // e.g.: `{ alias: { "react": "preact/compat" } }`
170
170
  reactLib = 'react';
171
171
  } else {
172
172
  // Find a dependency that we can map to a JSX pragma
173
173
  reactLib = Object.keys(JSX_PRAGMA).find(libName => {
174
- var _pkg$dependencies, _pkg$devDependencies, _pkg$peerDependencies;
175
- return (pkg === null || pkg === void 0 || (_pkg$dependencies = pkg.dependencies) === null || _pkg$dependencies === void 0 ? void 0 : _pkg$dependencies[libName]) || (pkg === null || pkg === void 0 || (_pkg$devDependencies = pkg.devDependencies) === null || _pkg$devDependencies === void 0 ? void 0 : _pkg$devDependencies[libName]) || (pkg === null || pkg === void 0 || (_pkg$peerDependencies = pkg.peerDependencies) === null || _pkg$peerDependencies === void 0 ? void 0 : _pkg$peerDependencies[libName]);
174
+ var _packageJson$dependen, _packageJson$devDepen, _packageJson$peerDepe;
175
+ return (packageJson === null || packageJson === void 0 || (_packageJson$dependen = packageJson.dependencies) === null || _packageJson$dependen === void 0 ? void 0 : _packageJson$dependen[libName]) || (packageJson === null || packageJson === void 0 || (_packageJson$devDepen = packageJson.devDependencies) === null || _packageJson$devDepen === void 0 ? void 0 : _packageJson$devDepen[libName]) || (packageJson === null || packageJson === void 0 || (_packageJson$peerDepe = packageJson.peerDependencies) === null || _packageJson$peerDepe === void 0 ? void 0 : _packageJson$peerDepe[libName]);
176
176
  });
177
177
  }
178
- reactRefresh = options.hmrOptions && options.mode === 'development' && Boolean((pkg === null || pkg === void 0 || (_pkg$dependencies2 = pkg.dependencies) === null || _pkg$dependencies2 === void 0 ? void 0 : _pkg$dependencies2.react) || (pkg === null || pkg === void 0 || (_pkg$devDependencies2 = pkg.devDependencies) === null || _pkg$devDependencies2 === void 0 ? void 0 : _pkg$devDependencies2.react) || (pkg === null || pkg === void 0 || (_pkg$peerDependencies2 = pkg.peerDependencies) === null || _pkg$peerDependencies2 === void 0 ? void 0 : _pkg$peerDependencies2.react));
179
- let tsconfig = await config.getConfigFrom(options.projectRoot + '/index', ['tsconfig.json', 'jsconfig.json']);
180
- let compilerOptions = tsconfig === null || tsconfig === void 0 || (_tsconfig$contents = tsconfig.contents) === null || _tsconfig$contents === void 0 ? void 0 : _tsconfig$contents.compilerOptions;
178
+ reactRefresh = options.hmrOptions && options.mode === 'development' && Boolean((packageJson === null || packageJson === void 0 || (_packageJson$dependen2 = packageJson.dependencies) === null || _packageJson$dependen2 === void 0 ? void 0 : _packageJson$dependen2.react) || (packageJson === null || packageJson === void 0 || (_packageJson$devDepen2 = packageJson.devDependencies) === null || _packageJson$devDepen2 === void 0 ? void 0 : _packageJson$devDepen2.react) || (packageJson === null || packageJson === void 0 || (_packageJson$peerDepe2 = packageJson.peerDependencies) === null || _packageJson$peerDepe2 === void 0 ? void 0 : _packageJson$peerDepe2.react));
179
+ const compilerOptions = (_await$config$getConf = await config.getConfigFrom(options.projectRoot + '/index', ['tsconfig.json', 'jsconfig.json'], {
180
+ readTracking: (0, _featureFlags().getFeatureFlag)('granularTsConfigInvalidation')
181
+ })) === null || _await$config$getConf === void 0 || (_await$config$getConf = _await$config$getConf.contents) === null || _await$config$getConf === void 0 ? void 0 : _await$config$getConf.compilerOptions;
181
182
 
182
183
  // Use explicitly defined JSX options in tsconfig.json over inferred values from dependencies.
183
184
  pragma = (compilerOptions === null || compilerOptions === void 0 ? void 0 : compilerOptions.jsxFactory) || (reactLib ? JSX_PRAGMA[reactLib].pragma : undefined);
@@ -186,10 +187,10 @@ var _default = exports.default = new (_plugin().Transformer)({
186
187
  jsxImportSource = compilerOptions === null || compilerOptions === void 0 ? void 0 : compilerOptions.jsxImportSource;
187
188
  automaticJSXRuntime = true;
188
189
  } else if (reactLib) {
189
- var _JSX_PRAGMA$effective, _pkg$dependencies3, _pkg$devDependencies3, _pkg$peerDependencies3, _semver$minVersion;
190
- let effectiveReactLib = pkg !== null && pkg !== void 0 && pkg.alias && pkg.alias['react'] === 'preact/compat' ? 'preact' : reactLib;
190
+ var _JSX_PRAGMA$effective, _packageJson$dependen3, _packageJson$devDepen3, _packageJson$peerDepe3, _semver$minVersion;
191
+ let effectiveReactLib = packageJson !== null && packageJson !== void 0 && packageJson.alias && packageJson.alias['react'] === 'preact/compat' ? 'preact' : reactLib;
191
192
  let automaticVersion = (_JSX_PRAGMA$effective = JSX_PRAGMA[effectiveReactLib]) === null || _JSX_PRAGMA$effective === void 0 ? void 0 : _JSX_PRAGMA$effective.automatic;
192
- let reactLibVersion = (pkg === null || pkg === void 0 || (_pkg$dependencies3 = pkg.dependencies) === null || _pkg$dependencies3 === void 0 ? void 0 : _pkg$dependencies3[effectiveReactLib]) || (pkg === null || pkg === void 0 || (_pkg$devDependencies3 = pkg.devDependencies) === null || _pkg$devDependencies3 === void 0 ? void 0 : _pkg$devDependencies3[effectiveReactLib]) || (pkg === null || pkg === void 0 || (_pkg$peerDependencies3 = pkg.peerDependencies) === null || _pkg$peerDependencies3 === void 0 ? void 0 : _pkg$peerDependencies3[effectiveReactLib]);
193
+ let reactLibVersion = (packageJson === null || packageJson === void 0 || (_packageJson$dependen3 = packageJson.dependencies) === null || _packageJson$dependen3 === void 0 ? void 0 : _packageJson$dependen3[effectiveReactLib]) || (packageJson === null || packageJson === void 0 || (_packageJson$devDepen3 = packageJson.devDependencies) === null || _packageJson$devDepen3 === void 0 ? void 0 : _packageJson$devDepen3[effectiveReactLib]) || (packageJson === null || packageJson === void 0 || (_packageJson$peerDepe3 = packageJson.peerDependencies) === null || _packageJson$peerDepe3 === void 0 ? void 0 : _packageJson$peerDepe3[effectiveReactLib]);
193
194
  reactLibVersion = reactLibVersion ? _semver().default.validRange(reactLibVersion) : null;
194
195
  let minReactLibVersion = reactLibVersion !== null && reactLibVersion !== '*' ? (_semver$minVersion = _semver().default.minVersion(reactLibVersion)) === null || _semver$minVersion === void 0 ? void 0 : _semver$minVersion.toString() : null;
195
196
  automaticJSXRuntime = automaticVersion && !(compilerOptions !== null && compilerOptions !== void 0 && compilerOptions.jsxFactory) && minReactLibVersion != null && _semver().default.satisfies(minReactLibVersion, automaticVersion, {
@@ -215,7 +216,7 @@ var _default = exports.default = new (_plugin().Transformer)({
215
216
 
216
217
  // Check if we should ignore fs calls
217
218
  // See https://github.com/defunctzombie/node-browser-resolve#skip
218
- let ignoreFS = pkg && pkg.browser && typeof pkg.browser === 'object' && pkg.browser.fs === false;
219
+ let ignoreFS = packageJson && packageJson.browser && typeof packageJson.browser === 'object' && packageJson.browser.fs === false;
219
220
  let conf = await config.getConfigFrom(options.projectRoot + '/index', [], {
220
221
  packageKey: '@atlaspack/transformer-js'
221
222
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaspack/transformer-js",
3
- "version": "3.2.3-canary.7+a4bc25901",
3
+ "version": "3.2.3-canary.70+b1b369317",
4
4
  "license": "(MIT OR Apache-2.0)",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -22,12 +22,12 @@
22
22
  "src"
23
23
  ],
24
24
  "dependencies": {
25
- "@atlaspack/diagnostic": "2.14.1-canary.75+a4bc25901",
26
- "@atlaspack/feature-flags": "2.14.1-canary.75+a4bc25901",
27
- "@atlaspack/plugin": "2.14.5-canary.7+a4bc25901",
28
- "@atlaspack/rust": "3.2.1-canary.7+a4bc25901",
29
- "@atlaspack/utils": "2.14.5-canary.7+a4bc25901",
30
- "@atlaspack/workers": "2.14.5-canary.7+a4bc25901",
25
+ "@atlaspack/diagnostic": "2.14.1-canary.138+b1b369317",
26
+ "@atlaspack/feature-flags": "2.14.1-canary.138+b1b369317",
27
+ "@atlaspack/plugin": "2.14.5-canary.70+b1b369317",
28
+ "@atlaspack/rust": "3.2.1-canary.70+b1b369317",
29
+ "@atlaspack/utils": "2.14.5-canary.70+b1b369317",
30
+ "@atlaspack/workers": "2.14.5-canary.70+b1b369317",
31
31
  "@parcel/source-map": "^2.1.1",
32
32
  "@swc/helpers": "^0.5.15",
33
33
  "browserslist": "^4.6.6",
@@ -39,5 +39,5 @@
39
39
  "@atlaspack/core": "^2.13.1"
40
40
  },
41
41
  "type": "commonjs",
42
- "gitHead": "a4bc2590196b6c1e743e4edcb0337e8c4c240ab4"
42
+ "gitHead": "b1b369317c66f8a431c170df2ebba4fa5b2e38ef"
43
43
  }
@@ -173,7 +173,7 @@ type MacroContext = {|
173
173
 
174
174
  export default (new Transformer({
175
175
  async loadConfig({config, options}) {
176
- let pkg = await config.getPackage();
176
+ let packageJson = await config.getPackage();
177
177
  let isJSX,
178
178
  pragma,
179
179
  pragmaFrag,
@@ -184,16 +184,16 @@ export default (new Transformer({
184
184
  useDefineForClassFields;
185
185
  if (config.isSource) {
186
186
  let reactLib;
187
- if (pkg?.alias && pkg.alias['react']) {
187
+ if (packageJson?.alias && packageJson.alias['react']) {
188
188
  // e.g.: `{ alias: { "react": "preact/compat" } }`
189
189
  reactLib = 'react';
190
190
  } else {
191
191
  // Find a dependency that we can map to a JSX pragma
192
192
  reactLib = Object.keys(JSX_PRAGMA).find(
193
193
  (libName) =>
194
- pkg?.dependencies?.[libName] ||
195
- pkg?.devDependencies?.[libName] ||
196
- pkg?.peerDependencies?.[libName],
194
+ packageJson?.dependencies?.[libName] ||
195
+ packageJson?.devDependencies?.[libName] ||
196
+ packageJson?.peerDependencies?.[libName],
197
197
  );
198
198
  }
199
199
 
@@ -201,16 +201,20 @@ export default (new Transformer({
201
201
  options.hmrOptions &&
202
202
  options.mode === 'development' &&
203
203
  Boolean(
204
- pkg?.dependencies?.react ||
205
- pkg?.devDependencies?.react ||
206
- pkg?.peerDependencies?.react,
204
+ packageJson?.dependencies?.react ||
205
+ packageJson?.devDependencies?.react ||
206
+ packageJson?.peerDependencies?.react,
207
207
  );
208
208
 
209
- let tsconfig = await config.getConfigFrom<TSConfig>(
210
- options.projectRoot + '/index',
211
- ['tsconfig.json', 'jsconfig.json'],
212
- );
213
- let compilerOptions = tsconfig?.contents?.compilerOptions;
209
+ const compilerOptions: TSConfig['compilerOptions'] = (
210
+ await config.getConfigFrom<TSConfig>(
211
+ options.projectRoot + '/index',
212
+ ['tsconfig.json', 'jsconfig.json'],
213
+ {
214
+ readTracking: getFeatureFlag('granularTsConfigInvalidation'),
215
+ },
216
+ )
217
+ )?.contents?.compilerOptions;
214
218
 
215
219
  // Use explicitly defined JSX options in tsconfig.json over inferred values from dependencies.
216
220
  pragma =
@@ -229,14 +233,14 @@ export default (new Transformer({
229
233
  automaticJSXRuntime = true;
230
234
  } else if (reactLib) {
231
235
  let effectiveReactLib =
232
- pkg?.alias && pkg.alias['react'] === 'preact/compat'
236
+ packageJson?.alias && packageJson.alias['react'] === 'preact/compat'
233
237
  ? 'preact'
234
238
  : reactLib;
235
239
  let automaticVersion = JSX_PRAGMA[effectiveReactLib]?.automatic;
236
240
  let reactLibVersion =
237
- pkg?.dependencies?.[effectiveReactLib] ||
238
- pkg?.devDependencies?.[effectiveReactLib] ||
239
- pkg?.peerDependencies?.[effectiveReactLib];
241
+ packageJson?.dependencies?.[effectiveReactLib] ||
242
+ packageJson?.devDependencies?.[effectiveReactLib] ||
243
+ packageJson?.peerDependencies?.[effectiveReactLib];
240
244
  reactLibVersion = reactLibVersion
241
245
  ? semver.validRange(reactLibVersion)
242
246
  : null;
@@ -278,10 +282,10 @@ export default (new Transformer({
278
282
  // Check if we should ignore fs calls
279
283
  // See https://github.com/defunctzombie/node-browser-resolve#skip
280
284
  let ignoreFS =
281
- pkg &&
282
- pkg.browser &&
283
- typeof pkg.browser === 'object' &&
284
- pkg.browser.fs === false;
285
+ packageJson &&
286
+ packageJson.browser &&
287
+ typeof packageJson.browser === 'object' &&
288
+ packageJson.browser.fs === false;
285
289
 
286
290
  let conf = await config.getConfigFrom(options.projectRoot + '/index', [], {
287
291
  packageKey: '@atlaspack/transformer-js',