typedoc 0.24.0-beta.7 → 0.24.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +4 -0
- package/dist/index.js +17 -1
- package/dist/lib/converter/comments/discovery.js +1 -1
- package/dist/lib/converter/context.js +2 -2
- package/dist/lib/converter/converter.d.ts +6 -4
- package/dist/lib/converter/converter.js +7 -5
- package/dist/lib/converter/plugins/PackagePlugin.js +3 -1
- package/dist/lib/converter/symbols.js +9 -4
- package/dist/lib/models/comments/comment.d.ts +2 -2
- package/dist/lib/models/comments/comment.js +26 -6
- package/dist/lib/models/reflections/declaration.d.ts +1 -1
- package/dist/lib/models/reflections/project.d.ts +0 -6
- package/dist/lib/models/reflections/project.js +0 -16
- package/dist/lib/models/types.js +2 -31
- package/dist/lib/output/components.d.ts +3 -3
- package/dist/lib/output/components.js +1 -5
- package/dist/lib/output/events.d.ts +22 -10
- package/dist/lib/output/events.js +14 -6
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +1 -3
- package/dist/lib/output/renderer.d.ts +12 -4
- package/dist/lib/output/renderer.js +3 -3
- package/dist/lib/output/theme.d.ts +2 -2
- package/dist/lib/output/themes/MarkedPlugin.d.ts +2 -2
- package/dist/lib/output/themes/MarkedPlugin.js +15 -12
- package/dist/lib/output/themes/default/DefaultTheme.d.ts +5 -5
- package/dist/lib/output/themes/default/DefaultTheme.js +58 -11
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +15 -13
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +9 -59
- package/dist/lib/output/themes/default/layouts/default.d.ts +2 -1
- package/dist/lib/output/themes/default/layouts/default.js +18 -12
- package/dist/lib/output/themes/default/partials/footer.js +1 -1
- package/dist/lib/output/themes/default/partials/member.d.ts +1 -1
- package/dist/lib/output/themes/default/partials/member.js +22 -14
- package/dist/lib/output/themes/default/partials/members.group.js +3 -3
- package/dist/lib/output/themes/default/partials/navigation.d.ts +4 -3
- package/dist/lib/output/themes/default/partials/navigation.js +71 -74
- package/dist/lib/output/themes/default/partials/toolbar.js +2 -1
- package/dist/lib/serialization/schema.d.ts +1 -0
- package/dist/lib/serialization/schema.js +1 -0
- package/dist/lib/serialization/serializer.d.ts +1 -1
- package/dist/lib/utils/entry-point.d.ts +3 -3
- package/dist/lib/utils/entry-point.js +4 -4
- package/dist/lib/utils/fs.d.ts +5 -0
- package/dist/lib/utils/fs.js +35 -2
- package/dist/lib/utils/options/declaration.d.ts +1 -0
- package/dist/lib/utils/options/options.d.ts +5 -0
- package/dist/lib/utils/options/sources/typedoc.js +5 -0
- package/package.json +1 -1
- package/static/main.js +3 -3
- package/static/style.css +186 -257
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.pageNavigation = exports.pageSidebar = exports.navigation = exports.settings = exports.sidebarLinks = exports.sidebar = void 0;
|
|
4
4
|
const models_1 = require("../../../../models");
|
|
5
5
|
const utils_1 = require("../../../../utils");
|
|
6
6
|
const lib_1 = require("../../lib");
|
|
7
|
-
function
|
|
7
|
+
function sidebar(context, props) {
|
|
8
8
|
return (utils_1.JSX.createElement(utils_1.JSX.Fragment, null,
|
|
9
9
|
context.sidebarLinks(),
|
|
10
|
-
context.
|
|
11
|
-
context.primaryNavigation(props),
|
|
12
|
-
context.secondaryNavigation(props)));
|
|
10
|
+
context.navigation(props)));
|
|
13
11
|
}
|
|
14
|
-
exports.
|
|
12
|
+
exports.sidebar = sidebar;
|
|
15
13
|
function buildFilterItem(context, name, displayName, defaultValue) {
|
|
16
14
|
return (utils_1.JSX.createElement("li", { class: "tsd-filter-item" },
|
|
17
15
|
utils_1.JSX.createElement("label", { class: "tsd-filter-input" },
|
|
@@ -50,7 +48,7 @@ function settings(context) {
|
|
|
50
48
|
utils_1.JSX.createElement("summary", { class: "tsd-accordion-summary" },
|
|
51
49
|
utils_1.JSX.createElement("h3", null,
|
|
52
50
|
context.icons.chevronDown(),
|
|
53
|
-
"
|
|
51
|
+
"Settings")),
|
|
54
52
|
utils_1.JSX.createElement("div", { class: "tsd-accordion-details" },
|
|
55
53
|
visibilityOptions.length && (utils_1.JSX.createElement("div", { class: "tsd-filter-visibility" },
|
|
56
54
|
utils_1.JSX.createElement("h4", { class: "uppercase" }, "Member Visibility"),
|
|
@@ -64,79 +62,78 @@ function settings(context) {
|
|
|
64
62
|
utils_1.JSX.createElement("option", { value: "dark" }, "Dark")))))));
|
|
65
63
|
}
|
|
66
64
|
exports.settings = settings;
|
|
67
|
-
function
|
|
65
|
+
function navigation(context, props) {
|
|
68
66
|
// Create the navigation for the current page
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
67
|
+
// Recurse to children if the parent is some kind of module
|
|
68
|
+
return (utils_1.JSX.createElement("nav", { class: "tsd-navigation" },
|
|
69
|
+
link(props.project),
|
|
70
|
+
utils_1.JSX.createElement("ul", { class: "tsd-small-nested-navigation" }, props.project.children?.map((c) => (utils_1.JSX.createElement("li", null, links(c)))))));
|
|
71
|
+
function links(mod) {
|
|
72
|
+
const children = (mod.kindOf(models_1.ReflectionKind.SomeModule | models_1.ReflectionKind.Project) && mod.children) || [];
|
|
73
|
+
const nameClasses = (0, lib_1.classNames)({ deprecated: mod.isDeprecated() }, mod.isProject() ? void 0 : context.getReflectionClasses(mod));
|
|
74
|
+
if (!children.length) {
|
|
75
|
+
return link(mod, nameClasses);
|
|
76
|
+
}
|
|
77
|
+
return (utils_1.JSX.createElement("details", { class: (0, lib_1.classNames)({ "tsd-index-accordion": true }, nameClasses), open: inPath(mod), "data-key": mod.getFullName() },
|
|
75
78
|
utils_1.JSX.createElement("summary", { class: "tsd-accordion-summary" },
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
" Modules")),
|
|
79
|
+
context.icons.chevronDown(),
|
|
80
|
+
link(mod)),
|
|
79
81
|
utils_1.JSX.createElement("div", { class: "tsd-accordion-details" },
|
|
80
|
-
utils_1.JSX.createElement("ul", null,
|
|
81
|
-
utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ current, selected }) },
|
|
82
|
-
utils_1.JSX.createElement("a", { href: context.urlTo(props.model.project) }, (0, lib_1.wbr)(props.project.name)),
|
|
83
|
-
utils_1.JSX.createElement("ul", null, int.map(link))),
|
|
84
|
-
ext.map(link))))));
|
|
85
|
-
function link(mod) {
|
|
86
|
-
const current = inPath(mod, props.model);
|
|
87
|
-
const selected = mod.name === props.model.name;
|
|
88
|
-
let childNav;
|
|
89
|
-
const childModules = mod.children?.filter((m) => m.kindOf(models_1.ReflectionKind.SomeModule));
|
|
90
|
-
if (childModules?.length) {
|
|
91
|
-
childNav = utils_1.JSX.createElement("ul", null, childModules.map(link));
|
|
92
|
-
}
|
|
93
|
-
return (utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ current, selected, deprecated: mod.isDeprecated() }, context.getReflectionClasses(mod)) },
|
|
94
|
-
utils_1.JSX.createElement("a", { href: context.urlTo(mod) }, (0, lib_1.wbr)((0, lib_1.getDisplayName)(mod))),
|
|
95
|
-
childNav));
|
|
82
|
+
utils_1.JSX.createElement("ul", { class: "tsd-nested-navigation" }, children.map((c) => (utils_1.JSX.createElement("li", null, links(c))))))));
|
|
96
83
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
if (props.model.isProject() && props.model.getChildrenByKind(models_1.ReflectionKind.Module).length) {
|
|
102
|
-
return;
|
|
84
|
+
function link(child, nameClasses) {
|
|
85
|
+
return (utils_1.JSX.createElement("a", { href: context.urlTo(child), class: (0, lib_1.classNames)({ current: child === props.model }, nameClasses) },
|
|
86
|
+
context.icons[child.kind](),
|
|
87
|
+
utils_1.JSX.createElement("span", null, (0, lib_1.wbr)((0, lib_1.getDisplayName)(child)))));
|
|
103
88
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
return
|
|
112
|
-
utils_1.JSX.createElement("a", { href: context.urlTo(child), class: "tsd-index-link" },
|
|
113
|
-
context.icons[child.kind](),
|
|
114
|
-
utils_1.JSX.createElement("span", null, (0, lib_1.renderName)(child)))));
|
|
115
|
-
});
|
|
116
|
-
if (effectivePageParent.kindOf(models_1.ReflectionKind.SomeModule | models_1.ReflectionKind.Project)) {
|
|
117
|
-
return (utils_1.JSX.createElement("nav", { class: "tsd-navigation secondary menu-sticky" }, !!pageNavigation.length && utils_1.JSX.createElement("ul", null, pageNavigation)));
|
|
89
|
+
function inPath(mod) {
|
|
90
|
+
let iter = props.model;
|
|
91
|
+
do {
|
|
92
|
+
if (iter == mod)
|
|
93
|
+
return true;
|
|
94
|
+
iter = iter.parent;
|
|
95
|
+
} while (iter);
|
|
96
|
+
return false;
|
|
118
97
|
}
|
|
119
|
-
return (utils_1.JSX.createElement("nav", { class: "tsd-navigation secondary menu-sticky" },
|
|
120
|
-
utils_1.JSX.createElement("ul", null,
|
|
121
|
-
utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({
|
|
122
|
-
deprecated: effectivePageParent.isDeprecated(),
|
|
123
|
-
current: effectivePageParent === props.model,
|
|
124
|
-
}, effectivePageParent instanceof models_1.DeclarationReflection
|
|
125
|
-
? context.getReflectionClasses(effectivePageParent)
|
|
126
|
-
: "") },
|
|
127
|
-
utils_1.JSX.createElement("a", { href: context.urlTo(effectivePageParent), class: "tsd-index-link" },
|
|
128
|
-
context.icons[effectivePageParent.kind](),
|
|
129
|
-
utils_1.JSX.createElement("span", null, (0, lib_1.renderName)(effectivePageParent))),
|
|
130
|
-
!!pageNavigation.length && utils_1.JSX.createElement("ul", null, pageNavigation)))));
|
|
131
98
|
}
|
|
132
|
-
exports.
|
|
133
|
-
function
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
99
|
+
exports.navigation = navigation;
|
|
100
|
+
function pageSidebar(context, props) {
|
|
101
|
+
return (utils_1.JSX.createElement(utils_1.JSX.Fragment, null,
|
|
102
|
+
context.settings(),
|
|
103
|
+
context.pageNavigation(props)));
|
|
104
|
+
}
|
|
105
|
+
exports.pageSidebar = pageSidebar;
|
|
106
|
+
function pageNavigation(context, props) {
|
|
107
|
+
const levels = [[]];
|
|
108
|
+
function finalizeLevel() {
|
|
109
|
+
const built = (utils_1.JSX.createElement("ul", null, levels.pop().map((l) => (utils_1.JSX.createElement("li", null, l)))));
|
|
110
|
+
levels[levels.length - 1].push(built);
|
|
111
|
+
}
|
|
112
|
+
for (const heading of props.pageHeadings) {
|
|
113
|
+
const inferredLevel = heading.level ? heading.level + 1 : 1;
|
|
114
|
+
while (inferredLevel < levels.length) {
|
|
115
|
+
finalizeLevel();
|
|
116
|
+
}
|
|
117
|
+
if (inferredLevel > levels.length) {
|
|
118
|
+
// Lower level than before
|
|
119
|
+
levels.push([]);
|
|
120
|
+
}
|
|
121
|
+
levels[levels.length - 1].push(utils_1.JSX.createElement("a", { href: heading.link, class: heading.classes },
|
|
122
|
+
heading.kind && context.icons[heading.kind](),
|
|
123
|
+
utils_1.JSX.createElement("span", null, (0, lib_1.wbr)(heading.text))));
|
|
124
|
+
}
|
|
125
|
+
while (levels.length > 1) {
|
|
126
|
+
finalizeLevel();
|
|
127
|
+
}
|
|
128
|
+
if (!levels[0].length) {
|
|
129
|
+
return utils_1.JSX.createElement(utils_1.JSX.Fragment, null);
|
|
140
130
|
}
|
|
141
|
-
return
|
|
131
|
+
return (utils_1.JSX.createElement("details", { open: true, class: "tsd-index-accordion tsd-page-navigation" },
|
|
132
|
+
utils_1.JSX.createElement("summary", { class: "tsd-accordion-summary" },
|
|
133
|
+
utils_1.JSX.createElement("h3", null,
|
|
134
|
+
context.icons.chevronDown(),
|
|
135
|
+
"On This Page")),
|
|
136
|
+
utils_1.JSX.createElement("div", { class: "tsd-accordion-details" },
|
|
137
|
+
utils_1.JSX.createElement("ul", null, levels[0].map((l) => (utils_1.JSX.createElement("li", null, l)))))));
|
|
142
138
|
}
|
|
139
|
+
exports.pageNavigation = pageNavigation;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.toolbar = void 0;
|
|
4
4
|
const utils_1 = require("../../../../utils");
|
|
5
|
+
const lib_1 = require("../../lib");
|
|
5
6
|
const toolbar = (context, props) => (utils_1.JSX.createElement("header", { class: "tsd-page-toolbar" },
|
|
6
7
|
utils_1.JSX.createElement("div", { class: "tsd-toolbar-contents container" },
|
|
7
8
|
utils_1.JSX.createElement("div", { class: "table-cell", id: "tsd-search", "data-base": context.relativeURL("./") },
|
|
@@ -13,7 +14,7 @@ const toolbar = (context, props) => (utils_1.JSX.createElement("header", { class
|
|
|
13
14
|
utils_1.JSX.createElement("ul", { class: "results" },
|
|
14
15
|
utils_1.JSX.createElement("li", { class: "state loading" }, "Preparing search index..."),
|
|
15
16
|
utils_1.JSX.createElement("li", { class: "state failure" }, "The search index is not available")),
|
|
16
|
-
utils_1.JSX.createElement("a", { href: context.options.getValue("titleLink") || context.relativeURL("index.html"), class: "title" }, props.project
|
|
17
|
+
utils_1.JSX.createElement("a", { href: context.options.getValue("titleLink") || context.relativeURL("index.html"), class: "title" }, (0, lib_1.getDisplayName)(props.project))),
|
|
17
18
|
utils_1.JSX.createElement("div", { class: "table-cell", id: "tsd-widgets" },
|
|
18
19
|
utils_1.JSX.createElement("a", { href: "#", class: "tsd-widget tsd-toolbar-icon menu no-caption", "data-toggle": "menu", "aria-label": "Menu" }, context.icons.menu())))));
|
|
19
20
|
exports.toolbar = toolbar;
|
|
@@ -15,7 +15,7 @@ export declare class Serializer extends EventDispatcher {
|
|
|
15
15
|
static EVENT_END: string;
|
|
16
16
|
private serializers;
|
|
17
17
|
/**
|
|
18
|
-
* Only set
|
|
18
|
+
* Only set when serializing.
|
|
19
19
|
*/
|
|
20
20
|
projectRoot: string;
|
|
21
21
|
addSerializer(serializer: SerializerComponent<any>): void;
|
|
@@ -7,7 +7,7 @@ import type { Options } from "./options";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare const EntryPointStrategy: {
|
|
9
9
|
/**
|
|
10
|
-
* The default behavior in v0.22
|
|
10
|
+
* The default behavior in v0.22+, expects all provided entry points as being part of a single program.
|
|
11
11
|
* Any directories included in the entry point list will result in `dir/index.([cm][tj]s|[tj]sx?)` being used.
|
|
12
12
|
*/
|
|
13
13
|
readonly Resolve: "resolve";
|
|
@@ -17,8 +17,8 @@ export declare const EntryPointStrategy: {
|
|
|
17
17
|
*/
|
|
18
18
|
readonly Expand: "expand";
|
|
19
19
|
/**
|
|
20
|
-
* Run TypeDoc in each directory passed as an entry point
|
|
21
|
-
*
|
|
20
|
+
* Run TypeDoc in each directory passed as an entry point. Once all directories have been converted,
|
|
21
|
+
* use the merge option to produce final output.
|
|
22
22
|
*/
|
|
23
23
|
readonly Packages: "packages";
|
|
24
24
|
/**
|
|
@@ -42,7 +42,7 @@ const general_1 = require("./general");
|
|
|
42
42
|
*/
|
|
43
43
|
exports.EntryPointStrategy = {
|
|
44
44
|
/**
|
|
45
|
-
* The default behavior in v0.22
|
|
45
|
+
* The default behavior in v0.22+, expects all provided entry points as being part of a single program.
|
|
46
46
|
* Any directories included in the entry point list will result in `dir/index.([cm][tj]s|[tj]sx?)` being used.
|
|
47
47
|
*/
|
|
48
48
|
Resolve: "resolve",
|
|
@@ -52,8 +52,8 @@ exports.EntryPointStrategy = {
|
|
|
52
52
|
*/
|
|
53
53
|
Expand: "expand",
|
|
54
54
|
/**
|
|
55
|
-
* Run TypeDoc in each directory passed as an entry point
|
|
56
|
-
*
|
|
55
|
+
* Run TypeDoc in each directory passed as an entry point. Once all directories have been converted,
|
|
56
|
+
* use the merge option to produce final output.
|
|
57
57
|
*/
|
|
58
58
|
Packages: "packages",
|
|
59
59
|
/**
|
|
@@ -315,7 +315,7 @@ function getEntryPointsForLegacyPackages(logger, packageGlobPaths, options) {
|
|
|
315
315
|
results.push({
|
|
316
316
|
displayName: typedocPackageConfig?.displayName ?? packageName,
|
|
317
317
|
version: includeVersion
|
|
318
|
-
? packageJson["version"]
|
|
318
|
+
? packageJson["version"]?.replace(/^v/, "")
|
|
319
319
|
: void 0,
|
|
320
320
|
readmeFile: discoverReadmeFile(logger, Path.join(packageJsonPath, ".."), typedocPackageConfig?.readmeFile),
|
|
321
321
|
program,
|
package/dist/lib/utils/fs.d.ts
CHANGED
|
@@ -53,6 +53,10 @@ export declare function discoverInParentDir<T extends {}>(name: string, dir: str
|
|
|
53
53
|
file: string;
|
|
54
54
|
content: T;
|
|
55
55
|
} | undefined;
|
|
56
|
+
export declare function discoverInParentDirExactMatch<T extends {}>(name: string, dir: string, read: (content: string) => T | undefined): {
|
|
57
|
+
file: string;
|
|
58
|
+
content: T;
|
|
59
|
+
} | undefined;
|
|
56
60
|
export declare function discoverPackageJson(dir: string): {
|
|
57
61
|
file: string;
|
|
58
62
|
content: {
|
|
@@ -61,3 +65,4 @@ export declare function discoverPackageJson(dir: string): {
|
|
|
61
65
|
name: string;
|
|
62
66
|
};
|
|
63
67
|
} | undefined;
|
|
68
|
+
export declare function findPackageForPath(sourcePath: string): string | undefined;
|
package/dist/lib/utils/fs.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.discoverPackageJson = exports.discoverInParentDir = exports.hasTsExtension = exports.glob = exports.copySync = exports.copy = exports.writeFile = exports.writeFileSync = exports.readFile = exports.normalizePath = exports.getCommonDirectory = exports.isDir = exports.isFile = void 0;
|
|
26
|
+
exports.findPackageForPath = exports.discoverPackageJson = exports.discoverInParentDirExactMatch = exports.discoverInParentDir = exports.hasTsExtension = exports.glob = exports.copySync = exports.copy = exports.writeFile = exports.writeFileSync = exports.readFile = exports.normalizePath = exports.getCommonDirectory = exports.isDir = exports.isFile = void 0;
|
|
27
27
|
const fs = __importStar(require("fs"));
|
|
28
28
|
const fs_1 = require("fs");
|
|
29
29
|
const minimatch_1 = require("minimatch");
|
|
@@ -287,8 +287,26 @@ function discoverInParentDir(name, dir, read) {
|
|
|
287
287
|
}
|
|
288
288
|
}
|
|
289
289
|
exports.discoverInParentDir = discoverInParentDir;
|
|
290
|
+
function discoverInParentDirExactMatch(name, dir, read) {
|
|
291
|
+
if (!isDir(dir))
|
|
292
|
+
return;
|
|
293
|
+
const reachedTopDirectory = (dirName) => dirName === (0, path_1.resolve)((0, path_1.join)(dirName, ".."));
|
|
294
|
+
while (!reachedTopDirectory(dir)) {
|
|
295
|
+
try {
|
|
296
|
+
const content = read(readFile((0, path_1.join)(dir, name)));
|
|
297
|
+
if (content != null) {
|
|
298
|
+
return { file: (0, path_1.join)(dir, name), content };
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
catch {
|
|
302
|
+
// Ignore, file didn't pass validation
|
|
303
|
+
}
|
|
304
|
+
dir = (0, path_1.resolve)((0, path_1.join)(dir, ".."));
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
exports.discoverInParentDirExactMatch = discoverInParentDirExactMatch;
|
|
290
308
|
function discoverPackageJson(dir) {
|
|
291
|
-
return
|
|
309
|
+
return discoverInParentDirExactMatch("package.json", dir, (content) => {
|
|
292
310
|
const pkg = JSON.parse(content);
|
|
293
311
|
if ((0, validation_1.validate)({ name: String, version: (0, validation_1.optional)(String) }, pkg)) {
|
|
294
312
|
return pkg;
|
|
@@ -296,3 +314,18 @@ function discoverPackageJson(dir) {
|
|
|
296
314
|
});
|
|
297
315
|
}
|
|
298
316
|
exports.discoverPackageJson = discoverPackageJson;
|
|
317
|
+
// dir -> package name according to package.json in this or some parent dir
|
|
318
|
+
const packageCache = new Map();
|
|
319
|
+
function findPackageForPath(sourcePath) {
|
|
320
|
+
const dir = (0, path_1.dirname)(sourcePath);
|
|
321
|
+
const cache = packageCache.get(dir);
|
|
322
|
+
if (cache) {
|
|
323
|
+
return cache;
|
|
324
|
+
}
|
|
325
|
+
const packageJson = discoverPackageJson(dir);
|
|
326
|
+
if (packageJson) {
|
|
327
|
+
packageCache.set(dir, packageJson.content.name);
|
|
328
|
+
return packageJson.content.name;
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
exports.findPackageForPath = findPackageForPath;
|
|
@@ -69,6 +69,7 @@ export interface TypeDocOptionMap {
|
|
|
69
69
|
excludeInternal: boolean;
|
|
70
70
|
excludePrivate: boolean;
|
|
71
71
|
excludeProtected: boolean;
|
|
72
|
+
excludeReferences: boolean;
|
|
72
73
|
externalSymbolLinkMappings: ManuallyValidatedOption<Record<string, Record<string, string>>>;
|
|
73
74
|
media: string;
|
|
74
75
|
includes: string;
|
|
@@ -190,6 +190,8 @@ export declare class Options {
|
|
|
190
190
|
/**
|
|
191
191
|
* Binds an option to the given property. Does not register the option.
|
|
192
192
|
*
|
|
193
|
+
* Note: This is a legacy experimental decorator, and will not work with TS 5.0 decorators
|
|
194
|
+
*
|
|
193
195
|
* @since v0.16.3
|
|
194
196
|
*/
|
|
195
197
|
export declare function BindOption<K extends keyof TypeDocOptionMap>(name: K): <IK extends PropertyKey>(target: ({
|
|
@@ -201,6 +203,9 @@ export declare function BindOption<K extends keyof TypeDocOptionMap>(name: K): <
|
|
|
201
203
|
}, key: IK) => void;
|
|
202
204
|
/**
|
|
203
205
|
* Binds an option to the given property. Does not register the option.
|
|
206
|
+
*
|
|
207
|
+
* Note: This is a legacy experimental decorator, and will not work with TS 5.0 decorators
|
|
208
|
+
*
|
|
204
209
|
* @since v0.16.3
|
|
205
210
|
*
|
|
206
211
|
* @privateRemarks
|
|
@@ -159,6 +159,11 @@ function addTypeDocOptions(options) {
|
|
|
159
159
|
help: "Ignore protected variables and methods.",
|
|
160
160
|
type: declaration_1.ParameterType.Boolean,
|
|
161
161
|
});
|
|
162
|
+
options.addDeclaration({
|
|
163
|
+
name: "excludeReferences",
|
|
164
|
+
help: "If a symbol is exported multiple times, ignore all but the first export.",
|
|
165
|
+
type: declaration_1.ParameterType.Boolean,
|
|
166
|
+
});
|
|
162
167
|
options.addDeclaration({
|
|
163
168
|
name: "externalSymbolLinkMappings",
|
|
164
169
|
help: "Define custom links for symbols not included in the documentation.",
|