@heathenjs/taro-router-generator 1.0.8 → 1.0.10

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.

Potentially problematic release.


This version of @heathenjs/taro-router-generator might be problematic. Click here for more details.

package/dist/index.d.ts CHANGED
@@ -23,7 +23,7 @@ export declare class Generator {
23
23
  /** 生成路由方法 */
24
24
  private generateRouterNavigateMethod;
25
25
  /** 生成页面对象的集合 */
26
- private generateGetPagesMethod;
26
+ private generatePagesSet;
27
27
  private createRouterSourceFile;
28
28
  private overrideRouter;
29
29
  generateRouter(): void;
package/dist/index.js CHANGED
@@ -4,14 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Generator = void 0;
7
- const package_json_1 = __importDefault(require("@heathenjs/taro-router/package.json"));
8
7
  const fs_1 = __importDefault(require("fs"));
9
8
  const ignore_1 = __importDefault(require("ignore"));
10
9
  const normalize_path_1 = __importDefault(require("normalize-path"));
11
10
  const path_1 = __importDefault(require("path"));
12
11
  const ts_morph_1 = require("ts-morph");
13
12
  const utils_1 = require("./utils");
14
- const TARGET_MODULE_PATH = path_1.default.resolve('node_modules', package_json_1.default.name);
13
+ const ora_1 = __importDefault(require("ora"));
14
+ const TARGET_MODULE_PATH = path_1.default.resolve('node_modules', '@heathenjs/taro-router');
15
15
  const ACCEPTS_INDEX_FILE = ['index.js', 'index.jsx', 'index.jsx', 'index.tsx'];
16
16
  const CURRENT_PATH = process.cwd();
17
17
  const SOURCE_PATH = path_1.default.resolve(CURRENT_PATH, './src');
@@ -24,14 +24,15 @@ class Generator {
24
24
  });
25
25
  const mainPackages = packages.filter((pkg) => pkg.isMainPackage);
26
26
  if (!mainPackages.length) {
27
- console.warn('[Generator]: 没有检测到主包,请确认配置');
28
- throw new Error('[Generator]: 没有检测到主包,请确认配置');
27
+ console.warn('[@heathenjs/taro-router]: 没有检测到主包,请确认配置');
28
+ throw new Error('[@heathenjs/taro-router]: 没有检测到主包,请确认配置');
29
29
  }
30
30
  else if (mainPackages.length > 1) {
31
- console.warn('[Generator]: 存在多个配置的主包,将使用首个主包');
31
+ console.warn('[@heathenjs/taro-router]: 存在多个配置的主包,将使用首个主包');
32
32
  }
33
33
  this.mainPackageName = (_a = mainPackages[0]) === null || _a === void 0 ? void 0 : _a.name;
34
34
  const ignoreFilter = (0, ignore_1.default)().add(ignore).createFilter();
35
+ const spinner = (0, ora_1.default)('开始解析页面...').start();
35
36
  for (const pkg of packages) {
36
37
  const pkgPagePath = path_1.default.resolve(CURRENT_PATH, pkg.pagePath);
37
38
  const routeConfigSourceFiles = this.tsProject.addSourceFilesAtPaths(path_1.default.join(pkgPagePath, '/**/route.config.ts'));
@@ -85,12 +86,10 @@ class Generator {
85
86
  }, {})
86
87
  : undefined,
87
88
  });
88
- // Logger.log(
89
- // LOG_TYPE.GENERATE,
90
- // `Router.${pkg.name === MAIN_PACKAGE_NAME ? '' : `${pkg.name}.`}to${formatPageDir(dirName)}`,
91
- // );
89
+ spinner.text = `Router.${pkg.name === this.mainPackageName ? '' : `${pkg.name}.`}to${(0, utils_1.formatPageDir)(dirName)}`;
92
90
  }
93
91
  }
92
+ spinner.succeed('页面解析成功');
94
93
  }
95
94
  /** 生成路由方法 */
96
95
  generateRouterNavigateMethod() {
@@ -146,25 +145,35 @@ class Generator {
146
145
  return methodText;
147
146
  }
148
147
  /** 生成页面对象的集合 */
149
- generateGetPagesMethod() {
150
- const pageSet = this.pages.reduce((store, page) => {
151
- const methodName = (0, utils_1.formatPageDir)(page.dirName);
148
+ generatePagesSet() {
149
+ const pathToPageObj = {};
150
+ const methodLikePathObj = {};
151
+ for (let A = 0; A < this.pages.length; ++A) {
152
+ const currentPage = this.pages[A];
153
+ pathToPageObj[currentPage.path] = currentPage;
154
+ const methodName = (0, utils_1.formatPageDir)(currentPage.dirName);
152
155
  const pageName = methodName.replace(/^(\w)/g, (_, letter) => {
153
156
  return letter.toLowerCase();
154
157
  });
155
- if (page.packageName === this.mainPackageName) {
156
- return Object.assign(Object.assign({}, store), { [pageName]: {
157
- path: page.path,
158
- } });
158
+ if (currentPage.packageName === this.mainPackageName) {
159
+ methodLikePathObj[pageName] = {
160
+ path: currentPage.path,
161
+ };
159
162
  }
160
163
  else {
161
- return Object.assign(Object.assign({}, store), { [page.packageName]: Object.assign(Object.assign({}, (store[page.packageName] || {})), { [pageName]: {
162
- path: page.path,
163
- } }) });
164
+ if (!methodLikePathObj[currentPage.packageName]) {
165
+ methodLikePathObj[currentPage.packageName] = {};
166
+ }
167
+ methodLikePathObj[currentPage.packageName][pageName] = {
168
+ path: currentPage.path,
169
+ };
164
170
  }
165
- }, {});
166
- return `private static _pages = ${JSON.stringify(pageSet)}
167
- static getPages = () => { return Router._pages };`;
171
+ }
172
+ return [
173
+ `private static _methodLikePathObj = ${JSON.stringify(methodLikePathObj)}`,
174
+ `private static _pathToPageMap = ${JSON.stringify(pathToPageObj)}`,
175
+ `static getPages = () => { return Router._methodLikePathObj }`,
176
+ ].join('\n');
168
177
  }
169
178
  createRouterSourceFile() {
170
179
  return this.tsProject.createSourceFile('temp.ts', (writer) => {
@@ -174,7 +183,7 @@ class Generator {
174
183
  writer.writeLine('type Params<P> = RequiredKeys<P> extends never ? { params?: P } : { params: P }');
175
184
  writer.writeLine('class Router {');
176
185
  writer.write(this.generateRouterNavigateMethod());
177
- writer.write(this.generateGetPagesMethod());
186
+ writer.write(this.generatePagesSet());
178
187
  writer.writeLine('}');
179
188
  });
180
189
  }
@@ -192,10 +201,12 @@ class Generator {
192
201
  routerSourceFile.emitSync();
193
202
  }
194
203
  generateRouter() {
204
+ const spinner = (0, ora_1.default)('开始生成路由...').start();
195
205
  const sourceFile = this.createRouterSourceFile();
196
206
  this.overrideRouter(sourceFile);
197
207
  sourceFile.delete();
198
- console.log(`已生成 ${this.pages.length} 个页面的路由`);
208
+ console.log(``);
209
+ spinner.succeed(`已生成 ${this.pages.length} 个页面的路由`);
199
210
  }
200
211
  getPages() {
201
212
  return this.pages;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@heathenjs/taro-router-generator",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -13,11 +13,11 @@
13
13
  },
14
14
  "dependencies": {
15
15
  "normalize-path": "^3.0.0",
16
+ "ora": "^8.2.0",
16
17
  "ts-morph": "^21.0.1"
17
18
  },
18
19
  "devDependencies": {
19
- "@types/normalize-path": "^3.0.0",
20
- "@heathenjs/taro-router": "1.0.8"
20
+ "@types/normalize-path": "^3.0.0"
21
21
  },
22
22
  "scripts": {
23
23
  "prod": "tsc -p ./tsconfig.json",
package/src/index.ts CHANGED
@@ -1,4 +1,3 @@
1
- import routerModulePkgJson from '@heathenjs/taro-router/package.json';
2
1
  import fs from 'fs';
3
2
  import createIgnore from 'ignore';
4
3
  import normalize from 'normalize-path';
@@ -6,8 +5,9 @@ import path from 'path';
6
5
  import { Project, SourceFile } from 'ts-morph';
7
6
  import { Page, RouterNavigateMethodConfig } from './type';
8
7
  import { extractValue, formatPageDir } from './utils';
8
+ import ora from 'ora';
9
9
 
10
- const TARGET_MODULE_PATH = path.resolve('node_modules', routerModulePkgJson.name);
10
+ const TARGET_MODULE_PATH = path.resolve('node_modules', '@heathenjs/taro-router');
11
11
  const ACCEPTS_INDEX_FILE = ['index.js', 'index.jsx', 'index.jsx', 'index.tsx'];
12
12
  const CURRENT_PATH = process.cwd();
13
13
  const SOURCE_PATH = path.resolve(CURRENT_PATH, './src');
@@ -36,15 +36,16 @@ export class Generator {
36
36
  constructor({ ignore, packages }: GeneratorOptions) {
37
37
  const mainPackages = packages.filter((pkg) => pkg.isMainPackage);
38
38
  if (!mainPackages.length) {
39
- console.warn('[Generator]: 没有检测到主包,请确认配置');
40
- throw new Error('[Generator]: 没有检测到主包,请确认配置');
39
+ console.warn('[@heathenjs/taro-router]: 没有检测到主包,请确认配置');
40
+ throw new Error('[@heathenjs/taro-router]: 没有检测到主包,请确认配置');
41
41
  } else if (mainPackages.length > 1) {
42
- console.warn('[Generator]: 存在多个配置的主包,将使用首个主包');
42
+ console.warn('[@heathenjs/taro-router]: 存在多个配置的主包,将使用首个主包');
43
43
  }
44
44
  this.mainPackageName = mainPackages[0]?.name;
45
45
 
46
46
  const ignoreFilter = createIgnore().add(ignore).createFilter();
47
47
 
48
+ const spinner = ora('开始解析页面...').start();
48
49
  for (const pkg of packages) {
49
50
  const pkgPagePath = path.resolve(CURRENT_PATH, pkg.pagePath);
50
51
  const routeConfigSourceFiles = this.tsProject.addSourceFilesAtPaths(
@@ -110,12 +111,10 @@ export class Generator {
110
111
  : undefined,
111
112
  });
112
113
 
113
- // Logger.log(
114
- // LOG_TYPE.GENERATE,
115
- // `Router.${pkg.name === MAIN_PACKAGE_NAME ? '' : `${pkg.name}.`}to${formatPageDir(dirName)}`,
116
- // );
114
+ spinner.text = `Router.${pkg.name === this.mainPackageName ? '' : `${pkg.name}.`}to${formatPageDir(dirName)}`;
117
115
  }
118
116
  }
117
+ spinner.succeed('页面解析成功');
119
118
  }
120
119
 
121
120
  /** 生成路由方法 */
@@ -182,37 +181,35 @@ export class Generator {
182
181
  }
183
182
 
184
183
  /** 生成页面对象的集合 */
185
- private generateGetPagesMethod() {
186
- const pageSet = this.pages.reduce(
187
- (store, page) => {
188
- const methodName = formatPageDir(page.dirName);
189
- const pageName = methodName.replace(/^(\w)/g, (_, letter: string) => {
190
- return letter.toLowerCase();
191
- });
192
-
193
- if (page.packageName === this.mainPackageName) {
194
- return {
195
- ...store,
196
- [pageName]: {
197
- path: page.path,
198
- },
199
- };
200
- } else {
201
- return {
202
- ...store,
203
- [page.packageName]: {
204
- ...(store[page.packageName] || {}),
205
- [pageName]: {
206
- path: page.path,
207
- },
208
- },
209
- };
184
+ private generatePagesSet() {
185
+ const pathToPageObj: Record<string, Page> = {};
186
+ const methodLikePathObj: Record<string, { path: string } | Record<string, { path: string }>> = {};
187
+ for (let A = 0; A < this.pages.length; ++A) {
188
+ const currentPage = this.pages[A];
189
+ pathToPageObj[currentPage.path] = currentPage;
190
+
191
+ const methodName = formatPageDir(currentPage.dirName);
192
+ const pageName = methodName.replace(/^(\w)/g, (_, letter: string) => {
193
+ return letter.toLowerCase();
194
+ });
195
+ if (currentPage.packageName === this.mainPackageName) {
196
+ methodLikePathObj[pageName] = {
197
+ path: currentPage.path,
198
+ };
199
+ } else {
200
+ if (!methodLikePathObj[currentPage.packageName]) {
201
+ methodLikePathObj[currentPage.packageName] = {};
210
202
  }
211
- },
212
- {} as Record<string, { path: string }>,
213
- );
214
- return `private static _pages = ${JSON.stringify(pageSet)}
215
- static getPages = () => { return Router._pages };`;
203
+ methodLikePathObj[currentPage.packageName][pageName] = {
204
+ path: currentPage.path,
205
+ };
206
+ }
207
+ }
208
+ return [
209
+ `private static _methodLikePathObj = ${JSON.stringify(methodLikePathObj)}`,
210
+ `private static _pathToPageMap = ${JSON.stringify(pathToPageObj)}`,
211
+ `static getPages = () => { return Router._methodLikePathObj }`,
212
+ ].join('\n');
216
213
  }
217
214
 
218
215
  private createRouterSourceFile() {
@@ -224,7 +221,7 @@ export class Generator {
224
221
  writer.writeLine('class Router {');
225
222
 
226
223
  writer.write(this.generateRouterNavigateMethod());
227
- writer.write(this.generateGetPagesMethod());
224
+ writer.write(this.generatePagesSet());
228
225
 
229
226
  writer.writeLine('}');
230
227
  });
@@ -251,12 +248,14 @@ export class Generator {
251
248
  }
252
249
 
253
250
  public generateRouter() {
251
+ const spinner = ora('开始生成路由...').start();
254
252
  const sourceFile = this.createRouterSourceFile();
255
253
 
256
254
  this.overrideRouter(sourceFile);
257
255
 
258
256
  sourceFile.delete();
259
- console.log(`已生成 ${this.pages.length} 个页面的路由`);
257
+ console.log(``);
258
+ spinner.succeed(`已生成 ${this.pages.length} 个页面的路由`);
260
259
  }
261
260
 
262
261
  public getPages() {