@ecrindigital/facetpack 0.1.5 → 0.1.7
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.
- package/dist/__tests__/integration-chillz.test.d.ts +2 -0
- package/dist/__tests__/integration-chillz.test.d.ts.map +1 -0
- package/dist/__tests__/metro-simulation.test.d.ts +2 -0
- package/dist/__tests__/metro-simulation.test.d.ts.map +1 -0
- package/dist/index.cjs +46 -9
- package/dist/index.js +49 -12
- package/dist/transformer.cjs +38 -6
- package/dist/transformer.d.ts.map +1 -1
- package/dist/transformer.js +38 -6
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/withFacetpack.d.ts.map +1 -1
- package/package.json +7 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration-chillz.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/integration-chillz.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metro-simulation.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/metro-simulation.test.ts"],"names":[],"mappings":""}
|
package/dist/index.cjs
CHANGED
|
@@ -248,7 +248,11 @@ function wrapModule(id, code) {
|
|
|
248
248
|
var import_module = require("module");
|
|
249
249
|
var import_path = require("path");
|
|
250
250
|
var DEFAULT_SOURCE_EXTS = ["ts", "tsx", "js", "jsx", "mjs", "cjs"];
|
|
251
|
-
|
|
251
|
+
function getPackageDir() {
|
|
252
|
+
const projectRequire = import_module.createRequire(import_path.join(process.cwd(), "package.json"));
|
|
253
|
+
const packageJsonPath = projectRequire.resolve("@ecrindigital/facetpack/package.json");
|
|
254
|
+
return import_path.dirname(packageJsonPath);
|
|
255
|
+
}
|
|
252
256
|
function findFallbackTransformer(projectRoot) {
|
|
253
257
|
const projectRequire = import_module.createRequire(import_path.join(projectRoot, "package.json"));
|
|
254
258
|
const transformerPaths = [
|
|
@@ -265,9 +269,10 @@ function findFallbackTransformer(projectRoot) {
|
|
|
265
269
|
}
|
|
266
270
|
function withFacetpack(config, options = {}) {
|
|
267
271
|
const sourceExts = options.sourceExts ?? DEFAULT_SOURCE_EXTS;
|
|
268
|
-
const
|
|
272
|
+
const packageDir = getPackageDir();
|
|
273
|
+
const transformerPath = import_path.join(packageDir, "dist", "transformer.js");
|
|
269
274
|
const useMinifier = options.minifier !== false;
|
|
270
|
-
const minifierPath = useMinifier ?
|
|
275
|
+
const minifierPath = useMinifier ? import_path.join(packageDir, "dist", "minifier.js") : config.transformer?.minifierPath;
|
|
271
276
|
const minifierConfig = typeof options.minifier === "object" ? options.minifier : {};
|
|
272
277
|
const useTreeShake = options.treeShake !== false;
|
|
273
278
|
const existingSerializer = config.serializer?.customSerializer;
|
|
@@ -393,7 +398,8 @@ var defaultOptions = {
|
|
|
393
398
|
typescript: true,
|
|
394
399
|
sourceExts: ["ts", "tsx", "js", "jsx", "mjs", "cjs"],
|
|
395
400
|
minifier: true,
|
|
396
|
-
treeShake: true
|
|
401
|
+
treeShake: true,
|
|
402
|
+
noAst: false
|
|
397
403
|
};
|
|
398
404
|
var globalOptions = {};
|
|
399
405
|
var fallbackTransformer = null;
|
|
@@ -418,16 +424,47 @@ function getFallbackTransformer() {
|
|
|
418
424
|
function setTransformerOptions(options) {
|
|
419
425
|
globalOptions = options;
|
|
420
426
|
}
|
|
427
|
+
function getStoredOptions2() {
|
|
428
|
+
try {
|
|
429
|
+
const optionsJson = process.env.FACETPACK_OPTIONS;
|
|
430
|
+
if (optionsJson) {
|
|
431
|
+
return JSON.parse(optionsJson);
|
|
432
|
+
}
|
|
433
|
+
} catch {}
|
|
434
|
+
return {};
|
|
435
|
+
}
|
|
421
436
|
function getOptions() {
|
|
422
|
-
|
|
437
|
+
const storedOptions = getStoredOptions2();
|
|
438
|
+
return { ...defaultOptions, ...globalOptions, ...storedOptions };
|
|
423
439
|
}
|
|
424
440
|
function isNodeModules(filename) {
|
|
425
441
|
return filename.includes("node_modules");
|
|
426
442
|
}
|
|
427
|
-
|
|
443
|
+
var BABEL_REQUIRED_PATTERNS = [
|
|
444
|
+
/'worklet'/,
|
|
445
|
+
/"worklet"/,
|
|
446
|
+
/useAnimatedStyle/,
|
|
447
|
+
/useAnimatedProps/,
|
|
448
|
+
/useDerivedValue/,
|
|
449
|
+
/useAnimatedReaction/,
|
|
450
|
+
/useAnimatedScrollHandler/,
|
|
451
|
+
/useAnimatedGestureHandler/,
|
|
452
|
+
/runOnUI/,
|
|
453
|
+
/runOnJS/
|
|
454
|
+
];
|
|
455
|
+
function requiresBabelTransform(src) {
|
|
456
|
+
return BABEL_REQUIRED_PATTERNS.some((pattern) => pattern.test(src));
|
|
457
|
+
}
|
|
458
|
+
function shouldTransform(filename, src, options) {
|
|
428
459
|
if (isNodeModules(filename)) {
|
|
429
460
|
return false;
|
|
430
461
|
}
|
|
462
|
+
if (requiresBabelTransform(src)) {
|
|
463
|
+
if (process.env.FACETPACK_DEBUG) {
|
|
464
|
+
console.log(`[Facetpack] Babel required for worklets: ${filename}`);
|
|
465
|
+
}
|
|
466
|
+
return false;
|
|
467
|
+
}
|
|
431
468
|
const ext = filename.split(".").pop()?.toLowerCase();
|
|
432
469
|
if (!ext)
|
|
433
470
|
return false;
|
|
@@ -439,7 +476,7 @@ function transform(params) {
|
|
|
439
476
|
if (process.env.FACETPACK_DEBUG) {
|
|
440
477
|
console.log(`[Facetpack] Processing: ${filename}`);
|
|
441
478
|
}
|
|
442
|
-
if (!shouldTransform(filename, opts)) {
|
|
479
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
443
480
|
if (process.env.FACETPACK_DEBUG) {
|
|
444
481
|
console.log(`[Facetpack] Fallback: ${filename}`);
|
|
445
482
|
}
|
|
@@ -464,7 +501,7 @@ function transform(params) {
|
|
|
464
501
|
${errorMessage}`);
|
|
465
502
|
}
|
|
466
503
|
preResolveImports(filename, result.code, opts.sourceExts);
|
|
467
|
-
const ast = import_parser.parse(result.code, {
|
|
504
|
+
const ast = opts.noAst ? undefined : import_parser.parse(result.code, {
|
|
468
505
|
sourceType: "unambiguous",
|
|
469
506
|
plugins: ["jsx"]
|
|
470
507
|
});
|
|
@@ -490,7 +527,7 @@ function createTransformer(options = {}) {
|
|
|
490
527
|
return {
|
|
491
528
|
transform(params) {
|
|
492
529
|
const { filename, src, options: metroOptions } = params;
|
|
493
|
-
if (!shouldTransform(filename, opts)) {
|
|
530
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
494
531
|
return getFallbackTransformer().transform(params);
|
|
495
532
|
}
|
|
496
533
|
const isClassic = opts.jsxRuntime === "classic";
|
package/dist/index.js
CHANGED
|
@@ -250,7 +250,8 @@ var defaultOptions = {
|
|
|
250
250
|
typescript: true,
|
|
251
251
|
sourceExts: ["ts", "tsx", "js", "jsx", "mjs", "cjs"],
|
|
252
252
|
minifier: true,
|
|
253
|
-
treeShake: true
|
|
253
|
+
treeShake: true,
|
|
254
|
+
noAst: false
|
|
254
255
|
};
|
|
255
256
|
var globalOptions = {};
|
|
256
257
|
var fallbackTransformer = null;
|
|
@@ -275,16 +276,47 @@ function getFallbackTransformer() {
|
|
|
275
276
|
function setTransformerOptions(options) {
|
|
276
277
|
globalOptions = options;
|
|
277
278
|
}
|
|
279
|
+
function getStoredOptions() {
|
|
280
|
+
try {
|
|
281
|
+
const optionsJson = process.env.FACETPACK_OPTIONS;
|
|
282
|
+
if (optionsJson) {
|
|
283
|
+
return JSON.parse(optionsJson);
|
|
284
|
+
}
|
|
285
|
+
} catch {}
|
|
286
|
+
return {};
|
|
287
|
+
}
|
|
278
288
|
function getOptions() {
|
|
279
|
-
|
|
289
|
+
const storedOptions = getStoredOptions();
|
|
290
|
+
return { ...defaultOptions, ...globalOptions, ...storedOptions };
|
|
280
291
|
}
|
|
281
292
|
function isNodeModules(filename) {
|
|
282
293
|
return filename.includes("node_modules");
|
|
283
294
|
}
|
|
284
|
-
|
|
295
|
+
var BABEL_REQUIRED_PATTERNS = [
|
|
296
|
+
/'worklet'/,
|
|
297
|
+
/"worklet"/,
|
|
298
|
+
/useAnimatedStyle/,
|
|
299
|
+
/useAnimatedProps/,
|
|
300
|
+
/useDerivedValue/,
|
|
301
|
+
/useAnimatedReaction/,
|
|
302
|
+
/useAnimatedScrollHandler/,
|
|
303
|
+
/useAnimatedGestureHandler/,
|
|
304
|
+
/runOnUI/,
|
|
305
|
+
/runOnJS/
|
|
306
|
+
];
|
|
307
|
+
function requiresBabelTransform(src) {
|
|
308
|
+
return BABEL_REQUIRED_PATTERNS.some((pattern) => pattern.test(src));
|
|
309
|
+
}
|
|
310
|
+
function shouldTransform(filename, src, options) {
|
|
285
311
|
if (isNodeModules(filename)) {
|
|
286
312
|
return false;
|
|
287
313
|
}
|
|
314
|
+
if (requiresBabelTransform(src)) {
|
|
315
|
+
if (process.env.FACETPACK_DEBUG) {
|
|
316
|
+
console.log(`[Facetpack] Babel required for worklets: ${filename}`);
|
|
317
|
+
}
|
|
318
|
+
return false;
|
|
319
|
+
}
|
|
288
320
|
const ext = filename.split(".").pop()?.toLowerCase();
|
|
289
321
|
if (!ext)
|
|
290
322
|
return false;
|
|
@@ -296,7 +328,7 @@ function transform(params) {
|
|
|
296
328
|
if (process.env.FACETPACK_DEBUG) {
|
|
297
329
|
console.log(`[Facetpack] Processing: ${filename}`);
|
|
298
330
|
}
|
|
299
|
-
if (!shouldTransform(filename, opts)) {
|
|
331
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
300
332
|
if (process.env.FACETPACK_DEBUG) {
|
|
301
333
|
console.log(`[Facetpack] Fallback: ${filename}`);
|
|
302
334
|
}
|
|
@@ -321,7 +353,7 @@ function transform(params) {
|
|
|
321
353
|
${errorMessage}`);
|
|
322
354
|
}
|
|
323
355
|
preResolveImports(filename, result.code, opts.sourceExts);
|
|
324
|
-
const ast = parse(result.code, {
|
|
356
|
+
const ast = opts.noAst ? undefined : parse(result.code, {
|
|
325
357
|
sourceType: "unambiguous",
|
|
326
358
|
plugins: ["jsx"]
|
|
327
359
|
});
|
|
@@ -347,7 +379,7 @@ function createTransformer(options = {}) {
|
|
|
347
379
|
return {
|
|
348
380
|
transform(params) {
|
|
349
381
|
const { filename, src, options: metroOptions } = params;
|
|
350
|
-
if (!shouldTransform(filename, opts)) {
|
|
382
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
351
383
|
return getFallbackTransformer().transform(params);
|
|
352
384
|
}
|
|
353
385
|
const isClassic = opts.jsxRuntime === "classic";
|
|
@@ -408,9 +440,13 @@ var minifier_default = minify;
|
|
|
408
440
|
// src/withFacetpack.ts
|
|
409
441
|
import { resolveSync } from "@ecrindigital/facetpack-native";
|
|
410
442
|
import { createRequire as createRequire2 } from "module";
|
|
411
|
-
import { join } from "path";
|
|
443
|
+
import { join, dirname } from "path";
|
|
412
444
|
var DEFAULT_SOURCE_EXTS = ["ts", "tsx", "js", "jsx", "mjs", "cjs"];
|
|
413
|
-
|
|
445
|
+
function getPackageDir() {
|
|
446
|
+
const projectRequire = createRequire2(join(process.cwd(), "package.json"));
|
|
447
|
+
const packageJsonPath = projectRequire.resolve("@ecrindigital/facetpack/package.json");
|
|
448
|
+
return dirname(packageJsonPath);
|
|
449
|
+
}
|
|
414
450
|
function findFallbackTransformer(projectRoot) {
|
|
415
451
|
const projectRequire = createRequire2(join(projectRoot, "package.json"));
|
|
416
452
|
const transformerPaths = [
|
|
@@ -427,9 +463,10 @@ function findFallbackTransformer(projectRoot) {
|
|
|
427
463
|
}
|
|
428
464
|
function withFacetpack(config, options = {}) {
|
|
429
465
|
const sourceExts = options.sourceExts ?? DEFAULT_SOURCE_EXTS;
|
|
430
|
-
const
|
|
466
|
+
const packageDir = getPackageDir();
|
|
467
|
+
const transformerPath = join(packageDir, "dist", "transformer.js");
|
|
431
468
|
const useMinifier = options.minifier !== false;
|
|
432
|
-
const minifierPath = useMinifier ?
|
|
469
|
+
const minifierPath = useMinifier ? join(packageDir, "dist", "minifier.js") : config.transformer?.minifierPath;
|
|
433
470
|
const minifierConfig = typeof options.minifier === "object" ? options.minifier : {};
|
|
434
471
|
const useTreeShake = options.treeShake !== false;
|
|
435
472
|
const existingSerializer = config.serializer?.customSerializer;
|
|
@@ -500,7 +537,7 @@ function storeTransformerOptions(options, fallbackTransformerPath) {
|
|
|
500
537
|
process.env.FACETPACK_FALLBACK_TRANSFORMER = fallbackTransformerPath;
|
|
501
538
|
}
|
|
502
539
|
}
|
|
503
|
-
function
|
|
540
|
+
function getStoredOptions2() {
|
|
504
541
|
try {
|
|
505
542
|
const optionsJson = process.env.FACETPACK_OPTIONS;
|
|
506
543
|
if (optionsJson) {
|
|
@@ -527,7 +564,7 @@ export {
|
|
|
527
564
|
resolveSync2 as resolveSync,
|
|
528
565
|
minifyCode,
|
|
529
566
|
minify,
|
|
530
|
-
getStoredOptions,
|
|
567
|
+
getStoredOptions2 as getStoredOptions,
|
|
531
568
|
getCacheStats,
|
|
532
569
|
createTransformer,
|
|
533
570
|
createResolver,
|
package/dist/transformer.cjs
CHANGED
|
@@ -92,7 +92,8 @@ var defaultOptions = {
|
|
|
92
92
|
typescript: true,
|
|
93
93
|
sourceExts: ["ts", "tsx", "js", "jsx", "mjs", "cjs"],
|
|
94
94
|
minifier: true,
|
|
95
|
-
treeShake: true
|
|
95
|
+
treeShake: true,
|
|
96
|
+
noAst: false
|
|
96
97
|
};
|
|
97
98
|
var globalOptions = {};
|
|
98
99
|
var fallbackTransformer = null;
|
|
@@ -117,16 +118,47 @@ function getFallbackTransformer() {
|
|
|
117
118
|
function setTransformerOptions(options) {
|
|
118
119
|
globalOptions = options;
|
|
119
120
|
}
|
|
121
|
+
function getStoredOptions() {
|
|
122
|
+
try {
|
|
123
|
+
const optionsJson = process.env.FACETPACK_OPTIONS;
|
|
124
|
+
if (optionsJson) {
|
|
125
|
+
return JSON.parse(optionsJson);
|
|
126
|
+
}
|
|
127
|
+
} catch {}
|
|
128
|
+
return {};
|
|
129
|
+
}
|
|
120
130
|
function getOptions() {
|
|
121
|
-
|
|
131
|
+
const storedOptions = getStoredOptions();
|
|
132
|
+
return { ...defaultOptions, ...globalOptions, ...storedOptions };
|
|
122
133
|
}
|
|
123
134
|
function isNodeModules(filename) {
|
|
124
135
|
return filename.includes("node_modules");
|
|
125
136
|
}
|
|
126
|
-
|
|
137
|
+
var BABEL_REQUIRED_PATTERNS = [
|
|
138
|
+
/'worklet'/,
|
|
139
|
+
/"worklet"/,
|
|
140
|
+
/useAnimatedStyle/,
|
|
141
|
+
/useAnimatedProps/,
|
|
142
|
+
/useDerivedValue/,
|
|
143
|
+
/useAnimatedReaction/,
|
|
144
|
+
/useAnimatedScrollHandler/,
|
|
145
|
+
/useAnimatedGestureHandler/,
|
|
146
|
+
/runOnUI/,
|
|
147
|
+
/runOnJS/
|
|
148
|
+
];
|
|
149
|
+
function requiresBabelTransform(src) {
|
|
150
|
+
return BABEL_REQUIRED_PATTERNS.some((pattern) => pattern.test(src));
|
|
151
|
+
}
|
|
152
|
+
function shouldTransform(filename, src, options) {
|
|
127
153
|
if (isNodeModules(filename)) {
|
|
128
154
|
return false;
|
|
129
155
|
}
|
|
156
|
+
if (requiresBabelTransform(src)) {
|
|
157
|
+
if (process.env.FACETPACK_DEBUG) {
|
|
158
|
+
console.log(`[Facetpack] Babel required for worklets: ${filename}`);
|
|
159
|
+
}
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
130
162
|
const ext = filename.split(".").pop()?.toLowerCase();
|
|
131
163
|
if (!ext)
|
|
132
164
|
return false;
|
|
@@ -138,7 +170,7 @@ function transform(params) {
|
|
|
138
170
|
if (process.env.FACETPACK_DEBUG) {
|
|
139
171
|
console.log(`[Facetpack] Processing: ${filename}`);
|
|
140
172
|
}
|
|
141
|
-
if (!shouldTransform(filename, opts)) {
|
|
173
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
142
174
|
if (process.env.FACETPACK_DEBUG) {
|
|
143
175
|
console.log(`[Facetpack] Fallback: ${filename}`);
|
|
144
176
|
}
|
|
@@ -163,7 +195,7 @@ function transform(params) {
|
|
|
163
195
|
${errorMessage}`);
|
|
164
196
|
}
|
|
165
197
|
preResolveImports(filename, result.code, opts.sourceExts);
|
|
166
|
-
const ast = import_parser.parse(result.code, {
|
|
198
|
+
const ast = opts.noAst ? undefined : import_parser.parse(result.code, {
|
|
167
199
|
sourceType: "unambiguous",
|
|
168
200
|
plugins: ["jsx"]
|
|
169
201
|
});
|
|
@@ -189,7 +221,7 @@ function createTransformer(options = {}) {
|
|
|
189
221
|
return {
|
|
190
222
|
transform(params) {
|
|
191
223
|
const { filename, src, options: metroOptions } = params;
|
|
192
|
-
if (!shouldTransform(filename, opts)) {
|
|
224
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
193
225
|
return getFallbackTransformer().transform(params);
|
|
194
226
|
}
|
|
195
227
|
const isClassic = opts.jsxRuntime === "classic";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAuFjF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAErE;AAwDD,wBAAgB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,CAgElE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,gBAAqB;sBAI1C,eAAe,GAAG,eAAe;EA4BtD"}
|
package/dist/transformer.js
CHANGED
|
@@ -84,7 +84,8 @@ var defaultOptions = {
|
|
|
84
84
|
typescript: true,
|
|
85
85
|
sourceExts: ["ts", "tsx", "js", "jsx", "mjs", "cjs"],
|
|
86
86
|
minifier: true,
|
|
87
|
-
treeShake: true
|
|
87
|
+
treeShake: true,
|
|
88
|
+
noAst: false
|
|
88
89
|
};
|
|
89
90
|
var globalOptions = {};
|
|
90
91
|
var fallbackTransformer = null;
|
|
@@ -109,16 +110,47 @@ function getFallbackTransformer() {
|
|
|
109
110
|
function setTransformerOptions(options) {
|
|
110
111
|
globalOptions = options;
|
|
111
112
|
}
|
|
113
|
+
function getStoredOptions() {
|
|
114
|
+
try {
|
|
115
|
+
const optionsJson = process.env.FACETPACK_OPTIONS;
|
|
116
|
+
if (optionsJson) {
|
|
117
|
+
return JSON.parse(optionsJson);
|
|
118
|
+
}
|
|
119
|
+
} catch {}
|
|
120
|
+
return {};
|
|
121
|
+
}
|
|
112
122
|
function getOptions() {
|
|
113
|
-
|
|
123
|
+
const storedOptions = getStoredOptions();
|
|
124
|
+
return { ...defaultOptions, ...globalOptions, ...storedOptions };
|
|
114
125
|
}
|
|
115
126
|
function isNodeModules(filename) {
|
|
116
127
|
return filename.includes("node_modules");
|
|
117
128
|
}
|
|
118
|
-
|
|
129
|
+
var BABEL_REQUIRED_PATTERNS = [
|
|
130
|
+
/'worklet'/,
|
|
131
|
+
/"worklet"/,
|
|
132
|
+
/useAnimatedStyle/,
|
|
133
|
+
/useAnimatedProps/,
|
|
134
|
+
/useDerivedValue/,
|
|
135
|
+
/useAnimatedReaction/,
|
|
136
|
+
/useAnimatedScrollHandler/,
|
|
137
|
+
/useAnimatedGestureHandler/,
|
|
138
|
+
/runOnUI/,
|
|
139
|
+
/runOnJS/
|
|
140
|
+
];
|
|
141
|
+
function requiresBabelTransform(src) {
|
|
142
|
+
return BABEL_REQUIRED_PATTERNS.some((pattern) => pattern.test(src));
|
|
143
|
+
}
|
|
144
|
+
function shouldTransform(filename, src, options) {
|
|
119
145
|
if (isNodeModules(filename)) {
|
|
120
146
|
return false;
|
|
121
147
|
}
|
|
148
|
+
if (requiresBabelTransform(src)) {
|
|
149
|
+
if (process.env.FACETPACK_DEBUG) {
|
|
150
|
+
console.log(`[Facetpack] Babel required for worklets: ${filename}`);
|
|
151
|
+
}
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
122
154
|
const ext = filename.split(".").pop()?.toLowerCase();
|
|
123
155
|
if (!ext)
|
|
124
156
|
return false;
|
|
@@ -130,7 +162,7 @@ function transform(params) {
|
|
|
130
162
|
if (process.env.FACETPACK_DEBUG) {
|
|
131
163
|
console.log(`[Facetpack] Processing: ${filename}`);
|
|
132
164
|
}
|
|
133
|
-
if (!shouldTransform(filename, opts)) {
|
|
165
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
134
166
|
if (process.env.FACETPACK_DEBUG) {
|
|
135
167
|
console.log(`[Facetpack] Fallback: ${filename}`);
|
|
136
168
|
}
|
|
@@ -155,7 +187,7 @@ function transform(params) {
|
|
|
155
187
|
${errorMessage}`);
|
|
156
188
|
}
|
|
157
189
|
preResolveImports(filename, result.code, opts.sourceExts);
|
|
158
|
-
const ast = parse(result.code, {
|
|
190
|
+
const ast = opts.noAst ? undefined : parse(result.code, {
|
|
159
191
|
sourceType: "unambiguous",
|
|
160
192
|
plugins: ["jsx"]
|
|
161
193
|
});
|
|
@@ -181,7 +213,7 @@ function createTransformer(options = {}) {
|
|
|
181
213
|
return {
|
|
182
214
|
transform(params) {
|
|
183
215
|
const { filename, src, options: metroOptions } = params;
|
|
184
|
-
if (!shouldTransform(filename, opts)) {
|
|
216
|
+
if (!shouldTransform(filename, src, opts)) {
|
|
185
217
|
return getFallbackTransformer().transform(params);
|
|
186
218
|
}
|
|
187
219
|
const isClassic = opts.jsxRuntime === "classic";
|
package/dist/types.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ export interface FacetpackOptions {
|
|
|
15
15
|
sourceExts?: string[];
|
|
16
16
|
minifier?: boolean | MinifierConfig;
|
|
17
17
|
treeShake?: boolean;
|
|
18
|
+
/** If true, don't return AST - let Metro parse the code itself */
|
|
19
|
+
noAst?: boolean;
|
|
18
20
|
}
|
|
19
21
|
export interface MetroTransformerConfig {
|
|
20
22
|
babelTransformerPath?: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IACpC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,GAAG,cAAc,CAAA;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withFacetpack.d.ts","sourceRoot":"","sources":["../src/withFacetpack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAkB,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"withFacetpack.d.ts","sourceRoot":"","sources":["../src/withFacetpack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAkB,MAAM,SAAS,CAAA;AAkC5E,wBAAgB,aAAa,CAC3B,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,gBAAqB,GAC7B,WAAW,CAiGb;AASD,wBAAgB,gBAAgB,IAAI,gBAAgB,CASnD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ecrindigital/facetpack",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "High-performance Metro transformer powered by OXC",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -25,10 +25,12 @@
|
|
|
25
25
|
"types": "./dist/serializer.d.ts",
|
|
26
26
|
"import": "./dist/serializer.js",
|
|
27
27
|
"require": "./dist/serializer.cjs"
|
|
28
|
-
}
|
|
28
|
+
},
|
|
29
|
+
"./package.json": "./package.json"
|
|
29
30
|
},
|
|
30
31
|
"files": [
|
|
31
|
-
"dist"
|
|
32
|
+
"dist",
|
|
33
|
+
"package.json"
|
|
32
34
|
],
|
|
33
35
|
"author": {
|
|
34
36
|
"name": "Ecrin Digital",
|
|
@@ -76,7 +78,8 @@
|
|
|
76
78
|
"dev": "bun build ./src/index.ts --outdir ./dist --target node --watch",
|
|
77
79
|
"typecheck": "tsc --noEmit",
|
|
78
80
|
"test": "bun test",
|
|
79
|
-
"clean": "rm -rf dist"
|
|
81
|
+
"clean": "rm -rf dist",
|
|
82
|
+
"prepublishOnly": "bun run build"
|
|
80
83
|
},
|
|
81
84
|
"engines": {
|
|
82
85
|
"node": ">=18"
|