@shadow-shard-tools/docs-core 1.0.18 → 1.0.20
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/README.md +60 -1
- package/dist/cjs/configs/clientConfig.js +30 -112
- package/dist/cjs/configs/index.browser.js +16 -0
- package/dist/cjs/configs/sstDocsConfigShared.js +169 -101
- package/dist/cjs/data/buildTree.js +48 -10
- package/dist/cjs/data/fsDataProvider.browser.js +10 -0
- package/dist/cjs/data/index.browser.js +19 -0
- package/dist/cjs/data/index.js +6 -1
- package/dist/cjs/data/loadAllCategories.js +15 -5
- package/dist/cjs/data/loadAllItems.js +19 -7
- package/dist/cjs/data/loadProducts.js +6 -0
- package/dist/cjs/data/loadVersionData.fs.js +31 -0
- package/dist/cjs/data/loadVersionData.js +130 -7
- package/dist/cjs/index.browser.js +22 -0
- package/dist/cjs/themes/index.js +5 -1
- package/dist/cjs/themes/styleThemeSchema.js +36 -0
- package/dist/cjs/types/DataDiagnostic.js +2 -0
- package/dist/cjs/types/Product.js +2 -0
- package/dist/cjs/utilities/index.browser.js +53 -0
- package/dist/cjs/utilities/path/pathExists.browser.js +6 -0
- package/dist/cjs/utilities/path/pathExists.js +1 -1
- package/dist/cjs/utilities/path/resolveAgainstProjectRoot.browser.js +6 -0
- package/dist/cjs/utilities/path/resolveDataPath.browser.js +6 -0
- package/dist/cjs/utilities/path/resolveDataPath.js +1 -1
- package/dist/cjs/utilities/string/withBasePath.js +37 -9
- package/dist/cjs/utilities/system/logger.browser.js +39 -0
- package/dist/cjs/utilities/system/logger.js +26 -6
- package/dist/configs/clientConfig.d.ts.map +1 -1
- package/dist/configs/clientConfig.js +30 -112
- package/dist/configs/clientConfig.js.map +1 -1
- package/dist/configs/index.browser.d.ts +4 -0
- package/dist/configs/index.browser.d.ts.map +1 -0
- package/dist/configs/index.browser.js +4 -0
- package/dist/configs/index.browser.js.map +1 -0
- package/dist/configs/sstDocsConfig.browser.d.ts.map +1 -1
- package/dist/configs/sstDocsConfig.browser.js.map +1 -1
- package/dist/configs/sstDocsConfig.d.ts.map +1 -1
- package/dist/configs/sstDocsConfig.js.map +1 -1
- package/dist/configs/sstDocsConfigShared.d.ts +8 -0
- package/dist/configs/sstDocsConfigShared.d.ts.map +1 -1
- package/dist/configs/sstDocsConfigShared.js +168 -97
- package/dist/configs/sstDocsConfigShared.js.map +1 -1
- package/dist/data/buildTree.d.ts +10 -2
- package/dist/data/buildTree.d.ts.map +1 -1
- package/dist/data/buildTree.js +48 -10
- package/dist/data/buildTree.js.map +1 -1
- package/dist/data/fsDataProvider.browser.d.ts +6 -0
- package/dist/data/fsDataProvider.browser.d.ts.map +1 -0
- package/dist/data/fsDataProvider.browser.js +7 -0
- package/dist/data/fsDataProvider.browser.js.map +1 -0
- package/dist/data/fsDataProvider.d.ts.map +1 -1
- package/dist/data/fsDataProvider.js.map +1 -1
- package/dist/data/index.browser.d.ts +8 -0
- package/dist/data/index.browser.d.ts.map +1 -0
- package/dist/data/index.browser.js +8 -0
- package/dist/data/index.browser.js.map +1 -0
- package/dist/data/index.d.ts +3 -1
- package/dist/data/index.d.ts.map +1 -1
- package/dist/data/index.js +3 -1
- package/dist/data/index.js.map +1 -1
- package/dist/data/loadAllCategories.d.ts +10 -1
- package/dist/data/loadAllCategories.d.ts.map +1 -1
- package/dist/data/loadAllCategories.js +15 -5
- package/dist/data/loadAllCategories.js.map +1 -1
- package/dist/data/loadAllItems.d.ts +10 -1
- package/dist/data/loadAllItems.d.ts.map +1 -1
- package/dist/data/loadAllItems.js +19 -7
- package/dist/data/loadAllItems.js.map +1 -1
- package/dist/data/loadProducts.d.ts +4 -0
- package/dist/data/loadProducts.d.ts.map +1 -0
- package/dist/data/loadProducts.js +4 -0
- package/dist/data/loadProducts.js.map +1 -0
- package/dist/data/loadVersionData.d.ts +37 -1
- package/dist/data/loadVersionData.d.ts.map +1 -1
- package/dist/data/loadVersionData.fs.d.ts +3 -0
- package/dist/data/loadVersionData.fs.d.ts.map +1 -0
- package/dist/data/loadVersionData.fs.js +26 -0
- package/dist/data/loadVersionData.fs.js.map +1 -0
- package/dist/data/loadVersionData.js +127 -7
- package/dist/data/loadVersionData.js.map +1 -1
- package/dist/index.browser.d.ts +7 -0
- package/dist/index.browser.d.ts.map +1 -0
- package/dist/index.browser.js +7 -0
- package/dist/index.browser.js.map +1 -0
- package/dist/themes/index.d.ts +1 -0
- package/dist/themes/index.d.ts.map +1 -1
- package/dist/themes/index.js +1 -0
- package/dist/themes/index.js.map +1 -1
- package/dist/themes/styleThemeSchema.d.ts +6 -0
- package/dist/themes/styleThemeSchema.d.ts.map +1 -0
- package/dist/themes/styleThemeSchema.js +32 -0
- package/dist/themes/styleThemeSchema.js.map +1 -0
- package/dist/themes/themeRegistry.d.ts.map +1 -1
- package/dist/themes/themeRegistry.js.map +1 -1
- package/dist/types/ClientVisibleSstDocsConfig.d.ts +1 -0
- package/dist/types/ClientVisibleSstDocsConfig.d.ts.map +1 -1
- package/dist/types/DataDiagnostic.d.ts +8 -0
- package/dist/types/DataDiagnostic.d.ts.map +1 -0
- package/dist/types/DataDiagnostic.js +2 -0
- package/dist/types/DataDiagnostic.js.map +1 -0
- package/dist/types/HtmlGeneratorSettings.d.ts +1 -1
- package/dist/types/HtmlGeneratorSettings.d.ts.map +1 -1
- package/dist/types/Product.d.ts +5 -0
- package/dist/types/Product.d.ts.map +1 -0
- package/dist/types/Product.js +2 -0
- package/dist/types/Product.js.map +1 -0
- package/dist/types/SstDocsConfig.d.ts +2 -0
- package/dist/types/SstDocsConfig.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utilities/index.browser.d.ts +23 -0
- package/dist/utilities/index.browser.d.ts.map +1 -0
- package/dist/utilities/index.browser.js +29 -0
- package/dist/utilities/index.browser.js.map +1 -0
- package/dist/utilities/path/pathExists.browser.d.ts +2 -0
- package/dist/utilities/path/pathExists.browser.d.ts.map +1 -0
- package/dist/utilities/path/pathExists.browser.js +4 -0
- package/dist/utilities/path/pathExists.browser.js.map +1 -0
- package/dist/utilities/path/pathExists.js +1 -1
- package/dist/utilities/path/pathExists.js.map +1 -1
- package/dist/utilities/path/resolveAgainstProjectRoot.browser.d.ts +2 -0
- package/dist/utilities/path/resolveAgainstProjectRoot.browser.d.ts.map +1 -0
- package/dist/utilities/path/resolveAgainstProjectRoot.browser.js +4 -0
- package/dist/utilities/path/resolveAgainstProjectRoot.browser.js.map +1 -0
- package/dist/utilities/path/resolveAgainstProjectRoot.d.ts.map +1 -1
- package/dist/utilities/path/resolveAgainstProjectRoot.js.map +1 -1
- package/dist/utilities/path/resolveDataPath.browser.d.ts +2 -0
- package/dist/utilities/path/resolveDataPath.browser.d.ts.map +1 -0
- package/dist/utilities/path/resolveDataPath.browser.js +4 -0
- package/dist/utilities/path/resolveDataPath.browser.js.map +1 -0
- package/dist/utilities/path/resolveDataPath.d.ts.map +1 -1
- package/dist/utilities/path/resolveDataPath.js +1 -1
- package/dist/utilities/path/resolveDataPath.js.map +1 -1
- package/dist/utilities/string/withBasePath.d.ts.map +1 -1
- package/dist/utilities/string/withBasePath.js +37 -6
- package/dist/utilities/string/withBasePath.js.map +1 -1
- package/dist/utilities/system/logger.browser.d.ts +3 -0
- package/dist/utilities/system/logger.browser.d.ts.map +1 -0
- package/dist/utilities/system/logger.browser.js +36 -0
- package/dist/utilities/system/logger.browser.js.map +1 -0
- package/dist/utilities/system/logger.d.ts.map +1 -1
- package/dist/utilities/system/logger.js +26 -6
- package/dist/utilities/system/logger.js.map +1 -1
- package/package.json +181 -9
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildTree = buildTree;
|
|
4
|
-
|
|
4
|
+
const logger_js_1 = require("../utilities/system/logger.js");
|
|
5
|
+
function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting, diagnostics, logger) {
|
|
5
6
|
if (visiting.has(raw.id)) {
|
|
6
|
-
|
|
7
|
+
const message = `Detected circular category reference at ${raw.id}.`;
|
|
8
|
+
diagnostics.push({
|
|
9
|
+
code: "circular-category",
|
|
10
|
+
level: "warn",
|
|
11
|
+
message,
|
|
12
|
+
context: { categoryId: raw.id },
|
|
13
|
+
});
|
|
14
|
+
logger.warn(message);
|
|
7
15
|
return null;
|
|
8
16
|
}
|
|
9
17
|
visiting.add(raw.id);
|
|
@@ -13,12 +21,26 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
|
|
|
13
21
|
const validDocs = docIds
|
|
14
22
|
.map((rawId) => {
|
|
15
23
|
if (typeof rawId !== "string" || rawId.length === 0) {
|
|
16
|
-
|
|
24
|
+
const message = `Invalid doc id in category ${raw.id}.`;
|
|
25
|
+
diagnostics.push({
|
|
26
|
+
code: "invalid-doc-ref",
|
|
27
|
+
level: "warn",
|
|
28
|
+
message,
|
|
29
|
+
context: { categoryId: raw.id, docId: rawId },
|
|
30
|
+
});
|
|
31
|
+
logger.warn(message);
|
|
17
32
|
return null;
|
|
18
33
|
}
|
|
19
34
|
const doc = docLookup.get(rawId);
|
|
20
35
|
if (!doc) {
|
|
21
|
-
|
|
36
|
+
const message = `Doc id ${rawId} referenced in category ${raw.id} not found.`;
|
|
37
|
+
diagnostics.push({
|
|
38
|
+
code: "missing-doc-ref",
|
|
39
|
+
level: "warn",
|
|
40
|
+
message,
|
|
41
|
+
context: { categoryId: raw.id, docId: rawId },
|
|
42
|
+
});
|
|
43
|
+
logger.warn(message);
|
|
22
44
|
return null;
|
|
23
45
|
}
|
|
24
46
|
usedDocIds.add(rawId);
|
|
@@ -35,15 +57,29 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
|
|
|
35
57
|
const validChildren = childIds
|
|
36
58
|
.map((rawChildId) => {
|
|
37
59
|
if (typeof rawChildId !== "string" || rawChildId.length === 0) {
|
|
38
|
-
|
|
60
|
+
const message = `Invalid child category id in ${raw.id}.`;
|
|
61
|
+
diagnostics.push({
|
|
62
|
+
code: "invalid-child-ref",
|
|
63
|
+
level: "warn",
|
|
64
|
+
message,
|
|
65
|
+
context: { categoryId: raw.id, childId: rawChildId },
|
|
66
|
+
});
|
|
67
|
+
logger.warn(message);
|
|
39
68
|
return null;
|
|
40
69
|
}
|
|
41
70
|
const childRaw = rawMap[rawChildId];
|
|
42
71
|
if (!childRaw) {
|
|
43
|
-
|
|
72
|
+
const message = `Child category ${rawChildId} referenced in ${raw.id} not found.`;
|
|
73
|
+
diagnostics.push({
|
|
74
|
+
code: "missing-child-ref",
|
|
75
|
+
level: "warn",
|
|
76
|
+
message,
|
|
77
|
+
context: { categoryId: raw.id, childId: rawChildId },
|
|
78
|
+
});
|
|
79
|
+
logger.warn(message);
|
|
44
80
|
return null;
|
|
45
81
|
}
|
|
46
|
-
return convertCategory(childRaw, rawMap, docLookup, usedDocIds, included, visiting);
|
|
82
|
+
return convertCategory(childRaw, rawMap, docLookup, usedDocIds, included, visiting, diagnostics, logger);
|
|
47
83
|
})
|
|
48
84
|
.filter((child) => child !== null);
|
|
49
85
|
if (validChildren.length > 0) {
|
|
@@ -61,10 +97,12 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
|
|
|
61
97
|
children,
|
|
62
98
|
};
|
|
63
99
|
}
|
|
64
|
-
function buildTree(rawMap, allDocs) {
|
|
100
|
+
function buildTree(rawMap, allDocs, options) {
|
|
65
101
|
const docLookup = new Map(allDocs.map((d) => [d.id, d]));
|
|
66
102
|
const usedDocIds = new Set();
|
|
67
103
|
const includedIds = new Set();
|
|
104
|
+
const diagnostics = [];
|
|
105
|
+
const logger = options?.logger ?? (0, logger_js_1.createLogger)("data:buildTree");
|
|
68
106
|
const childCategoryIds = new Set();
|
|
69
107
|
Object.values(rawMap).forEach((category) => {
|
|
70
108
|
if (Array.isArray(category?.children)) {
|
|
@@ -86,8 +124,8 @@ function buildTree(rawMap, allDocs) {
|
|
|
86
124
|
.map((rootCategory) => {
|
|
87
125
|
if (includedIds.has(rootCategory.id))
|
|
88
126
|
return null;
|
|
89
|
-
return convertCategory(rootCategory, rawMap, docLookup, usedDocIds, includedIds, new Set());
|
|
127
|
+
return convertCategory(rootCategory, rawMap, docLookup, usedDocIds, includedIds, new Set(), diagnostics, logger);
|
|
90
128
|
})
|
|
91
129
|
.filter((category) => category !== null);
|
|
92
|
-
return { tree, usedDocIds };
|
|
130
|
+
return { tree, usedDocIds, diagnostics };
|
|
93
131
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fsDataProvider = exports.FsDataProvider = void 0;
|
|
4
|
+
class FsDataProvider {
|
|
5
|
+
async readJson(_absPath) {
|
|
6
|
+
throw new Error("FsDataProvider is only available in Node.js environments where the file system can be read.");
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
exports.FsDataProvider = FsDataProvider;
|
|
10
|
+
exports.fsDataProvider = FsDataProvider;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.httpDataProvider = exports.HttpDataProvider = exports.loadProducts = exports.loadVersions = exports.loadVersionDataFromHttp = exports.loadVersionData = exports.loadAllItems = exports.loadAllCategories = exports.buildTree = void 0;
|
|
4
|
+
var buildTree_js_1 = require("./buildTree.js");
|
|
5
|
+
Object.defineProperty(exports, "buildTree", { enumerable: true, get: function () { return buildTree_js_1.buildTree; } });
|
|
6
|
+
var loadAllCategories_js_1 = require("./loadAllCategories.js");
|
|
7
|
+
Object.defineProperty(exports, "loadAllCategories", { enumerable: true, get: function () { return loadAllCategories_js_1.loadAllCategories; } });
|
|
8
|
+
var loadAllItems_js_1 = require("./loadAllItems.js");
|
|
9
|
+
Object.defineProperty(exports, "loadAllItems", { enumerable: true, get: function () { return loadAllItems_js_1.loadAllItems; } });
|
|
10
|
+
var loadVersionData_js_1 = require("./loadVersionData.js");
|
|
11
|
+
Object.defineProperty(exports, "loadVersionData", { enumerable: true, get: function () { return loadVersionData_js_1.loadVersionData; } });
|
|
12
|
+
Object.defineProperty(exports, "loadVersionDataFromHttp", { enumerable: true, get: function () { return loadVersionData_js_1.loadVersionDataFromHttp; } });
|
|
13
|
+
var loadVersions_js_1 = require("./loadVersions.js");
|
|
14
|
+
Object.defineProperty(exports, "loadVersions", { enumerable: true, get: function () { return loadVersions_js_1.loadVersions; } });
|
|
15
|
+
var loadProducts_js_1 = require("./loadProducts.js");
|
|
16
|
+
Object.defineProperty(exports, "loadProducts", { enumerable: true, get: function () { return loadProducts_js_1.loadProducts; } });
|
|
17
|
+
var httpDataProvider_js_1 = require("./httpDataProvider.js");
|
|
18
|
+
Object.defineProperty(exports, "HttpDataProvider", { enumerable: true, get: function () { return httpDataProvider_js_1.HttpDataProvider; } });
|
|
19
|
+
Object.defineProperty(exports, "httpDataProvider", { enumerable: true, get: function () { return httpDataProvider_js_1.httpDataProvider; } });
|
package/dist/cjs/data/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.httpDataProvider = exports.HttpDataProvider = exports.fsDataProvider = exports.FsDataProvider = exports.loadVersions = exports.loadVersionData = exports.loadAllItems = exports.loadAllCategories = exports.buildTree = void 0;
|
|
3
|
+
exports.httpDataProvider = exports.HttpDataProvider = exports.fsDataProvider = exports.FsDataProvider = exports.loadProducts = exports.loadVersions = exports.loadVersionDataFromFs = exports.loadVersionDataFromHttp = exports.loadVersionData = exports.loadAllItems = exports.loadAllCategories = exports.buildTree = void 0;
|
|
4
4
|
var buildTree_js_1 = require("./buildTree.js");
|
|
5
5
|
Object.defineProperty(exports, "buildTree", { enumerable: true, get: function () { return buildTree_js_1.buildTree; } });
|
|
6
6
|
var loadAllCategories_js_1 = require("./loadAllCategories.js");
|
|
@@ -9,8 +9,13 @@ var loadAllItems_js_1 = require("./loadAllItems.js");
|
|
|
9
9
|
Object.defineProperty(exports, "loadAllItems", { enumerable: true, get: function () { return loadAllItems_js_1.loadAllItems; } });
|
|
10
10
|
var loadVersionData_js_1 = require("./loadVersionData.js");
|
|
11
11
|
Object.defineProperty(exports, "loadVersionData", { enumerable: true, get: function () { return loadVersionData_js_1.loadVersionData; } });
|
|
12
|
+
Object.defineProperty(exports, "loadVersionDataFromHttp", { enumerable: true, get: function () { return loadVersionData_js_1.loadVersionDataFromHttp; } });
|
|
13
|
+
var loadVersionData_fs_js_1 = require("./loadVersionData.fs.js");
|
|
14
|
+
Object.defineProperty(exports, "loadVersionDataFromFs", { enumerable: true, get: function () { return loadVersionData_fs_js_1.loadVersionDataFromFs; } });
|
|
12
15
|
var loadVersions_js_1 = require("./loadVersions.js");
|
|
13
16
|
Object.defineProperty(exports, "loadVersions", { enumerable: true, get: function () { return loadVersions_js_1.loadVersions; } });
|
|
17
|
+
var loadProducts_js_1 = require("./loadProducts.js");
|
|
18
|
+
Object.defineProperty(exports, "loadProducts", { enumerable: true, get: function () { return loadProducts_js_1.loadProducts; } });
|
|
14
19
|
var fsDataProvider_js_1 = require("./fsDataProvider.js");
|
|
15
20
|
Object.defineProperty(exports, "FsDataProvider", { enumerable: true, get: function () { return fsDataProvider_js_1.FsDataProvider; } });
|
|
16
21
|
Object.defineProperty(exports, "fsDataProvider", { enumerable: true, get: function () { return fsDataProvider_js_1.fsDataProvider; } });
|
|
@@ -1,20 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadAllCategories = loadAllCategories;
|
|
4
|
-
|
|
4
|
+
const logger_js_1 = require("../utilities/system/logger.js");
|
|
5
|
+
async function loadAllCategories(provider, versionRootAbs, ids, options) {
|
|
6
|
+
const diagnostics = [];
|
|
7
|
+
const logger = options?.logger ?? (0, logger_js_1.createLogger)("data:loadAllCategories");
|
|
5
8
|
const results = await Promise.allSettled(ids.map(async (id) => {
|
|
6
9
|
const p = `${versionRootAbs}/categories/${id}.json`;
|
|
7
10
|
const data = await provider.readJson(p);
|
|
8
11
|
return { id, data };
|
|
9
12
|
}));
|
|
10
|
-
const
|
|
13
|
+
const categories = {};
|
|
11
14
|
results.forEach((res, i) => {
|
|
12
15
|
if (res.status === "fulfilled") {
|
|
13
|
-
|
|
16
|
+
categories[res.value.id] = res.value.data;
|
|
14
17
|
}
|
|
15
18
|
else {
|
|
16
|
-
|
|
19
|
+
const message = `Failed to load category ${ids[i]}: ${res.reason.message ?? res.reason}`;
|
|
20
|
+
diagnostics.push({
|
|
21
|
+
code: "category-read-failed",
|
|
22
|
+
level: "warn",
|
|
23
|
+
message,
|
|
24
|
+
context: { id: ids[i] },
|
|
25
|
+
});
|
|
26
|
+
logger.warn(message);
|
|
17
27
|
}
|
|
18
28
|
});
|
|
19
|
-
return
|
|
29
|
+
return { categories, diagnostics };
|
|
20
30
|
}
|
|
@@ -1,14 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadAllItems = loadAllItems;
|
|
4
|
-
|
|
4
|
+
const logger_js_1 = require("../utilities/system/logger.js");
|
|
5
|
+
async function loadAllItems(provider, versionRootAbs, ids, options) {
|
|
6
|
+
const diagnostics = [];
|
|
7
|
+
const logger = options?.logger ?? (0, logger_js_1.createLogger)("data:loadAllItems");
|
|
5
8
|
const results = await Promise.allSettled(ids.map((id) => provider.readJson(`${versionRootAbs}/items/${id}.json`)));
|
|
6
|
-
const
|
|
9
|
+
const items = [];
|
|
7
10
|
results.forEach((res, i) => {
|
|
8
|
-
if (res.status === "fulfilled")
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
if (res.status === "fulfilled") {
|
|
12
|
+
items.push(res.value);
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
const message = `Failed to load item ${ids[i]}: ${res.reason.message ?? res.reason}`;
|
|
16
|
+
diagnostics.push({
|
|
17
|
+
code: "item-read-failed",
|
|
18
|
+
level: "warn",
|
|
19
|
+
message,
|
|
20
|
+
context: { id: ids[i] },
|
|
21
|
+
});
|
|
22
|
+
logger.warn(message);
|
|
23
|
+
}
|
|
12
24
|
});
|
|
13
|
-
return
|
|
25
|
+
return { items, diagnostics };
|
|
14
26
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.loadVersionDataFromFs = loadVersionDataFromFs;
|
|
7
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
+
const normalizeSystemPath_js_1 = require("../utilities/string/normalizeSystemPath.js");
|
|
9
|
+
const logger_js_1 = require("../utilities/system/logger.js");
|
|
10
|
+
const fsDataProvider_js_1 = require("./fsDataProvider.js");
|
|
11
|
+
const loadVersionData_js_1 = require("./loadVersionData.js");
|
|
12
|
+
async function loadVersionDataFromFs(baseDir, options) {
|
|
13
|
+
const logger = options?.logger ?? (0, logger_js_1.createLogger)("data:loadVersionDataFromFs");
|
|
14
|
+
const provider = new fsDataProvider_js_1.FsDataProvider();
|
|
15
|
+
const diagnostics = [];
|
|
16
|
+
const root = (0, normalizeSystemPath_js_1.normalizeSystemPath)(node_path_1.default.resolve(baseDir));
|
|
17
|
+
const { product, products, versionsRoot, versions, selectedVersion, diagnostics: selectionDiagnostics, } = await (0, loadVersionData_js_1.selectProductAndVersion)(provider, root, options, logger, (base, child) => (0, normalizeSystemPath_js_1.normalizeSystemPath)(node_path_1.default.resolve(base, child)));
|
|
18
|
+
const versionRoot = (0, normalizeSystemPath_js_1.normalizeSystemPath)(node_path_1.default.resolve(versionsRoot, selectedVersion));
|
|
19
|
+
const { items, tree, standaloneDocs, diagnostics: loadDiagnostics } = await (0, loadVersionData_js_1.loadVersionData)(provider, versionRoot, { logger });
|
|
20
|
+
diagnostics.push(...selectionDiagnostics, ...loadDiagnostics);
|
|
21
|
+
return {
|
|
22
|
+
version: selectedVersion,
|
|
23
|
+
versions,
|
|
24
|
+
product,
|
|
25
|
+
products,
|
|
26
|
+
items,
|
|
27
|
+
tree,
|
|
28
|
+
standaloneDocs,
|
|
29
|
+
diagnostics,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
@@ -1,16 +1,139 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadVersionData = loadVersionData;
|
|
4
|
+
exports.loadVersionDataFromHttp = loadVersionDataFromHttp;
|
|
5
|
+
exports.selectVersion = selectVersion;
|
|
6
|
+
exports.selectProductAndVersion = selectProductAndVersion;
|
|
7
|
+
const logger_js_1 = require("../utilities/system/logger.js");
|
|
8
|
+
const httpDataProvider_js_1 = require("./httpDataProvider.js");
|
|
9
|
+
const loadProducts_js_1 = require("./loadProducts.js");
|
|
4
10
|
const buildTree_js_1 = require("./buildTree.js");
|
|
5
11
|
const loadAllCategories_js_1 = require("./loadAllCategories.js");
|
|
6
12
|
const loadAllItems_js_1 = require("./loadAllItems.js");
|
|
7
|
-
|
|
13
|
+
const loadVersions_js_1 = require("./loadVersions.js");
|
|
14
|
+
async function loadVersionData(provider, versionRootAbs, options) {
|
|
15
|
+
const logger = options?.logger;
|
|
16
|
+
const diagnostics = [];
|
|
8
17
|
const index = await provider.readJson(`${versionRootAbs}/index.json`);
|
|
9
|
-
const [
|
|
10
|
-
(0, loadAllCategories_js_1.loadAllCategories)(provider, versionRootAbs, index.categories),
|
|
11
|
-
(0, loadAllItems_js_1.loadAllItems)(provider, versionRootAbs, index.items),
|
|
18
|
+
const [categoriesResult, itemsResult] = await Promise.all([
|
|
19
|
+
(0, loadAllCategories_js_1.loadAllCategories)(provider, versionRootAbs, index.categories, { logger }),
|
|
20
|
+
(0, loadAllItems_js_1.loadAllItems)(provider, versionRootAbs, index.items, { logger }),
|
|
12
21
|
]);
|
|
13
|
-
const { tree, usedDocIds } = (0, buildTree_js_1.buildTree)(
|
|
14
|
-
const standaloneDocs = items.filter((d) => !usedDocIds.has(d.id));
|
|
15
|
-
|
|
22
|
+
const { tree, usedDocIds, diagnostics: treeDiagnostics } = (0, buildTree_js_1.buildTree)(categoriesResult.categories, itemsResult.items, { logger });
|
|
23
|
+
const standaloneDocs = itemsResult.items.filter((d) => !usedDocIds.has(d.id));
|
|
24
|
+
diagnostics.push(...categoriesResult.diagnostics, ...itemsResult.diagnostics, ...treeDiagnostics);
|
|
25
|
+
return { items: itemsResult.items, tree, standaloneDocs, diagnostics };
|
|
26
|
+
}
|
|
27
|
+
async function loadVersionDataFromHttp(baseUrl, options) {
|
|
28
|
+
const logger = options?.logger ?? (0, logger_js_1.createLogger)("data:loadVersionDataFromHttp");
|
|
29
|
+
const provider = new httpDataProvider_js_1.HttpDataProvider();
|
|
30
|
+
const root = trimTrailingSlash(baseUrl);
|
|
31
|
+
const { product, products, versionsRoot, versions, selectedVersion, diagnostics: selectionDiagnostics, } = await selectProductAndVersion(provider, root, options, logger, joinUrl);
|
|
32
|
+
const versionRoot = joinUrl(versionsRoot, selectedVersion);
|
|
33
|
+
const { items, tree, standaloneDocs, diagnostics } = await loadVersionData(provider, versionRoot, { logger });
|
|
34
|
+
return {
|
|
35
|
+
version: selectedVersion,
|
|
36
|
+
versions,
|
|
37
|
+
product,
|
|
38
|
+
products,
|
|
39
|
+
items,
|
|
40
|
+
tree,
|
|
41
|
+
standaloneDocs,
|
|
42
|
+
diagnostics: [...selectionDiagnostics, ...diagnostics],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
async function selectVersion(provider, root, requested, logger) {
|
|
46
|
+
const versions = await (0, loadVersions_js_1.loadVersions)(provider, root);
|
|
47
|
+
const diagnostics = [];
|
|
48
|
+
const fallback = "current";
|
|
49
|
+
if (versions.length === 0) {
|
|
50
|
+
const message = `No versions found under ${root}. Falling back to "${fallback}".`;
|
|
51
|
+
diagnostics.push({
|
|
52
|
+
code: "no-versions-found",
|
|
53
|
+
level: "warn",
|
|
54
|
+
message,
|
|
55
|
+
context: { root },
|
|
56
|
+
});
|
|
57
|
+
logger.warn(message);
|
|
58
|
+
return { versions, selectedVersion: requested ?? fallback, diagnostics };
|
|
59
|
+
}
|
|
60
|
+
if (requested) {
|
|
61
|
+
const match = versions.find((v) => v.version === requested);
|
|
62
|
+
if (!match) {
|
|
63
|
+
const message = `Requested version "${requested}" not found. Using first available: "${versions[0].version}".`;
|
|
64
|
+
diagnostics.push({
|
|
65
|
+
code: "version-not-found",
|
|
66
|
+
level: "warn",
|
|
67
|
+
message,
|
|
68
|
+
context: { requested, available: versions.map((v) => v.version) },
|
|
69
|
+
});
|
|
70
|
+
logger.warn(message);
|
|
71
|
+
return { versions, selectedVersion: versions[0].version, diagnostics };
|
|
72
|
+
}
|
|
73
|
+
return { versions, selectedVersion: requested, diagnostics };
|
|
74
|
+
}
|
|
75
|
+
return { versions, selectedVersion: versions[0].version, diagnostics };
|
|
76
|
+
}
|
|
77
|
+
async function selectProductAndVersion(provider, root, options, logger, joinChild) {
|
|
78
|
+
const diagnostics = [];
|
|
79
|
+
const productVersioning = options?.productVersioning ?? false;
|
|
80
|
+
let versionsRoot = root;
|
|
81
|
+
let product;
|
|
82
|
+
let products;
|
|
83
|
+
if (productVersioning) {
|
|
84
|
+
const productSelection = await selectProduct(provider, root, options?.product, logger);
|
|
85
|
+
diagnostics.push(...productSelection.diagnostics);
|
|
86
|
+
products = productSelection.products;
|
|
87
|
+
product = productSelection.selectedProduct;
|
|
88
|
+
if (productSelection.selectedProduct) {
|
|
89
|
+
versionsRoot = joinChild(root, productSelection.selectedProduct);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
const { versions, selectedVersion, diagnostics: versionDiagnostics, } = await selectVersion(provider, versionsRoot, options?.version, logger);
|
|
93
|
+
diagnostics.push(...versionDiagnostics);
|
|
94
|
+
return {
|
|
95
|
+
product,
|
|
96
|
+
products,
|
|
97
|
+
versionsRoot,
|
|
98
|
+
versions,
|
|
99
|
+
selectedVersion,
|
|
100
|
+
diagnostics,
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
async function selectProduct(provider, root, requested, logger) {
|
|
104
|
+
const diagnostics = [];
|
|
105
|
+
const products = await (0, loadProducts_js_1.loadProducts)(provider, root);
|
|
106
|
+
if (products.length === 0) {
|
|
107
|
+
const message = `No products found under ${root}.`;
|
|
108
|
+
diagnostics.push({
|
|
109
|
+
code: "no-products-found",
|
|
110
|
+
level: "warn",
|
|
111
|
+
message,
|
|
112
|
+
context: { root },
|
|
113
|
+
});
|
|
114
|
+
logger.warn(message);
|
|
115
|
+
return { products, selectedProduct: undefined, diagnostics };
|
|
116
|
+
}
|
|
117
|
+
if (requested) {
|
|
118
|
+
const match = products.find((p) => p.product === requested);
|
|
119
|
+
if (!match) {
|
|
120
|
+
const message = `Requested product "${requested}" not found. Using first available: "${products[0].product}".`;
|
|
121
|
+
diagnostics.push({
|
|
122
|
+
code: "product-not-found",
|
|
123
|
+
level: "warn",
|
|
124
|
+
message,
|
|
125
|
+
context: { requested, available: products.map((p) => p.product) },
|
|
126
|
+
});
|
|
127
|
+
logger.warn(message);
|
|
128
|
+
return { products, selectedProduct: products[0].product, diagnostics };
|
|
129
|
+
}
|
|
130
|
+
return { products, selectedProduct: requested, diagnostics };
|
|
131
|
+
}
|
|
132
|
+
return { products, selectedProduct: products[0].product, diagnostics };
|
|
133
|
+
}
|
|
134
|
+
function trimTrailingSlash(value) {
|
|
135
|
+
return value.replace(/\/+$/, "");
|
|
136
|
+
}
|
|
137
|
+
function joinUrl(base, child) {
|
|
138
|
+
return `${trimTrailingSlash(base)}/${child.replace(/^\/+/, "")}`;
|
|
16
139
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./configs/index.browser.js"), exports);
|
|
18
|
+
__exportStar(require("./constants/index.js"), exports);
|
|
19
|
+
__exportStar(require("./themes/index.js"), exports);
|
|
20
|
+
__exportStar(require("./types/index.js"), exports);
|
|
21
|
+
__exportStar(require("./data/index.browser.js"), exports);
|
|
22
|
+
__exportStar(require("./utilities/index.browser.js"), exports);
|
package/dist/cjs/themes/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isThemePresetName = exports.getThemePreset = exports.DOCS_CORE_THEME_PRESETS = exports.DEFAULT_THEME_PRESET = exports.AVAILABLE_THEME_PRESET_NAMES = exports.defaultTheme = void 0;
|
|
3
|
+
exports.styleThemeSchema = exports.parseStyleTheme = exports.isStyleTheme = exports.isThemePresetName = exports.getThemePreset = exports.DOCS_CORE_THEME_PRESETS = exports.DEFAULT_THEME_PRESET = exports.AVAILABLE_THEME_PRESET_NAMES = exports.defaultTheme = void 0;
|
|
4
4
|
var default_js_1 = require("./presets/default.js");
|
|
5
5
|
Object.defineProperty(exports, "defaultTheme", { enumerable: true, get: function () { return default_js_1.defaultTheme; } });
|
|
6
6
|
var themeRegistry_js_1 = require("./themeRegistry.js");
|
|
@@ -9,3 +9,7 @@ Object.defineProperty(exports, "DEFAULT_THEME_PRESET", { enumerable: true, get:
|
|
|
9
9
|
Object.defineProperty(exports, "DOCS_CORE_THEME_PRESETS", { enumerable: true, get: function () { return themeRegistry_js_1.DOCS_CORE_THEME_PRESETS; } });
|
|
10
10
|
Object.defineProperty(exports, "getThemePreset", { enumerable: true, get: function () { return themeRegistry_js_1.getThemePreset; } });
|
|
11
11
|
Object.defineProperty(exports, "isThemePresetName", { enumerable: true, get: function () { return themeRegistry_js_1.isThemePresetName; } });
|
|
12
|
+
var styleThemeSchema_js_1 = require("./styleThemeSchema.js");
|
|
13
|
+
Object.defineProperty(exports, "isStyleTheme", { enumerable: true, get: function () { return styleThemeSchema_js_1.isStyleTheme; } });
|
|
14
|
+
Object.defineProperty(exports, "parseStyleTheme", { enumerable: true, get: function () { return styleThemeSchema_js_1.parseStyleTheme; } });
|
|
15
|
+
Object.defineProperty(exports, "styleThemeSchema", { enumerable: true, get: function () { return styleThemeSchema_js_1.styleThemeSchema; } });
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.styleThemeSchema = void 0;
|
|
4
|
+
exports.parseStyleTheme = parseStyleTheme;
|
|
5
|
+
exports.isStyleTheme = isStyleTheme;
|
|
6
|
+
const zod_1 = require("zod");
|
|
7
|
+
const default_js_1 = require("./presets/default.js");
|
|
8
|
+
function buildSchemaFromPreset(preset) {
|
|
9
|
+
const build = (value) => {
|
|
10
|
+
if (typeof value === "string") {
|
|
11
|
+
return zod_1.z.string();
|
|
12
|
+
}
|
|
13
|
+
if (value && typeof value === "object" && !Array.isArray(value)) {
|
|
14
|
+
const shape = {};
|
|
15
|
+
Object.entries(value).forEach(([key, child]) => {
|
|
16
|
+
shape[key] = build(child);
|
|
17
|
+
});
|
|
18
|
+
return zod_1.z.object(shape).strict();
|
|
19
|
+
}
|
|
20
|
+
throw new Error("Invalid style theme preset shape.");
|
|
21
|
+
};
|
|
22
|
+
return build(preset);
|
|
23
|
+
}
|
|
24
|
+
exports.styleThemeSchema = buildSchemaFromPreset(default_js_1.defaultTheme);
|
|
25
|
+
function parseStyleTheme(theme) {
|
|
26
|
+
const result = exports.styleThemeSchema.safeParse(theme);
|
|
27
|
+
if (!result.success) {
|
|
28
|
+
throw new Error(`Invalid style theme provided. ${result.error.issues
|
|
29
|
+
.map((issue) => `${issue.path.join(".") || "theme"}: ${issue.message}`)
|
|
30
|
+
.join("; ")}`);
|
|
31
|
+
}
|
|
32
|
+
return result.data;
|
|
33
|
+
}
|
|
34
|
+
function isStyleTheme(theme) {
|
|
35
|
+
return exports.styleThemeSchema.safeParse(theme).success;
|
|
36
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.downloadTextFile = exports.copyToClipboard = exports.getResponsiveWidth = exports.validateScale = exports.isValidYouTubeId = exports.isValidImageUrl = exports.isValidColor = exports.isMobileDevice = exports.createLogger = exports.formatTime = exports.createTimeout = exports.pathExists = exports.resolveAgainstProjectRoot = exports.resolveDataPath = exports.getFileExtension = exports.normalizeSystemPath = exports.normalizeBaseUrlPath = exports.processListItems = exports.withBasePath = exports.extractYouTubeId = exports.sanitizeFilename = exports.slugify = void 0;
|
|
4
|
+
// string
|
|
5
|
+
var slugify_js_1 = require("./string/slugify.js");
|
|
6
|
+
Object.defineProperty(exports, "slugify", { enumerable: true, get: function () { return slugify_js_1.slugify; } });
|
|
7
|
+
var sanitizeFilename_js_1 = require("./string/sanitizeFilename.js");
|
|
8
|
+
Object.defineProperty(exports, "sanitizeFilename", { enumerable: true, get: function () { return sanitizeFilename_js_1.sanitizeFilename; } });
|
|
9
|
+
var extractYouTubeId_js_1 = require("./string/extractYouTubeId.js");
|
|
10
|
+
Object.defineProperty(exports, "extractYouTubeId", { enumerable: true, get: function () { return extractYouTubeId_js_1.extractYouTubeId; } });
|
|
11
|
+
var withBasePath_js_1 = require("./string/withBasePath.js");
|
|
12
|
+
Object.defineProperty(exports, "withBasePath", { enumerable: true, get: function () { return withBasePath_js_1.withBasePath; } });
|
|
13
|
+
var processListItems_js_1 = require("./string/processListItems.js");
|
|
14
|
+
Object.defineProperty(exports, "processListItems", { enumerable: true, get: function () { return processListItems_js_1.processListItems; } });
|
|
15
|
+
var normalizeBaseUrlPath_js_1 = require("./string/normalizeBaseUrlPath.js");
|
|
16
|
+
Object.defineProperty(exports, "normalizeBaseUrlPath", { enumerable: true, get: function () { return normalizeBaseUrlPath_js_1.normalizeBaseUrlPath; } });
|
|
17
|
+
var normalizeSystemPath_js_1 = require("./string/normalizeSystemPath.js");
|
|
18
|
+
Object.defineProperty(exports, "normalizeSystemPath", { enumerable: true, get: function () { return normalizeSystemPath_js_1.normalizeSystemPath; } });
|
|
19
|
+
// file
|
|
20
|
+
var getFileExtension_js_1 = require("./file/getFileExtension.js");
|
|
21
|
+
Object.defineProperty(exports, "getFileExtension", { enumerable: true, get: function () { return getFileExtension_js_1.getFileExtension; } });
|
|
22
|
+
//path
|
|
23
|
+
var resolveDataPath_browser_js_1 = require("./path/resolveDataPath.browser.js");
|
|
24
|
+
Object.defineProperty(exports, "resolveDataPath", { enumerable: true, get: function () { return resolveDataPath_browser_js_1.resolveDataPath; } });
|
|
25
|
+
var resolveAgainstProjectRoot_browser_js_1 = require("./path/resolveAgainstProjectRoot.browser.js");
|
|
26
|
+
Object.defineProperty(exports, "resolveAgainstProjectRoot", { enumerable: true, get: function () { return resolveAgainstProjectRoot_browser_js_1.resolveAgainstProjectRoot; } });
|
|
27
|
+
var pathExists_browser_js_1 = require("./path/pathExists.browser.js");
|
|
28
|
+
Object.defineProperty(exports, "pathExists", { enumerable: true, get: function () { return pathExists_browser_js_1.pathExists; } });
|
|
29
|
+
// system
|
|
30
|
+
var createTimeout_js_1 = require("./system/createTimeout.js");
|
|
31
|
+
Object.defineProperty(exports, "createTimeout", { enumerable: true, get: function () { return createTimeout_js_1.createTimeout; } });
|
|
32
|
+
var formatTime_js_1 = require("./system/formatTime.js");
|
|
33
|
+
Object.defineProperty(exports, "formatTime", { enumerable: true, get: function () { return formatTime_js_1.formatTime; } });
|
|
34
|
+
var logger_browser_js_1 = require("./system/logger.browser.js");
|
|
35
|
+
Object.defineProperty(exports, "createLogger", { enumerable: true, get: function () { return logger_browser_js_1.createLogger; } });
|
|
36
|
+
// validation
|
|
37
|
+
var isMobileDevice_js_1 = require("./validation/isMobileDevice.js");
|
|
38
|
+
Object.defineProperty(exports, "isMobileDevice", { enumerable: true, get: function () { return isMobileDevice_js_1.isMobileDevice; } });
|
|
39
|
+
var isValidColor_js_1 = require("./validation/isValidColor.js");
|
|
40
|
+
Object.defineProperty(exports, "isValidColor", { enumerable: true, get: function () { return isValidColor_js_1.isValidColor; } });
|
|
41
|
+
var isValidImageUrl_js_1 = require("./validation/isValidImageUrl.js");
|
|
42
|
+
Object.defineProperty(exports, "isValidImageUrl", { enumerable: true, get: function () { return isValidImageUrl_js_1.isValidImageUrl; } });
|
|
43
|
+
var isValidYouTubeId_js_1 = require("./validation/isValidYouTubeId.js");
|
|
44
|
+
Object.defineProperty(exports, "isValidYouTubeId", { enumerable: true, get: function () { return isValidYouTubeId_js_1.isValidYouTubeId; } });
|
|
45
|
+
var validateScale_js_1 = require("./validation/validateScale.js");
|
|
46
|
+
Object.defineProperty(exports, "validateScale", { enumerable: true, get: function () { return validateScale_js_1.validateScale; } });
|
|
47
|
+
// dom
|
|
48
|
+
var getResponsiveWidth_js_1 = require("./dom/getResponsiveWidth.js");
|
|
49
|
+
Object.defineProperty(exports, "getResponsiveWidth", { enumerable: true, get: function () { return getResponsiveWidth_js_1.getResponsiveWidth; } });
|
|
50
|
+
var copyToClipboard_js_1 = require("./dom/copyToClipboard.js");
|
|
51
|
+
Object.defineProperty(exports, "copyToClipboard", { enumerable: true, get: function () { return copyToClipboard_js_1.copyToClipboard; } });
|
|
52
|
+
var downloadTextFile_js_1 = require("./dom/downloadTextFile.js");
|
|
53
|
+
Object.defineProperty(exports, "downloadTextFile", { enumerable: true, get: function () { return downloadTextFile_js_1.downloadTextFile; } });
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.pathExists = pathExists;
|
|
4
|
-
const promises_1 = require("node:fs/promises");
|
|
5
4
|
const node_fs_1 = require("node:fs");
|
|
5
|
+
const promises_1 = require("node:fs/promises");
|
|
6
6
|
async function pathExists(pathLike) {
|
|
7
7
|
try {
|
|
8
8
|
await (0, promises_1.access)(pathLike, node_fs_1.constants.F_OK);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveAgainstProjectRoot = resolveAgainstProjectRoot;
|
|
4
|
+
function resolveAgainstProjectRoot(candidate) {
|
|
5
|
+
throw new Error(`resolveAgainstProjectRoot("${candidate}") is only available in Node.js where project roots can be resolved.`);
|
|
6
|
+
}
|
|
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.resolveDataPath = resolveDataPath;
|
|
7
7
|
const node_path_1 = __importDefault(require("node:path"));
|
|
8
|
-
const resolveAgainstProjectRoot_js_1 = require("./resolveAgainstProjectRoot.js");
|
|
9
8
|
const normalizeSystemPath_js_1 = require("../string/normalizeSystemPath.js");
|
|
9
|
+
const resolveAgainstProjectRoot_js_1 = require("./resolveAgainstProjectRoot.js");
|
|
10
10
|
function resolveDataPath(input) {
|
|
11
11
|
const argv = process.argv.slice(2);
|
|
12
12
|
const i = argv.indexOf("--fsDataPath");
|