@storm-software/config-tools 1.5.9 → 1.5.11

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/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.5.10](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.9...config-tools-v1.5.10) (2023-12-21)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **config-tools:** Resolved issue with determining workspace root ([a614a36](https://github.com/storm-software/storm-ops/commit/a614a363194913de9d5de596fc70910f586d33f9))
7
+
8
+ ## [1.5.9](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.8...config-tools-v1.5.9) (2023-12-21)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **config-tools:** Handle sync method correctly ([6cbd64e](https://github.com/storm-software/storm-ops/commit/6cbd64e61f88f4a651ae1f05e16811fdf355fc71))
14
+
1
15
  ## [1.5.8](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.7...config-tools-v1.5.8) (2023-12-20)
2
16
 
3
17
 
package/index.cjs CHANGED
@@ -107,7 +107,6 @@ var LogLevelLabel = {
107
107
 
108
108
  // packages/config-tools/src/utilities/get-default-config.ts
109
109
  var import_fs = require("fs");
110
- var import_find_workspace_root = require("nx/src/utils/find-workspace-root.js");
111
110
  var import_path = require("path");
112
111
 
113
112
  // packages/config-tools/src/schema.ts
@@ -163,6 +162,101 @@ var StormConfigSchema = z.object({
163
162
  "Storm Workspace config values used during various dev-ops processes. This type is a combination of the StormPackageConfig and StormProject types. It represents the config of the entire monorepo."
164
163
  );
165
164
 
165
+ // packages/config-tools/src/utilities/find-workspace-root.ts
166
+ var path2 = __toESM(require("path"), 1);
167
+
168
+ // packages/config-tools/src/utilities/find-up.ts
169
+ var import_locate_path = require("locate-path");
170
+ var path = __toESM(require("path"), 1);
171
+ var import_url = require("url");
172
+ var findUpStop = Symbol("findUpStop");
173
+ function toPath(urlOrPath) {
174
+ return urlOrPath instanceof URL ? (0, import_url.fileURLToPath)(urlOrPath) : urlOrPath;
175
+ }
176
+ function findUpMultipleSync(names, options = { limit: 1, type: "file" }) {
177
+ let directory = path.resolve(toPath(options.cwd) ?? "");
178
+ const { root } = path.parse(directory);
179
+ const stopAt = path.resolve(directory, toPath(options.stopAt) ?? root);
180
+ const limit = options.limit ?? Number.POSITIVE_INFINITY;
181
+ if (typeof names === "function") {
182
+ const foundPath = names(options.cwd);
183
+ return (0, import_locate_path.locatePathSync)([foundPath], options);
184
+ }
185
+ const runNameMatcher = (name) => {
186
+ const paths = [name].flat();
187
+ const runMatcher = (locateOptions) => {
188
+ if (typeof name !== "function") {
189
+ return (0, import_locate_path.locatePathSync)(paths, locateOptions);
190
+ }
191
+ const foundPath = name(locateOptions.cwd);
192
+ if (typeof foundPath === "string") {
193
+ return (0, import_locate_path.locatePathSync)([foundPath], locateOptions);
194
+ }
195
+ return foundPath;
196
+ };
197
+ const matches = [];
198
+ while (true) {
199
+ const foundPath = runMatcher({ ...options, cwd: directory });
200
+ if (foundPath) {
201
+ matches.push(path.resolve(directory, foundPath));
202
+ }
203
+ if (directory === stopAt || matches.length >= limit) {
204
+ break;
205
+ }
206
+ directory = path.dirname(directory);
207
+ }
208
+ return matches;
209
+ };
210
+ return (names && Array.isArray(names) ? names : [names]).map((name) => runNameMatcher(name)).flat();
211
+ }
212
+ function findUpSync(names, options = { limit: 1, type: "file" }) {
213
+ const matches = findUpMultipleSync(names, options);
214
+ return matches[0];
215
+ }
216
+
217
+ // packages/config-tools/src/utilities/find-workspace-root.ts
218
+ var rootFiles = [
219
+ "lerna.json",
220
+ "nx.json",
221
+ "turbo.json",
222
+ "npm-workspace.json",
223
+ "yarn-workspace.json",
224
+ "pnpm-workspace.json",
225
+ "npm-workspace.yaml",
226
+ "yarn-workspace.yaml",
227
+ "pnpm-workspace.yaml",
228
+ "npm-workspace.yml",
229
+ "yarn-workspace.yml",
230
+ "pnpm-workspace.yml",
231
+ "npm-lock.json",
232
+ "yarn-lock.json",
233
+ "pnpm-lock.json",
234
+ "npm-lock.yaml",
235
+ "yarn-lock.yaml",
236
+ "pnpm-lock.yaml",
237
+ "npm-lock.yml",
238
+ "yarn-lock.yml",
239
+ "pnpm-lock.yml",
240
+ "bun.lockb"
241
+ ];
242
+ function findWorkspaceRoot(pathInsideMonorepo) {
243
+ const result = process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : findUpSync(rootFiles, {
244
+ cwd: pathInsideMonorepo ?? process.cwd(),
245
+ type: "file",
246
+ limit: 1
247
+ });
248
+ if (!result) {
249
+ throw new Error(
250
+ `Cannot find workspace root upwards from known path. Files search list includes:
251
+ ${rootFiles.join(
252
+ "\n"
253
+ )}
254
+ Path: ${path2}`
255
+ );
256
+ }
257
+ return result;
258
+ }
259
+
166
260
  // packages/config-tools/src/utilities/get-default-config.ts
167
261
  var DefaultColorConfig = {
168
262
  primary: "#1fb2a6",
@@ -198,10 +292,7 @@ var getDefaultConfig = (config = {}) => {
198
292
  let repository = "https://github.com/storm-software/storm-stack";
199
293
  let license = DefaultStormConfig.license;
200
294
  let homepage = DefaultStormConfig.homepage;
201
- const workspaceRoot = (0, import_find_workspace_root.findWorkspaceRoot)(process.cwd());
202
- if (typeof workspaceRoot !== "string") {
203
- throw new Error("Could not find workspace root");
204
- }
295
+ const workspaceRoot = findWorkspaceRoot(process.cwd());
205
296
  if ((0, import_fs.existsSync)((0, import_path.join)(workspaceRoot, "package.json"))) {
206
297
  const file = (0, import_fs.readFileSync)((0, import_path.join)(workspaceRoot, "package.json"), {
207
298
  encoding: "utf-8"
@@ -342,6 +433,7 @@ var createStormConfig = (extensionName, schema) => {
342
433
  let result;
343
434
  if (!_static_cache2) {
344
435
  let config = getConfigEnv();
436
+ config = Object.assign(getDefaultConfig(), config);
345
437
  result = StormConfigSchema.parse(config);
346
438
  } else {
347
439
  result = _static_cache2;
package/index.js CHANGED
@@ -57,7 +57,6 @@ var LogLevelLabel = {
57
57
 
58
58
  // packages/config-tools/src/utilities/get-default-config.ts
59
59
  import { existsSync, readFileSync } from "fs";
60
- import { findWorkspaceRoot } from "nx/src/utils/find-workspace-root.js";
61
60
  import { join } from "path";
62
61
 
63
62
  // packages/config-tools/src/schema.ts
@@ -113,6 +112,101 @@ var StormConfigSchema = z.object({
113
112
  "Storm Workspace config values used during various dev-ops processes. This type is a combination of the StormPackageConfig and StormProject types. It represents the config of the entire monorepo."
114
113
  );
115
114
 
115
+ // packages/config-tools/src/utilities/find-workspace-root.ts
116
+ import * as path2 from "path";
117
+
118
+ // packages/config-tools/src/utilities/find-up.ts
119
+ import { locatePath, locatePathSync } from "locate-path";
120
+ import * as path from "path";
121
+ import { fileURLToPath } from "url";
122
+ var findUpStop = Symbol("findUpStop");
123
+ function toPath(urlOrPath) {
124
+ return urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath;
125
+ }
126
+ function findUpMultipleSync(names, options = { limit: 1, type: "file" }) {
127
+ let directory = path.resolve(toPath(options.cwd) ?? "");
128
+ const { root } = path.parse(directory);
129
+ const stopAt = path.resolve(directory, toPath(options.stopAt) ?? root);
130
+ const limit = options.limit ?? Number.POSITIVE_INFINITY;
131
+ if (typeof names === "function") {
132
+ const foundPath = names(options.cwd);
133
+ return locatePathSync([foundPath], options);
134
+ }
135
+ const runNameMatcher = (name) => {
136
+ const paths = [name].flat();
137
+ const runMatcher = (locateOptions) => {
138
+ if (typeof name !== "function") {
139
+ return locatePathSync(paths, locateOptions);
140
+ }
141
+ const foundPath = name(locateOptions.cwd);
142
+ if (typeof foundPath === "string") {
143
+ return locatePathSync([foundPath], locateOptions);
144
+ }
145
+ return foundPath;
146
+ };
147
+ const matches = [];
148
+ while (true) {
149
+ const foundPath = runMatcher({ ...options, cwd: directory });
150
+ if (foundPath) {
151
+ matches.push(path.resolve(directory, foundPath));
152
+ }
153
+ if (directory === stopAt || matches.length >= limit) {
154
+ break;
155
+ }
156
+ directory = path.dirname(directory);
157
+ }
158
+ return matches;
159
+ };
160
+ return (names && Array.isArray(names) ? names : [names]).map((name) => runNameMatcher(name)).flat();
161
+ }
162
+ function findUpSync(names, options = { limit: 1, type: "file" }) {
163
+ const matches = findUpMultipleSync(names, options);
164
+ return matches[0];
165
+ }
166
+
167
+ // packages/config-tools/src/utilities/find-workspace-root.ts
168
+ var rootFiles = [
169
+ "lerna.json",
170
+ "nx.json",
171
+ "turbo.json",
172
+ "npm-workspace.json",
173
+ "yarn-workspace.json",
174
+ "pnpm-workspace.json",
175
+ "npm-workspace.yaml",
176
+ "yarn-workspace.yaml",
177
+ "pnpm-workspace.yaml",
178
+ "npm-workspace.yml",
179
+ "yarn-workspace.yml",
180
+ "pnpm-workspace.yml",
181
+ "npm-lock.json",
182
+ "yarn-lock.json",
183
+ "pnpm-lock.json",
184
+ "npm-lock.yaml",
185
+ "yarn-lock.yaml",
186
+ "pnpm-lock.yaml",
187
+ "npm-lock.yml",
188
+ "yarn-lock.yml",
189
+ "pnpm-lock.yml",
190
+ "bun.lockb"
191
+ ];
192
+ function findWorkspaceRoot(pathInsideMonorepo) {
193
+ const result = process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : findUpSync(rootFiles, {
194
+ cwd: pathInsideMonorepo ?? process.cwd(),
195
+ type: "file",
196
+ limit: 1
197
+ });
198
+ if (!result) {
199
+ throw new Error(
200
+ `Cannot find workspace root upwards from known path. Files search list includes:
201
+ ${rootFiles.join(
202
+ "\n"
203
+ )}
204
+ Path: ${path2}`
205
+ );
206
+ }
207
+ return result;
208
+ }
209
+
116
210
  // packages/config-tools/src/utilities/get-default-config.ts
117
211
  var DefaultColorConfig = {
118
212
  primary: "#1fb2a6",
@@ -149,9 +243,6 @@ var getDefaultConfig = (config = {}) => {
149
243
  let license = DefaultStormConfig.license;
150
244
  let homepage = DefaultStormConfig.homepage;
151
245
  const workspaceRoot = findWorkspaceRoot(process.cwd());
152
- if (typeof workspaceRoot !== "string") {
153
- throw new Error("Could not find workspace root");
154
- }
155
246
  if (existsSync(join(workspaceRoot, "package.json"))) {
156
247
  const file = readFileSync(join(workspaceRoot, "package.json"), {
157
248
  encoding: "utf-8"
@@ -292,6 +383,7 @@ var createStormConfig = (extensionName, schema) => {
292
383
  let result;
293
384
  if (!_static_cache2) {
294
385
  let config = getConfigEnv();
386
+ config = Object.assign(getDefaultConfig(), config);
295
387
  result = StormConfigSchema.parse(config);
296
388
  } else {
297
389
  result = _static_cache2;
package/meta.cjs.json CHANGED
@@ -1 +1 @@
1
- {"inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytes":1987,"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/config-file/index.ts":{"bytes":35,"imports":[{"path":"packages/config-tools/src/config-file/get-config-file.ts","kind":"import-statement","original":"./get-config-file"}],"format":"esm"},"packages/config-tools/src/types.ts":{"bytes":1405,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"./schema","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/schema.ts":{"bytes":5736,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/get-default-config.ts":{"bytes":2708,"imports":[{"path":"fs","kind":"import-statement","external":true},{"path":"nx/src/utils/find-workspace-root.js","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"../schema"},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/get-log-level.ts":{"bytes":1409,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/config-tools/src/utilities/index.ts":{"bytes":71,"imports":[{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./get-default-config"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"./get-log-level"}],"format":"esm"},"packages/config-tools/src/env/get-env.ts":{"bytes":4137,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"../utilities"}],"format":"esm"},"packages/config-tools/src/create-storm-config.ts":{"bytes":2482,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./env/get-env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"./types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/env/set-env.ts":{"bytes":4309,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"../utilities/get-log-level"}],"format":"esm"},"packages/config-tools/src/env/index.ts":{"bytes":54,"imports":[{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./get-env"},{"path":"packages/config-tools/src/env/set-env.ts","kind":"import-statement","original":"./set-env"}],"format":"esm"},"packages/config-tools/src/index.ts":{"bytes":399,"imports":[{"path":"packages/config-tools/src/config-file/index.ts","kind":"import-statement","original":"./config-file"},{"path":"packages/config-tools/src/create-storm-config.ts","kind":"import-statement","original":"./create-storm-config"},{"path":"packages/config-tools/src/env/index.ts","kind":"import-statement","original":"./env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"./utilities"}],"format":"esm"},"packages/config-tools/src/utilities/find-up.ts":{"bytes":4414,"imports":[{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytes":1857,"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"fp-ts/Either","kind":"import-statement","external":true},{"path":"fp-ts/function","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-up.ts","kind":"import-statement","original":"./find-up"}],"format":"esm"}},"outputs":{"dist/packages/config-tools/index.cjs":{"imports":[{"path":"cosmiconfig","kind":"require-call","external":true},{"path":"fs","kind":"require-call","external":true},{"path":"nx/src/utils/find-workspace-root.js","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"zod","kind":"require-call","external":true}],"exports":[],"entryPoint":"packages/config-tools/src/index.ts","inputs":{"packages/config-tools/src/index.ts":{"bytesInOutput":763},"packages/config-tools/src/config-file/get-config-file.ts":{"bytesInOutput":1594},"packages/config-tools/src/config-file/index.ts":{"bytesInOutput":0},"packages/config-tools/src/types.ts":{"bytesInOutput":256},"packages/config-tools/src/utilities/get-default-config.ts":{"bytesInOutput":2252},"packages/config-tools/src/schema.ts":{"bytesInOutput":4454},"packages/config-tools/src/utilities/index.ts":{"bytesInOutput":0},"packages/config-tools/src/utilities/get-log-level.ts":{"bytesInOutput":1029},"packages/config-tools/src/env/get-env.ts":{"bytesInOutput":3060},"packages/config-tools/src/create-storm-config.ts":{"bytesInOutput":916},"packages/config-tools/src/env/index.ts":{"bytesInOutput":0},"packages/config-tools/src/env/set-env.ts":{"bytesInOutput":3528}},"bytes":20130},"dist/packages/config-tools/utilities/find-workspace-root.cjs":{"imports":[{"path":"path","kind":"require-call","external":true},{"path":"fp-ts/Either","kind":"require-call","external":true},{"path":"fp-ts/function","kind":"require-call","external":true},{"path":"locate-path","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"url","kind":"require-call","external":true}],"exports":[],"entryPoint":"packages/config-tools/src/utilities/find-workspace-root.ts","inputs":{"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1789},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1889}},"bytes":5348}}}
1
+ {"inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytes":1987,"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/config-file/index.ts":{"bytes":35,"imports":[{"path":"packages/config-tools/src/config-file/get-config-file.ts","kind":"import-statement","original":"./get-config-file"}],"format":"esm"},"packages/config-tools/src/types.ts":{"bytes":1405,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"./schema","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/schema.ts":{"bytes":5736,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-up.ts":{"bytes":4419,"imports":[{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytes":1264,"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-up.ts","kind":"import-statement","original":"./find-up"}],"format":"esm"},"packages/config-tools/src/utilities/get-default-config.ts":{"bytes":2592,"imports":[{"path":"fs","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"../schema"},{"path":"../types","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-workspace-root.ts","kind":"import-statement","original":"./find-workspace-root"}],"format":"esm"},"packages/config-tools/src/utilities/get-log-level.ts":{"bytes":1409,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/config-tools/src/utilities/index.ts":{"bytes":71,"imports":[{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./get-default-config"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"./get-log-level"}],"format":"esm"},"packages/config-tools/src/env/get-env.ts":{"bytes":4137,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"../utilities"}],"format":"esm"},"packages/config-tools/src/create-storm-config.ts":{"bytes":2606,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./env/get-env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"./types","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./utilities/get-default-config"}],"format":"esm"},"packages/config-tools/src/env/set-env.ts":{"bytes":4309,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"../utilities/get-log-level"}],"format":"esm"},"packages/config-tools/src/env/index.ts":{"bytes":54,"imports":[{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./get-env"},{"path":"packages/config-tools/src/env/set-env.ts","kind":"import-statement","original":"./set-env"}],"format":"esm"},"packages/config-tools/src/index.ts":{"bytes":399,"imports":[{"path":"packages/config-tools/src/config-file/index.ts","kind":"import-statement","original":"./config-file"},{"path":"packages/config-tools/src/create-storm-config.ts","kind":"import-statement","original":"./create-storm-config"},{"path":"packages/config-tools/src/env/index.ts","kind":"import-statement","original":"./env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"./utilities"}],"format":"esm"}},"outputs":{"dist/packages/config-tools/index.cjs":{"imports":[{"path":"cosmiconfig","kind":"require-call","external":true},{"path":"fs","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"zod","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"locate-path","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"url","kind":"require-call","external":true}],"exports":[],"entryPoint":"packages/config-tools/src/index.ts","inputs":{"packages/config-tools/src/index.ts":{"bytesInOutput":763},"packages/config-tools/src/config-file/get-config-file.ts":{"bytesInOutput":1594},"packages/config-tools/src/config-file/index.ts":{"bytesInOutput":0},"packages/config-tools/src/types.ts":{"bytesInOutput":256},"packages/config-tools/src/utilities/get-default-config.ts":{"bytesInOutput":2038},"packages/config-tools/src/schema.ts":{"bytesInOutput":4454},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1043},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1807},"packages/config-tools/src/utilities/index.ts":{"bytesInOutput":0},"packages/config-tools/src/utilities/get-log-level.ts":{"bytesInOutput":1029},"packages/config-tools/src/env/get-env.ts":{"bytesInOutput":3060},"packages/config-tools/src/create-storm-config.ts":{"bytesInOutput":972},"packages/config-tools/src/env/index.ts":{"bytesInOutput":0},"packages/config-tools/src/env/set-env.ts":{"bytesInOutput":3528}},"bytes":22999},"dist/packages/config-tools/utilities/find-workspace-root.cjs":{"imports":[{"path":"path","kind":"require-call","external":true},{"path":"locate-path","kind":"require-call","external":true},{"path":"path","kind":"require-call","external":true},{"path":"url","kind":"require-call","external":true}],"exports":[],"entryPoint":"packages/config-tools/src/utilities/find-workspace-root.ts","inputs":{"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1230},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1807}},"bytes":4707}}}
package/meta.esm.json CHANGED
@@ -1 +1 @@
1
- {"inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytes":1987,"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/config-file/index.ts":{"bytes":35,"imports":[{"path":"packages/config-tools/src/config-file/get-config-file.ts","kind":"import-statement","original":"./get-config-file"}],"format":"esm"},"packages/config-tools/src/types.ts":{"bytes":1405,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"./schema","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/schema.ts":{"bytes":5736,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/get-default-config.ts":{"bytes":2708,"imports":[{"path":"fs","kind":"import-statement","external":true},{"path":"nx/src/utils/find-workspace-root.js","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"../schema"},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/get-log-level.ts":{"bytes":1409,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/config-tools/src/utilities/index.ts":{"bytes":71,"imports":[{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./get-default-config"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"./get-log-level"}],"format":"esm"},"packages/config-tools/src/env/get-env.ts":{"bytes":4137,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"../utilities"}],"format":"esm"},"packages/config-tools/src/create-storm-config.ts":{"bytes":2482,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./env/get-env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"./types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/env/set-env.ts":{"bytes":4309,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"../utilities/get-log-level"}],"format":"esm"},"packages/config-tools/src/env/index.ts":{"bytes":54,"imports":[{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./get-env"},{"path":"packages/config-tools/src/env/set-env.ts","kind":"import-statement","original":"./set-env"}],"format":"esm"},"packages/config-tools/src/index.ts":{"bytes":399,"imports":[{"path":"packages/config-tools/src/config-file/index.ts","kind":"import-statement","original":"./config-file"},{"path":"packages/config-tools/src/create-storm-config.ts","kind":"import-statement","original":"./create-storm-config"},{"path":"packages/config-tools/src/env/index.ts","kind":"import-statement","original":"./env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"./utilities"}],"format":"esm"},"packages/config-tools/src/utilities/find-up.ts":{"bytes":4414,"imports":[{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytes":1857,"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"fp-ts/Either","kind":"import-statement","external":true},{"path":"fp-ts/function","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-up.ts","kind":"import-statement","original":"./find-up"}],"format":"esm"}},"outputs":{"dist/packages/config-tools/index.js":{"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"fs","kind":"import-statement","external":true},{"path":"nx/src/utils/find-workspace-root.js","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true}],"exports":["ColorConfigSchema","DefaultColorConfig","DefaultStormConfig","LogLevel","LogLevelLabel","StormConfigSchema","createConfigExtension","createStormConfig","getConfigEnv","getConfigFile","getDefaultConfig","getExtensionEnv","getLogLevel","getLogLevelLabel","setConfigEnv","setExtensionEnv"],"entryPoint":"packages/config-tools/src/index.ts","inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytesInOutput":1564},"packages/config-tools/src/config-file/index.ts":{"bytesInOutput":0},"packages/config-tools/src/index.ts":{"bytesInOutput":0},"packages/config-tools/src/types.ts":{"bytesInOutput":256},"packages/config-tools/src/utilities/get-default-config.ts":{"bytesInOutput":2158},"packages/config-tools/src/schema.ts":{"bytesInOutput":4444},"packages/config-tools/src/utilities/index.ts":{"bytesInOutput":0},"packages/config-tools/src/utilities/get-log-level.ts":{"bytesInOutput":1029},"packages/config-tools/src/env/get-env.ts":{"bytesInOutput":3060},"packages/config-tools/src/create-storm-config.ts":{"bytesInOutput":916},"packages/config-tools/src/env/index.ts":{"bytesInOutput":0},"packages/config-tools/src/env/set-env.ts":{"bytesInOutput":3528}},"bytes":17732},"dist/packages/config-tools/utilities/find-workspace-root.js":{"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"fp-ts/Either","kind":"import-statement","external":true},{"path":"fp-ts/function","kind":"import-statement","external":true},{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"exports":["findWorkspaceRoot"],"entryPoint":"packages/config-tools/src/utilities/find-workspace-root.ts","inputs":{"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1420},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1717}},"bytes":3345}}}
1
+ {"inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytes":1987,"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"../types","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/config-file/index.ts":{"bytes":35,"imports":[{"path":"packages/config-tools/src/config-file/get-config-file.ts","kind":"import-statement","original":"./get-config-file"}],"format":"esm"},"packages/config-tools/src/types.ts":{"bytes":1405,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"./schema","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/schema.ts":{"bytes":5736,"imports":[{"path":"zod","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-up.ts":{"bytes":4419,"imports":[{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"format":"esm"},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytes":1264,"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-up.ts","kind":"import-statement","original":"./find-up"}],"format":"esm"},"packages/config-tools/src/utilities/get-default-config.ts":{"bytes":2592,"imports":[{"path":"fs","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"../schema"},{"path":"../types","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/find-workspace-root.ts","kind":"import-statement","original":"./find-workspace-root"}],"format":"esm"},"packages/config-tools/src/utilities/get-log-level.ts":{"bytes":1409,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/config-tools/src/utilities/index.ts":{"bytes":71,"imports":[{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./get-default-config"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"./get-log-level"}],"format":"esm"},"packages/config-tools/src/env/get-env.ts":{"bytes":4137,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"../utilities"}],"format":"esm"},"packages/config-tools/src/create-storm-config.ts":{"bytes":2606,"imports":[{"path":"zod","kind":"import-statement","external":true},{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./env/get-env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"./types","kind":"import-statement","external":true},{"path":"packages/config-tools/src/utilities/get-default-config.ts","kind":"import-statement","original":"./utilities/get-default-config"}],"format":"esm"},"packages/config-tools/src/env/set-env.ts":{"bytes":4309,"imports":[{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"../types"},{"path":"packages/config-tools/src/utilities/get-log-level.ts","kind":"import-statement","original":"../utilities/get-log-level"}],"format":"esm"},"packages/config-tools/src/env/index.ts":{"bytes":54,"imports":[{"path":"packages/config-tools/src/env/get-env.ts","kind":"import-statement","original":"./get-env"},{"path":"packages/config-tools/src/env/set-env.ts","kind":"import-statement","original":"./set-env"}],"format":"esm"},"packages/config-tools/src/index.ts":{"bytes":399,"imports":[{"path":"packages/config-tools/src/config-file/index.ts","kind":"import-statement","original":"./config-file"},{"path":"packages/config-tools/src/create-storm-config.ts","kind":"import-statement","original":"./create-storm-config"},{"path":"packages/config-tools/src/env/index.ts","kind":"import-statement","original":"./env"},{"path":"packages/config-tools/src/schema.ts","kind":"import-statement","original":"./schema"},{"path":"packages/config-tools/src/types.ts","kind":"import-statement","original":"./types"},{"path":"packages/config-tools/src/utilities/index.ts","kind":"import-statement","original":"./utilities"}],"format":"esm"}},"outputs":{"dist/packages/config-tools/index.js":{"imports":[{"path":"cosmiconfig","kind":"import-statement","external":true},{"path":"fs","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"zod","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"exports":["ColorConfigSchema","DefaultColorConfig","DefaultStormConfig","LogLevel","LogLevelLabel","StormConfigSchema","createConfigExtension","createStormConfig","getConfigEnv","getConfigFile","getDefaultConfig","getExtensionEnv","getLogLevel","getLogLevelLabel","setConfigEnv","setExtensionEnv"],"entryPoint":"packages/config-tools/src/index.ts","inputs":{"packages/config-tools/src/config-file/get-config-file.ts":{"bytesInOutput":1564},"packages/config-tools/src/config-file/index.ts":{"bytesInOutput":0},"packages/config-tools/src/index.ts":{"bytesInOutput":0},"packages/config-tools/src/types.ts":{"bytesInOutput":256},"packages/config-tools/src/utilities/get-default-config.ts":{"bytesInOutput":1984},"packages/config-tools/src/schema.ts":{"bytesInOutput":4444},"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1033},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1722},"packages/config-tools/src/utilities/index.ts":{"bytesInOutput":0},"packages/config-tools/src/utilities/get-log-level.ts":{"bytesInOutput":1029},"packages/config-tools/src/env/get-env.ts":{"bytesInOutput":3060},"packages/config-tools/src/create-storm-config.ts":{"bytesInOutput":972},"packages/config-tools/src/env/index.ts":{"bytesInOutput":0},"packages/config-tools/src/env/set-env.ts":{"bytesInOutput":3528}},"bytes":20546},"dist/packages/config-tools/utilities/find-workspace-root.js":{"imports":[{"path":"path","kind":"import-statement","external":true},{"path":"locate-path","kind":"import-statement","external":true},{"path":"path","kind":"import-statement","external":true},{"path":"url","kind":"import-statement","external":true}],"exports":["findWorkspaceRoot"],"entryPoint":"packages/config-tools/src/utilities/find-workspace-root.ts","inputs":{"packages/config-tools/src/utilities/find-workspace-root.ts":{"bytesInOutput":1033},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1722}},"bytes":2963}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/config-tools",
3
- "version": "1.5.9",
3
+ "version": "1.5.11",
4
4
  "private": false,
5
5
  "description": "⚡The Storm-Ops monorepo contains utility applications, tools, and various libraries to create modern and scalable web applications.",
6
6
  "repository": {
@@ -33,21 +33,19 @@ __export(find_workspace_root_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(find_workspace_root_exports);
35
35
  var path2 = __toESM(require("path"), 1);
36
- var import_Either = require("fp-ts/Either");
37
- var import_function = require("fp-ts/function");
38
36
 
39
37
  // packages/config-tools/src/utilities/find-up.ts
40
38
  var import_locate_path = require("locate-path");
41
- var import_path = __toESM(require("path"), 1);
39
+ var path = __toESM(require("path"), 1);
42
40
  var import_url = require("url");
43
41
  var findUpStop = Symbol("findUpStop");
44
42
  function toPath(urlOrPath) {
45
43
  return urlOrPath instanceof URL ? (0, import_url.fileURLToPath)(urlOrPath) : urlOrPath;
46
44
  }
47
45
  function findUpMultipleSync(names, options = { limit: 1, type: "file" }) {
48
- let directory = import_path.default.resolve(toPath(options.cwd) ?? "");
49
- const { root } = import_path.default.parse(directory);
50
- const stopAt = import_path.default.resolve(directory, toPath(options.stopAt) ?? root);
46
+ let directory = path.resolve(toPath(options.cwd) ?? "");
47
+ const { root } = path.parse(directory);
48
+ const stopAt = path.resolve(directory, toPath(options.stopAt) ?? root);
51
49
  const limit = options.limit ?? Number.POSITIVE_INFINITY;
52
50
  if (typeof names === "function") {
53
51
  const foundPath = names(options.cwd);
@@ -69,12 +67,12 @@ function findUpMultipleSync(names, options = { limit: 1, type: "file" }) {
69
67
  while (true) {
70
68
  const foundPath = runMatcher({ ...options, cwd: directory });
71
69
  if (foundPath) {
72
- matches.push(import_path.default.resolve(directory, foundPath));
70
+ matches.push(path.resolve(directory, foundPath));
73
71
  }
74
72
  if (directory === stopAt || matches.length >= limit) {
75
73
  break;
76
74
  }
77
- directory = import_path.default.dirname(directory);
75
+ directory = path.dirname(directory);
78
76
  }
79
77
  return matches;
80
78
  };
@@ -110,33 +108,22 @@ var rootFiles = [
110
108
  "pnpm-lock.yml",
111
109
  "bun.lockb"
112
110
  ];
113
- var formatError = (path3) => ({
114
- type: `Cannot find workspace root upwards from known path. Files search list includes:
115
- ${rootFiles.join(
116
- "\n"
117
- )}`,
118
- path: path3
119
- });
120
- var searchUp = (target, cwd) => (0, import_function.pipe)(
121
- findUpSync(target, {
122
- cwd,
111
+ function findWorkspaceRoot(pathInsideMonorepo) {
112
+ const result = process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : findUpSync(rootFiles, {
113
+ cwd: pathInsideMonorepo ?? process.cwd(),
123
114
  type: "file",
124
115
  limit: 1
125
- }),
126
- (0, import_Either.fromNullable)(formatError(cwd)),
127
- (0, import_Either.map)(path2.dirname)
128
- );
129
- function findWorkspaceRoot(pathInsideMonorepo) {
130
- return process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : (0, import_function.pipe)(
131
- (0, import_Either.fromNullable)(formatError(""))(pathInsideMonorepo),
132
- (0, import_Either.chain)((from) => searchUp(rootFiles, from)),
133
- (0, import_Either.alt)(
134
- () => (0, import_function.pipe)(
135
- searchUp(rootFiles, process.cwd()),
136
- (0, import_Either.mapLeft)((0, import_function.constant)(formatError(process.cwd())))
137
- )
138
- )
139
- );
116
+ });
117
+ if (!result) {
118
+ throw new Error(
119
+ `Cannot find workspace root upwards from known path. Files search list includes:
120
+ ${rootFiles.join(
121
+ "\n"
122
+ )}
123
+ Path: ${path2}`
124
+ );
125
+ }
126
+ return result;
140
127
  }
141
128
  // Annotate the CommonJS export names for ESM import in node:
142
129
  0 && (module.exports = {
@@ -1,11 +1,9 @@
1
1
  // packages/config-tools/src/utilities/find-workspace-root.ts
2
2
  import * as path2 from "path";
3
- import { alt, chain, fromNullable, map, mapLeft } from "fp-ts/Either";
4
- import { constant, pipe } from "fp-ts/function";
5
3
 
6
4
  // packages/config-tools/src/utilities/find-up.ts
7
5
  import { locatePath, locatePathSync } from "locate-path";
8
- import path from "path";
6
+ import * as path from "path";
9
7
  import { fileURLToPath } from "url";
10
8
  var findUpStop = Symbol("findUpStop");
11
9
  function toPath(urlOrPath) {
@@ -77,33 +75,22 @@ var rootFiles = [
77
75
  "pnpm-lock.yml",
78
76
  "bun.lockb"
79
77
  ];
80
- var formatError = (path3) => ({
81
- type: `Cannot find workspace root upwards from known path. Files search list includes:
82
- ${rootFiles.join(
83
- "\n"
84
- )}`,
85
- path: path3
86
- });
87
- var searchUp = (target, cwd) => pipe(
88
- findUpSync(target, {
89
- cwd,
78
+ function findWorkspaceRoot(pathInsideMonorepo) {
79
+ const result = process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : findUpSync(rootFiles, {
80
+ cwd: pathInsideMonorepo ?? process.cwd(),
90
81
  type: "file",
91
82
  limit: 1
92
- }),
93
- fromNullable(formatError(cwd)),
94
- map(path2.dirname)
95
- );
96
- function findWorkspaceRoot(pathInsideMonorepo) {
97
- return process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : pipe(
98
- fromNullable(formatError(""))(pathInsideMonorepo),
99
- chain((from) => searchUp(rootFiles, from)),
100
- alt(
101
- () => pipe(
102
- searchUp(rootFiles, process.cwd()),
103
- mapLeft(constant(formatError(process.cwd())))
104
- )
105
- )
106
- );
83
+ });
84
+ if (!result) {
85
+ throw new Error(
86
+ `Cannot find workspace root upwards from known path. Files search list includes:
87
+ ${rootFiles.join(
88
+ "\n"
89
+ )}
90
+ Path: ${path2}`
91
+ );
92
+ }
93
+ return result;
107
94
  }
108
95
  export {
109
96
  findWorkspaceRoot