zudoku 0.42.2 → 0.43.1
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/dist/app/entry.client.js +21 -0
- package/dist/app/entry.client.js.map +1 -1
- package/dist/config/loader.d.ts +1 -16
- package/dist/config/loader.js +9 -90
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validators/common.d.ts +193 -0
- package/dist/config/validators/common.js +2 -0
- package/dist/config/validators/common.js.map +1 -1
- package/dist/config/validators/validate.d.ts +70 -0
- package/dist/lib/components/Banner.js +1 -1
- package/dist/lib/components/Banner.js.map +1 -1
- package/dist/lib/components/Heading.d.ts +2 -2
- package/dist/lib/components/Heading.js +1 -1
- package/dist/lib/components/Heading.js.map +1 -1
- package/dist/lib/components/Layout.js +1 -1
- package/dist/lib/components/Layout.js.map +1 -1
- package/dist/lib/components/Main.js +3 -2
- package/dist/lib/components/Main.js.map +1 -1
- package/dist/lib/components/MobileTopNavigation.js +1 -1
- package/dist/lib/components/MobileTopNavigation.js.map +1 -1
- package/dist/lib/components/Pagination.js +2 -2
- package/dist/lib/components/Pagination.js.map +1 -1
- package/dist/lib/components/Search.js +1 -1
- package/dist/lib/components/Search.js.map +1 -1
- package/dist/lib/components/TopNavigation.js +1 -1
- package/dist/lib/components/TopNavigation.js.map +1 -1
- package/dist/lib/components/navigation/PoweredByZudoku.js +1 -1
- package/dist/lib/components/navigation/PoweredByZudoku.js.map +1 -1
- package/dist/lib/components/navigation/Sidebar.js +1 -1
- package/dist/lib/components/navigation/Sidebar.js.map +1 -1
- package/dist/lib/components/navigation/SidebarCategory.js +9 -5
- package/dist/lib/components/navigation/SidebarCategory.js.map +1 -1
- package/dist/lib/components/navigation/SidebarItem.js +2 -3
- package/dist/lib/components/navigation/SidebarItem.js.map +1 -1
- package/dist/lib/components/navigation/Toc.js +2 -2
- package/dist/lib/components/navigation/Toc.js.map +1 -1
- package/dist/lib/core/ZudokuContext.d.ts +2 -1
- package/dist/lib/core/ZudokuContext.js.map +1 -1
- package/dist/lib/oas/parser/upgrade/index.d.ts +1 -0
- package/dist/lib/oas/parser/upgrade/index.js +76 -24
- package/dist/lib/oas/parser/upgrade/index.js.map +1 -1
- package/dist/lib/plugins/openapi/CollapsibleCode.js +1 -1
- package/dist/lib/plugins/openapi/OperationList.js +1 -1
- package/dist/lib/plugins/openapi/OperationListItem.js +4 -2
- package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/ParamInfos.js +1 -0
- package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -1
- package/dist/lib/plugins/openapi/SchemaList.js +1 -1
- package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +5 -0
- package/dist/lib/plugins/openapi/client/useCreateQuery.js +10 -4
- package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
- package/dist/lib/plugins/openapi/components/ConstValue.d.ts +5 -0
- package/dist/lib/plugins/openapi/components/ConstValue.js +6 -0
- package/dist/lib/plugins/openapi/components/ConstValue.js.map +1 -0
- package/dist/lib/plugins/openapi/index.d.ts +3 -4
- package/dist/lib/plugins/openapi/index.js +6 -4
- package/dist/lib/plugins/openapi/index.js.map +1 -1
- package/dist/lib/plugins/openapi/interfaces.d.ts +4 -3
- package/dist/lib/plugins/openapi/playground/IdentitySelector.js +1 -1
- package/dist/lib/plugins/openapi/playground/Playground.js +2 -2
- package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.js +1 -1
- package/dist/lib/plugins/openapi/playground/SubmitButton.d.ts +1 -1
- package/dist/lib/plugins/openapi/playground/SubmitButton.js +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +6 -4
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaView.js +8 -5
- package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js +40 -0
- package/dist/lib/plugins/openapi/util/generateSchemaExample.js.map +1 -1
- package/dist/lib/plugins/openapi/util/getRoutes.js +33 -3
- package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
- package/dist/lib/ui/SyntaxHighlight.js +1 -1
- package/dist/lib/ui/SyntaxHighlight.js.map +1 -1
- package/dist/lib/util/traverse.d.ts +1 -1
- package/dist/lib/util/traverse.js +6 -5
- package/dist/lib/util/traverse.js.map +1 -1
- package/dist/vite/build.js +1 -0
- package/dist/vite/build.js.map +1 -1
- package/dist/vite/config.js +1 -1
- package/dist/vite/config.js.map +1 -1
- package/dist/vite/dev-server.js +5 -2
- package/dist/vite/dev-server.js.map +1 -1
- package/dist/vite/html.d.ts +6 -2
- package/dist/vite/html.js +11 -8
- package/dist/vite/html.js.map +1 -1
- package/dist/vite/plugin-api.js +2 -2
- package/dist/vite/plugin-api.js.map +1 -1
- package/lib/{AuthenticationPlugin-ByDF051g.js → AuthenticationPlugin-BxoEZCSJ.js} +4 -4
- package/lib/{AuthenticationPlugin-ByDF051g.js.map → AuthenticationPlugin-BxoEZCSJ.js.map} +1 -1
- package/lib/{Markdown-mFpg_n9p.js → Markdown-DvdVn1O7.js} +1839 -1836
- package/lib/Markdown-DvdVn1O7.js.map +1 -0
- package/lib/{MdxPage-Cm7atiW3.js → MdxPage-DUcuusMU.js} +7 -7
- package/lib/{MdxPage-Cm7atiW3.js.map → MdxPage-DUcuusMU.js.map} +1 -1
- package/lib/{OasProvider-CDtbrUG_.js → OasProvider-CjMm8pB7.js} +8 -9
- package/lib/{OasProvider-CDtbrUG_.js.map → OasProvider-CjMm8pB7.js.map} +1 -1
- package/lib/{OperationList-DTyJIxKW.js → OperationList-BhJcPgGi.js} +1353 -1316
- package/lib/{OperationList-DTyJIxKW.js.map → OperationList-BhJcPgGi.js.map} +1 -1
- package/lib/Pagination-BgQxwq5j.js +48 -0
- package/lib/Pagination-BgQxwq5j.js.map +1 -0
- package/lib/{RouteGuard-DRtEu9nh.js → RouteGuard-D2gX29iI.js} +3 -3
- package/lib/{RouteGuard-DRtEu9nh.js.map → RouteGuard-D2gX29iI.js.map} +1 -1
- package/lib/{SchemaList-B9lvArDe.js → SchemaList-BexhT_Z0.js} +22 -23
- package/lib/{SchemaList-B9lvArDe.js.map → SchemaList-BexhT_Z0.js.map} +1 -1
- package/lib/SchemaView-Dt_-u8rW.js +365 -0
- package/lib/SchemaView-Dt_-u8rW.js.map +1 -0
- package/lib/{Select-CT64Ou40.js → Select-CYaEBIYK.js} +3 -3
- package/lib/{Select-CT64Ou40.js.map → Select-CYaEBIYK.js.map} +1 -1
- package/lib/{SlotletProvider-CS_nO-XT.js → SlotletProvider-wWbHYqWf.js} +7 -7
- package/lib/SlotletProvider-wWbHYqWf.js.map +1 -0
- package/lib/{SyntaxHighlight-CxhyyMkF.js → SyntaxHighlight-o7q0acut.js} +81 -81
- package/lib/{SyntaxHighlight-CxhyyMkF.js.map → SyntaxHighlight-o7q0acut.js.map} +1 -1
- package/lib/{Toc-D_tV8_Ri.js → Toc-BnN4zBb3.js} +17 -17
- package/lib/Toc-BnN4zBb3.js.map +1 -0
- package/lib/{chunk-BAXFHI7N-BVBOl9s0.js → chunk-BAXFHI7N-BLTsN6tl.js} +679 -659
- package/lib/{chunk-BAXFHI7N-BVBOl9s0.js.map → chunk-BAXFHI7N-BLTsN6tl.js.map} +1 -1
- package/lib/{circular-ByJI6Mci.js → circular-BWEIet3w.js} +4616 -5567
- package/lib/circular-BWEIet3w.js.map +1 -0
- package/lib/{createServer-IW7v5hWm.js → createServer-BQD3Eeqb.js} +1998 -1970
- package/lib/createServer-BQD3Eeqb.js.map +1 -0
- package/lib/{hook-CldJlP5c.js → hook-8GM2HXNM.js} +24 -24
- package/lib/{hook-CldJlP5c.js.map → hook-8GM2HXNM.js.map} +1 -1
- package/lib/index-CFf9AN-y.js +3208 -0
- package/lib/index-CFf9AN-y.js.map +1 -0
- package/lib/{index-DnQftvP4.js → index-DGNSSXgR.js} +77 -69
- package/lib/{index-DnQftvP4.js.map → index-DGNSSXgR.js.map} +1 -1
- package/lib/{mutation-DBQh7AOZ.js → mutation-Bq5bn7Hf.js} +2 -2
- package/lib/{mutation-DBQh7AOZ.js.map → mutation-Bq5bn7Hf.js.map} +1 -1
- package/lib/processors/traverse.js +9 -7
- package/lib/processors/traverse.js.map +1 -1
- package/lib/ui/SyntaxHighlight.js +1 -1
- package/lib/{useExposedProps-DbIZXspi.js → useExposedProps-DmTJxEXG.js} +2 -2
- package/lib/{useExposedProps-DbIZXspi.js.map → useExposedProps-DmTJxEXG.js.map} +1 -1
- package/lib/zudoku.auth-auth0.js +1 -1
- package/lib/zudoku.auth-clerk.js +2 -2
- package/lib/zudoku.auth-openid.js +3 -3
- package/lib/zudoku.components.js +6 -6
- package/lib/zudoku.hooks.js +1 -1
- package/lib/zudoku.plugin-api-catalog.js +5 -5
- package/lib/zudoku.plugin-api-keys.js +4 -4
- package/lib/zudoku.plugin-custom-pages.js +2 -2
- package/lib/zudoku.plugin-markdown.js +1 -1
- package/lib/zudoku.plugin-openapi.js +6 -5
- package/lib/zudoku.plugin-redirect.js +1 -1
- package/lib/zudoku.plugin-search-pagefind.js +3 -3
- package/package.json +4 -4
- package/src/app/entry.client.tsx +26 -0
- package/src/app/main.css +2 -2
- package/src/lib/components/Banner.tsx +1 -1
- package/src/lib/components/Heading.tsx +3 -3
- package/src/lib/components/Layout.tsx +1 -4
- package/src/lib/components/Main.tsx +4 -3
- package/src/lib/components/MobileTopNavigation.tsx +2 -2
- package/src/lib/components/Pagination.tsx +3 -3
- package/src/lib/components/Search.tsx +1 -1
- package/src/lib/components/TopNavigation.tsx +1 -1
- package/src/lib/components/navigation/PoweredByZudoku.tsx +6 -1
- package/src/lib/components/navigation/Sidebar.tsx +1 -1
- package/src/lib/components/navigation/SidebarCategory.tsx +9 -5
- package/src/lib/components/navigation/SidebarItem.tsx +2 -3
- package/src/lib/components/navigation/Toc.tsx +4 -4
- package/src/lib/core/ZudokuContext.ts +2 -1
- package/src/lib/oas/parser/upgrade/index.ts +97 -27
- package/src/lib/plugins/openapi/CollapsibleCode.tsx +2 -2
- package/src/lib/plugins/openapi/OperationList.tsx +1 -1
- package/src/lib/plugins/openapi/OperationListItem.tsx +15 -6
- package/src/lib/plugins/openapi/ParamInfos.tsx +1 -0
- package/src/lib/plugins/openapi/SchemaList.tsx +1 -1
- package/src/lib/plugins/openapi/client/useCreateQuery.ts +23 -4
- package/src/lib/plugins/openapi/components/ConstValue.tsx +24 -0
- package/src/lib/plugins/openapi/index.tsx +8 -7
- package/src/lib/plugins/openapi/interfaces.ts +4 -3
- package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +2 -2
- package/src/lib/plugins/openapi/playground/Playground.tsx +5 -5
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +2 -2
- package/src/lib/plugins/openapi/playground/SubmitButton.tsx +2 -2
- package/src/lib/plugins/openapi/playground/result-panel/RequestTab.tsx +2 -2
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +1 -1
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +1 -1
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +6 -3
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +31 -15
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +45 -0
- package/src/lib/plugins/openapi/util/getRoutes.tsx +67 -3
- package/src/lib/ui/SyntaxHighlight.tsx +2 -2
- package/src/lib/util/traverse.ts +8 -5
- package/lib/Markdown-mFpg_n9p.js.map +0 -1
- package/lib/Pagination-DLPL5z77.js +0 -48
- package/lib/Pagination-DLPL5z77.js.map +0 -1
- package/lib/SchemaView-DXjql-Bl.js +0 -356
- package/lib/SchemaView-DXjql-Bl.js.map +0 -1
- package/lib/SlotletProvider-CS_nO-XT.js.map +0 -1
- package/lib/Toc-D_tV8_Ri.js.map +0 -1
- package/lib/circular-ByJI6Mci.js.map +0 -1
- package/lib/context-Lrf2Y9bR.js +0 -22
- package/lib/context-Lrf2Y9bR.js.map +0 -1
- package/lib/createServer-IW7v5hWm.js.map +0 -1
- package/lib/index-Ckl3s_w-.js +0 -2184
- package/lib/index-Ckl3s_w-.js.map +0 -1
package/dist/app/entry.client.js
CHANGED
|
@@ -21,6 +21,27 @@ if (root.childElementCount > 0) {
|
|
|
21
21
|
else {
|
|
22
22
|
void render(routes);
|
|
23
23
|
}
|
|
24
|
+
// eslint-disable-next-line no-console
|
|
25
|
+
console.log("%cZUDOKU%c by Zuplo v" + window.ZUDOKU_VERSION, [
|
|
26
|
+
"color: #FF00BD",
|
|
27
|
+
"line-height: 50px",
|
|
28
|
+
"font-weight: bolder",
|
|
29
|
+
"font-size: 30px",
|
|
30
|
+
"-webkit-text-stroke-width: 1px",
|
|
31
|
+
"-webkit-text-stroke-color: #FF00BD",
|
|
32
|
+
"text-transform: uppercase",
|
|
33
|
+
"text-align: center",
|
|
34
|
+
"letter-spacing: 5px",
|
|
35
|
+
].join(" ;"), [
|
|
36
|
+
"color: #Df0097",
|
|
37
|
+
"line-height: 50px",
|
|
38
|
+
"font-weight: bolder",
|
|
39
|
+
"font-size: 15px",
|
|
40
|
+
"text-align: center",
|
|
41
|
+
"letter-spacing: 5px",
|
|
42
|
+
].join(" ;"));
|
|
43
|
+
// eslint-disable-next-line no-console
|
|
44
|
+
console.log("» Learn more about Zudoku https://zudoku.dev");
|
|
24
45
|
async function hydrateLazyRoutes(routes) {
|
|
25
46
|
const path = window.location.pathname;
|
|
26
47
|
const lazyMatches = matchRoutes(routes, path, config.basePath)?.filter((m) => m.route.lazy);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.client.js","sourceRoot":"","sources":["../../src/app/entry.client.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entry.client.js","sourceRoot":"","sources":["../../src/app/entry.client.tsx"],"names":[],"mappings":"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"}
|
package/dist/config/loader.d.ts
CHANGED
|
@@ -2,20 +2,5 @@ import type { RollupOutput, RollupWatcher } from "rollup";
|
|
|
2
2
|
import { type ConfigWithMeta } from "./common.js";
|
|
3
3
|
import { type CommonConfig } from "./validators/common.js";
|
|
4
4
|
export declare const fileExists: (path: string) => Promise<boolean>;
|
|
5
|
-
export declare function
|
|
6
|
-
configPath: string;
|
|
7
|
-
configType: "zudoku" | "dev-portal";
|
|
8
|
-
} | {
|
|
9
|
-
configPath: undefined;
|
|
10
|
-
configType: undefined;
|
|
11
|
-
}>;
|
|
12
|
-
declare function loadZudokuCodeConfig<TConfig>(configPath: string): Promise<{
|
|
13
|
-
dependencies: string[];
|
|
14
|
-
config: TConfig;
|
|
15
|
-
}>;
|
|
16
|
-
export type ConfigLoaderOverrides = {
|
|
17
|
-
loadZudokuCodeConfig?: typeof loadZudokuCodeConfig;
|
|
18
|
-
};
|
|
19
|
-
export declare function tryLoadZudokuConfig<TConfig extends CommonConfig>(rootDir: string, moduleDir: string, envVars: Record<string, string | undefined>, overrides?: ConfigLoaderOverrides): Promise<ConfigWithMeta<TConfig>>;
|
|
5
|
+
export declare function tryLoadZudokuConfig<TConfig extends CommonConfig>(rootDir: string, moduleDir: string): Promise<ConfigWithMeta<TConfig>>;
|
|
20
6
|
export declare function findOutputPathOfServerConfig(output: RollupOutput | RollupOutput[] | RollupWatcher): string;
|
|
21
|
-
export {};
|
package/dist/config/loader.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { stat } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { runnerImport } from "vite";
|
|
4
|
-
import { validateCommonConfig, } from "./validators/common.js";
|
|
5
4
|
import { validateConfig } from "./validators/validate.js";
|
|
6
5
|
const zudokuConfigFiles = [
|
|
7
6
|
"zudoku.config.js",
|
|
@@ -10,43 +9,19 @@ const zudokuConfigFiles = [
|
|
|
10
9
|
"zudoku.config.tsx",
|
|
11
10
|
"zudoku.config.mjs",
|
|
12
11
|
];
|
|
13
|
-
const devPortalConfigFile = "dev-portal.json";
|
|
14
12
|
export const fileExists = (path) => stat(path)
|
|
15
13
|
.then(() => true)
|
|
16
14
|
.catch(() => false);
|
|
17
|
-
|
|
18
|
-
let configType;
|
|
19
|
-
export async function findConfigFilePath(rootDir) {
|
|
20
|
-
// Also check if file exists, so renaming the file will trigger a restart as well
|
|
21
|
-
if (configPath && configType && (await fileExists(configPath))) {
|
|
22
|
-
return { configPath, configType };
|
|
23
|
-
}
|
|
24
|
-
const devPortalConfigPath = path.join(rootDir, devPortalConfigFile);
|
|
25
|
-
if (await fileExists(devPortalConfigPath)) {
|
|
26
|
-
configPath = devPortalConfigPath;
|
|
27
|
-
configType = "dev-portal";
|
|
28
|
-
return { configPath, configType };
|
|
29
|
-
}
|
|
15
|
+
async function getConfigFilePath(rootDir) {
|
|
30
16
|
for (const fileName of zudokuConfigFiles) {
|
|
31
17
|
const filepath = path.join(rootDir, fileName);
|
|
32
18
|
if (await fileExists(filepath)) {
|
|
33
|
-
|
|
34
|
-
configType = "zudoku";
|
|
35
|
-
return { configPath, configType };
|
|
19
|
+
return filepath;
|
|
36
20
|
}
|
|
37
21
|
}
|
|
38
|
-
configPath = undefined;
|
|
39
|
-
configType = undefined;
|
|
40
|
-
return { configPath, configType };
|
|
41
|
-
}
|
|
42
|
-
async function getConfigFilePath(rootDir) {
|
|
43
|
-
const result = await findConfigFilePath(rootDir);
|
|
44
|
-
if (result.configType) {
|
|
45
|
-
return result;
|
|
46
|
-
}
|
|
47
22
|
throw new Error(`No zudoku config file found in project root.`);
|
|
48
23
|
}
|
|
49
|
-
async function
|
|
24
|
+
async function loadZudokuConfig(configPath) {
|
|
50
25
|
const { module, dependencies } = await runnerImport(configPath, {
|
|
51
26
|
server: {
|
|
52
27
|
// this allows us to 'load' CSS files in the config
|
|
@@ -59,65 +34,10 @@ async function loadZudokuCodeConfig(configPath) {
|
|
|
59
34
|
config: module.default,
|
|
60
35
|
};
|
|
61
36
|
}
|
|
62
|
-
async function
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
config = JSON.parse(json);
|
|
67
|
-
}
|
|
68
|
-
catch {
|
|
69
|
-
throw new Error("Failed to parse dev-portal.json. Check that the file is valid JSON.");
|
|
70
|
-
}
|
|
71
|
-
// 1. Validate the config
|
|
72
|
-
validateCommonConfig(config);
|
|
73
|
-
// 2. Replace $env() placeholders with actual environment
|
|
74
|
-
config = replaceEnvVariables(config, envVars);
|
|
75
|
-
return config;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Replaces the $env() placeholders in the config with the actual environment
|
|
79
|
-
*/
|
|
80
|
-
function replaceEnvVariables(
|
|
81
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
82
|
-
obj, envVars) {
|
|
83
|
-
if (typeof obj === "string") {
|
|
84
|
-
const envVarMatch = obj.match(/^\$env\(([^)]+)\)$/);
|
|
85
|
-
if (envVarMatch) {
|
|
86
|
-
const envVarName = envVarMatch[1];
|
|
87
|
-
return envVars[envVarName];
|
|
88
|
-
}
|
|
89
|
-
return obj;
|
|
90
|
-
}
|
|
91
|
-
else if (Array.isArray(obj)) {
|
|
92
|
-
return obj.map((o) => replaceEnvVariables(o, envVars));
|
|
93
|
-
}
|
|
94
|
-
else if (typeof obj === "object" && obj !== null) {
|
|
95
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
96
|
-
const newObj = {};
|
|
97
|
-
for (const key in obj) {
|
|
98
|
-
if (Object.hasOwn(obj, key)) {
|
|
99
|
-
newObj[key] = replaceEnvVariables(obj[key], envVars);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return newObj;
|
|
103
|
-
}
|
|
104
|
-
return obj;
|
|
105
|
-
}
|
|
106
|
-
export async function tryLoadZudokuConfig(rootDir, moduleDir, envVars, overrides) {
|
|
107
|
-
const { configPath, configType } = await getConfigFilePath(rootDir);
|
|
108
|
-
let config;
|
|
109
|
-
let dependencies;
|
|
110
|
-
if (configType === "dev-portal") {
|
|
111
|
-
config = await loadDevPortalConfig(configPath, envVars);
|
|
112
|
-
dependencies = [];
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
const loadConfig = overrides?.loadZudokuCodeConfig ?? loadZudokuCodeConfig;
|
|
116
|
-
({ config, dependencies } = await loadConfig(configPath));
|
|
117
|
-
// This is here instead of in the load function so that
|
|
118
|
-
// it works even if we are overriding the load function
|
|
119
|
-
validateConfig(config);
|
|
120
|
-
}
|
|
37
|
+
export async function tryLoadZudokuConfig(rootDir, moduleDir) {
|
|
38
|
+
const configPath = await getConfigFilePath(rootDir);
|
|
39
|
+
const { config, dependencies } = await loadZudokuConfig(configPath);
|
|
40
|
+
validateConfig(config);
|
|
121
41
|
const configWithMetadata = {
|
|
122
42
|
...config,
|
|
123
43
|
__meta: {
|
|
@@ -130,13 +50,12 @@ export async function tryLoadZudokuConfig(rootDir, moduleDir, envVars, overrides
|
|
|
130
50
|
};
|
|
131
51
|
return configWithMetadata;
|
|
132
52
|
}
|
|
133
|
-
const outputFileNames = ["dev-portal.js", "zudoku.config.js"];
|
|
134
53
|
export function findOutputPathOfServerConfig(output) {
|
|
135
54
|
if (Array.isArray(output)) {
|
|
136
55
|
throw new Error("Expected a single output, but got an array");
|
|
137
56
|
}
|
|
138
57
|
if ("output" in output) {
|
|
139
|
-
const result = output.output.find((o) => "isEntry" in o && o.isEntry &&
|
|
58
|
+
const result = output.output.find((o) => "isEntry" in o && o.isEntry && o.fileName === "zudoku.config.js");
|
|
140
59
|
if (result) {
|
|
141
60
|
return result.fileName;
|
|
142
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAGpC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,MAAM,iBAAiB,GAAG;IACxB,kBAAkB;IAClB,mBAAmB;IACnB,kBAAkB;IAClB,mBAAmB;IACnB,mBAAmB;CACpB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE,CACzC,IAAI,CAAC,IAAI,CAAC;KACP,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;KAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AAExB,KAAK,UAAU,iBAAiB,CAAC,OAAe;IAC9C,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,IAAI,MAAM,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,UAAkB;IAElB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,YAAY,CACjD,UAAU,EACV;QACE,MAAM,EAAE;YACN,mDAAmD;YACnD,gDAAgD;YAChD,+BAA+B,EAAE,IAAI;SACtC;KACF,CACF,CAAC;IAEF,OAAO;QACL,YAAY,EAAE,CAAC,UAAU,EAAE,GAAG,YAAY,CAAC;QAC3C,MAAM,EAAE,MAAM,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,SAAiB;IAEjB,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,gBAAgB,CAAU,UAAU,CAAC,CAAC;IAC7E,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,MAAM,kBAAkB,GAA4B;QAClD,GAAG,MAAM;QACT,MAAM,EAAE;YACN,OAAO;YACP,SAAS;YACT,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;YAC5B,YAAY;YACZ,UAAU;SACX;KACF,CAAC;IAEF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAqD;IAErD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,kBAAkB,CACxE,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC9D,CAAC"}
|