@wyw-in-js/parcel-transformer 1.0.8 → 2.0.0-alpha.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.
package/esm/index.mjs CHANGED
@@ -1,83 +1,77 @@
1
- import { Transformer } from '@parcel/plugin';
2
- import SourceMap from '@parcel/source-map';
3
- import { asyncResolveFallback } from '@wyw-in-js/shared';
4
- import { transform, TransformCacheCollection } from '@wyw-in-js/transform';
1
+ import { Transformer } from "@parcel/plugin";
2
+ import * as SourceMapModule from "@parcel/source-map";
3
+ import { asyncResolveFallback } from "@wyw-in-js/shared";
4
+ import { transform, TransformCacheCollection } from "@wyw-in-js/transform";
5
5
  const cache = new TransformCacheCollection();
6
- export default new Transformer({
7
- async transform({
8
- asset,
9
- logger,
10
- options,
11
- resolve
12
- }) {
13
- if (!asset.isSource) {
14
- return [asset];
15
- }
16
- const originalCode = await asset.getCode();
17
- const originalMap = await asset.getMap();
18
- const originalVlqMap = originalMap?.toVLQ();
19
- const inputSourceMap = originalVlqMap ? {
20
- ...originalVlqMap,
21
- version: originalVlqMap.version ?? 3,
22
- sources: [...originalVlqMap.sources],
23
- names: [...originalVlqMap.names],
24
- sourcesContent: undefined,
25
- file: originalVlqMap.file ?? asset.filePath
26
- } : undefined;
27
- const result = await transform({
28
- cache,
29
- emitWarning: message => {
30
- logger.warn({
31
- message,
32
- origin: '@wyw-in-js/parcel-transformer'
33
- });
34
- },
35
- options: {
36
- filename: asset.filePath,
37
- inputSourceMap,
38
- root: options.projectRoot
39
- }
40
- }, originalCode, async (what, importer, stack) => {
41
- try {
42
- return await resolve(importer, what, {
43
- specifierType: 'esm'
44
- });
45
- } catch (error) {
46
- try {
47
- return await asyncResolveFallback(what, importer, stack);
48
- } catch {
49
- throw error;
50
- }
51
- }
52
- });
53
- if (result.dependencies) {
54
- for (const dependency of result.dependencies) {
55
- asset.invalidateOnFileChange(dependency);
56
- }
57
- }
58
- asset.setCode(result.code);
59
- if (result.sourceMap) {
60
- const map = new SourceMap(options.projectRoot);
61
- map.addVLQMap(result.sourceMap);
62
- asset.setMap(map);
63
- } else {
64
- asset.setMap(null);
65
- }
66
- if (!result.cssText) {
67
- return [asset];
68
- }
69
- const cssKey = `${asset.id}::wyw-in-js.css`;
70
- asset.addDependency({
71
- specifier: cssKey,
72
- specifierType: 'esm'
73
- });
74
- return [asset, {
75
- type: 'css',
76
- content: `${result.cssText}\n`,
77
- env: asset.env,
78
- sideEffects: true,
79
- uniqueKey: cssKey
80
- }];
81
- }
82
- });
83
- //# sourceMappingURL=index.mjs.map
6
+ const sourceMapDefault = SourceMapModule;
7
+ const SourceMapValue = sourceMapDefault.default?.default ?? sourceMapDefault.default ?? SourceMapModule;
8
+ const SourceMap = SourceMapValue;
9
+ export default new Transformer({ async transform({ asset, logger, options, resolve }) {
10
+ if (!asset.isSource) {
11
+ return [asset];
12
+ }
13
+ const originalCode = await asset.getCode();
14
+ const originalMap = await asset.getMap();
15
+ const originalVlqMap = originalMap?.toVLQ();
16
+ const inputSourceMap = originalVlqMap ? {
17
+ ...originalVlqMap,
18
+ version: originalVlqMap.version ?? 3,
19
+ sources: [...originalVlqMap.sources],
20
+ names: [...originalVlqMap.names],
21
+ sourcesContent: undefined,
22
+ file: originalVlqMap.file ?? asset.filePath
23
+ } : undefined;
24
+ const result = await transform({
25
+ cache,
26
+ emitWarning: (message) => {
27
+ logger.warn({
28
+ message,
29
+ origin: "@wyw-in-js/parcel-transformer"
30
+ });
31
+ },
32
+ options: {
33
+ filename: asset.filePath,
34
+ inputSourceMap,
35
+ root: options.projectRoot
36
+ }
37
+ }, originalCode, async (what, importer, stack) => {
38
+ try {
39
+ return await resolve(importer, what, { specifierType: "esm" });
40
+ } catch (error) {
41
+ try {
42
+ return await asyncResolveFallback(what, importer, stack);
43
+ } catch {
44
+ throw error;
45
+ }
46
+ }
47
+ });
48
+ if (result.dependencies) {
49
+ for (const dependency of result.dependencies) {
50
+ asset.invalidateOnFileChange(dependency);
51
+ }
52
+ }
53
+ asset.setCode(result.code);
54
+ if (result.sourceMap) {
55
+ const map = new SourceMap(options.projectRoot);
56
+ map.addVLQMap(result.sourceMap);
57
+ asset.setMap(map);
58
+ } else {
59
+ asset.setMap(null);
60
+ }
61
+ if (!result.cssText) {
62
+ return [asset];
63
+ }
64
+ const cssKey = `${asset.id}::wyw-in-js.css`;
65
+ asset.addDependency({
66
+ specifier: cssKey,
67
+ specifierType: "esm"
68
+ });
69
+ return [asset, {
70
+ type: "css",
71
+ content: `${result.cssText}\n`,
72
+ env: asset.env,
73
+ sideEffects: true,
74
+ uniqueKey: cssKey
75
+ }];
76
+ } });
77
+ //# sourceMappingURL=index.mjs.map
package/esm/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["Transformer","SourceMap","asyncResolveFallback","transform","TransformCacheCollection","cache","asset","logger","options","resolve","isSource","originalCode","getCode","originalMap","getMap","originalVlqMap","toVLQ","inputSourceMap","version","sources","names","sourcesContent","undefined","file","filePath","result","emitWarning","message","warn","origin","filename","root","projectRoot","what","importer","stack","specifierType","error","dependencies","dependency","invalidateOnFileChange","setCode","code","sourceMap","map","addVLQMap","setMap","cssText","cssKey","id","addDependency","specifier","type","content","env","sideEffects","uniqueKey"],"sources":["../src/index.ts"],"sourcesContent":["import { Transformer } from '@parcel/plugin';\nimport SourceMap from '@parcel/source-map';\n\nimport { asyncResolveFallback } from '@wyw-in-js/shared';\nimport { transform, TransformCacheCollection } from '@wyw-in-js/transform';\n\nconst cache = new TransformCacheCollection();\n\nexport default new Transformer({\n async transform({ asset, logger, options, resolve }) {\n if (!asset.isSource) {\n return [asset];\n }\n\n const originalCode = await asset.getCode();\n const originalMap = await asset.getMap();\n const originalVlqMap = originalMap?.toVLQ();\n const inputSourceMap = originalVlqMap\n ? {\n ...originalVlqMap,\n version: originalVlqMap.version ?? 3,\n sources: [...originalVlqMap.sources],\n names: [...originalVlqMap.names],\n sourcesContent: undefined,\n file: originalVlqMap.file ?? asset.filePath,\n }\n : undefined;\n\n const result = await transform(\n {\n cache,\n emitWarning: (message: string) => {\n logger.warn({ message, origin: '@wyw-in-js/parcel-transformer' });\n },\n options: {\n filename: asset.filePath,\n inputSourceMap,\n root: options.projectRoot,\n },\n },\n originalCode,\n async (what: string, importer: string, stack: string[]) => {\n try {\n return await resolve(importer, what, { specifierType: 'esm' });\n } catch (error) {\n try {\n return await asyncResolveFallback(what, importer, stack);\n } catch {\n throw error;\n }\n }\n }\n );\n\n if (result.dependencies) {\n for (const dependency of result.dependencies) {\n asset.invalidateOnFileChange(dependency);\n }\n }\n\n asset.setCode(result.code);\n\n if (result.sourceMap) {\n const map = new SourceMap(options.projectRoot);\n map.addVLQMap(result.sourceMap);\n asset.setMap(map);\n } else {\n asset.setMap(null);\n }\n\n if (!result.cssText) {\n return [asset];\n }\n\n const cssKey = `${asset.id}::wyw-in-js.css`;\n\n asset.addDependency({\n specifier: cssKey,\n specifierType: 'esm',\n });\n\n return [\n asset,\n {\n type: 'css',\n content: `${result.cssText}\\n`,\n env: asset.env,\n sideEffects: true,\n uniqueKey: cssKey,\n },\n ];\n },\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"mappings":"AAAA,SAAS,mBAAmB;AAC5B,YAAY,qBAAqB;AAGjC,SAAS,4BAA4B;AACrC,SAAS,WAAW,gCAAgC;AAEpD,MAAM,QAAQ,IAAI,0BAA0B;AAG5C,MAAM,mBAAmB;AAIzB,MAAM,iBACJ,iBAAiB,SAAS,WAC1B,iBAAiB,WACjB;AACF,MAAM,YAAY;AAElB,eAAe,IAAI,YAAY,EAC7B,MAAM,UAAU,EAAE,OAAO,QAAQ,SAAS,WAAW;AACnD,KAAI,CAAC,MAAM,UAAU;AACnB,SAAO,CAAC,MAAM;;CAGhB,MAAM,eAAe,MAAM,MAAM,SAAS;CAC1C,MAAM,cAAc,MAAM,MAAM,QAAQ;CACxC,MAAM,iBAAiB,aAAa,OAAO;CAC3C,MAAM,iBAAiB,iBACnB;EACE,GAAG;EACH,SAAS,eAAe,WAAW;EACnC,SAAS,CAAC,GAAG,eAAe,QAAQ;EACpC,OAAO,CAAC,GAAG,eAAe,MAAM;EAChC,gBAAgB;EAChB,MAAM,eAAe,QAAQ,MAAM;EACpC,GACD;CAEJ,MAAM,SAAS,MAAM,UACnB;EACE;EACA,cAAc,YAAoB;AAChC,UAAO,KAAK;IAAE;IAAS,QAAQ;IAAiC,CAAC;;EAEnE,SAAS;GACP,UAAU,MAAM;GAChB;GACA,MAAM,QAAQ;GACf;EACF,EACD,cACA,OAAO,MAAc,UAAkB,UAAoB;AACzD,MAAI;AACF,UAAO,MAAM,QAAQ,UAAU,MAAM,EAAE,eAAe,OAAO,CAAC;WACvD,OAAO;AACd,OAAI;AACF,WAAO,MAAM,qBAAqB,MAAM,UAAU,MAAM;WAClD;AACN,UAAM;;;GAIb;AAED,KAAI,OAAO,cAAc;AACvB,OAAK,MAAM,cAAc,OAAO,cAAc;AAC5C,SAAM,uBAAuB,WAAW;;;AAI5C,OAAM,QAAQ,OAAO,KAAK;AAE1B,KAAI,OAAO,WAAW;EACpB,MAAM,MAAM,IAAI,UAAU,QAAQ,YAAY;AAC9C,MAAI,UAAU,OAAO,UAAU;AAC/B,QAAM,OAAO,IAAI;QACZ;AACL,QAAM,OAAO,KAAK;;AAGpB,KAAI,CAAC,OAAO,SAAS;AACnB,SAAO,CAAC,MAAM;;CAGhB,MAAM,SAAS,GAAG,MAAM,GAAG;AAE3B,OAAM,cAAc;EAClB,WAAW;EACX,eAAe;EAChB,CAAC;AAEF,QAAO,CACL,OACA;EACE,MAAM;EACN,SAAS,GAAG,OAAO,QAAQ;EAC3B,KAAK,MAAM;EACX,aAAa;EACb,WAAW;EACZ,CACF;GAEJ,CAAC","names":[],"sources":["../src/index.ts"],"version":3,"sourcesContent":["import { Transformer } from '@parcel/plugin';\nimport * as SourceMapModule from '@parcel/source-map';\nimport type SourceMapInstance from '@parcel/source-map';\n\nimport { asyncResolveFallback } from '@wyw-in-js/shared';\nimport { transform, TransformCacheCollection } from '@wyw-in-js/transform';\n\nconst cache = new TransformCacheCollection();\ntype SourceMapCtor = new (projectRoot: string) => SourceMapInstance;\n\nconst sourceMapDefault = SourceMapModule as unknown as {\n default?: { default?: typeof SourceMapModule } | typeof SourceMapModule;\n};\n\nconst SourceMapValue =\n sourceMapDefault.default?.default ??\n sourceMapDefault.default ??\n SourceMapModule;\nconst SourceMap = SourceMapValue as unknown as SourceMapCtor;\n\nexport default new Transformer({\n async transform({ asset, logger, options, resolve }) {\n if (!asset.isSource) {\n return [asset];\n }\n\n const originalCode = await asset.getCode();\n const originalMap = await asset.getMap();\n const originalVlqMap = originalMap?.toVLQ();\n const inputSourceMap = originalVlqMap\n ? {\n ...originalVlqMap,\n version: originalVlqMap.version ?? 3,\n sources: [...originalVlqMap.sources],\n names: [...originalVlqMap.names],\n sourcesContent: undefined,\n file: originalVlqMap.file ?? asset.filePath,\n }\n : undefined;\n\n const result = await transform(\n {\n cache,\n emitWarning: (message: string) => {\n logger.warn({ message, origin: '@wyw-in-js/parcel-transformer' });\n },\n options: {\n filename: asset.filePath,\n inputSourceMap,\n root: options.projectRoot,\n },\n },\n originalCode,\n async (what: string, importer: string, stack: string[]) => {\n try {\n return await resolve(importer, what, { specifierType: 'esm' });\n } catch (error) {\n try {\n return await asyncResolveFallback(what, importer, stack);\n } catch {\n throw error;\n }\n }\n }\n );\n\n if (result.dependencies) {\n for (const dependency of result.dependencies) {\n asset.invalidateOnFileChange(dependency);\n }\n }\n\n asset.setCode(result.code);\n\n if (result.sourceMap) {\n const map = new SourceMap(options.projectRoot);\n map.addVLQMap(result.sourceMap);\n asset.setMap(map);\n } else {\n asset.setMap(null);\n }\n\n if (!result.cssText) {\n return [asset];\n }\n\n const cssKey = `${asset.id}::wyw-in-js.css`;\n\n asset.addDependency({\n specifier: cssKey,\n specifierType: 'esm',\n });\n\n return [\n asset,\n {\n type: 'css',\n content: `${result.cssText}\\n`,\n env: asset.env,\n sideEffects: true,\n uniqueKey: cssKey,\n },\n ];\n },\n});\n"],"file":"index.mjs"}
package/package.json CHANGED
@@ -1,34 +1,34 @@
1
1
  {
2
2
  "name": "@wyw-in-js/parcel-transformer",
3
- "version": "1.0.8",
3
+ "version": "2.0.0-alpha.0",
4
+ "type": "module",
4
5
  "dependencies": {
5
6
  "@parcel/plugin": "^2.16.3",
6
7
  "@parcel/source-map": "^2.1.1",
7
- "@wyw-in-js/shared": "1.0.5",
8
- "@wyw-in-js/transform": "1.0.8"
8
+ "@wyw-in-js/shared": "2.0.0-alpha.0",
9
+ "@wyw-in-js/transform": "2.0.0-alpha.0"
9
10
  },
10
11
  "devDependencies": {
11
- "@types/node": "^16.18.55",
12
- "@wyw-in-js/babel-config": "workspace:*",
12
+ "@types/node": "^22.0.0",
13
13
  "@wyw-in-js/eslint-config": "workspace:*",
14
14
  "@wyw-in-js/ts-config": "workspace:*"
15
15
  },
16
16
  "engines": {
17
- "node": ">=20.0.0",
17
+ "node": ">=22.0.0",
18
18
  "parcel": "^2.0.0"
19
19
  },
20
20
  "exports": {
21
- "import": "./esm/index.mjs",
22
- "require": "./lib/index.js",
23
- "types": "./types/index.d.ts"
21
+ ".": {
22
+ "types": "./types/index.d.ts",
23
+ "default": "./esm/index.mjs"
24
+ }
24
25
  },
25
26
  "files": [
26
27
  "esm/",
27
- "lib/",
28
28
  "types/"
29
29
  ],
30
30
  "license": "MIT",
31
- "main": "lib/index.js",
31
+ "main": "esm/index.mjs",
32
32
  "module": "esm/index.mjs",
33
33
  "peerDependencies": {
34
34
  "parcel": ">=2.0.0"
@@ -37,8 +37,7 @@
37
37
  "access": "public"
38
38
  },
39
39
  "scripts": {
40
- "build:esm": "babel src --out-dir esm --out-file-extension .mjs --extensions '.js,.jsx,.ts,.tsx' --source-maps --delete-dir-on-start",
41
- "build:lib": "cross-env NODE_ENV=legacy babel src --out-dir lib --extensions '.js,.jsx,.ts,.tsx' --source-maps --delete-dir-on-start",
40
+ "build:esm": "node ../../scripts/build-esm-oxc.mjs --out-file-extension .mjs",
42
41
  "build:types": "tsc --project ./tsconfig.lib.json --baseUrl . --rootDir ./src",
43
42
  "lint": "eslint --ext .js,.ts ."
44
43
  },
package/types/index.js CHANGED
@@ -1,14 +1,14 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const plugin_1 = require("@parcel/plugin");
7
- const source_map_1 = __importDefault(require("@parcel/source-map"));
8
- const shared_1 = require("@wyw-in-js/shared");
9
- const transform_1 = require("@wyw-in-js/transform");
10
- const cache = new transform_1.TransformCacheCollection();
11
- exports.default = new plugin_1.Transformer({
1
+ import { Transformer } from '@parcel/plugin';
2
+ import * as SourceMapModule from '@parcel/source-map';
3
+ import { asyncResolveFallback } from '@wyw-in-js/shared';
4
+ import { transform, TransformCacheCollection } from '@wyw-in-js/transform';
5
+ const cache = new TransformCacheCollection();
6
+ const sourceMapDefault = SourceMapModule;
7
+ const SourceMapValue = sourceMapDefault.default?.default ??
8
+ sourceMapDefault.default ??
9
+ SourceMapModule;
10
+ const SourceMap = SourceMapValue;
11
+ export default new Transformer({
12
12
  async transform({ asset, logger, options, resolve }) {
13
13
  if (!asset.isSource) {
14
14
  return [asset];
@@ -26,7 +26,7 @@ exports.default = new plugin_1.Transformer({
26
26
  file: originalVlqMap.file ?? asset.filePath,
27
27
  }
28
28
  : undefined;
29
- const result = await (0, transform_1.transform)({
29
+ const result = await transform({
30
30
  cache,
31
31
  emitWarning: (message) => {
32
32
  logger.warn({ message, origin: '@wyw-in-js/parcel-transformer' });
@@ -42,7 +42,7 @@ exports.default = new plugin_1.Transformer({
42
42
  }
43
43
  catch (error) {
44
44
  try {
45
- return await (0, shared_1.asyncResolveFallback)(what, importer, stack);
45
+ return await asyncResolveFallback(what, importer, stack);
46
46
  }
47
47
  catch {
48
48
  throw error;
@@ -56,7 +56,7 @@ exports.default = new plugin_1.Transformer({
56
56
  }
57
57
  asset.setCode(result.code);
58
58
  if (result.sourceMap) {
59
- const map = new source_map_1.default(options.projectRoot);
59
+ const map = new SourceMap(options.projectRoot);
60
60
  map.addVLQMap(result.sourceMap);
61
61
  asset.setMap(map);
62
62
  }
package/lib/index.js DELETED
@@ -1,91 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _plugin = require("@parcel/plugin");
8
- var _sourceMap = _interopRequireDefault(require("@parcel/source-map"));
9
- var _shared = require("@wyw-in-js/shared");
10
- var _transform = require("@wyw-in-js/transform");
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- const cache = new _transform.TransformCacheCollection();
13
- var _default = exports.default = new _plugin.Transformer({
14
- async transform({
15
- asset,
16
- logger,
17
- options,
18
- resolve
19
- }) {
20
- var _originalVlqMap$versi, _originalVlqMap$file;
21
- if (!asset.isSource) {
22
- return [asset];
23
- }
24
- const originalCode = await asset.getCode();
25
- const originalMap = await asset.getMap();
26
- const originalVlqMap = originalMap === null || originalMap === void 0 ? void 0 : originalMap.toVLQ();
27
- const inputSourceMap = originalVlqMap ? {
28
- ...originalVlqMap,
29
- version: (_originalVlqMap$versi = originalVlqMap.version) !== null && _originalVlqMap$versi !== void 0 ? _originalVlqMap$versi : 3,
30
- sources: [...originalVlqMap.sources],
31
- names: [...originalVlqMap.names],
32
- sourcesContent: undefined,
33
- file: (_originalVlqMap$file = originalVlqMap.file) !== null && _originalVlqMap$file !== void 0 ? _originalVlqMap$file : asset.filePath
34
- } : undefined;
35
- const result = await (0, _transform.transform)({
36
- cache,
37
- emitWarning: message => {
38
- logger.warn({
39
- message,
40
- origin: '@wyw-in-js/parcel-transformer'
41
- });
42
- },
43
- options: {
44
- filename: asset.filePath,
45
- inputSourceMap,
46
- root: options.projectRoot
47
- }
48
- }, originalCode, async (what, importer, stack) => {
49
- try {
50
- return await resolve(importer, what, {
51
- specifierType: 'esm'
52
- });
53
- } catch (error) {
54
- try {
55
- return await (0, _shared.asyncResolveFallback)(what, importer, stack);
56
- } catch {
57
- throw error;
58
- }
59
- }
60
- });
61
- if (result.dependencies) {
62
- for (const dependency of result.dependencies) {
63
- asset.invalidateOnFileChange(dependency);
64
- }
65
- }
66
- asset.setCode(result.code);
67
- if (result.sourceMap) {
68
- const map = new _sourceMap.default(options.projectRoot);
69
- map.addVLQMap(result.sourceMap);
70
- asset.setMap(map);
71
- } else {
72
- asset.setMap(null);
73
- }
74
- if (!result.cssText) {
75
- return [asset];
76
- }
77
- const cssKey = `${asset.id}::wyw-in-js.css`;
78
- asset.addDependency({
79
- specifier: cssKey,
80
- specifierType: 'esm'
81
- });
82
- return [asset, {
83
- type: 'css',
84
- content: `${result.cssText}\n`,
85
- env: asset.env,
86
- sideEffects: true,
87
- uniqueKey: cssKey
88
- }];
89
- }
90
- });
91
- //# sourceMappingURL=index.js.map
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_plugin","require","_sourceMap","_interopRequireDefault","_shared","_transform","e","__esModule","default","cache","TransformCacheCollection","_default","exports","Transformer","transform","asset","logger","options","resolve","_originalVlqMap$versi","_originalVlqMap$file","isSource","originalCode","getCode","originalMap","getMap","originalVlqMap","toVLQ","inputSourceMap","version","sources","names","sourcesContent","undefined","file","filePath","result","emitWarning","message","warn","origin","filename","root","projectRoot","what","importer","stack","specifierType","error","asyncResolveFallback","dependencies","dependency","invalidateOnFileChange","setCode","code","sourceMap","map","SourceMap","addVLQMap","setMap","cssText","cssKey","id","addDependency","specifier","type","content","env","sideEffects","uniqueKey"],"sources":["../src/index.ts"],"sourcesContent":["import { Transformer } from '@parcel/plugin';\nimport SourceMap from '@parcel/source-map';\n\nimport { asyncResolveFallback } from '@wyw-in-js/shared';\nimport { transform, TransformCacheCollection } from '@wyw-in-js/transform';\n\nconst cache = new TransformCacheCollection();\n\nexport default new Transformer({\n async transform({ asset, logger, options, resolve }) {\n if (!asset.isSource) {\n return [asset];\n }\n\n const originalCode = await asset.getCode();\n const originalMap = await asset.getMap();\n const originalVlqMap = originalMap?.toVLQ();\n const inputSourceMap = originalVlqMap\n ? {\n ...originalVlqMap,\n version: originalVlqMap.version ?? 3,\n sources: [...originalVlqMap.sources],\n names: [...originalVlqMap.names],\n sourcesContent: undefined,\n file: originalVlqMap.file ?? asset.filePath,\n }\n : undefined;\n\n const result = await transform(\n {\n cache,\n emitWarning: (message: string) => {\n logger.warn({ message, origin: '@wyw-in-js/parcel-transformer' });\n },\n options: {\n filename: asset.filePath,\n inputSourceMap,\n root: options.projectRoot,\n },\n },\n originalCode,\n async (what: string, importer: string, stack: string[]) => {\n try {\n return await resolve(importer, what, { specifierType: 'esm' });\n } catch (error) {\n try {\n return await asyncResolveFallback(what, importer, stack);\n } catch {\n throw error;\n }\n }\n }\n );\n\n if (result.dependencies) {\n for (const dependency of result.dependencies) {\n asset.invalidateOnFileChange(dependency);\n }\n }\n\n asset.setCode(result.code);\n\n if (result.sourceMap) {\n const map = new SourceMap(options.projectRoot);\n map.addVLQMap(result.sourceMap);\n asset.setMap(map);\n } else {\n asset.setMap(null);\n }\n\n if (!result.cssText) {\n return [asset];\n }\n\n const cssKey = `${asset.id}::wyw-in-js.css`;\n\n asset.addDependency({\n specifier: cssKey,\n specifierType: 'esm',\n });\n\n return [\n asset,\n {\n type: 'css',\n content: `${result.cssText}\\n`,\n env: asset.env,\n sideEffects: true,\n uniqueKey: cssKey,\n },\n ];\n },\n});\n"],"mappings":"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","ignoreList":[]}