@docusaurus/utils 0.0.0-4347 → 0.0.0-4355
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/lib/dataFileUtils.d.ts +24 -0
- package/lib/dataFileUtils.d.ts.map +1 -0
- package/lib/dataFileUtils.js +68 -0
- package/lib/dataFileUtils.js.map +1 -0
- package/lib/index.d.ts +7 -38
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -128
- package/lib/index.js.map +1 -1
- package/lib/markdownLinks.js +2 -2
- package/lib/markdownLinks.js.map +1 -1
- package/lib/markdownParser.d.ts +4 -0
- package/lib/markdownParser.d.ts.map +1 -1
- package/lib/markdownParser.js +17 -1
- package/lib/markdownParser.js.map +1 -1
- package/lib/pathUtils.d.ts +29 -0
- package/lib/pathUtils.d.ts.map +1 -1
- package/lib/pathUtils.js +63 -1
- package/lib/pathUtils.js.map +1 -1
- package/lib/tags.js +2 -2
- package/lib/tags.js.map +1 -1
- package/lib/{normalizeUrl.d.ts → urlUtils.d.ts} +2 -1
- package/lib/urlUtils.d.ts.map +1 -0
- package/lib/{normalizeUrl.js → urlUtils.js} +9 -2
- package/lib/urlUtils.js.map +1 -0
- package/lib/webpackUtils.js +3 -3
- package/lib/webpackUtils.js.map +1 -1
- package/package.json +5 -5
- package/src/dataFileUtils.ts +93 -0
- package/src/index.ts +8 -154
- package/src/markdownLinks.ts +1 -1
- package/src/markdownParser.ts +18 -0
- package/src/pathUtils.ts +65 -0
- package/src/tags.ts +1 -1
- package/src/{normalizeUrl.ts → urlUtils.ts} +10 -0
- package/src/webpackUtils.ts +1 -1
- package/lib/escapePath.d.ts +0 -18
- package/lib/escapePath.d.ts.map +0 -1
- package/lib/escapePath.js +0 -26
- package/lib/escapePath.js.map +0 -1
- package/lib/normalizeUrl.d.ts.map +0 -1
- package/lib/normalizeUrl.js.map +0 -1
- package/lib/posixPath.d.ts +0 -18
- package/lib/posixPath.d.ts.map +0 -1
- package/lib/posixPath.js +0 -31
- package/lib/posixPath.js.map +0 -1
- package/src/escapePath.ts +0 -23
- package/src/posixPath.ts +0 -29
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
import type { ContentPaths } from './markdownLinks';
|
|
8
|
+
declare type DataFileParams = {
|
|
9
|
+
filePath: string;
|
|
10
|
+
contentPaths: ContentPaths;
|
|
11
|
+
};
|
|
12
|
+
export declare function getDataFilePath({ filePath, contentPaths, }: DataFileParams): Promise<string | undefined>;
|
|
13
|
+
/**
|
|
14
|
+
* Looks up for a data file in the content paths, returns the normalized object.
|
|
15
|
+
* Throws when validation fails; returns undefined when file not found
|
|
16
|
+
*/
|
|
17
|
+
export declare function getDataFileData<T>(params: DataFileParams & {
|
|
18
|
+
fileType: string;
|
|
19
|
+
}, validate: (content: unknown) => T): Promise<T | undefined>;
|
|
20
|
+
export declare function getContentPathList(contentPaths: ContentPaths): string[];
|
|
21
|
+
export declare function findFolderContainingFile(folderPaths: string[], relativeFilePath: string): Promise<string | undefined>;
|
|
22
|
+
export declare function getFolderContainingFile(folderPaths: string[], relativeFilePath: string): Promise<string>;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=dataFileUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataFileUtils.d.ts","sourceRoot":"","sources":["../src/dataFileUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAGlD,aAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;CAC5B,CAAC;AAEF,wBAAsB,eAAe,CAAC,EACpC,QAAQ,EACR,YAAY,GACb,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU9C;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,MAAM,EAAE,cAAc,GAAG;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,EAC3C,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,CAAC,GAChC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAiBxB;AAGD,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,EAAE,CAEvE;AAGD,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,MAAM,EAAE,EACrB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAI7B;AAED,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EAAE,EACrB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAcjB"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the MIT license found in the
|
|
6
|
+
* LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.getFolderContainingFile = exports.findFolderContainingFile = exports.getContentPathList = exports.getDataFileData = exports.getDataFilePath = void 0;
|
|
10
|
+
const tslib_1 = require("tslib");
|
|
11
|
+
const fs_extra_1 = (0, tslib_1.__importDefault)(require("fs-extra"));
|
|
12
|
+
const js_yaml_1 = (0, tslib_1.__importDefault)(require("js-yaml"));
|
|
13
|
+
const path_1 = (0, tslib_1.__importDefault)(require("path"));
|
|
14
|
+
const index_1 = require("./index");
|
|
15
|
+
const logger_1 = (0, tslib_1.__importDefault)(require("@docusaurus/logger"));
|
|
16
|
+
async function getDataFilePath({ filePath, contentPaths, }) {
|
|
17
|
+
// Loads a localized data file in priority
|
|
18
|
+
const contentPath = await findFolderContainingFile(getContentPathList(contentPaths), filePath);
|
|
19
|
+
if (contentPath) {
|
|
20
|
+
return path_1.default.join(contentPath, filePath);
|
|
21
|
+
}
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
exports.getDataFilePath = getDataFilePath;
|
|
25
|
+
/**
|
|
26
|
+
* Looks up for a data file in the content paths, returns the normalized object.
|
|
27
|
+
* Throws when validation fails; returns undefined when file not found
|
|
28
|
+
*/
|
|
29
|
+
async function getDataFileData(params, validate) {
|
|
30
|
+
const filePath = await getDataFilePath(params);
|
|
31
|
+
if (!filePath) {
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
if (await fs_extra_1.default.pathExists(filePath)) {
|
|
35
|
+
try {
|
|
36
|
+
const contentString = await fs_extra_1.default.readFile(filePath, { encoding: 'utf8' });
|
|
37
|
+
const unsafeContent = js_yaml_1.default.load(contentString);
|
|
38
|
+
return validate(unsafeContent);
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
// TODO replace later by error cause, see https://v8.dev/features/error-cause
|
|
42
|
+
logger_1.default.error `The ${params.fileType} file at path=${filePath} looks invalid.`;
|
|
43
|
+
throw e;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
exports.getDataFileData = getDataFileData;
|
|
49
|
+
// Order matters: we look in priority in localized folder
|
|
50
|
+
function getContentPathList(contentPaths) {
|
|
51
|
+
return [contentPaths.contentPathLocalized, contentPaths.contentPath];
|
|
52
|
+
}
|
|
53
|
+
exports.getContentPathList = getContentPathList;
|
|
54
|
+
// return the first folder path in which the file exists in
|
|
55
|
+
async function findFolderContainingFile(folderPaths, relativeFilePath) {
|
|
56
|
+
return (0, index_1.findAsyncSequential)(folderPaths, (folderPath) => fs_extra_1.default.pathExists(path_1.default.join(folderPath, relativeFilePath)));
|
|
57
|
+
}
|
|
58
|
+
exports.findFolderContainingFile = findFolderContainingFile;
|
|
59
|
+
async function getFolderContainingFile(folderPaths, relativeFilePath) {
|
|
60
|
+
const maybeFolderPath = await findFolderContainingFile(folderPaths, relativeFilePath);
|
|
61
|
+
// should never happen, as the source was read from the FS anyway...
|
|
62
|
+
if (!maybeFolderPath) {
|
|
63
|
+
throw new Error(`File "${relativeFilePath}" does not exist in any of these folders:\n- ${folderPaths.join('\n- ')}]`);
|
|
64
|
+
}
|
|
65
|
+
return maybeFolderPath;
|
|
66
|
+
}
|
|
67
|
+
exports.getFolderContainingFile = getFolderContainingFile;
|
|
68
|
+
//# sourceMappingURL=dataFileUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataFileUtils.js","sourceRoot":"","sources":["../src/dataFileUtils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,qEAA0B;AAC1B,mEAA2B;AAC3B,6DAAwB;AACxB,mCAA4C;AAE5C,6EAAwC;AAOjC,KAAK,UAAU,eAAe,CAAC,EACpC,QAAQ,EACR,YAAY,GACG;IACf,0CAA0C;IAC1C,MAAM,WAAW,GAAG,MAAM,wBAAwB,CAChD,kBAAkB,CAAC,YAAY,CAAC,EAChC,QAAQ,CACT,CAAC;IACF,IAAI,WAAW,EAAE;QACf,OAAO,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;KACzC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAbD,0CAaC;AAED;;;GAGG;AACI,KAAK,UAAU,eAAe,CACnC,MAA2C,EAC3C,QAAiC;IAEjC,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IACD,IAAI,MAAM,kBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACjC,IAAI;YACF,MAAM,aAAa,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,iBAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,6EAA6E;YAC7E,gBAAM,CAAC,KAAK,CAAA,OAAO,MAAM,CAAC,QAAQ,iBAAiB,QAAQ,iBAAiB,CAAC;YAC7E,MAAM,CAAC,CAAC;SACT;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AApBD,0CAoBC;AAED,yDAAyD;AACzD,SAAgB,kBAAkB,CAAC,YAA0B;IAC3D,OAAO,CAAC,YAAY,CAAC,oBAAoB,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;AACvE,CAAC;AAFD,gDAEC;AAED,2DAA2D;AACpD,KAAK,UAAU,wBAAwB,CAC5C,WAAqB,EACrB,gBAAwB;IAExB,OAAO,IAAA,2BAAmB,EAAC,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE,CACrD,kBAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CACvD,CAAC;AACJ,CAAC;AAPD,4DAOC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,WAAqB,EACrB,gBAAwB;IAExB,MAAM,eAAe,GAAG,MAAM,wBAAwB,CACpD,WAAW,EACX,gBAAgB,CACjB,CAAC;IACF,oEAAoE;IACpE,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,KAAK,CACb,SAAS,gBAAgB,gDAAgD,WAAW,CAAC,IAAI,CACvF,MAAM,CACP,GAAG,CACL,CAAC;KACH;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAjBD,0DAiBC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -4,55 +4,30 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import { ReportingSeverity, TranslationFileContent, TranslationFile } from '@docusaurus/types';
|
|
8
|
-
import { posixPath as posixPathImport } from './posixPath';
|
|
7
|
+
import type { ReportingSeverity, TranslationFileContent, TranslationFile } from '@docusaurus/types';
|
|
9
8
|
export * from './constants';
|
|
10
9
|
export * from './mdxUtils';
|
|
11
|
-
export * from './
|
|
10
|
+
export * from './urlUtils';
|
|
12
11
|
export * from './tags';
|
|
13
|
-
export declare const posixPath: typeof posixPathImport;
|
|
14
12
|
export * from './markdownParser';
|
|
15
13
|
export * from './markdownLinks';
|
|
16
|
-
export * from './escapePath';
|
|
17
14
|
export * from './slugger';
|
|
18
|
-
export
|
|
19
|
-
export
|
|
15
|
+
export * from './pathUtils';
|
|
16
|
+
export * from './hashUtils';
|
|
17
|
+
export * from './globUtils';
|
|
20
18
|
export * from './webpackUtils';
|
|
19
|
+
export * from './dataFileUtils';
|
|
21
20
|
export declare function generate(generatedFilesDir: string, file: string, content: string, skipCache?: boolean): Promise<void>;
|
|
22
|
-
export declare function objectWithKeySorted<T>(obj: Record<string, T>): Record<string, T>;
|
|
23
21
|
/**
|
|
24
22
|
* Convert filepath to url path.
|
|
25
23
|
* Example: 'index.md' -> '/', 'foo/bar.js' -> '/foo/bar',
|
|
26
24
|
*/
|
|
27
25
|
export declare function fileToPath(file: string): string;
|
|
28
26
|
export declare function encodePath(userpath: string): string;
|
|
29
|
-
/**
|
|
30
|
-
* Convert first string character to the upper case.
|
|
31
|
-
* E.g: docusaurus -> Docusaurus
|
|
32
|
-
*/
|
|
33
|
-
export declare function upperFirst(str: string): string;
|
|
34
|
-
/**
|
|
35
|
-
* Generate unique React Component Name.
|
|
36
|
-
* E.g: /foo-bar -> FooBar096
|
|
37
|
-
*/
|
|
38
|
-
export declare function genComponentName(pagePath: string): string;
|
|
39
|
-
export declare function toMessageRelativeFilePath(filePath: string): string;
|
|
40
27
|
/**
|
|
41
28
|
* Generate unique chunk name given a module path.
|
|
42
29
|
*/
|
|
43
30
|
export declare function genChunkName(modulePath: string, prefix?: string, preferredName?: string, shortId?: boolean): string;
|
|
44
|
-
export declare function idx(target: any, keyPaths?: string | (string | number)[]): any;
|
|
45
|
-
/**
|
|
46
|
-
* Given a filepath and dirpath, get the first directory.
|
|
47
|
-
*/
|
|
48
|
-
export declare function getSubFolder(file: string, refDir: string): string | null;
|
|
49
|
-
/**
|
|
50
|
-
* Alias filepath relative to site directory, very useful so that we
|
|
51
|
-
* don't expose user's site structure.
|
|
52
|
-
* Example: some/path/to/website/docs/foo.md -> @site/docs/foo.md
|
|
53
|
-
*/
|
|
54
|
-
export declare function aliasedSitePath(filePath: string, siteDir: string): string;
|
|
55
|
-
export declare function getEditUrl(fileRelativePath: string, editUrl?: string): string | undefined;
|
|
56
31
|
export declare function isValidPathname(str: string): boolean;
|
|
57
32
|
export declare function resolvePathname(to: string, from?: string): string;
|
|
58
33
|
export declare function addLeadingSlash(str: string): string;
|
|
@@ -72,16 +47,10 @@ export declare function getPluginI18nPath({ siteDir, locale, pluginName, pluginI
|
|
|
72
47
|
pluginId?: string | undefined;
|
|
73
48
|
subPaths?: string[];
|
|
74
49
|
}): string;
|
|
75
|
-
export declare function
|
|
50
|
+
export declare function mapAsyncSequential<T, R>(array: T[], action: (t: T) => Promise<R>): Promise<R[]>;
|
|
76
51
|
export declare function findAsyncSequential<T>(array: T[], predicate: (t: T) => Promise<boolean>): Promise<T | undefined>;
|
|
77
|
-
export declare function findFolderContainingFile(folderPaths: string[], relativeFilePath: string): Promise<string | undefined>;
|
|
78
|
-
export declare function getFolderContainingFile(folderPaths: string[], relativeFilePath: string): Promise<string>;
|
|
79
52
|
export declare function reportMessage(message: string, reportingSeverity: ReportingSeverity): void;
|
|
80
53
|
export declare function mergeTranslations(contents: TranslationFileContent[]): TranslationFileContent;
|
|
81
54
|
export declare function getSwizzledComponent(componentPath: string): string | undefined;
|
|
82
55
|
export declare function updateTranslationFileMessages(translationFile: TranslationFile, updateMessage: (message: string) => string): TranslationFile;
|
|
83
|
-
export declare function parseMarkdownHeadingId(heading: string): {
|
|
84
|
-
text: string;
|
|
85
|
-
id?: string;
|
|
86
|
-
};
|
|
87
56
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
|
@@ -6,39 +6,29 @@
|
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.
|
|
9
|
+
exports.updateTranslationFileMessages = exports.getSwizzledComponent = exports.mergeTranslations = exports.reportMessage = exports.findAsyncSequential = exports.mapAsyncSequential = exports.getPluginI18nPath = exports.getElementsAround = exports.removePrefix = exports.removeSuffix = exports.removeTrailingSlash = exports.addTrailingSlash = exports.addTrailingPathSeparator = exports.addLeadingSlash = exports.resolvePathname = exports.isValidPathname = exports.genChunkName = exports.encodePath = exports.fileToPath = exports.generate = void 0;
|
|
10
10
|
const tslib_1 = require("tslib");
|
|
11
11
|
const logger_1 = (0, tslib_1.__importDefault)(require("@docusaurus/logger"));
|
|
12
12
|
const path_1 = (0, tslib_1.__importDefault)(require("path"));
|
|
13
13
|
const crypto_1 = require("crypto");
|
|
14
14
|
const lodash_1 = require("lodash");
|
|
15
|
-
const escape_string_regexp_1 = (0, tslib_1.__importDefault)(require("escape-string-regexp"));
|
|
16
15
|
const fs_extra_1 = (0, tslib_1.__importDefault)(require("fs-extra"));
|
|
17
16
|
const url_1 = require("url");
|
|
18
17
|
const resolve_pathname_1 = (0, tslib_1.__importDefault)(require("resolve-pathname"));
|
|
19
|
-
const posixPath_1 = require("./posixPath");
|
|
20
18
|
const hashUtils_1 = require("./hashUtils");
|
|
21
|
-
const normalizeUrl_1 = require("./normalizeUrl");
|
|
22
19
|
const constants_1 = require("./constants");
|
|
23
20
|
(0, tslib_1.__exportStar)(require("./constants"), exports);
|
|
24
21
|
(0, tslib_1.__exportStar)(require("./mdxUtils"), exports);
|
|
25
|
-
(0, tslib_1.__exportStar)(require("./
|
|
22
|
+
(0, tslib_1.__exportStar)(require("./urlUtils"), exports);
|
|
26
23
|
(0, tslib_1.__exportStar)(require("./tags"), exports);
|
|
27
|
-
exports.posixPath = posixPath_1.posixPath;
|
|
28
24
|
(0, tslib_1.__exportStar)(require("./markdownParser"), exports);
|
|
29
25
|
(0, tslib_1.__exportStar)(require("./markdownLinks"), exports);
|
|
30
|
-
(0, tslib_1.__exportStar)(require("./escapePath"), exports);
|
|
31
26
|
(0, tslib_1.__exportStar)(require("./slugger"), exports);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
Object.defineProperty(exports, "docuHash", { enumerable: true, get: function () { return hashUtils_2.docuHash; } });
|
|
36
|
-
var globUtils_1 = require("./globUtils");
|
|
37
|
-
Object.defineProperty(exports, "Globby", { enumerable: true, get: function () { return globUtils_1.Globby; } });
|
|
38
|
-
Object.defineProperty(exports, "GlobExcludeDefault", { enumerable: true, get: function () { return globUtils_1.GlobExcludeDefault; } });
|
|
39
|
-
Object.defineProperty(exports, "createMatcher", { enumerable: true, get: function () { return globUtils_1.createMatcher; } });
|
|
40
|
-
Object.defineProperty(exports, "createAbsoluteFilePathMatcher", { enumerable: true, get: function () { return globUtils_1.createAbsoluteFilePathMatcher; } });
|
|
27
|
+
(0, tslib_1.__exportStar)(require("./pathUtils"), exports);
|
|
28
|
+
(0, tslib_1.__exportStar)(require("./hashUtils"), exports);
|
|
29
|
+
(0, tslib_1.__exportStar)(require("./globUtils"), exports);
|
|
41
30
|
(0, tslib_1.__exportStar)(require("./webpackUtils"), exports);
|
|
31
|
+
(0, tslib_1.__exportStar)(require("./dataFileUtils"), exports);
|
|
42
32
|
const fileHash = new Map();
|
|
43
33
|
async function generate(generatedFilesDir, file, content, skipCache = process.env.NODE_ENV === 'production') {
|
|
44
34
|
const filepath = path_1.default.join(generatedFilesDir, file);
|
|
@@ -64,16 +54,6 @@ async function generate(generatedFilesDir, file, content, skipCache = process.en
|
|
|
64
54
|
}
|
|
65
55
|
}
|
|
66
56
|
exports.generate = generate;
|
|
67
|
-
function objectWithKeySorted(obj) {
|
|
68
|
-
// https://github.com/lodash/lodash/issues/1459#issuecomment-460941233
|
|
69
|
-
return Object.keys(obj)
|
|
70
|
-
.sort()
|
|
71
|
-
.reduce((acc, key) => {
|
|
72
|
-
acc[key] = obj[key];
|
|
73
|
-
return acc;
|
|
74
|
-
}, {});
|
|
75
|
-
}
|
|
76
|
-
exports.objectWithKeySorted = objectWithKeySorted;
|
|
77
57
|
const indexRE = /(^|.*\/)index\.(md|mdx|js|jsx|ts|tsx)$/i;
|
|
78
58
|
const extRE = /\.(md|mdx|js|jsx|ts|tsx)$/;
|
|
79
59
|
/**
|
|
@@ -94,37 +74,6 @@ function encodePath(userpath) {
|
|
|
94
74
|
.join('/');
|
|
95
75
|
}
|
|
96
76
|
exports.encodePath = encodePath;
|
|
97
|
-
/**
|
|
98
|
-
* Convert first string character to the upper case.
|
|
99
|
-
* E.g: docusaurus -> Docusaurus
|
|
100
|
-
*/
|
|
101
|
-
function upperFirst(str) {
|
|
102
|
-
return str ? str.charAt(0).toUpperCase() + str.slice(1) : '';
|
|
103
|
-
}
|
|
104
|
-
exports.upperFirst = upperFirst;
|
|
105
|
-
/**
|
|
106
|
-
* Generate unique React Component Name.
|
|
107
|
-
* E.g: /foo-bar -> FooBar096
|
|
108
|
-
*/
|
|
109
|
-
function genComponentName(pagePath) {
|
|
110
|
-
if (pagePath === '/') {
|
|
111
|
-
return 'index';
|
|
112
|
-
}
|
|
113
|
-
const pageHash = (0, hashUtils_1.docuHash)(pagePath);
|
|
114
|
-
return upperFirst((0, lodash_1.camelCase)(pageHash));
|
|
115
|
-
}
|
|
116
|
-
exports.genComponentName = genComponentName;
|
|
117
|
-
// When you want to display a path in a message/warning/error,
|
|
118
|
-
// it's more convenient to:
|
|
119
|
-
// - make it relative to cwd()
|
|
120
|
-
// - convert to posix (ie not using windows \ path separator)
|
|
121
|
-
// This way, Jest tests can run more reliably on any computer/CI
|
|
122
|
-
// on both Unix/Windows
|
|
123
|
-
// For Windows users this is not perfect (as they see / instead of \) but it's probably good enough
|
|
124
|
-
function toMessageRelativeFilePath(filePath) {
|
|
125
|
-
return (0, exports.posixPath)(path_1.default.relative(process.cwd(), filePath));
|
|
126
|
-
}
|
|
127
|
-
exports.toMessageRelativeFilePath = toMessageRelativeFilePath;
|
|
128
77
|
const chunkNameCache = new Map();
|
|
129
78
|
/**
|
|
130
79
|
* Generate unique chunk name given a module path.
|
|
@@ -149,45 +98,6 @@ function genChunkName(modulePath, prefix, preferredName, shortId = process.env.N
|
|
|
149
98
|
return chunkName;
|
|
150
99
|
}
|
|
151
100
|
exports.genChunkName = genChunkName;
|
|
152
|
-
// Too dynamic
|
|
153
|
-
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/no-explicit-any
|
|
154
|
-
function idx(target, keyPaths) {
|
|
155
|
-
return (target &&
|
|
156
|
-
keyPaths &&
|
|
157
|
-
(Array.isArray(keyPaths)
|
|
158
|
-
? keyPaths.reduce((obj, key) => obj && obj[key], target)
|
|
159
|
-
: target[keyPaths]));
|
|
160
|
-
}
|
|
161
|
-
exports.idx = idx;
|
|
162
|
-
/**
|
|
163
|
-
* Given a filepath and dirpath, get the first directory.
|
|
164
|
-
*/
|
|
165
|
-
function getSubFolder(file, refDir) {
|
|
166
|
-
const separator = (0, escape_string_regexp_1.default)(path_1.default.sep);
|
|
167
|
-
const baseDir = (0, escape_string_regexp_1.default)(path_1.default.basename(refDir));
|
|
168
|
-
const regexSubFolder = new RegExp(`${baseDir}${separator}(.*?)${separator}.*`);
|
|
169
|
-
const match = regexSubFolder.exec(file);
|
|
170
|
-
return match && match[1];
|
|
171
|
-
}
|
|
172
|
-
exports.getSubFolder = getSubFolder;
|
|
173
|
-
/**
|
|
174
|
-
* Alias filepath relative to site directory, very useful so that we
|
|
175
|
-
* don't expose user's site structure.
|
|
176
|
-
* Example: some/path/to/website/docs/foo.md -> @site/docs/foo.md
|
|
177
|
-
*/
|
|
178
|
-
function aliasedSitePath(filePath, siteDir) {
|
|
179
|
-
const relativePath = (0, exports.posixPath)(path_1.default.relative(siteDir, filePath));
|
|
180
|
-
// Cannot use path.join() as it resolves '../' and removes
|
|
181
|
-
// the '@site'. Let webpack loader resolve it.
|
|
182
|
-
return `@site/${relativePath}`;
|
|
183
|
-
}
|
|
184
|
-
exports.aliasedSitePath = aliasedSitePath;
|
|
185
|
-
function getEditUrl(fileRelativePath, editUrl) {
|
|
186
|
-
return editUrl
|
|
187
|
-
? (0, normalizeUrl_1.normalizeUrl)([editUrl, (0, exports.posixPath)(fileRelativePath)])
|
|
188
|
-
: undefined;
|
|
189
|
-
}
|
|
190
|
-
exports.getEditUrl = getEditUrl;
|
|
191
101
|
function isValidPathname(str) {
|
|
192
102
|
if (!str.startsWith('/')) {
|
|
193
103
|
return false;
|
|
@@ -255,7 +165,7 @@ function getPluginI18nPath({ siteDir, locale, pluginName, pluginId = constants_1
|
|
|
255
165
|
`${pluginName}${pluginId === constants_1.DEFAULT_PLUGIN_ID ? '' : `-${pluginId}`}`, ...subPaths);
|
|
256
166
|
}
|
|
257
167
|
exports.getPluginI18nPath = getPluginI18nPath;
|
|
258
|
-
async function
|
|
168
|
+
async function mapAsyncSequential(array, action) {
|
|
259
169
|
const results = [];
|
|
260
170
|
// eslint-disable-next-line no-restricted-syntax
|
|
261
171
|
for (const t of array) {
|
|
@@ -264,7 +174,7 @@ async function mapAsyncSequencial(array, action) {
|
|
|
264
174
|
}
|
|
265
175
|
return results;
|
|
266
176
|
}
|
|
267
|
-
exports.
|
|
177
|
+
exports.mapAsyncSequential = mapAsyncSequential;
|
|
268
178
|
async function findAsyncSequential(array, predicate) {
|
|
269
179
|
// eslint-disable-next-line no-restricted-syntax
|
|
270
180
|
for (const t of array) {
|
|
@@ -275,20 +185,6 @@ async function findAsyncSequential(array, predicate) {
|
|
|
275
185
|
return undefined;
|
|
276
186
|
}
|
|
277
187
|
exports.findAsyncSequential = findAsyncSequential;
|
|
278
|
-
// return the first folder path in which the file exists in
|
|
279
|
-
async function findFolderContainingFile(folderPaths, relativeFilePath) {
|
|
280
|
-
return findAsyncSequential(folderPaths, (folderPath) => fs_extra_1.default.pathExists(path_1.default.join(folderPath, relativeFilePath)));
|
|
281
|
-
}
|
|
282
|
-
exports.findFolderContainingFile = findFolderContainingFile;
|
|
283
|
-
async function getFolderContainingFile(folderPaths, relativeFilePath) {
|
|
284
|
-
const maybeFolderPath = await findFolderContainingFile(folderPaths, relativeFilePath);
|
|
285
|
-
// should never happen, as the source was read from the FS anyway...
|
|
286
|
-
if (!maybeFolderPath) {
|
|
287
|
-
throw new Error(`File "${relativeFilePath}" does not exist in any of these folders:\n- ${folderPaths.join('\n- ')}]`);
|
|
288
|
-
}
|
|
289
|
-
return maybeFolderPath;
|
|
290
|
-
}
|
|
291
|
-
exports.getFolderContainingFile = getFolderContainingFile;
|
|
292
188
|
function reportMessage(message, reportingSeverity) {
|
|
293
189
|
switch (reportingSeverity) {
|
|
294
190
|
case 'ignore':
|
|
@@ -332,20 +228,4 @@ function updateTranslationFileMessages(translationFile, updateMessage) {
|
|
|
332
228
|
};
|
|
333
229
|
}
|
|
334
230
|
exports.updateTranslationFileMessages = updateTranslationFileMessages;
|
|
335
|
-
// Input: ## Some heading {#some-heading}
|
|
336
|
-
// Output: {text: "## Some heading", id: "some-heading"}
|
|
337
|
-
function parseMarkdownHeadingId(heading) {
|
|
338
|
-
const customHeadingIdRegex = /^(.*?)\s*\{#([\w-]+)\}$/;
|
|
339
|
-
const matches = customHeadingIdRegex.exec(heading);
|
|
340
|
-
if (matches) {
|
|
341
|
-
return {
|
|
342
|
-
text: matches[1],
|
|
343
|
-
id: matches[2],
|
|
344
|
-
};
|
|
345
|
-
}
|
|
346
|
-
else {
|
|
347
|
-
return { text: heading, id: undefined };
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
exports.parseMarkdownHeadingId = parseMarkdownHeadingId;
|
|
351
231
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,6EAAwC;AACxC,6DAAwB;AACxB,mCAAkC;AAClC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,6EAAwC;AACxC,6DAAwB;AACxB,mCAAkC;AAClC,mCAAiC;AACjC,qEAA0B;AAC1B,6BAAwB;AAOxB,qFAAqD;AAErD,2CAAiD;AACjD,2CAA8C;AAE9C,2DAA4B;AAC5B,0DAA2B;AAC3B,0DAA2B;AAC3B,sDAAuB;AACvB,gEAAiC;AACjC,+DAAgC;AAChC,yDAA0B;AAC1B,2DAA4B;AAC5B,2DAA4B;AAC5B,2DAA4B;AAC5B,8DAA+B;AAC/B,+DAAgC;AAEhC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;AACpB,KAAK,UAAU,QAAQ,CAC5B,iBAAyB,EACzB,IAAY,EACZ,OAAe,EACf,YAAqB,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;IAE1D,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IAEpD,IAAI,SAAS,EAAE;QACb,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3C,MAAM,kBAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO;KACR;IAED,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEtC,2DAA2D;IAC3D,wDAAwD;IACxD,sEAAsE;IACtE,IAAI,CAAC,QAAQ,IAAI,kBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACxC,MAAM,WAAW,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxD,QAAQ,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;KAClC;IAED,MAAM,WAAW,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpE,IAAI,QAAQ,KAAK,WAAW,EAAE;QAC5B,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3C,MAAM,kBAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;KACrC;AACH,CAAC;AAhCD,4BAgCC;AAED,MAAM,OAAO,GAAG,yCAAyC,CAAC;AAC1D,MAAM,KAAK,GAAG,2BAA2B,CAAC;AAE1C;;;GAGG;AACH,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;KACrC;IACD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;AAC3D,CAAC;AALD,gCAKC;AAED,SAAgB,UAAU,CAAC,QAAgB;IACzC,OAAO,QAAQ;SACZ,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;SACvC,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AALD,gCAKC;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;AACjC;;GAEG;AACH,SAAgB,YAAY,CAC1B,UAAkB,EAClB,MAAe,EACf,aAAsB,EACtB,UAAmB,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;IAExD,IAAI,SAAS,GAAuB,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnE,IAAI,CAAC,SAAS,EAAE;QACd,IAAI,OAAO,EAAE;YACX,SAAS,GAAG,IAAA,sBAAU,EAAC,UAAU,EAAE,CAAC,CAAC,CAAC;SACvC;aAAM;YACL,IAAI,GAAG,GAAG,UAAU,CAAC;YACrB,IAAI,aAAa,EAAE;gBACjB,MAAM,SAAS,GAAG,IAAA,sBAAU,EAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAC5C,GAAG,GAAG,GAAG,aAAa,GAAG,SAAS,EAAE,CAAC;aACtC;YACD,MAAM,IAAI,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,oBAAQ,EAAC,GAAG,CAAC,CAAC;YACnD,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACnD;QACD,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;KAC3C;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAtBD,oCAsBC;AAED,SAAgB,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACxB,OAAO,KAAK,CAAC;KACd;IACD,IAAI;QACF,oCAAoC;QACpC,MAAM,cAAc,GAAG,IAAI,SAAG,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC;QACnE,OAAO,cAAc,KAAK,GAAG,IAAI,cAAc,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC;KACpE;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAXD,0CAWC;AAED,qDAAqD;AACrD,SAAgB,eAAe,CAAC,EAAU,EAAE,IAAa;IACvD,OAAO,IAAA,0BAAqB,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAFD,0CAEC;AACD,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;AAC/C,CAAC;AAFD,0CAEC;AAED,SAAgB,wBAAwB,CAAC,GAAW;IAClD,OAAO,GAAG,CAAC,QAAQ,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,cAAI,CAAC,GAAG,EAAE,CAAC;AAC5D,CAAC;AAFD,4DAEC;AAED,6DAA6D;AAC7D,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;AAC7C,CAAC;AAFD,4CAEC;AACD,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,OAAO,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC;AAFD,kDAEC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,IAAI,MAAM,KAAK,EAAE,EAAE;QACjB,OAAO,GAAG,CAAC,CAAC,+BAA+B;KAC5C;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACnE,CAAC;AALD,oCAKC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,OAAO,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACjE,CAAC;AAFD,oCAEC;AAED,SAAgB,iBAAiB,CAC/B,KAAU,EACV,WAAmB;IAKnB,MAAM,GAAG,GAAG,CAAC,CAAC;IACd,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,IAAI,WAAW,GAAG,GAAG,IAAI,WAAW,GAAG,GAAG,EAAE;QAC1C,MAAM,IAAI,KAAK,CACb,0CAA0C,KAAK,CAAC,MAAM,iBAAiB,GAAG,QAAQ,GAAG,sBAAsB,WAAW,GAAG,CAC1H,CAAC;KACH;IACD,MAAM,QAAQ,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC1E,MAAM,IAAI,GAAG,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IACtE,OAAO,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAC1B,CAAC;AAjBD,8CAiBC;AAED,SAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,MAAM,EACN,UAAU,EACV,QAAQ,GAAG,6BAAiB,EAC5B,QAAQ,GAAG,EAAE,GAOd;IACC,OAAO,cAAI,CAAC,IAAI,CACd,OAAO,EACP,MAAM;IACN,oFAAoF;IACpF,MAAM;IACN,gDAAgD;IAChD,2DAA2D;IAC3D,GAAG,UAAU,GAAG,QAAQ,KAAK,6BAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,EACtE,GAAG,QAAQ,CACZ,CAAC;AACJ,CAAC;AAvBD,8CAuBC;AAEM,KAAK,UAAU,kBAAkB,CACtC,KAAU,EACV,MAA4B;IAE5B,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,gDAAgD;IAChD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACtB;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAXD,gDAWC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAU,EACV,SAAqC;IAErC,gDAAgD;IAChD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;QACrB,IAAI,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE;YACtB,OAAO,CAAC,CAAC;SACV;KACF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAXD,kDAWC;AAED,SAAgB,aAAa,CAC3B,OAAe,EACf,iBAAoC;IAEpC,QAAQ,iBAAiB,EAAE;QACzB,KAAK,QAAQ;YACX,MAAM;QACR,KAAK,KAAK;YACR,gBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,MAAM;QACR,KAAK,MAAM;YACT,gBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,MAAM;QACR,KAAK,OAAO;YACV,gBAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM;QACR,KAAK,OAAO;YACV,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B;YACE,MAAM,IAAI,KAAK,CACb,yCAAyC,iBAAiB,GAAG,CAC9D,CAAC;KACL;AACH,CAAC;AAvBD,sCAuBC;AAED,SAAgB,iBAAiB,CAC/B,QAAkC;IAElC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,GAAG,EAAE,GAAG,OAAO,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACvE,CAAC;AAJD,8CAIC;AAED,SAAgB,oBAAoB,CAClC,aAAqB;IAErB,MAAM,qBAAqB,GAAG,cAAI,CAAC,OAAO,CACxC,OAAO,CAAC,GAAG,EAAE,EACb,KAAK,EACL,aAAa,CACd,CAAC;IAEF,OAAO,kBAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC;QACzC,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAZD,oDAYC;AAED,0DAA0D;AAC1D,yCAAyC;AACzC,SAAgB,6BAA6B,CAC3C,eAAgC,EAChC,aAA0C;IAE1C,OAAO;QACL,GAAG,eAAe;QAClB,OAAO,EAAE,IAAA,kBAAS,EAAC,eAAe,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC5D,GAAG,WAAW;YACd,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC;SAC5C,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAXD,sEAWC"}
|
package/lib/markdownLinks.js
CHANGED
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.replaceMarkdownLinks = void 0;
|
|
10
10
|
const tslib_1 = require("tslib");
|
|
11
11
|
const path_1 = (0, tslib_1.__importDefault)(require("path"));
|
|
12
|
-
const
|
|
12
|
+
const pathUtils_1 = require("./pathUtils");
|
|
13
13
|
function replaceMarkdownLinks({ siteDir, fileString, filePath, contentPaths, sourceToPermalink, }) {
|
|
14
14
|
const { contentPath, contentPathLocalized } = contentPaths;
|
|
15
15
|
const brokenMarkdownLinks = [];
|
|
@@ -45,7 +45,7 @@ function replaceMarkdownLinks({ siteDir, fileString, filePath, contentPaths, sou
|
|
|
45
45
|
`${contentPath}/${decodeURIComponent(mdLink)}`,
|
|
46
46
|
];
|
|
47
47
|
const aliasedSourceMatch = sourcesToTry
|
|
48
|
-
.map((source) => (0,
|
|
48
|
+
.map((source) => (0, pathUtils_1.aliasedSitePath)(source, siteDir))
|
|
49
49
|
.find((source) => sourceToPermalink[source]);
|
|
50
50
|
const permalink = aliasedSourceMatch
|
|
51
51
|
? sourceToPermalink[aliasedSourceMatch]
|
package/lib/markdownLinks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownLinks.js","sourceRoot":"","sources":["../src/markdownLinks.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,6DAAwB;AACxB,
|
|
1
|
+
{"version":3,"file":"markdownLinks.js","sourceRoot":"","sources":["../src/markdownLinks.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,6DAAwB;AACxB,2CAA4C;AA0B5C,SAAgB,oBAAoB,CAAyB,EAC3D,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,GACa;IAC9B,MAAM,EAAC,WAAW,EAAE,oBAAoB,EAAC,GAAG,YAAY,CAAC;IAEzD,MAAM,mBAAmB,GAA4B,EAAE,CAAC;IAExD,+DAA+D;IAC/D,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAChD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACjC,IAAI,CAAC,WAAW,EAAE;gBAChB,WAAW,GAAG,IAAI,CAAC;gBACnB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;gBAC5C,kFAAkF;aACnF;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE;gBACtE,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QACD,IAAI,WAAW,EAAE;YACf,OAAO,IAAI,CAAC;SACb;QAED,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,2DAA2D;QAC3D,6EAA6E;QAC7E,+DAA+D;QAC/D,MAAM,OAAO,GAAG,uDAAuD,CAAC;QACxE,IAAI,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,OAAO,OAAO,KAAK,IAAI,EAAE;YACvB,mCAAmC;YACnC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAE1B,MAAM,YAAY,GAAG;gBACnB,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBAChE,GAAG,oBAAoB,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE;gBACvD,GAAG,WAAW,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE;aAC/C,CAAC;YAEF,MAAM,kBAAkB,GAAG,YAAY;iBACpC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,2BAAe,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;iBACjD,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;YAE/C,MAAM,SAAS,GAAuB,kBAAkB;gBACtD,CAAC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;gBACvC,CAAC,CAAC,SAAS,CAAC;YAEd,IAAI,SAAS,EAAE;gBACb,qFAAqF;gBACrF,MAAM,gBAAgB,GAAG,SAAS;qBAC/B,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;qBACzC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACb,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;aAC/D;iBAAM;gBACL,MAAM,kBAAkB,GAA0B;oBAChD,YAAY;oBACZ,QAAQ;oBACR,IAAI,EAAE,MAAM;iBACb,CAAC;gBAEF,mBAAmB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;aAC9C;YACD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACtC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpC,OAAO,EAAC,UAAU,EAAE,mBAAmB,EAAC,CAAC;AAC3C,CAAC;AA5ED,oDA4EC"}
|
package/lib/markdownParser.d.ts
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
+
export declare function parseMarkdownHeadingId(heading: string): {
|
|
8
|
+
text: string;
|
|
9
|
+
id?: string;
|
|
10
|
+
};
|
|
7
11
|
export declare function createExcerpt(fileString: string): string | undefined;
|
|
8
12
|
export declare function parseFrontMatter(markdownFileContent: string): {
|
|
9
13
|
frontMatter: Record<string, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownParser.d.ts","sourceRoot":"","sources":["../src/markdownParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"markdownParser.d.ts","sourceRoot":"","sources":["../src/markdownParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,CAWA;AAKD,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA8DpE;AAED,wBAAgB,gBAAgB,CAAC,mBAAmB,EAAE,MAAM,GAAG;IAC7D,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;CACjB,CAMA;AAYD,wBAAgB,yBAAyB,CACvC,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAC,GACvC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CAAC,CAmCrD;AAED,aAAK,cAAc,GAAG;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,mBAAmB,EAAE,MAAM,EAC3B,OAAO,CAAC,EAAE;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAC,GACvC,cAAc,CAuBhB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAC,GACvC,OAAO,CAAC,cAAc,CAAC,CASzB"}
|
package/lib/markdownParser.js
CHANGED
|
@@ -6,11 +6,27 @@
|
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.parseMarkdownFile = exports.parseMarkdownString = exports.parseMarkdownContentTitle = exports.parseFrontMatter = exports.createExcerpt = void 0;
|
|
9
|
+
exports.parseMarkdownFile = exports.parseMarkdownString = exports.parseMarkdownContentTitle = exports.parseFrontMatter = exports.createExcerpt = exports.parseMarkdownHeadingId = void 0;
|
|
10
10
|
const tslib_1 = require("tslib");
|
|
11
11
|
const logger_1 = (0, tslib_1.__importDefault)(require("@docusaurus/logger"));
|
|
12
12
|
const fs_extra_1 = (0, tslib_1.__importDefault)(require("fs-extra"));
|
|
13
13
|
const gray_matter_1 = (0, tslib_1.__importDefault)(require("gray-matter"));
|
|
14
|
+
// Input: ## Some heading {#some-heading}
|
|
15
|
+
// Output: {text: "## Some heading", id: "some-heading"}
|
|
16
|
+
function parseMarkdownHeadingId(heading) {
|
|
17
|
+
const customHeadingIdRegex = /^(.*?)\s*\{#([\w-]+)\}$/;
|
|
18
|
+
const matches = customHeadingIdRegex.exec(heading);
|
|
19
|
+
if (matches) {
|
|
20
|
+
return {
|
|
21
|
+
text: matches[1],
|
|
22
|
+
id: matches[2],
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
return { text: heading, id: undefined };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.parseMarkdownHeadingId = parseMarkdownHeadingId;
|
|
14
30
|
// Hacky way of stripping out import statements from the excerpt
|
|
15
31
|
// TODO: Find a better way to do so, possibly by compiling the Markdown content,
|
|
16
32
|
// stripping out HTML tags and obtaining the first line.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownParser.js","sourceRoot":"","sources":["../src/markdownParser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"markdownParser.js","sourceRoot":"","sources":["../src/markdownParser.ts"],"names":[],"mappings":"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"}
|
package/lib/pathUtils.d.ts
CHANGED
|
@@ -6,4 +6,33 @@
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const isNameTooLong: (str: string) => boolean;
|
|
8
8
|
export declare const shortName: (str: string) => string;
|
|
9
|
+
/**
|
|
10
|
+
* Convert Windows backslash paths to posix style paths.
|
|
11
|
+
* E.g: endi\lie -> endi/lie
|
|
12
|
+
*
|
|
13
|
+
* Returns original path if the posix counterpart is not valid Windows path.
|
|
14
|
+
* This makes the legacy code that uses posixPath safe; but also makes it less
|
|
15
|
+
* useful when you actually want a path with forward slashes (e.g. for URL)
|
|
16
|
+
*
|
|
17
|
+
* Adopted from https://github.com/sindresorhus/slash/blob/main/index.js
|
|
18
|
+
*/
|
|
19
|
+
export declare function posixPath(str: string): string;
|
|
20
|
+
export declare function toMessageRelativeFilePath(filePath: string): string;
|
|
21
|
+
/**
|
|
22
|
+
* Alias filepath relative to site directory, very useful so that we
|
|
23
|
+
* don't expose user's site structure.
|
|
24
|
+
* Example: some/path/to/website/docs/foo.md -> @site/docs/foo.md
|
|
25
|
+
*/
|
|
26
|
+
export declare function aliasedSitePath(filePath: string, siteDir: string): string;
|
|
27
|
+
/**
|
|
28
|
+
* When you have a path like C:\X\Y
|
|
29
|
+
* It is not safe to use directly when generating code
|
|
30
|
+
* For example, this would fail due to unescaped \: `<img src={require('${filePath}')} />`
|
|
31
|
+
* But this would work: `<img src={require('${escapePath(filePath)}')} />`
|
|
32
|
+
*
|
|
33
|
+
* posixPath can't be used in all cases, because forward slashes are only valid
|
|
34
|
+
* Windows paths when they don't contain non-ascii characters, and posixPath
|
|
35
|
+
* doesn't escape those that fail to be converted.
|
|
36
|
+
*/
|
|
37
|
+
export declare function escapePath(str: string): string;
|
|
9
38
|
//# sourceMappingURL=pathUtils.d.ts.map
|
package/lib/pathUtils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathUtils.d.ts","sourceRoot":"","sources":["../src/pathUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"pathUtils.d.ts","sourceRoot":"","sources":["../src/pathUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,eAAO,MAAM,aAAa,QAAS,MAAM,KAAG,OAGgC,CAAC;AAE7E,eAAO,MAAM,SAAS,QAAS,MAAM,KAAG,MAiBvC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW7C;AASD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKzE;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAK9C"}
|