@suseejs/anonymous 0.1.3 → 0.1.5

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/index.cjs CHANGED
@@ -1,267 +1,226 @@
1
- /*! *****************************************************************************
2
- Copyright (c) Pho Thin Mg <phothinmg@disroot.org>
3
-
4
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
5
- this file except in compliance with the License. You may obtain a copy of the
6
- License at http://www.apache.org/licenses/LICENSE-2.0
7
- ***************************************************************************** */
8
1
  "use strict";
9
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
- return new (P || (P = Promise))(function (resolve, reject) {
12
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
- step((generator = generator.apply(thisArg, _arguments || [])).next());
16
- });
17
- };
18
- var __generator = (this && this.__generator) || function (thisArg, body) {
19
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
20
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
21
- function verb(n) { return function (v) { return step([n, v]); }; }
22
- function step(op) {
23
- if (f) throw new TypeError("Generator is already executing.");
24
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
25
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
26
- if (y = 0, t) op = [op[0] & 2, t.value];
27
- switch (op[0]) {
28
- case 0: case 1: t = op; break;
29
- case 4: _.label++; return { value: op[1], done: false };
30
- case 5: _.label++; y = op[1]; op = [0]; continue;
31
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
32
- default:
33
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
34
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
35
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
36
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
37
- if (t[2]) _.ops.pop();
38
- _.trys.pop(); continue;
2
+ const path = require("node:path");
3
+ const resolves = require("@phothinmaung/resolves");
4
+ const transformFunction = require("@suseejs/transformer");
5
+ const ts = require("typescript");
6
+ function uniqueName() {
7
+ const storedPrefix = new Map();
8
+ const obj = {
9
+ setPrefix({ key, value }) {
10
+ if (storedPrefix.has(key)) {
11
+ console.warn(`${key} already exist`);
12
+ throw new Error();
39
13
  }
40
- op = body.call(thisArg, _);
41
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
42
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
43
- }
44
- };
45
- var __importDefault = (this && this.__importDefault) || function (mod) {
46
- return (mod && mod.__esModule) ? mod : { "default": mod };
47
- };
48
- Object.defineProperty(exports, "__esModule", { value: true });
49
- var resolves_1 = __importDefault(require("@phothinmaung/resolves"));
50
- var transformer_1 = __importDefault(require("@suseejs/transformer"));
51
- var typescript_1 = __importDefault(require("typescript"));
52
- var utils_1 = __importDefault(require("@suseejs/utils"));
53
- function anonymousCallExpressionHandler(exportDefaultImportNameMap, compilerOptions) {
54
- return function (_a) {
55
- var file = _a.file, content = _a.content;
56
- var sourceFile = typescript_1.default.createSourceFile(file, content, typescript_1.default.ScriptTarget.Latest, true);
57
- var transformer = function (context) {
58
- var factory = context.factory;
59
- var visitor = function (node) {
60
- if (typescript_1.default.isCallExpression(node)) {
61
- if (typescript_1.default.isIdentifier(node.expression)) {
62
- var base_1 = node.expression.text;
63
- var mapping = exportDefaultImportNameMap.find(function (m) { return m.base === base_1 && m.file === file; });
14
+ storedPrefix.set(key, [value, 0]);
15
+ return obj;
16
+ },
17
+ getName(key, input) {
18
+ const [prefix, count] = storedPrefix.get(key) || [];
19
+ const _name = prefix
20
+ ? `${prefix}${input}_${(count ?? 0) + 1}`
21
+ : `$nyein${input}_${(count ?? 0) + 1}`;
22
+ storedPrefix.set(key, [prefix ?? "$nyein", (count ?? 0) + 1]);
23
+ return _name;
24
+ },
25
+ getPrefix(key) {
26
+ const [prefix] = storedPrefix.get(key) || [];
27
+ return prefix;
28
+ },
29
+ };
30
+ return obj;
31
+ }
32
+ const exportDefaultExportNameMap = [];
33
+ const exportDefaultImportNameMap = [];
34
+ const prefixKey = "AnonymousName";
35
+ const genName = uniqueName().setPrefix({
36
+ key: prefixKey,
37
+ value: "__anonymous__",
38
+ });
39
+ /**
40
+ * A bundle handler that handles anonymous default exports by assigning them a name
41
+ *
42
+ * This handler takes a deps file and returns a transformed deps file with anonymous default exports replaced with named default exports
43
+ *
44
+ * @param {ts.CompilerOptions} compilerOptions - compiler options
45
+ * @returns {BundleHandler} - bundle handler
46
+ */
47
+ function anonymousCallExpressionHandler(compilerOptions) {
48
+ return ({ file, content, ...rest }) => {
49
+ const sourceFile = ts.createSourceFile(file, content, ts.ScriptTarget.Latest, true);
50
+ const transformer = (context) => {
51
+ const { factory } = context;
52
+ const visitor = (node) => {
53
+ if (ts.isCallExpression(node)) {
54
+ if (ts.isIdentifier(node.expression)) {
55
+ const base = node.expression.text;
56
+ const mapping = exportDefaultImportNameMap.find((m) => m.base === base && m.file === file);
64
57
  if (mapping) {
65
58
  return factory.updateCallExpression(node, factory.createIdentifier(mapping.newName), node.typeArguments, node.arguments);
66
59
  }
67
60
  }
68
61
  }
69
- else if (typescript_1.default.isPropertyAccessExpression(node)) {
70
- if (typescript_1.default.isIdentifier(node.expression)) {
71
- var base_2 = node.expression.text;
72
- var mapping = exportDefaultImportNameMap.find(function (m) { return m.base === base_2 && m.file === file; });
62
+ else if (ts.isPropertyAccessExpression(node)) {
63
+ if (ts.isIdentifier(node.expression)) {
64
+ const base = node.expression.text;
65
+ const mapping = exportDefaultImportNameMap.find((m) => m.base === base && m.file === file);
73
66
  if (mapping) {
74
67
  return factory.updatePropertyAccessExpression(node, factory.createIdentifier(mapping.newName), node.name);
75
68
  }
76
69
  }
77
70
  }
78
- else if (typescript_1.default.isNewExpression(node)) {
79
- if (typescript_1.default.isIdentifier(node.expression)) {
80
- var base_3 = node.expression.text;
81
- var mapping = exportDefaultImportNameMap.find(function (m) { return m.base === base_3 && m.file === file; });
71
+ else if (ts.isNewExpression(node)) {
72
+ if (ts.isIdentifier(node.expression)) {
73
+ const base = node.expression.text;
74
+ const mapping = exportDefaultImportNameMap.find((m) => m.base === base && m.file === file);
82
75
  if (mapping) {
83
76
  return factory.updateNewExpression(node, factory.createIdentifier(mapping.newName), node.typeArguments, node.arguments);
84
77
  }
85
78
  }
86
79
  // for export specifier it is focus on entry file
87
80
  }
88
- else if (typescript_1.default.isExportSpecifier(node)) {
89
- if (typescript_1.default.isIdentifier(node.name)) {
90
- var base_4 = node.name.text;
91
- var mapping = exportDefaultImportNameMap.find(function (m) { return m.base === base_4 && m.file === file; });
81
+ else if (ts.isExportSpecifier(node)) {
82
+ if (ts.isIdentifier(node.name)) {
83
+ const base = node.name.text;
84
+ const mapping = exportDefaultImportNameMap.find((m) => m.base === base && m.file === file);
92
85
  if (mapping) {
93
86
  return factory.updateExportSpecifier(node, node.isTypeOnly, node.propertyName, factory.createIdentifier(mapping.newName));
94
87
  }
95
88
  }
96
89
  }
97
- return typescript_1.default.visitEachChild(node, visitor, context);
90
+ return ts.visitEachChild(node, visitor, context);
98
91
  };
99
- return function (rootNode) { return typescript_1.default.visitNode(rootNode, visitor); };
92
+ return (rootNode) => ts.visitNode(rootNode, visitor);
100
93
  };
101
- var _content = (0, transformer_1.default)(transformer, sourceFile, compilerOptions);
102
- return { file: file, content: _content };
94
+ const _content = transformFunction(transformer, sourceFile, compilerOptions);
95
+ return { file, content: _content, ...rest };
103
96
  };
104
97
  }
105
- function anonymousName() {
106
- var storedPrefix = new Map();
107
- var obj = {
108
- setPrefix: function (_a) {
109
- var key = _a.key, value = _a.value;
110
- if (storedPrefix.has(key)) {
111
- console.warn("".concat(key, " already exist"));
112
- throw new Error();
113
- }
114
- storedPrefix.set(key, [value, 0]);
115
- return obj;
116
- },
117
- getName: function (key, input) {
118
- var _a = storedPrefix.get(key) || [], prefix = _a[0], count = _a[1];
119
- var _name = prefix
120
- ? "".concat(prefix).concat(input, "_").concat((count !== null && count !== void 0 ? count : 0) + 1)
121
- : "$nyein".concat(input, "_").concat((count !== null && count !== void 0 ? count : 0) + 1);
122
- storedPrefix.set(key, [prefix !== null && prefix !== void 0 ? prefix : "$nyein", (count !== null && count !== void 0 ? count : 0) + 1]);
123
- return _name;
124
- },
125
- getPrefix: function (key) {
126
- var prefix = (storedPrefix.get(key) || [])[0];
127
- return prefix;
128
- },
129
- };
130
- return obj;
131
- }
132
- var prefixKey = "AnonymousName";
133
- var genName = anonymousName().setPrefix({ key: prefixKey, value: "a_" });
134
98
  /**
135
- * Handle anonymous(without name) default exports
99
+ * A bundle handler that handles anonymous default exports by assigning them a name
100
+ *
101
+ * This handler takes a deps file and returns a transformed deps file with anonymous default exports replaced with named default exports
136
102
  *
137
- * - export default function(){} , FunctionDeclaration
138
- * - export default class(){} , ClassDeclaration
139
- * - export default ()=>{} , ArrowFunction
140
- * - export default {} , ObjectLiteralExpression
141
- * - export default [] , ArrayLiteralExpression
142
- * - export default "a" , StringLiteral
143
- * - export default 2 , NumericLiteral
103
+ * @param {ts.CompilerOptions} compilerOptions - compiler options
104
+ * @returns {BundleHandler} - bundle handler
144
105
  */
145
- function anonymousExportHandler(exportDefaultExportNameMap, compilerOptions) {
146
- return function (_a) {
147
- var file = _a.file, content = _a.content;
148
- var sourceFile = typescript_1.default.createSourceFile(file, content, typescript_1.default.ScriptTarget.Latest, true);
106
+ function anonymousExportHandler(compilerOptions) {
107
+ return ({ file, content, ...rest }) => {
108
+ const sourceFile = ts.createSourceFile(file, content, ts.ScriptTarget.Latest, true);
149
109
  /**
150
110
  * A transformer that handles anonymous default exports by assigning them a name
151
111
  *
152
112
  * @param {ts.TransformationContext} context - transformation context
153
113
  * @returns {ts.Transformer<ts.SourceFile>} - transformer
154
114
  */
155
- var transformer = function (context) {
156
- var factory = context.factory;
115
+ const transformer = (context) => {
116
+ const { factory } = context;
157
117
  /**
158
118
  * Visitor that handles anonymous default exports by assigning them a name
159
119
  *
160
120
  * @param {ts.Node} node - node to visit
161
121
  * @returns {ts.Node} - transformed node
162
122
  */
163
- var visitor = function (node) {
164
- var _a;
165
- var fileName = utils_1.default.basename(file).split(".")[0];
166
- if ((typescript_1.default.isFunctionDeclaration(node) || typescript_1.default.isClassDeclaration(node)) &&
123
+ const visitor = (node) => {
124
+ const fileName = path.basename(file).split(".")[0];
125
+ if ((ts.isFunctionDeclaration(node) || ts.isClassDeclaration(node)) &&
167
126
  node.name === undefined) {
168
- var exp_1 = false;
169
- var def_1 = false;
170
- (_a = node.modifiers) === null || _a === void 0 ? void 0 : _a.forEach(function (mod) {
171
- if (mod.kind === typescript_1.default.SyntaxKind.ExportKeyword) {
172
- exp_1 = true;
127
+ let exp = false;
128
+ let def = false;
129
+ node.modifiers?.forEach((mod) => {
130
+ if (mod.kind === ts.SyntaxKind.ExportKeyword) {
131
+ exp = true;
173
132
  }
174
- if (mod.kind === typescript_1.default.SyntaxKind.DefaultKeyword) {
175
- def_1 = true;
133
+ if (mod.kind === ts.SyntaxKind.DefaultKeyword) {
134
+ def = true;
176
135
  }
177
136
  });
178
- if (exp_1 && def_1) {
179
- var base = genName.getName(prefixKey, fileName);
137
+ if (exp && def) {
138
+ const base = genName.getName(prefixKey, fileName);
180
139
  exportDefaultExportNameMap.push({
181
- base: base,
140
+ base,
182
141
  file: fileName,
183
142
  newName: base,
184
143
  isEd: true,
185
144
  });
186
- if (typescript_1.default.isFunctionDeclaration(node)) {
145
+ if (ts.isFunctionDeclaration(node)) {
187
146
  return factory.updateFunctionDeclaration(node, node.modifiers, node.asteriskToken, factory.createIdentifier(base), node.typeParameters, node.parameters, node.type, node.body);
188
147
  }
189
- else if (typescript_1.default.isClassDeclaration(node)) {
148
+ else if (ts.isClassDeclaration(node)) {
190
149
  return factory.updateClassDeclaration(node, node.modifiers, factory.createIdentifier(base), node.typeParameters, node.heritageClauses, node.members);
191
150
  }
192
151
  }
193
152
  }
194
- else if (typescript_1.default.isExportAssignment(node) &&
153
+ else if (ts.isExportAssignment(node) &&
195
154
  !node.name &&
196
155
  !node.isExportEquals) {
197
- if (typescript_1.default.isArrowFunction(node.expression)) {
198
- var base = genName.getName(prefixKey, fileName);
199
- var arrowFunctionNode = factory.createArrowFunction(node.expression.modifiers, node.expression.typeParameters, node.expression.parameters, node.expression.type, node.expression.equalsGreaterThanToken, node.expression.body);
200
- var variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), node.expression.exclamationToken, node.expression.type, arrowFunctionNode);
201
- var variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], typescript_1.default.NodeFlags.Const);
202
- var variableStatementNode = factory.createVariableStatement(node.expression.modifiers, variableDeclarationListNode);
203
- var exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
156
+ if (ts.isArrowFunction(node.expression)) {
157
+ const base = genName.getName(prefixKey, fileName);
158
+ const arrowFunctionNode = factory.createArrowFunction(node.expression.modifiers, node.expression.typeParameters, node.expression.parameters, node.expression.type, node.expression.equalsGreaterThanToken, node.expression.body);
159
+ const variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), node.expression.exclamationToken, node.expression.type, arrowFunctionNode);
160
+ const variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], ts.NodeFlags.Const);
161
+ const variableStatementNode = factory.createVariableStatement(node.expression.modifiers, variableDeclarationListNode);
162
+ const exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
204
163
  exportDefaultExportNameMap.push({
205
- base: base,
164
+ base,
206
165
  file: fileName,
207
166
  newName: base,
208
167
  isEd: true,
209
168
  });
210
169
  return factory.updateSourceFile(sourceFile, [variableStatementNode, exportAssignmentNode], sourceFile.isDeclarationFile, sourceFile.referencedFiles, sourceFile.typeReferenceDirectives, sourceFile.hasNoDefaultLib, sourceFile.libReferenceDirectives);
211
170
  }
212
- else if (typescript_1.default.isObjectLiteralExpression(node.expression)) {
213
- var base = genName.getName(prefixKey, fileName);
214
- var variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, node.expression);
215
- var variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], typescript_1.default.NodeFlags.Const);
216
- var variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
217
- var exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
171
+ else if (ts.isObjectLiteralExpression(node.expression)) {
172
+ const base = genName.getName(prefixKey, fileName);
173
+ const variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, node.expression);
174
+ const variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], ts.NodeFlags.Const);
175
+ const variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
176
+ const exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
218
177
  exportDefaultExportNameMap.push({
219
- base: base,
178
+ base,
220
179
  file: fileName,
221
180
  newName: base,
222
181
  isEd: true,
223
182
  });
224
183
  return factory.updateSourceFile(sourceFile, [variableStatementNode, exportAssignmentNode], sourceFile.isDeclarationFile, sourceFile.referencedFiles, sourceFile.typeReferenceDirectives, sourceFile.hasNoDefaultLib, sourceFile.libReferenceDirectives);
225
184
  }
226
- else if (typescript_1.default.isArrayLiteralExpression(node.expression)) {
227
- var base = genName.getName(prefixKey, fileName);
228
- var arrayLiteralExpressionNode = factory.createArrayLiteralExpression(node.expression.elements, true);
229
- var variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, arrayLiteralExpressionNode);
230
- var variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], typescript_1.default.NodeFlags.Const);
231
- var variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
232
- var exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
185
+ else if (ts.isArrayLiteralExpression(node.expression)) {
186
+ const base = genName.getName(prefixKey, fileName);
187
+ const arrayLiteralExpressionNode = factory.createArrayLiteralExpression(node.expression.elements, true);
188
+ const variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, arrayLiteralExpressionNode);
189
+ const variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], ts.NodeFlags.Const);
190
+ const variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
191
+ const exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
233
192
  exportDefaultExportNameMap.push({
234
- base: base,
193
+ base,
235
194
  file: fileName,
236
195
  newName: base,
237
196
  isEd: true,
238
197
  });
239
198
  return factory.updateSourceFile(sourceFile, [variableStatementNode, exportAssignmentNode], sourceFile.isDeclarationFile, sourceFile.referencedFiles, sourceFile.typeReferenceDirectives, sourceFile.hasNoDefaultLib, sourceFile.libReferenceDirectives);
240
199
  }
241
- else if (typescript_1.default.isStringLiteral(node.expression)) {
242
- var base = genName.getName(prefixKey, fileName);
243
- var stringLiteralNode = factory.createStringLiteral(node.expression.text);
244
- var variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, stringLiteralNode);
245
- var variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], typescript_1.default.NodeFlags.Const);
246
- var variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
247
- var exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
200
+ else if (ts.isStringLiteral(node.expression)) {
201
+ const base = genName.getName(prefixKey, fileName);
202
+ const stringLiteralNode = factory.createStringLiteral(node.expression.text);
203
+ const variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, stringLiteralNode);
204
+ const variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], ts.NodeFlags.Const);
205
+ const variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
206
+ const exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
248
207
  exportDefaultExportNameMap.push({
249
- base: base,
208
+ base,
250
209
  file: fileName,
251
210
  newName: base,
252
211
  isEd: true,
253
212
  });
254
213
  return factory.updateSourceFile(sourceFile, [variableStatementNode, exportAssignmentNode], sourceFile.isDeclarationFile, sourceFile.referencedFiles, sourceFile.typeReferenceDirectives, sourceFile.hasNoDefaultLib, sourceFile.libReferenceDirectives);
255
214
  }
256
- else if (typescript_1.default.isNumericLiteral(node.expression)) {
257
- var base = genName.getName(prefixKey, fileName);
258
- var numericLiteralNode = factory.createNumericLiteral(node.expression.text);
259
- var variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, numericLiteralNode);
260
- var variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], typescript_1.default.NodeFlags.Const);
261
- var variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
262
- var exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
215
+ else if (ts.isNumericLiteral(node.expression)) {
216
+ const base = genName.getName(prefixKey, fileName);
217
+ const numericLiteralNode = factory.createNumericLiteral(node.expression.text);
218
+ const variableDeclarationNode = factory.createVariableDeclaration(factory.createIdentifier(base), undefined, undefined, numericLiteralNode);
219
+ const variableDeclarationListNode = factory.createVariableDeclarationList([variableDeclarationNode], ts.NodeFlags.Const);
220
+ const variableStatementNode = factory.createVariableStatement(undefined, variableDeclarationListNode);
221
+ const exportAssignmentNode = factory.createExportAssignment(undefined, undefined, factory.createIdentifier(base));
263
222
  exportDefaultExportNameMap.push({
264
- base: base,
223
+ base,
265
224
  file: fileName,
266
225
  newName: base,
267
226
  isEd: true,
@@ -269,79 +228,78 @@ function anonymousExportHandler(exportDefaultExportNameMap, compilerOptions) {
269
228
  return factory.updateSourceFile(sourceFile, [variableStatementNode, exportAssignmentNode], sourceFile.isDeclarationFile, sourceFile.referencedFiles, sourceFile.typeReferenceDirectives, sourceFile.hasNoDefaultLib, sourceFile.libReferenceDirectives);
270
229
  }
271
230
  } //
272
- return typescript_1.default.visitEachChild(node, visitor, context);
231
+ return ts.visitEachChild(node, visitor, context);
273
232
  };
274
- return function (rootNode) { return typescript_1.default.visitNode(rootNode, visitor); };
233
+ return (rootNode) => ts.visitNode(rootNode, visitor);
275
234
  };
276
- var _content = (0, transformer_1.default)(transformer, sourceFile, compilerOptions);
277
- return { file: file, content: _content };
235
+ const _content = transformFunction(transformer, sourceFile, compilerOptions);
236
+ return { file, content: _content, ...rest };
278
237
  };
279
238
  }
280
- function anonymousImportHandler(exportDefaultExportNameMap, exportDefaultImportNameMap, compilerOptions) {
281
- return function (_a) {
282
- var file = _a.file, content = _a.content;
283
- var sourceFile = typescript_1.default.createSourceFile(file, content, typescript_1.default.ScriptTarget.Latest, true);
284
- var transformer = function (context) {
285
- var factory = context.factory;
286
- var visitor = function (node) {
287
- var _a;
288
- if (typescript_1.default.isImportDeclaration(node)) {
289
- var fileName = node.moduleSpecifier.getText(sourceFile);
290
- var _name_1 = utils_1.default.basename(fileName).split(".")[0].trim();
239
+ /**
240
+ * This function will transform the given deps files with the following handlers:
241
+ * 1. anonymousExportHandler: transform export default expression
242
+ * 2. anonymousImportHandler: transform import default expression
243
+ * The transformed deps files are returned as a promise.
244
+ * @param deps The deps files to be transformed
245
+ * @param compilerOptions The compiler options to be used for the transformation
246
+ * @returns A promise resolving to the transformed deps files
247
+ */
248
+ function anonymousImportHandler(compilerOptions) {
249
+ return ({ file, content, ...rest }) => {
250
+ const sourceFile = ts.createSourceFile(file, content, ts.ScriptTarget.Latest, true);
251
+ const transformer = (context) => {
252
+ const { factory } = context;
253
+ const visitor = (node) => {
254
+ if (ts.isImportDeclaration(node)) {
255
+ const fileName = node.moduleSpecifier.getText(sourceFile);
256
+ const _name = path.basename(fileName).split(".")[0].trim();
291
257
  // check only import default expression
292
- if (((_a = node.importClause) === null || _a === void 0 ? void 0 : _a.name) &&
293
- typescript_1.default.isIdentifier(node.importClause.name)) {
294
- var base = node.importClause.name.text.trim();
295
- var mapping = exportDefaultExportNameMap.find(function (v) { return v.file === _name_1; });
258
+ if (node.importClause?.name &&
259
+ ts.isIdentifier(node.importClause.name)) {
260
+ const base = node.importClause.name.text.trim();
261
+ const mapping = exportDefaultExportNameMap.find((v) => v.file === _name);
296
262
  if (mapping) {
297
263
  exportDefaultImportNameMap.push({
298
- base: base,
299
- file: file,
264
+ base,
265
+ file,
300
266
  newName: mapping.newName,
301
267
  isEd: true,
302
268
  });
303
- var newImportClause = factory.updateImportClause(node.importClause, node.importClause.phaseModifier, factory.createIdentifier(mapping.newName), node.importClause.namedBindings);
269
+ const newImportClause = factory.updateImportClause(node.importClause, node.importClause.phaseModifier, factory.createIdentifier(mapping.newName), node.importClause.namedBindings);
304
270
  return factory.updateImportDeclaration(node, node.modifiers, newImportClause, node.moduleSpecifier, node.attributes);
305
271
  }
306
272
  }
307
273
  }
308
- return typescript_1.default.visitEachChild(node, visitor, context);
274
+ return ts.visitEachChild(node, visitor, context);
309
275
  };
310
- return function (rootNode) { return typescript_1.default.visitNode(rootNode, visitor); };
276
+ return (rootNode) => ts.visitNode(rootNode, visitor);
311
277
  };
312
- var _content = (0, transformer_1.default)(transformer, sourceFile, compilerOptions);
313
- return { file: file, content: _content };
278
+ const _content = transformFunction(transformer, sourceFile, compilerOptions);
279
+ return { file, content: _content, ...rest };
314
280
  };
315
281
  }
316
- var anonymous = function (deps, exportDefaultExportNameMap, exportDefaultImportNameMap, compilerOptions) { return __awaiter(void 0, void 0, Promise, function () {
317
- var anonymous, anons, _i, anons_1, anon;
318
- return __generator(this, function (_a) {
319
- switch (_a.label) {
320
- case 0:
321
- anonymous = (0, resolves_1.default)([
322
- [anonymousExportHandler, exportDefaultExportNameMap, compilerOptions],
323
- [
324
- anonymousImportHandler,
325
- exportDefaultExportNameMap,
326
- exportDefaultImportNameMap,
327
- compilerOptions,
328
- ],
329
- [
330
- anonymousCallExpressionHandler,
331
- exportDefaultImportNameMap,
332
- compilerOptions,
333
- ],
334
- ]);
335
- return [4 /*yield*/, anonymous.concurrent()];
336
- case 1:
337
- anons = _a.sent();
338
- for (_i = 0, anons_1 = anons; _i < anons_1.length; _i++) {
339
- anon = anons_1[_i];
340
- deps = deps.map(anon);
341
- }
342
- return [2 /*return*/, deps];
343
- }
344
- });
345
- }); };
346
- module.exports = anonymous;
347
- //# sourceMappingURL=index.js.map
282
+ /**
283
+ * This function will transform the given deps files with the following handlers:
284
+ * 1. anonymousExportHandler: transform export default expression
285
+ * 2. anonymousImportHandler: transform import default expression
286
+ * 3. anonymousCallExpressionHandler: transform call expression with default import name
287
+ * The transformed deps files are returned as a promise.
288
+ * @param deps The deps files to be transformed
289
+ * @param compilerOptions The compiler options to be used for the transformation
290
+ * @returns A promise resolving to the transformed deps files
291
+ */
292
+ const anonymousHandlers = async (deps, compilerOptions) => {
293
+ const anonymous = resolves([
294
+ [anonymousExportHandler, compilerOptions],
295
+ [anonymousImportHandler, compilerOptions],
296
+ [anonymousCallExpressionHandler, compilerOptions],
297
+ ]);
298
+ const anons = await anonymous.concurrent();
299
+ for (const anon of anons) {
300
+ deps = deps.map(anon);
301
+ }
302
+ return deps;
303
+ };
304
+ module.exports = anonymousHandlers;
305
+ //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.cts"],"names":[],"mappings":"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"}