@docusaurus/utils 3.10.1-canary-6655 → 3.10.1-canary-6800
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/contentVisibilityUtils.js +1 -1
- package/lib/globUtils.d.ts +5 -3
- package/lib/globUtils.d.ts.map +1 -1
- package/lib/globUtils.js +9 -4
- package/lib/globUtils.js.map +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -3
- package/lib/index.js.map +1 -1
- package/lib/markdownUtils.d.ts.map +1 -1
- package/lib/markdownUtils.js +58 -13
- package/lib/markdownUtils.js.map +1 -1
- package/lib/urlUtils.d.ts +1 -1
- package/lib/urlUtils.d.ts.map +1 -1
- package/lib/urlUtils.js +18 -19
- package/lib/urlUtils.js.map +1 -1
- package/lib/vcs/gitUtils.d.ts.map +1 -1
- package/lib/vcs/gitUtils.js +18 -47
- package/lib/vcs/gitUtils.js.map +1 -1
- package/lib/vcs/vcsGitEager.d.ts.map +1 -1
- package/lib/vcs/vcsGitEager.js +3 -2
- package/lib/vcs/vcsGitEager.js.map +1 -1
- package/package.json +11 -11
- package/src/contentVisibilityUtils.ts +1 -1
- package/src/globUtils.ts +10 -4
- package/src/index.ts +0 -1
- package/src/markdownUtils.ts +83 -13
- package/src/urlUtils.ts +19 -19
- package/src/vcs/gitUtils.ts +21 -72
- package/src/vcs/vcsGitEager.ts +4 -2
- package/lib/regExpUtils.d.ts +0 -8
- package/lib/regExpUtils.d.ts.map +0 -1
- package/lib/regExpUtils.js +0 -15
- package/lib/regExpUtils.js.map +0 -1
- package/src/regExpUtils.ts +0 -12
|
@@ -10,7 +10,7 @@ exports.isDraft = isDraft;
|
|
|
10
10
|
exports.isUnlisted = isUnlisted;
|
|
11
11
|
/**
|
|
12
12
|
* To easily work on draft/unlisted in dev mode, use this env variable!
|
|
13
|
-
* SIMULATE_PRODUCTION_VISIBILITY=true
|
|
13
|
+
* SIMULATE_PRODUCTION_VISIBILITY=true pnpm start:website
|
|
14
14
|
*/
|
|
15
15
|
const simulateProductionVisibility = process.env.SIMULATE_PRODUCTION_VISIBILITY === 'true';
|
|
16
16
|
/**
|
package/lib/globUtils.d.ts
CHANGED
|
@@ -4,9 +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
|
-
import
|
|
7
|
+
import * as Tinyglobby from 'tinyglobby';
|
|
8
|
+
type GlobOptions = Tinyglobby.GlobOptions;
|
|
8
9
|
/** A re-export of the globby instance. */
|
|
9
|
-
export
|
|
10
|
+
export declare const Globby: typeof Tinyglobby.glob;
|
|
10
11
|
/**
|
|
11
12
|
* The default glob patterns we ignore when sourcing content.
|
|
12
13
|
* - Ignore files and folders starting with `_` recursively
|
|
@@ -38,7 +39,8 @@ export declare function createMatcher(patterns: string[]): Matcher;
|
|
|
38
39
|
* to any of the `rootFolders`.
|
|
39
40
|
*/
|
|
40
41
|
export declare function createAbsoluteFilePathMatcher(patterns: string[], rootFolders: string[]): Matcher;
|
|
41
|
-
export declare function safeGlobby(patterns: string[], options?:
|
|
42
|
+
export declare function safeGlobby(patterns: string[], options?: GlobOptions): Promise<string[]>;
|
|
42
43
|
export declare const isTranslatableSourceFile: (filePath: string) => boolean;
|
|
43
44
|
export declare function globTranslatableSourceFiles(patterns: string[]): Promise<string[]>;
|
|
45
|
+
export {};
|
|
44
46
|
//# sourceMappingURL=globUtils.d.ts.map
|
package/lib/globUtils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globUtils.d.ts","sourceRoot":"","sources":["../src/globUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,
|
|
1
|
+
{"version":3,"file":"globUtils.d.ts","sourceRoot":"","sources":["../src/globUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAGzC,KAAK,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;AAI1C,0CAA0C;AAC1C,eAAO,MAAM,MAAM,wBAAkB,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,UAK9B,CAAC;AAEF,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;AAExC;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CASzD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAqBT;AAID,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAQnB;AAED,eAAO,MAAM,wBAAwB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAsBzD,CAAC;AAGL,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAKnB"}
|
package/lib/globUtils.js
CHANGED
|
@@ -16,9 +16,12 @@ const tslib_1 = require("tslib");
|
|
|
16
16
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
17
17
|
const micromatch_1 = tslib_1.__importDefault(require("micromatch")); // Note: Micromatch is used by Globby
|
|
18
18
|
const utils_common_1 = require("@docusaurus/utils-common");
|
|
19
|
-
const
|
|
20
|
-
exports.Globby = globby_1.default;
|
|
19
|
+
const Tinyglobby = tslib_1.__importStar(require("tinyglobby"));
|
|
21
20
|
const pathUtils_1 = require("./pathUtils");
|
|
21
|
+
// TODO Docusaurus v4 refactor, hide lib behind home-made abstraction
|
|
22
|
+
// See https://github.com/facebook/docusaurus/pull/11042
|
|
23
|
+
/** A re-export of the globby instance. */
|
|
24
|
+
exports.Globby = Tinyglobby.glob;
|
|
22
25
|
/**
|
|
23
26
|
* The default glob patterns we ignore when sourcing content.
|
|
24
27
|
* - Ignore files and folders starting with `_` recursively
|
|
@@ -77,7 +80,7 @@ async function safeGlobby(patterns, options) {
|
|
|
77
80
|
// Required for Windows support, as paths using \ should not be used by globby
|
|
78
81
|
// (also using the windows hard drive prefix like c: is not a good idea)
|
|
79
82
|
const globPaths = patterns.map((dirPath) => (0, pathUtils_1.posixPath)(path_1.default.relative(process.cwd(), dirPath)));
|
|
80
|
-
return (0,
|
|
83
|
+
return (0, exports.Globby)(globPaths, options);
|
|
81
84
|
}
|
|
82
85
|
exports.isTranslatableSourceFile = (() => {
|
|
83
86
|
// We only support extracting source code translations from these extensions
|
|
@@ -102,7 +105,9 @@ exports.isTranslatableSourceFile = (() => {
|
|
|
102
105
|
})();
|
|
103
106
|
// A bit weird to put this here, but it's used by core + theme-translations
|
|
104
107
|
async function globTranslatableSourceFiles(patterns) {
|
|
105
|
-
const filePaths = await safeGlobby(patterns
|
|
108
|
+
const filePaths = await safeGlobby(patterns, {
|
|
109
|
+
absolute: true,
|
|
110
|
+
});
|
|
106
111
|
return filePaths.filter(exports.isTranslatableSourceFile);
|
|
107
112
|
}
|
|
108
113
|
//# sourceMappingURL=globUtils.js.map
|
package/lib/globUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"globUtils.js","sourceRoot":"","sources":["../src/globUtils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"globUtils.js","sourceRoot":"","sources":["../src/globUtils.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -22,7 +22,6 @@ export { getFileLoaderUtils, getWebpackLoaderCompilerName, type WebpackCompilerN
|
|
|
22
22
|
export { loadFreshModule } from './moduleUtils';
|
|
23
23
|
export { getDataFilePath, readDataFile, getContentPathList, findFolderContainingFile, getFolderContainingFile, } from './dataFileUtils';
|
|
24
24
|
export { isDraft, isUnlisted } from './contentVisibilityUtils';
|
|
25
|
-
export { escapeRegexp } from './regExpUtils';
|
|
26
25
|
export { flattenRoutes } from './routeUtils';
|
|
27
26
|
export { readLastUpdateData, type LastUpdateData, type FrontMatterLastUpdate, } from './lastUpdateUtils';
|
|
28
27
|
export { VcsPresetNames, getVcsPreset, TEST_VCS } from './vcs/vcs';
|
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;AAEH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,EACZ,uBAAuB,EACvB,6BAA6B,EAC7B,UAAU,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,YAAY,EACZ,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,QAAQ,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAC;AACzD,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EACjB,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,kBAAkB,EAAE,mBAAmB,EAAC,MAAM,WAAW,CAAC;AAClE,OAAO,EACL,YAAY,EACZ,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,YAAY,EAAC,OAAO,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EACL,KAAK,GAAG,EACR,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,aAAa,EAAC,MAAM,WAAW,CAAC;AAC3E,OAAO,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,yBAAyB,EACzB,eAAe,EACf,6BAA6B,EAC7B,UAAU,EACV,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,UAAU,EACV,2BAA2B,EAC3B,aAAa,EACb,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,KAAK,mBAAmB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,OAAO,EAAE,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,YAAY,EACZ,uBAAuB,EACvB,6BAA6B,EAC7B,UAAU,EACV,qBAAqB,EACrB,2BAA2B,EAC3B,YAAY,EACZ,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,QAAQ,EAAE,kBAAkB,EAAC,MAAM,aAAa,CAAC;AACzD,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,iBAAiB,EACjB,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,kBAAkB,EAAE,mBAAmB,EAAC,MAAM,WAAW,CAAC;AAClE,OAAO,EACL,YAAY,EACZ,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,YAAY,EAAC,OAAO,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EACL,KAAK,GAAG,EACR,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,mBAAmB,EACnB,+BAA+B,EAC/B,aAAa,EACb,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,aAAa,EAAC,MAAM,WAAW,CAAC;AAC3E,OAAO,EACL,aAAa,EACb,SAAS,EACT,SAAS,EACT,yBAAyB,EACzB,eAAe,EACf,6BAA6B,EAC7B,UAAU,EACV,wBAAwB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,UAAU,EACV,2BAA2B,EAC3B,aAAa,EACb,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,KAAK,mBAAmB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,OAAO,EAAE,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAC,aAAa,EAAC,MAAM,cAAc,CAAC;AAE3C,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,qBAAqB,GAC3B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAC,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEjE,OAAO,EAAC,aAAa,EAAE,gBAAgB,EAAC,MAAM,QAAQ,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.resolveMarkdownLinkPathname = exports.writeMarkdownHeadingId = exports.escapeMarkdownHeadingIds = exports.parseMarkdownHeadingId = exports.parseMarkdownFile = exports.parseMarkdownContentTitle = exports.DEFAULT_PARSE_FRONT_MATTER = exports.createExcerpt = exports.admonitionTitleToDirectiveLabel = exports.unwrapMdxCodeBlocks = exports.getTagVisibility = exports.groupTaggedItems = exports.buildSshUrl = exports.buildHttpsUrl = exports.hasSSHProtocol = exports.serializeURLPath = exports.toURLPath = exports.parseURLOrPath = exports.parseLocalURLPath = exports.parseURLPath = exports.resolvePathname = exports.isValidPathname = exports.encodePath = exports.fileToPath = exports.getEditUrl = exports.normalizeUrl = exports.findAsyncSequential = exports.mapAsyncSequential = exports.getLocaleConfig = exports.getPluginI18nPath = exports.updateTranslationFileMessages = exports.mergeTranslations = exports.readOutputHTMLFile = exports.generate = exports.WEBPACK_URL_LOADER_LIMIT = exports.DEFAULT_PLUGIN_ID = exports.DEFAULT_PORT = exports.CODE_TRANSLATIONS_FILE_NAME = exports.DEFAULT_I18N_DIR_NAME = exports.THEME_PATH = exports.OUTPUT_STATIC_ASSETS_DIR_NAME = exports.DEFAULT_STATIC_DIR_NAME = exports.SRC_DIR_NAME = exports.GENERATED_FILES_DIR_NAME = exports.BABEL_CONFIG_FILE_NAME = exports.DEFAULT_CONFIG_FILE_NAME = exports.DEFAULT_BUILD_DIR_NAME = exports.DOCUSAURUS_VERSION = exports.NODE_MINOR_VERSION = exports.NODE_MAJOR_VERSION = void 0;
|
|
10
|
-
exports.reportInlineTags = exports.normalizeTags = exports.TEST_VCS = exports.getVcsPreset = exports.VcsPresetNames = exports.readLastUpdateData = exports.flattenRoutes = exports.
|
|
10
|
+
exports.reportInlineTags = exports.normalizeTags = exports.TEST_VCS = exports.getVcsPreset = exports.VcsPresetNames = exports.readLastUpdateData = exports.flattenRoutes = exports.isUnlisted = exports.isDraft = exports.getFolderContainingFile = exports.findFolderContainingFile = exports.getContentPathList = exports.readDataFile = exports.getDataFilePath = exports.loadFreshModule = exports.getWebpackLoaderCompilerName = exports.getFileLoaderUtils = exports.createAbsoluteFilePathMatcher = exports.createMatcher = exports.globTranslatableSourceFiles = exports.safeGlobby = exports.GlobExcludeDefault = exports.Globby = exports.docuHash = exports.simpleHash = exports.md5Hash = exports.addTrailingPathSeparator = exports.escapePath = exports.aliasedSitePathToRelativePath = exports.aliasedSitePath = exports.toMessageRelativeFilePath = exports.posixPath = exports.shortName = exports.isNameTooLong = exports.createSlugger = void 0;
|
|
11
11
|
var constants_1 = require("./constants");
|
|
12
12
|
Object.defineProperty(exports, "NODE_MAJOR_VERSION", { enumerable: true, get: function () { return constants_1.NODE_MAJOR_VERSION; } });
|
|
13
13
|
Object.defineProperty(exports, "NODE_MINOR_VERSION", { enumerable: true, get: function () { return constants_1.NODE_MINOR_VERSION; } });
|
|
@@ -103,8 +103,6 @@ Object.defineProperty(exports, "getFolderContainingFile", { enumerable: true, ge
|
|
|
103
103
|
var contentVisibilityUtils_1 = require("./contentVisibilityUtils");
|
|
104
104
|
Object.defineProperty(exports, "isDraft", { enumerable: true, get: function () { return contentVisibilityUtils_1.isDraft; } });
|
|
105
105
|
Object.defineProperty(exports, "isUnlisted", { enumerable: true, get: function () { return contentVisibilityUtils_1.isUnlisted; } });
|
|
106
|
-
var regExpUtils_1 = require("./regExpUtils");
|
|
107
|
-
Object.defineProperty(exports, "escapeRegexp", { enumerable: true, get: function () { return regExpUtils_1.escapeRegexp; } });
|
|
108
106
|
var routeUtils_1 = require("./routeUtils");
|
|
109
107
|
Object.defineProperty(exports, "flattenRoutes", { enumerable: true, get: function () { return routeUtils_1.flattenRoutes; } });
|
|
110
108
|
var lastUpdateUtils_1 = require("./lastUpdateUtils");
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;AAEH,yCAiBqB;AAhBnB,+GAAA,kBAAkB,OAAA;AAClB,+GAAA,kBAAkB,OAAA;AAClB,+GAAA,kBAAkB,OAAA;AAClB,mHAAA,sBAAsB,OAAA;AACtB,qHAAA,wBAAwB,OAAA;AACxB,mHAAA,sBAAsB,OAAA;AACtB,qHAAA,wBAAwB,OAAA;AACxB,yGAAA,YAAY,OAAA;AACZ,oHAAA,uBAAuB,OAAA;AACvB,0HAAA,6BAA6B,OAAA;AAC7B,uGAAA,UAAU,OAAA;AACV,kHAAA,qBAAqB,OAAA;AACrB,wHAAA,2BAA2B,OAAA;AAC3B,yGAAA,YAAY,OAAA;AACZ,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA;AAE1B,yCAAyD;AAAjD,qGAAA,QAAQ,OAAA;AAAE,+GAAA,kBAAkB,OAAA;AACpC,yCAKqB;AAJnB,8GAAA,iBAAiB,OAAA;AACjB,0HAAA,6BAA6B,OAAA;AAC7B,8GAAA,iBAAiB,OAAA;AACjB,4GAAA,eAAe,OAAA;AAEjB,qCAAkE;AAA1D,6GAAA,kBAAkB,OAAA;AAAE,8GAAA,mBAAmB,OAAA;AAC/C,uCAeoB;AAdlB,wGAAA,YAAY,OAAA;AACZ,sGAAA,UAAU,OAAA;AACV,sGAAA,UAAU,OAAA;AACV,sGAAA,UAAU,OAAA;AACV,2GAAA,eAAe,OAAA;AACf,2GAAA,eAAe,OAAA;AACf,wGAAA,YAAY,OAAA;AACZ,6GAAA,iBAAiB,OAAA;AACjB,0GAAA,cAAc,OAAA;AACd,qGAAA,SAAS,OAAA;AACT,4GAAA,gBAAgB,OAAA;AAChB,0GAAA,cAAc,OAAA;AACd,yGAAA,aAAa,OAAA;AACb,uGAAA,WAAW,OAAA;AAGb,+BAWgB;AAFd,wGAAA,gBAAgB,OAAA;AAChB,wGAAA,gBAAgB,OAAA;AAElB,iDAOyB;AANvB,oHAAA,mBAAmB,OAAA;AACnB,gIAAA,+BAA+B,OAAA;AAC/B,8GAAA,aAAa,OAAA;AACb,2HAAA,0BAA0B,OAAA;AAC1B,0HAAA,yBAAyB,OAAA;AACzB,kHAAA,iBAAiB,OAAA;AAEnB,mEAMkC;AALhC,gIAAA,sBAAsB,OAAA;AACtB,kIAAA,wBAAwB,OAAA;AACxB,gIAAA,sBAAsB,OAAA;AAIxB,iDAIyB;AADvB,4HAAA,2BAA2B,OAAA;AAE7B,qCAA2E;AAAhC,wGAAA,aAAa,OAAA;AACxD,yCASqB;AARnB,0GAAA,aAAa,OAAA;AACb,sGAAA,SAAS,OAAA;AACT,sGAAA,SAAS,OAAA;AACT,sHAAA,yBAAyB,OAAA;AACzB,4GAAA,eAAe,OAAA;AACf,0HAAA,6BAA6B,OAAA;AAC7B,uGAAA,UAAU,OAAA;AACV,qHAAA,wBAAwB,OAAA;AAE1B,yCAA0D;AAAlD,oGAAA,OAAO,OAAA;AAAE,uGAAA,UAAU,OAAA;AAAE,qGAAA,QAAQ,OAAA;AACrC,yCAOqB;AANnB,mGAAA,MAAM,OAAA;AACN,+GAAA,kBAAkB,OAAA;AAClB,uGAAA,UAAU,OAAA;AACV,wHAAA,2BAA2B,OAAA;AAC3B,0GAAA,aAAa,OAAA;AACb,0HAAA,6BAA6B,OAAA;AAE/B,+CAIwB;AAHtB,kHAAA,kBAAkB,OAAA;AAClB,4HAAA,4BAA4B,OAAA;AAG9B,6CAA8C;AAAtC,8GAAA,eAAe,OAAA;AACvB,iDAMyB;AALvB,gHAAA,eAAe,OAAA;AACf,6GAAA,YAAY,OAAA;AACZ,mHAAA,kBAAkB,OAAA;AAClB,yHAAA,wBAAwB,OAAA;AACxB,wHAAA,uBAAuB,OAAA;AAEzB,mEAA6D;AAArD,iHAAA,OAAO,OAAA;AAAE,oHAAA,UAAU,OAAA;AAC3B,2CAA2C;AAAnC,2GAAA,aAAa,OAAA;AAErB,qDAI2B;AAHzB,qHAAA,kBAAkB,OAAA;AAKpB,iCAAiE;AAAzD,qGAAA,cAAc,OAAA;AAAE,mGAAA,YAAY,OAAA;AAAE,+FAAA,QAAQ,OAAA;AAE9C,+BAAuD;AAA/C,qGAAA,aAAa,OAAA;AAAE,wGAAA,gBAAgB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownUtils.d.ts","sourceRoot":"","sources":["../src/markdownUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"markdownUtils.d.ts","sourceRoot":"","sources":["../src/markdownUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,gBAAgB,EAChB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAyC3B;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAc3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,EACf,6BAA6B,EAAE,MAAM,EAAE,GACtC,MAAM,CAiBR;AAID;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgHpE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG;IAChE,6CAA6C;IAC7C,WAAW,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;IACtC,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB,CAgBA;AAED,eAAO,MAAM,0BAA0B,EAAE,uBAEW,CAAC;AAMrD,KAAK,gCAAgC,GAAG;IACtC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACvC,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,gCAAgC,GACzC;IACD,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,CAyCA;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,EACtC,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GACnB,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,GAAG,gCAAgC,GAAG,OAAO,CAAC;IAC7C,oCAAoC;IACpC,WAAW,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAAC;IACtC,6CAA6C;IAC7C,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,iCAAiC;IACjC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC,CA2BD"}
|
package/lib/markdownUtils.js
CHANGED
|
@@ -15,10 +15,25 @@ exports.parseMarkdownContentTitle = parseMarkdownContentTitle;
|
|
|
15
15
|
exports.parseMarkdownFile = parseMarkdownFile;
|
|
16
16
|
const tslib_1 = require("tslib");
|
|
17
17
|
const logger_1 = tslib_1.__importDefault(require("@docusaurus/logger"));
|
|
18
|
-
const gray_matter_1 = tslib_1.__importDefault(require("gray-matter"));
|
|
18
|
+
const gray_matter_1 = tslib_1.__importDefault(require("@11ty/gray-matter"));
|
|
19
19
|
// Some utilities for parsing Markdown content. These things are only used on
|
|
20
20
|
// server-side when we infer metadata like `title` and `description` from the
|
|
21
21
|
// content. Most parsing is still done in MDX through the mdx-loader.
|
|
22
|
+
const MDXEscapingUtils = (function () {
|
|
23
|
+
const MARKUP_CHARS = ['_', ':', '*', '<', '>', '~', '!', '[', ']', '{', '}'];
|
|
24
|
+
const markerOf = (char) => `\u{FFFE}${char.codePointAt(0)}\u{FFFF}`;
|
|
25
|
+
const MARKUP_CHARS_ESCAPE_MAP = new Map(MARKUP_CHARS.map((char) => [char, markerOf(char)]));
|
|
26
|
+
const MARKUP_CHARS_UNESCAPE_MAP = new Map(MARKUP_CHARS.map((char) => [markerOf(char), char]));
|
|
27
|
+
const MARKUP_CHARS_REGEX = new RegExp(`[${RegExp.escape(MARKUP_CHARS.join(''))}]`, 'g');
|
|
28
|
+
const MARKUP_MARKERS_REGEX = /\u{FFFE}\d+\u{FFFF}/gu;
|
|
29
|
+
function escapeMDX(str) {
|
|
30
|
+
return str.replace(MARKUP_CHARS_REGEX, (char) => MARKUP_CHARS_ESCAPE_MAP.get(char));
|
|
31
|
+
}
|
|
32
|
+
function unescapeMDX(str) {
|
|
33
|
+
return str.replace(MARKUP_MARKERS_REGEX, (marker) => MARKUP_CHARS_UNESCAPE_MAP.get(marker) ?? marker);
|
|
34
|
+
}
|
|
35
|
+
return { escapeMDX, unescapeMDX };
|
|
36
|
+
})();
|
|
22
37
|
/**
|
|
23
38
|
* Hacky temporary escape hatch for Crowdin bad MDX support
|
|
24
39
|
* See https://docusaurus.io/docs/i18n/crowdin#mdx
|
|
@@ -78,6 +93,7 @@ function createExcerpt(fileString) {
|
|
|
78
93
|
.split(/\r?\n/);
|
|
79
94
|
let inCode = false;
|
|
80
95
|
let inImport = false;
|
|
96
|
+
let inHTML = false;
|
|
81
97
|
let lastCodeFence = '';
|
|
82
98
|
for (const fileLine of fileLines) {
|
|
83
99
|
// An empty line marks the end of imports
|
|
@@ -110,11 +126,40 @@ function createExcerpt(fileString) {
|
|
|
110
126
|
else if (inCode) {
|
|
111
127
|
continue;
|
|
112
128
|
}
|
|
113
|
-
|
|
129
|
+
// Skip lines inside a multi-line JSX/HTML element. An opening "<Tag ..."
|
|
130
|
+
// with no ">" on the same line would otherwise leak into the excerpt
|
|
131
|
+
// (e.g. "<MyComponent"). Skip until the element's tag closes.
|
|
132
|
+
if (inHTML) {
|
|
133
|
+
if (fileLine.includes('>')) {
|
|
134
|
+
inHTML = false;
|
|
135
|
+
}
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
if (/^\s*<[a-z][^>]*$/i.test(fileLine)) {
|
|
139
|
+
inHTML = true;
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
142
|
+
// Pre/postprocessing to handle MDX special chars within inline code blocks
|
|
143
|
+
// See https://github.com/facebook/docusaurus/pull/11821
|
|
144
|
+
function preprocessLine(str) {
|
|
145
|
+
return (str
|
|
146
|
+
// Ignore internal Unicode markers found in input
|
|
147
|
+
// This ensures no possible conflict with our MDX escaping logic
|
|
148
|
+
.replace(/[\u{FFFE}\u{FFFF}]/gu, '')
|
|
149
|
+
// Unwrap inline code and escape special MDX chars within it
|
|
150
|
+
.replace(/`(?<text>.+?)`/g, (_, text) => {
|
|
151
|
+
return MDXEscapingUtils.escapeMDX(text);
|
|
152
|
+
}));
|
|
153
|
+
}
|
|
154
|
+
function postProcessLine(str) {
|
|
155
|
+
// Restore escaped MDX chars that have been previously escaped
|
|
156
|
+
return MDXEscapingUtils.unescapeMDX(str);
|
|
157
|
+
}
|
|
158
|
+
const cleanedLine = preprocessLine(fileLine)
|
|
114
159
|
// Remove HTML tags.
|
|
115
160
|
.replace(/<[^>]*>/g, '')
|
|
116
161
|
// Remove Title headers
|
|
117
|
-
.replace(/^#
|
|
162
|
+
.replace(/^#(?!#).*/gm, '')
|
|
118
163
|
// Remove Markdown + ATX-style headers
|
|
119
164
|
.replace(/^#{1,6}\s*(?<text>[^#]*?)\s*#{0,6}/gm, '$1')
|
|
120
165
|
// Remove emphasis.
|
|
@@ -127,8 +172,6 @@ function createExcerpt(fileString) {
|
|
|
127
172
|
.replace(/\[\^.+?\](?:: .*$)?/g, '')
|
|
128
173
|
// Remove inline links.
|
|
129
174
|
.replace(/\[(?<alt>.*?)\][[(].*?[\])]/g, '$1')
|
|
130
|
-
// Remove inline code.
|
|
131
|
-
.replace(/`(?<text>.+?)`/g, '$1')
|
|
132
175
|
// Remove blockquotes.
|
|
133
176
|
.replace(/^\s{0,3}>\s?/g, '')
|
|
134
177
|
// Remove admonition definition.
|
|
@@ -137,9 +180,11 @@ function createExcerpt(fileString) {
|
|
|
137
180
|
.replace(/\s?:(?:::|[^:\n])+:/g, '')
|
|
138
181
|
// Remove custom Markdown heading id.
|
|
139
182
|
.replace(/\{#*[\w-]+\}/, '')
|
|
183
|
+
// Collapse whitespace left behind by the removals above.
|
|
184
|
+
.replace(/\s+/g, ' ')
|
|
140
185
|
.trim();
|
|
141
186
|
if (cleanedLine) {
|
|
142
|
-
return cleanedLine;
|
|
187
|
+
return postProcessLine(cleanedLine);
|
|
143
188
|
}
|
|
144
189
|
}
|
|
145
190
|
return undefined;
|
|
@@ -190,14 +235,14 @@ function toTextContentTitle(contentTitle) {
|
|
|
190
235
|
function parseMarkdownContentTitle(contentUntrimmed, options) {
|
|
191
236
|
const removeContentTitleOption = options?.removeContentTitle ?? false;
|
|
192
237
|
const content = contentUntrimmed.trim();
|
|
193
|
-
// We only need to detect import statements that will be parsed by MDX as
|
|
194
|
-
// `import` nodes, as broken syntax can't render anyways. That means any block
|
|
195
|
-
// that has `import` at the very beginning and surrounded by empty lines.
|
|
196
|
-
const
|
|
197
|
-
.replace(/^(?:import\s(?:.|\r?\n(?!\r?\n))*(?:\r?\n){2,})*/, '')
|
|
238
|
+
// We only need to detect import/export statements that will be parsed by MDX as
|
|
239
|
+
// `import` or `export` nodes, as broken syntax can't render anyways. That means any block
|
|
240
|
+
// that has `import` or `export` at the very beginning and surrounded by empty lines.
|
|
241
|
+
const contentWithoutImportExport = content
|
|
242
|
+
.replace(/^(?:(?:import|export)\s(?:.|\r?\n(?!\r?\n))*(?:\r?\n){2,})*/, '')
|
|
198
243
|
.trim();
|
|
199
|
-
const regularTitleMatch = /^#[ \t]+(?<title>[^ \t].*)(?:\r?\n|$)/.exec(
|
|
200
|
-
const alternateTitleMatch = /^(?<title>.*)\r?\n=+(?:\r?\n|$)/.exec(
|
|
244
|
+
const regularTitleMatch = /^#[ \t]+(?<title>[^ \t].*)(?:\r?\n|$)/.exec(contentWithoutImportExport);
|
|
245
|
+
const alternateTitleMatch = /^(?<title>.*)\r?\n=+(?:\r?\n|$)/.exec(contentWithoutImportExport);
|
|
201
246
|
const titleMatch = regularTitleMatch ?? alternateTitleMatch;
|
|
202
247
|
if (!titleMatch) {
|
|
203
248
|
return { content, contentTitle: undefined };
|
package/lib/markdownUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdownUtils.js","sourceRoot":"","sources":["../src/markdownUtils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"markdownUtils.js","sourceRoot":"","sources":["../src/markdownUtils.ts"],"names":[],"mappings":"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"}
|
package/lib/urlUtils.d.ts
CHANGED
|
@@ -41,7 +41,7 @@ export declare function encodePath(userPath: string): string;
|
|
|
41
41
|
* special characters.
|
|
42
42
|
*/
|
|
43
43
|
export declare function isValidPathname(str: string): boolean;
|
|
44
|
-
export declare function parseURLOrPath(
|
|
44
|
+
export declare function parseURLOrPath(str: string, base?: string | URL): URL;
|
|
45
45
|
export type URLPath = {
|
|
46
46
|
pathname: string;
|
|
47
47
|
search?: string;
|
package/lib/urlUtils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urlUtils.d.ts","sourceRoot":"","sources":["../src/urlUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAoFtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAKpB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAUpD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"urlUtils.d.ts","sourceRoot":"","sources":["../src/urlUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAoFtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAKpB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAUpD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,GAAG,CAMpE;AAED,MAAM,MAAM,OAAO,GAAG;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC;AAEzE,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAgC3C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAIxE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAwCjE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAIzD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAIjE;AAED,gEAAgE;AAChE,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAKR;AAED,iEAAiE;AACjE,wBAAgB,aAAa,CAC3B,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAKR;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAQ7D"}
|
package/lib/urlUtils.js
CHANGED
|
@@ -144,30 +144,32 @@ function isValidPathname(str) {
|
|
|
144
144
|
if (!str.startsWith('/')) {
|
|
145
145
|
return false;
|
|
146
146
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return parsedPathname === str || parsedPathname === encodeURI(str);
|
|
150
|
-
}
|
|
151
|
-
catch {
|
|
147
|
+
const url = URL.parse(str, 'https://domain.com');
|
|
148
|
+
if (url === null) {
|
|
152
149
|
return false;
|
|
153
150
|
}
|
|
151
|
+
const parsedPathname = url.pathname;
|
|
152
|
+
return parsedPathname === str || parsedPathname === encodeURI(str);
|
|
154
153
|
}
|
|
155
|
-
function parseURLOrPath(
|
|
156
|
-
const
|
|
157
|
-
if (
|
|
158
|
-
return
|
|
154
|
+
function parseURLOrPath(str, base) {
|
|
155
|
+
const url = URL.parse(str, base ?? 'https://example.com');
|
|
156
|
+
if (url) {
|
|
157
|
+
return url;
|
|
159
158
|
}
|
|
160
|
-
throw new Error(`Can't parse URL ${
|
|
159
|
+
throw new Error(`Can't parse URL ${str}${base ? ` with base ${base}` : ''}`);
|
|
161
160
|
}
|
|
162
161
|
function toURLPath(url) {
|
|
163
162
|
const { pathname } = url;
|
|
163
|
+
// Only the part before the fragment can contain the query string. A "?"
|
|
164
|
+
// inside the hash (e.g. "/foo#bar?baz") must not be read as an empty query.
|
|
165
|
+
const beforeHash = url.hash ? url.href.slice(0, -url.hash.length) : url.href;
|
|
164
166
|
// Fixes annoying url.search behavior
|
|
165
167
|
// "" => undefined
|
|
166
168
|
// "?" => ""
|
|
167
169
|
// "?param => "param"
|
|
168
170
|
const search = url.search
|
|
169
171
|
? url.search.slice(1)
|
|
170
|
-
:
|
|
172
|
+
: beforeHash.includes('?')
|
|
171
173
|
? ''
|
|
172
174
|
: undefined;
|
|
173
175
|
// Fixes annoying url.hash behavior
|
|
@@ -268,15 +270,12 @@ function buildHttpsUrl(gitCredentials, githubHost, organizationName, projectName
|
|
|
268
270
|
* `git@github.com:facebook/docusaurus.git`.
|
|
269
271
|
*/
|
|
270
272
|
function hasSSHProtocol(sourceRepoUrl) {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
return false;
|
|
276
|
-
}
|
|
277
|
-
catch {
|
|
278
|
-
// Fails when there isn't a protocol
|
|
273
|
+
const url = URL.parse(sourceRepoUrl);
|
|
274
|
+
if (url === null) {
|
|
275
|
+
// Recognizes SCP-style addresses, implying SSH
|
|
276
|
+
// Example: git@github.com:facebook/docusaurus.git
|
|
279
277
|
return /^(?:[\w-]+@)?[\w.-]+:[\w./-]+/.test(sourceRepoUrl);
|
|
280
278
|
}
|
|
279
|
+
return url.protocol === 'ssh:';
|
|
281
280
|
}
|
|
282
281
|
//# sourceMappingURL=urlUtils.js.map
|
package/lib/urlUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urlUtils.js","sourceRoot":"","sources":["../src/urlUtils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAgBH,oCAoFC;AAOD,gCAQC;AAMD,gCAQC;AASD,gCAKC;AAMD,0CAUC;AAED,
|
|
1
|
+
{"version":3,"file":"urlUtils.js","sourceRoot":"","sources":["../src/urlUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/vcs/gitUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA4CH,2DAA2D;AAC3D,qBAAa,gBAAiB,SAAQ,KAAK;CAAG;AAI9C,uEAAuE;AACvE,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB;AACrC,iCAAiC;AACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IACJ;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,uEAAuE;IACvE,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,GACA,OAAO,CAAC;IACT,4BAA4B;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AACH;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB;AACrC,iCAAiC;AACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IACJ;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,aAAa,EAAE,IAAI,CAAC;CACrB,GACA,OAAO,CAAC;IACT,4BAA4B;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/vcs/gitUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA4CH,2DAA2D;AAC3D,qBAAa,gBAAiB,SAAQ,KAAK;CAAG;AAI9C,uEAAuE;AACvE,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB;AACrC,iCAAiC;AACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IACJ;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,uEAAuE;IACvE,aAAa,CAAC,EAAE,KAAK,CAAC;CACvB,GACA,OAAO,CAAC;IACT,4BAA4B;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CAAC;AACH;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB;AACrC,iCAAiC;AACjC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;IACJ;;;OAGG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,aAAa,EAAE,IAAI,CAAC;CACrB,GACA,OAAO,CAAC;IACT,4BAA4B;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAwFH,KAAK,aAAa,GAAG;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAAC;AA2CzD,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAE/B;AAED,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAE/B;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAavE;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgBjE;AAKD,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA0BxB;AAGD,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAoCzE;AAGD,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAmBvE;AAGD,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,aAAa,CAAC;CAC3B,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAKtD,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,cAAc,CAAC,CAwFzB"}
|
package/lib/vcs/gitUtils.js
CHANGED
|
@@ -21,7 +21,7 @@ const path_1 = tslib_1.__importDefault(require("path"));
|
|
|
21
21
|
const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
|
|
22
22
|
const os_1 = tslib_1.__importDefault(require("os"));
|
|
23
23
|
const lodash_1 = tslib_1.__importDefault(require("lodash"));
|
|
24
|
-
const execa_1 =
|
|
24
|
+
const execa_1 = require("execa");
|
|
25
25
|
const p_queue_1 = tslib_1.__importDefault(require("p-queue"));
|
|
26
26
|
const logger_1 = tslib_1.__importDefault(require("@docusaurus/logger"));
|
|
27
27
|
// Quite high/conservative concurrency value (it was previously "Infinity")
|
|
@@ -40,7 +40,7 @@ const GitCommandQueue = new p_queue_1.default({
|
|
|
40
40
|
});
|
|
41
41
|
const realHasGitFn = () => {
|
|
42
42
|
try {
|
|
43
|
-
return execa_1.
|
|
43
|
+
return (0, execa_1.execaSync)('git', ['--version']).exitCode === 0;
|
|
44
44
|
}
|
|
45
45
|
catch {
|
|
46
46
|
return false;
|
|
@@ -72,7 +72,7 @@ async function getFileCommitDate(file, { age = 'oldest', includeAuthor = false,
|
|
|
72
72
|
// See why: https://github.com/facebook/docusaurus/pull/10022
|
|
73
73
|
const resultFormat = includeAuthor ? 'RESULT:%ct,%an' : 'RESULT:%ct';
|
|
74
74
|
const result = (await GitCommandQueue.add(() => {
|
|
75
|
-
return (0, execa_1.
|
|
75
|
+
return (0, execa_1.execa)('git', [
|
|
76
76
|
// Do not include GPG signature in the log output
|
|
77
77
|
// See https://github.com/facebook/docusaurus/pull/10022
|
|
78
78
|
'-c',
|
|
@@ -87,9 +87,6 @@ async function getFileCommitDate(file, { age = 'oldest', includeAuthor = false,
|
|
|
87
87
|
cwd: path_1.default.dirname(file),
|
|
88
88
|
});
|
|
89
89
|
}));
|
|
90
|
-
if (result.exitCode !== 0) {
|
|
91
|
-
throw new Error(`Failed to retrieve the git history for file "${file}" with exit code ${result.exitCode}: ${result.stderr}`);
|
|
92
|
-
}
|
|
93
90
|
// We only parse the output line starting with our "RESULT:" prefix
|
|
94
91
|
// See why https://github.com/facebook/docusaurus/pull/10022
|
|
95
92
|
const regex = includeAuthor
|
|
@@ -154,7 +151,7 @@ async function getGitCreation(filePath) {
|
|
|
154
151
|
}
|
|
155
152
|
async function isGitInsideWorktree(cwd) {
|
|
156
153
|
try {
|
|
157
|
-
const result = await (0, execa_1.
|
|
154
|
+
const result = await (0, execa_1.execa)('git', ['rev-parse', '--is-inside-work-tree'], {
|
|
158
155
|
cwd,
|
|
159
156
|
reject: false,
|
|
160
157
|
});
|
|
@@ -165,42 +162,28 @@ async function isGitInsideWorktree(cwd) {
|
|
|
165
162
|
}
|
|
166
163
|
}
|
|
167
164
|
async function getGitRepoRoot(cwd) {
|
|
168
|
-
const
|
|
169
|
-
return `Couldn't find the git repository root directory
|
|
170
|
-
Failure while running ${logger_1.default.code('git rev-parse --show-toplevel')} from cwd=${logger_1.default.path(cwd)}`;
|
|
171
|
-
};
|
|
172
|
-
const result = await (0, execa_1.default)('git', ['rev-parse', '--show-toplevel'], {
|
|
165
|
+
const result = await (0, execa_1.execa)('git', ['rev-parse', '--show-toplevel'], {
|
|
173
166
|
cwd,
|
|
174
167
|
}).catch((error) => {
|
|
175
168
|
// We enter this rejection when cwd is not a dir for example
|
|
176
|
-
throw new Error(
|
|
169
|
+
throw new Error(`Couldn't find the git repository root directory
|
|
170
|
+
Failure while running ${logger_1.default.code('git rev-parse --show-toplevel')} from cwd=${logger_1.default.path(cwd)}
|
|
177
171
|
The command executed throws an error: ${error.message}`, { cause: error });
|
|
178
172
|
});
|
|
179
|
-
if (result.exitCode !== 0) {
|
|
180
|
-
throw new Error(`${createErrorMessageBase()}
|
|
181
|
-
The command returned exit code ${logger_1.default.code(result.exitCode)}: ${logger_1.default.subdue(result.stderr)}`);
|
|
182
|
-
}
|
|
183
173
|
return fs_extra_1.default.realpath.native(result.stdout.trim());
|
|
184
174
|
}
|
|
185
175
|
// A Git "superproject" is a Git repository that contains submodules
|
|
186
176
|
// See https://git-scm.com/docs/git-rev-parse#Documentation/git-rev-parse.txt---show-superproject-working-tree
|
|
187
177
|
// See https://git-scm.com/book/en/v2/Git-Tools-Submodules
|
|
188
178
|
async function getGitSuperProjectRoot(cwd) {
|
|
189
|
-
const
|
|
190
|
-
return `Couldn't find the git superproject root directory
|
|
191
|
-
Failure while running ${logger_1.default.code('git rev-parse --show-superproject-working-tree')} from cwd=${logger_1.default.path(cwd)}`;
|
|
192
|
-
};
|
|
193
|
-
const result = await (0, execa_1.default)('git', ['rev-parse', '--show-superproject-working-tree'], {
|
|
179
|
+
const result = await (0, execa_1.execa)('git', ['rev-parse', '--show-superproject-working-tree'], {
|
|
194
180
|
cwd,
|
|
195
181
|
}).catch((error) => {
|
|
196
182
|
// We enter this rejection when cwd is not a dir for example
|
|
197
|
-
throw new Error(
|
|
183
|
+
throw new Error(`Couldn't find the git superproject root directory
|
|
184
|
+
Failure while running ${logger_1.default.code('git rev-parse --show-superproject-working-tree')} from cwd=${logger_1.default.path(cwd)}
|
|
198
185
|
The command executed throws an error: ${error.message}`, { cause: error });
|
|
199
186
|
});
|
|
200
|
-
if (result.exitCode !== 0) {
|
|
201
|
-
throw new Error(`${createErrorMessageBase()}
|
|
202
|
-
The command returned exit code ${logger_1.default.code(result.exitCode)}: ${logger_1.default.subdue(result.stderr)}`);
|
|
203
|
-
}
|
|
204
187
|
const output = result.stdout.trim();
|
|
205
188
|
// this command only works when inside submodules
|
|
206
189
|
// otherwise it doesn't return anything when we are inside the main repo
|
|
@@ -211,21 +194,14 @@ The command returned exit code ${logger_1.default.code(result.exitCode)}: ${logg
|
|
|
211
194
|
}
|
|
212
195
|
// See https://git-scm.com/book/en/v2/Git-Tools-Submodules
|
|
213
196
|
async function getGitSubmodulePaths(cwd) {
|
|
214
|
-
const
|
|
215
|
-
return `Couldn't read the list of git submodules
|
|
216
|
-
Failure while running ${logger_1.default.code('git submodule status')} from cwd=${logger_1.default.path(cwd)}`;
|
|
217
|
-
};
|
|
218
|
-
const result = await (0, execa_1.default)('git', ['submodule', 'status'], {
|
|
197
|
+
const result = await (0, execa_1.execa)('git', ['submodule', 'status'], {
|
|
219
198
|
cwd,
|
|
220
199
|
}).catch((error) => {
|
|
221
200
|
// We enter this rejection when cwd is not a dir for example
|
|
222
|
-
throw new Error(
|
|
201
|
+
throw new Error(`Couldn't read the list of git submodules
|
|
202
|
+
Failure while running ${logger_1.default.code('git submodule status')} from cwd=${logger_1.default.path(cwd)}
|
|
223
203
|
The command executed throws an error: ${error.message}`, { cause: error });
|
|
224
204
|
});
|
|
225
|
-
if (result.exitCode !== 0) {
|
|
226
|
-
throw new Error(`${createErrorMessageBase()}
|
|
227
|
-
The command returned exit code ${logger_1.default.code(result.exitCode)}: ${logger_1.default.subdue(result.stderr)}`);
|
|
228
|
-
}
|
|
229
205
|
const output = result.stdout.trim();
|
|
230
206
|
if (!output) {
|
|
231
207
|
return [];
|
|
@@ -265,7 +241,7 @@ async function getGitAllRepoRoots(cwd) {
|
|
|
265
241
|
// See https://github.com/withastro/starlight/blob/c417f1efd463be63b7230617d72b120caed098cd/packages/starlight/utils/git.ts#L58
|
|
266
242
|
async function getGitRepositoryFilesInfo(cwd) {
|
|
267
243
|
// git --no-pager -c log.showSignature=false log --format=t:%ct,a:%an --name-status
|
|
268
|
-
const result = await (0, execa_1.
|
|
244
|
+
const result = await (0, execa_1.execa)('git', [
|
|
269
245
|
'--no-pager',
|
|
270
246
|
// Do not include GPG signature in the log output
|
|
271
247
|
// See https://github.com/facebook/docusaurus/pull/10022
|
|
@@ -280,15 +256,10 @@ async function getGitRepositoryFilesInfo(cwd) {
|
|
|
280
256
|
// For creation info, should we use --follow --find-renames=100% ???
|
|
281
257
|
], {
|
|
282
258
|
cwd,
|
|
283
|
-
encoding: 'utf-8',
|
|
284
259
|
// TODO use streaming to avoid a large buffer
|
|
285
260
|
// See https://github.com/withastro/starlight/issues/3154
|
|
286
261
|
maxBuffer: 20 * 1024 * 1024,
|
|
287
262
|
});
|
|
288
|
-
if (result.exitCode !== 0) {
|
|
289
|
-
throw new Error(`Docusaurus failed to run the 'git log' to retrieve tracked files last update date/author.
|
|
290
|
-
The command exited with code ${result.exitCode}: ${result.stderr}`);
|
|
291
|
-
}
|
|
292
263
|
const logLines = result.stdout.split('\n');
|
|
293
264
|
const now = Date.now();
|
|
294
265
|
// TODO not fail-fast
|
|
@@ -298,10 +269,10 @@ The command exited with code ${result.exitCode}: ${result.stderr}`);
|
|
|
298
269
|
for (const logLine of logLines) {
|
|
299
270
|
if (logLine.startsWith('t:')) {
|
|
300
271
|
// t:<timestamp>,a:<author name>
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
const author =
|
|
304
|
-
runningDate =
|
|
272
|
+
// We can't use split(',') because author names may contain commas
|
|
273
|
+
// Example: "t:123456,a:John Doe, Jr."
|
|
274
|
+
const [timestampStr, author] = logLine.slice(2).split(',a:');
|
|
275
|
+
runningDate = Number.parseInt(timestampStr, 10) * 1000;
|
|
305
276
|
runningAuthor = author;
|
|
306
277
|
}
|
|
307
278
|
// TODO the code below doesn't handle delete/move/rename operations properly
|