typedoc 0.25.0 → 0.25.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -1
- package/dist/lib/application.d.ts +3 -3
- package/dist/lib/application.js +440 -359
- package/dist/lib/cli.js +6 -3
- package/dist/lib/converter/comments/parser.js +5 -11
- package/dist/lib/converter/comments/tagName.d.ts +8 -0
- package/dist/lib/converter/comments/tagName.js +62 -0
- package/dist/lib/converter/context.js +1 -2
- package/dist/lib/converter/converter.d.ts +11 -11
- package/dist/lib/converter/converter.js +436 -311
- package/dist/lib/converter/factories/signature.js +3 -4
- package/dist/lib/converter/plugins/CategoryPlugin.d.ts +8 -8
- package/dist/lib/converter/plugins/CategoryPlugin.js +293 -200
- package/dist/lib/converter/plugins/CommentPlugin.d.ts +8 -5
- package/dist/lib/converter/plugins/CommentPlugin.js +433 -305
- package/dist/lib/converter/plugins/GroupPlugin.d.ts +3 -3
- package/dist/lib/converter/plugins/GroupPlugin.js +215 -145
- package/dist/lib/converter/plugins/ImplementsPlugin.js +239 -194
- package/dist/lib/converter/plugins/InheritDocPlugin.d.ts +1 -1
- package/dist/lib/converter/plugins/InheritDocPlugin.js +201 -138
- package/dist/lib/converter/plugins/LinkResolverPlugin.d.ts +1 -1
- package/dist/lib/converter/plugins/LinkResolverPlugin.js +110 -44
- package/dist/lib/converter/plugins/PackagePlugin.d.ts +6 -4
- package/dist/lib/converter/plugins/PackagePlugin.js +191 -96
- package/dist/lib/converter/plugins/SourcePlugin.d.ts +6 -6
- package/dist/lib/converter/plugins/SourcePlugin.js +234 -146
- package/dist/lib/converter/plugins/TypePlugin.js +147 -102
- package/dist/lib/converter/symbols.js +1 -1
- package/dist/lib/converter/types.js +10 -0
- package/dist/lib/converter/utils/repository.js +2 -2
- package/dist/lib/models/reflections/ReflectionSymbolId.js +1 -1
- package/dist/lib/models/reflections/abstract.d.ts +4 -0
- package/dist/lib/models/reflections/abstract.js +14 -2
- package/dist/lib/models/reflections/index.d.ts +1 -1
- package/dist/lib/output/components.d.ts +1 -0
- package/dist/lib/output/components.js +9 -1
- package/dist/lib/output/index.d.ts +1 -1
- package/dist/lib/output/plugins/AssetsPlugin.d.ts +1 -1
- package/dist/lib/output/plugins/AssetsPlugin.js +111 -44
- package/dist/lib/output/plugins/JavascriptIndexPlugin.d.ts +2 -1
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +173 -99
- package/dist/lib/output/plugins/NavigationPlugin.d.ts +6 -0
- package/dist/lib/output/plugins/NavigationPlugin.js +109 -0
- package/dist/lib/output/plugins/index.d.ts +2 -1
- package/dist/lib/output/plugins/index.js +5 -3
- package/dist/lib/output/renderer.d.ts +10 -8
- package/dist/lib/output/renderer.js +315 -202
- package/dist/lib/output/theme.js +63 -18
- package/dist/lib/output/themes/MarkedPlugin.d.ts +4 -4
- package/dist/lib/output/themes/MarkedPlugin.js +223 -145
- package/dist/lib/output/themes/default/DefaultTheme.d.ts +14 -1
- package/dist/lib/output/themes/default/DefaultTheme.js +68 -0
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +42 -36
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +15 -1
- package/dist/lib/output/themes/default/layouts/default.js +2 -0
- package/dist/lib/output/themes/default/partials/header.js +1 -1
- package/dist/lib/output/themes/default/partials/icon.d.ts +4 -1
- package/dist/lib/output/themes/default/partials/icon.js +40 -35
- package/dist/lib/output/themes/default/partials/member.signature.body.js +1 -1
- package/dist/lib/output/themes/default/partials/navigation.js +34 -67
- package/dist/lib/utils/component.d.ts +1 -1
- package/dist/lib/utils/component.js +3 -1
- package/dist/lib/utils/entry-point.js +27 -14
- package/dist/lib/utils/events.js +1 -1
- package/dist/lib/utils/general.js +1 -1
- package/dist/lib/utils/index.d.ts +1 -1
- package/dist/lib/utils/index.js +2 -1
- package/dist/lib/utils/jsx.js +1 -1
- package/dist/lib/utils/options/declaration.d.ts +2 -0
- package/dist/lib/utils/options/index.d.ts +1 -1
- package/dist/lib/utils/options/index.js +2 -1
- package/dist/lib/utils/options/options.d.ts +19 -0
- package/dist/lib/utils/options/options.js +22 -2
- package/dist/lib/utils/options/readers/tsconfig.js +2 -7
- package/dist/lib/utils/options/sources/typedoc.js +11 -0
- package/dist/lib/utils/perf.d.ts +1 -1
- package/dist/lib/utils/perf.js +10 -20
- package/package.json +1 -1
- package/static/main.js +4 -3
- package/static/style.css +7 -3
|
@@ -15,11 +15,39 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
19
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
20
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
21
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
22
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
23
|
+
var _, done = false;
|
|
24
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
25
|
+
var context = {};
|
|
26
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
27
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
28
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
29
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
30
|
+
if (kind === "accessor") {
|
|
31
|
+
if (result === void 0) continue;
|
|
32
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
33
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
34
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
35
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
36
|
+
}
|
|
37
|
+
else if (_ = accept(result)) {
|
|
38
|
+
if (kind === "field") initializers.unshift(_);
|
|
39
|
+
else descriptor[key] = _;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
43
|
+
done = true;
|
|
44
|
+
};
|
|
45
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
46
|
+
var useValue = arguments.length > 2;
|
|
47
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
48
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
49
|
+
}
|
|
50
|
+
return useValue ? value : void 0;
|
|
23
51
|
};
|
|
24
52
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
53
|
if (mod && mod.__esModule) return mod;
|
|
@@ -28,6 +56,21 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
28
56
|
__setModuleDefault(result, mod);
|
|
29
57
|
return result;
|
|
30
58
|
};
|
|
59
|
+
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
|
|
60
|
+
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
|
|
61
|
+
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
|
|
62
|
+
};
|
|
63
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
64
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
65
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
66
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
67
|
+
};
|
|
68
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
69
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
70
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
71
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
72
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
73
|
+
};
|
|
31
74
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
75
|
exports.JavascriptIndexPlugin = void 0;
|
|
33
76
|
const Path = __importStar(require("path"));
|
|
@@ -37,111 +80,142 @@ const components_1 = require("../components");
|
|
|
37
80
|
const events_1 = require("../events");
|
|
38
81
|
const utils_1 = require("../../utils");
|
|
39
82
|
const DefaultTheme_1 = require("../themes/default/DefaultTheme");
|
|
83
|
+
const zlib_1 = require("zlib");
|
|
84
|
+
const util_1 = require("util");
|
|
85
|
+
const gzipP = (0, util_1.promisify)(zlib_1.gzip);
|
|
40
86
|
/**
|
|
41
87
|
* A plugin that exports an index of the project to a javascript file.
|
|
42
88
|
*
|
|
43
89
|
* The resulting javascript file can be used to build a simple search function.
|
|
44
90
|
*/
|
|
45
|
-
let JavascriptIndexPlugin =
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
return;
|
|
91
|
+
let JavascriptIndexPlugin = (() => {
|
|
92
|
+
var _JavascriptIndexPlugin_searchComments_accessor_storage;
|
|
93
|
+
let _classDecorators = [(0, components_1.Component)({ name: "javascript-index" })];
|
|
94
|
+
let _classDescriptor;
|
|
95
|
+
let _classExtraInitializers = [];
|
|
96
|
+
let _classThis;
|
|
97
|
+
let _classSuper = components_1.RendererComponent;
|
|
98
|
+
let _instanceExtraInitializers = [];
|
|
99
|
+
let _searchComments_decorators;
|
|
100
|
+
let _searchComments_initializers = [];
|
|
101
|
+
var JavascriptIndexPlugin = _classThis = class extends _classSuper {
|
|
102
|
+
constructor() {
|
|
103
|
+
super(...arguments);
|
|
104
|
+
_JavascriptIndexPlugin_searchComments_accessor_storage.set(this, (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _searchComments_initializers, void 0)));
|
|
60
105
|
}
|
|
61
|
-
|
|
62
|
-
|
|
106
|
+
get searchComments() { return __classPrivateFieldGet(this, _JavascriptIndexPlugin_searchComments_accessor_storage, "f"); }
|
|
107
|
+
set searchComments(value) { __classPrivateFieldSet(this, _JavascriptIndexPlugin_searchComments_accessor_storage, value, "f"); }
|
|
108
|
+
/**
|
|
109
|
+
* Create a new JavascriptIndexPlugin instance.
|
|
110
|
+
*/
|
|
111
|
+
initialize() {
|
|
112
|
+
this.listenTo(this.owner, events_1.RendererEvent.BEGIN, this.onRendererBegin);
|
|
63
113
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
this.owner.trigger(indexEvent);
|
|
73
|
-
if (indexEvent.isDefaultPrevented) {
|
|
74
|
-
return;
|
|
75
|
-
}
|
|
76
|
-
const builder = new lunr_1.Builder();
|
|
77
|
-
builder.pipeline.add(lunr_1.trimmer);
|
|
78
|
-
builder.ref("id");
|
|
79
|
-
for (const [key, boost] of Object.entries(indexEvent.searchFieldWeights)) {
|
|
80
|
-
builder.field(key, { boost });
|
|
81
|
-
}
|
|
82
|
-
for (const reflection of indexEvent.searchResults) {
|
|
83
|
-
if (!reflection.url) {
|
|
84
|
-
continue;
|
|
114
|
+
/**
|
|
115
|
+
* Triggered after a document has been rendered, just before it is written to disc.
|
|
116
|
+
*
|
|
117
|
+
* @param event An event object describing the current render operation.
|
|
118
|
+
*/
|
|
119
|
+
onRendererBegin(event) {
|
|
120
|
+
if (!(this.owner.theme instanceof DefaultTheme_1.DefaultTheme)) {
|
|
121
|
+
return;
|
|
85
122
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
123
|
+
if (event.isDefaultPrevented) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
this.owner.preRenderAsyncJobs.push((event) => this.buildSearchIndex(event));
|
|
127
|
+
}
|
|
128
|
+
async buildSearchIndex(event) {
|
|
129
|
+
const theme = this.owner.theme;
|
|
130
|
+
const rows = [];
|
|
131
|
+
const initialSearchResults = Object.values(event.project.reflections).filter((refl) => {
|
|
132
|
+
return (refl instanceof models_1.DeclarationReflection &&
|
|
133
|
+
refl.url &&
|
|
134
|
+
refl.name &&
|
|
135
|
+
!refl.flags.isExternal);
|
|
136
|
+
});
|
|
137
|
+
const indexEvent = new events_1.IndexEvent(events_1.IndexEvent.PREPARE_INDEX, initialSearchResults);
|
|
138
|
+
this.owner.trigger(indexEvent);
|
|
139
|
+
if (indexEvent.isDefaultPrevented) {
|
|
140
|
+
return;
|
|
89
141
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
142
|
+
const builder = new lunr_1.Builder();
|
|
143
|
+
builder.pipeline.add(lunr_1.trimmer);
|
|
144
|
+
builder.ref("id");
|
|
145
|
+
for (const [key, boost] of Object.entries(indexEvent.searchFieldWeights)) {
|
|
146
|
+
builder.field(key, { boost });
|
|
93
147
|
}
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
148
|
+
for (const reflection of indexEvent.searchResults) {
|
|
149
|
+
if (!reflection.url) {
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
const boost = reflection.relevanceBoost ?? 1;
|
|
153
|
+
if (boost <= 0) {
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
let parent = reflection.parent;
|
|
157
|
+
if (parent instanceof models_1.ProjectReflection) {
|
|
158
|
+
parent = undefined;
|
|
159
|
+
}
|
|
160
|
+
const row = {
|
|
161
|
+
kind: reflection.kind,
|
|
162
|
+
name: reflection.name,
|
|
163
|
+
url: reflection.url,
|
|
164
|
+
classes: theme.getReflectionClasses(reflection),
|
|
165
|
+
};
|
|
166
|
+
if (parent) {
|
|
167
|
+
row.parent = parent.getFullName();
|
|
168
|
+
}
|
|
169
|
+
builder.add({
|
|
170
|
+
name: reflection.name,
|
|
171
|
+
comment: this.getCommentSearchText(reflection),
|
|
172
|
+
...indexEvent.searchFields[rows.length],
|
|
173
|
+
id: rows.length,
|
|
174
|
+
}, { boost });
|
|
175
|
+
rows.push(row);
|
|
102
176
|
}
|
|
103
|
-
builder.
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
}
|
|
109
|
-
|
|
177
|
+
const index = builder.build();
|
|
178
|
+
const jsonFileName = Path.join(event.outputDirectory, "assets", "search.js");
|
|
179
|
+
const jsonData = JSON.stringify({
|
|
180
|
+
rows,
|
|
181
|
+
index,
|
|
182
|
+
});
|
|
183
|
+
const data = await gzipP(Buffer.from(jsonData));
|
|
184
|
+
await (0, utils_1.writeFile)(jsonFileName, `window.searchData = "data:application/octet-stream;base64,${data.toString("base64")}";`);
|
|
110
185
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
return;
|
|
186
|
+
getCommentSearchText(reflection) {
|
|
187
|
+
if (!this.searchComments)
|
|
188
|
+
return;
|
|
189
|
+
const comments = [];
|
|
190
|
+
if (reflection.comment)
|
|
191
|
+
comments.push(reflection.comment);
|
|
192
|
+
reflection.signatures?.forEach((s) => s.comment && comments.push(s.comment));
|
|
193
|
+
reflection.getSignature?.comment &&
|
|
194
|
+
comments.push(reflection.getSignature.comment);
|
|
195
|
+
reflection.setSignature?.comment &&
|
|
196
|
+
comments.push(reflection.setSignature.comment);
|
|
197
|
+
if (!comments.length) {
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
return comments
|
|
201
|
+
.flatMap((c) => {
|
|
202
|
+
return [...c.summary, ...c.blockTags.flatMap((t) => t.content)];
|
|
203
|
+
})
|
|
204
|
+
.map((part) => part.text)
|
|
205
|
+
.join("\n");
|
|
132
206
|
}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
};
|
|
207
|
+
};
|
|
208
|
+
_JavascriptIndexPlugin_searchComments_accessor_storage = new WeakMap();
|
|
209
|
+
__setFunctionName(_classThis, "JavascriptIndexPlugin");
|
|
210
|
+
(() => {
|
|
211
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
212
|
+
_searchComments_decorators = [(0, utils_1.Option)("searchInComments")];
|
|
213
|
+
__esDecorate(_classThis, null, _searchComments_decorators, { kind: "accessor", name: "searchComments", static: false, private: false, access: { has: obj => "searchComments" in obj, get: obj => obj.searchComments, set: (obj, value) => { obj.searchComments = value; } }, metadata: _metadata }, _searchComments_initializers, _instanceExtraInitializers);
|
|
214
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
215
|
+
JavascriptIndexPlugin = _classThis = _classDescriptor.value;
|
|
216
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
217
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
218
|
+
})();
|
|
219
|
+
return JavascriptIndexPlugin = _classThis;
|
|
220
|
+
})();
|
|
141
221
|
exports.JavascriptIndexPlugin = JavascriptIndexPlugin;
|
|
142
|
-
__decorate([
|
|
143
|
-
(0, utils_1.BindOption)("searchInComments")
|
|
144
|
-
], JavascriptIndexPlugin.prototype, "searchComments", void 0);
|
|
145
|
-
exports.JavascriptIndexPlugin = JavascriptIndexPlugin = __decorate([
|
|
146
|
-
(0, components_1.Component)({ name: "javascript-index" })
|
|
147
|
-
], JavascriptIndexPlugin);
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
19
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
20
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
21
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
22
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
23
|
+
var _, done = false;
|
|
24
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
25
|
+
var context = {};
|
|
26
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
27
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
28
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
29
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
30
|
+
if (kind === "accessor") {
|
|
31
|
+
if (result === void 0) continue;
|
|
32
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
33
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
34
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
35
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
36
|
+
}
|
|
37
|
+
else if (_ = accept(result)) {
|
|
38
|
+
if (kind === "field") initializers.unshift(_);
|
|
39
|
+
else descriptor[key] = _;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
43
|
+
done = true;
|
|
44
|
+
};
|
|
45
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
46
|
+
var useValue = arguments.length > 2;
|
|
47
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
48
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
49
|
+
}
|
|
50
|
+
return useValue ? value : void 0;
|
|
51
|
+
};
|
|
52
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
53
|
+
if (mod && mod.__esModule) return mod;
|
|
54
|
+
var result = {};
|
|
55
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
56
|
+
__setModuleDefault(result, mod);
|
|
57
|
+
return result;
|
|
58
|
+
};
|
|
59
|
+
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
|
|
60
|
+
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
|
|
61
|
+
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
|
|
62
|
+
};
|
|
63
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
64
|
+
exports.NavigationPlugin = void 0;
|
|
65
|
+
const Path = __importStar(require("path"));
|
|
66
|
+
const components_1 = require("../components");
|
|
67
|
+
const events_1 = require("../events");
|
|
68
|
+
const utils_1 = require("../../utils");
|
|
69
|
+
const DefaultTheme_1 = require("../themes/default/DefaultTheme");
|
|
70
|
+
const zlib_1 = require("zlib");
|
|
71
|
+
const util_1 = require("util");
|
|
72
|
+
const gzipP = (0, util_1.promisify)(zlib_1.gzip);
|
|
73
|
+
let NavigationPlugin = (() => {
|
|
74
|
+
let _classDecorators = [(0, components_1.Component)({ name: "navigation-tree" })];
|
|
75
|
+
let _classDescriptor;
|
|
76
|
+
let _classExtraInitializers = [];
|
|
77
|
+
let _classThis;
|
|
78
|
+
let _classSuper = components_1.RendererComponent;
|
|
79
|
+
var NavigationPlugin = _classThis = class extends _classSuper {
|
|
80
|
+
initialize() {
|
|
81
|
+
this.listenTo(this.owner, events_1.RendererEvent.BEGIN, this.onRendererBegin);
|
|
82
|
+
}
|
|
83
|
+
onRendererBegin(event) {
|
|
84
|
+
if (!(this.owner.theme instanceof DefaultTheme_1.DefaultTheme)) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (event.isDefaultPrevented) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
this.owner.preRenderAsyncJobs.push((event) => this.buildNavigationIndex(event));
|
|
91
|
+
}
|
|
92
|
+
async buildNavigationIndex(event) {
|
|
93
|
+
const navigationJs = Path.join(event.outputDirectory, "assets", "navigation.js");
|
|
94
|
+
const nav = this.owner.theme.getNavigation(event.project);
|
|
95
|
+
const gz = await gzipP(Buffer.from(JSON.stringify(nav)));
|
|
96
|
+
await (0, utils_1.writeFile)(navigationJs, `window.navigationData = "data:application/octet-stream;base64,${gz.toString("base64")}"`);
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
__setFunctionName(_classThis, "NavigationPlugin");
|
|
100
|
+
(() => {
|
|
101
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
102
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
103
|
+
NavigationPlugin = _classThis = _classDescriptor.value;
|
|
104
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
105
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
106
|
+
})();
|
|
107
|
+
return NavigationPlugin = _classThis;
|
|
108
|
+
})();
|
|
109
|
+
exports.NavigationPlugin = NavigationPlugin;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { MarkedPlugin } from "../themes/MarkedPlugin";
|
|
1
2
|
export { AssetsPlugin } from "./AssetsPlugin";
|
|
2
3
|
export { JavascriptIndexPlugin } from "./JavascriptIndexPlugin";
|
|
3
|
-
export {
|
|
4
|
+
export { NavigationPlugin } from "./NavigationPlugin";
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.NavigationPlugin = exports.JavascriptIndexPlugin = exports.AssetsPlugin = exports.MarkedPlugin = void 0;
|
|
4
|
+
var MarkedPlugin_1 = require("../themes/MarkedPlugin");
|
|
5
|
+
Object.defineProperty(exports, "MarkedPlugin", { enumerable: true, get: function () { return MarkedPlugin_1.MarkedPlugin; } });
|
|
4
6
|
var AssetsPlugin_1 = require("./AssetsPlugin");
|
|
5
7
|
Object.defineProperty(exports, "AssetsPlugin", { enumerable: true, get: function () { return AssetsPlugin_1.AssetsPlugin; } });
|
|
6
8
|
var JavascriptIndexPlugin_1 = require("./JavascriptIndexPlugin");
|
|
7
9
|
Object.defineProperty(exports, "JavascriptIndexPlugin", { enumerable: true, get: function () { return JavascriptIndexPlugin_1.JavascriptIndexPlugin; } });
|
|
8
|
-
var
|
|
9
|
-
Object.defineProperty(exports, "
|
|
10
|
+
var NavigationPlugin_1 = require("./NavigationPlugin");
|
|
11
|
+
Object.defineProperty(exports, "NavigationPlugin", { enumerable: true, get: function () { return NavigationPlugin_1.NavigationPlugin; } });
|
|
@@ -132,21 +132,21 @@ export declare class Renderer extends ChildableComponent<Application, RendererCo
|
|
|
132
132
|
*/
|
|
133
133
|
hooks: EventHooks<RendererHooks, JsxElement>;
|
|
134
134
|
/** @internal */
|
|
135
|
-
themeName: string;
|
|
135
|
+
accessor themeName: string;
|
|
136
136
|
/** @internal */
|
|
137
|
-
cleanOutputDir: boolean;
|
|
137
|
+
accessor cleanOutputDir: boolean;
|
|
138
138
|
/** @internal */
|
|
139
|
-
cname: string;
|
|
139
|
+
accessor cname: string;
|
|
140
140
|
/** @internal */
|
|
141
|
-
githubPages: boolean;
|
|
141
|
+
accessor githubPages: boolean;
|
|
142
142
|
/** @internal */
|
|
143
|
-
cacheBust: boolean;
|
|
143
|
+
accessor cacheBust: boolean;
|
|
144
144
|
/** @internal */
|
|
145
|
-
lightTheme: ShikiTheme;
|
|
145
|
+
accessor lightTheme: ShikiTheme;
|
|
146
146
|
/** @internal */
|
|
147
|
-
darkTheme: ShikiTheme;
|
|
147
|
+
accessor darkTheme: ShikiTheme;
|
|
148
148
|
/** @internal */
|
|
149
|
-
pretty: boolean;
|
|
149
|
+
accessor pretty: boolean;
|
|
150
150
|
renderStartTime: number;
|
|
151
151
|
/**
|
|
152
152
|
* Define a new theme that can be used to render output.
|
|
@@ -163,6 +163,8 @@ export declare class Renderer extends ChildableComponent<Application, RendererCo
|
|
|
163
163
|
* @param outputDirectory The path of the directory the documentation should be rendered to.
|
|
164
164
|
*/
|
|
165
165
|
render(project: ProjectReflection, outputDirectory: string): Promise<void>;
|
|
166
|
+
private runPreRenderJobs;
|
|
167
|
+
private loadHighlighter;
|
|
166
168
|
/**
|
|
167
169
|
* Render a single page.
|
|
168
170
|
*
|