mintlify 2.0.9 → 2.0.10
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/bin/constants.js +1 -1
- package/package.json +1 -1
- package/src/constants.ts +1 -1
- package/bin/local-preview/listener/categorizeFiles.js +0 -47
- package/bin/local-preview/listener/categorizeFiles.js.map +0 -1
- package/bin/local-preview/listener/utils/fileIsMdxOrMd.js +0 -12
- package/bin/local-preview/listener/utils/fileIsMdxOrMd.js.map +0 -1
- package/bin/local-preview/utils/categorizeFiles.js +0 -63
- package/bin/local-preview/utils/categorizeFiles.js.map +0 -1
- package/bin/local-preview/utils/getOpenApiContext.js +0 -58
- package/bin/local-preview/utils/getOpenApiContext.js.map +0 -1
- package/bin/local-preview/utils/injectFavicons.js +0 -72
- package/bin/local-preview/utils/injectFavicons.js.map +0 -1
- package/bin/local-preview/utils/listener.js +0 -116
- package/bin/local-preview/utils/listener.js.map +0 -1
- package/bin/local-preview/utils/metadata.js +0 -118
- package/bin/local-preview/utils/metadata.js.map +0 -1
- package/bin/local-preview/utils/mintConfigFile.js +0 -43
- package/bin/local-preview/utils/mintConfigFile.js.map +0 -1
- package/bin/local-preview/utils/openApiCheck.js +0 -15
- package/bin/local-preview/utils/openApiCheck.js.map +0 -1
- package/bin/local-preview/utils/slugToTitle.js +0 -8
- package/bin/local-preview/utils/slugToTitle.js.map +0 -1
- package/bin/navigation.js +0 -4
- package/bin/navigation.js.map +0 -1
- package/bin/pageTemplate.js +0 -30
- package/bin/pageTemplate.js.map +0 -1
package/bin/constants.js
CHANGED
|
@@ -2,7 +2,7 @@ import path from "path";
|
|
|
2
2
|
import * as url from "url";
|
|
3
3
|
import os from "os";
|
|
4
4
|
// Change this to bump to a newer version of mint's client
|
|
5
|
-
export const TARGET_MINT_VERSION = "v0.0.
|
|
5
|
+
export const TARGET_MINT_VERSION = "v0.0.4";
|
|
6
6
|
// package installation location
|
|
7
7
|
export const INSTALL_PATH = url.fileURLToPath(new URL(".", import.meta.url));
|
|
8
8
|
export const HOME_DIR = os.homedir();
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
|
@@ -3,7 +3,7 @@ import * as url from "url";
|
|
|
3
3
|
import os from "os";
|
|
4
4
|
|
|
5
5
|
// Change this to bump to a newer version of mint's client
|
|
6
|
-
export const TARGET_MINT_VERSION = "v0.0.
|
|
6
|
+
export const TARGET_MINT_VERSION = "v0.0.4";
|
|
7
7
|
|
|
8
8
|
// package installation location
|
|
9
9
|
export const INSTALL_PATH = url.fileURLToPath(new URL(".", import.meta.url));
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
// TODO - put in prebuild package
|
|
2
|
-
import path from "path";
|
|
3
|
-
import { getFileExtension, openApiCheck, getFileList } from "./utils.js";
|
|
4
|
-
const categorizeFiles = async (contentDirectoryPath) => {
|
|
5
|
-
const allFilesInCmdExecutionPath = await getFileList(contentDirectoryPath);
|
|
6
|
-
const contentFilenames = [];
|
|
7
|
-
const staticFilenames = [];
|
|
8
|
-
const promises = [];
|
|
9
|
-
const openApiFiles = [];
|
|
10
|
-
const snippets = [];
|
|
11
|
-
allFilesInCmdExecutionPath.forEach((filename) => {
|
|
12
|
-
promises.push((async () => {
|
|
13
|
-
const extension = getFileExtension(filename);
|
|
14
|
-
let isOpenApi = false;
|
|
15
|
-
if (extension && (extension === "mdx" || extension === "md")) {
|
|
16
|
-
if (filename.startsWith("/_snippets")) {
|
|
17
|
-
snippets.push(filename);
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
contentFilenames.push(filename);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
else if (extension &&
|
|
24
|
-
(extension === "json" || extension === "yaml" || extension === "yml")) {
|
|
25
|
-
const openApiInfo = await openApiCheck(path.join(contentDirectoryPath, filename));
|
|
26
|
-
isOpenApi = openApiInfo.isOpenApi;
|
|
27
|
-
if (isOpenApi) {
|
|
28
|
-
const fileName = path.parse(filename).base;
|
|
29
|
-
openApiFiles.push({
|
|
30
|
-
filename: fileName.substring(0, fileName.lastIndexOf(".")),
|
|
31
|
-
spec: openApiInfo.spec,
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
else if ((!filename.endsWith("mint.config.json") ||
|
|
36
|
-
!filename.endsWith("mint.json")) &&
|
|
37
|
-
!isOpenApi) {
|
|
38
|
-
// all other files
|
|
39
|
-
staticFilenames.push(filename);
|
|
40
|
-
}
|
|
41
|
-
})());
|
|
42
|
-
});
|
|
43
|
-
await Promise.all(promises);
|
|
44
|
-
return { contentFilenames, staticFilenames, openApiFiles, snippets };
|
|
45
|
-
};
|
|
46
|
-
export default categorizeFiles;
|
|
47
|
-
//# sourceMappingURL=categorizeFiles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"categorizeFiles.js","sourceRoot":"","sources":["../../../src/local-preview/listener/categorizeFiles.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzE,MAAM,eAAe,GAAG,KAAK,EAAE,oBAA4B,EAAE,EAAE;IAC7D,MAAM,0BAA0B,GAAG,MAAM,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAC3E,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAC5B,MAAM,eAAe,GAAG,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,MAAM,YAAY,GAAG,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,0BAA0B,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC9C,QAAQ,CAAC,IAAI,CACX,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,SAAS,IAAI,CAAC,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,IAAI,CAAC,EAAE;gBAC5D,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;oBACrC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACzB;qBAAM;oBACL,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACjC;aACF;iBAAM,IACL,SAAS;gBACT,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,KAAK,CAAC,EACrE;gBACA,MAAM,WAAW,GAAG,MAAM,YAAY,CACpC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAC1C,CAAC;gBACF,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;gBAClC,IAAI,SAAS,EAAE;oBACb,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;oBAC3C,YAAY,CAAC,IAAI,CAAC;wBAChB,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;wBAC1D,IAAI,EAAE,WAAW,CAAC,IAAI;qBACvB,CAAC,CAAC;iBACJ;aACF;iBAAM,IACL,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBACrC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAClC,CAAC,SAAS,EACV;gBACA,kBAAkB;gBAClB,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,EAAE,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AACvE,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import pathUtil from "path";
|
|
2
|
-
export const fileIsMdxOrMd = (filename) => {
|
|
3
|
-
try {
|
|
4
|
-
const extension = pathUtil.parse(filename).ext;
|
|
5
|
-
return extension && (extension === ".mdx" || extension === ".md");
|
|
6
|
-
}
|
|
7
|
-
catch (e) {
|
|
8
|
-
// TypeError when filename is not a string
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=fileIsMdxOrMd.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fileIsMdxOrMd.js","sourceRoot":"","sources":["../../../../src/local-preview/listener/utils/fileIsMdxOrMd.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,MAAM,CAAC;AAE5B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,EAAE;IAChD,IAAI;QACF,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;QAC/C,OAAO,SAAS,IAAI,CAAC,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,KAAK,CAAC,CAAC;KACnE;IAAC,OAAO,CAAC,EAAE;QACV,0CAA0C;QAC1C,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { promises as _promises } from "fs";
|
|
2
|
-
import path from "path";
|
|
3
|
-
import { CMD_EXEC_PATH } from "../../constants.js";
|
|
4
|
-
import openApiCheck from "./openApiCheck.js";
|
|
5
|
-
import { getFileExtension } from "../../util.js";
|
|
6
|
-
const { readdir } = _promises;
|
|
7
|
-
const getFileList = async (dirName, og = dirName) => {
|
|
8
|
-
let files = [];
|
|
9
|
-
const items = await readdir(dirName, { withFileTypes: true });
|
|
10
|
-
for (const item of items) {
|
|
11
|
-
if (item.isDirectory()) {
|
|
12
|
-
files = [...files, ...(await getFileList(`${dirName}/${item.name}`, og))];
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
const path = `${dirName}/${item.name}`;
|
|
16
|
-
const name = path.replace(og, "");
|
|
17
|
-
files.push({ path, isSymbolicLink: item.isSymbolicLink(), name });
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return files;
|
|
21
|
-
};
|
|
22
|
-
const categorizeFiles = async () => {
|
|
23
|
-
const allFilesInCmdExecutionPath = await getFileList(CMD_EXEC_PATH);
|
|
24
|
-
const markdownFiles = [];
|
|
25
|
-
const staticFiles = [];
|
|
26
|
-
const promises = [];
|
|
27
|
-
const openApiFiles = [];
|
|
28
|
-
allFilesInCmdExecutionPath.forEach((file) => {
|
|
29
|
-
promises.push((async () => {
|
|
30
|
-
const extension = getFileExtension(file.name);
|
|
31
|
-
let isOpenApi = false;
|
|
32
|
-
if (extension &&
|
|
33
|
-
(extension === "mdx" || extension === "md" || extension === "tsx")) {
|
|
34
|
-
markdownFiles.push(file.name);
|
|
35
|
-
}
|
|
36
|
-
else if (extension &&
|
|
37
|
-
(extension === "json" || extension === "yaml" || extension === "yml")) {
|
|
38
|
-
const openApiInfo = await openApiCheck(path.join(CMD_EXEC_PATH, file.name));
|
|
39
|
-
isOpenApi = openApiInfo.isOpenApi;
|
|
40
|
-
if (isOpenApi) {
|
|
41
|
-
const fileName = path.parse(file.name).base;
|
|
42
|
-
openApiFiles.push({
|
|
43
|
-
name: fileName.substring(0, fileName.lastIndexOf(".")),
|
|
44
|
-
openapi: openApiInfo.openapi,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
else if ((!file.name.endsWith("mint.config.json") ||
|
|
49
|
-
!file.name.endsWith("mint.json")) &&
|
|
50
|
-
!isOpenApi) {
|
|
51
|
-
// all other files
|
|
52
|
-
staticFiles.push(file.name);
|
|
53
|
-
}
|
|
54
|
-
})());
|
|
55
|
-
});
|
|
56
|
-
await Promise.all(promises);
|
|
57
|
-
const openApi = {
|
|
58
|
-
files: openApiFiles,
|
|
59
|
-
};
|
|
60
|
-
return { markdownFiles, staticFiles, openApi };
|
|
61
|
-
};
|
|
62
|
-
export default categorizeFiles;
|
|
63
|
-
//# sourceMappingURL=categorizeFiles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"categorizeFiles.js","sourceRoot":"","sources":["../../../src/local-preview/utils/categorizeFiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
export const extractMethodAndEndpoint = (api) => {
|
|
2
|
-
const methodRegex = /(get|post|put|delete|patch)\s/i;
|
|
3
|
-
const trimmed = api.trim();
|
|
4
|
-
const foundMethod = trimmed.match(methodRegex);
|
|
5
|
-
const startIndexOfMethod = foundMethod ? api.indexOf(foundMethod[0]) : 0;
|
|
6
|
-
const endIndexOfMethod = foundMethod
|
|
7
|
-
? startIndexOfMethod + foundMethod[0].length - 1
|
|
8
|
-
: 0;
|
|
9
|
-
const filename = api.substring(0, startIndexOfMethod).trim();
|
|
10
|
-
return {
|
|
11
|
-
method: foundMethod ? foundMethod[0].slice(0, -1).toUpperCase() : undefined,
|
|
12
|
-
endpoint: api.substring(endIndexOfMethod).trim(),
|
|
13
|
-
filename: filename ? filename : undefined,
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
export const getOpenApiOperationMethodAndEndpoint = (openApi, openApiMetaField) => {
|
|
17
|
-
var _a;
|
|
18
|
-
const { endpoint, method, filename } = extractMethodAndEndpoint(openApiMetaField);
|
|
19
|
-
let path;
|
|
20
|
-
(_a = openApi.files) === null || _a === void 0 ? void 0 : _a.forEach((file) => {
|
|
21
|
-
const openApiFile = file.openapi;
|
|
22
|
-
const openApiPath = openApiFile.paths && openApiFile.paths[endpoint];
|
|
23
|
-
const isFilenameOrNone = !filename || filename === file.name;
|
|
24
|
-
if (openApiPath && isFilenameOrNone) {
|
|
25
|
-
path = openApiPath;
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
if (path == null) {
|
|
29
|
-
return {};
|
|
30
|
-
}
|
|
31
|
-
let operation;
|
|
32
|
-
if (method) {
|
|
33
|
-
operation = path[method.toLowerCase()];
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
const firstOperationKey = Object.keys(path)[0];
|
|
37
|
-
operation = path[firstOperationKey];
|
|
38
|
-
}
|
|
39
|
-
return {
|
|
40
|
-
operation,
|
|
41
|
-
method,
|
|
42
|
-
endpoint,
|
|
43
|
-
};
|
|
44
|
-
};
|
|
45
|
-
export const getOpenApiTitleAndDescription = (openApi, openApiMetaField) => {
|
|
46
|
-
if (openApi == null || !openApiMetaField || openApiMetaField == null) {
|
|
47
|
-
return {};
|
|
48
|
-
}
|
|
49
|
-
const { operation } = getOpenApiOperationMethodAndEndpoint(openApi, openApiMetaField);
|
|
50
|
-
if (operation == null) {
|
|
51
|
-
return {};
|
|
52
|
-
}
|
|
53
|
-
return {
|
|
54
|
-
title: operation.summary,
|
|
55
|
-
description: operation.description,
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=getOpenApiContext.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getOpenApiContext.js","sourceRoot":"","sources":["../../../src/local-preview/utils/getOpenApiContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import favicons from "favicons";
|
|
2
|
-
import { promises as _promises } from "fs";
|
|
3
|
-
import { outputFile } from "fs-extra";
|
|
4
|
-
import { join } from "path";
|
|
5
|
-
import { CLIENT_PATH, CMD_EXEC_PATH } from "../../constants.js";
|
|
6
|
-
const { readFile } = _promises;
|
|
7
|
-
export const injectFavicons = async (configObj, logger) => {
|
|
8
|
-
if ((configObj === null || configObj === void 0 ? void 0 : configObj.favicon) == null)
|
|
9
|
-
return;
|
|
10
|
-
const desiredPath = join(CMD_EXEC_PATH, configObj.favicon);
|
|
11
|
-
const favicon = await readFile(desiredPath);
|
|
12
|
-
if (favicon == null)
|
|
13
|
-
return;
|
|
14
|
-
logger.start("Generating favicons...");
|
|
15
|
-
const promises = [];
|
|
16
|
-
try {
|
|
17
|
-
const response = await favicons(favicon, faviconConfig(configObj === null || configObj === void 0 ? void 0 : configObj.name));
|
|
18
|
-
response.images.forEach((img) => {
|
|
19
|
-
promises.push((async () => {
|
|
20
|
-
const targetPath = join(CLIENT_PATH, "public", "favicons", img.name);
|
|
21
|
-
await outputFile(targetPath, Buffer.from(img.contents), {
|
|
22
|
-
flag: "w",
|
|
23
|
-
});
|
|
24
|
-
})());
|
|
25
|
-
});
|
|
26
|
-
response.files.forEach((file) => {
|
|
27
|
-
promises.push((async () => {
|
|
28
|
-
const targetPath = join(CLIENT_PATH, "public", "favicons", file.name);
|
|
29
|
-
await outputFile(targetPath, file.contents, { flag: "w" });
|
|
30
|
-
})());
|
|
31
|
-
});
|
|
32
|
-
await Promise.all(promises);
|
|
33
|
-
logger.succeed("Favicons generated");
|
|
34
|
-
}
|
|
35
|
-
catch (err) {
|
|
36
|
-
console.log(err.message); // Error description e.g. "An unknown error has occurred"
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
const faviconConfig = (name) => ({
|
|
40
|
-
path: "/favicons",
|
|
41
|
-
appName: name,
|
|
42
|
-
appShortName: name,
|
|
43
|
-
appDescription: null,
|
|
44
|
-
developerName: null,
|
|
45
|
-
developerURL: null,
|
|
46
|
-
dir: "auto",
|
|
47
|
-
lang: "en-US",
|
|
48
|
-
background: "#fff",
|
|
49
|
-
theme_color: "#fff",
|
|
50
|
-
appleStatusBarStyle: "black-translucent",
|
|
51
|
-
display: "standalone",
|
|
52
|
-
orientation: "any",
|
|
53
|
-
scope: "/",
|
|
54
|
-
start_url: "/?homescreen=1",
|
|
55
|
-
preferRelatedApplications: false,
|
|
56
|
-
relatedApplications: undefined,
|
|
57
|
-
version: "1.0",
|
|
58
|
-
logging: false,
|
|
59
|
-
pixel_art: false,
|
|
60
|
-
loadManifestWithCredentials: true,
|
|
61
|
-
manifestMaskable: false,
|
|
62
|
-
icons: {
|
|
63
|
-
android: ["android-chrome-192x192.png", "android-chrome-256x256.png"],
|
|
64
|
-
appleIcon: ["apple-touch-icon.png"],
|
|
65
|
-
appleStartup: false,
|
|
66
|
-
favicons: true,
|
|
67
|
-
windows: ["mstile-150x150.png"],
|
|
68
|
-
yandex: false,
|
|
69
|
-
firefox: false,
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
//# sourceMappingURL=injectFavicons.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"injectFavicons.js","sourceRoot":"","sources":["../../../src/local-preview/utils/injectFavicons.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;AAE/B,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;IACxD,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,KAAI,IAAI;QAAE,OAAO;IAEvC,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO;IAC5B,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,CAAC,CAAC,CAAC;QACzE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9B,QAAQ,CAAC,IAAI,CACX,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrE,MAAM,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;oBACtD,IAAI,EAAE,GAAG;iBACV,CAAC,CAAC;YACL,CAAC,CAAC,EAAE,CACL,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC9B,QAAQ,CAAC,IAAI,CACX,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtE,MAAM,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,EAAE,CACL,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;KACtC;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,yDAAyD;KACpF;AACH,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/B,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,IAAI;IACb,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,IAAI;IACnB,YAAY,EAAE,IAAI;IAClB,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,OAAO;IACb,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,MAAM;IACnB,mBAAmB,EAAE,mBAAmB;IACxC,OAAO,EAAE,YAAY;IACrB,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,GAAG;IACV,SAAS,EAAE,gBAAgB;IAC3B,yBAAyB,EAAE,KAAK;IAChC,mBAAmB,EAAE,SAAS;IAC9B,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,KAAK;IAChB,2BAA2B,EAAE,IAAI;IACjC,gBAAgB,EAAE,KAAK;IACvB,KAAK,EAAE;QACL,OAAO,EAAE,CAAC,4BAA4B,EAAE,4BAA4B,CAAC;QACrE,SAAS,EAAE,CAAC,sBAAsB,CAAC;QACnC,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC,oBAAoB,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK;KACf;CACF,CAAC,CAAC"}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import chokidar from "chokidar";
|
|
2
|
-
import fse from "fs-extra";
|
|
3
|
-
import path from "path";
|
|
4
|
-
import { CLIENT_PATH, CMD_EXEC_PATH } from "../../constants.js";
|
|
5
|
-
import { fileBelongsInPagesFolder, getFileExtension } from "../../util.js";
|
|
6
|
-
import { createMetadataFile } from "./metadata.js";
|
|
7
|
-
import openApiCheck from "./openApiCheck.js";
|
|
8
|
-
const listener = () => {
|
|
9
|
-
chokidar
|
|
10
|
-
.watch(CMD_EXEC_PATH, {
|
|
11
|
-
ignoreInitial: true,
|
|
12
|
-
ignored: ["node_modules", ".git"],
|
|
13
|
-
cwd: CMD_EXEC_PATH,
|
|
14
|
-
})
|
|
15
|
-
.on("all", async (event, filename) => {
|
|
16
|
-
if (event === "unlink" || event === "unlinkDir") {
|
|
17
|
-
if (fileBelongsInPagesFolder(filename)) {
|
|
18
|
-
const targetPath = path.join(CLIENT_PATH, "src", "pages", filename);
|
|
19
|
-
await fse.remove(targetPath);
|
|
20
|
-
console.log("Page deleted: ", filename);
|
|
21
|
-
}
|
|
22
|
-
else if (filename === "mint.config.json" ||
|
|
23
|
-
filename === "mint.json") {
|
|
24
|
-
const targetPath = path.join(CLIENT_PATH, "src", "mint.json");
|
|
25
|
-
await fse.remove(targetPath);
|
|
26
|
-
console.log("⚠️ mint.json deleted. Please create a new mint.json file as it is mandatory.");
|
|
27
|
-
process.exit(1);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
// all other files
|
|
31
|
-
const targetPath = path.join(CLIENT_PATH, "public", filename);
|
|
32
|
-
await fse.remove(targetPath);
|
|
33
|
-
console.log("Static file deleted: ", filename);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
const filePath = path.join(CMD_EXEC_PATH, filename);
|
|
38
|
-
let updateMetadata = false;
|
|
39
|
-
if (fileBelongsInPagesFolder(filename)) {
|
|
40
|
-
updateMetadata = true;
|
|
41
|
-
const targetPath = path.join(CLIENT_PATH, "src", "pages", filename);
|
|
42
|
-
await fse.copy(filePath, targetPath);
|
|
43
|
-
switch (event) {
|
|
44
|
-
case "add":
|
|
45
|
-
case "addDir":
|
|
46
|
-
console.log("New page detected: ", filename);
|
|
47
|
-
break;
|
|
48
|
-
default:
|
|
49
|
-
console.log("Page edited: ", filename);
|
|
50
|
-
break;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
else if (filename === "mint.config.json" ||
|
|
54
|
-
filename === "mint.json") {
|
|
55
|
-
updateMetadata = true;
|
|
56
|
-
const targetPath = path.join(CLIENT_PATH, "src", "mint.json");
|
|
57
|
-
await fse.copy(filePath, targetPath);
|
|
58
|
-
switch (event) {
|
|
59
|
-
case "add":
|
|
60
|
-
case "addDir":
|
|
61
|
-
console.log("Config added");
|
|
62
|
-
break;
|
|
63
|
-
default:
|
|
64
|
-
console.log("Config edited");
|
|
65
|
-
break;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
const extension = getFileExtension(filename);
|
|
70
|
-
let isOpenApi = false;
|
|
71
|
-
if (extension &&
|
|
72
|
-
(extension === "json" ||
|
|
73
|
-
extension === "yaml" ||
|
|
74
|
-
extension === "yml")) {
|
|
75
|
-
const openApiInfo = await openApiCheck(path.join(CMD_EXEC_PATH, filename));
|
|
76
|
-
isOpenApi = openApiInfo.isOpenApi;
|
|
77
|
-
if (isOpenApi) {
|
|
78
|
-
await fse.outputFile(path.join(CLIENT_PATH, "src", "openapi.json"), JSON.stringify(openApiInfo.openapi), {
|
|
79
|
-
flag: "w",
|
|
80
|
-
});
|
|
81
|
-
updateMetadata = true;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
if (!isOpenApi) {
|
|
85
|
-
// all other files
|
|
86
|
-
const targetPath = path.join(CLIENT_PATH, "public", filename);
|
|
87
|
-
await fse.copy(filePath, targetPath);
|
|
88
|
-
}
|
|
89
|
-
switch (event) {
|
|
90
|
-
case "add":
|
|
91
|
-
case "addDir":
|
|
92
|
-
if (isOpenApi) {
|
|
93
|
-
console.log("OpenApi file added: ", filename);
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
console.log("Static file added: ", filename);
|
|
97
|
-
}
|
|
98
|
-
break;
|
|
99
|
-
default:
|
|
100
|
-
if (isOpenApi) {
|
|
101
|
-
console.log("OpenApi file edited: ", filename);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
console.log("Static file edited: ", filename);
|
|
105
|
-
}
|
|
106
|
-
break;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
if (updateMetadata) {
|
|
110
|
-
await createMetadataFile();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
};
|
|
115
|
-
export default listener;
|
|
116
|
-
//# sourceMappingURL=listener.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"listener.js","sourceRoot":"","sources":["../../../src/local-preview/utils/listener.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
// TODO - add types
|
|
2
|
-
import fse from "fs-extra";
|
|
3
|
-
import { promises as _promises } from "fs";
|
|
4
|
-
import matter from "gray-matter";
|
|
5
|
-
import path from "path";
|
|
6
|
-
import categorizeFiles from "./categorizeFiles.js";
|
|
7
|
-
import { getConfigObj } from "./mintConfigFile.js";
|
|
8
|
-
import { getOpenApiTitleAndDescription } from "./getOpenApiContext.js";
|
|
9
|
-
import { slugToTitle } from "./slugToTitle.js";
|
|
10
|
-
import { CLIENT_PATH, CMD_EXEC_PATH } from "../../constants.js";
|
|
11
|
-
const { readFile } = _promises;
|
|
12
|
-
// End matter is front matter, but at the end
|
|
13
|
-
const getIndexOfEndMatter = (fileContents) => {
|
|
14
|
-
const frontMatters = fileContents.match(/---\n(title:.+\n|description:.+\n|sidebarTitle:.+\n|api:.+\n|openapi:.+\n)+---$/m);
|
|
15
|
-
if (frontMatters) {
|
|
16
|
-
return fileContents.indexOf(frontMatters[0]);
|
|
17
|
-
}
|
|
18
|
-
return -1;
|
|
19
|
-
};
|
|
20
|
-
export const potentiallyRemoveEndMatter = (fileContents) => {
|
|
21
|
-
const endMatterIndex = getIndexOfEndMatter(fileContents);
|
|
22
|
-
if (endMatterIndex === -1) {
|
|
23
|
-
return fileContents;
|
|
24
|
-
}
|
|
25
|
-
return fileContents.substring(0, endMatterIndex);
|
|
26
|
-
};
|
|
27
|
-
const getMetadata = (fileContents) => {
|
|
28
|
-
const { data } = matter(fileContents);
|
|
29
|
-
if (Object.keys(data).length > 0) {
|
|
30
|
-
return data;
|
|
31
|
-
}
|
|
32
|
-
const startIndex = getIndexOfEndMatter(fileContents);
|
|
33
|
-
if (startIndex === -1) {
|
|
34
|
-
return {};
|
|
35
|
-
}
|
|
36
|
-
const fileContentFromFrontMatter = fileContents.substring(startIndex);
|
|
37
|
-
const { data: nonTopFrontMatter } = matter(fileContentFromFrontMatter);
|
|
38
|
-
return nonTopFrontMatter;
|
|
39
|
-
};
|
|
40
|
-
export const createPage = (path, content, openApi) => {
|
|
41
|
-
const slug = path.replace(/\.mdx?$/, "").substring(1);
|
|
42
|
-
let defaultTitle = slugToTitle(slug);
|
|
43
|
-
const metadata = getMetadata(content);
|
|
44
|
-
// Append data from OpenAPI if it exists
|
|
45
|
-
const { title, description } = getOpenApiTitleAndDescription(openApi, metadata === null || metadata === void 0 ? void 0 : metadata.openapi);
|
|
46
|
-
if (title) {
|
|
47
|
-
defaultTitle = title;
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
[slug]: Object.assign(Object.assign({ title: defaultTitle, description }, metadata), { href: `/${slug}` }),
|
|
51
|
-
};
|
|
52
|
-
};
|
|
53
|
-
export const createMetadataFileFromPages = (pages, configObj) => {
|
|
54
|
-
const targetPath = path.join(CLIENT_PATH, "src", "metadata.json");
|
|
55
|
-
const createNav = (nav) => {
|
|
56
|
-
return {
|
|
57
|
-
group: nav.group,
|
|
58
|
-
version: nav.version,
|
|
59
|
-
pages: nav.pages.map((page) => {
|
|
60
|
-
if (typeof page === "string") {
|
|
61
|
-
return pages[page];
|
|
62
|
-
}
|
|
63
|
-
return createNav(page);
|
|
64
|
-
}),
|
|
65
|
-
};
|
|
66
|
-
};
|
|
67
|
-
if ((configObj === null || configObj === void 0 ? void 0 : configObj.navigation) == null) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
let navFile = configObj.navigation.map((nav) => createNav(nav));
|
|
71
|
-
const filterOutNullInPages = (pages) => {
|
|
72
|
-
const newPages = [];
|
|
73
|
-
pages.forEach((page) => {
|
|
74
|
-
if (page == null) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
if (page === null || page === void 0 ? void 0 : page.pages) {
|
|
78
|
-
const newGroup = filterOutNullInGroup(page);
|
|
79
|
-
newPages.push(newGroup);
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
newPages.push(page);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
return newPages;
|
|
86
|
-
};
|
|
87
|
-
const filterOutNullInGroup = (group) => {
|
|
88
|
-
const newPages = filterOutNullInPages(group.pages);
|
|
89
|
-
const newGroup = Object.assign(Object.assign({}, group), { pages: newPages });
|
|
90
|
-
return newGroup;
|
|
91
|
-
};
|
|
92
|
-
const newNavFile = navFile.map((group) => {
|
|
93
|
-
return filterOutNullInGroup(group);
|
|
94
|
-
});
|
|
95
|
-
fse.outputFileSync(targetPath, JSON.stringify(newNavFile, null, 2), {
|
|
96
|
-
flag: "w",
|
|
97
|
-
});
|
|
98
|
-
};
|
|
99
|
-
export const createMetadataFile = async () => {
|
|
100
|
-
// create pages
|
|
101
|
-
const { markdownFiles, openApi } = await categorizeFiles();
|
|
102
|
-
// create config object
|
|
103
|
-
const configObj = await getConfigObj();
|
|
104
|
-
let pages = {};
|
|
105
|
-
const mdPromises = [];
|
|
106
|
-
markdownFiles.forEach((filename) => {
|
|
107
|
-
mdPromises.push((async () => {
|
|
108
|
-
const sourcePath = path.join(CMD_EXEC_PATH, filename);
|
|
109
|
-
const fileContent = await readFile(sourcePath);
|
|
110
|
-
const contentStr = fileContent.toString();
|
|
111
|
-
const page = createPage(filename, contentStr, openApi);
|
|
112
|
-
pages = Object.assign(Object.assign({}, pages), page);
|
|
113
|
-
})());
|
|
114
|
-
});
|
|
115
|
-
await Promise.all(mdPromises);
|
|
116
|
-
createMetadataFileFromPages(pages, configObj);
|
|
117
|
-
};
|
|
118
|
-
//# sourceMappingURL=metadata.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/local-preview/utils/metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { promises as _promises } from "fs";
|
|
2
|
-
import fse, { pathExists } from "fs-extra";
|
|
3
|
-
import path from "path";
|
|
4
|
-
import { CLIENT_PATH, CMD_EXEC_PATH } from "../../constants.js";
|
|
5
|
-
const { readFile } = _promises;
|
|
6
|
-
const getConfigPath = async () => {
|
|
7
|
-
let configPath = null;
|
|
8
|
-
if (await pathExists(path.join(CMD_EXEC_PATH, "mint.config.json"))) {
|
|
9
|
-
configPath = path.join(CMD_EXEC_PATH, "mint.config.json");
|
|
10
|
-
}
|
|
11
|
-
if (await pathExists(path.join(CMD_EXEC_PATH, "mint.json"))) {
|
|
12
|
-
configPath = path.join(CMD_EXEC_PATH, "mint.json");
|
|
13
|
-
}
|
|
14
|
-
return configPath;
|
|
15
|
-
};
|
|
16
|
-
export const getConfigObj = async () => {
|
|
17
|
-
const configPath = await getConfigPath();
|
|
18
|
-
let configObj = null;
|
|
19
|
-
if (configPath) {
|
|
20
|
-
const configContents = await readFile(configPath);
|
|
21
|
-
configObj = JSON.parse(JSON.stringify(configContents));
|
|
22
|
-
}
|
|
23
|
-
return configObj;
|
|
24
|
-
};
|
|
25
|
-
export const updateConfigFile = async (logger) => {
|
|
26
|
-
const configTargetPath = path.join(CLIENT_PATH, "src", "mint.json");
|
|
27
|
-
await fse.remove(configTargetPath);
|
|
28
|
-
let configObj = null;
|
|
29
|
-
const configPath = await getConfigPath();
|
|
30
|
-
if (configPath) {
|
|
31
|
-
await fse.remove(configTargetPath);
|
|
32
|
-
await fse.copy(configPath, configTargetPath);
|
|
33
|
-
logger.succeed("mint config file synced");
|
|
34
|
-
const configContents = await readFile(configPath);
|
|
35
|
-
configObj = JSON.parse(configContents.toString());
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
logger.fail("Must be ran in a directory where a mint.json file exists.");
|
|
39
|
-
process.exit(1);
|
|
40
|
-
}
|
|
41
|
-
return configObj;
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=mintConfigFile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mintConfigFile.js","sourceRoot":"","sources":["../../../src/local-preview/utils/mintConfigFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,GAAG,EAAE,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;AAE/B,MAAM,aAAa,GAAG,KAAK,IAA4B,EAAE;IACvD,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC,EAAE;QAClE,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;KAC3D;IAED,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,EAAE;QAC3D,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;KACpD;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAA4B,EAAE;IAC7D,MAAM,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;IACzC,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,UAAU,EAAE;QACd,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;KACxD;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,MAAW,EAAE,EAAE;IACpD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACpE,MAAM,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACnC,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,MAAM,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;IAEzC,IAAI,UAAU,EAAE;QACd,MAAM,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACnC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAC1C,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAClD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;KACnD;SAAM;QACL,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import SwaggerParser from "@apidevtools/swagger-parser";
|
|
2
|
-
const openApiCheck = async (path) => {
|
|
3
|
-
let openapi;
|
|
4
|
-
let isOpenApi = false;
|
|
5
|
-
try {
|
|
6
|
-
openapi = await SwaggerParser.validate(path);
|
|
7
|
-
isOpenApi = true;
|
|
8
|
-
}
|
|
9
|
-
catch (_a) {
|
|
10
|
-
// not valid openApi
|
|
11
|
-
}
|
|
12
|
-
return { openapi, isOpenApi };
|
|
13
|
-
};
|
|
14
|
-
export default openApiCheck;
|
|
15
|
-
//# sourceMappingURL=openApiCheck.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openApiCheck.js","sourceRoot":"","sources":["../../../src/local-preview/utils/openApiCheck.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,6BAA6B,CAAC;AAGxD,MAAM,YAAY,GAAG,KAAK,EACxB,IAAY,EACmC,EAAE;IACjD,IAAI,OAAO,CAAC;IACZ,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI;QACF,OAAO,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7C,SAAS,GAAG,IAAI,CAAC;KAClB;IAAC,WAAM;QACN,oBAAoB;KACrB;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChC,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export const slugToTitle = (slug) => {
|
|
2
|
-
const slugArr = slug.split("/");
|
|
3
|
-
let defaultTitle = slugArr[slugArr.length - 1].split("-").join(" "); //replace all dashes
|
|
4
|
-
defaultTitle = defaultTitle.split("_").join(" "); //replace all underscores
|
|
5
|
-
defaultTitle = defaultTitle.charAt(0).toUpperCase() + defaultTitle.slice(1); //capitalize first letter
|
|
6
|
-
return defaultTitle;
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=slugToTitle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slugToTitle.js","sourceRoot":"","sources":["../../../src/local-preview/utils/slugToTitle.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,oBAAoB;IACzF,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,yBAAyB;IAC3E,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAyB;IACtG,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
|
package/bin/navigation.js
DELETED
package/bin/navigation.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../src/navigation.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,YAAY,CAC1B,QAAyB;IAEzB,OAAO,OAAO,QAAQ,KAAK,QAAQ,CAAC;AACtC,CAAC"}
|
package/bin/pageTemplate.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import inquirer from "inquirer";
|
|
2
|
-
import { createPage } from "./util.js";
|
|
3
|
-
const generatePageTemplate = () => {
|
|
4
|
-
inquirer
|
|
5
|
-
.prompt([
|
|
6
|
-
{
|
|
7
|
-
type: "input",
|
|
8
|
-
name: "title",
|
|
9
|
-
message: "What is the title of the new page?",
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
type: "input",
|
|
13
|
-
name: "description",
|
|
14
|
-
message: "What is the description?",
|
|
15
|
-
default: "",
|
|
16
|
-
},
|
|
17
|
-
])
|
|
18
|
-
.then((answers) => {
|
|
19
|
-
const { title, description } = answers;
|
|
20
|
-
createPage(title, description);
|
|
21
|
-
console.log("🌱 Created initial files for Mintlify docs");
|
|
22
|
-
process.exit(0);
|
|
23
|
-
})
|
|
24
|
-
.catch((error) => {
|
|
25
|
-
console.error(error);
|
|
26
|
-
process.exit(1);
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
export default generatePageTemplate;
|
|
30
|
-
//# sourceMappingURL=pageTemplate.js.map
|
package/bin/pageTemplate.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pageTemplate.js","sourceRoot":"","sources":["../src/pageTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IAChC,QAAQ;SACL,MAAM,CAAC;QACN;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,oCAAoC;SAC9C;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,0BAA0B;YACnC,OAAO,EAAE,EAAE;SACZ;KACF,CAAC;SACD,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAEvC,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|