@storm-software/config-tools 1.5.6 → 1.5.8
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 +14 -0
- package/README.md +1 -1
- package/index.cjs +5 -8
- package/index.js +4 -7
- package/meta.cjs.json +1 -1
- package/meta.esm.json +1 -1
- package/package.json +5 -1
- package/utilities/find-workspace-root.cjs +147 -0
- package/utilities/find-workspace-root.js +113 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [1.5.7](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.6...config-tools-v1.5.7) (2023-12-20)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* **config-tools:** Mark the package type as module ([3ca24c0](https://github.com/storm-software/storm-ops/commit/3ca24c0149ce2a56d2b64f69441b0f8f7efa76a5))
|
|
7
|
+
|
|
8
|
+
## [1.5.6](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.5...config-tools-v1.5.6) (2023-12-20)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **config-tools:** Enabled bundling but kept `thirdParty` false ([77f5e54](https://github.com/storm-software/storm-ops/commit/77f5e54495c23998546083c45a8358374bed2104))
|
|
14
|
+
|
|
1
15
|
## [1.5.5](https://github.com/storm-software/storm-ops/compare/config-tools-v1.5.4...config-tools-v1.5.5) (2023-12-20)
|
|
2
16
|
|
|
3
17
|
|
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ This package is part of the <b>⚡Storm-Ops</b> monorepo. The Storm-Ops packages
|
|
|
16
16
|
|
|
17
17
|
<h3 align="center">💻 Visit <a href="https://stormsoftware.org" target="_blank">stormsoftware.org</a> to stay up to date with this developer</h3><br />
|
|
18
18
|
|
|
19
|
-
[](https://prettier.io/)
|
|
20
20
|
[](http://nx.dev/) [](https://nextjs.org/) [](http://commitizen.github.io/cz-cli/)  [](https://docusaurus.io/) 
|
|
21
21
|
|
|
22
22
|
<h3 align="center" bold="true">⚠️ <b>Attention</b> ⚠️ This repository, and the apps, libraries, and tools contained within, is still in it's initial development phase. As a result, bugs and issues are expected with it's usage. When the main development phase completes, a proper release will be performed, the packages will be availible through NPM (and other distributions), and this message will be removed. However, in the meantime, please feel free to report any issues you may come across.</h3><br />
|
package/index.cjs
CHANGED
|
@@ -111,7 +111,7 @@ var import_find_workspace_root = require("nx/src/utils/find-workspace-root.js");
|
|
|
111
111
|
var import_path = require("path");
|
|
112
112
|
|
|
113
113
|
// packages/config-tools/src/schema.ts
|
|
114
|
-
var z = __toESM(require("zod"));
|
|
114
|
+
var z = __toESM(require("zod"), 1);
|
|
115
115
|
var ColorConfigSchema = z.object({
|
|
116
116
|
primary: z.string().trim().toLowerCase().regex(/^#([0-9a-f]{3}){1,2}$/i).length(7).default("#0ea5e9").describe("The primary color of the workspace"),
|
|
117
117
|
background: z.string().trim().toLowerCase().regex(/^#([0-9a-f]{3}){1,2}$/i).length(7).default("#1d232a").describe("The background color of the workspace"),
|
|
@@ -198,7 +198,10 @@ var getDefaultConfig = (config = {}) => {
|
|
|
198
198
|
let repository = "https://github.com/storm-software/storm-stack";
|
|
199
199
|
let license = DefaultStormConfig.license;
|
|
200
200
|
let homepage = DefaultStormConfig.homepage;
|
|
201
|
-
const workspaceRoot =
|
|
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
|
+
}
|
|
202
205
|
if ((0, import_fs.existsSync)((0, import_path.join)(workspaceRoot, "package.json"))) {
|
|
203
206
|
const file = (0, import_fs.readFileSync)((0, import_path.join)(workspaceRoot, "package.json"), {
|
|
204
207
|
encoding: "utf-8"
|
|
@@ -226,12 +229,6 @@ var getDefaultConfig = (config = {}) => {
|
|
|
226
229
|
})
|
|
227
230
|
);
|
|
228
231
|
};
|
|
229
|
-
var getWorkspaceRoot = () => {
|
|
230
|
-
const root = (0, import_find_workspace_root.findWorkspaceRoot)(process.cwd());
|
|
231
|
-
process.env.STORM_WORKSPACE_ROOT ??= root?.dir;
|
|
232
|
-
process.env.NX_WORKSPACE_ROOT_PATH ??= root?.dir;
|
|
233
|
-
return root?.dir;
|
|
234
|
-
};
|
|
235
232
|
|
|
236
233
|
// packages/config-tools/src/utilities/get-log-level.ts
|
|
237
234
|
var getLogLevel = (label) => {
|
package/index.js
CHANGED
|
@@ -148,7 +148,10 @@ var getDefaultConfig = (config = {}) => {
|
|
|
148
148
|
let repository = "https://github.com/storm-software/storm-stack";
|
|
149
149
|
let license = DefaultStormConfig.license;
|
|
150
150
|
let homepage = DefaultStormConfig.homepage;
|
|
151
|
-
const workspaceRoot =
|
|
151
|
+
const workspaceRoot = findWorkspaceRoot(process.cwd());
|
|
152
|
+
if (typeof workspaceRoot !== "string") {
|
|
153
|
+
throw new Error("Could not find workspace root");
|
|
154
|
+
}
|
|
152
155
|
if (existsSync(join(workspaceRoot, "package.json"))) {
|
|
153
156
|
const file = readFileSync(join(workspaceRoot, "package.json"), {
|
|
154
157
|
encoding: "utf-8"
|
|
@@ -176,12 +179,6 @@ var getDefaultConfig = (config = {}) => {
|
|
|
176
179
|
})
|
|
177
180
|
);
|
|
178
181
|
};
|
|
179
|
-
var getWorkspaceRoot = () => {
|
|
180
|
-
const root = findWorkspaceRoot(process.cwd());
|
|
181
|
-
process.env.STORM_WORKSPACE_ROOT ??= root?.dir;
|
|
182
|
-
process.env.NX_WORKSPACE_ROOT_PATH ??= root?.dir;
|
|
183
|
-
return root?.dir;
|
|
184
|
-
};
|
|
185
182
|
|
|
186
183
|
// packages/config-tools/src/utilities/get-log-level.ts
|
|
187
184
|
var getLogLevel = (label) => {
|
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":
|
|
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":1932,"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":1866},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1993}},"bytes":5529}}}
|
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":
|
|
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":1932,"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":1497},"packages/config-tools/src/utilities/find-up.ts":{"bytesInOutput":1821}},"bytes":3526}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@storm-software/config-tools",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.8",
|
|
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": {
|
|
@@ -8,11 +8,15 @@
|
|
|
8
8
|
"url": "https://github.com/storm-software/storm-ops.git",
|
|
9
9
|
"directory": "packages/config-tools"
|
|
10
10
|
},
|
|
11
|
+
"type": "module",
|
|
11
12
|
"main": "./index.cjs",
|
|
12
13
|
"module": "./index.js",
|
|
13
14
|
"types": "declarations.d.ts",
|
|
14
15
|
"dependencies": {
|
|
15
16
|
"cosmiconfig": "^9.0.0",
|
|
17
|
+
"find-up": "^7.0.0",
|
|
18
|
+
"fp-ts": "^2.16.1",
|
|
19
|
+
"locate-path": "^7.2.0",
|
|
16
20
|
"zod": "^3.22.4"
|
|
17
21
|
},
|
|
18
22
|
"publishConfig": {
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// packages/config-tools/src/utilities/find-workspace-root.ts
|
|
30
|
+
var find_workspace_root_exports = {};
|
|
31
|
+
__export(find_workspace_root_exports, {
|
|
32
|
+
findWorkspaceRoot: () => findWorkspaceRoot
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(find_workspace_root_exports);
|
|
35
|
+
var path2 = __toESM(require("path"), 1);
|
|
36
|
+
var import_Either = require("fp-ts/Either");
|
|
37
|
+
var import_function = require("fp-ts/function");
|
|
38
|
+
|
|
39
|
+
// packages/config-tools/src/utilities/find-up.ts
|
|
40
|
+
var import_locate_path = require("locate-path");
|
|
41
|
+
var import_path = __toESM(require("path"), 1);
|
|
42
|
+
var import_url = require("url");
|
|
43
|
+
var findUpStop = Symbol("findUpStop");
|
|
44
|
+
function toPath(urlOrPath) {
|
|
45
|
+
return urlOrPath instanceof URL ? (0, import_url.fileURLToPath)(urlOrPath) : urlOrPath;
|
|
46
|
+
}
|
|
47
|
+
async function findUpMultiple(names, options = { limit: Number.POSITIVE_INFINITY, 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));
|
|
51
|
+
const limit = options.limit ?? Number.POSITIVE_INFINITY;
|
|
52
|
+
if (typeof names === "function") {
|
|
53
|
+
const foundPath = names(options.cwd);
|
|
54
|
+
return (0, import_locate_path.locatePathSync)([foundPath], { ...options, cwd: directory });
|
|
55
|
+
}
|
|
56
|
+
const runNameMatcher = async (name) => {
|
|
57
|
+
const paths = [name].flat();
|
|
58
|
+
const runMatcher = async (locateOptions) => {
|
|
59
|
+
if (typeof name !== "function") {
|
|
60
|
+
return (0, import_locate_path.locatePath)(paths, locateOptions);
|
|
61
|
+
}
|
|
62
|
+
const foundPath = await name(locateOptions.cwd);
|
|
63
|
+
if (typeof foundPath === "string") {
|
|
64
|
+
return (0, import_locate_path.locatePath)([foundPath], locateOptions);
|
|
65
|
+
}
|
|
66
|
+
return foundPath;
|
|
67
|
+
};
|
|
68
|
+
const matches = [];
|
|
69
|
+
while (true) {
|
|
70
|
+
const foundPath = await runMatcher({ ...options, cwd: directory });
|
|
71
|
+
if (foundPath) {
|
|
72
|
+
matches.push(import_path.default.resolve(directory, foundPath));
|
|
73
|
+
}
|
|
74
|
+
if (directory === stopAt || matches.length >= limit) {
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
directory = import_path.default.dirname(directory);
|
|
78
|
+
}
|
|
79
|
+
return matches;
|
|
80
|
+
};
|
|
81
|
+
return (await Promise.allSettled(
|
|
82
|
+
(names && Array.isArray(names) ? names : [names]).map((name) => runNameMatcher(name))
|
|
83
|
+
)).flat();
|
|
84
|
+
}
|
|
85
|
+
async function findUp(names, options = { limit: 1, type: "file" }) {
|
|
86
|
+
const matches = await findUpMultiple(names, options);
|
|
87
|
+
return matches[0];
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// packages/config-tools/src/utilities/find-workspace-root.ts
|
|
91
|
+
var rootFiles = [
|
|
92
|
+
"lerna.json",
|
|
93
|
+
"nx.json",
|
|
94
|
+
"turbo.json",
|
|
95
|
+
"npm-workspace.json",
|
|
96
|
+
"yarn-workspace.json",
|
|
97
|
+
"pnpm-workspace.json",
|
|
98
|
+
"npm-workspace.yaml",
|
|
99
|
+
"yarn-workspace.yaml",
|
|
100
|
+
"pnpm-workspace.yaml",
|
|
101
|
+
"npm-workspace.yml",
|
|
102
|
+
"yarn-workspace.yml",
|
|
103
|
+
"pnpm-workspace.yml",
|
|
104
|
+
"npm-lock.json",
|
|
105
|
+
"yarn-lock.json",
|
|
106
|
+
"pnpm-lock.json",
|
|
107
|
+
"npm-lock.yaml",
|
|
108
|
+
"yarn-lock.yaml",
|
|
109
|
+
"pnpm-lock.yaml",
|
|
110
|
+
"npm-lock.yml",
|
|
111
|
+
"yarn-lock.yml",
|
|
112
|
+
"pnpm-lock.yml",
|
|
113
|
+
"bun.lockb"
|
|
114
|
+
];
|
|
115
|
+
var formatError = (path3) => ({
|
|
116
|
+
type: `Cannot find workspace root upwards from known path. Files search list includes:
|
|
117
|
+
${rootFiles.join(
|
|
118
|
+
"\n"
|
|
119
|
+
)}`,
|
|
120
|
+
path: path3
|
|
121
|
+
});
|
|
122
|
+
var searchUp = (target, cwd) => (0, import_function.pipe)(
|
|
123
|
+
// FIXME: this should be async, or at least offer an async version in addition
|
|
124
|
+
findUp(target, {
|
|
125
|
+
cwd,
|
|
126
|
+
type: "file",
|
|
127
|
+
limit: 1
|
|
128
|
+
}),
|
|
129
|
+
(0, import_Either.fromNullable)(formatError(cwd)),
|
|
130
|
+
(0, import_Either.map)(path2.dirname)
|
|
131
|
+
);
|
|
132
|
+
function findWorkspaceRoot(pathInsideMonorepo) {
|
|
133
|
+
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)(
|
|
134
|
+
(0, import_Either.fromNullable)(formatError(""))(pathInsideMonorepo),
|
|
135
|
+
(0, import_Either.chain)((from) => searchUp(rootFiles, from)),
|
|
136
|
+
(0, import_Either.alt)(
|
|
137
|
+
() => (0, import_function.pipe)(
|
|
138
|
+
searchUp(rootFiles, process.cwd()),
|
|
139
|
+
(0, import_Either.mapLeft)((0, import_function.constant)(formatError(process.cwd())))
|
|
140
|
+
)
|
|
141
|
+
)
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
145
|
+
0 && (module.exports = {
|
|
146
|
+
findWorkspaceRoot
|
|
147
|
+
});
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
// packages/config-tools/src/utilities/find-workspace-root.ts
|
|
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
|
+
|
|
6
|
+
// packages/config-tools/src/utilities/find-up.ts
|
|
7
|
+
import { locatePath, locatePathSync } from "locate-path";
|
|
8
|
+
import path from "path";
|
|
9
|
+
import { fileURLToPath } from "url";
|
|
10
|
+
var findUpStop = Symbol("findUpStop");
|
|
11
|
+
function toPath(urlOrPath) {
|
|
12
|
+
return urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath;
|
|
13
|
+
}
|
|
14
|
+
async function findUpMultiple(names, options = { limit: Number.POSITIVE_INFINITY, type: "file" }) {
|
|
15
|
+
let directory = path.resolve(toPath(options.cwd) ?? "");
|
|
16
|
+
const { root } = path.parse(directory);
|
|
17
|
+
const stopAt = path.resolve(directory, toPath(options.stopAt ?? root));
|
|
18
|
+
const limit = options.limit ?? Number.POSITIVE_INFINITY;
|
|
19
|
+
if (typeof names === "function") {
|
|
20
|
+
const foundPath = names(options.cwd);
|
|
21
|
+
return locatePathSync([foundPath], { ...options, cwd: directory });
|
|
22
|
+
}
|
|
23
|
+
const runNameMatcher = async (name) => {
|
|
24
|
+
const paths = [name].flat();
|
|
25
|
+
const runMatcher = async (locateOptions) => {
|
|
26
|
+
if (typeof name !== "function") {
|
|
27
|
+
return locatePath(paths, locateOptions);
|
|
28
|
+
}
|
|
29
|
+
const foundPath = await name(locateOptions.cwd);
|
|
30
|
+
if (typeof foundPath === "string") {
|
|
31
|
+
return locatePath([foundPath], locateOptions);
|
|
32
|
+
}
|
|
33
|
+
return foundPath;
|
|
34
|
+
};
|
|
35
|
+
const matches = [];
|
|
36
|
+
while (true) {
|
|
37
|
+
const foundPath = await runMatcher({ ...options, cwd: directory });
|
|
38
|
+
if (foundPath) {
|
|
39
|
+
matches.push(path.resolve(directory, foundPath));
|
|
40
|
+
}
|
|
41
|
+
if (directory === stopAt || matches.length >= limit) {
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
directory = path.dirname(directory);
|
|
45
|
+
}
|
|
46
|
+
return matches;
|
|
47
|
+
};
|
|
48
|
+
return (await Promise.allSettled(
|
|
49
|
+
(names && Array.isArray(names) ? names : [names]).map((name) => runNameMatcher(name))
|
|
50
|
+
)).flat();
|
|
51
|
+
}
|
|
52
|
+
async function findUp(names, options = { limit: 1, type: "file" }) {
|
|
53
|
+
const matches = await findUpMultiple(names, options);
|
|
54
|
+
return matches[0];
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// packages/config-tools/src/utilities/find-workspace-root.ts
|
|
58
|
+
var rootFiles = [
|
|
59
|
+
"lerna.json",
|
|
60
|
+
"nx.json",
|
|
61
|
+
"turbo.json",
|
|
62
|
+
"npm-workspace.json",
|
|
63
|
+
"yarn-workspace.json",
|
|
64
|
+
"pnpm-workspace.json",
|
|
65
|
+
"npm-workspace.yaml",
|
|
66
|
+
"yarn-workspace.yaml",
|
|
67
|
+
"pnpm-workspace.yaml",
|
|
68
|
+
"npm-workspace.yml",
|
|
69
|
+
"yarn-workspace.yml",
|
|
70
|
+
"pnpm-workspace.yml",
|
|
71
|
+
"npm-lock.json",
|
|
72
|
+
"yarn-lock.json",
|
|
73
|
+
"pnpm-lock.json",
|
|
74
|
+
"npm-lock.yaml",
|
|
75
|
+
"yarn-lock.yaml",
|
|
76
|
+
"pnpm-lock.yaml",
|
|
77
|
+
"npm-lock.yml",
|
|
78
|
+
"yarn-lock.yml",
|
|
79
|
+
"pnpm-lock.yml",
|
|
80
|
+
"bun.lockb"
|
|
81
|
+
];
|
|
82
|
+
var formatError = (path3) => ({
|
|
83
|
+
type: `Cannot find workspace root upwards from known path. Files search list includes:
|
|
84
|
+
${rootFiles.join(
|
|
85
|
+
"\n"
|
|
86
|
+
)}`,
|
|
87
|
+
path: path3
|
|
88
|
+
});
|
|
89
|
+
var searchUp = (target, cwd) => pipe(
|
|
90
|
+
// FIXME: this should be async, or at least offer an async version in addition
|
|
91
|
+
findUp(target, {
|
|
92
|
+
cwd,
|
|
93
|
+
type: "file",
|
|
94
|
+
limit: 1
|
|
95
|
+
}),
|
|
96
|
+
fromNullable(formatError(cwd)),
|
|
97
|
+
map(path2.dirname)
|
|
98
|
+
);
|
|
99
|
+
function findWorkspaceRoot(pathInsideMonorepo) {
|
|
100
|
+
return process.env.STORM_WORKSPACE_ROOT ? process.env.STORM_WORKSPACE_ROOT : process.env.NX_WORKSPACE_ROOT_PATH ? process.env.NX_WORKSPACE_ROOT_PATH : pipe(
|
|
101
|
+
fromNullable(formatError(""))(pathInsideMonorepo),
|
|
102
|
+
chain((from) => searchUp(rootFiles, from)),
|
|
103
|
+
alt(
|
|
104
|
+
() => pipe(
|
|
105
|
+
searchUp(rootFiles, process.cwd()),
|
|
106
|
+
mapLeft(constant(formatError(process.cwd())))
|
|
107
|
+
)
|
|
108
|
+
)
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
export {
|
|
112
|
+
findWorkspaceRoot
|
|
113
|
+
};
|