@modern-js/ssg-generator 3.0.0-beta.2 → 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 +99 -6
  2. package/package.json +9 -9
package/dist/index.js CHANGED
@@ -59154,6 +59154,66 @@ var require_node5 = __commonJSMin((exports) => {
59154
59154
  };
59155
59155
  exports.EjsAPI = EjsAPI;
59156
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
+ });
59157
59217
  function _typeof(obj) {
59158
59218
  "@babel/helpers - typeof";
59159
59219
  return _typeof = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(obj2) {
@@ -80391,7 +80451,7 @@ var require_overRest = __commonJSMin((exports, module2) => {
80391
80451
  }
80392
80452
  module2.exports = overRest;
80393
80453
  });
80394
- var require_constant = __commonJSMin((exports, module2) => {
80454
+ var require_constant2 = __commonJSMin((exports, module2) => {
80395
80455
  function constant(value) {
80396
80456
  return function() {
80397
80457
  return value;
@@ -80400,7 +80460,7 @@ var require_constant = __commonJSMin((exports, module2) => {
80400
80460
  module2.exports = constant;
80401
80461
  });
80402
80462
  var require_baseSetToString = __commonJSMin((exports, module2) => {
80403
- var constant = require_constant();
80463
+ var constant = require_constant2();
80404
80464
  var defineProperty = require_defineProperty();
80405
80465
  var identity = require_identity2();
80406
80466
  var baseSetToString = !defineProperty ? identity : function(func, string) {
@@ -108107,7 +108167,7 @@ var require_transform = __commonJSMin((exports) => {
108107
108167
  return questions;
108108
108168
  }
108109
108169
  });
108110
- var require_node6 = __commonJSMin((exports) => {
108170
+ var require_node7 = __commonJSMin((exports) => {
108111
108171
  "use strict";
108112
108172
  Object.defineProperty(exports, "__esModule", {
108113
108173
  value: true
@@ -108120,6 +108180,7 @@ var require_node6 = __commonJSMin((exports) => {
108120
108180
  var _codesmithApiGit = require_node2();
108121
108181
  var _codesmithApiHandlebars = require_node4();
108122
108182
  var _codesmithApiEjs = require_node5();
108183
+ var _codesmithApiFs = require_node6();
108123
108184
  var _codesmithFormily = (init_treeshaking(), __toCommonJS2(treeshaking_exports));
108124
108185
  var _inquirer = _interopRequireDefault(require_inquirer2());
108125
108186
  var _locale = require_locale();
@@ -108165,12 +108226,14 @@ var require_node6 = __commonJSMin((exports) => {
108165
108226
  _defineProperty2(this, "gitApi", void 0);
108166
108227
  _defineProperty2(this, "handlebarsAPI", void 0);
108167
108228
  _defineProperty2(this, "ejsAPI", void 0);
108229
+ _defineProperty2(this, "fsAPI", void 0);
108168
108230
  this.generatorCore = generatorCore;
108169
108231
  this.generatorContext = generatorContext;
108170
108232
  this.npmApi = new _codesmithApiNpm.NpmAPI(generatorCore);
108171
108233
  this.gitApi = new _codesmithApiGit.GitAPI(generatorCore, generatorContext);
108172
108234
  this.handlebarsAPI = new _codesmithApiHandlebars.HandlebarsAPI(generatorCore);
108173
108235
  this.ejsAPI = new _codesmithApiEjs.EjsAPI(generatorCore);
108236
+ this.fsAPI = new _codesmithApiFs.FsAPI(generatorCore);
108174
108237
  }
108175
108238
  async checkEnvironment(nodeVersion) {
108176
108239
  if (_utils.semver.lt(process.versions.node, nodeVersion || "12.22.12")) {
@@ -108268,6 +108331,36 @@ var require_node6 = __commonJSMin((exports) => {
108268
108331
  throw new Error("base forging failed");
108269
108332
  }
108270
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
+ }
108271
108364
  async updateWorkspace(folder, workspaceName = "monorepo.code-workspace") {
108272
108365
  const {
108273
108366
  filePath
@@ -109168,7 +109261,7 @@ var require_utils11 = __commonJSMin((exports) => {
109168
109261
  return newJsonString;
109169
109262
  }
109170
109263
  });
109171
- var require_node7 = __commonJSMin((exports) => {
109264
+ var require_node8 = __commonJSMin((exports) => {
109172
109265
  "use strict";
109173
109266
  Object.defineProperty(exports, "__esModule", {
109174
109267
  value: true
@@ -109274,8 +109367,8 @@ var require_node7 = __commonJSMin((exports) => {
109274
109367
  var require_lodash3 = __commonJSMin((exports, module2) => {
109275
109368
  module2.exports = require_lodash();
109276
109369
  });
109277
- var import_codesmith_api_app = __toESM2(require_node6());
109278
- 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());
109279
109372
  init_classCallCheck();
109280
109373
  init_createClass();
109281
109374
  init_defineProperty();
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "modern",
12
12
  "modern.js"
13
13
  ],
14
- "version": "3.0.0-beta.2",
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.1",
24
- "@modern-js/codesmith-api-app": "2.0.1",
25
- "@modern-js/codesmith-api-json": "2.0.1",
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.2",
31
- "@modern-js/generator-common": "3.0.0-beta.2",
32
- "@modern-js/generator-utils": "3.0.0-beta.2",
33
- "@scripts/build": "2.0.0-beta.2",
34
- "@scripts/jest-config": "2.0.0-beta.2"
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": {