simple-scaffold 2.0.2 → 2.1.0

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/cmd.js CHANGED
@@ -36,6 +36,10 @@ async function parseCliArgs(args = process.argv.slice(2)) {
36
36
  const parsed = await (0, config_1.parseConfigFile)(config, tmpPath);
37
37
  await (0, scaffold_1.Scaffold)(parsed);
38
38
  }
39
+ catch (e) {
40
+ const message = "message" in e ? e.message : e?.toString();
41
+ (0, logger_1.log)(config, types_1.LogLevel.error, message);
42
+ }
39
43
  finally {
40
44
  (0, logger_1.log)(config, types_1.LogLevel.debug, "Cleaning up temporary files...", tmpPath);
41
45
  await promises_1.default.rm(tmpPath, { recursive: true, force: true });
@@ -47,7 +51,7 @@ async function parseCliArgs(args = process.argv.slice(2)) {
47
51
  description: "Name to be passed to the generated files. `{{name}}` and other data parameters inside " +
48
52
  "contents and file names will be replaced accordingly. You may omit the `--name` or `-n` for this specific option.",
49
53
  isDefault: true,
50
- required: !isVersionFlag,
54
+ required: !isConfigProvided,
51
55
  })
52
56
  .option({
53
57
  name: "config",
package/cmd.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cmd.js","sourceRoot":"","sources":["../src/cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cmd.js","sourceRoot":"","sources":["../src/cmd.ts"],"names":[],"mappings":"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"}
package/config.d.ts CHANGED
@@ -11,3 +11,5 @@ export declare function githubPartToUrl(part: string): string;
11
11
  export declare function getLocalConfig(config: ConfigLoadConfig & Partial<LogConfig>): Promise<ScaffoldConfigFile>;
12
12
  /** @internal */
13
13
  export declare function getRemoteConfig(config: RemoteConfigLoadConfig & Partial<LogConfig>): Promise<ScaffoldConfigFile>;
14
+ /** @internal */
15
+ export declare function findConfigFile(root: string): Promise<string>;
package/config.js CHANGED
@@ -26,13 +26,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.getRemoteConfig = exports.getLocalConfig = exports.githubPartToUrl = exports.parseConfigFile = exports.parseAppendData = exports.getOptionValueForFile = void 0;
29
+ exports.findConfigFile = exports.getRemoteConfig = exports.getLocalConfig = exports.githubPartToUrl = exports.parseConfigFile = exports.parseAppendData = exports.getOptionValueForFile = void 0;
30
30
  const node_path_1 = __importDefault(require("node:path"));
31
31
  const types_1 = require("./types");
32
32
  const parser_1 = require("./parser");
33
33
  const logger_1 = require("./logger");
34
34
  const utils_1 = require("./utils");
35
35
  const git_1 = require("./git");
36
+ const file_1 = require("./file");
36
37
  /** @internal */
37
38
  function getOptionValueForFile(config, filePath, fn, defaultValue) {
38
39
  if (typeof fn !== "function") {
@@ -71,7 +72,7 @@ async function parseConfigFile(config, tmpPath) {
71
72
  const key = config.key ?? "default";
72
73
  const configFilename = config.config;
73
74
  const configPath = isGit ? config.git : configFilename;
74
- (0, logger_1.log)(config, types_1.LogLevel.info, `Loading config from ${configFilename} with key ${key}`);
75
+ (0, logger_1.log)(config, types_1.LogLevel.info, `Loading config from file ${configFilename} with key ${key}`);
75
76
  const configPromise = await (isGit
76
77
  ? getRemoteConfig({ git: configPath, config: configFilename, logLevel: config.logLevel, tmpPath })
77
78
  : getLocalConfig({ config: configFilename, logLevel: config.logLevel }));
@@ -79,23 +80,28 @@ async function parseConfigFile(config, tmpPath) {
79
80
  let configImport = await (0, utils_1.resolve)(configPromise, config);
80
81
  // If the config is a function or promise, return the output
81
82
  if (typeof configImport.default === "function" || configImport.default instanceof Promise) {
83
+ (0, logger_1.log)(config, types_1.LogLevel.debug, "Config is a function or promise, resolving...");
82
84
  configImport = await (0, utils_1.resolve)(configImport.default, config);
83
85
  }
84
86
  if (!configImport[key]) {
85
87
  throw new Error(`Template "${key}" not found in ${configFilename}`);
86
88
  }
87
- const importedKey = configImport[key];
89
+ const imported = configImport[key];
90
+ (0, logger_1.log)(config, types_1.LogLevel.debug, "Imported result", imported);
88
91
  output = {
89
92
  ...config,
90
- ...importedKey,
93
+ ...imported,
91
94
  data: {
92
- ...importedKey.data,
95
+ ...imported.data,
93
96
  ...config.data,
94
97
  },
95
98
  };
96
99
  }
97
100
  output.data = { ...output.data, ...config.appendData };
98
- delete config.appendData;
101
+ if (!output.name) {
102
+ throw new Error("simple-scaffold: Missing required option: name");
103
+ }
104
+ (0, logger_1.log)(output, types_1.LogLevel.debug, "Parsed config", output);
99
105
  return output;
100
106
  }
101
107
  exports.parseConfigFile = parseConfigFile;
@@ -111,8 +117,19 @@ exports.githubPartToUrl = githubPartToUrl;
111
117
  /** @internal */
112
118
  async function getLocalConfig(config) {
113
119
  const { config: configFile, ...logConfig } = config;
114
- (0, logger_1.log)(logConfig, types_1.LogLevel.info, `Loading config from file ${configFile}`);
115
120
  const absolutePath = node_path_1.default.resolve(process.cwd(), configFile);
121
+ const _isDir = await (0, file_1.isDir)(absolutePath);
122
+ if (_isDir) {
123
+ (0, logger_1.log)(logConfig, types_1.LogLevel.debug, `Resolving config file from directory ${absolutePath}`);
124
+ const file = await findConfigFile(absolutePath);
125
+ const exists = await (0, file_1.pathExists)(file);
126
+ if (!exists) {
127
+ throw new Error(`Could not find config file in directory ${absolutePath}`);
128
+ }
129
+ (0, logger_1.log)(logConfig, types_1.LogLevel.info, `Loading config from: ${node_path_1.default.resolve(absolutePath, file)}`);
130
+ return (0, utils_1.wrapNoopResolver)(Promise.resolve(`${node_path_1.default.resolve(absolutePath, file)}`).then(s => __importStar(require(s))));
131
+ }
132
+ (0, logger_1.log)(logConfig, types_1.LogLevel.info, `Loading config from: ${absolutePath}`);
116
133
  return (0, utils_1.wrapNoopResolver)(Promise.resolve(`${absolutePath}`).then(s => __importStar(require(s))));
117
134
  }
118
135
  exports.getLocalConfig = getLocalConfig;
@@ -129,4 +146,20 @@ async function getRemoteConfig(config) {
129
146
  return (0, git_1.getGitConfig)(url, configFile, tmpPath, logConfig);
130
147
  }
131
148
  exports.getRemoteConfig = getRemoteConfig;
149
+ /** @internal */
150
+ async function findConfigFile(root) {
151
+ const allowed = ["mjs", "cjs", "js", "json"].reduce((acc, ext) => {
152
+ acc.push(`scaffold.config.${ext}`);
153
+ acc.push(`scaffold.${ext}`);
154
+ return acc;
155
+ }, []);
156
+ for (const file of allowed) {
157
+ const exists = await (0, file_1.pathExists)(node_path_1.default.resolve(root, file));
158
+ if (exists) {
159
+ return file;
160
+ }
161
+ }
162
+ throw new Error(`Could not find config file in git repo`);
163
+ }
164
+ exports.findConfigFile = findConfigFile;
132
165
  //# sourceMappingURL=config.js.map
package/config.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/git.d.ts CHANGED
@@ -8,5 +8,3 @@ export declare function loadGitConfig({ logConfig, url: repoUrl, file, tmpPath,
8
8
  file: string;
9
9
  tmpPath: string;
10
10
  }): Promise<AsyncResolver<ScaffoldCmdConfig, ScaffoldConfigMap>>;
11
- /** @internal */
12
- export declare function findConfigFile(root: string): Promise<string>;
package/git.js CHANGED
@@ -26,13 +26,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.findConfigFile = exports.loadGitConfig = exports.getGitConfig = void 0;
29
+ exports.loadGitConfig = exports.getGitConfig = void 0;
30
30
  const node_path_1 = __importDefault(require("node:path"));
31
- const promises_1 = __importDefault(require("node:fs/promises"));
32
31
  const logger_1 = require("./logger");
33
32
  const types_1 = require("./types");
34
33
  const node_child_process_1 = require("node:child_process");
35
34
  const utils_1 = require("./utils");
35
+ const config_1 = require("./config");
36
36
  async function getGitConfig(url, file, tmpPath, logConfig) {
37
37
  const repoUrl = `${url.protocol}//${url.host}${url.pathname}`;
38
38
  (0, logger_1.log)(logConfig, types_1.LogLevel.info, `Cloning git repo ${repoUrl}`);
@@ -53,7 +53,7 @@ exports.getGitConfig = getGitConfig;
53
53
  /** @internal */
54
54
  async function loadGitConfig({ logConfig, url: repoUrl, file, tmpPath, }) {
55
55
  (0, logger_1.log)(logConfig, types_1.LogLevel.info, `Loading config from git repo: ${repoUrl}`);
56
- const filename = file || (await findConfigFile(tmpPath));
56
+ const filename = file || (await (0, config_1.findConfigFile)(tmpPath));
57
57
  const absolutePath = node_path_1.default.resolve(tmpPath, filename);
58
58
  (0, logger_1.log)(logConfig, types_1.LogLevel.debug, `Resolving config file: ${absolutePath}`);
59
59
  const loadedConfig = await (0, utils_1.resolve)(async () => (await Promise.resolve(`${absolutePath}`).then(s => __importStar(require(s)))).default, logConfig);
@@ -69,23 +69,4 @@ async function loadGitConfig({ logConfig, url: repoUrl, file, tmpPath, }) {
69
69
  return (0, utils_1.wrapNoopResolver)(fixedConfig);
70
70
  }
71
71
  exports.loadGitConfig = loadGitConfig;
72
- /** @internal */
73
- async function findConfigFile(root) {
74
- const allowed = ["mjs", "cjs", "js", "json"].reduce((acc, ext) => {
75
- acc.push(`scaffold.config.${ext}`);
76
- acc.push(`scaffold.${ext}`);
77
- return acc;
78
- }, []);
79
- for (const file of allowed) {
80
- const exists = await promises_1.default
81
- .stat(node_path_1.default.resolve(root, file))
82
- .then(() => true)
83
- .catch(() => false);
84
- if (exists) {
85
- return file;
86
- }
87
- }
88
- throw new Error(`Could not find config file in git repo`);
89
- }
90
- exports.findConfigFile = findConfigFile;
91
72
  //# sourceMappingURL=git.js.map
package/git.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simple-scaffold",
3
- "version": "2.0.2",
3
+ "version": "2.1.0",
4
4
  "description": "Generate any file structure - from single components to entire app boilerplates, with a single command.",
5
5
  "homepage": "https: //chenasraf.github.io/simple-scaffold",
6
6
  "repository": {
@@ -49,15 +49,15 @@
49
49
  "@semantic-release/exec": "^6.0.3",
50
50
  "@semantic-release/git": "^10.0.1",
51
51
  "@semantic-release/release-notes-generator": "^12.1.0",
52
- "@types/jest": "^29.5.11",
52
+ "@types/jest": "^29.5.12",
53
53
  "@types/mock-fs": "^4.13.4",
54
- "@types/node": "^20.11.14",
54
+ "@types/node": "^20.11.17",
55
55
  "@types/semantic-release": "^20.0.6",
56
56
  "conventional-changelog": "^5.1.0",
57
57
  "conventional-changelog-cli": "^4.1.0",
58
58
  "jest": "^29.7.0",
59
59
  "mock-fs": "^5.2.0",
60
- "semantic-release": "^23.0.0",
60
+ "semantic-release": "^23.0.2",
61
61
  "semantic-release-conventional-commits": "^3.0.0",
62
62
  "ts-jest": "^29.1.2",
63
63
  "ts-node": "^10.9.2",