@dcloudio/uni-cli-shared 3.0.0-alpha-4060120250318001 → 3.0.0-alpha-4050720250320001

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/easycom.d.ts CHANGED
@@ -19,7 +19,7 @@ export declare function initEasycoms(inputDir: string, { dirs, platform, isX, }:
19
19
  platform: UniApp.PLATFORM;
20
20
  isX?: boolean;
21
21
  }): {
22
- easyComOptions: EasycomOption;
22
+ options: EasycomOption;
23
23
  filter: (id: unknown) => boolean;
24
24
  refresh(): void;
25
25
  easycoms: EasycomMatcher[];
package/dist/easycom.js CHANGED
@@ -48,7 +48,7 @@ function initEasycoms(inputDir, { dirs, platform, isX, }) {
48
48
  debugEasycom(easycomOptions);
49
49
  return easycomOptions;
50
50
  };
51
- const easyComOptions = initEasycomOptions((0, pages_1.parsePagesJsonOnce)(inputDir, platform));
51
+ const options = initEasycomOptions((0, pages_1.parsePagesJsonOnce)(inputDir, platform));
52
52
  const initUTSEasycom = () => {
53
53
  (0, uts_1.initUTSComponents)(inputDir, platform).forEach((item) => {
54
54
  const index = easycoms.findIndex((easycom) => item.name === easycom.name);
@@ -64,46 +64,26 @@ function initEasycoms(inputDir, { dirs, platform, isX, }) {
64
64
  globalThis.uts2jsSourceCodeMap.initUts2jsEasycom(easycoms);
65
65
  }
66
66
  };
67
- const initUTSEasycomCustomElements = () => {
68
- (0, uts_1.initUTSCustomElements)(inputDir, platform).forEach((item) => {
69
- const index = easycoms.findIndex((easycom) => item.name === easycom.name);
70
- if (index > -1) {
71
- easycoms.splice(index, 1, item);
72
- }
73
- else {
74
- easycoms.push(item);
75
- }
76
- });
77
- };
78
67
  // ext-api 模式下,不存在 easycom 特性
79
68
  if (process.env.UNI_COMPILE_TARGET !== 'ext-api') {
80
- clearEasycom();
81
- (0, uts_1.clearUTSComponents)();
82
- (0, uts_1.clearUTSCustomElements)();
83
- initEasycom(easyComOptions);
84
- initUTSEasycomCustomElements();
69
+ initEasycom(options);
85
70
  initUTSEasycom();
86
71
  }
87
72
  const componentExtNames = isX ? 'uvue|vue' : 'vue';
88
73
  const res = {
89
- easyComOptions,
74
+ options,
90
75
  filter: (0, pluginutils_1.createFilter)([
91
76
  'components/*/*.(' + componentExtNames + '|jsx|tsx)',
92
77
  'uni_modules/*/components/*/*.(' + componentExtNames + '|jsx|tsx)',
93
78
  'utssdk/*/**/*.(' + componentExtNames + ')',
94
79
  'uni_modules/*/utssdk/*/*.(' + componentExtNames + ')',
95
- 'uni_modules/*/customElements/*/*.uts',
96
80
  ], [], {
97
81
  resolve: inputDir,
98
82
  }),
99
83
  refresh() {
100
- res.easyComOptions = initEasycomOptions();
84
+ res.options = initEasycomOptions();
101
85
  if (process.env.UNI_COMPILE_TARGET !== 'ext-api') {
102
- clearEasycom();
103
- (0, uts_1.clearUTSComponents)();
104
- (0, uts_1.clearUTSCustomElements)();
105
- initEasycom(easyComOptions);
106
- initUTSEasycomCustomElements();
86
+ initEasycom(res.options);
107
87
  initUTSEasycom();
108
88
  }
109
89
  },
@@ -113,14 +93,14 @@ function initEasycoms(inputDir, { dirs, platform, isX, }) {
113
93
  }
114
94
  exports.initEasycoms = initEasycoms;
115
95
  exports.initEasycomsOnce = (0, uni_shared_1.once)(initEasycoms);
116
- function initUniModulesEasycomDirs(uniModulesDir, componentsDir = 'components') {
96
+ function initUniModulesEasycomDirs(uniModulesDir) {
117
97
  if (!fs_1.default.existsSync(uniModulesDir)) {
118
98
  return [];
119
99
  }
120
100
  return fs_1.default
121
101
  .readdirSync(uniModulesDir)
122
102
  .map((uniModuleDir) => {
123
- const uniModuleComponentsDir = path_1.default.resolve(uniModulesDir, uniModuleDir, componentsDir);
103
+ const uniModuleComponentsDir = path_1.default.resolve(uniModulesDir, uniModuleDir, 'components');
124
104
  if (fs_1.default.existsSync(uniModuleComponentsDir)) {
125
105
  return uniModuleComponentsDir;
126
106
  }
@@ -128,6 +108,7 @@ function initUniModulesEasycomDirs(uniModulesDir, componentsDir = 'components')
128
108
  .filter(Boolean);
129
109
  }
130
110
  function initEasycom({ isX, dirs, rootDir, custom, extensions, }) {
111
+ clearEasycom();
131
112
  rootDir = (0, utils_1.normalizePath)(rootDir);
132
113
  const easycomsObj = Object.create(null);
133
114
  if (dirs && dirs.length && rootDir) {
@@ -277,13 +258,10 @@ function addImportDeclaration(importDeclarations, local, source, imported) {
277
258
  }
278
259
  exports.addImportDeclaration = addImportDeclaration;
279
260
  function createImportDeclaration(local, source, imported) {
280
- if (imported && local) {
261
+ if (imported) {
281
262
  return `import { ${imported} as ${local} } from '${source}';`;
282
263
  }
283
- if (local) {
284
- return `import ${local} from '${source}';`;
285
- }
286
- return `import '${source}';`;
264
+ return `import ${local} from '${source}';`;
287
265
  }
288
266
  const RESOLVE_EASYCOM_IMPORT_CODE = `import { resolveDynamicComponent as __resolveDynamicComponent } from 'vue';import { resolveEasycom } from '@dcloudio/uni-app';`;
289
267
  function genResolveEasycomCode(importDeclarations, code, name) {
package/dist/index.d.ts CHANGED
@@ -24,8 +24,6 @@ export * from './platform';
24
24
  export * from './utsUtils';
25
25
  export { parseUniExtApi, parseUniExtApis, parseInjects, Define, DefineOptions, Defines, getUniExtApiProviderRegisters, formatExtApiProviderName, } from './uni_modules';
26
26
  export { parseUniModulesArtifacts, resolveEncryptUniModule, } from './uni_modules.cloud';
27
- import type { EncryptPackageJson } from './uni_modules.cloud';
28
- export type EncryptArtifacts = EncryptPackageJson['uni_modules']['artifacts'];
29
27
  export { M } from './messages';
30
28
  export * from './exports';
31
29
  export { checkUpdate } from './checkUpdate';
@@ -1,4 +1,3 @@
1
1
  import type { TransformResult } from 'vite';
2
2
  export declare function rewriteConsoleExpr(method: string, id: string, filename: string, code: string, sourceMap?: boolean): TransformResult;
3
3
  export declare function restoreConsoleExpr(code: string): string;
4
- export declare function appendConsoleExpr(filename: string, code: string): string;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.appendConsoleExpr = exports.restoreConsoleExpr = exports.rewriteConsoleExpr = void 0;
6
+ exports.restoreConsoleExpr = exports.rewriteConsoleExpr = void 0;
7
7
  const magic_string_1 = __importDefault(require("magic-string"));
8
8
  const utils_1 = require("../utils");
9
9
  function rewriteConsoleExpr(method, id, filename, code, sourceMap = false) {
@@ -53,23 +53,3 @@ function getLocator(source) {
53
53
  return { line, column };
54
54
  };
55
55
  }
56
- function appendConsoleExpr(filename, code) {
57
- filename = (0, utils_1.normalizePath)(filename);
58
- // 使用更复杂的正则来匹配可能包含换行、括号等的参数
59
- const re = /(console\.(log|info|debug|warn|error))\s*\(([\s\S]*?)(?=\)[;\n]|\)$)/g;
60
- const locate = getLocator(code);
61
- const s = new magic_string_1.default(code);
62
- let match;
63
- while ((match = re.exec(code))) {
64
- const [full, _, type, args] = match;
65
- const endPos = match.index + full.length + 1; // +1 to include the closing parenthesis
66
- s.overwrite(match.index, endPos,
67
- // 重要,需要用双引号,因为混编的kt,swift,java不能用单引号(char类型)
68
- `console.${type}(${args.trim()}, " at ${filename}:${locate(match.index).line + 1}")`);
69
- }
70
- if (s.hasChanged()) {
71
- return s.toString();
72
- }
73
- return code;
74
- }
75
- exports.appendConsoleExpr = appendConsoleExpr;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.preUVueJson = exports.preUVueCss = exports.preUVueHtml = exports.preUVueJs = exports.preNVueJson = exports.preNVueCss = exports.preNVueHtml = exports.preNVueJs = exports.preJson = exports.preCss = exports.preHtml = exports.preJs = exports.initPreContext = void 0;
4
4
  const context_1 = require("./context");
5
5
  /* eslint-disable no-restricted-globals */
6
- const { preprocess: preprocessLib } = require('../../lib/preprocess');
6
+ const { preprocess } = require('../../lib/preprocess');
7
7
  var context_2 = require("./context");
8
8
  Object.defineProperty(exports, "initPreContext", { enumerable: true, get: function () { return context_2.initPreContext; } });
9
9
  function preJs(jsCode) {
@@ -42,31 +42,3 @@ function preUVueHtml(htmlCode) {
42
42
  exports.preUVueHtml = preUVueHtml;
43
43
  exports.preUVueCss = preUVueJs;
44
44
  exports.preUVueJson = preUVueJs;
45
- const ERRORS = {
46
- html: `条件编译失败\n参考示例(注意 ifdef 与 endif 必须配对使用):
47
- <!-- #ifdef %PLATFORM% -->
48
- 模板代码
49
- <!-- #endif -->
50
- `,
51
- js: `条件编译失败\n参考示例(注意 ifdef 与 endif 必须配对使用):
52
- // #ifdef %PLATFORM%
53
- 代码
54
- // #endif
55
- `,
56
- css: `条件编译失败\n参考示例(注意 ifdef 与 endif 必须配对使用):
57
- /* #ifdef %PLATFORM% */
58
- 代码
59
- /* #endif */
60
- `,
61
- };
62
- function preprocess(code, context, options) {
63
- try {
64
- return preprocessLib(code, context, options);
65
- }
66
- catch (e) {
67
- if (ERRORS[options.type]) {
68
- throw new Error(ERRORS[options.type]);
69
- }
70
- throw e;
71
- }
72
- }
package/dist/resolve.js CHANGED
@@ -97,7 +97,7 @@ function resolveBuiltIn(module) {
97
97
  if (process.env.UNI_COMPILE_TARGET === 'ext-api' &&
98
98
  process.env.UNI_APP_NEXT_WORKSPACE &&
99
99
  module.startsWith('@dcloudio/')) {
100
- return path_1.default.resolve(process.env.UNI_APP_NEXT_WORKSPACE, 'packages', module.replace('@dcloudio/', ''));
100
+ return path_1.default.resolve(process.env.UNI_APP_NEXT_WORKSPACE, 'packages', module);
101
101
  }
102
102
  return require.resolve(module, { paths: getBuiltInPaths() });
103
103
  }
@@ -14,7 +14,7 @@ export declare function packUploadEncryptUniModules(uniModules: Record<string, E
14
14
  zipFile: string;
15
15
  modules: string[];
16
16
  };
17
- export interface EncryptPackageJson {
17
+ interface EncryptPackageJson {
18
18
  id: string;
19
19
  version: string;
20
20
  uni_modules: {
@@ -26,10 +26,6 @@ export interface EncryptPackageJson {
26
26
  apis: string[];
27
27
  components: string[];
28
28
  scopedSlots: string[];
29
- customElements: {
30
- name: string;
31
- class: string;
32
- }[];
33
29
  declaration: string;
34
30
  };
35
31
  };
@@ -51,3 +47,4 @@ export declare function parseUniModulesArtifacts(): {
51
47
  scopedSlots: string[];
52
48
  declaration: string;
53
49
  }[];
50
+ export {};
@@ -212,8 +212,7 @@ function findEncryptUniModuleCache(uniModuleId, cacheDir, options) {
212
212
  const pkg = require(path_1.default.resolve(uniModuleCacheDir, 'package.json'));
213
213
  // 插件版本以及各种环境一致
214
214
  if (pkg.version === options.version &&
215
- (options.env.compilerVersion === '4.17-test' ||
216
- !isEnvExpired(pkg.uni_modules?.artifacts?.env || {}, options.env))) {
215
+ !isEnvExpired(pkg.uni_modules?.artifacts?.env || {}, options.env)) {
217
216
  const declaration = path_1.default.resolve(uniModuleCacheDir, 'utssdk/app-android/index.d.uts');
218
217
  pkg.uni_modules.artifacts.declaration = fs_extra_1.default.existsSync(declaration)
219
218
  ? declaration
@@ -285,8 +284,7 @@ function resolveEncryptUniModule(id, platform, isX = true) {
285
284
  if (index !== -1) {
286
285
  const uniModuleId = parts[index + 1];
287
286
  if (uniModuleId in encryptUniModules) {
288
- if (parts[index + 2] &&
289
- (platform === 'app-android' || platform === 'app-ios')) {
287
+ if (parts[index + 2]) {
290
288
  console.warn(messages_1.M['uni_modules.import']
291
289
  .replace('{0}', uniModuleId)
292
290
  .replace('{1}', uniModuleId)
@@ -5,8 +5,6 @@ export type DefineOptions = {
5
5
  js?: boolean;
6
6
  kotlin?: boolean;
7
7
  swift?: boolean;
8
- arkts?: boolean;
9
- ['x-arkts']?: boolean;
10
8
  };
11
9
  [key: string]: any;
12
10
  };
package/dist/uts.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
- import { type Import, type Unimport } from 'unimport';
4
3
  import type * as UTSCompiler from '@dcloudio/uni-uts-v1';
5
4
  import type { EasycomMatcher } from './easycom';
6
5
  /**
@@ -13,37 +12,14 @@ export declare function resolveUTSAppModule(platform: typeof process.env.UNI_UTS
13
12
  export declare function resolveUTSModule(id: string, importer: string, includeUTSSDK?: boolean): string | undefined;
14
13
  export declare function resolveUTSCompiler(throwError?: boolean): typeof UTSCompiler;
15
14
  export declare function resolveUTSCompilerVersion(): string;
16
- interface UTSComponentMeta {
17
- source: string;
18
- kotlinPackage: string;
19
- swiftModule: string;
20
- }
21
- interface UTSCustomElementMeta extends UTSComponentMeta {
22
- exports: [string][];
23
- }
24
- export declare function getUTSCustomElementsExports(): Map<string, UTSCustomElementMeta>;
25
- export declare function clearUTSComponents(): void;
26
15
  export declare function isUTSComponent(name: string): boolean;
27
- export declare function clearUTSCustomElements(): void;
28
- export declare function getUTSCustomElements(): Map<string, UTSComponentMeta>;
29
- export declare function getUTSPluginCustomElements(): Record<string, Set<string>>;
30
- export declare function isUTSCustomElement(name: string): boolean;
31
- export declare function getUTSCustomElement(name: string): UTSComponentMeta | undefined;
32
16
  export declare function getUTSComponentAutoImports(language: 'kotlin' | 'swift'): Record<string, [[string]]>;
33
- export declare function getUTSCustomElementAutoImports(language: 'kotlin' | 'swift'): Record<string, [string][]>;
34
17
  export declare function parseUTSComponent(name: string, type: 'kotlin' | 'swift'): {
35
18
  className: string;
36
19
  namespace: string;
37
20
  source: string;
38
21
  } | undefined;
39
- export declare function parseUTSCustomElement(name: string, type: 'kotlin' | 'swift'): {
40
- className: string;
41
- namespace: string;
42
- source: string;
43
- } | undefined;
44
22
  export declare function initUTSComponents(inputDir: string, platform: UniApp.PLATFORM): EasycomMatcher[];
45
- export declare function initUTSCustomElements(inputDir: string, platform: UniApp.PLATFORM): EasycomMatcher[];
46
- export declare function parseCustomElementExports(filePath: string, unimport?: Unimport): Promise<Import[]>;
47
23
  export declare function parseKotlinPackageWithPluginId(id: string, is_uni_modules: boolean): string;
48
24
  export declare function parseSwiftPackageWithPluginId(id: string, is_uni_modules: boolean): string;
49
25
  export type UTSTargetLanguage = typeof process.env.UNI_UTS_TARGET_LANGUAGE;
@@ -57,4 +33,3 @@ export declare function uvueOutDir(platform: 'app-android' | 'app-ios' | 'app-ha
57
33
  export declare function tscOutDir(platform: 'app-android' | 'app-ios' | 'app-harmony'): string;
58
34
  export declare function isUTSProxy(id: string): boolean;
59
35
  export declare function isUniHelpers(id: string): boolean;
60
- export {};
package/dist/uts.js CHANGED
@@ -3,12 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isUniHelpers = exports.isUTSProxy = exports.tscOutDir = exports.uvueOutDir = exports.genUniExtApiDeclarationFileOnce = exports.initUTSSwiftAutoImportsOnce = exports.initUTSKotlinAutoImportsOnce = exports.resolveUniTypeScript = exports.parseUniExtApiNamespacesJsOnce = exports.parseUniExtApiNamespacesOnce = exports.parseSwiftPackageWithPluginId = exports.parseKotlinPackageWithPluginId = exports.parseCustomElementExports = exports.initUTSCustomElements = exports.initUTSComponents = exports.parseUTSCustomElement = exports.parseUTSComponent = exports.getUTSCustomElementAutoImports = exports.getUTSComponentAutoImports = exports.getUTSCustomElement = exports.isUTSCustomElement = exports.getUTSPluginCustomElements = exports.getUTSCustomElements = exports.clearUTSCustomElements = exports.isUTSComponent = exports.clearUTSComponents = exports.getUTSCustomElementsExports = exports.resolveUTSCompilerVersion = exports.resolveUTSCompiler = exports.resolveUTSModule = exports.resolveUTSAppModule = void 0;
6
+ exports.isUniHelpers = exports.isUTSProxy = exports.tscOutDir = exports.uvueOutDir = exports.genUniExtApiDeclarationFileOnce = exports.initUTSSwiftAutoImportsOnce = exports.initUTSKotlinAutoImportsOnce = exports.resolveUniTypeScript = exports.parseUniExtApiNamespacesJsOnce = exports.parseUniExtApiNamespacesOnce = exports.parseSwiftPackageWithPluginId = exports.parseKotlinPackageWithPluginId = exports.initUTSComponents = exports.parseUTSComponent = exports.getUTSComponentAutoImports = exports.isUTSComponent = exports.resolveUTSCompilerVersion = exports.resolveUTSCompiler = exports.resolveUTSModule = exports.resolveUTSAppModule = void 0;
7
7
  // 重要,该文件编译后的 js 需要同步到 vue2 编译器 uni-cli-shared/lib/uts
8
8
  const fs_extra_1 = __importDefault(require("fs-extra"));
9
9
  const path_1 = __importDefault(require("path"));
10
10
  const fast_glob_1 = __importDefault(require("fast-glob"));
11
- const unimport_1 = require("unimport");
12
11
  const hbx_1 = require("./hbx");
13
12
  const utils_1 = require("./utils");
14
13
  const uni_modules_1 = require("./uni_modules");
@@ -48,10 +47,6 @@ function resolveUTSAppModule(platform, id, importer, includeUTSSDK = true) {
48
47
  if (fs_extra_1.default.existsSync(path_1.default.resolve(id, basedir, 'index.uts'))) {
49
48
  return id;
50
49
  }
51
- // customElements 组件
52
- if (fs_extra_1.default.existsSync(path_1.default.resolve(id, 'customElements'))) {
53
- return id;
54
- }
55
50
  const fileName = id.split('?')[0];
56
51
  const resolvePlatformDir = (p) => {
57
52
  return path_1.default.resolve(fileName, basedir, p);
@@ -91,35 +86,17 @@ function resolveUTSModule(id, importer, includeUTSSDK = true) {
91
86
  return path_1.default.resolve(id, basedir, p);
92
87
  };
93
88
  let index = resolveUTSFile(resolvePlatformDir(process.env.UNI_UTS_PLATFORM));
94
- const pluginId = parentDir === 'uni_modules' ? parts[parts.length - 1] : '';
95
89
  if (index) {
96
- return resolveUTSEncryptFile(pluginId, index) || index;
90
+ return index;
97
91
  }
98
92
  index = path_1.default.resolve(id, basedir, 'index.uts');
99
93
  if (fs_extra_1.default.existsSync(index)) {
100
- return resolveUTSEncryptFile(pluginId, index) || index;
94
+ return index;
101
95
  }
102
96
  }
103
97
  }
104
98
  }
105
99
  exports.resolveUTSModule = resolveUTSModule;
106
- function resolveUTSEncryptFile(pluginId, index) {
107
- if (!pluginId) {
108
- return;
109
- }
110
- const cacheDir = process.env.UNI_MODULES_ENCRYPT_CACHE_DIR;
111
- if (!cacheDir) {
112
- return;
113
- }
114
- // 仅支持 uts 加密解析
115
- if (!index.endsWith('.uts')) {
116
- return;
117
- }
118
- const cacheFile = path_1.default.resolve(cacheDir, 'uni_modules', pluginId, 'index.module.js');
119
- if (fs_extra_1.default.existsSync(cacheFile)) {
120
- return cacheFile;
121
- }
122
- }
123
100
  function resolveUTSFile(dir, extensions = ['.uts', '.ts', '.js']) {
124
101
  for (let i = 0; i < extensions.length; i++) {
125
102
  const indexFile = path_1.default.join(dir, 'index' + extensions[i]);
@@ -176,55 +153,10 @@ function resolveUTSCompilerVersion() {
176
153
  }
177
154
  exports.resolveUTSCompilerVersion = resolveUTSCompilerVersion;
178
155
  const utsComponents = new Map();
179
- const utsCustomElements = new Map();
180
- const utsCustomElementsExports = new Map();
181
- function getUTSCustomElementsExports() {
182
- return utsCustomElementsExports;
183
- }
184
- exports.getUTSCustomElementsExports = getUTSCustomElementsExports;
185
- function clearUTSComponents() {
186
- utsComponents.clear();
187
- }
188
- exports.clearUTSComponents = clearUTSComponents;
189
156
  function isUTSComponent(name) {
190
157
  return utsComponents.has(name);
191
158
  }
192
159
  exports.isUTSComponent = isUTSComponent;
193
- function clearUTSCustomElements() {
194
- utsCustomElements.clear();
195
- }
196
- exports.clearUTSCustomElements = clearUTSCustomElements;
197
- function getUTSCustomElements() {
198
- return utsCustomElements;
199
- }
200
- exports.getUTSCustomElements = getUTSCustomElements;
201
- function getUTSPluginCustomElements() {
202
- const pluginCustomElements = {};
203
- for (const [key, value] of utsCustomElements.entries()) {
204
- const parts = value.source.split('?')[0].split('/');
205
- const pluginId = parts[parts.length - 1];
206
- if (!pluginId) {
207
- continue;
208
- }
209
- if (!pluginCustomElements[pluginId]) {
210
- pluginCustomElements[pluginId] = new Set();
211
- }
212
- pluginCustomElements[pluginId].add(key);
213
- }
214
- return pluginCustomElements;
215
- }
216
- exports.getUTSPluginCustomElements = getUTSPluginCustomElements;
217
- function isUTSCustomElement(name) {
218
- // 支持内置CustomElement的本地注册开发,
219
- // 内置组件目录:customElements/uni-progress/uni-progress.uts
220
- // 实际使用时是:progress,所以需要自动补充uni-前缀做判断
221
- return utsCustomElements.has(name) || utsCustomElements.has('uni-' + name);
222
- }
223
- exports.isUTSCustomElement = isUTSCustomElement;
224
- function getUTSCustomElement(name) {
225
- return utsCustomElements.get(name) || utsCustomElements.get('uni-' + name);
226
- }
227
- exports.getUTSCustomElement = getUTSCustomElement;
228
160
  function getUTSComponentAutoImports(language) {
229
161
  const utsComponentAutoImports = {};
230
162
  utsComponents.forEach(({ kotlinPackage, swiftModule }, name) => {
@@ -242,20 +174,6 @@ function getUTSComponentAutoImports(language) {
242
174
  return utsComponentAutoImports;
243
175
  }
244
176
  exports.getUTSComponentAutoImports = getUTSComponentAutoImports;
245
- function getUTSCustomElementAutoImports(language) {
246
- const utsCustomElementAutoImports = {};
247
- utsCustomElementsExports.forEach(({ exports, kotlinPackage, swiftModule }) => {
248
- const source = language === 'kotlin' ? kotlinPackage : swiftModule;
249
- if (!utsCustomElementAutoImports[source]) {
250
- utsCustomElementAutoImports[source] = exports;
251
- }
252
- else {
253
- utsCustomElementAutoImports[source].push(...exports);
254
- }
255
- });
256
- return utsCustomElementAutoImports;
257
- }
258
- exports.getUTSCustomElementAutoImports = getUTSCustomElementAutoImports;
259
177
  function parseUTSComponent(name, type) {
260
178
  const meta = utsComponents.get(name);
261
179
  if (meta) {
@@ -269,20 +187,8 @@ function parseUTSComponent(name, type) {
269
187
  }
270
188
  }
271
189
  exports.parseUTSComponent = parseUTSComponent;
272
- function parseUTSCustomElement(name, type) {
273
- const meta = getUTSCustomElement(name);
274
- if (meta) {
275
- const namespace = meta[type === 'swift' ? 'swiftModule' : 'kotlinPackage'] || '';
276
- const className = (0, utils_1.capitalize)((0, utils_1.camelize)(name)) + 'Element';
277
- return {
278
- className,
279
- namespace,
280
- source: meta.source,
281
- };
282
- }
283
- }
284
- exports.parseUTSCustomElement = parseUTSCustomElement;
285
190
  function initUTSComponents(inputDir, platform) {
191
+ utsComponents.clear();
286
192
  const components = [];
287
193
  const isApp = platform === 'app' || platform === 'app-plus';
288
194
  const easycomsObj = {};
@@ -359,82 +265,6 @@ function resolveUTSComponentDirs(inputDir) {
359
265
  })
360
266
  : []);
361
267
  }
362
- function initUTSCustomElements(inputDir, platform) {
363
- const isApp = platform === 'app' || platform === 'app-plus' || platform === 'app-harmony';
364
- const dirs = resolveUTSCustomElementsDirs(inputDir);
365
- const unimport = (0, unimport_1.createUnimport)({});
366
- dirs.forEach((dir) => {
367
- fs_extra_1.default.readdirSync(dir).forEach((name) => {
368
- const folder = path_1.default.resolve(dir, name);
369
- if (!isDir(folder)) {
370
- return;
371
- }
372
- const files = fs_extra_1.default.readdirSync(folder);
373
- // 读取文件夹文件列表,比对文件名(fs.existsSync在大小写不敏感的系统会匹配不准确)
374
- // customElements 的文件名是 uts 后缀
375
- const ext = '.uts';
376
- if (files.includes(name + ext)) {
377
- const filePath = path_1.default.resolve(folder, name + ext);
378
- const pluginId = path_1.default.basename(path_1.default.dirname(dir));
379
- const source = '@/' +
380
- (0, utils_1.normalizePath)(isApp
381
- ? path_1.default.relative(inputDir, path_1.default.dirname(dir))
382
- : path_1.default.relative(inputDir, filePath));
383
- const importSource = isApp ? `${source}?uts-proxy` : source;
384
- const meta = {
385
- source: importSource,
386
- kotlinPackage: parseKotlinPackageWithPluginId(pluginId, true),
387
- swiftModule: parseSwiftPackageWithPluginId(pluginId, true),
388
- };
389
- utsCustomElements.set(name, meta);
390
- parseCustomElementExports(filePath, unimport).then((exports_) => {
391
- const prefix = (0, utils_1.capitalize)((0, utils_1.camelize)(name));
392
- const customElementExports = exports_
393
- .filter((item) => item.name.startsWith(prefix))
394
- .map((item) => [item.name]);
395
- if (utsCustomElementsExports.has(importSource)) {
396
- utsCustomElementsExports
397
- .get(importSource)
398
- .exports.push(...customElementExports);
399
- }
400
- else {
401
- utsCustomElementsExports.set(importSource, {
402
- ...meta,
403
- exports: customElementExports,
404
- });
405
- }
406
- });
407
- }
408
- });
409
- });
410
- // 不需要easycom匹配
411
- return [];
412
- }
413
- exports.initUTSCustomElements = initUTSCustomElements;
414
- function parseCustomElementExports(filePath, unimport = (0, unimport_1.createUnimport)({})) {
415
- return unimport.scanImportsFromFile(filePath, true);
416
- }
417
- exports.parseCustomElementExports = parseCustomElementExports;
418
- const isDir = (path) => {
419
- const stat = fs_extra_1.default.lstatSync(path);
420
- if (stat.isDirectory()) {
421
- return true;
422
- }
423
- else if (stat.isSymbolicLink()) {
424
- return fs_extra_1.default.lstatSync(fs_extra_1.default.realpathSync(path)).isDirectory();
425
- }
426
- return false;
427
- };
428
- function resolveUTSCustomElementsDirs(inputDir) {
429
- const uniModulesDir = path_1.default.resolve(inputDir, 'uni_modules');
430
- return fs_extra_1.default.existsSync(uniModulesDir)
431
- ? fast_glob_1.default.sync('*/customElements', {
432
- cwd: uniModulesDir,
433
- absolute: true,
434
- onlyDirectories: true,
435
- })
436
- : [];
437
- }
438
268
  const nameRE = /name\s*:\s*['|"](.*)['|"]/;
439
269
  function parseVueComponentName(file) {
440
270
  const content = fs_extra_1.default.readFileSync(file, 'utf8');
@@ -553,15 +383,6 @@ async function initUTSAutoImports(autoImports, platform, language) {
553
383
  autoImports[source] = utsComponents[source];
554
384
  }
555
385
  });
556
- const utsCustomElements = getUTSCustomElementAutoImports(language);
557
- Object.keys(utsCustomElements).forEach((source) => {
558
- if (autoImports[source]) {
559
- autoImports[source].push(...utsCustomElements[source]);
560
- }
561
- else {
562
- autoImports[source] = utsCustomElements[source];
563
- }
564
- });
565
386
  const extApis = (0, uni_modules_1.parseUniExtApis)(true, platform, language);
566
387
  const extApiImports = await (language === 'kotlin'
567
388
  ? parseUniExtApiKotlinAutoImportsOnce
@@ -1,8 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initAutoImportOptions = void 0;
4
- const uni_shared_1 = require("@dcloudio/uni-shared");
5
- const uts_1 = require("../uts");
6
4
  const uniPreset = {
7
5
  from: '@dcloudio/uni-app',
8
6
  imports: [
@@ -166,7 +164,6 @@ const vuePreset = {
166
164
  ],
167
165
  };
168
166
  function initAutoImportOptions(platform, { imports = [], ...userOptions }) {
169
- rewriteAutoImportOnce();
170
167
  const autoImport = [uniPreset, cloudPreset, vuePreset];
171
168
  if (platform === 'web') {
172
169
  autoImport.push(uniH5Preset);
@@ -185,28 +182,3 @@ function initAutoImportOptions(platform, { imports = [], ...userOptions }) {
185
182
  };
186
183
  }
187
184
  exports.initAutoImportOptions = initAutoImportOptions;
188
- const rewriteAutoImportOnce = (0, uni_shared_1.once)(() => {
189
- const unimport = require('unimport');
190
- const originalCreateUnimport = unimport.createUnimport;
191
- unimport.createUnimport = (opts) => {
192
- const unimport_ = originalCreateUnimport(opts);
193
- const originalScanImportsFromDir = unimport_.scanImportsFromDir;
194
- unimport_.scanImportsFromDir = async (dir, options) => {
195
- const exports_ = (await originalScanImportsFromDir(dir, options));
196
- scanCustomElements(exports_);
197
- return exports_;
198
- };
199
- return unimport_;
200
- };
201
- });
202
- function scanCustomElements(exports_) {
203
- const utsCustomElementsExports = (0, uts_1.getUTSCustomElementsExports)();
204
- for (const [key, value] of utsCustomElementsExports.entries()) {
205
- value.exports.forEach((export_) => {
206
- exports_.push({
207
- from: key,
208
- name: export_[0],
209
- });
210
- });
211
- }
212
- }
@@ -198,7 +198,6 @@ function uniEncryptUniModulesPlugin() {
198
198
  if (result) {
199
199
  const apis = result.inject_apis;
200
200
  const scopedSlots = result.scoped_slots;
201
- const customElements = result.custom_elements;
202
201
  const components = getUniModulesExtApiComponents(uniModule);
203
202
  const modules = (0, uts_1.resolveUTSCompiler)().parseInjectModules(apis, {}, components);
204
203
  fs_extra_1.default.writeFileSync(path_1.default.resolve(process.env.UNI_OUTPUT_DIR, 'uni_modules', uniModule, 'package.json'), genUniModulesPackageJson(uniModule, process.env.UNI_INPUT_DIR, {
@@ -207,7 +206,6 @@ function uniEncryptUniModulesPlugin() {
207
206
  components,
208
207
  modules,
209
208
  scopedSlots,
210
- customElements,
211
209
  }));
212
210
  }
213
211
  }
@@ -21,7 +21,7 @@ function uniUniModulesExtApiPlugin() {
21
21
  },
22
22
  };
23
23
  const build = {};
24
- if (['app-ios', 'app-harmony'].includes(process.env.UNI_UTS_PLATFORM)) {
24
+ if (process.env.UNI_UTS_PLATFORM === 'app-ios') {
25
25
  build.rollupOptions = rollupOptions;
26
26
  }
27
27
  return {
@@ -20,7 +20,6 @@ interface UniVitePluginUniOptions {
20
20
  emitFile?: (emittedFile: EmittedAsset) => string;
21
21
  };
22
22
  isNativeTag?: ParserOptions['isNativeTag'];
23
- isVoidTag?: ParserOptions['isVoidTag'];
24
23
  isCustomElement?: ParserOptions['isCustomElement'];
25
24
  directiveTransforms?: CompilerOptions['directiveTransforms'];
26
25
  nodeTransforms?: CompilerOptions['nodeTransforms'];
@@ -10,8 +10,6 @@ const pluginutils_1 = require("@rollup/pluginutils");
10
10
  const url_1 = require("../utils/url");
11
11
  const constants_1 = require("../../constants");
12
12
  const easycom_1 = require("../../easycom");
13
- const transformUTSComponent_1 = require("../../vue/transforms/transformUTSComponent");
14
- const uts_1 = require("../../uts");
15
13
  function uniEasycomPlugin(options) {
16
14
  const filter = (0, pluginutils_1.createFilter)(options.include, options.exclude);
17
15
  return {
@@ -24,21 +22,7 @@ function uniEasycomPlugin(options) {
24
22
  if (!constants_1.EXTNAME_VUE_TEMPLATE.includes(path_1.default.extname(filename))) {
25
23
  return;
26
24
  }
27
- // 替换 UTS custom element import placeholder
28
- // 目前主要是iOS和harmony,Android不需要
29
- const hasUTSCustomElementImport = code.includes(transformUTSComponent_1.UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER);
30
- if (hasUTSCustomElementImport) {
31
- code = code.replace(new RegExp(`${transformUTSComponent_1.UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER} from `, 'g'), '');
32
- }
33
25
  if (!code.includes('_resolveComponent')) {
34
- if (hasUTSCustomElementImport) {
35
- return {
36
- code,
37
- map: {
38
- mappings: '',
39
- },
40
- };
41
- }
42
26
  return;
43
27
  }
44
28
  let i = 0;
@@ -54,13 +38,6 @@ function uniEasycomPlugin(options) {
54
38
  ? (0, shared_1.capitalize)((0, shared_1.camelize)(name))
55
39
  : ''));
56
40
  }
57
- else {
58
- const utsCustomElement = (0, uts_1.getUTSCustomElement)(name);
59
- if (utsCustomElement) {
60
- (0, easycom_1.addImportDeclaration)(importDeclarations, '', utsCustomElement.source, '');
61
- return `'${name}'`;
62
- }
63
- }
64
41
  }
65
42
  return str;
66
43
  });
@@ -31,16 +31,6 @@ function rewriteUniModulesConsoleExpr(fileName, content) {
31
31
  return content;
32
32
  }
33
33
  exports.rewriteUniModulesConsoleExpr = rewriteUniModulesConsoleExpr;
34
- function appendUniModulesConsoleExpr(fileName, content) {
35
- // 仅开发模式补充console.log的at信息
36
- if (process.env.NODE_ENV !== 'development') {
37
- return content;
38
- }
39
- if (content.includes('console.')) {
40
- return (0, console_1.appendConsoleExpr)((0, utils_2.normalizePath)(path_1.default.relative(process.env.UNI_INPUT_DIR, fileName.split('?')[0])), content);
41
- }
42
- return content;
43
- }
44
34
  function createUniModulesSyncFilePreprocessor(platform, utsPlatform, isX) {
45
35
  const { preVueContext, preUVueContext } = (0, context_1.initScopedPreContext)(platform, undefined, utsPlatform, isX);
46
36
  const preContext = isX ? preUVueContext : preVueContext;
@@ -113,7 +103,7 @@ const createUniAppIosUniModulesSyncFilePreprocessorOnce = (0, uni_shared_1.once)
113
103
  return createUniModulesSyncFilePreprocessor('app', 'app-ios', false);
114
104
  });
115
105
  const createUniAppHarmonyUniModulesSyncFilePreprocessorOnce = (0, uni_shared_1.once)(() => {
116
- return createUniModulesSyncFilePreprocessor('app-harmony', 'app-harmony', false);
106
+ return createUniModulesSyncFilePreprocessor('app', 'app-harmony', false);
117
107
  });
118
108
  const createUniXAppAndroidUniModulesSyncFilePreprocessorOnce = (0, uni_shared_1.once)(() => {
119
109
  return createUniModulesSyncFilePreprocessor('app', 'app-android', true);
@@ -122,7 +112,7 @@ const createUniXAppIosUniModulesSyncFilePreprocessorOnce = (0, uni_shared_1.once
122
112
  return createUniModulesSyncFilePreprocessor('app', 'app-ios', true);
123
113
  });
124
114
  const createUniXAppHarmonyUniModulesSyncFilePreprocessorOnce = (0, uni_shared_1.once)(() => {
125
- return createUniModulesSyncFilePreprocessor('app-harmony', 'app-harmony', true);
115
+ return createUniModulesSyncFilePreprocessor('app', 'app-harmony', true);
126
116
  });
127
117
  const utsModuleCaches = new Map();
128
118
  const utsPlugins = new Set();
@@ -293,11 +283,7 @@ function uniUTSAppUniModulesPlugin(options = {}) {
293
283
  const compiler = (0, uts_1.resolveUTSCompiler)();
294
284
  // 处理依赖的 uts 插件
295
285
  // TODO 当本地有ext-api时,也应该自动加入deps,不然uts内部使用了该api,也会导致编译失败
296
- const deps =
297
- // 框架内部编译不需要处理依赖
298
- process.env.UNI_COMPILE_TARGET === 'ext-api'
299
- ? []
300
- : (0, uni_modules_1.parseUTSModuleDeps)(pkgJson.uni_modules?.dependencies || [], inputDir);
286
+ const deps = (0, uni_modules_1.parseUTSModuleDeps)(pkgJson.uni_modules?.dependencies || [], inputDir);
301
287
  if (deps.length) {
302
288
  for (const dep of deps) {
303
289
  if (dep) {
@@ -324,8 +310,6 @@ function uniUTSAppUniModulesPlugin(options = {}) {
324
310
  return compiler.compileArkTS(pluginDir, {
325
311
  isX: !!options.x,
326
312
  isExtApi,
327
- sourceMap: (0, utils_2.enableSourceMap)(),
328
- rewriteConsoleExpr: appendUniModulesConsoleExpr,
329
313
  transform: {
330
314
  uniExtApiProviderName: extApiProvider?.name,
331
315
  uniExtApiProviderService: extApiProvider?.service,
@@ -353,7 +337,6 @@ function uniUTSAppUniModulesPlugin(options = {}) {
353
337
  extApis: options.extApis,
354
338
  sourceMap: (0, utils_2.enableSourceMap)(),
355
339
  uni_modules: deps,
356
- rewriteConsoleExpr: appendUniModulesConsoleExpr,
357
340
  transform: {
358
341
  uniExtApiProviderName: extApiProvider?.name,
359
342
  uniExtApiProviderService: extApiProvider?.service,
@@ -448,9 +431,6 @@ function uniUTSAppUniModulesPlugin(options = {}) {
448
431
  if (uniXSwiftCompiler) {
449
432
  await uniXSwiftCompiler.close();
450
433
  }
451
- if (uniXArkTSCompiler) {
452
- await uniXArkTSCompiler.close();
453
- }
454
434
  }
455
435
  },
456
436
  watchChange(fileName, change) {
@@ -66,6 +66,6 @@ export interface StylePreprocessorResults {
66
66
  }
67
67
  /**
68
68
  * 重写 readFileSync
69
- * 目前主要解决 scss 文件被 @import 的条件编译,如果用~@/方式导入,会走自定义importer,不需要通过重写readFileSync来过滤,所以nvue的问题,可以让开发者调整导入写法
69
+ * 目前主要解决 scss 文件被 @import 的条件编译
70
70
  */
71
71
  export declare function rewriteScssReadFileSync(): void;
@@ -1144,7 +1144,7 @@ function isPreProcessor(lang) {
1144
1144
  const preCssExtNames = ['.scss', '.sass', '.styl', '.stylus'];
1145
1145
  /**
1146
1146
  * 重写 readFileSync
1147
- * 目前主要解决 scss 文件被 @import 的条件编译,如果用~@/方式导入,会走自定义importer,不需要通过重写readFileSync来过滤,所以nvue的问题,可以让开发者调整导入写法
1147
+ * 目前主要解决 scss 文件被 @import 的条件编译
1148
1148
  */
1149
1149
  function rewriteScssReadFileSync() {
1150
1150
  // 目前 1.0 App 端,只要包含了APP-NVUE条件编译,就不pre,因为区分不出来APP-NVUE
@@ -1,5 +1,4 @@
1
1
  import type { NodeTransform } from '@vue/compiler-core';
2
- export declare const UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER = "__UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER__";
3
2
  /**
4
3
  * 将uts组件保存到自定义组件列表中
5
4
  * @param node
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.transformUTSComponent = exports.UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER = void 0;
3
+ exports.transformUTSComponent = void 0;
4
4
  const ast_1 = require("../../vite/utils/ast");
5
5
  const utsUtils_1 = require("../../utsUtils");
6
- const uts_1 = require("../../uts");
7
- exports.UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER = '__UTS_CUSTOM_ELEMENT_IMPORT_PLACEHOLDER__';
8
6
  /**
9
7
  * 将uts组件保存到自定义组件列表中
10
8
  * @param node
@@ -15,13 +13,7 @@ const transformUTSComponent = (node, context) => {
15
13
  if (!(0, ast_1.isElementNode)(node)) {
16
14
  return;
17
15
  }
18
- // 1. 增加components,让sfc生成resolveComponent代码
19
- // 2. easycom插件会根据resolveComponent生成import插件代码触发编译
20
- const utsCustomElement = (0, uts_1.getUTSCustomElement)(node.tag);
21
- if (utsCustomElement) {
22
- context.components.add(node.tag);
23
- }
24
- else if ((0, utsUtils_1.matchUTSComponent)(node.tag)) {
16
+ if ((0, utsUtils_1.matchUTSComponent)(node.tag)) {
25
17
  if (!context.root.components.includes(node.tag)) {
26
18
  context.components.add(node.tag);
27
19
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcloudio/uni-cli-shared",
3
- "version": "3.0.0-alpha-4060120250318001",
3
+ "version": "3.0.0-alpha-4050720250320001",
4
4
  "description": "@dcloudio/uni-cli-shared",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -64,11 +64,10 @@
64
64
  "resolve": "^1.22.1",
65
65
  "source-map-js": "^1.0.2",
66
66
  "tapable": "^2.2.0",
67
- "unimport": "4.1.1",
68
- "unplugin-auto-import": "19.1.0",
67
+ "unplugin-auto-import": "^0.18.2",
69
68
  "xregexp": "3.1.0",
70
- "@dcloudio/uni-i18n": "3.0.0-alpha-4060120250318001",
71
- "@dcloudio/uni-shared": "3.0.0-alpha-4060120250318001"
69
+ "@dcloudio/uni-i18n": "3.0.0-alpha-4050720250320001",
70
+ "@dcloudio/uni-shared": "3.0.0-alpha-4050720250320001"
72
71
  },
73
72
  "gitHead": "33e807d66e1fe47e2ee08ad9c59247e37b8884da",
74
73
  "devDependencies": {
@@ -87,7 +86,8 @@
87
86
  "@types/stylus": "^0.48.36",
88
87
  "code-frame": "link:@types/@babel/code-frame",
89
88
  "postcss": "^8.4.21",
89
+ "unimport": "^3.11.1",
90
90
  "vue": "3.4.21",
91
- "@dcloudio/uni-uts-v1": "3.0.0-alpha-4060120250318001"
91
+ "@dcloudio/uni-uts-v1": "3.0.0-alpha-4050720250320001"
92
92
  }
93
93
  }
@@ -1,10 +0,0 @@
1
- MIT License
2
- -----------
3
-
4
- Copyright (C) 2018-2022 Guy Bedford
5
-
6
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
7
-
8
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
9
-
10
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1 +0,0 @@
1
- "use strict";exports.initSync=exports.init=exports.ImportType=void 0,exports.parse=parse;var ImportType=exports.ImportType=function(A){return A[A.Static=1]="Static",A[A.Dynamic=2]="Dynamic",A[A.ImportMeta=3]="ImportMeta",A[A.StaticSourcePhase=4]="StaticSourcePhase",A[A.DynamicSourcePhase=5]="DynamicSourcePhase",A}({});const A=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(E,g="@"){if(!C)return init.then((()=>parse(E)));const I=E.length+1,w=(C.__heap_base.value||C.__heap_base)+4*I-C.memory.buffer.byteLength;w>0&&C.memory.grow(Math.ceil(w/65536));const o=C.sa(I-1);if((A?B:Q)(E,new Uint16Array(C.memory.buffer,o,I)),!C.parse())throw Object.assign(new Error(`Parse error ${g}:${E.slice(0,C.e()).split("\n").length}:${C.e()-E.lastIndexOf("\n",C.e()-1)}`),{idx:C.e()});const D=[],L=[];for(;C.ri();){const A=C.is(),Q=C.ie(),B=C.it(),g=C.ai(),I=C.id(),w=C.ss(),o=C.se();let L;C.ip()&&(L=K(E.slice(-1===I?A-1:A,-1===I?Q+1:Q))),D.push({n:L,t:B,s:A,e:Q,ss:w,se:o,d:I,a:g})}for(;C.re();){const A=C.es(),Q=C.ee(),B=C.els(),g=C.ele(),I=E.slice(A,Q),w=I[0],o=B<0?void 0:E.slice(B,g),D=o?o[0]:"";L.push({s:A,e:Q,ls:B,le:g,n:'"'===w||"'"===w?K(I):I,ln:'"'===D||"'"===D?K(o):o})}function K(A){try{return(0,eval)(A)}catch(A){}}return[D,L,!!C.f(),!!C.ms()]}function Q(A,Q){const B=A.length;let C=0;for(;C<B;){const B=A.charCodeAt(C);Q[C++]=(255&B)<<8|B>>>8}}function B(A,Q){const B=A.length;let C=0;for(;C<B;)Q[C]=A.charCodeAt(C++)}let C;const E=()=>{return A="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","undefined"!=typeof Buffer?Buffer.from(A,"base64"):Uint8Array.from(atob(A),(A=>A.charCodeAt(0)));var A},init=exports.init=WebAssembly.compile(E()).then(WebAssembly.instantiate).then((({exports:A})=>{C=A})),initSync=()=>{if(C)return;const A=new WebAssembly.Module(E());C=new WebAssembly.Instance(A).exports};exports.initSync=initSync;
@@ -1,2 +0,0 @@
1
- /* es-module-lexer 1.6.0 */
2
- export var ImportType=function(A){return A[A.Static=1]="Static",A[A.Dynamic=2]="Dynamic",A[A.ImportMeta=3]="ImportMeta",A[A.StaticSourcePhase=4]="StaticSourcePhase",A[A.DynamicSourcePhase=5]="DynamicSourcePhase",A}({});const A=1===new Uint8Array(new Uint16Array([1]).buffer)[0];export function parse(E,g="@"){if(!C)return init.then((()=>parse(E)));const I=E.length+1,w=(C.__heap_base.value||C.__heap_base)+4*I-C.memory.buffer.byteLength;w>0&&C.memory.grow(Math.ceil(w/65536));const o=C.sa(I-1);if((A?B:Q)(E,new Uint16Array(C.memory.buffer,o,I)),!C.parse())throw Object.assign(new Error(`Parse error ${g}:${E.slice(0,C.e()).split("\n").length}:${C.e()-E.lastIndexOf("\n",C.e()-1)}`),{idx:C.e()});const D=[],L=[];for(;C.ri();){const A=C.is(),Q=C.ie(),B=C.it(),g=C.ai(),I=C.id(),w=C.ss(),o=C.se();let L;C.ip()&&(L=K(E.slice(-1===I?A-1:A,-1===I?Q+1:Q))),D.push({n:L,t:B,s:A,e:Q,ss:w,se:o,d:I,a:g})}for(;C.re();){const A=C.es(),Q=C.ee(),B=C.els(),g=C.ele(),I=E.slice(A,Q),w=I[0],o=B<0?void 0:E.slice(B,g),D=o?o[0]:"";L.push({s:A,e:Q,ls:B,le:g,n:'"'===w||"'"===w?K(I):I,ln:'"'===D||"'"===D?K(o):o})}function K(A){try{return(0,eval)(A)}catch(A){}}return[D,L,!!C.f(),!!C.ms()]}function Q(A,Q){const B=A.length;let C=0;for(;C<B;){const B=A.charCodeAt(C);Q[C++]=(255&B)<<8|B>>>8}}function B(A,Q){const B=A.length;let C=0;for(;C<B;)Q[C]=A.charCodeAt(C++)}let C;const E=()=>{return A="AGFzbQEAAAABKwhgAX8Bf2AEf39/fwBgAAF/YAAAYAF/AGADf39/AX9gAn9/AX9gA39/fwADMTAAAQECAgICAgICAgICAgICAgICAgIAAwMDBAQAAAUAAAAAAAMDAwAGAAAABwAGAgUEBQFwAQEBBQMBAAEGDwJ/AUHg8gALfwBB4PIACwd6FQZtZW1vcnkCAAJzYQAAAWUAAwJpcwAEAmllAAUCc3MABgJzZQAHAml0AAgCYWkACQJpZAAKAmlwAAsCZXMADAJlZQANA2VscwAOA2VsZQAPAnJpABACcmUAEQFmABICbXMAEwVwYXJzZQAUC19faGVhcF9iYXNlAwEK4kIwaAEBf0EAIAA2ApwKQQAoAvgJIgEgAEEBdGoiAEEAOwEAQQAgAEECaiIANgKgCkEAIAA2AqQKQQBBADYC/AlBAEEANgKMCkEAQQA2AoQKQQBBADYCgApBAEEANgKUCkEAQQA2AogKIAEL0wEBA39BACgCjAohBEEAQQAoAqQKIgU2AowKQQAgBDYCkApBACAFQSRqNgKkCiAEQSBqQfwJIAQbIAU2AgBBACgC8AkhBEEAKALsCSEGIAUgATYCACAFIAA2AgggBSACIAJBAmpBACAGIANGIgAbIAQgA0YiBBs2AgwgBSADNgIUIAVBADYCECAFIAI2AgQgBUEANgIgIAVBA0EBQQIgABsgBBs2AhwgBUEAKALsCSADRiICOgAYAkACQCACDQBBACgC8AkgA0cNAQtBAEEBOgCoCgsLXgEBf0EAKAKUCiIEQRBqQYAKIAQbQQAoAqQKIgQ2AgBBACAENgKUCkEAIARBFGo2AqQKQQBBAToAqAogBEEANgIQIAQgAzYCDCAEIAI2AgggBCABNgIEIAQgADYCAAsIAEEAKAKsCgsVAEEAKAKECigCAEEAKAL4CWtBAXULHgEBf0EAKAKECigCBCIAQQAoAvgJa0EBdUF/IAAbCxUAQQAoAoQKKAIIQQAoAvgJa0EBdQseAQF/QQAoAoQKKAIMIgBBACgC+AlrQQF1QX8gABsLCwBBACgChAooAhwLHgEBf0EAKAKECigCECIAQQAoAvgJa0EBdUF/IAAbCzsBAX8CQEEAKAKECigCFCIAQQAoAuwJRw0AQX8PCwJAIABBACgC8AlHDQBBfg8LIABBACgC+AlrQQF1CwsAQQAoAoQKLQAYCxUAQQAoAogKKAIAQQAoAvgJa0EBdQsVAEEAKAKICigCBEEAKAL4CWtBAXULHgEBf0EAKAKICigCCCIAQQAoAvgJa0EBdUF/IAAbCx4BAX9BACgCiAooAgwiAEEAKAL4CWtBAXVBfyAAGwslAQF/QQBBACgChAoiAEEgakH8CSAAGygCACIANgKECiAAQQBHCyUBAX9BAEEAKAKICiIAQRBqQYAKIAAbKAIAIgA2AogKIABBAEcLCABBAC0AsAoLCABBAC0AqAoL3Q0BBX8jAEGA0ABrIgAkAEEAQQE6ALAKQQBBACgC9Ak2ArgKQQBBACgC+AlBfmoiATYCzApBACABQQAoApwKQQF0aiICNgLQCkEAQQA6AKgKQQBBADsBsgpBAEEAOwG0CkEAQQA6ALwKQQBBADYCrApBAEEAOgCYCkEAIABBgBBqNgLACkEAIAA2AsQKQQBBADoAyAoCQAJAAkACQANAQQAgAUECaiIDNgLMCiABIAJPDQECQCADLwEAIgJBd2pBBUkNAAJAAkACQAJAAkAgAkGbf2oOBQEICAgCAAsgAkEgRg0EIAJBL0YNAyACQTtGDQIMBwtBAC8BtAoNASADEBVFDQEgAUEEakGCCEEKEC8NARAWQQAtALAKDQFBAEEAKALMCiIBNgK4CgwHCyADEBVFDQAgAUEEakGMCEEKEC8NABAXC0EAQQAoAswKNgK4CgwBCwJAIAEvAQQiA0EqRg0AIANBL0cNBBAYDAELQQEQGQtBACgC0AohAkEAKALMCiEBDAALC0EAIQIgAyEBQQAtAJgKDQIMAQtBACABNgLMCkEAQQA6ALAKCwNAQQAgAUECaiIDNgLMCgJAAkACQAJAAkACQAJAIAFBACgC0ApPDQAgAy8BACICQXdqQQVJDQYCQAJAAkACQAJAAkACQAJAAkACQCACQWBqDgoQDwYPDw8PBQECAAsCQAJAAkACQCACQaB/ag4KCxISAxIBEhISAgALIAJBhX9qDgMFEQYJC0EALwG0Cg0QIAMQFUUNECABQQRqQYIIQQoQLw0QEBYMEAsgAxAVRQ0PIAFBBGpBjAhBChAvDQ8QFwwPCyADEBVFDQ4gASkABELsgISDsI7AOVINDiABLwEMIgNBd2oiAUEXSw0MQQEgAXRBn4CABHFFDQwMDQtBAEEALwG0CiIBQQFqOwG0CkEAKALACiABQQN0aiIBQQE2AgAgAUEAKAK4CjYCBAwNC0EALwG0CiIDRQ0JQQAgA0F/aiIDOwG0CkEALwGyCiICRQ0MQQAoAsAKIANB//8DcUEDdGooAgBBBUcNDAJAIAJBAnRBACgCxApqQXxqKAIAIgMoAgQNACADQQAoArgKQQJqNgIEC0EAIAJBf2o7AbIKIAMgAUEEajYCDAwMCwJAQQAoArgKIgEvAQBBKUcNAEEAKAKMCiIDRQ0AIAMoAgQgAUcNAEEAQQAoApAKIgM2AowKAkAgA0UNACADQQA2AiAMAQtBAEEANgL8CQtBAEEALwG0CiIDQQFqOwG0CkEAKALACiADQQN0aiIDQQZBAkEALQDIChs2AgAgAyABNgIEQQBBADoAyAoMCwtBAC8BtAoiAUUNB0EAIAFBf2oiATsBtApBACgCwAogAUH//wNxQQN0aigCAEEERg0EDAoLQScQGgwJC0EiEBoMCAsgAkEvRw0HAkACQCABLwEEIgFBKkYNACABQS9HDQEQGAwKC0EBEBkMCQsCQAJAAkACQEEAKAK4CiIBLwEAIgMQG0UNAAJAAkAgA0FVag4EAAkBAwkLIAFBfmovAQBBK0YNAwwICyABQX5qLwEAQS1GDQIMBwsgA0EpRw0BQQAoAsAKQQAvAbQKIgJBA3RqKAIEEBxFDQIMBgsgAUF+ai8BAEFQakH//wNxQQpPDQULQQAvAbQKIQILAkACQCACQf//A3EiAkUNACADQeYARw0AQQAoAsAKIAJBf2pBA3RqIgQoAgBBAUcNACABQX5qLwEAQe8ARw0BIAQoAgRBlghBAxAdRQ0BDAULIANB/QBHDQBBACgCwAogAkEDdGoiAigCBBAeDQQgAigCAEEGRg0ECyABEB8NAyADRQ0DIANBL0ZBAC0AvApBAEdxDQMCQEEAKAKUCiICRQ0AIAEgAigCAEkNACABIAIoAgRNDQQLIAFBfmohAUEAKAL4CSECAkADQCABQQJqIgQgAk0NAUEAIAE2ArgKIAEvAQAhAyABQX5qIgQhASADECBFDQALIARBAmohBAsCQCADQf//A3EQIUUNACAEQX5qIQECQANAIAFBAmoiAyACTQ0BQQAgATYCuAogAS8BACEDIAFBfmoiBCEBIAMQIQ0ACyAEQQJqIQMLIAMQIg0EC0EAQQE6ALwKDAcLQQAoAsAKQQAvAbQKIgFBA3QiA2pBACgCuAo2AgRBACABQQFqOwG0CkEAKALACiADakEDNgIACxAjDAULQQAtAJgKQQAvAbIKQQAvAbQKcnJFIQIMBwsQJEEAQQA6ALwKDAMLECVBACECDAULIANBoAFHDQELQQBBAToAyAoLQQBBACgCzAo2ArgKC0EAKALMCiEBDAALCyAAQYDQAGokACACCxoAAkBBACgC+AkgAEcNAEEBDwsgAEF+ahAmC8UMAQZ/QQBBACgCzAoiAEEMaiIBNgLMCkEAKAKUCiECQQEQKSEDAkACQAJAAkACQAJAAkACQAJAQQAoAswKIgQgAUcNACADEChFDQELAkACQAJAAkACQAJAAkAgA0EqRg0AIANB+wBHDQFBACAEQQJqNgLMCkEBECkhA0EAKALMCiEFA0ACQAJAIANB//8DcSIDQSJGDQAgA0EnRg0AIAMQLBpBACgCzAohAwwBCyADEBpBAEEAKALMCkECaiIDNgLMCgtBARApGgJAIAUgAxAtIgNBLEcNAEEAQQAoAswKQQJqNgLMCkEBECkhAwsgA0H9AEYNA0EAKALMCiIEIAVGDQ8gBCEFIARBACgC0ApNDQAMDwsLQQAgBEECajYCzApBARApGkEAKALMCiIDIAMQLRoMAgtBAEEAOgCwCgJAAkACQAJAAkACQAJAAkAgA0Gff2oODAINBAENAw0NBw0NBQALIANBjH9qDgMFDAQMC0EAIARBDmoiAzYCzAoCQAJAAkBBARApQZ9/ag4GABQCFBQBFAtBACgCzAoiBSkAAkLzgOSD4I3AMVINEyAFLwEKECFFDRNBACAFQQpqNgLMCkEAECkaC0EAKALMCiIFQQJqQbIIQQ4QLw0SIAUvARAiAkF3aiIBQRdLDQ9BASABdEGfgIAEcUUNDwwQC0EAKALMCiIFKQACQuyAhIOwjsA5Ug0RIAUvAQoiAkF3aiIBQRdNDQgMDAtBACAEQQpqNgLMCkEAECkaQQAoAswKIQQLQQAgBEEQajYCzAoCQEEBECkiBUEqRw0AQQBBACgCzApBAmo2AswKQQEQKSEFC0EAKALMCiEDIAUQLBogA0EAKALMCiIFIAMgBRACQQBBACgCzApBfmo2AswKDwsCQCAEKQACQuyAhIOwjsA5Ug0AIAQvAQoQIEUNAEEAIARBCmo2AswKQQEQKSEFQQAoAswKIQMgBRAsGiADQQAoAswKIgUgAyAFEAJBAEEAKALMCkF+ajYCzAoPC0EAIARBBGoiBDYCzAoLQQAgBEEGajYCzApBAEEAOgCwCkEBECkhBEEAKALMCiEDIAQQLCEEQQAoAswKIQIgBEHf/wNxIgFB2wBHDQVBACACQQJqNgLMCkEBECkhBUEAKALMCiEDQQAhBAwGCyAELwACQfkARw0GIAQvAQRB8ABHDQYgBC8BBkHlAEcNBiAELwEIECFFDQZBACAEQQhqNgLMCkEBECkhBUEAKALMCiEDIAUQLBogA0EAKALMCiIFIAMgBRACQQBBACgCzApBfmo2AswKDwsgBEECakHQCEEQEC8NBSAELwESECFFDQVBACAEQRJqNgLMCkEBECkhBUEAKALMCiEDIAUQLBogA0EAKALMCiIFIAMgBRACQQBBACgCzApBfmo2AswKDwtBAEEBOgCoCkEAQQAoAswKQQJqNgLMCgtBARApIQVBACgCzAohAwJAIAVB5gBHDQAgA0ECakGsCEEGEC8NAEEAIANBCGo2AswKIABBARApQQAQKyACQRBqQYAKIAIbIQMDQCADKAIAIgNFDQUgA0IANwIIIANBEGohAwwACwtBACADQX5qNgLMCgwDC0EBIAF0QZ+AgARxRQ0DDAQLQQEhBAsDQAJAAkAgBA4CAAEBCyAFQf//A3EQLBpBASEEDAELAkACQEEAKALMCiIFIANGDQAgAyAFIAMgBRACQQEQKSEFAkAgAUHbAEcNACAFQSByQf0ARg0EC0EAKALMCiEDAkAgBUEsRw0AQQAgA0ECajYCzApBARApIQVBACgCzAohAyAFQSByQfsARw0CC0EAIANBfmo2AswKCyABQdsARw0CQQAgAkF+ajYCzAoPC0EAIQQMAAsLDwsgAkGgAUYNACACQfsARw0EC0EAIAVBCmo2AswKQQEQKSIFQfsARg0DDAILAkAgAkFYag4DAQMBAAsgAkGgAUcNAgtBACAFQRBqNgLMCgJAQQEQKSIFQSpHDQBBAEEAKALMCkECajYCzApBARApIQULIAVBKEYNAQtBACgCzAohASAFECwaQQAoAswKIgUgAU0NACAEIAMgASAFEAJBAEEAKALMCkF+ajYCzAoPCyAEIANBAEEAEAJBACAEQQxqNgLMCg8LECUL3AgBBn9BACEAQQBBACgCzAoiAUEMaiICNgLMCkEBECkhA0EAKALMCiEEAkACQAJAAkACQAJAAkACQCADQS5HDQBBACAEQQJqNgLMCgJAQQEQKSIDQfMARg0AIANB7QBHDQdBACgCzAoiA0ECakGcCEEGEC8NBwJAQQAoArgKIgQQKg0AIAQvAQBBLkYNCAsgASABIANBCGpBACgC8AkQAQ8LQQAoAswKIgNBAmpBoghBChAvDQYCQEEAKAK4CiIEECoNACAELwEAQS5GDQcLIANBDGohAwwBCyADQfMARw0BIAQgAk0NAUEGIQBBACECIARBAmpBoghBChAvDQIgBEEMaiEDAkAgBC8BDCIFQXdqIgRBF0sNAEEBIAR0QZ+AgARxDQELIAVBoAFHDQILQQAgAzYCzApBASEAQQEQKSEDCwJAAkACQAJAIANB+wBGDQAgA0EoRw0BQQAoAsAKQQAvAbQKIgNBA3RqIgRBACgCzAo2AgRBACADQQFqOwG0CiAEQQU2AgBBACgCuAovAQBBLkYNB0EAQQAoAswKIgRBAmo2AswKQQEQKSEDIAFBACgCzApBACAEEAECQAJAIAANAEEAKAKMCiEEDAELQQAoAowKIgRBBTYCHAtBAEEALwGyCiIAQQFqOwGyCkEAKALECiAAQQJ0aiAENgIAAkAgA0EiRg0AIANBJ0YNAEEAQQAoAswKQX5qNgLMCg8LIAMQGkEAQQAoAswKQQJqIgM2AswKAkACQAJAQQEQKUFXag4EAQICAAILQQBBACgCzApBAmo2AswKQQEQKRpBACgCjAoiBCADNgIEIARBAToAGCAEQQAoAswKIgM2AhBBACADQX5qNgLMCg8LQQAoAowKIgQgAzYCBCAEQQE6ABhBAEEALwG0CkF/ajsBtAogBEEAKALMCkECajYCDEEAQQAvAbIKQX9qOwGyCg8LQQBBACgCzApBfmo2AswKDwsgAA0CQQAoAswKIQNBAC8BtAoNAQNAAkACQAJAIANBACgC0ApPDQBBARApIgNBIkYNASADQSdGDQEgA0H9AEcNAkEAQQAoAswKQQJqNgLMCgtBARApIQRBACgCzAohAwJAIARB5gBHDQAgA0ECakGsCEEGEC8NCQtBACADQQhqNgLMCgJAQQEQKSIDQSJGDQAgA0EnRw0JCyABIANBABArDwsgAxAaC0EAQQAoAswKQQJqIgM2AswKDAALCyAADQFBBiEAQQAhAgJAIANBWWoOBAQDAwQACyADQSJGDQMMAgtBACADQX5qNgLMCg8LQQwhAEEBIQILQQAoAswKIgMgASAAQQF0akcNAEEAIANBfmo2AswKDwtBAC8BtAoNAkEAKALMCiEDQQAoAtAKIQADQCADIABPDQECQAJAIAMvAQAiBEEnRg0AIARBIkcNAQsgASAEIAIQKw8LQQAgA0ECaiIDNgLMCgwACwsQJQsPC0EAQQAoAswKQX5qNgLMCgtHAQN/QQAoAswKQQJqIQBBACgC0AohAQJAA0AgACICQX5qIAFPDQEgAkECaiEAIAIvAQBBdmoOBAEAAAEACwtBACACNgLMCguYAQEDf0EAQQAoAswKIgFBAmo2AswKIAFBBmohAUEAKALQCiECA0ACQAJAAkAgAUF8aiACTw0AIAFBfmovAQAhAwJAAkAgAA0AIANBKkYNASADQXZqDgQCBAQCBAsgA0EqRw0DCyABLwEAQS9HDQJBACABQX5qNgLMCgwBCyABQX5qIQELQQAgATYCzAoPCyABQQJqIQEMAAsLiAEBBH9BACgCzAohAUEAKALQCiECAkACQANAIAEiA0ECaiEBIAMgAk8NASABLwEAIgQgAEYNAgJAIARB3ABGDQAgBEF2ag4EAgEBAgELIANBBGohASADLwEEQQ1HDQAgA0EGaiABIAMvAQZBCkYbIQEMAAsLQQAgATYCzAoQJQ8LQQAgATYCzAoLbAEBfwJAAkAgAEFfaiIBQQVLDQBBASABdEExcQ0BCyAAQUZqQf//A3FBBkkNACAAQSlHIABBWGpB//8DcUEHSXENAAJAIABBpX9qDgQBAAABAAsgAEH9AEcgAEGFf2pB//8DcUEESXEPC0EBCy4BAX9BASEBAkAgAEHCCUEFEB0NACAAQZYIQQMQHQ0AIABBzAlBAhAdIQELIAELRgEDf0EAIQMCQCAAIAJBAXQiAmsiBEECaiIAQQAoAvgJIgVJDQAgACABIAIQLw0AAkAgACAFRw0AQQEPCyAEECYhAwsgAwuDAQECf0EBIQECQAJAAkACQAJAAkAgAC8BACICQUVqDgQFBAQBAAsCQCACQZt/ag4EAwQEAgALIAJBKUYNBCACQfkARw0DIABBfmpB2AlBBhAdDwsgAEF+ai8BAEE9Rg8LIABBfmpB0AlBBBAdDwsgAEF+akHkCUEDEB0PC0EAIQELIAELtAMBAn9BACEBAkACQAJAAkACQAJAAkACQAJAAkAgAC8BAEGcf2oOFAABAgkJCQkDCQkEBQkJBgkHCQkICQsCQAJAIABBfmovAQBBl39qDgQACgoBCgsgAEF8akHqCEECEB0PCyAAQXxqQe4IQQMQHQ8LAkACQAJAIABBfmovAQBBjX9qDgMAAQIKCwJAIABBfGovAQAiAkHhAEYNACACQewARw0KIABBempB5QAQJw8LIABBempB4wAQJw8LIABBfGpB9AhBBBAdDwsgAEF8akH8CEEGEB0PCyAAQX5qLwEAQe8ARw0GIABBfGovAQBB5QBHDQYCQCAAQXpqLwEAIgJB8ABGDQAgAkHjAEcNByAAQXhqQYgJQQYQHQ8LIABBeGpBwAhBAhAdDwsgAEF+akGUCUEEEB0PC0EBIQEgAEF+aiIAQekAECcNBCAAQZwJQQUQHQ8LIABBfmpB5AAQJw8LIABBfmpBpglBBxAdDwsgAEF+akG0CUEEEB0PCwJAIABBfmovAQAiAkHvAEYNACACQeUARw0BIABBfGpB7gAQJw8LIABBfGpBvAlBAxAdIQELIAELNAEBf0EBIQECQCAAQXdqQf//A3FBBUkNACAAQYABckGgAUYNACAAQS5HIAAQKHEhAQsgAQswAQF/AkACQCAAQXdqIgFBF0sNAEEBIAF0QY2AgARxDQELIABBoAFGDQBBAA8LQQELTgECf0EAIQECQAJAIAAvAQAiAkHlAEYNACACQesARw0BIABBfmpBlAlBBBAdDwsgAEF+ai8BAEH1AEcNACAAQXxqQfwIQQYQHSEBCyABC94BAQR/QQAoAswKIQBBACgC0AohAQJAAkACQANAIAAiAkECaiEAIAIgAU8NAQJAAkACQCAALwEAIgNBpH9qDgUCAwMDAQALIANBJEcNAiACLwEEQfsARw0CQQAgAkEEaiIANgLMCkEAQQAvAbQKIgJBAWo7AbQKQQAoAsAKIAJBA3RqIgJBBDYCACACIAA2AgQPC0EAIAA2AswKQQBBAC8BtApBf2oiADsBtApBACgCwAogAEH//wNxQQN0aigCAEEDRw0DDAQLIAJBBGohAAwACwtBACAANgLMCgsQJQsLcAECfwJAAkADQEEAQQAoAswKIgBBAmoiATYCzAogAEEAKALQCk8NAQJAAkACQCABLwEAIgFBpX9qDgIBAgALAkAgAUF2ag4EBAMDBAALIAFBL0cNAgwECxAuGgwBC0EAIABBBGo2AswKDAALCxAlCws1AQF/QQBBAToAmApBACgCzAohAEEAQQAoAtAKQQJqNgLMCkEAIABBACgC+AlrQQF1NgKsCgtDAQJ/QQEhAQJAIAAvAQAiAkF3akH//wNxQQVJDQAgAkGAAXJBoAFGDQBBACEBIAIQKEUNACACQS5HIAAQKnIPCyABCz0BAn9BACECAkBBACgC+AkiAyAASw0AIAAvAQAgAUcNAAJAIAMgAEcNAEEBDwsgAEF+ai8BABAgIQILIAILaAECf0EBIQECQAJAIABBX2oiAkEFSw0AQQEgAnRBMXENAQsgAEH4/wNxQShGDQAgAEFGakH//wNxQQZJDQACQCAAQaV/aiICQQNLDQAgAkEBRw0BCyAAQYV/akH//wNxQQRJIQELIAELnAEBA39BACgCzAohAQJAA0ACQAJAIAEvAQAiAkEvRw0AAkAgAS8BAiIBQSpGDQAgAUEvRw0EEBgMAgsgABAZDAELAkACQCAARQ0AIAJBd2oiAUEXSw0BQQEgAXRBn4CABHFFDQEMAgsgAhAhRQ0DDAELIAJBoAFHDQILQQBBACgCzAoiA0ECaiIBNgLMCiADQQAoAtAKSQ0ACwsgAgsxAQF/QQAhAQJAIAAvAQBBLkcNACAAQX5qLwEAQS5HDQAgAEF8ai8BAEEuRiEBCyABC5wEAQF/AkAgAUEiRg0AIAFBJ0YNABAlDwtBACgCzAohAyABEBogACADQQJqQQAoAswKQQAoAuwJEAECQCACRQ0AQQAoAowKQQQ2AhwLQQBBACgCzApBAmo2AswKAkACQAJAAkBBABApIgFB4QBGDQAgAUH3AEYNAUEAKALMCiEBDAILQQAoAswKIgFBAmpB4AhBChAvDQFBBiEADAILQQAoAswKIgEvAQJB6QBHDQAgAS8BBEH0AEcNAEEEIQAgAS8BBkHoAEYNAQtBACABQX5qNgLMCg8LQQAgASAAQQF0ajYCzAoCQEEBEClB+wBGDQBBACABNgLMCg8LQQAoAswKIgIhAANAQQAgAEECajYCzAoCQAJAAkBBARApIgBBIkYNACAAQSdHDQFBJxAaQQBBACgCzApBAmo2AswKQQEQKSEADAILQSIQGkEAQQAoAswKQQJqNgLMCkEBECkhAAwBCyAAECwhAAsCQCAAQTpGDQBBACABNgLMCg8LQQBBACgCzApBAmo2AswKAkBBARApIgBBIkYNACAAQSdGDQBBACABNgLMCg8LIAAQGkEAQQAoAswKQQJqNgLMCgJAAkBBARApIgBBLEYNACAAQf0ARg0BQQAgATYCzAoPC0EAQQAoAswKQQJqNgLMCkEBEClB/QBGDQBBACgCzAohAAwBCwtBACgCjAoiASACNgIQIAFBACgCzApBAmo2AgwLbQECfwJAAkADQAJAIABB//8DcSIBQXdqIgJBF0sNAEEBIAJ0QZ+AgARxDQILIAFBoAFGDQEgACECIAEQKA0CQQAhAkEAQQAoAswKIgBBAmo2AswKIAAvAQIiAA0ADAILCyAAIQILIAJB//8DcQurAQEEfwJAAkBBACgCzAoiAi8BACIDQeEARg0AIAEhBCAAIQUMAQtBACACQQRqNgLMCkEBECkhAkEAKALMCiEFAkACQCACQSJGDQAgAkEnRg0AIAIQLBpBACgCzAohBAwBCyACEBpBAEEAKALMCkECaiIENgLMCgtBARApIQNBACgCzAohAgsCQCACIAVGDQAgBSAEQQAgACAAIAFGIgIbQQAgASACGxACCyADC3IBBH9BACgCzAohAEEAKALQCiEBAkACQANAIABBAmohAiAAIAFPDQECQAJAIAIvAQAiA0Gkf2oOAgEEAAsgAiEAIANBdmoOBAIBAQIBCyAAQQRqIQAMAAsLQQAgAjYCzAoQJUEADwtBACACNgLMCkHdAAtJAQN/QQAhAwJAIAJFDQACQANAIAAtAAAiBCABLQAAIgVHDQEgAUEBaiEBIABBAWohACACQX9qIgINAAwCCwsgBCAFayEDCyADCwuIAgIAQYAIC+oBAAB4AHAAbwByAHQAbQBwAG8AcgB0AGYAbwByAGUAdABhAG8AdQByAGMAZQByAG8AbQB1AG4AYwB0AGkAbwBuAHQAeQAAAAAAAAAAAAAAAABuAHQAZQByAGYAYQBjAGUAcwBzAGUAcgB0AHYAbwB5AGkAZQBkAGUAbABlAGMAbwBuAHQAaQBuAGkAbgBzAHQAYQBuAGIAcgBlAGEAcgBlAHQAdQByAGQAZQBiAHUAZwBnAGUAYQB3AGEAaQB0AGgAcgB3AGgAaQBsAGUAaQBmAGMAYQB0AGMAZgBpAG4AYQBsAGwAZQBsAHMAAEHsCQsQAQAAAAIAAAAABAAAYDkAAA==","undefined"!=typeof Buffer?Buffer.from(A,"base64"):Uint8Array.from(atob(A),(A=>A.charCodeAt(0)));var A};export const init=WebAssembly.compile(E()).then(WebAssembly.instantiate).then((({exports:A})=>{C=A}));export const initSync=()=>{if(C)return;const A=new WebAssembly.Module(E());C=new WebAssembly.Instance(A).exports};
@@ -1,57 +0,0 @@
1
- {
2
- "name": "es-module-lexer",
3
- "version": "1.6.0",
4
- "description": "Lexes ES modules returning their import/export metadata",
5
- "main": "lib/lexer.cjs",
6
- "module": "lib/lexer.js",
7
- "types": "types/lexer.d.ts",
8
- "exports": {
9
- ".": {
10
- "types": "./types/lexer.d.ts",
11
- "module": "./lib/lexer.js",
12
- "import": "./lib/lexer.js",
13
- "require": "./lib/lexer.cjs"
14
- },
15
- "./js": {
16
- "types": "./types/lexer.d.ts",
17
- "default": "./lib/lexer.asm.js"
18
- }
19
- },
20
- "scripts": {
21
- "build": "chomp build",
22
- "test": "chomp test"
23
- },
24
- "author": "Guy Bedford",
25
- "license": "MIT",
26
- "devDependencies": {
27
- "@babel/cli": "^7.5.5",
28
- "@babel/core": "^7.5.5",
29
- "@babel/plugin-transform-modules-commonjs": "^7.5.0",
30
- "@swc/cli": "^0.1.57",
31
- "@swc/core": "^1.2.224",
32
- "@types/node": "^18.7.1",
33
- "kleur": "^2.0.2",
34
- "mocha": "^5.2.0",
35
- "terser": "^5.19.4",
36
- "typescript": "^4.7.4"
37
- },
38
- "files": [
39
- "lib",
40
- "types",
41
- "lexer.js"
42
- ],
43
- "type": "module",
44
- "repository": {
45
- "type": "git",
46
- "url": "git+https://github.com/guybedford/es-module-lexer.git"
47
- },
48
- "bugs": {
49
- "url": "https://github.com/guybedford/es-module-lexer/issues"
50
- },
51
- "homepage": "https://github.com/guybedford/es-module-lexer#readme",
52
- "directories": {
53
- "lib": "lib",
54
- "test": "test"
55
- },
56
- "keywords": []
57
- }
@@ -1,184 +0,0 @@
1
- export declare enum ImportType {
2
- /**
3
- * A normal static using any syntax variations
4
- * import .. from 'module'
5
- */
6
- Static = 1,
7
- /**
8
- * A dynamic import expression `import(specifier)`
9
- * or `import(specifier, opts)`
10
- */
11
- Dynamic = 2,
12
- /**
13
- * An import.meta expression
14
- */
15
- ImportMeta = 3,
16
- /**
17
- * A source phase import
18
- * import source x from 'module'
19
- */
20
- StaticSourcePhase = 4,
21
- /**
22
- * A dynamic source phase import
23
- * import.source('module')
24
- */
25
- DynamicSourcePhase = 5
26
- }
27
- export interface ImportSpecifier {
28
- /**
29
- * Module name
30
- *
31
- * To handle escape sequences in specifier strings, the .n field of imported specifiers will be provided where possible.
32
- *
33
- * For dynamic import expressions, this field will be empty if not a valid JS string.
34
- *
35
- * @example
36
- * const [imports1, exports1] = parse(String.raw`import './\u0061\u0062.js'`);
37
- * imports1[0].n;
38
- * // Returns "./ab.js"
39
- *
40
- * const [imports2, exports2] = parse(`import("./ab.js")`);
41
- * imports2[0].n;
42
- * // Returns "./ab.js"
43
- *
44
- * const [imports3, exports3] = parse(`import("./" + "ab.js")`);
45
- * imports3[0].n;
46
- * // Returns undefined
47
- */
48
- readonly n: string | undefined;
49
- /**
50
- * Type of import statement
51
- */
52
- readonly t: ImportType;
53
- /**
54
- * Start of module specifier
55
- *
56
- * @example
57
- * const source = `import { a } from 'asdf'`;
58
- * const [imports, exports] = parse(source);
59
- * source.substring(imports[0].s, imports[0].e);
60
- * // Returns "asdf"
61
- */
62
- readonly s: number;
63
- /**
64
- * End of module specifier
65
- */
66
- readonly e: number;
67
- /**
68
- * Start of import statement
69
- *
70
- * @example
71
- * const source = `import { a } from 'asdf'`;
72
- * const [imports, exports] = parse(source);
73
- * source.substring(imports[0].ss, imports[0].se);
74
- * // Returns "import { a } from 'asdf';"
75
- */
76
- readonly ss: number;
77
- /**
78
- * End of import statement
79
- */
80
- readonly se: number;
81
- /**
82
- * If this import keyword is a dynamic import, this is the start value.
83
- * If this import keyword is a static import, this is -1.
84
- * If this import keyword is an import.meta expresion, this is -2.
85
- */
86
- readonly d: number;
87
- /**
88
- * If this import has an import assertion, this is the start value.
89
- * Otherwise this is `-1`.
90
- */
91
- readonly a: number;
92
- }
93
- export interface ExportSpecifier {
94
- /**
95
- * Exported name
96
- *
97
- * @example
98
- * const source = `export default []`;
99
- * const [imports, exports] = parse(source);
100
- * exports[0].n;
101
- * // Returns "default"
102
- *
103
- * @example
104
- * const source = `export const asdf = 42`;
105
- * const [imports, exports] = parse(source);
106
- * exports[0].n;
107
- * // Returns "asdf"
108
- */
109
- readonly n: string;
110
- /**
111
- * Local name, or undefined.
112
- *
113
- * @example
114
- * const source = `export default []`;
115
- * const [imports, exports] = parse(source);
116
- * exports[0].ln;
117
- * // Returns undefined
118
- *
119
- * @example
120
- * const asdf = 42;
121
- * const source = `export { asdf as a }`;
122
- * const [imports, exports] = parse(source);
123
- * exports[0].ln;
124
- * // Returns "asdf"
125
- */
126
- readonly ln: string | undefined;
127
- /**
128
- * Start of exported name
129
- *
130
- * @example
131
- * const source = `export default []`;
132
- * const [imports, exports] = parse(source);
133
- * source.substring(exports[0].s, exports[0].e);
134
- * // Returns "default"
135
- *
136
- * @example
137
- * const source = `export { 42 as asdf }`;
138
- * const [imports, exports] = parse(source);
139
- * source.substring(exports[0].s, exports[0].e);
140
- * // Returns "asdf"
141
- */
142
- readonly s: number;
143
- /**
144
- * End of exported name
145
- */
146
- readonly e: number;
147
- /**
148
- * Start of local name, or -1.
149
- *
150
- * @example
151
- * const asdf = 42;
152
- * const source = `export { asdf as a }`;
153
- * const [imports, exports] = parse(source);
154
- * source.substring(exports[0].ls, exports[0].le);
155
- * // Returns "asdf"
156
- */
157
- readonly ls: number;
158
- /**
159
- * End of local name, or -1.
160
- */
161
- readonly le: number;
162
- }
163
- export interface ParseError extends Error {
164
- idx: number;
165
- }
166
- /**
167
- * Outputs the list of exports and locations of import specifiers,
168
- * including dynamic import and import meta handling.
169
- *
170
- * @param source Source code to parser
171
- * @param name Optional sourcename
172
- * @returns Tuple contaning imports list and exports list.
173
- */
174
- export declare function parse(source: string, name?: string): readonly [
175
- imports: ReadonlyArray<ImportSpecifier>,
176
- exports: ReadonlyArray<ExportSpecifier>,
177
- facade: boolean,
178
- hasModuleSyntax: boolean
179
- ];
180
- /**
181
- * Wait for init to resolve before calling `parse`.
182
- */
183
- export declare const init: Promise<void>;
184
- export declare const initSync: () => void;