typedoc 0.26.0-beta.1 → 0.26.0-beta.3
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/lib/application.d.ts +2 -0
- package/dist/lib/application.js +12 -3
- package/dist/lib/cli.js +1 -0
- package/dist/lib/converter/comments/declarationReference.d.ts +1 -0
- package/dist/lib/converter/comments/declarationReference.js +14 -0
- package/dist/lib/converter/comments/declarationReferenceResolver.js +4 -2
- package/dist/lib/converter/comments/discovery.js +9 -2
- package/dist/lib/converter/comments/index.d.ts +6 -5
- package/dist/lib/converter/comments/index.js +21 -21
- package/dist/lib/converter/comments/parser.d.ts +3 -2
- package/dist/lib/converter/comments/parser.js +26 -17
- package/dist/lib/converter/comments/textParser.d.ts +16 -0
- package/dist/lib/converter/comments/textParser.js +190 -0
- package/dist/lib/converter/context.d.ts +2 -2
- package/dist/lib/converter/context.js +13 -8
- package/dist/lib/converter/converter.d.ts +4 -2
- package/dist/lib/converter/converter.js +65 -15
- package/dist/lib/converter/factories/index-signature.js +1 -1
- package/dist/lib/converter/plugins/CategoryPlugin.js +3 -5
- package/dist/lib/converter/plugins/CommentPlugin.js +20 -0
- package/dist/lib/converter/plugins/PackagePlugin.js +1 -1
- package/dist/lib/converter/symbols.js +27 -7
- package/dist/lib/converter/types.js +30 -3
- package/dist/lib/converter/utils/base-path.js +11 -6
- package/dist/lib/converter/utils/repository.js +2 -2
- package/dist/lib/internationalization/internationalization.js +1 -2
- package/dist/lib/internationalization/locales/ko.cjs +79 -0
- package/dist/lib/internationalization/locales/ko.d.cts +78 -0
- package/dist/lib/internationalization/translatable.d.ts +12 -1
- package/dist/lib/internationalization/translatable.js +12 -1
- package/dist/lib/models/FileRegistry.d.ts +26 -0
- package/dist/lib/models/FileRegistry.js +136 -0
- package/dist/lib/models/comments/comment.d.ts +57 -10
- package/dist/lib/models/comments/comment.js +32 -71
- package/dist/lib/models/comments/index.d.ts +1 -1
- package/dist/lib/models/index.d.ts +1 -0
- package/dist/lib/models/index.js +1 -0
- package/dist/lib/models/reflections/ReflectionSymbolId.js +1 -1
- package/dist/lib/models/reflections/abstract.js +1 -1
- package/dist/lib/models/reflections/document.d.ts +6 -1
- package/dist/lib/models/reflections/document.js +12 -2
- package/dist/lib/models/reflections/kind.d.ts +2 -0
- package/dist/lib/models/reflections/kind.js +3 -1
- package/dist/lib/models/reflections/project.d.ts +7 -2
- package/dist/lib/models/reflections/project.js +52 -40
- package/dist/lib/models/reflections/signature.js +9 -2
- package/dist/lib/models/types.d.ts +9 -1
- package/dist/lib/models/types.js +7 -20
- package/dist/lib/output/components.d.ts +2 -0
- package/dist/lib/output/components.js +139 -66
- package/dist/lib/output/models/UrlMapping.d.ts +4 -0
- package/dist/lib/output/plugins/AssetsPlugin.js +5 -0
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +2 -2
- package/dist/lib/output/plugins/NavigationPlugin.js +1 -1
- package/dist/lib/output/plugins/SitemapPlugin.js +1 -1
- package/dist/lib/output/renderer.d.ts +24 -14
- package/dist/lib/output/renderer.js +17 -12
- package/dist/lib/output/theme.d.ts +0 -7
- package/dist/lib/output/theme.js +0 -8
- package/dist/lib/output/themes/MarkedPlugin.d.ts +1 -0
- package/dist/lib/output/themes/MarkedPlugin.js +91 -3
- package/dist/lib/output/themes/default/DefaultTheme.js +6 -3
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +4 -3
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +3 -1
- package/dist/lib/output/themes/default/layouts/default.js +10 -10
- package/dist/lib/output/themes/default/partials/comment.d.ts +1 -1
- package/dist/lib/output/themes/default/partials/comment.js +16 -11
- package/dist/lib/output/themes/default/partials/footer.js +3 -3
- package/dist/lib/output/themes/default/partials/index.js +1 -1
- package/dist/lib/output/themes/default/partials/member.declaration.js +30 -4
- package/dist/lib/output/themes/default/partials/member.signature.title.d.ts +2 -1
- package/dist/lib/output/themes/default/partials/member.signature.title.js +1 -2
- package/dist/lib/output/themes/default/partials/members.group.js +17 -10
- package/dist/lib/output/themes/default/partials/members.js +7 -3
- package/dist/lib/output/themes/default/partials/navigation.js +2 -2
- package/dist/lib/output/themes/default/partials/reflectionPreview.js +3 -2
- package/dist/lib/output/themes/default/partials/type.js +26 -2
- package/dist/lib/output/themes/default/partials/typeAndParent.js +2 -4
- package/dist/lib/output/themes/default/partials/typeParameters.js +1 -1
- package/dist/lib/serialization/deserializer.d.ts +8 -2
- package/dist/lib/serialization/deserializer.js +17 -8
- package/dist/lib/serialization/schema.d.ts +49 -13
- package/dist/lib/serialization/serializer.d.ts +1 -1
- package/dist/lib/utils/array.js +1 -1
- package/dist/lib/utils/entry-point.js +1 -1
- package/dist/lib/utils/events.d.ts +1 -1
- package/dist/lib/utils/events.js +1 -1
- package/dist/lib/utils/highlighter.d.ts +4 -2
- package/dist/lib/utils/highlighter.js +16 -5
- package/dist/lib/utils/html-entities.json +2324 -2231
- package/dist/lib/utils/html.d.ts +59 -1
- package/dist/lib/utils/html.js +577 -18
- package/dist/lib/utils/loggers.d.ts +0 -4
- package/dist/lib/utils/loggers.js +1 -7
- package/dist/lib/utils/options/declaration.d.ts +2 -0
- package/dist/lib/utils/options/help.js +1 -1
- package/dist/lib/utils/options/options.js +7 -6
- package/dist/lib/utils/options/readers/typedoc.js +0 -1
- package/dist/lib/utils/options/sources/typedoc.js +29 -0
- package/dist/lib/utils/options/tsdoc-defaults.d.ts +2 -2
- package/dist/lib/utils/options/tsdoc-defaults.js +2 -0
- package/dist/lib/utils/plugins.js +0 -1
- package/dist/lib/utils/set.d.ts +2 -1
- package/dist/lib/utils/set.js +8 -0
- package/dist/lib/utils/sort.js +4 -13
- package/package.json +11 -14
- package/static/main.js +4 -4
- package/static/style.css +5 -2
- package/tsdoc.json +8 -0
package/dist/lib/models/types.js
CHANGED
|
@@ -30,6 +30,7 @@ const tsutils_1 = require("../utils/tsutils");
|
|
|
30
30
|
const ReflectionSymbolId_1 = require("./reflections/ReflectionSymbolId");
|
|
31
31
|
const fs_1 = require("../utils/fs");
|
|
32
32
|
const kind_1 = require("./reflections/kind");
|
|
33
|
+
const comments_1 = require("./comments");
|
|
33
34
|
/**
|
|
34
35
|
* Base class of all type definitions.
|
|
35
36
|
* @category Types
|
|
@@ -748,7 +749,7 @@ class ReferenceType extends Type {
|
|
|
748
749
|
static createSymbolReference(symbol, context, name) {
|
|
749
750
|
const ref = new ReferenceType(name ?? symbol.name, new ReflectionSymbolId_1.ReflectionSymbolId(symbol), context.project, (0, tsutils_1.getQualifiedName)(symbol, name ?? symbol.name));
|
|
750
751
|
ref.refersToTypeParameter = !!(symbol.flags & ts.SymbolFlags.TypeParameter);
|
|
751
|
-
const symbolPath = symbol
|
|
752
|
+
const symbolPath = symbol.declarations?.[0]
|
|
752
753
|
?.getSourceFile()
|
|
753
754
|
.fileName.replace(/\\/g, "/");
|
|
754
755
|
if (!symbolPath)
|
|
@@ -826,7 +827,7 @@ class ReferenceType extends Type {
|
|
|
826
827
|
this._target = target.id;
|
|
827
828
|
}
|
|
828
829
|
else {
|
|
829
|
-
de.logger.warn(de.application.i18n.serialized_project_referenced_0_not_part_of_project(obj.target
|
|
830
|
+
de.logger.warn(de.application.i18n.serialized_project_referenced_0_not_part_of_project(JSON.stringify(obj.target)));
|
|
830
831
|
}
|
|
831
832
|
});
|
|
832
833
|
}
|
|
@@ -1092,7 +1093,6 @@ class UnionType extends Type {
|
|
|
1092
1093
|
super();
|
|
1093
1094
|
this.types = types;
|
|
1094
1095
|
this.type = "union";
|
|
1095
|
-
this.normalize();
|
|
1096
1096
|
}
|
|
1097
1097
|
getTypeString() {
|
|
1098
1098
|
return this.types
|
|
@@ -1127,29 +1127,16 @@ class UnionType extends Type {
|
|
|
1127
1127
|
};
|
|
1128
1128
|
return map[context];
|
|
1129
1129
|
}
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
for (let i = 0; i < this.types.length && (trueIndex === -1 || falseIndex === -1); i++) {
|
|
1134
|
-
const t = this.types[i];
|
|
1135
|
-
if (t instanceof LiteralType) {
|
|
1136
|
-
if (t.value === true) {
|
|
1137
|
-
trueIndex = i;
|
|
1138
|
-
}
|
|
1139
|
-
if (t.value === false) {
|
|
1140
|
-
falseIndex = i;
|
|
1141
|
-
}
|
|
1142
|
-
}
|
|
1143
|
-
}
|
|
1144
|
-
if (trueIndex !== -1 && falseIndex !== -1) {
|
|
1145
|
-
this.types.splice(Math.max(trueIndex, falseIndex), 1);
|
|
1146
|
-
this.types.splice(Math.min(trueIndex, falseIndex), 1, new IntrinsicType("boolean"));
|
|
1130
|
+
fromObject(de, obj) {
|
|
1131
|
+
if (obj.elementSummaries) {
|
|
1132
|
+
this.elementSummaries = obj.elementSummaries.map((parts) => comments_1.Comment.deserializeDisplayParts(de, parts));
|
|
1147
1133
|
}
|
|
1148
1134
|
}
|
|
1149
1135
|
toObject(serializer) {
|
|
1150
1136
|
return {
|
|
1151
1137
|
type: this.type,
|
|
1152
1138
|
types: this.types.map((t) => serializer.toObject(t)),
|
|
1139
|
+
elementSummaries: this.elementSummaries?.map((parts) => comments_1.Comment.serializeDisplayParts(serializer, parts)),
|
|
1153
1140
|
};
|
|
1154
1141
|
}
|
|
1155
1142
|
}
|
|
@@ -28,6 +28,8 @@ export declare abstract class ContextAwareRendererComponent extends RendererComp
|
|
|
28
28
|
* Regular expression to test if a string looks like an external url.
|
|
29
29
|
*/
|
|
30
30
|
protected urlPrefix: RegExp;
|
|
31
|
+
private get hostedBaseUrl();
|
|
32
|
+
private accessor useHostedBaseUrlForAbsoluteLinks;
|
|
31
33
|
/**
|
|
32
34
|
* Create a new ContextAwareRendererPlugin instance.
|
|
33
35
|
*
|
|
@@ -15,6 +15,40 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
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
|
+
};
|
|
18
52
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
53
|
if (mod && mod.__esModule) return mod;
|
|
20
54
|
var result = {};
|
|
@@ -22,82 +56,121 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
56
|
__setModuleDefault(result, mod);
|
|
23
57
|
return result;
|
|
24
58
|
};
|
|
59
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
60
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
61
|
+
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");
|
|
62
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
63
|
+
};
|
|
64
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
65
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
66
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
67
|
+
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");
|
|
68
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
69
|
+
};
|
|
25
70
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
71
|
exports.ContextAwareRendererComponent = exports.RendererComponent = exports.Component = void 0;
|
|
27
72
|
const Path = __importStar(require("path"));
|
|
28
73
|
const component_1 = require("../utils/component");
|
|
29
74
|
Object.defineProperty(exports, "Component", { enumerable: true, get: function () { return component_1.Component; } });
|
|
30
75
|
const events_1 = require("./events");
|
|
76
|
+
const utils_1 = require("../utils");
|
|
31
77
|
class RendererComponent extends component_1.AbstractComponent {
|
|
32
78
|
}
|
|
33
79
|
exports.RendererComponent = RendererComponent;
|
|
34
80
|
/**
|
|
35
81
|
* A plugin for the renderer that reads the current render context.
|
|
36
82
|
*/
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
}
|
|
83
|
+
let ContextAwareRendererComponent = (() => {
|
|
84
|
+
var _a, _ContextAwareRendererComponent_useHostedBaseUrlForAbsoluteLinks_accessor_storage;
|
|
85
|
+
let _classSuper = RendererComponent;
|
|
86
|
+
let _useHostedBaseUrlForAbsoluteLinks_decorators;
|
|
87
|
+
let _useHostedBaseUrlForAbsoluteLinks_initializers = [];
|
|
88
|
+
let _useHostedBaseUrlForAbsoluteLinks_extraInitializers = [];
|
|
89
|
+
return _a = class ContextAwareRendererComponent extends _classSuper {
|
|
90
|
+
constructor() {
|
|
91
|
+
super(...arguments);
|
|
92
|
+
/**
|
|
93
|
+
* The url of the document that is being currently generated.
|
|
94
|
+
* Set when a page begins rendering.
|
|
95
|
+
*
|
|
96
|
+
* Defaulted to '.' so that tests don't have to set up events.
|
|
97
|
+
*/
|
|
98
|
+
this.location = ".";
|
|
99
|
+
/**
|
|
100
|
+
* Regular expression to test if a string looks like an external url.
|
|
101
|
+
*/
|
|
102
|
+
this.urlPrefix = /^(http|ftp)s?:\/\//;
|
|
103
|
+
_ContextAwareRendererComponent_useHostedBaseUrlForAbsoluteLinks_accessor_storage.set(this, __runInitializers(this, _useHostedBaseUrlForAbsoluteLinks_initializers, void 0));
|
|
104
|
+
this.absoluteToRelativePathMap = (__runInitializers(this, _useHostedBaseUrlForAbsoluteLinks_extraInitializers), new Map());
|
|
105
|
+
}
|
|
106
|
+
get hostedBaseUrl() {
|
|
107
|
+
const url = this.application.options.getValue("hostedBaseUrl");
|
|
108
|
+
return !url || url.endsWith("/") ? url : url + "/";
|
|
109
|
+
}
|
|
110
|
+
get useHostedBaseUrlForAbsoluteLinks() { return __classPrivateFieldGet(this, _ContextAwareRendererComponent_useHostedBaseUrlForAbsoluteLinks_accessor_storage, "f"); }
|
|
111
|
+
set useHostedBaseUrlForAbsoluteLinks(value) { __classPrivateFieldSet(this, _ContextAwareRendererComponent_useHostedBaseUrlForAbsoluteLinks_accessor_storage, value, "f"); }
|
|
112
|
+
/**
|
|
113
|
+
* Create a new ContextAwareRendererPlugin instance.
|
|
114
|
+
*
|
|
115
|
+
* @param renderer The renderer this plugin should be attached to.
|
|
116
|
+
*/
|
|
117
|
+
initialize() {
|
|
118
|
+
this.listenTo(this.owner, {
|
|
119
|
+
[events_1.RendererEvent.BEGIN]: this.onBeginRenderer,
|
|
120
|
+
[events_1.PageEvent.BEGIN]: this.onBeginPage,
|
|
121
|
+
[events_1.RendererEvent.END]: () => this.absoluteToRelativePathMap.clear(),
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Transform the given absolute path into a relative path.
|
|
126
|
+
*
|
|
127
|
+
* @param absolute The absolute path to transform.
|
|
128
|
+
* @returns A path relative to the document currently processed.
|
|
129
|
+
*/
|
|
130
|
+
getRelativeUrl(absolute) {
|
|
131
|
+
if (this.urlPrefix.test(absolute)) {
|
|
132
|
+
return absolute;
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
const key = `${this.location}:${absolute}`;
|
|
136
|
+
let path = this.absoluteToRelativePathMap.get(key);
|
|
137
|
+
if (path)
|
|
138
|
+
return path;
|
|
139
|
+
if (this.useHostedBaseUrlForAbsoluteLinks) {
|
|
140
|
+
path = new URL(absolute, this.hostedBaseUrl).toString();
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
path = Path.posix.relative(this.location, absolute) || ".";
|
|
144
|
+
}
|
|
145
|
+
this.absoluteToRelativePathMap.set(key, path);
|
|
146
|
+
return path;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Triggered before the renderer starts rendering a project.
|
|
151
|
+
*
|
|
152
|
+
* @param event An event object describing the current render operation.
|
|
153
|
+
*/
|
|
154
|
+
onBeginRenderer(event) {
|
|
155
|
+
this.project = event.project;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Triggered before a document will be rendered.
|
|
159
|
+
*
|
|
160
|
+
* @param page An event object describing the current render operation.
|
|
161
|
+
*/
|
|
162
|
+
onBeginPage(page) {
|
|
163
|
+
this.location = Path.posix.dirname(page.url);
|
|
164
|
+
this.page = page;
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
_ContextAwareRendererComponent_useHostedBaseUrlForAbsoluteLinks_accessor_storage = new WeakMap(),
|
|
168
|
+
(() => {
|
|
169
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
170
|
+
_useHostedBaseUrlForAbsoluteLinks_decorators = [(0, utils_1.Option)("useHostedBaseUrlForAbsoluteLinks")];
|
|
171
|
+
__esDecorate(_a, null, _useHostedBaseUrlForAbsoluteLinks_decorators, { kind: "accessor", name: "useHostedBaseUrlForAbsoluteLinks", static: false, private: false, access: { has: obj => "useHostedBaseUrlForAbsoluteLinks" in obj, get: obj => obj.useHostedBaseUrlForAbsoluteLinks, set: (obj, value) => { obj.useHostedBaseUrlForAbsoluteLinks = value; } }, metadata: _metadata }, _useHostedBaseUrlForAbsoluteLinks_initializers, _useHostedBaseUrlForAbsoluteLinks_extraInitializers);
|
|
172
|
+
if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
173
|
+
})(),
|
|
174
|
+
_a;
|
|
175
|
+
})();
|
|
103
176
|
exports.ContextAwareRendererComponent = ContextAwareRendererComponent;
|
|
@@ -6,4 +6,8 @@ export declare class UrlMapping<Model = any> {
|
|
|
6
6
|
template: RenderTemplate<PageEvent<Model>>;
|
|
7
7
|
constructor(url: string, model: Model, template: RenderTemplate<PageEvent<Model>>);
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* @param data the reflection to render
|
|
11
|
+
* @returns either a string to be written to the file, or an element to be serialized and then written.
|
|
12
|
+
*/
|
|
9
13
|
export type RenderTemplate<T> = (data: T) => JSX.Element | string;
|
|
@@ -107,6 +107,11 @@ let AssetsPlugin = (() => {
|
|
|
107
107
|
const dest = (0, path_1.join)(event.outputDirectory, "assets");
|
|
108
108
|
(0, fs_1.copySync)(src, dest);
|
|
109
109
|
(0, fs_1.writeFileSync)((0, path_1.join)(dest, "highlight.css"), (0, highlighter_1.getStyles)());
|
|
110
|
+
const media = (0, path_1.join)(event.outputDirectory, "media");
|
|
111
|
+
const toCopy = event.project.files.getNameToAbsoluteMap();
|
|
112
|
+
for (const [fileName, absolute] of toCopy.entries()) {
|
|
113
|
+
(0, fs_1.copySync)(absolute, (0, path_1.join)(media, fileName));
|
|
114
|
+
}
|
|
110
115
|
}
|
|
111
116
|
}
|
|
112
117
|
constructor() {
|
|
@@ -121,7 +121,7 @@ let JavascriptIndexPlugin = (() => {
|
|
|
121
121
|
if (!(this.owner.theme instanceof DefaultTheme_1.DefaultTheme)) {
|
|
122
122
|
return;
|
|
123
123
|
}
|
|
124
|
-
if (event.isDefaultPrevented) {
|
|
124
|
+
if (event.isDefaultPrevented()) {
|
|
125
125
|
return;
|
|
126
126
|
}
|
|
127
127
|
this.owner.preRenderAsyncJobs.push((event) => this.buildSearchIndex(event));
|
|
@@ -138,7 +138,7 @@ let JavascriptIndexPlugin = (() => {
|
|
|
138
138
|
});
|
|
139
139
|
const indexEvent = new events_1.IndexEvent(events_1.IndexEvent.PREPARE_INDEX, initialSearchResults);
|
|
140
140
|
this.owner.trigger(indexEvent);
|
|
141
|
-
if (indexEvent.isDefaultPrevented) {
|
|
141
|
+
if (indexEvent.isDefaultPrevented()) {
|
|
142
142
|
return;
|
|
143
143
|
}
|
|
144
144
|
const builder = new lunr_1.Builder();
|
|
@@ -84,7 +84,7 @@ let NavigationPlugin = (() => {
|
|
|
84
84
|
if (!(this.owner.theme instanceof DefaultTheme_1.DefaultTheme)) {
|
|
85
85
|
return;
|
|
86
86
|
}
|
|
87
|
-
if (event.isDefaultPrevented) {
|
|
87
|
+
if (event.isDefaultPrevented()) {
|
|
88
88
|
return;
|
|
89
89
|
}
|
|
90
90
|
this.owner.preRenderAsyncJobs.push((event) => this.buildNavigationIndex(event));
|
|
@@ -67,7 +67,7 @@ let SitemapPlugin = (() => {
|
|
|
67
67
|
if (!(this.owner.theme instanceof DefaultTheme_1.DefaultTheme)) {
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
|
-
if (event.isDefaultPrevented || !this.hostedBaseUrl) {
|
|
70
|
+
if (event.isDefaultPrevented() || !this.hostedBaseUrl) {
|
|
71
71
|
return;
|
|
72
72
|
}
|
|
73
73
|
this.owner.hooks.on("head.begin", (context) => {
|
|
@@ -5,7 +5,7 @@ import type { ProjectReflection } from "../models/reflections/project";
|
|
|
5
5
|
import { RendererComponent } from "./components";
|
|
6
6
|
import { ChildableComponent } from "../utils/component";
|
|
7
7
|
import { EventHooks } from "../utils";
|
|
8
|
-
import
|
|
8
|
+
import { type Comment, Reflection } from "../models";
|
|
9
9
|
import type { JsxElement } from "../utils/jsx.elements";
|
|
10
10
|
import type { DefaultThemeRenderContext } from "./themes/default/DefaultThemeRenderContext";
|
|
11
11
|
/**
|
|
@@ -61,6 +61,21 @@ export interface RendererHooks {
|
|
|
61
61
|
* Applied immediately after the "Generated by TypeDoc" link in the footer.
|
|
62
62
|
*/
|
|
63
63
|
"footer.end": [DefaultThemeRenderContext];
|
|
64
|
+
/**
|
|
65
|
+
* Applied immediately before a comment's tags are rendered.
|
|
66
|
+
*
|
|
67
|
+
* This may be used to set {@link CommentTag.skipRendering} on any tags which
|
|
68
|
+
* should not be rendered.
|
|
69
|
+
*/
|
|
70
|
+
"comment.beforeTags": [DefaultThemeRenderContext, Comment, Reflection];
|
|
71
|
+
/**
|
|
72
|
+
* Applied immediately after a comment's tags are rendered.
|
|
73
|
+
*
|
|
74
|
+
* This may be used to set {@link CommentTag.skipRendering} on any tags which
|
|
75
|
+
* should not be rendered as this hook is called before the tags are actually
|
|
76
|
+
* rendered.
|
|
77
|
+
*/
|
|
78
|
+
"comment.afterTags": [DefaultThemeRenderContext, Comment, Reflection];
|
|
64
79
|
}
|
|
65
80
|
/**
|
|
66
81
|
* The renderer processes a {@link ProjectReflection} using a {@link Theme} instance and writes
|
|
@@ -142,21 +157,16 @@ export declare class Renderer extends ChildableComponent<Application, RendererCo
|
|
|
142
157
|
*/
|
|
143
158
|
hooks: EventHooks<RendererHooks, JsxElement>;
|
|
144
159
|
/** @internal */
|
|
145
|
-
accessor themeName
|
|
146
|
-
|
|
147
|
-
accessor
|
|
148
|
-
|
|
149
|
-
accessor cname: string;
|
|
150
|
-
/** @internal */
|
|
151
|
-
accessor githubPages: boolean;
|
|
160
|
+
private accessor themeName;
|
|
161
|
+
private accessor cleanOutputDir;
|
|
162
|
+
private accessor cname;
|
|
163
|
+
private accessor githubPages;
|
|
152
164
|
/** @internal */
|
|
153
165
|
accessor cacheBust: boolean;
|
|
154
|
-
|
|
155
|
-
accessor
|
|
156
|
-
|
|
157
|
-
accessor
|
|
158
|
-
/** @internal */
|
|
159
|
-
accessor pretty: boolean;
|
|
166
|
+
private accessor lightTheme;
|
|
167
|
+
private accessor darkTheme;
|
|
168
|
+
private accessor highlightLanguages;
|
|
169
|
+
private accessor pretty;
|
|
160
170
|
renderStartTime: number;
|
|
161
171
|
/**
|
|
162
172
|
* Define a new theme that can be used to render output.
|
|
@@ -128,7 +128,7 @@ const jsx_1 = require("../utils/jsx");
|
|
|
128
128
|
* @document ../../../internal-docs/custom-themes.md
|
|
129
129
|
*/
|
|
130
130
|
let Renderer = (() => {
|
|
131
|
-
var _Renderer_themeName_accessor_storage, _Renderer_cleanOutputDir_accessor_storage, _Renderer_cname_accessor_storage, _Renderer_githubPages_accessor_storage, _Renderer_cacheBust_accessor_storage, _Renderer_lightTheme_accessor_storage, _Renderer_darkTheme_accessor_storage, _Renderer_pretty_accessor_storage;
|
|
131
|
+
var _Renderer_themeName_accessor_storage, _Renderer_cleanOutputDir_accessor_storage, _Renderer_cname_accessor_storage, _Renderer_githubPages_accessor_storage, _Renderer_cacheBust_accessor_storage, _Renderer_lightTheme_accessor_storage, _Renderer_darkTheme_accessor_storage, _Renderer_highlightLanguages_accessor_storage, _Renderer_pretty_accessor_storage;
|
|
132
132
|
let _classDecorators = [(0, component_1.Component)({ name: "renderer", internal: true, childClass: components_1.RendererComponent })];
|
|
133
133
|
let _classDescriptor;
|
|
134
134
|
let _classExtraInitializers = [];
|
|
@@ -155,6 +155,9 @@ let Renderer = (() => {
|
|
|
155
155
|
let _darkTheme_decorators;
|
|
156
156
|
let _darkTheme_initializers = [];
|
|
157
157
|
let _darkTheme_extraInitializers = [];
|
|
158
|
+
let _highlightLanguages_decorators;
|
|
159
|
+
let _highlightLanguages_initializers = [];
|
|
160
|
+
let _highlightLanguages_extraInitializers = [];
|
|
158
161
|
let _pretty_decorators;
|
|
159
162
|
let _pretty_initializers = [];
|
|
160
163
|
let _pretty_extraInitializers = [];
|
|
@@ -200,31 +203,28 @@ let Renderer = (() => {
|
|
|
200
203
|
_Renderer_cacheBust_accessor_storage.set(this, (__runInitializers(this, _githubPages_extraInitializers), __runInitializers(this, _cacheBust_initializers, void 0)));
|
|
201
204
|
_Renderer_lightTheme_accessor_storage.set(this, (__runInitializers(this, _cacheBust_extraInitializers), __runInitializers(this, _lightTheme_initializers, void 0)));
|
|
202
205
|
_Renderer_darkTheme_accessor_storage.set(this, (__runInitializers(this, _lightTheme_extraInitializers), __runInitializers(this, _darkTheme_initializers, void 0)));
|
|
203
|
-
|
|
206
|
+
_Renderer_highlightLanguages_accessor_storage.set(this, (__runInitializers(this, _darkTheme_extraInitializers), __runInitializers(this, _highlightLanguages_initializers, void 0)));
|
|
207
|
+
_Renderer_pretty_accessor_storage.set(this, (__runInitializers(this, _highlightLanguages_extraInitializers), __runInitializers(this, _pretty_initializers, void 0)));
|
|
204
208
|
this.renderStartTime = (__runInitializers(this, _pretty_extraInitializers), -1);
|
|
205
209
|
}
|
|
206
210
|
/** @internal */
|
|
207
211
|
get themeName() { return __classPrivateFieldGet(this, _Renderer_themeName_accessor_storage, "f"); }
|
|
208
212
|
set themeName(value) { __classPrivateFieldSet(this, _Renderer_themeName_accessor_storage, value, "f"); }
|
|
209
|
-
/** @internal */
|
|
210
213
|
get cleanOutputDir() { return __classPrivateFieldGet(this, _Renderer_cleanOutputDir_accessor_storage, "f"); }
|
|
211
214
|
set cleanOutputDir(value) { __classPrivateFieldSet(this, _Renderer_cleanOutputDir_accessor_storage, value, "f"); }
|
|
212
|
-
/** @internal */
|
|
213
215
|
get cname() { return __classPrivateFieldGet(this, _Renderer_cname_accessor_storage, "f"); }
|
|
214
216
|
set cname(value) { __classPrivateFieldSet(this, _Renderer_cname_accessor_storage, value, "f"); }
|
|
215
|
-
/** @internal */
|
|
216
217
|
get githubPages() { return __classPrivateFieldGet(this, _Renderer_githubPages_accessor_storage, "f"); }
|
|
217
218
|
set githubPages(value) { __classPrivateFieldSet(this, _Renderer_githubPages_accessor_storage, value, "f"); }
|
|
218
219
|
/** @internal */
|
|
219
220
|
get cacheBust() { return __classPrivateFieldGet(this, _Renderer_cacheBust_accessor_storage, "f"); }
|
|
220
221
|
set cacheBust(value) { __classPrivateFieldSet(this, _Renderer_cacheBust_accessor_storage, value, "f"); }
|
|
221
|
-
/** @internal */
|
|
222
222
|
get lightTheme() { return __classPrivateFieldGet(this, _Renderer_lightTheme_accessor_storage, "f"); }
|
|
223
223
|
set lightTheme(value) { __classPrivateFieldSet(this, _Renderer_lightTheme_accessor_storage, value, "f"); }
|
|
224
|
-
/** @internal */
|
|
225
224
|
get darkTheme() { return __classPrivateFieldGet(this, _Renderer_darkTheme_accessor_storage, "f"); }
|
|
226
225
|
set darkTheme(value) { __classPrivateFieldSet(this, _Renderer_darkTheme_accessor_storage, value, "f"); }
|
|
227
|
-
|
|
226
|
+
get highlightLanguages() { return __classPrivateFieldGet(this, _Renderer_highlightLanguages_accessor_storage, "f"); }
|
|
227
|
+
set highlightLanguages(value) { __classPrivateFieldSet(this, _Renderer_highlightLanguages_accessor_storage, value, "f"); }
|
|
228
228
|
get pretty() { return __classPrivateFieldGet(this, _Renderer_pretty_accessor_storage, "f"); }
|
|
229
229
|
set pretty(value) { __classPrivateFieldSet(this, _Renderer_pretty_accessor_storage, value, "f"); }
|
|
230
230
|
/**
|
|
@@ -258,7 +258,7 @@ let Renderer = (() => {
|
|
|
258
258
|
output.urls = this.theme.getUrls(project);
|
|
259
259
|
this.trigger(output);
|
|
260
260
|
await this.runPreRenderJobs(output);
|
|
261
|
-
if (!output.isDefaultPrevented) {
|
|
261
|
+
if (!output.isDefaultPrevented()) {
|
|
262
262
|
this.application.logger.verbose(`There are ${output.urls.length} pages to write.`);
|
|
263
263
|
output.urls.forEach((mapping) => {
|
|
264
264
|
this.renderDocument(...output.createPageEvent(mapping));
|
|
@@ -279,7 +279,9 @@ let Renderer = (() => {
|
|
|
279
279
|
this.application.logger.verbose(`Pre render async jobs took ${Date.now() - start}ms`);
|
|
280
280
|
}
|
|
281
281
|
async loadHighlighter() {
|
|
282
|
-
await (0, highlighter_1.loadHighlighter)(this.lightTheme, this.darkTheme
|
|
282
|
+
await (0, highlighter_1.loadHighlighter)(this.lightTheme, this.darkTheme,
|
|
283
|
+
// Checked in option validation
|
|
284
|
+
this.highlightLanguages);
|
|
283
285
|
}
|
|
284
286
|
/**
|
|
285
287
|
* Render a single page.
|
|
@@ -290,7 +292,7 @@ let Renderer = (() => {
|
|
|
290
292
|
renderDocument(template, page) {
|
|
291
293
|
const momento = this.hooks.saveMomento();
|
|
292
294
|
this.trigger(events_1.PageEvent.BEGIN, page);
|
|
293
|
-
if (page.isDefaultPrevented) {
|
|
295
|
+
if (page.isDefaultPrevented()) {
|
|
294
296
|
this.hooks.restoreMomento(momento);
|
|
295
297
|
return false;
|
|
296
298
|
}
|
|
@@ -302,7 +304,7 @@ let Renderer = (() => {
|
|
|
302
304
|
}
|
|
303
305
|
this.trigger(events_1.PageEvent.END, page);
|
|
304
306
|
this.hooks.restoreMomento(momento);
|
|
305
|
-
if (page.isDefaultPrevented) {
|
|
307
|
+
if (page.isDefaultPrevented()) {
|
|
306
308
|
return false;
|
|
307
309
|
}
|
|
308
310
|
try {
|
|
@@ -385,6 +387,7 @@ let Renderer = (() => {
|
|
|
385
387
|
_Renderer_cacheBust_accessor_storage = new WeakMap();
|
|
386
388
|
_Renderer_lightTheme_accessor_storage = new WeakMap();
|
|
387
389
|
_Renderer_darkTheme_accessor_storage = new WeakMap();
|
|
390
|
+
_Renderer_highlightLanguages_accessor_storage = new WeakMap();
|
|
388
391
|
_Renderer_pretty_accessor_storage = new WeakMap();
|
|
389
392
|
__setFunctionName(_classThis, "Renderer");
|
|
390
393
|
(() => {
|
|
@@ -396,6 +399,7 @@ let Renderer = (() => {
|
|
|
396
399
|
_cacheBust_decorators = [(0, utils_1.Option)("cacheBust")];
|
|
397
400
|
_lightTheme_decorators = [(0, utils_1.Option)("lightHighlightTheme")];
|
|
398
401
|
_darkTheme_decorators = [(0, utils_1.Option)("darkHighlightTheme")];
|
|
402
|
+
_highlightLanguages_decorators = [(0, utils_1.Option)("highlightLanguages")];
|
|
399
403
|
_pretty_decorators = [(0, utils_1.Option)("pretty")];
|
|
400
404
|
__esDecorate(_classThis, null, _themeName_decorators, { kind: "accessor", name: "themeName", static: false, private: false, access: { has: obj => "themeName" in obj, get: obj => obj.themeName, set: (obj, value) => { obj.themeName = value; } }, metadata: _metadata }, _themeName_initializers, _themeName_extraInitializers);
|
|
401
405
|
__esDecorate(_classThis, null, _cleanOutputDir_decorators, { kind: "accessor", name: "cleanOutputDir", static: false, private: false, access: { has: obj => "cleanOutputDir" in obj, get: obj => obj.cleanOutputDir, set: (obj, value) => { obj.cleanOutputDir = value; } }, metadata: _metadata }, _cleanOutputDir_initializers, _cleanOutputDir_extraInitializers);
|
|
@@ -404,6 +408,7 @@ let Renderer = (() => {
|
|
|
404
408
|
__esDecorate(_classThis, null, _cacheBust_decorators, { kind: "accessor", name: "cacheBust", static: false, private: false, access: { has: obj => "cacheBust" in obj, get: obj => obj.cacheBust, set: (obj, value) => { obj.cacheBust = value; } }, metadata: _metadata }, _cacheBust_initializers, _cacheBust_extraInitializers);
|
|
405
409
|
__esDecorate(_classThis, null, _lightTheme_decorators, { kind: "accessor", name: "lightTheme", static: false, private: false, access: { has: obj => "lightTheme" in obj, get: obj => obj.lightTheme, set: (obj, value) => { obj.lightTheme = value; } }, metadata: _metadata }, _lightTheme_initializers, _lightTheme_extraInitializers);
|
|
406
410
|
__esDecorate(_classThis, null, _darkTheme_decorators, { kind: "accessor", name: "darkTheme", static: false, private: false, access: { has: obj => "darkTheme" in obj, get: obj => obj.darkTheme, set: (obj, value) => { obj.darkTheme = value; } }, metadata: _metadata }, _darkTheme_initializers, _darkTheme_extraInitializers);
|
|
411
|
+
__esDecorate(_classThis, null, _highlightLanguages_decorators, { kind: "accessor", name: "highlightLanguages", static: false, private: false, access: { has: obj => "highlightLanguages" in obj, get: obj => obj.highlightLanguages, set: (obj, value) => { obj.highlightLanguages = value; } }, metadata: _metadata }, _highlightLanguages_initializers, _highlightLanguages_extraInitializers);
|
|
407
412
|
__esDecorate(_classThis, null, _pretty_decorators, { kind: "accessor", name: "pretty", static: false, private: false, access: { has: obj => "pretty" in obj, get: obj => obj.pretty, set: (obj, value) => { obj.pretty = value; } }, metadata: _metadata }, _pretty_initializers, _pretty_extraInitializers);
|
|
408
413
|
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
409
414
|
Renderer = _classThis = _classDescriptor.value;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Renderer } from "./renderer";
|
|
2
1
|
import type { ProjectReflection } from "../models/reflections/project";
|
|
3
2
|
import type { RenderTemplate, UrlMapping } from "./models/UrlMapping";
|
|
4
3
|
import { RendererComponent } from "./components";
|
|
@@ -13,12 +12,6 @@ import type { Reflection } from "../models";
|
|
|
13
12
|
* {@link Renderer} to control and manipulate the output process.
|
|
14
13
|
*/
|
|
15
14
|
export declare abstract class Theme extends RendererComponent {
|
|
16
|
-
/**
|
|
17
|
-
* Create a new BaseTheme instance.
|
|
18
|
-
*
|
|
19
|
-
* @param renderer The renderer this theme is attached to.
|
|
20
|
-
*/
|
|
21
|
-
constructor(renderer: Renderer);
|
|
22
15
|
/**
|
|
23
16
|
* Map the models of the given project to the desired output files.
|
|
24
17
|
* It is assumed that with the project structure:
|
package/dist/lib/output/theme.js
CHANGED
|
@@ -56,14 +56,6 @@ let Theme = (() => {
|
|
|
56
56
|
let _classThis;
|
|
57
57
|
let _classSuper = components_1.RendererComponent;
|
|
58
58
|
var Theme = _classThis = class extends _classSuper {
|
|
59
|
-
/**
|
|
60
|
-
* Create a new BaseTheme instance.
|
|
61
|
-
*
|
|
62
|
-
* @param renderer The renderer this theme is attached to.
|
|
63
|
-
*/
|
|
64
|
-
constructor(renderer) {
|
|
65
|
-
super(renderer);
|
|
66
|
-
}
|
|
67
59
|
};
|
|
68
60
|
__setFunctionName(_classThis, "Theme");
|
|
69
61
|
(() => {
|
|
@@ -37,6 +37,7 @@ export declare class MarkedPlugin extends ContextAwareRendererComponent {
|
|
|
37
37
|
* @returns The resulting html string.
|
|
38
38
|
*/
|
|
39
39
|
parseMarkdown(input: string | readonly CommentDisplayPart[], page: PageEvent<any>, context: DefaultThemeRenderContext): string;
|
|
40
|
+
private displayPartsToMarkdown;
|
|
40
41
|
/**
|
|
41
42
|
* Triggered before the renderer starts rendering a project.
|
|
42
43
|
*
|