@modern-js/ssg-generator 3.0.0-beta.1 → 3.0.0-beta.3

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.
Files changed (2) hide show
  1. package/dist/index.js +114 -20
  2. package/package.json +11 -11
package/dist/index.js CHANGED
@@ -44800,8 +44800,10 @@ check path: ${_utils.chalk.blue.underline(generator)} exist a package.json file
44800
44800
  };
44801
44801
  }
44802
44802
  async runGenerator(generator, config = {}) {
44803
- const spinner = (0, _utils.ora)("Loading...").start();
44804
- spinner.color = "yellow";
44803
+ const spinner = (0, _utils.ora)({
44804
+ text: "Load Generator...",
44805
+ spinner: "runner"
44806
+ }).start();
44805
44807
  const {
44806
44808
  materialKey,
44807
44809
  generatorPkg,
@@ -44820,8 +44822,10 @@ check path: ${_utils.chalk.blue.underline(generator)} exist a package.json file
44820
44822
  this.setCurrent(null);
44821
44823
  }
44822
44824
  async runSubGenerator(subGenerator, relativePwdPath = "", config) {
44823
- const spinner = (0, _utils.ora)("Loading...").start();
44824
- spinner.color = "yellow";
44825
+ const spinner = (0, _utils.ora)({
44826
+ text: "Load Generator...",
44827
+ spinner: "runner"
44828
+ }).start();
44825
44829
  const {
44826
44830
  materialKey,
44827
44831
  generatorPkg,
@@ -59150,6 +59154,66 @@ var require_node5 = __commonJSMin((exports) => {
59150
59154
  };
59151
59155
  exports.EjsAPI = EjsAPI;
59152
59156
  });
59157
+ var require_constant = __commonJSMin((exports) => {
59158
+ "use strict";
59159
+ Object.defineProperty(exports, "__esModule", {
59160
+ value: true
59161
+ });
59162
+ exports.imageExtNameList = void 0;
59163
+ var imageExtNameList = [".jpg", ".jpeg", ".png", ".gif", ".bmp", ".ico", ".icon", ".mpt", ".psd", ".wmf"];
59164
+ exports.imageExtNameList = imageExtNameList;
59165
+ });
59166
+ var require_node6 = __commonJSMin((exports) => {
59167
+ "use strict";
59168
+ Object.defineProperty(exports, "__esModule", {
59169
+ value: true
59170
+ });
59171
+ exports.FsAPI = void 0;
59172
+ var _path = _interopRequireDefault(__require("path"));
59173
+ var _codesmith = require_node3();
59174
+ var _constant = require_constant();
59175
+ function _interopRequireDefault(obj) {
59176
+ return obj && obj.__esModule ? obj : { default: obj };
59177
+ }
59178
+ function _defineProperty2(obj, key, value) {
59179
+ if (key in obj) {
59180
+ Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
59181
+ } else {
59182
+ obj[key] = value;
59183
+ }
59184
+ return obj;
59185
+ }
59186
+ var FsAPI = class {
59187
+ constructor(generatorCore) {
59188
+ _defineProperty2(this, "generatorCore", void 0);
59189
+ this.generatorCore = generatorCore;
59190
+ }
59191
+ async renderFile(resource, target) {
59192
+ if (resource._type !== _codesmith.FS_RESOURCE) {
59193
+ throw new Error("resource not match");
59194
+ }
59195
+ const resourceValue = await resource.value();
59196
+ const resourceFileExt = _path.default.extname(resource.filePath);
59197
+ if (_constant.imageExtNameList.includes(resourceFileExt)) {
59198
+ await this.generatorCore.output.fs(target, resourceValue.content, {
59199
+ encoding: "binary"
59200
+ });
59201
+ } else {
59202
+ await this.generatorCore.output.fs(target, resourceValue.content, {
59203
+ encoding: "utf-8"
59204
+ });
59205
+ }
59206
+ }
59207
+ async renderDir(material2, findGlob, target, options2) {
59208
+ const resourceMap = await material2.find(findGlob, options2);
59209
+ await Promise.all(Object.keys(resourceMap).map(async (resourceKey) => {
59210
+ this.generatorCore.logger.debug(`[renderDir] resourceKey=${resourceKey}`);
59211
+ await this.renderFile(material2.get(resourceKey), target(resourceKey));
59212
+ }));
59213
+ }
59214
+ };
59215
+ exports.FsAPI = FsAPI;
59216
+ });
59153
59217
  function _typeof(obj) {
59154
59218
  "@babel/helpers - typeof";
59155
59219
  return _typeof = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(obj2) {
@@ -80387,7 +80451,7 @@ var require_overRest = __commonJSMin((exports, module2) => {
80387
80451
  }
80388
80452
  module2.exports = overRest;
80389
80453
  });
80390
- var require_constant = __commonJSMin((exports, module2) => {
80454
+ var require_constant2 = __commonJSMin((exports, module2) => {
80391
80455
  function constant(value) {
80392
80456
  return function() {
80393
80457
  return value;
@@ -80396,7 +80460,7 @@ var require_constant = __commonJSMin((exports, module2) => {
80396
80460
  module2.exports = constant;
80397
80461
  });
80398
80462
  var require_baseSetToString = __commonJSMin((exports, module2) => {
80399
- var constant = require_constant();
80463
+ var constant = require_constant2();
80400
80464
  var defineProperty = require_defineProperty();
80401
80465
  var identity = require_identity2();
80402
80466
  var baseSetToString = !defineProperty ? identity : function(func, string) {
@@ -107879,9 +107943,6 @@ var require_inquirer2 = __commonJSMin((exports, module2) => {
107879
107943
  inquirer2.prompt.restoreDefaultPrompts();
107880
107944
  };
107881
107945
  });
107882
- var require_lodash3 = __commonJSMin((exports, module2) => {
107883
- module2.exports = require_lodash();
107884
- });
107885
107946
  function getObjKeyMap(obj) {
107886
107947
  var prefix = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
107887
107948
  var result = {};
@@ -107896,7 +107957,7 @@ function getObjKeyMap(obj) {
107896
107957
  }
107897
107958
  var import_lodash3;
107898
107959
  var init_utils = __esmMin(() => {
107899
- import_lodash3 = __toESM2(require_lodash3());
107960
+ import_lodash3 = __toESM2(require_lodash2());
107900
107961
  });
107901
107962
  var treeshaking_exports2 = {};
107902
107963
  __export2(treeshaking_exports2, {
@@ -107907,7 +107968,7 @@ var init_treeshaking2 = __esmMin(() => {
107907
107968
  init_classCallCheck();
107908
107969
  init_createClass();
107909
107970
  init_defineProperty();
107910
- import_lodash4 = __toESM2(require_lodash3());
107971
+ import_lodash4 = __toESM2(require_lodash2());
107911
107972
  init_utils();
107912
107973
  I18n = /* @__PURE__ */ function() {
107913
107974
  function I18n3() {
@@ -108106,7 +108167,7 @@ var require_transform = __commonJSMin((exports) => {
108106
108167
  return questions;
108107
108168
  }
108108
108169
  });
108109
- var require_node6 = __commonJSMin((exports) => {
108170
+ var require_node7 = __commonJSMin((exports) => {
108110
108171
  "use strict";
108111
108172
  Object.defineProperty(exports, "__esModule", {
108112
108173
  value: true
@@ -108119,6 +108180,7 @@ var require_node6 = __commonJSMin((exports) => {
108119
108180
  var _codesmithApiGit = require_node2();
108120
108181
  var _codesmithApiHandlebars = require_node4();
108121
108182
  var _codesmithApiEjs = require_node5();
108183
+ var _codesmithApiFs = require_node6();
108122
108184
  var _codesmithFormily = (init_treeshaking(), __toCommonJS2(treeshaking_exports));
108123
108185
  var _inquirer = _interopRequireDefault(require_inquirer2());
108124
108186
  var _locale = require_locale();
@@ -108164,12 +108226,14 @@ var require_node6 = __commonJSMin((exports) => {
108164
108226
  _defineProperty2(this, "gitApi", void 0);
108165
108227
  _defineProperty2(this, "handlebarsAPI", void 0);
108166
108228
  _defineProperty2(this, "ejsAPI", void 0);
108229
+ _defineProperty2(this, "fsAPI", void 0);
108167
108230
  this.generatorCore = generatorCore;
108168
108231
  this.generatorContext = generatorContext;
108169
108232
  this.npmApi = new _codesmithApiNpm.NpmAPI(generatorCore);
108170
108233
  this.gitApi = new _codesmithApiGit.GitAPI(generatorCore, generatorContext);
108171
108234
  this.handlebarsAPI = new _codesmithApiHandlebars.HandlebarsAPI(generatorCore);
108172
108235
  this.ejsAPI = new _codesmithApiEjs.EjsAPI(generatorCore);
108236
+ this.fsAPI = new _codesmithApiFs.FsAPI(generatorCore);
108173
108237
  }
108174
108238
  async checkEnvironment(nodeVersion) {
108175
108239
  if (_utils.semver.lt(process.versions.node, nodeVersion || "12.22.12")) {
@@ -108267,6 +108331,36 @@ var require_node6 = __commonJSMin((exports) => {
108267
108331
  throw new Error("base forging failed");
108268
108332
  }
108269
108333
  }
108334
+ async renderTemplateByFileType(templatePattern, filter, rename, parameters) {
108335
+ try {
108336
+ const {
108337
+ material: material2
108338
+ } = this.generatorContext.current;
108339
+ const resourceMap = await material2.find(templatePattern, {
108340
+ nodir: true,
108341
+ dot: true
108342
+ });
108343
+ if (resourceMap) {
108344
+ await Promise.all(Object.keys(resourceMap).filter((resourceKey) => filter ? filter(resourceKey) : true).map(async (resourceKey) => {
108345
+ this.generatorCore.logger.debug(`[renderDir] resourceKey=${resourceKey}`);
108346
+ if (resourceKey.includes(".handlebars")) {
108347
+ const target = rename ? rename(resourceKey) : resourceKey.replace(`templates/`, "").replace(".handlebars", "");
108348
+ await this.handlebarsAPI.renderTemplate(material2.get(resourceKey), target, _objectSpread(_objectSpread({}, this.generatorContext.data || {}), parameters || {}));
108349
+ } else if (resourceKey.includes(".ejs")) {
108350
+ const target = rename ? rename(resourceKey) : resourceKey.replace(`templates/`, "").replace(".ejs", "");
108351
+ await this.ejsAPI.renderTemplate(material2.get(resourceKey), target, _objectSpread(_objectSpread({}, this.generatorContext.data || {}), parameters || {}));
108352
+ } else {
108353
+ const target = rename ? rename(resourceKey) : resourceKey.replace(`templates/`, "");
108354
+ await this.fsAPI.renderFile(material2.get(resourceKey), target);
108355
+ }
108356
+ }));
108357
+ }
108358
+ } catch (e) {
108359
+ this.generatorCore.logger.debug("base forging failed:", e);
108360
+ this.generatorCore.logger.warn(_locale.i18n.t(_locale.localeKeys.templated.failed));
108361
+ throw new Error("base forging failed");
108362
+ }
108363
+ }
108270
108364
  async updateWorkspace(folder, workspaceName = "monorepo.code-workspace") {
108271
108365
  const {
108272
108366
  filePath
@@ -109167,7 +109261,7 @@ var require_utils11 = __commonJSMin((exports) => {
109167
109261
  return newJsonString;
109168
109262
  }
109169
109263
  });
109170
- var require_node7 = __commonJSMin((exports) => {
109264
+ var require_node8 = __commonJSMin((exports) => {
109171
109265
  "use strict";
109172
109266
  Object.defineProperty(exports, "__esModule", {
109173
109267
  value: true
@@ -109270,16 +109364,16 @@ var require_node7 = __commonJSMin((exports) => {
109270
109364
  };
109271
109365
  exports.JsonAPI = JsonAPI2;
109272
109366
  });
109273
- var require_lodash4 = __commonJSMin((exports, module2) => {
109367
+ var require_lodash3 = __commonJSMin((exports, module2) => {
109274
109368
  module2.exports = require_lodash();
109275
109369
  });
109276
- var import_codesmith_api_app = __toESM2(require_node6());
109277
- var import_codesmith_api_json = __toESM2(require_node7());
109370
+ var import_codesmith_api_app = __toESM2(require_node7());
109371
+ var import_codesmith_api_json = __toESM2(require_node8());
109278
109372
  init_classCallCheck();
109279
109373
  init_createClass();
109280
109374
  init_defineProperty();
109281
- var import_lodash6 = __toESM2(require_lodash4());
109282
- var import_lodash5 = __toESM2(require_lodash4());
109375
+ var import_lodash6 = __toESM2(require_lodash3());
109376
+ var import_lodash5 = __toESM2(require_lodash3());
109283
109377
  function getObjKeyMap2(obj) {
109284
109378
  var prefix = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
109285
109379
  var result = {};
@@ -109406,7 +109500,7 @@ var ZH_LOCALE = {
109406
109500
  element: {
109407
109501
  self: "\u521B\u5EFA\u5DE5\u7A0B\u5143\u7D20",
109408
109502
  entry: "\u65B0\u5EFA\u300C\u5E94\u7528\u5165\u53E3\u300D",
109409
- server: "\u65B0\u5EFA\u300CServer \u81EA\u5B9A\u4E49\u300D\u6E90\u7801\u76EE\u5F55"
109503
+ server: "\u65B0\u5EFA\u300C\u81EA\u5B9A\u4E49 Web Server\u300D\u6E90\u7801\u76EE\u5F55"
109410
109504
  },
109411
109505
  refactor: {
109412
109506
  self: "\u81EA\u52A8\u91CD\u6784",
@@ -109494,7 +109588,7 @@ var EN_LOCALE = {
109494
109588
  element: {
109495
109589
  self: "Create project element",
109496
109590
  entry: 'New "entry"',
109497
- server: 'New "Server Custom" source code directory'
109591
+ server: 'New "Custom Web Server" source code directory'
109498
109592
  },
109499
109593
  refactor: {
109500
109594
  self: "Automatic refactor",
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "modern",
12
12
  "modern.js"
13
13
  ],
14
- "version": "3.0.0-beta.1",
14
+ "version": "3.0.0-beta.3",
15
15
  "jsnext:source": "./src/index.ts",
16
16
  "main": "./dist/index.js",
17
17
  "files": [
@@ -20,18 +20,18 @@
20
20
  ],
21
21
  "devDependencies": {
22
22
  "@babel/runtime": "^7.18.0",
23
- "@modern-js/codesmith": "2.0.0",
24
- "@modern-js/codesmith-api-app": "2.0.0",
25
- "@modern-js/codesmith-api-json": "2.0.0",
23
+ "@modern-js/codesmith": "2.0.2",
24
+ "@modern-js/codesmith-api-app": "2.0.2",
25
+ "@modern-js/codesmith-api-json": "2.0.2",
26
26
  "@types/jest": "^27",
27
27
  "@types/node": "^14",
28
28
  "jest": "^27",
29
29
  "typescript": "^4",
30
- "@modern-js/dependence-generator": "3.0.0-beta.1",
31
- "@modern-js/generator-common": "3.0.0-beta.1",
32
- "@modern-js/generator-utils": "3.0.0-beta.1",
33
- "@scripts/build": "2.0.0-beta.1",
34
- "@scripts/jest-config": "2.0.0-beta.1"
30
+ "@modern-js/dependence-generator": "3.0.0-beta.3",
31
+ "@modern-js/generator-common": "3.0.0-beta.3",
32
+ "@modern-js/generator-utils": "3.0.0-beta.3",
33
+ "@scripts/build": "2.0.0-beta.3",
34
+ "@scripts/jest-config": "2.0.0-beta.3"
35
35
  },
36
36
  "sideEffects": false,
37
37
  "modernConfig": {
@@ -46,8 +46,8 @@
46
46
  },
47
47
  "types": "./src/index.ts",
48
48
  "scripts": {
49
- "new": "modern new",
50
- "build": "modern build",
49
+ "new": "modern-lib new",
50
+ "build": "modern-lib build",
51
51
  "test": "jest --passWithNoTests"
52
52
  }
53
53
  }