Comparing version 0.23.0-beta.5 to 0.23.0-beta.6
@@ -156,3 +156,3 @@ "use strict"; | ||
if (next.text === "@inheritdoc") { | ||
warning("The @inheritDoc tag should be properly capitalized."); | ||
warning("The @inheritDoc tag should be properly capitalized"); | ||
next.text = "@inheritDoc"; | ||
@@ -159,0 +159,0 @@ } |
@@ -13,3 +13,4 @@ import { DeclarationReflection } from "../../models"; | ||
categorizeByGroup: boolean; | ||
searchCategoryBoosts: Record<string, number> | undefined; | ||
boosts: Record<string, number>; | ||
usedBoosts: Set<string>; | ||
static defaultCategory: string; | ||
@@ -49,5 +50,3 @@ static WEIGHTS: string[]; | ||
*/ | ||
static getReflectionCategories(reflections: DeclarationReflection[], categorySearchBoosts: { | ||
[key: string]: number; | ||
} | undefined): ReflectionCategory[]; | ||
getReflectionCategories(reflections: DeclarationReflection[]): ReflectionCategory[]; | ||
/** | ||
@@ -62,3 +61,3 @@ * Return the category of a given reflection. | ||
*/ | ||
static getCategories(reflection: DeclarationReflection): Set<string>; | ||
getCategories(reflection: DeclarationReflection): Set<string>; | ||
/** | ||
@@ -65,0 +64,0 @@ * Callback used to sort categories by name. |
@@ -22,2 +22,6 @@ "use strict"; | ||
let CategoryPlugin = CategoryPlugin_1 = class CategoryPlugin extends components_1.ConverterComponent { | ||
constructor() { | ||
super(...arguments); | ||
this.usedBoosts = new Set(); | ||
} | ||
/** | ||
@@ -64,2 +68,11 @@ * Create a new CategoryPlugin instance. | ||
this.categorize(project); | ||
const unusedBoosts = new Set(Object.keys(this.boosts)); | ||
for (const boost of this.usedBoosts) { | ||
unusedBoosts.delete(boost); | ||
} | ||
this.usedBoosts.clear(); | ||
if (unusedBoosts.size) { | ||
context.logger.warn(`Not all categories specified in searchCategoryBoosts were used in the documentation.` + | ||
` The unused categories were:\n\t${Array.from(unusedBoosts).join("\n\t")}`); | ||
} | ||
} | ||
@@ -81,3 +94,3 @@ categorize(obj) { | ||
return; | ||
group.categories = CategoryPlugin_1.getReflectionCategories(group.children, this.searchCategoryBoosts); | ||
group.categories = this.getReflectionCategories(group.children); | ||
if (group.categories && group.categories.length > 1) { | ||
@@ -97,3 +110,3 @@ group.categories.sort(CategoryPlugin_1.sortCatCallback); | ||
} | ||
obj.categories = CategoryPlugin_1.getReflectionCategories(obj.children, this.searchCategoryBoosts); | ||
obj.categories = this.getReflectionCategories(obj.children); | ||
if (obj.categories && obj.categories.length > 1) { | ||
@@ -116,7 +129,7 @@ obj.categories.sort(CategoryPlugin_1.sortCatCallback); | ||
*/ | ||
static getReflectionCategories(reflections, categorySearchBoosts) { | ||
getReflectionCategories(reflections) { | ||
const categories = []; | ||
let defaultCat; | ||
reflections.forEach((child) => { | ||
const childCategories = CategoryPlugin_1.getCategories(child); | ||
const childCategories = this.getCategories(child); | ||
if (childCategories.size === 0) { | ||
@@ -135,7 +148,2 @@ if (!defaultCat) { | ||
let category = categories.find((cat) => cat.title === childCat); | ||
const catBoost = categorySearchBoosts?.[category?.title ?? -1]; | ||
if (catBoost != undefined) { | ||
child.relevanceBoost = | ||
(child.relevanceBoost ?? 1) * catBoost; | ||
} | ||
if (category) { | ||
@@ -161,3 +169,3 @@ category.children.push(child); | ||
*/ | ||
static getCategories(reflection) { | ||
getCategories(reflection) { | ||
const categories = new Set(); | ||
@@ -186,2 +194,9 @@ function extractCategoryTags(comment) { | ||
categories.delete(""); | ||
for (const cat of categories) { | ||
if (cat in this.boosts) { | ||
this.usedBoosts.add(cat); | ||
reflection.relevanceBoost = | ||
(reflection.relevanceBoost ?? 1) * this.boosts[cat]; | ||
} | ||
} | ||
return categories; | ||
@@ -231,3 +246,3 @@ } | ||
(0, utils_1.BindOption)("searchCategoryBoosts") | ||
], CategoryPlugin.prototype, "searchCategoryBoosts", void 0); | ||
], CategoryPlugin.prototype, "boosts", void 0); | ||
CategoryPlugin = CategoryPlugin_1 = __decorate([ | ||
@@ -234,0 +249,0 @@ (0, components_1.Component)({ name: "category" }) |
@@ -30,2 +30,4 @@ import { ReflectionKind, DeclarationReflection } from "../../models/reflections/index"; | ||
sortStrategies: SortStrategy[]; | ||
boosts: Record<string, number>; | ||
usedBoosts: Set<string>; | ||
/** | ||
@@ -55,3 +57,3 @@ * Create a new GroupPlugin instance. | ||
*/ | ||
static getGroups(reflection: DeclarationReflection): Set<string>; | ||
getGroups(reflection: DeclarationReflection): Set<string>; | ||
/** | ||
@@ -65,3 +67,3 @@ * Create a grouped representation of the given list of reflections. | ||
*/ | ||
static getReflectionGroups(reflections: DeclarationReflection[]): ReflectionGroup[]; | ||
getReflectionGroups(reflections: DeclarationReflection[]): ReflectionGroup[]; | ||
/** | ||
@@ -68,0 +70,0 @@ * Transform the internal typescript kind identifier into a human readable version. |
@@ -24,2 +24,6 @@ "use strict"; | ||
let GroupPlugin = GroupPlugin_1 = class GroupPlugin extends components_1.ConverterComponent { | ||
constructor() { | ||
super(...arguments); | ||
this.usedBoosts = new Set(); | ||
} | ||
/** | ||
@@ -53,2 +57,12 @@ * Create a new GroupPlugin instance. | ||
this.group(context.project); | ||
const unusedBoosts = new Set(Object.keys(this.boosts)); | ||
for (const boost of this.usedBoosts) { | ||
unusedBoosts.delete(boost); | ||
} | ||
this.usedBoosts.clear(); | ||
if (unusedBoosts.size && | ||
this.application.options.isSet("searchGroupBoosts")) { | ||
context.logger.warn(`Not all groups specified in searchGroupBoosts were used in the documentation.` + | ||
` The unused groups were:\n\t${Array.from(unusedBoosts).join("\n\t")}`); | ||
} | ||
} | ||
@@ -60,3 +74,3 @@ group(reflection) { | ||
(0, sort_1.sortReflections)(reflection.children, this.sortStrategies); | ||
reflection.groups = GroupPlugin_1.getReflectionGroups(reflection.children); | ||
reflection.groups = this.getReflectionGroups(reflection.children); | ||
} | ||
@@ -70,3 +84,3 @@ } | ||
*/ | ||
static getGroups(reflection) { | ||
getGroups(reflection) { | ||
const groups = new Set(); | ||
@@ -98,2 +112,9 @@ function extractGroupTags(comment) { | ||
} | ||
for (const group of groups) { | ||
if (group in this.boosts) { | ||
this.usedBoosts.add(group); | ||
reflection.relevanceBoost = | ||
(reflection.relevanceBoost ?? 1) * this.boosts[group]; | ||
} | ||
} | ||
return groups; | ||
@@ -109,6 +130,6 @@ } | ||
*/ | ||
static getReflectionGroups(reflections) { | ||
getReflectionGroups(reflections) { | ||
const groups = new Map(); | ||
reflections.forEach((child) => { | ||
for (const name of GroupPlugin_1.getGroups(child)) { | ||
for (const name of this.getGroups(child)) { | ||
let group = groups.get(name); | ||
@@ -184,2 +205,5 @@ if (!group) { | ||
], GroupPlugin.prototype, "sortStrategies", void 0); | ||
__decorate([ | ||
(0, utils_1.BindOption)("searchGroupBoosts") | ||
], GroupPlugin.prototype, "boosts", void 0); | ||
GroupPlugin = GroupPlugin_1 = __decorate([ | ||
@@ -186,0 +210,0 @@ (0, components_1.Component)({ name: "group" }) |
@@ -15,2 +15,4 @@ "use strict"; | ||
const array_1 = require("../../utils/array"); | ||
const declarationReference_1 = require("../comments/declarationReference"); | ||
const declarationReferenceResolver_1 = require("../comments/declarationReferenceResolver"); | ||
/** | ||
@@ -54,3 +56,4 @@ * A plugin that handles `@inheritDoc` tags by copying documentation from another API item. | ||
continue; | ||
let sourceRefl = source && reflection.findReflectionByName(source); | ||
const declRef = (0, declarationReference_1.parseDeclarationReference)(source, 0, source.length); | ||
let sourceRefl = declRef && (0, declarationReferenceResolver_1.resolveDeclarationReference)(reflection, declRef[0]); | ||
if (reflection instanceof models_1.SignatureReflection) { | ||
@@ -57,0 +60,0 @@ // Assumes that if there are overloads, they are declared in the same order as the parent. |
@@ -13,7 +13,6 @@ "use strict"; | ||
const converter_events_1 = require("../converter-events"); | ||
const models_1 = require("../../models"); | ||
const declarationReference_1 = require("../comments/declarationReference"); | ||
const ts = require("typescript"); | ||
const assert_1 = require("assert"); | ||
const utils_1 = require("../../utils"); | ||
const declarationReferenceResolver_1 = require("../comments/declarationReferenceResolver"); | ||
const urlPrefix = /^(http|ftp)s?:\/\//; | ||
@@ -183,3 +182,3 @@ const brackets = /\[\[([^\]]+)\]\]/g; | ||
// Got one, great! Try to resolve the link | ||
target = resolveDeclarationReference(reflection, declRef[0]); | ||
target = (0, declarationReferenceResolver_1.resolveDeclarationReference)(reflection, declRef[0]); | ||
pos = declRef[1]; | ||
@@ -223,168 +222,1 @@ } | ||
} | ||
function resolveDeclarationReference(reflection, ref) { | ||
let high = []; | ||
let low = []; | ||
if (ref.moduleSource) { | ||
high = | ||
reflection.project.children?.filter((c) => c.kindOf(models_1.ReflectionKind.SomeModule) && | ||
c.name === ref.moduleSource) || []; | ||
} | ||
else if (ref.resolutionStart === "global") { | ||
high.push(reflection.project); | ||
} | ||
else { | ||
(0, assert_1.ok)(ref.resolutionStart === "local"); | ||
// TypeScript's behavior is to first try to resolve links via variable scope, and then | ||
// if the link still hasn't been found, check either siblings (if comment belongs to a member) | ||
// or otherwise children. | ||
let refl = reflection; | ||
if (refl.kindOf(models_1.ReflectionKind.ExportContainer)) { | ||
high.push(refl); | ||
} | ||
while (refl.parent) { | ||
refl = refl.parent; | ||
if (refl.kindOf(models_1.ReflectionKind.ExportContainer)) { | ||
high.push(refl); | ||
} | ||
} | ||
if (reflection.kindOf(models_1.ReflectionKind.SomeMember)) { | ||
high.push(reflection.parent); | ||
} | ||
else if (reflection.kindOf(models_1.ReflectionKind.SomeSignature) && | ||
reflection.parent.kindOf(models_1.ReflectionKind.SomeMember)) { | ||
high.push(reflection.parent.parent); | ||
} | ||
else if (high[0] !== reflection) { | ||
high.push(reflection); | ||
} | ||
} | ||
if (ref.symbolReference) { | ||
for (const part of ref.symbolReference.path || []) { | ||
const high2 = high; | ||
high = []; | ||
const low2 = low; | ||
low = []; | ||
for (const refl of high2) { | ||
const resolved = resolveSymbolReferencePart(refl, part); | ||
high.push(...resolved.high); | ||
low.push(...resolved.low); | ||
} | ||
for (const refl of low2) { | ||
const resolved = resolveSymbolReferencePart(refl, part); | ||
low.push(...resolved.high); | ||
low.push(...resolved.low); | ||
} | ||
} | ||
if (ref.symbolReference.meaning) { | ||
high = filterMapByMeaning(high, ref.symbolReference.meaning); | ||
low = filterMapByMeaning(low, ref.symbolReference.meaning); | ||
} | ||
} | ||
return high[0] || low[0]; | ||
} | ||
function filterMapByMeaning(reflections, meaning) { | ||
return (0, utils_1.filterMap)(reflections, (refl) => { | ||
const kwResolved = resolveKeyword(refl, meaning.keyword) || []; | ||
return kwResolved[meaning.index || 0]; | ||
}); | ||
} | ||
function resolveKeyword(refl, kw) { | ||
switch (kw) { | ||
case undefined: | ||
return refl instanceof models_1.DeclarationReflection && refl.signatures | ||
? refl.signatures | ||
: [refl]; | ||
case "class": | ||
if (refl.kindOf(models_1.ReflectionKind.Class)) | ||
return [refl]; | ||
break; | ||
case "interface": | ||
if (refl.kindOf(models_1.ReflectionKind.Interface)) | ||
return [refl]; | ||
break; | ||
case "type": | ||
if (refl.kindOf(models_1.ReflectionKind.SomeType)) | ||
return [refl]; | ||
break; | ||
case "enum": | ||
if (refl.kindOf(models_1.ReflectionKind.Enum)) | ||
return [refl]; | ||
break; | ||
case "namespace": | ||
if (refl.kindOf(models_1.ReflectionKind.SomeModule)) | ||
return [refl]; | ||
break; | ||
case "function": | ||
if (refl.kindOf(models_1.ReflectionKind.FunctionOrMethod)) { | ||
return refl.signatures; | ||
} | ||
break; | ||
case "var": | ||
if (refl.kindOf(models_1.ReflectionKind.Variable)) | ||
return [refl]; | ||
break; | ||
case "new": | ||
case "constructor": | ||
if (refl.kindOf(models_1.ReflectionKind.ClassOrInterface | models_1.ReflectionKind.TypeLiteral)) { | ||
const ctor = refl.children?.find((c) => c.kindOf(models_1.ReflectionKind.Constructor)); | ||
return ctor?.signatures; | ||
} | ||
break; | ||
case "member": | ||
if (refl.kindOf(models_1.ReflectionKind.SomeMember)) | ||
return [refl]; | ||
break; | ||
case "event": | ||
// Never resolve. Nobody should use this. | ||
// It's required by the grammar, but is not documented by TypeDoc | ||
// nor by the comments in the grammar. | ||
break; | ||
case "call": | ||
return refl.signatures; | ||
case "index": | ||
if (refl.indexSignature) { | ||
return [refl.indexSignature]; | ||
} | ||
break; | ||
case "complex": | ||
if (refl.kindOf(models_1.ReflectionKind.SomeType)) | ||
return [refl]; | ||
break; | ||
} | ||
} | ||
function resolveSymbolReferencePart(refl, path) { | ||
let high = []; | ||
let low = []; | ||
if (!(refl instanceof models_1.ContainerReflection) || !refl.children) { | ||
return { high, low }; | ||
} | ||
switch (path.navigation) { | ||
// Grammar says resolve via "exports"... as always, reality is more complicated. | ||
// Check exports first, but also allow this as a general purpose "some child" operator | ||
// so that resolution doesn't behave very poorly with projects using JSDoc style resolution. | ||
// Also is more consistent with how TypeScript resolves link tags. | ||
case ".": | ||
high = refl.children.filter((r) => r.name === path.path && | ||
(r.kindOf(models_1.ReflectionKind.SomeExport) || r.flags.isStatic)); | ||
low = refl.children.filter((r) => r.name === path.path && | ||
(!r.kindOf(models_1.ReflectionKind.SomeExport) || !r.flags.isStatic)); | ||
break; | ||
// Resolve via "members", interface children, class instance properties/accessors/methods, | ||
// enum members, type literal properties | ||
case "#": | ||
high = refl.children.filter((r) => { | ||
return (r.name === path.path && | ||
r.kindOf(models_1.ReflectionKind.SomeMember) && | ||
!r.flags.isStatic); | ||
}); | ||
break; | ||
// Resolve via "locals"... treat this as a stricter `.` which only supports traversing | ||
// module/namespace exports since TypeDoc doesn't support documenting locals. | ||
case "~": | ||
if (refl.kindOf(models_1.ReflectionKind.SomeModule | models_1.ReflectionKind.Project)) { | ||
high = refl.children.filter((r) => r.name === path.path); | ||
} | ||
break; | ||
} | ||
return { high, low }; | ||
} |
@@ -82,3 +82,7 @@ "use strict"; | ||
if (comment.blockTags.length || comment.modifierTags.size) { | ||
this.application.logger.warn(`Block and modifier tags will be ignored within the readme.`); | ||
const ignored = [ | ||
...comment.blockTags.map((tag) => tag.tag), | ||
...comment.modifierTags, | ||
]; | ||
this.application.logger.warn(`Block and modifier tags will be ignored within the readme:\n\t${ignored.join("\n\t")}`); | ||
} | ||
@@ -85,0 +89,0 @@ project.readme = comment.summary; |
@@ -455,5 +455,8 @@ "use strict"; | ||
const propType = checker.getTypeOfSymbolAtLocation(prop, location); | ||
return propType.isStringLiteral() || propType.isNumberLiteral(); | ||
return isValidEnumProperty(propType); | ||
}); | ||
} | ||
function isValidEnumProperty(type) { | ||
return (0, enum_1.hasAnyFlag)(type.flags, ts.TypeFlags.NumberLike | ts.TypeFlags.StringLike); | ||
} | ||
function convertVariableAsEnum(context, symbol, exportSymbol) { | ||
@@ -468,4 +471,3 @@ const reflection = context.createDeclarationReflection(models_1.ReflectionKind.Enum, symbol, exportSymbol); | ||
const propType = context.checker.getTypeOfSymbolAtLocation(prop, declaration); | ||
assert(propType.isStringLiteral() || propType.isNumberLiteral()); | ||
reflection.type = new models_1.LiteralType(propType.value); | ||
reflection.type = context.converter.convertType(context, propType); | ||
rc.finalizeDeclarationReflection(reflection); | ||
@@ -472,0 +474,0 @@ } |
@@ -220,5 +220,12 @@ import type { SourceReference } from "../sources/file"; | ||
/** | ||
* Check if this reflection has been marked with the `@deprecated` tag. | ||
*/ | ||
isDeprecated(): boolean; | ||
/** | ||
* Try to find a reflection by its name. | ||
* | ||
* @return The found reflection or null. | ||
* @deprecated This method not be used, it naively splits the name by a `.` and searches recursively up | ||
* the parent tree, which is not how any other name resolver works. If you are currently using this and | ||
* need another method, please open an issue. For tests {@link getChildByName} should generally be sufficient. | ||
*/ | ||
@@ -225,0 +232,0 @@ findReflectionByName(arg: string | string[]): Reflection | undefined; |
@@ -350,5 +350,17 @@ "use strict"; | ||
/** | ||
* Check if this reflection has been marked with the `@deprecated` tag. | ||
*/ | ||
isDeprecated() { | ||
if (this.comment?.getTag("@deprecated")) { | ||
return true; | ||
} | ||
return this.parent?.isDeprecated() ?? false; | ||
} | ||
/** | ||
* Try to find a reflection by its name. | ||
* | ||
* @return The found reflection or null. | ||
* @deprecated This method not be used, it naively splits the name by a `.` and searches recursively up | ||
* the parent tree, which is not how any other name resolver works. If you are currently using this and | ||
* need another method, please open an issue. For tests {@link getChildByName} should generally be sufficient. | ||
*/ | ||
@@ -355,0 +367,0 @@ findReflectionByName(arg) { |
@@ -21,4 +21,4 @@ import { Reflection, TraverseCallback } from "./abstract"; | ||
/** | ||
* A precomputed boost derived from the searchCategoryBoosts typedoc.json setting, to be used when | ||
* boosting search relevance scores at runtime. | ||
* A precomputed boost derived from the searchCategoryBoosts and searchGroupBoosts options, used when | ||
* boosting search relevance scores at runtime. May be modified by plugins. | ||
*/ | ||
@@ -25,0 +25,0 @@ relevanceBoost?: number; |
@@ -44,3 +44,2 @@ "use strict"; | ||
const kinds = {}; | ||
const kindBoosts = this.application.options.getValue("searchGroupBoosts") ?? {}; | ||
for (const reflection of event.project.getReflectionsByKind(models_1.ReflectionKind.All)) { | ||
@@ -56,3 +55,3 @@ if (!(reflection instanceof models_1.DeclarationReflection)) { | ||
let parent = reflection.parent; | ||
let boost = reflection.relevanceBoost ?? 1; | ||
const boost = reflection.relevanceBoost ?? 1; | ||
if (parent instanceof models_1.ProjectReflection) { | ||
@@ -63,6 +62,2 @@ parent = undefined; | ||
kinds[reflection.kind] = plugins_1.GroupPlugin.getKindSingular(reflection.kind); | ||
const kindBoost = kindBoosts[kinds[reflection.kind] ?? ""]; | ||
if (kindBoost != undefined) { | ||
boost *= kindBoost; | ||
} | ||
} | ||
@@ -69,0 +64,0 @@ const row = { |
@@ -230,3 +230,9 @@ "use strict"; | ||
else if (key.startsWith("@")) { | ||
if (reflection.comment?.hasModifier(key)) { | ||
if (key === "@deprecated") { | ||
if (reflection.isDeprecated()) { | ||
classes.push(DefaultTheme.toStyleClass(`tsd-is-${key.substring(1)}`)); | ||
} | ||
} | ||
else if (reflection.comment?.hasModifier(key) || | ||
reflection.comment?.getTag(key)) { | ||
classes.push(DefaultTheme.toStyleClass(`tsd-is-${key.substring(1)}`)); | ||
@@ -233,0 +239,0 @@ } |
@@ -11,3 +11,3 @@ "use strict"; | ||
utils_1.JSX.createElement("div", { class: "tsd-index-list" }, item.children.map((item) => (utils_1.JSX.createElement(utils_1.JSX.Fragment, null, | ||
utils_1.JSX.createElement("a", { href: urlTo(item), class: (0, lib_1.classNames)({ "tsd-index-link": true, deprecated: item.comment?.hasModifier("@deprecated") }, item.cssClasses) }, | ||
utils_1.JSX.createElement("a", { href: urlTo(item), class: (0, lib_1.classNames)({ "tsd-index-link": true, deprecated: item.isDeprecated() }, item.cssClasses) }, | ||
icon_1.icons[item.kind](), | ||
@@ -14,0 +14,0 @@ utils_1.JSX.createElement("span", null, item.name ? (0, lib_1.wbr)(item.name) : utils_1.JSX.createElement("em", null, (0, lib_1.wbr)(item.kindString)))), |
@@ -12,3 +12,3 @@ "use strict"; | ||
(0, lib_1.renderFlags)(props.flags, props.comment), | ||
utils_1.JSX.createElement("span", { class: (0, lib_1.classNames)({ deprecated: props.comment?.hasModifier("@deprecated") }) }, (0, lib_1.wbr)(props.name)), | ||
utils_1.JSX.createElement("span", { class: (0, lib_1.classNames)({ deprecated: props.isDeprecated() }) }, (0, lib_1.wbr)(props.name)), | ||
(0, anchor_icon_1.anchorIcon)(props.anchor))), | ||
@@ -15,0 +15,0 @@ props.signatures |
@@ -85,3 +85,3 @@ "use strict"; | ||
} | ||
return (utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ current, selected, deprecated: mod.comment?.hasModifier("@deprecated") }, mod.cssClasses) }, | ||
return (utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ current, selected, deprecated: mod.isDeprecated() }, mod.cssClasses) }, | ||
utils_1.JSX.createElement("a", { href: context.urlTo(mod) }, (0, lib_1.wbr)(mod.name)), | ||
@@ -92,3 +92,2 @@ childNav)); | ||
function secondaryNavigation(context, props) { | ||
const children = props.model instanceof models_1.ContainerReflection ? props.model.children || [] : []; | ||
// Multiple entry points, and on main project page. | ||
@@ -98,6 +97,10 @@ if (props.model.isProject() && props.model.getChildrenByKind(models_1.ReflectionKind.Module).length) { | ||
} | ||
const effectivePageParent = (props.model instanceof models_1.ContainerReflection && props.model.children?.length) || props.model.isProject() | ||
? props.model | ||
: props.model.parent; | ||
const children = effectivePageParent.children || []; | ||
const pageNavigation = children | ||
.filter((child) => !child.kindOf(models_1.ReflectionKind.SomeModule)) | ||
.map((child) => { | ||
return (utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ deprecated: child.comment?.hasModifier("@deprecated") }, child.cssClasses) }, | ||
return (utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ deprecated: child.isDeprecated(), current: props.model === child }, child.cssClasses) }, | ||
utils_1.JSX.createElement("a", { href: context.urlTo(child), class: "tsd-index-link" }, | ||
@@ -107,3 +110,3 @@ icon_1.icons[child.kind](), | ||
}); | ||
if (props.model.kindOf(models_1.ReflectionKind.SomeModule | models_1.ReflectionKind.Project)) { | ||
if (effectivePageParent.kindOf(models_1.ReflectionKind.SomeModule | models_1.ReflectionKind.Project)) { | ||
return (utils_1.JSX.createElement("nav", { class: "tsd-navigation secondary menu-sticky" }, !!pageNavigation.length && utils_1.JSX.createElement("ul", null, pageNavigation))); | ||
@@ -114,8 +117,8 @@ } | ||
utils_1.JSX.createElement("li", { class: (0, lib_1.classNames)({ | ||
deprecated: props.model.comment?.hasModifier("@deprecated"), | ||
current: true, | ||
}, props.model.cssClasses) }, | ||
utils_1.JSX.createElement("a", { href: context.urlTo(props.model), class: "tsd-index-link" }, | ||
icon_1.icons[props.model.kind](), | ||
utils_1.JSX.createElement("span", null, (0, lib_1.wbr)(props.model.name))), | ||
deprecated: effectivePageParent.isDeprecated(), | ||
current: effectivePageParent === props.model, | ||
}, effectivePageParent.cssClasses) }, | ||
utils_1.JSX.createElement("a", { href: context.urlTo(effectivePageParent), class: "tsd-index-link" }, | ||
icon_1.icons[effectivePageParent.kind](), | ||
utils_1.JSX.createElement("span", null, (0, lib_1.wbr)(effectivePageParent.name))), | ||
!!pageNavigation.length && utils_1.JSX.createElement("ul", null, pageNavigation))))); | ||
@@ -122,0 +125,0 @@ } |
@@ -5,3 +5,3 @@ import type { Theme as ShikiTheme } from "shiki"; | ||
import type { EntryPointStrategy } from "../entry-point"; | ||
import { ReflectionKind } from "../../models/reflections/kind"; | ||
import type { ReflectionKind } from "../../models/reflections/kind"; | ||
/** @enum */ | ||
@@ -20,6 +20,6 @@ export declare const EmitStrategy: { | ||
export declare const CommentStyle: { | ||
readonly JSDoc: "JSDoc"; | ||
readonly Block: "Block"; | ||
readonly Line: "Line"; | ||
readonly All: "All"; | ||
readonly JSDoc: "jsdoc"; | ||
readonly Block: "block"; | ||
readonly Line: "line"; | ||
readonly All: "all"; | ||
}; | ||
@@ -33,3 +33,3 @@ export declare type CommentStyle = typeof CommentStyle[keyof typeof CommentStyle]; | ||
export declare type TypeDocOptions = { | ||
[K in keyof TypeDocOptionMap]: unknown extends TypeDocOptionMap[K] ? unknown : TypeDocOptionMap[K] extends string | string[] | number | boolean ? TypeDocOptionMap[K] : TypeDocOptionMap[K] extends Record<string, boolean> ? Partial<TypeDocOptionMap[K]> | boolean : keyof TypeDocOptionMap[K] | TypeDocOptionMap[K][keyof TypeDocOptionMap[K]]; | ||
[K in keyof TypeDocOptionMap]: unknown extends TypeDocOptionMap[K] ? unknown : TypeDocOptionMap[K] extends ManuallyValidatedOption<infer ManuallyValidated> ? ManuallyValidated : TypeDocOptionMap[K] extends string | string[] | number | boolean ? TypeDocOptionMap[K] : TypeDocOptionMap[K] extends Record<string, boolean> ? Partial<TypeDocOptionMap[K]> | boolean : keyof TypeDocOptionMap[K] | TypeDocOptionMap[K][keyof TypeDocOptionMap[K]]; | ||
}; | ||
@@ -42,13 +42,4 @@ /** | ||
export declare type TypeDocOptionValues = { | ||
[K in keyof TypeDocOptionMap]: unknown extends TypeDocOptionMap[K] ? unknown : TypeDocOptionMap[K] extends string | string[] | number | boolean | Record<string, boolean> ? TypeDocOptionMap[K] : TypeDocOptionMap[K][keyof TypeDocOptionMap[K]]; | ||
[K in keyof TypeDocOptionMap]: unknown extends TypeDocOptionMap[K] ? unknown : TypeDocOptionMap[K] extends ManuallyValidatedOption<infer ManuallyValidated> ? ManuallyValidated : TypeDocOptionMap[K] extends string | string[] | number | boolean | Record<string, boolean> ? TypeDocOptionMap[K] : TypeDocOptionMap[K][keyof TypeDocOptionMap[K]]; | ||
}; | ||
declare const Kinds: (string | number)[]; | ||
export interface SearchConfig { | ||
searchGroupBoosts?: { | ||
[key: typeof Kinds[number]]: number; | ||
}; | ||
searchCategoryBoosts?: { | ||
[key: string]: number; | ||
}; | ||
} | ||
/** | ||
@@ -113,4 +104,4 @@ * Describes all TypeDoc options. Used internally to provide better types when fetching options. | ||
plugin: string[]; | ||
searchCategoryBoosts: unknown; | ||
searchGroupBoosts: unknown; | ||
searchCategoryBoosts: ManuallyValidatedOption<Record<string, number>>; | ||
searchGroupBoosts: ManuallyValidatedOption<Record<string, number>>; | ||
logger: unknown; | ||
@@ -321,2 +312,1 @@ logLevel: typeof LogLevel; | ||
export declare function getDefaultValue(option: DeclarationOption): unknown; | ||
export {}; |
@@ -5,3 +5,2 @@ "use strict"; | ||
const path_1 = require("path"); | ||
const kind_1 = require("../../models/reflections/kind"); | ||
/** @enum */ | ||
@@ -18,8 +17,7 @@ exports.EmitStrategy = { | ||
exports.CommentStyle = { | ||
JSDoc: "JSDoc", | ||
Block: "Block", | ||
Line: "Line", | ||
All: "All", | ||
JSDoc: "jsdoc", | ||
Block: "block", | ||
Line: "line", | ||
All: "all", | ||
}; | ||
const Kinds = Object.values(kind_1.ReflectionKind); | ||
var ParameterHint; | ||
@@ -26,0 +24,0 @@ (function (ParameterHint) { |
@@ -12,3 +12,7 @@ "use strict"; | ||
const tsdoc_defaults_1 = require("../tsdoc-defaults"); | ||
// For convenience, added in the same order as they are documented on the website. | ||
function addTypeDocOptions(options) { | ||
/////////////////////////// | ||
// Configuration Options // | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
@@ -29,2 +33,15 @@ type: declaration_1.ParameterType.Path, | ||
options.addDeclaration({ | ||
name: "compilerOptions", | ||
help: "Selectively override the TypeScript compiler options used by TypeDoc.", | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!Validation.validate({}, value)) { | ||
throw new Error("The 'compilerOptions' option must be a non-array object."); | ||
} | ||
}, | ||
}); | ||
/////////////////////////// | ||
////// Input Options ////// | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
name: "entryPoints", | ||
@@ -42,27 +59,2 @@ help: "The entry points of your documentation.", | ||
options.addDeclaration({ | ||
name: "visibilityFilters", | ||
help: "Specify the default visibility for builtin filters and additional filters according to modifier tags.", | ||
type: declaration_1.ParameterType.Mixed, | ||
defaultValue: { | ||
protected: false, | ||
private: false, | ||
inherited: true, | ||
external: false, | ||
}, | ||
validate(value) { | ||
const knownKeys = ["protected", "private", "inherited", "external"]; | ||
if (!value || typeof value !== "object") { | ||
throw new Error("visibilityFilters must be an object."); | ||
} | ||
for (const [key, val] of Object.entries(value)) { | ||
if (!key.startsWith("@") && !knownKeys.includes(key)) { | ||
throw new Error(`visibilityFilters can only include the following non-@ keys: ${knownKeys.join(", ")}`); | ||
} | ||
if (typeof val !== "boolean") { | ||
throw new Error(`All values of visibilityFilters must be booleans.`); | ||
} | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "exclude", | ||
@@ -104,41 +96,8 @@ help: "Define patterns to be excluded when expanding a directory that was specified as an entry point.", | ||
options.addDeclaration({ | ||
name: "searchCategoryBoosts", | ||
help: "Configure search to give a relevance boost to selected categories", | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!isObject(value)) { | ||
throw new Error("The 'searchCategoryBoosts' option must be a non-array object."); | ||
} | ||
if (Object.values(value).some((x) => typeof x !== "number")) { | ||
throw new Error("All values of 'searchCategoryBoosts' must be numbers."); | ||
} | ||
}, | ||
name: "media", | ||
help: "Specify the location with media files that should be copied to the output directory.", | ||
type: declaration_1.ParameterType.Path, | ||
hint: declaration_1.ParameterHint.Directory, | ||
}); | ||
options.addDeclaration({ | ||
name: "searchGroupBoosts", | ||
help: 'Configure search to give a relevance boost to selected kinds (eg "class")', | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!isObject(value)) { | ||
throw new Error("The 'searchGroupBoosts' option must be a non-array object."); | ||
} | ||
const validValues = Object.values(kind_1.ReflectionKind) | ||
.filter((v) => typeof v === "string") | ||
.map((v) => v.toString()); | ||
for (const kindName in value) { | ||
if (validValues.indexOf(kindName) < 0) { | ||
throw new Error(`'${kindName}' is an invalid value for 'searchGroupBoosts'. Must be one of: ${validValues.join(", ")}`); | ||
} | ||
} | ||
if (Object.values(value).some((x) => typeof x !== "number")) { | ||
throw new Error("All values of 'searchGroupBoosts' must be numbers."); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "disableSources", | ||
help: "Disable setting the source of a reflection when documenting it.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "includes", | ||
@@ -149,26 +108,6 @@ help: "Specify the location to look for included documents (use [[include:FILENAME]] in comments).", | ||
}); | ||
/////////////////////////// | ||
///// Output Options ////// | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
name: "media", | ||
help: "Specify the location with media files that should be copied to the output directory.", | ||
type: declaration_1.ParameterType.Path, | ||
hint: declaration_1.ParameterHint.Directory, | ||
}); | ||
options.addDeclaration({ | ||
name: "watch", | ||
help: "Watch files for changes and rebuild docs on change.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "preserveWatchOutput", | ||
help: "If set, TypeDoc will not clear the screen between compilation runs.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "emit", | ||
help: "Specify what TypeDoc should emit, 'docs', 'both', or 'none'.", | ||
type: declaration_1.ParameterType.Map, | ||
map: declaration_1.EmitStrategy, | ||
defaultValue: "docs", | ||
}); | ||
options.addDeclaration({ | ||
name: "out", | ||
@@ -192,5 +131,11 @@ help: "Specify the location the documentation should be written to.", | ||
options.addDeclaration({ | ||
name: "emit", | ||
help: "Specify what TypeDoc should emit, 'docs', 'both', or 'none'.", | ||
type: declaration_1.ParameterType.Map, | ||
map: declaration_1.EmitStrategy, | ||
defaultValue: "docs", | ||
}); | ||
options.addDeclaration({ | ||
name: "theme", | ||
help: "Specify the path to the theme that should be used, or 'default' or 'minimal' to use built-in themes. " + | ||
"Note: Not resolved according to the config file location, always resolved according to cwd.", | ||
help: "Specify the theme name to render the documentation with", | ||
type: declaration_1.ParameterType.String, | ||
@@ -229,2 +174,12 @@ defaultValue: "default", | ||
options.addDeclaration({ | ||
name: "markedOptions", | ||
help: "Specify the options passed to Marked, the Markdown parser used by TypeDoc.", | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!Validation.validate({}, value)) { | ||
throw new Error("The 'markedOptions' option must be a non-array object."); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "name", | ||
@@ -239,21 +194,21 @@ help: "Set the name of the project that will be used in the header of the template.", | ||
options.addDeclaration({ | ||
name: "readme", | ||
help: "Path to the readme file that should be displayed on the index page. Pass `none` to disable the index page and start the documentation on the globals page.", | ||
type: declaration_1.ParameterType.Path, | ||
name: "disableSources", | ||
help: "Disable setting the source of a reflection when documenting it.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "defaultCategory", | ||
help: "Specify the default category for reflections without a category.", | ||
defaultValue: "Other", | ||
}); | ||
options.addDeclaration({ | ||
name: "categoryOrder", | ||
help: "Specify the order in which categories appear. * indicates the relative order for categories not in the list.", | ||
name: "excludeTags", | ||
help: "Remove the listed block/modifier tags from doc comments.", | ||
type: declaration_1.ParameterType.Array, | ||
defaultValue: ["@override", "@virtual", "@privateRemarks"], | ||
validate(value) { | ||
if (!Validation.validate([Array, Validation.isTagString], value)) { | ||
throw new Error(`excludeTags must be an array of valid tag names.`); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "categorizeByGroup", | ||
help: "Specify whether categorization will be done at the group level.", | ||
type: declaration_1.ParameterType.Boolean, | ||
defaultValue: true, | ||
name: "readme", | ||
help: "Path to the readme file that should be displayed on the index page. Pass `none` to disable the index page and start the documentation on the globals page.", | ||
type: declaration_1.ParameterType.Path, | ||
}); | ||
@@ -265,17 +220,2 @@ options.addDeclaration({ | ||
options.addDeclaration({ | ||
name: "sort", | ||
help: "Specify the sort strategy for documented values.", | ||
type: declaration_1.ParameterType.Array, | ||
defaultValue: ["kind", "instance-first", "alphabetical"], | ||
validate(value) { | ||
const invalid = new Set(value); | ||
for (const v of sort_1.SORT_STRATEGIES) { | ||
invalid.delete(v); | ||
} | ||
if (invalid.size !== 0) { | ||
throw new Error(`sort may only specify known values, and invalid values were provided (${Array.from(invalid).join(", ")}). The valid sort strategies are:\n${sort_1.SORT_STRATEGIES.join(", ")}`); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "gitRevision", | ||
@@ -290,6 +230,2 @@ help: "Use specified revision instead of the last revision for linking to GitHub/Bitbucket source files.", | ||
options.addDeclaration({ | ||
name: "gaID", | ||
help: "Set the Google Analytics tracking ID and activate tracking code.", | ||
}); | ||
options.addDeclaration({ | ||
name: "githubPages", | ||
@@ -301,2 +237,6 @@ help: "Generate a .nojekyll file to prevent 404 errors in GitHub Pages. Defaults to `true`.", | ||
options.addDeclaration({ | ||
name: "gaID", | ||
help: "Set the Google Analytics tracking ID and activate tracking code.", | ||
}); | ||
options.addDeclaration({ | ||
name: "hideGenerator", | ||
@@ -312,2 +252,5 @@ help: "Do not print the TypeDoc link at the end of the page.", | ||
}); | ||
/////////////////////////// | ||
///// Comment Options ///// | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
@@ -321,13 +264,2 @@ name: "commentStyle", | ||
options.addDeclaration({ | ||
name: "excludeTags", | ||
help: "Remove the listed block/modifier tags from doc comments.", | ||
type: declaration_1.ParameterType.Array, | ||
defaultValue: ["@override", "@virtual", "@privateRemarks"], | ||
validate(value) { | ||
if (!Validation.validate([Array, Validation.isTagString], value)) { | ||
throw new Error(`excludeTags must be an array of valid tag names.`); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "blockTags", | ||
@@ -365,3 +297,103 @@ help: "Block tags which TypeDoc should recognize when parsing comments.", | ||
}); | ||
/////////////////////////// | ||
// Organization Options /// | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
name: "categorizeByGroup", | ||
help: "Specify whether categorization will be done at the group level.", | ||
type: declaration_1.ParameterType.Boolean, | ||
defaultValue: true, | ||
}); | ||
options.addDeclaration({ | ||
name: "defaultCategory", | ||
help: "Specify the default category for reflections without a category.", | ||
defaultValue: "Other", | ||
}); | ||
options.addDeclaration({ | ||
name: "categoryOrder", | ||
help: "Specify the order in which categories appear. * indicates the relative order for categories not in the list.", | ||
type: declaration_1.ParameterType.Array, | ||
}); | ||
options.addDeclaration({ | ||
name: "sort", | ||
help: "Specify the sort strategy for documented values.", | ||
type: declaration_1.ParameterType.Array, | ||
defaultValue: ["kind", "instance-first", "alphabetical"], | ||
validate(value) { | ||
const invalid = new Set(value); | ||
for (const v of sort_1.SORT_STRATEGIES) { | ||
invalid.delete(v); | ||
} | ||
if (invalid.size !== 0) { | ||
throw new Error(`sort may only specify known values, and invalid values were provided (${Array.from(invalid).join(", ")}). The valid sort strategies are:\n${sort_1.SORT_STRATEGIES.join(", ")}`); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "visibilityFilters", | ||
help: "Specify the default visibility for builtin filters and additional filters according to modifier tags.", | ||
type: declaration_1.ParameterType.Mixed, | ||
defaultValue: { | ||
protected: false, | ||
private: false, | ||
inherited: true, | ||
external: false, | ||
}, | ||
validate(value) { | ||
const knownKeys = ["protected", "private", "inherited", "external"]; | ||
if (!value || typeof value !== "object") { | ||
throw new Error("visibilityFilters must be an object."); | ||
} | ||
for (const [key, val] of Object.entries(value)) { | ||
if (!key.startsWith("@") && !knownKeys.includes(key)) { | ||
throw new Error(`visibilityFilters can only include the following non-@ keys: ${knownKeys.join(", ")}`); | ||
} | ||
if (typeof val !== "boolean") { | ||
throw new Error(`All values of visibilityFilters must be booleans.`); | ||
} | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "searchCategoryBoosts", | ||
help: "Configure search to give a relevance boost to selected categories", | ||
type: declaration_1.ParameterType.Mixed, | ||
defaultValue: {}, | ||
validate(value) { | ||
if (!isObject(value)) { | ||
throw new Error("The 'searchCategoryBoosts' option must be a non-array object."); | ||
} | ||
if (Object.values(value).some((x) => typeof x !== "number")) { | ||
throw new Error("All values of 'searchCategoryBoosts' must be numbers."); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "searchGroupBoosts", | ||
help: 'Configure search to give a relevance boost to selected kinds (eg "class")', | ||
type: declaration_1.ParameterType.Mixed, | ||
defaultValue: {}, | ||
validate(value) { | ||
if (!isObject(value)) { | ||
throw new Error("The 'searchGroupBoosts' option must be a non-array object."); | ||
} | ||
if (Object.values(value).some((x) => typeof x !== "number")) { | ||
throw new Error("All values of 'searchGroupBoosts' must be numbers."); | ||
} | ||
}, | ||
}); | ||
/////////////////////////// | ||
///// General Options ///// | ||
/////////////////////////// | ||
options.addDeclaration({ | ||
name: "watch", | ||
help: "Watch files for changes and rebuild docs on change.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "preserveWatchOutput", | ||
help: "If set, TypeDoc will not clear the screen between compilation runs.", | ||
type: declaration_1.ParameterType.Boolean, | ||
}); | ||
options.addDeclaration({ | ||
name: "help", | ||
@@ -400,22 +432,2 @@ help: "Print this message.", | ||
options.addDeclaration({ | ||
name: "markedOptions", | ||
help: "Specify the options passed to Marked, the Markdown parser used by TypeDoc.", | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!Validation.validate({}, value)) { | ||
throw new Error("The 'markedOptions' option must be a non-array object."); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "compilerOptions", | ||
help: "Selectively override the TypeScript compiler options used by TypeDoc.", | ||
type: declaration_1.ParameterType.Mixed, | ||
validate(value) { | ||
if (!Validation.validate({}, value)) { | ||
throw new Error("The 'compilerOptions' option must be a non-array object."); | ||
} | ||
}, | ||
}); | ||
options.addDeclaration({ | ||
name: "treatWarningsAsErrors", | ||
@@ -422,0 +434,0 @@ help: "If set, warnings will be treated as errors.", |
@@ -1,6 +0,6 @@ | ||
export declare const tsdocBlockTags: readonly ["@deprecated", "@param", "@remarks", "@throws", "@privateRemarks", "@defaultValue"]; | ||
export declare const blockTags: readonly ["@deprecated", "@param", "@remarks", "@throws", "@privateRemarks", "@defaultValue", "@module", "@inheritDoc", "@group", "@category"]; | ||
export declare const tsdocBlockTags: readonly ["@deprecated", "@param", "@remarks", "@returns", "@throws", "@privateRemarks", "@defaultValue", "@typeParam"]; | ||
export declare const blockTags: readonly ["@deprecated", "@param", "@remarks", "@returns", "@throws", "@privateRemarks", "@defaultValue", "@typeParam", "@module", "@inheritDoc", "@group", "@category", "@template", "@type", "@typedef", "@callback", "@prop", "@property"]; | ||
export declare const tsdocInlineTags: readonly ["@link", "@inheritDoc", "@label"]; | ||
export declare const inlineTags: readonly ["@link", "@inheritDoc", "@label"]; | ||
export declare const tsdocModifierTags: readonly ["@public", "@private", "@protected", "@internal", "@readonly", "@packageDocumentation", "@eventProperty", "@alpha", "@beta", "@sealed", "@override", "@virtual"]; | ||
export declare const modifierTags: readonly ["@public", "@private", "@protected", "@internal", "@readonly", "@packageDocumentation", "@eventProperty", "@alpha", "@beta", "@sealed", "@override", "@virtual", "@hidden", "@ignore", "@enum", "@event"]; | ||
export declare const inlineTags: string[]; | ||
export declare const tsdocModifierTags: readonly ["@public", "@private", "@protected", "@internal", "@readonly", "@packageDocumentation", "@eventProperty", "@alpha", "@beta", "@experimental", "@sealed", "@override", "@virtual"]; | ||
export declare const modifierTags: readonly ["@public", "@private", "@protected", "@internal", "@readonly", "@packageDocumentation", "@eventProperty", "@alpha", "@beta", "@experimental", "@sealed", "@override", "@virtual", "@hidden", "@ignore", "@enum", "@event"]; |
@@ -9,5 +9,7 @@ "use strict"; | ||
"@remarks", | ||
"@returns", | ||
"@throws", | ||
"@privateRemarks", | ||
"@defaultValue", | ||
"@typeParam", | ||
]; | ||
@@ -20,5 +22,13 @@ exports.blockTags = [ | ||
"@category", | ||
// Alias for @typeParam | ||
"@template", | ||
// Because TypeScript is important! | ||
"@type", | ||
"@typedef", | ||
"@callback", | ||
"@prop", | ||
"@property", | ||
]; | ||
exports.tsdocInlineTags = ["@link", "@inheritDoc", "@label"]; | ||
exports.inlineTags = exports.tsdocInlineTags; | ||
exports.inlineTags = [...exports.tsdocInlineTags, "@linkcode", "@linkplain"]; | ||
exports.tsdocModifierTags = [ | ||
@@ -34,2 +44,3 @@ "@public", | ||
"@beta", | ||
"@experimental", | ||
"@sealed", | ||
@@ -36,0 +47,0 @@ "@override", |
@@ -168,3 +168,4 @@ "use strict"; | ||
entryPointPath = require.resolve(entryPointPath, { paths: [] }); | ||
if (/\.tsx?$/.test(entryPointPath) && (0, fs_1.existsSync)(entryPointPath)) { | ||
if (/\.([cm]ts|tsx?)$/.test(entryPointPath) && | ||
(0, fs_1.existsSync)(entryPointPath)) { | ||
return entryPointPath; | ||
@@ -179,3 +180,4 @@ } | ||
entryPointPath = (0, path_1.resolve)(packageJsonPath, "..", packageTypes ?? packageMain); | ||
if (/\.tsx?$/.test(entryPointPath) && (0, fs_1.existsSync)(entryPointPath)) { | ||
if (/\.([cm][tj]s|tsx?)$/.test(entryPointPath) && | ||
(0, fs_1.existsSync)(entryPointPath)) { | ||
return entryPointPath; | ||
@@ -182,0 +184,0 @@ } |
{ | ||
"name": "typedoc", | ||
"description": "Create api documentation for TypeScript projects.", | ||
"version": "0.23.0-beta.5", | ||
"version": "0.23.0-beta.6", | ||
"homepage": "https://typedoc.org", | ||
"main": "./dist/index.js", | ||
"exports": { | ||
".": "./dist/index.js", | ||
"./tsdoc.json": "./.config/typedoc-default.tsdoc.json" | ||
".": "./dist/index.js" | ||
}, | ||
@@ -36,3 +35,2 @@ "types": "./dist/index.d.ts", | ||
"devDependencies": { | ||
"@types/glob": "^7.2.0", | ||
"@types/lunr": "^2.3.4", | ||
@@ -68,3 +66,3 @@ "@types/marked": "^4.0.3", | ||
"/static", | ||
"/.config/typedoc-default.tsdoc.json" | ||
"/tsdoc.json" | ||
], | ||
@@ -71,0 +69,0 @@ "scripts": { |
"use strict"; | ||
(()=>{var Pe=Object.create;var ue=Object.defineProperty;var Oe=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Me=Object.prototype.hasOwnProperty;var De=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Re(e))!Me.call(t,i)&&i!==r&&ue(t,i,{get:()=>e[i],enumerable:!(n=Oe(e,i))||n.enumerable});return t};var He=(t,e,r)=>(r=t!=null?Pe(_e(t)):{},Fe(e||!t||!t.__esModule?ue(r,"default",{value:t,enumerable:!0}):r,t));var pe=De((de,fe)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i<n.length;i++){var s=n[i],o=e[s];if(Array.isArray(o)){r[s]=o.slice();continue}if(typeof o=="string"||typeof o=="number"||typeof o=="boolean"){r[s]=o;continue}throw new TypeError("clone is not deep and does not support nested objects")}return r},t.FieldRef=function(e,r,n){this.docRef=e,this.fieldName=r,this._stringValue=n},t.FieldRef.joiner="/",t.FieldRef.fromString=function(e){var r=e.indexOf(t.FieldRef.joiner);if(r===-1)throw"malformed field ref string";var n=e.slice(0,r),i=e.slice(r+1);return new t.FieldRef(i,n,e)},t.FieldRef.prototype.toString=function(){return this._stringValue==null&&(this._stringValue=this.fieldName+t.FieldRef.joiner+this.docRef),this._stringValue};t.Set=function(e){if(this.elements=Object.create(null),e){this.length=e.length;for(var r=0;r<this.length;r++)this.elements[e[r]]=!0}else this.length=0},t.Set.complete={intersect:function(e){return e},union:function(){return this},contains:function(){return!0}},t.Set.empty={intersect:function(){return this},union:function(e){return e},contains:function(){return!1}},t.Set.prototype.contains=function(e){return!!this.elements[e]},t.Set.prototype.intersect=function(e){var r,n,i,s=[];if(e===t.Set.complete)return this;if(e===t.Set.empty)return e;this.length<e.length?(r=this,n=e):(r=e,n=this),i=Object.keys(r.elements);for(var o=0;o<i.length;o++){var a=i[o];a in n.elements&&s.push(a)}return new t.Set(s)},t.Set.prototype.union=function(e){return e===t.Set.complete?t.Set.complete:e===t.Set.empty?this:new t.Set(Object.keys(this.elements).concat(Object.keys(e.elements)))},t.idf=function(e,r){var n=0;for(var i in e)i!="_index"&&(n+=Object.keys(e[i]).length);var s=(r-n+.5)/(n+.5);return Math.log(1+Math.abs(s))},t.Token=function(e,r){this.str=e||"",this.metadata=r||{}},t.Token.prototype.toString=function(){return this.str},t.Token.prototype.update=function(e){return this.str=e(this.str,this.metadata),this},t.Token.prototype.clone=function(e){return e=e||function(r){return r},new t.Token(e(this.str,this.metadata),this.metadata)};t.tokenizer=function(e,r){if(e==null||e==null)return[];if(Array.isArray(e))return e.map(function(m){return new t.Token(t.utils.asString(m).toLowerCase(),t.utils.clone(r))});for(var n=e.toString().toLowerCase(),i=n.length,s=[],o=0,a=0;o<=i;o++){var u=n.charAt(o),l=o-a;if(u.match(t.tokenizer.separator)||o==i){if(l>0){var h=t.utils.clone(r)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(n.slice(a,o),h))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. | ||
`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n<r;n++){for(var i=this._stack[n],s=[],o=0;o<e.length;o++){var a=i(e[o],o,e);if(!(a==null||a===""))if(Array.isArray(a))for(var u=0;u<a.length;u++)s.push(a[u]);else s.push(a)}e=s}return e},t.Pipeline.prototype.runString=function(e,r){var n=new t.Token(e,r);return this.run([n]).map(function(i){return i.toString()})},t.Pipeline.prototype.reset=function(){this._stack=[]},t.Pipeline.prototype.toJSON=function(){return this._stack.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})};t.Vector=function(e){this._magnitude=0,this.elements=e||[]},t.Vector.prototype.positionForIndex=function(e){if(this.elements.length==0)return 0;for(var r=0,n=this.elements.length/2,i=n-r,s=Math.floor(i/2),o=this.elements[s*2];i>1&&(o<e&&(r=s),o>e&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(o<e)return(s+1)*2},t.Vector.prototype.insert=function(e,r){this.upsert(e,r,function(){throw"duplicate index"})},t.Vector.prototype.upsert=function(e,r,n){this._magnitude=0;var i=this.positionForIndex(e);this.elements[i]==e?this.elements[i+1]=n(this.elements[i+1],r):this.elements.splice(i,0,e,r)},t.Vector.prototype.magnitude=function(){if(this._magnitude)return this._magnitude;for(var e=0,r=this.elements.length,n=1;n<r;n+=2){var i=this.elements[n];e+=i*i}return this._magnitude=Math.sqrt(e)},t.Vector.prototype.dot=function(e){for(var r=0,n=this.elements,i=e.elements,s=n.length,o=i.length,a=0,u=0,l=0,h=0;l<s&&h<o;)a=n[l],u=i[h],a<u?l+=2:a>u?h+=2:a==u&&(r+=n[l+1]*i[h+1],l+=2,h+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r<this.elements.length;r+=2,n++)e[n]=this.elements[r];return e},t.Vector.prototype.toJSON=function(){return this.elements};t.stemmer=function(){var e={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},r={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},n="[^aeiou]",i="[aeiouy]",s=n+"[^aeiouy]*",o=i+"[aeiou]*",a="^("+s+")?"+o+s,u="^("+s+")?"+o+s+"("+o+")?$",l="^("+s+")?"+o+s+o+s,h="^("+s+")?"+i,m=new RegExp(a),g=new RegExp(l),b=new RegExp(u),y=new RegExp(h),E=/^(.+?)(ss|i)es$/,f=/^(.+?)([^s])s$/,p=/^(.+?)eed$/,S=/^(.+?)(ed|ing)$/,w=/.$/,Q=/(at|bl|iz)$/,_=new RegExp("([^aeiouylsz])\\1$"),B=new RegExp("^"+s+i+"[^aeiouwxy]$"),V=/^(.+?[^aeiou])y$/,q=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,$=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,N=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,W=/^(.+?)(s|t)(ion)$/,P=/^(.+?)e$/,U=/ll$/,G=new RegExp("^"+s+i+"[^aeiouwxy]$"),j=function(c){var v,O,T,d,x,R,D;if(c.length<3)return c;if(T=c.substr(0,1),T=="y"&&(c=T.toUpperCase()+c.substr(1)),d=E,x=f,d.test(c)?c=c.replace(d,"$1$2"):x.test(c)&&(c=c.replace(x,"$1$2")),d=p,x=S,d.test(c)){var L=d.exec(c);d=m,d.test(L[1])&&(d=w,c=c.replace(d,""))}else if(x.test(c)){var L=x.exec(c);v=L[1],x=y,x.test(v)&&(c=v,x=Q,R=_,D=B,x.test(c)?c=c+"e":R.test(c)?(d=w,c=c.replace(d,"")):D.test(c)&&(c=c+"e"))}if(d=V,d.test(c)){var L=d.exec(c);v=L[1],c=v+"i"}if(d=q,d.test(c)){var L=d.exec(c);v=L[1],O=L[2],d=m,d.test(v)&&(c=v+e[O])}if(d=$,d.test(c)){var L=d.exec(c);v=L[1],O=L[2],d=m,d.test(v)&&(c=v+r[O])}if(d=N,x=W,d.test(c)){var L=d.exec(c);v=L[1],d=g,d.test(v)&&(c=v)}else if(x.test(c)){var L=x.exec(c);v=L[1]+L[2],x=g,x.test(v)&&(c=v)}if(d=P,d.test(c)){var L=d.exec(c);v=L[1],d=g,x=b,R=G,(d.test(v)||x.test(v)&&!R.test(v))&&(c=v)}return d=U,x=g,d.test(c)&&x.test(c)&&(d=w,c=c.replace(d,"")),T=="y"&&(c=T.toLowerCase()+c.substr(1)),c};return function(M){return M.update(j)}}(),t.Pipeline.registerFunction(t.stemmer,"stemmer");t.generateStopWordFilter=function(e){var r=e.reduce(function(n,i){return n[i]=i,n},{});return function(n){if(n&&r[n.toString()]!==n.toString())return n}},t.stopWordFilter=t.generateStopWordFilter(["a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"]),t.Pipeline.registerFunction(t.stopWordFilter,"stopWordFilter");t.trimmer=function(e){return e.update(function(r){return r.replace(/^\W+/,"").replace(/\W+$/,"")})},t.Pipeline.registerFunction(t.trimmer,"trimmer");t.TokenSet=function(){this.final=!1,this.edges={},this.id=t.TokenSet._nextId,t.TokenSet._nextId+=1},t.TokenSet._nextId=1,t.TokenSet.fromArray=function(e){for(var r=new t.TokenSet.Builder,n=0,i=e.length;n<i;n++)r.insert(e[n]);return r.finish(),r.root},t.TokenSet.fromClause=function(e){return"editDistance"in e?t.TokenSet.fromFuzzyString(e.term,e.editDistance):t.TokenSet.fromString(e.term)},t.TokenSet.fromFuzzyString=function(e,r){for(var n=new t.TokenSet,i=[{node:n,editsRemaining:r,str:e}];i.length;){var s=i.pop();if(s.str.length>0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),m=s.str.charAt(1),g;m in s.node.edges?g=s.node.edges[m]:(g=new t.TokenSet,s.node.edges[m]=g),s.str.length==1&&(g.final=!0),i.push({node:g,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i<s;i++){var o=e[i],a=i==s-1;if(o=="*")r.edges[o]=r,r.final=a;else{var u=new t.TokenSet;u.final=a,r.edges[o]=u,r=u}}return n},t.TokenSet.prototype.toArray=function(){for(var e=[],r=[{prefix:"",node:this}];r.length;){var n=r.pop(),i=Object.keys(n.node.edges),s=i.length;n.node.final&&(n.prefix.charAt(0),e.push(n.prefix));for(var o=0;o<s;o++){var a=i[o];r.push({prefix:n.prefix.concat(a),node:n.node.edges[a]})}}return e},t.TokenSet.prototype.toString=function(){if(this._str)return this._str;for(var e=this.final?"1":"0",r=Object.keys(this.edges).sort(),n=r.length,i=0;i<n;i++){var s=r[i],o=this.edges[s];e=e+s+o.id}return e},t.TokenSet.prototype.intersect=function(e){for(var r=new t.TokenSet,n=void 0,i=[{qNode:e,output:r,node:this}];i.length;){n=i.pop();for(var s=Object.keys(n.qNode.edges),o=s.length,a=Object.keys(n.node.edges),u=a.length,l=0;l<o;l++)for(var h=s[l],m=0;m<u;m++){var g=a[m];if(g==h||h=="*"){var b=n.node.edges[g],y=n.qNode.edges[h],E=b.final&&y.final,f=void 0;g in n.output.edges?(f=n.output.edges[g],f.final=f.final||E):(f=new t.TokenSet,f.final=E,n.output.edges[g]=f),i.push({qNode:y,output:f,node:b})}}}return r},t.TokenSet.Builder=function(){this.previousWord="",this.root=new t.TokenSet,this.uncheckedNodes=[],this.minimizedNodes={}},t.TokenSet.Builder.prototype.insert=function(e){var r,n=0;if(e<this.previousWord)throw new Error("Out of order word insertion");for(var i=0;i<e.length&&i<this.previousWord.length&&e[i]==this.previousWord[i];i++)n++;this.minimize(n),this.uncheckedNodes.length==0?r=this.root:r=this.uncheckedNodes[this.uncheckedNodes.length-1].child;for(var i=n;i<e.length;i++){var s=new t.TokenSet,o=e[i];r.edges[o]=s,this.uncheckedNodes.push({parent:r,char:o,child:s}),r=s}r.final=!0,this.previousWord=e},t.TokenSet.Builder.prototype.finish=function(){this.minimize(0)},t.TokenSet.Builder.prototype.minimize=function(e){for(var r=this.uncheckedNodes.length-1;r>=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u<this.fields.length;u++)i[this.fields[u]]=new t.Vector;e.call(r,r);for(var u=0;u<r.clauses.length;u++){var l=r.clauses[u],h=null,m=t.Set.empty;l.usePipeline?h=this.pipeline.runString(l.term,{fields:l.fields}):h=[l.term];for(var g=0;g<h.length;g++){var b=h[g];l.term=b;var y=t.TokenSet.fromClause(l),E=this.tokenSet.intersect(y).toArray();if(E.length===0&&l.presence===t.Query.presence.REQUIRED){for(var f=0;f<l.fields.length;f++){var p=l.fields[f];o[p]=t.Set.empty}break}for(var S=0;S<E.length;S++)for(var w=E[S],Q=this.invertedIndex[w],_=Q._index,f=0;f<l.fields.length;f++){var p=l.fields[f],B=Q[p],V=Object.keys(B),q=w+"/"+p,$=new t.Set(V);if(l.presence==t.Query.presence.REQUIRED&&(m=m.union($),o[p]===void 0&&(o[p]=t.Set.complete)),l.presence==t.Query.presence.PROHIBITED){a[p]===void 0&&(a[p]=t.Set.empty),a[p]=a[p].union($);continue}if(i[p].upsert(_,l.boost,function(Qe,Ce){return Qe+Ce}),!s[q]){for(var N=0;N<V.length;N++){var W=V[N],P=new t.FieldRef(W,p),U=B[W],G;(G=n[P])===void 0?n[P]=new t.MatchData(w,p,U):G.add(w,p,U)}s[q]=!0}}}if(l.presence===t.Query.presence.REQUIRED)for(var f=0;f<l.fields.length;f++){var p=l.fields[f];o[p]=o[p].intersect(m)}}for(var j=t.Set.complete,M=t.Set.empty,u=0;u<this.fields.length;u++){var p=this.fields[u];o[p]&&(j=j.intersect(o[p])),a[p]&&(M=M.union(a[p]))}var c=Object.keys(n),v=[],O=Object.create(null);if(r.isNegated()){c=Object.keys(this.fieldVectors);for(var u=0;u<c.length;u++){var P=c[u],T=t.FieldRef.fromString(P);n[P]=new t.MatchData}}for(var u=0;u<c.length;u++){var T=t.FieldRef.fromString(c[u]),d=T.docRef;if(!!j.contains(d)&&!M.contains(d)){var x=this.fieldVectors[T],R=i[T.fieldName].similarity(x),D;if((D=O[d])!==void 0)D.score+=R,D.matchData.combine(n[T]);else{var L={ref:d,score:R,matchData:n[T]};O[d]=L,v.push(L)}}}return v.sort(function(ke,Ie){return Ie.score-ke.score})},t.Index.prototype.toJSON=function(){var e=Object.keys(this.invertedIndex).sort().map(function(n){return[n,this.invertedIndex[n]]},this),r=Object.keys(this.fieldVectors).map(function(n){return[n,this.fieldVectors[n].toJSON()]},this);return{version:t.version,fields:this.fields,fieldVectors:r,invertedIndex:e,pipeline:this.pipeline.toJSON()}},t.Index.load=function(e){var r={},n={},i=e.fieldVectors,s=Object.create(null),o=e.invertedIndex,a=new t.TokenSet.Builder,u=t.Pipeline.load(e.pipeline);e.version!=t.version&&t.utils.warn("Version mismatch when loading serialised index. Current version of lunr '"+t.version+"' does not match serialized index '"+e.version+"'");for(var l=0;l<i.length;l++){var h=i[l],m=h[0],g=h[1];n[m]=new t.Vector(g)}for(var l=0;l<o.length;l++){var h=o[l],b=h[0],y=h[1];a.insert(b),s[b]=y}return a.finish(),r.fields=e.fields,r.fieldVectors=n,r.invertedIndex=s,r.tokenSet=a.root,r.pipeline=u,new t.Index(r)};t.Builder=function(){this._ref="id",this._fields=Object.create(null),this._documents=Object.create(null),this.invertedIndex=Object.create(null),this.fieldTermFrequencies={},this.fieldLengths={},this.tokenizer=t.tokenizer,this.pipeline=new t.Pipeline,this.searchPipeline=new t.Pipeline,this.documentCount=0,this._b=.75,this._k1=1.2,this.termIndex=0,this.metadataWhitelist=[]},t.Builder.prototype.ref=function(e){this._ref=e},t.Builder.prototype.field=function(e,r){if(/\//.test(e))throw new RangeError("Field '"+e+"' contains illegal character '/'");this._fields[e]=r||{}},t.Builder.prototype.b=function(e){e<0?this._b=0:e>1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s<i.length;s++){var o=i[s],a=this._fields[o].extractor,u=a?a(e):e[o],l=this.tokenizer(u,{fields:[o]}),h=this.pipeline.run(l),m=new t.FieldRef(n,o),g=Object.create(null);this.fieldTermFrequencies[m]=g,this.fieldLengths[m]=0,this.fieldLengths[m]+=h.length;for(var b=0;b<h.length;b++){var y=h[b];if(g[y]==null&&(g[y]=0),g[y]+=1,this.invertedIndex[y]==null){var E=Object.create(null);E._index=this.termIndex,this.termIndex+=1;for(var f=0;f<i.length;f++)E[i[f]]=Object.create(null);this.invertedIndex[y]=E}this.invertedIndex[y][o][n]==null&&(this.invertedIndex[y][o][n]=Object.create(null));for(var p=0;p<this.metadataWhitelist.length;p++){var S=this.metadataWhitelist[p],w=y.metadata[S];this.invertedIndex[y][o][n][S]==null&&(this.invertedIndex[y][o][n][S]=[]),this.invertedIndex[y][o][n][S].push(w)}}}},t.Builder.prototype.calculateAverageFieldLengths=function(){for(var e=Object.keys(this.fieldLengths),r=e.length,n={},i={},s=0;s<r;s++){var o=t.FieldRef.fromString(e[s]),a=o.fieldName;i[a]||(i[a]=0),i[a]+=1,n[a]||(n[a]=0),n[a]+=this.fieldLengths[o]}for(var u=Object.keys(this._fields),s=0;s<u.length;s++){var l=u[s];n[l]=n[l]/i[l]}this.averageFieldLength=n},t.Builder.prototype.createFieldVectors=function(){for(var e={},r=Object.keys(this.fieldTermFrequencies),n=r.length,i=Object.create(null),s=0;s<n;s++){for(var o=t.FieldRef.fromString(r[s]),a=o.fieldName,u=this.fieldLengths[o],l=new t.Vector,h=this.fieldTermFrequencies[o],m=Object.keys(h),g=m.length,b=this._fields[a].boost||1,y=this._documents[o.docRef].boost||1,E=0;E<g;E++){var f=m[E],p=h[f],S=this.invertedIndex[f]._index,w,Q,_;i[f]===void 0?(w=t.idf(this.invertedIndex[f],this.documentCount),i[f]=w):w=i[f],Q=w*((this._k1+1)*p)/(this._k1*(1-this._b+this._b*(u/this.averageFieldLength[a]))+p),Q*=b,Q*=y,_=Math.round(Q*1e3)/1e3,l.insert(S,_)}e[o]=l}this.fieldVectors=e},t.Builder.prototype.createTokenSet=function(){this.tokenSet=t.TokenSet.fromArray(Object.keys(this.invertedIndex).sort())},t.Builder.prototype.build=function(){return this.calculateAverageFieldLengths(),this.createFieldVectors(),this.createTokenSet(),new t.Index({invertedIndex:this.invertedIndex,fieldVectors:this.fieldVectors,tokenSet:this.tokenSet,fields:Object.keys(this._fields),pipeline:this.searchPipeline})},t.Builder.prototype.use=function(e){var r=Array.prototype.slice.call(arguments,1);r.unshift(this),e.apply(this,r)},t.MatchData=function(e,r,n){for(var i=Object.create(null),s=Object.keys(n||{}),o=0;o<s.length;o++){var a=s[o];i[a]=n[a].slice()}this.metadata=Object.create(null),e!==void 0&&(this.metadata[e]=Object.create(null),this.metadata[e][r]=i)},t.MatchData.prototype.combine=function(e){for(var r=Object.keys(e.metadata),n=0;n<r.length;n++){var i=r[n],s=Object.keys(e.metadata[i]);this.metadata[i]==null&&(this.metadata[i]=Object.create(null));for(var o=0;o<s.length;o++){var a=s[o],u=Object.keys(e.metadata[i][a]);this.metadata[i][a]==null&&(this.metadata[i][a]=Object.create(null));for(var l=0;l<u.length;l++){var h=u[l];this.metadata[i][a][h]==null?this.metadata[i][a][h]=e.metadata[i][a][h]:this.metadata[i][a][h]=this.metadata[i][a][h].concat(e.metadata[i][a][h])}}}},t.MatchData.prototype.add=function(e,r,n){if(!(e in this.metadata)){this.metadata[e]=Object.create(null),this.metadata[e][r]=n;return}if(!(r in this.metadata[e])){this.metadata[e][r]=n;return}for(var i=Object.keys(n),s=0;s<i.length;s++){var o=i[s];o in this.metadata[e][r]?this.metadata[e][r][o]=this.metadata[e][r][o].concat(n[o]):this.metadata[e][r][o]=n[o]}},t.Query=function(e){this.clauses=[],this.allFields=e},t.Query.wildcard=new String("*"),t.Query.wildcard.NONE=0,t.Query.wildcard.LEADING=1,t.Query.wildcard.TRAILING=2,t.Query.presence={OPTIONAL:1,REQUIRED:2,PROHIBITED:3},t.Query.prototype.clause=function(e){return"fields"in e||(e.fields=this.allFields),"boost"in e||(e.boost=1),"usePipeline"in e||(e.usePipeline=!0),"wildcard"in e||(e.wildcard=t.Query.wildcard.NONE),e.wildcard&t.Query.wildcard.LEADING&&e.term.charAt(0)!=t.Query.wildcard&&(e.term="*"+e.term),e.wildcard&t.Query.wildcard.TRAILING&&e.term.slice(-1)!=t.Query.wildcard&&(e.term=""+e.term+"*"),"presence"in e||(e.presence=t.Query.presence.OPTIONAL),this.clauses.push(e),this},t.Query.prototype.isNegated=function(){for(var e=0;e<this.clauses.length;e++)if(this.clauses[e].presence!=t.Query.presence.PROHIBITED)return!1;return!0},t.Query.prototype.term=function(e,r){if(Array.isArray(e))return e.forEach(function(i){this.term(i,t.utils.clone(r))},this),this;var n=r||{};return n.term=e.toString(),this.clause(n),this},t.QueryParseError=function(e,r,n){this.name="QueryParseError",this.message=e,this.start=r,this.end=n},t.QueryParseError.prototype=new Error,t.QueryLexer=function(e){this.lexemes=[],this.str=e,this.length=e.length,this.pos=0,this.start=0,this.escapeCharPositions=[]},t.QueryLexer.prototype.run=function(){for(var e=t.QueryLexer.lexText;e;)e=e(this)},t.QueryLexer.prototype.sliceString=function(){for(var e=[],r=this.start,n=this.pos,i=0;i<this.escapeCharPositions.length;i++)n=this.escapeCharPositions[i],e.push(this.str.slice(r,n)),r=n+1;return e.push(this.str.slice(r,this.pos)),this.escapeCharPositions.length=0,e.join("")},t.QueryLexer.prototype.emit=function(e){this.lexemes.push({type:e,str:this.sliceString(),start:this.start,end:this.pos}),this.start=this.pos},t.QueryLexer.prototype.escapeCharacter=function(){this.escapeCharPositions.push(this.pos-1),this.pos+=1},t.QueryLexer.prototype.next=function(){if(this.pos>=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos<this.length},t.QueryLexer.EOS="EOS",t.QueryLexer.FIELD="FIELD",t.QueryLexer.TERM="TERM",t.QueryLexer.EDIT_DISTANCE="EDIT_DISTANCE",t.QueryLexer.BOOST="BOOST",t.QueryLexer.PRESENCE="PRESENCE",t.QueryLexer.lexField=function(e){return e.backup(),e.emit(t.QueryLexer.FIELD),e.ignore(),t.QueryLexer.lexText},t.QueryLexer.lexTerm=function(e){if(e.width()>1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof de=="object"?fe.exports=r():e.lunr=r()}(this,function(){return t})})()});var ce=[];function F(t,e){ce.push({selector:e,constructor:t})}var Y=class{constructor(){this.createComponents(document.body)}createComponents(e){ce.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n}),n.dataset.hasInstance=String(!0))})})}};var k=class{constructor(e){this.el=e.el}};var J=class{constructor(){this.listeners={}}addEventListener(e,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(r)}removeEventListener(e,r){if(!(e in this.listeners))return;let n=this.listeners[e];for(let i=0,s=n.length;i<s;i++)if(n[i]===r){n.splice(i,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return!0;let r=this.listeners[e.type].slice();for(let n=0,i=r.length;n<i;n++)r[n].call(this,e);return!e.defaultPrevented}};var ne=(t,e=100)=>{let r=Date.now();return(...n)=>{r+e-Date.now()<0&&(t(...n),r=Date.now())}};var ie=class extends J{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.navigation=document.querySelector(".col-menu"),window.addEventListener("scroll",ne(()=>this.onScroll(),10)),window.addEventListener("resize",ne(()=>this.onResize(),10)),this.onResize(),this.onScroll()}triggerResize(){let r=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(r)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let r=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(r)}onScroll(){this.scrollTop=window.scrollY||0;let r=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(r),this.hideShowToolbar()}hideShowToolbar(){let r=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0,r!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.navigation?.classList.toggle("col-menu--hide")),this.lastY=this.scrollTop}},I=ie;I.instance=new ie;var X=class extends k{constructor(r){super(r);this.anchors=[];this.index=-1;I.instance.addEventListener("resize",()=>this.onResize()),I.instance.addEventListener("scroll",n=>this.onScroll(n)),this.createAnchors()}createAnchors(){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),this.el.querySelectorAll("a").forEach(n=>{let i=n.href;if(i.indexOf("#")==-1||i.substring(0,r.length)!=r)return;let s=i.substring(i.indexOf("#")+1),o=document.querySelector("a.tsd-anchor[name="+s+"]"),a=n.parentNode;!o||!a||this.anchors.push({link:a,anchor:o,position:0})}),this.onResize()}onResize(){let r;for(let i=0,s=this.anchors.length;i<s;i++){r=this.anchors[i];let o=r.anchor.getBoundingClientRect();r.position=o.top+document.body.scrollTop}this.anchors.sort((i,s)=>i.position-s.position);let n=new CustomEvent("scroll",{detail:{scrollTop:I.instance.scrollTop}});this.onScroll(n)}onScroll(r){let n=r.detail.scrollTop+5,i=this.anchors,s=i.length-1,o=this.index;for(;o>-1&&i[o].position>n;)o-=1;for(;o<s&&i[o+1].position<n;)o+=1;this.index!=o&&(this.index>-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=o,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var he=(t,e=100)=>{let r;return(...n)=>{clearTimeout(r),r=setTimeout(()=>t(n),e)}};var ve=He(pe());function ye(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ae(t,n,r,s)}function Ae(t,e,r,n){r.addEventListener("input",he(()=>{Ne(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?je(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?me(e,-1):s.key==="ArrowDown"?me(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function Ve(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ve.Index.load(window.searchData.index))}function Ne(t,e,r,n){if(Ve(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=i?n.index.search(`*${i}*`):[];for(let o=0;o<s.length;o++){let a=s[o],u=n.data.rows[Number(a.ref)],l=1;u.name.toLowerCase().startsWith(i.toLowerCase())&&(l*=1+1/(Math.abs(u.name.length-i.length)*10)),l*=u.boost??1,a.score*=l}s.sort((o,a)=>a.score-o.score);for(let o=0,a=Math.min(10,s.length);o<a;o++){let u=n.data.rows[Number(s[o].ref)],l=ge(u.name,i);u.parent&&(l=`<span class="parent">${ge(u.parent,i)}.</span>${l}`);let h=document.createElement("li");h.classList.value=u.classes??"";let m=document.createElement("a");m.href=n.base+u.url,m.innerHTML=l,h.append(m),e.appendChild(h)}}function me(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function je(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function ge(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(se(t.substring(s,o)),`<b>${se(t.substring(o,o+n.length))}</b>`),s=o+n.length,o=r.indexOf(n,s);return i.push(se(t.substring(s))),i.join("")}var ze={"&":"&","<":"<",">":">","'":"'",'"':"""};function se(t){return t.replace(/[&<>"'"]/g,e=>ze[e])}var oe=class{constructor(e,r){this.signature=e,this.description=r}addClass(e){this.signature.classList.add(e),this.description.classList.add(e)}removeClass(e){this.signature.classList.remove(e),this.description.classList.remove(e)}},Z=class extends k{constructor(r){super(r);this.groups=[];this.index=-1;this.createGroups(),this.container&&(this.el.classList.add("active"),Array.from(this.el.children).forEach(n=>{n.addEventListener("touchstart",i=>this.onClick(i)),n.addEventListener("click",i=>this.onClick(i))}),this.container.classList.add("active"),this.setIndex(this.inferIndexFromHash()))}setIndex(r){if(r<0&&(r=0),r>this.groups.length-1&&(r=this.groups.length-1),this.index==r)return;let n=this.groups[r];if(this.index>-1){let i=this.groups[this.index];if(i.removeClass("current"),i.addClass("fade-out"),n.addClass("current"),n.addClass("fade-in"),n.signature.id){let s=new URL(location.href);s.hash=n.signature.id,history.replaceState({},"",s)}I.instance.triggerResize(),setTimeout(()=>{i.removeClass("fade-out"),n.removeClass("fade-in")},300)}else n.addClass("current"),I.instance.triggerResize();this.index=r}createGroups(){let r=this.el.children;if(r.length<2)return;this.container=this.el.nextElementSibling;let n=this.container.children;this.groups=[];for(let i=0;i<r.length;i++)this.groups.push(new oe(r[i],n[i]))}onClick(r){this.groups.forEach((n,i)=>{n.signature===r.currentTarget&&this.setIndex(i)})}inferIndexFromHash(){let r=location.hash.substring(1),n=this.groups.findIndex(i=>i.signature.id===r);return Math.max(0,n)}};var H="mousedown",Le="mousemove",z="mouseup",K={x:0,y:0},xe=!1,ae=!1,Be=!1,A=!1,Ee=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Ee?"is-mobile":"not-mobile");Ee&&"ontouchstart"in document.documentElement&&(Be=!0,H="touchstart",Le="touchmove",z="touchend");document.addEventListener(H,t=>{ae=!0,A=!1;let e=H=="touchstart"?t.targetTouches[0]:t;K.y=e.pageY||0,K.x=e.pageX||0});document.addEventListener(Le,t=>{if(!!ae&&!A){let e=H=="touchstart"?t.targetTouches[0]:t,r=K.x-(e.pageX||0),n=K.y-(e.pageY||0);A=Math.sqrt(r*r+n*n)>10}});document.addEventListener(z,()=>{ae=!1});document.addEventListener("click",t=>{xe&&(t.preventDefault(),t.stopImmediatePropagation(),xe=!1)});var ee=class extends k{constructor(r){super(r);this.className=this.el.dataset.toggle||"",this.el.addEventListener(z,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(H,n=>this.onDocumentPointerDown(n)),document.addEventListener(z,n=>this.onDocumentPointerUp(n))}setActive(r){if(this.active==r)return;this.active=r,document.documentElement.classList.toggle("has-"+this.className,r),this.el.classList.toggle("active",r);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(r){A||(this.setActive(!0),r.preventDefault())}onDocumentPointerDown(r){if(this.active){if(r.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(r){if(!A&&this.active&&r.target.closest(".col-menu")){let n=r.target.closest("a");if(n){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),n.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var le;try{le=localStorage}catch{le={getItem(){return null},setItem(){}}}var C=le;var be=document.head.appendChild(document.createElement("style"));be.dataset.for="filters";var te=class extends k{constructor(r){super(r);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),be.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } | ||
`}fromLocalStorage(){let r=C.getItem(this.key);return r?r==="true":this.el.checked}setLocalStorage(r){C.setItem(this.key,r.toString()),this.value=r,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let n=Array.from(r.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);r.style.display=n?"none":"block"})}};var re=class extends k{constructor(r){super(r);this.calculateHeights(),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.textContent.replace(/\s+/g,"-").toLowerCase()}`,this.setLocalStorage(this.fromLocalStorage(),!0),this.summary.addEventListener("click",n=>this.toggleVisibility(n)),this.icon.style.transform=this.getIconRotation()}getIconRotation(r=this.el.open){return`rotate(${r?0:-90}deg)`}calculateHeights(){let r=this.el.open,{position:n,left:i}=this.el.style;this.el.style.position="fixed",this.el.style.left="-9999px",this.el.open=!0,this.expandedHeight=this.el.offsetHeight+"px",this.el.open=!1,this.collapsedHeight=this.el.offsetHeight+"px",this.el.open=r,this.el.style.height=r?this.expandedHeight:this.collapsedHeight,this.el.style.position=n,this.el.style.left=i}toggleVisibility(r){r.preventDefault(),this.el.style.overflow="hidden",this.el.open?this.collapse():this.expand()}expand(r=!0){this.el.open=!0,this.animate(this.collapsedHeight,this.expandedHeight,{opening:!0,duration:r?300:0})}collapse(r=!0){this.animate(this.expandedHeight,this.collapsedHeight,{opening:!1,duration:r?300:0})}animate(r,n,{opening:i,duration:s=300}){if(this.animation)return;let o={duration:s,easing:"ease"};this.animation=this.el.animate({height:[r,n]},o),this.icon.animate({transform:[this.icon.style.transform||this.getIconRotation(!i),this.getIconRotation(i)]},o).addEventListener("finish",()=>{this.icon.style.transform=this.getIconRotation(i)}),this.animation.addEventListener("finish",()=>this.animationEnd(i))}animationEnd(r){this.el.open=r,this.animation=void 0,this.el.style.height="auto",this.el.style.overflow="visible",this.setLocalStorage(r)}fromLocalStorage(){let r=C.getItem(this.key);return r?r==="true":this.el.open}setLocalStorage(r,n=!1){this.fromLocalStorage()===r&&!n||(C.setItem(this.key,r.toString()),this.el.open=r,this.handleValueChange(n))}handleValueChange(r=!1){this.fromLocalStorage()===this.el.open&&!r||(this.fromLocalStorage()?this.expand(!1):this.collapse(!1))}};function Se(t){let e=C.getItem("tsd-theme")||"os";t.value=e,we(e),t.addEventListener("change",()=>{C.setItem("tsd-theme",t.value),we(t.value)})}function we(t){document.documentElement.dataset.theme=t}ye();F(X,".menu-highlight");F(Z,".tsd-signatures");F(ee,"a[data-toggle]");F(re,".tsd-index-accordion");F(te,".tsd-filter-item input[type=checkbox]");var Te=document.getElementById("theme");Te&&Se(Te);var qe=new Y;Object.defineProperty(window,"app",{value:qe});})(); | ||
(()=>{var Pe=Object.create;var ue=Object.defineProperty;var Oe=Object.getOwnPropertyDescriptor;var Re=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Me=Object.prototype.hasOwnProperty;var De=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Re(e))!Me.call(t,i)&&i!==n&&ue(t,i,{get:()=>e[i],enumerable:!(r=Oe(e,i))||r.enumerable});return t};var He=(t,e,n)=>(n=t!=null?Pe(_e(t)):{},Fe(e||!t||!t.__esModule?ue(n,"default",{value:t,enumerable:!0}):n,t));var fe=De((de,pe)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i<r.length;i++){var s=r[i],o=e[s];if(Array.isArray(o)){n[s]=o.slice();continue}if(typeof o=="string"||typeof o=="number"||typeof o=="boolean"){n[s]=o;continue}throw new TypeError("clone is not deep and does not support nested objects")}return n},t.FieldRef=function(e,n,r){this.docRef=e,this.fieldName=n,this._stringValue=r},t.FieldRef.joiner="/",t.FieldRef.fromString=function(e){var n=e.indexOf(t.FieldRef.joiner);if(n===-1)throw"malformed field ref string";var r=e.slice(0,n),i=e.slice(n+1);return new t.FieldRef(i,r,e)},t.FieldRef.prototype.toString=function(){return this._stringValue==null&&(this._stringValue=this.fieldName+t.FieldRef.joiner+this.docRef),this._stringValue};t.Set=function(e){if(this.elements=Object.create(null),e){this.length=e.length;for(var n=0;n<this.length;n++)this.elements[e[n]]=!0}else this.length=0},t.Set.complete={intersect:function(e){return e},union:function(){return this},contains:function(){return!0}},t.Set.empty={intersect:function(){return this},union:function(e){return e},contains:function(){return!1}},t.Set.prototype.contains=function(e){return!!this.elements[e]},t.Set.prototype.intersect=function(e){var n,r,i,s=[];if(e===t.Set.complete)return this;if(e===t.Set.empty)return e;this.length<e.length?(n=this,r=e):(n=e,r=this),i=Object.keys(n.elements);for(var o=0;o<i.length;o++){var a=i[o];a in r.elements&&s.push(a)}return new t.Set(s)},t.Set.prototype.union=function(e){return e===t.Set.complete?t.Set.complete:e===t.Set.empty?this:new t.Set(Object.keys(this.elements).concat(Object.keys(e.elements)))},t.idf=function(e,n){var r=0;for(var i in e)i!="_index"&&(r+=Object.keys(e[i]).length);var s=(n-r+.5)/(r+.5);return Math.log(1+Math.abs(s))},t.Token=function(e,n){this.str=e||"",this.metadata=n||{}},t.Token.prototype.toString=function(){return this.str},t.Token.prototype.update=function(e){return this.str=e(this.str,this.metadata),this},t.Token.prototype.clone=function(e){return e=e||function(n){return n},new t.Token(e(this.str,this.metadata),this.metadata)};t.tokenizer=function(e,n){if(e==null||e==null)return[];if(Array.isArray(e))return e.map(function(m){return new t.Token(t.utils.asString(m).toLowerCase(),t.utils.clone(n))});for(var r=e.toString().toLowerCase(),i=r.length,s=[],o=0,a=0;o<=i;o++){var u=r.charAt(o),l=o-a;if(u.match(t.tokenizer.separator)||o==i){if(l>0){var h=t.utils.clone(n)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(r.slice(a,o),h))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. | ||
`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r<n;r++){for(var i=this._stack[r],s=[],o=0;o<e.length;o++){var a=i(e[o],o,e);if(!(a==null||a===""))if(Array.isArray(a))for(var u=0;u<a.length;u++)s.push(a[u]);else s.push(a)}e=s}return e},t.Pipeline.prototype.runString=function(e,n){var r=new t.Token(e,n);return this.run([r]).map(function(i){return i.toString()})},t.Pipeline.prototype.reset=function(){this._stack=[]},t.Pipeline.prototype.toJSON=function(){return this._stack.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})};t.Vector=function(e){this._magnitude=0,this.elements=e||[]},t.Vector.prototype.positionForIndex=function(e){if(this.elements.length==0)return 0;for(var n=0,r=this.elements.length/2,i=r-n,s=Math.floor(i/2),o=this.elements[s*2];i>1&&(o<e&&(n=s),o>e&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(o<e)return(s+1)*2},t.Vector.prototype.insert=function(e,n){this.upsert(e,n,function(){throw"duplicate index"})},t.Vector.prototype.upsert=function(e,n,r){this._magnitude=0;var i=this.positionForIndex(e);this.elements[i]==e?this.elements[i+1]=r(this.elements[i+1],n):this.elements.splice(i,0,e,n)},t.Vector.prototype.magnitude=function(){if(this._magnitude)return this._magnitude;for(var e=0,n=this.elements.length,r=1;r<n;r+=2){var i=this.elements[r];e+=i*i}return this._magnitude=Math.sqrt(e)},t.Vector.prototype.dot=function(e){for(var n=0,r=this.elements,i=e.elements,s=r.length,o=i.length,a=0,u=0,l=0,h=0;l<s&&h<o;)a=r[l],u=i[h],a<u?l+=2:a>u?h+=2:a==u&&(n+=r[l+1]*i[h+1],l+=2,h+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n<this.elements.length;n+=2,r++)e[r]=this.elements[n];return e},t.Vector.prototype.toJSON=function(){return this.elements};t.stemmer=function(){var e={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},n={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},r="[^aeiou]",i="[aeiouy]",s=r+"[^aeiouy]*",o=i+"[aeiou]*",a="^("+s+")?"+o+s,u="^("+s+")?"+o+s+"("+o+")?$",l="^("+s+")?"+o+s+o+s,h="^("+s+")?"+i,m=new RegExp(a),g=new RegExp(l),b=new RegExp(u),y=new RegExp(h),E=/^(.+?)(ss|i)es$/,p=/^(.+?)([^s])s$/,f=/^(.+?)eed$/,S=/^(.+?)(ed|ing)$/,w=/.$/,Q=/(at|bl|iz)$/,_=new RegExp("([^aeiouylsz])\\1$"),B=new RegExp("^"+s+i+"[^aeiouwxy]$"),V=/^(.+?[^aeiou])y$/,q=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,$=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,N=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,W=/^(.+?)(s|t)(ion)$/,P=/^(.+?)e$/,U=/ll$/,G=new RegExp("^"+s+i+"[^aeiouwxy]$"),j=function(c){var v,O,T,d,x,R,D;if(c.length<3)return c;if(T=c.substr(0,1),T=="y"&&(c=T.toUpperCase()+c.substr(1)),d=E,x=p,d.test(c)?c=c.replace(d,"$1$2"):x.test(c)&&(c=c.replace(x,"$1$2")),d=f,x=S,d.test(c)){var L=d.exec(c);d=m,d.test(L[1])&&(d=w,c=c.replace(d,""))}else if(x.test(c)){var L=x.exec(c);v=L[1],x=y,x.test(v)&&(c=v,x=Q,R=_,D=B,x.test(c)?c=c+"e":R.test(c)?(d=w,c=c.replace(d,"")):D.test(c)&&(c=c+"e"))}if(d=V,d.test(c)){var L=d.exec(c);v=L[1],c=v+"i"}if(d=q,d.test(c)){var L=d.exec(c);v=L[1],O=L[2],d=m,d.test(v)&&(c=v+e[O])}if(d=$,d.test(c)){var L=d.exec(c);v=L[1],O=L[2],d=m,d.test(v)&&(c=v+n[O])}if(d=N,x=W,d.test(c)){var L=d.exec(c);v=L[1],d=g,d.test(v)&&(c=v)}else if(x.test(c)){var L=x.exec(c);v=L[1]+L[2],x=g,x.test(v)&&(c=v)}if(d=P,d.test(c)){var L=d.exec(c);v=L[1],d=g,x=b,R=G,(d.test(v)||x.test(v)&&!R.test(v))&&(c=v)}return d=U,x=g,d.test(c)&&x.test(c)&&(d=w,c=c.replace(d,"")),T=="y"&&(c=T.toLowerCase()+c.substr(1)),c};return function(M){return M.update(j)}}(),t.Pipeline.registerFunction(t.stemmer,"stemmer");t.generateStopWordFilter=function(e){var n=e.reduce(function(r,i){return r[i]=i,r},{});return function(r){if(r&&n[r.toString()]!==r.toString())return r}},t.stopWordFilter=t.generateStopWordFilter(["a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"]),t.Pipeline.registerFunction(t.stopWordFilter,"stopWordFilter");t.trimmer=function(e){return e.update(function(n){return n.replace(/^\W+/,"").replace(/\W+$/,"")})},t.Pipeline.registerFunction(t.trimmer,"trimmer");t.TokenSet=function(){this.final=!1,this.edges={},this.id=t.TokenSet._nextId,t.TokenSet._nextId+=1},t.TokenSet._nextId=1,t.TokenSet.fromArray=function(e){for(var n=new t.TokenSet.Builder,r=0,i=e.length;r<i;r++)n.insert(e[r]);return n.finish(),n.root},t.TokenSet.fromClause=function(e){return"editDistance"in e?t.TokenSet.fromFuzzyString(e.term,e.editDistance):t.TokenSet.fromString(e.term)},t.TokenSet.fromFuzzyString=function(e,n){for(var r=new t.TokenSet,i=[{node:r,editsRemaining:n,str:e}];i.length;){var s=i.pop();if(s.str.length>0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),m=s.str.charAt(1),g;m in s.node.edges?g=s.node.edges[m]:(g=new t.TokenSet,s.node.edges[m]=g),s.str.length==1&&(g.final=!0),i.push({node:g,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i<s;i++){var o=e[i],a=i==s-1;if(o=="*")n.edges[o]=n,n.final=a;else{var u=new t.TokenSet;u.final=a,n.edges[o]=u,n=u}}return r},t.TokenSet.prototype.toArray=function(){for(var e=[],n=[{prefix:"",node:this}];n.length;){var r=n.pop(),i=Object.keys(r.node.edges),s=i.length;r.node.final&&(r.prefix.charAt(0),e.push(r.prefix));for(var o=0;o<s;o++){var a=i[o];n.push({prefix:r.prefix.concat(a),node:r.node.edges[a]})}}return e},t.TokenSet.prototype.toString=function(){if(this._str)return this._str;for(var e=this.final?"1":"0",n=Object.keys(this.edges).sort(),r=n.length,i=0;i<r;i++){var s=n[i],o=this.edges[s];e=e+s+o.id}return e},t.TokenSet.prototype.intersect=function(e){for(var n=new t.TokenSet,r=void 0,i=[{qNode:e,output:n,node:this}];i.length;){r=i.pop();for(var s=Object.keys(r.qNode.edges),o=s.length,a=Object.keys(r.node.edges),u=a.length,l=0;l<o;l++)for(var h=s[l],m=0;m<u;m++){var g=a[m];if(g==h||h=="*"){var b=r.node.edges[g],y=r.qNode.edges[h],E=b.final&&y.final,p=void 0;g in r.output.edges?(p=r.output.edges[g],p.final=p.final||E):(p=new t.TokenSet,p.final=E,r.output.edges[g]=p),i.push({qNode:y,output:p,node:b})}}}return n},t.TokenSet.Builder=function(){this.previousWord="",this.root=new t.TokenSet,this.uncheckedNodes=[],this.minimizedNodes={}},t.TokenSet.Builder.prototype.insert=function(e){var n,r=0;if(e<this.previousWord)throw new Error("Out of order word insertion");for(var i=0;i<e.length&&i<this.previousWord.length&&e[i]==this.previousWord[i];i++)r++;this.minimize(r),this.uncheckedNodes.length==0?n=this.root:n=this.uncheckedNodes[this.uncheckedNodes.length-1].child;for(var i=r;i<e.length;i++){var s=new t.TokenSet,o=e[i];n.edges[o]=s,this.uncheckedNodes.push({parent:n,char:o,child:s}),n=s}n.final=!0,this.previousWord=e},t.TokenSet.Builder.prototype.finish=function(){this.minimize(0)},t.TokenSet.Builder.prototype.minimize=function(e){for(var n=this.uncheckedNodes.length-1;n>=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u<this.fields.length;u++)i[this.fields[u]]=new t.Vector;e.call(n,n);for(var u=0;u<n.clauses.length;u++){var l=n.clauses[u],h=null,m=t.Set.empty;l.usePipeline?h=this.pipeline.runString(l.term,{fields:l.fields}):h=[l.term];for(var g=0;g<h.length;g++){var b=h[g];l.term=b;var y=t.TokenSet.fromClause(l),E=this.tokenSet.intersect(y).toArray();if(E.length===0&&l.presence===t.Query.presence.REQUIRED){for(var p=0;p<l.fields.length;p++){var f=l.fields[p];o[f]=t.Set.empty}break}for(var S=0;S<E.length;S++)for(var w=E[S],Q=this.invertedIndex[w],_=Q._index,p=0;p<l.fields.length;p++){var f=l.fields[p],B=Q[f],V=Object.keys(B),q=w+"/"+f,$=new t.Set(V);if(l.presence==t.Query.presence.REQUIRED&&(m=m.union($),o[f]===void 0&&(o[f]=t.Set.complete)),l.presence==t.Query.presence.PROHIBITED){a[f]===void 0&&(a[f]=t.Set.empty),a[f]=a[f].union($);continue}if(i[f].upsert(_,l.boost,function(Qe,Ce){return Qe+Ce}),!s[q]){for(var N=0;N<V.length;N++){var W=V[N],P=new t.FieldRef(W,f),U=B[W],G;(G=r[P])===void 0?r[P]=new t.MatchData(w,f,U):G.add(w,f,U)}s[q]=!0}}}if(l.presence===t.Query.presence.REQUIRED)for(var p=0;p<l.fields.length;p++){var f=l.fields[p];o[f]=o[f].intersect(m)}}for(var j=t.Set.complete,M=t.Set.empty,u=0;u<this.fields.length;u++){var f=this.fields[u];o[f]&&(j=j.intersect(o[f])),a[f]&&(M=M.union(a[f]))}var c=Object.keys(r),v=[],O=Object.create(null);if(n.isNegated()){c=Object.keys(this.fieldVectors);for(var u=0;u<c.length;u++){var P=c[u],T=t.FieldRef.fromString(P);r[P]=new t.MatchData}}for(var u=0;u<c.length;u++){var T=t.FieldRef.fromString(c[u]),d=T.docRef;if(!!j.contains(d)&&!M.contains(d)){var x=this.fieldVectors[T],R=i[T.fieldName].similarity(x),D;if((D=O[d])!==void 0)D.score+=R,D.matchData.combine(r[T]);else{var L={ref:d,score:R,matchData:r[T]};O[d]=L,v.push(L)}}}return v.sort(function(Ie,ke){return ke.score-Ie.score})},t.Index.prototype.toJSON=function(){var e=Object.keys(this.invertedIndex).sort().map(function(r){return[r,this.invertedIndex[r]]},this),n=Object.keys(this.fieldVectors).map(function(r){return[r,this.fieldVectors[r].toJSON()]},this);return{version:t.version,fields:this.fields,fieldVectors:n,invertedIndex:e,pipeline:this.pipeline.toJSON()}},t.Index.load=function(e){var n={},r={},i=e.fieldVectors,s=Object.create(null),o=e.invertedIndex,a=new t.TokenSet.Builder,u=t.Pipeline.load(e.pipeline);e.version!=t.version&&t.utils.warn("Version mismatch when loading serialised index. Current version of lunr '"+t.version+"' does not match serialized index '"+e.version+"'");for(var l=0;l<i.length;l++){var h=i[l],m=h[0],g=h[1];r[m]=new t.Vector(g)}for(var l=0;l<o.length;l++){var h=o[l],b=h[0],y=h[1];a.insert(b),s[b]=y}return a.finish(),n.fields=e.fields,n.fieldVectors=r,n.invertedIndex=s,n.tokenSet=a.root,n.pipeline=u,new t.Index(n)};t.Builder=function(){this._ref="id",this._fields=Object.create(null),this._documents=Object.create(null),this.invertedIndex=Object.create(null),this.fieldTermFrequencies={},this.fieldLengths={},this.tokenizer=t.tokenizer,this.pipeline=new t.Pipeline,this.searchPipeline=new t.Pipeline,this.documentCount=0,this._b=.75,this._k1=1.2,this.termIndex=0,this.metadataWhitelist=[]},t.Builder.prototype.ref=function(e){this._ref=e},t.Builder.prototype.field=function(e,n){if(/\//.test(e))throw new RangeError("Field '"+e+"' contains illegal character '/'");this._fields[e]=n||{}},t.Builder.prototype.b=function(e){e<0?this._b=0:e>1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s<i.length;s++){var o=i[s],a=this._fields[o].extractor,u=a?a(e):e[o],l=this.tokenizer(u,{fields:[o]}),h=this.pipeline.run(l),m=new t.FieldRef(r,o),g=Object.create(null);this.fieldTermFrequencies[m]=g,this.fieldLengths[m]=0,this.fieldLengths[m]+=h.length;for(var b=0;b<h.length;b++){var y=h[b];if(g[y]==null&&(g[y]=0),g[y]+=1,this.invertedIndex[y]==null){var E=Object.create(null);E._index=this.termIndex,this.termIndex+=1;for(var p=0;p<i.length;p++)E[i[p]]=Object.create(null);this.invertedIndex[y]=E}this.invertedIndex[y][o][r]==null&&(this.invertedIndex[y][o][r]=Object.create(null));for(var f=0;f<this.metadataWhitelist.length;f++){var S=this.metadataWhitelist[f],w=y.metadata[S];this.invertedIndex[y][o][r][S]==null&&(this.invertedIndex[y][o][r][S]=[]),this.invertedIndex[y][o][r][S].push(w)}}}},t.Builder.prototype.calculateAverageFieldLengths=function(){for(var e=Object.keys(this.fieldLengths),n=e.length,r={},i={},s=0;s<n;s++){var o=t.FieldRef.fromString(e[s]),a=o.fieldName;i[a]||(i[a]=0),i[a]+=1,r[a]||(r[a]=0),r[a]+=this.fieldLengths[o]}for(var u=Object.keys(this._fields),s=0;s<u.length;s++){var l=u[s];r[l]=r[l]/i[l]}this.averageFieldLength=r},t.Builder.prototype.createFieldVectors=function(){for(var e={},n=Object.keys(this.fieldTermFrequencies),r=n.length,i=Object.create(null),s=0;s<r;s++){for(var o=t.FieldRef.fromString(n[s]),a=o.fieldName,u=this.fieldLengths[o],l=new t.Vector,h=this.fieldTermFrequencies[o],m=Object.keys(h),g=m.length,b=this._fields[a].boost||1,y=this._documents[o.docRef].boost||1,E=0;E<g;E++){var p=m[E],f=h[p],S=this.invertedIndex[p]._index,w,Q,_;i[p]===void 0?(w=t.idf(this.invertedIndex[p],this.documentCount),i[p]=w):w=i[p],Q=w*((this._k1+1)*f)/(this._k1*(1-this._b+this._b*(u/this.averageFieldLength[a]))+f),Q*=b,Q*=y,_=Math.round(Q*1e3)/1e3,l.insert(S,_)}e[o]=l}this.fieldVectors=e},t.Builder.prototype.createTokenSet=function(){this.tokenSet=t.TokenSet.fromArray(Object.keys(this.invertedIndex).sort())},t.Builder.prototype.build=function(){return this.calculateAverageFieldLengths(),this.createFieldVectors(),this.createTokenSet(),new t.Index({invertedIndex:this.invertedIndex,fieldVectors:this.fieldVectors,tokenSet:this.tokenSet,fields:Object.keys(this._fields),pipeline:this.searchPipeline})},t.Builder.prototype.use=function(e){var n=Array.prototype.slice.call(arguments,1);n.unshift(this),e.apply(this,n)},t.MatchData=function(e,n,r){for(var i=Object.create(null),s=Object.keys(r||{}),o=0;o<s.length;o++){var a=s[o];i[a]=r[a].slice()}this.metadata=Object.create(null),e!==void 0&&(this.metadata[e]=Object.create(null),this.metadata[e][n]=i)},t.MatchData.prototype.combine=function(e){for(var n=Object.keys(e.metadata),r=0;r<n.length;r++){var i=n[r],s=Object.keys(e.metadata[i]);this.metadata[i]==null&&(this.metadata[i]=Object.create(null));for(var o=0;o<s.length;o++){var a=s[o],u=Object.keys(e.metadata[i][a]);this.metadata[i][a]==null&&(this.metadata[i][a]=Object.create(null));for(var l=0;l<u.length;l++){var h=u[l];this.metadata[i][a][h]==null?this.metadata[i][a][h]=e.metadata[i][a][h]:this.metadata[i][a][h]=this.metadata[i][a][h].concat(e.metadata[i][a][h])}}}},t.MatchData.prototype.add=function(e,n,r){if(!(e in this.metadata)){this.metadata[e]=Object.create(null),this.metadata[e][n]=r;return}if(!(n in this.metadata[e])){this.metadata[e][n]=r;return}for(var i=Object.keys(r),s=0;s<i.length;s++){var o=i[s];o in this.metadata[e][n]?this.metadata[e][n][o]=this.metadata[e][n][o].concat(r[o]):this.metadata[e][n][o]=r[o]}},t.Query=function(e){this.clauses=[],this.allFields=e},t.Query.wildcard=new String("*"),t.Query.wildcard.NONE=0,t.Query.wildcard.LEADING=1,t.Query.wildcard.TRAILING=2,t.Query.presence={OPTIONAL:1,REQUIRED:2,PROHIBITED:3},t.Query.prototype.clause=function(e){return"fields"in e||(e.fields=this.allFields),"boost"in e||(e.boost=1),"usePipeline"in e||(e.usePipeline=!0),"wildcard"in e||(e.wildcard=t.Query.wildcard.NONE),e.wildcard&t.Query.wildcard.LEADING&&e.term.charAt(0)!=t.Query.wildcard&&(e.term="*"+e.term),e.wildcard&t.Query.wildcard.TRAILING&&e.term.slice(-1)!=t.Query.wildcard&&(e.term=""+e.term+"*"),"presence"in e||(e.presence=t.Query.presence.OPTIONAL),this.clauses.push(e),this},t.Query.prototype.isNegated=function(){for(var e=0;e<this.clauses.length;e++)if(this.clauses[e].presence!=t.Query.presence.PROHIBITED)return!1;return!0},t.Query.prototype.term=function(e,n){if(Array.isArray(e))return e.forEach(function(i){this.term(i,t.utils.clone(n))},this),this;var r=n||{};return r.term=e.toString(),this.clause(r),this},t.QueryParseError=function(e,n,r){this.name="QueryParseError",this.message=e,this.start=n,this.end=r},t.QueryParseError.prototype=new Error,t.QueryLexer=function(e){this.lexemes=[],this.str=e,this.length=e.length,this.pos=0,this.start=0,this.escapeCharPositions=[]},t.QueryLexer.prototype.run=function(){for(var e=t.QueryLexer.lexText;e;)e=e(this)},t.QueryLexer.prototype.sliceString=function(){for(var e=[],n=this.start,r=this.pos,i=0;i<this.escapeCharPositions.length;i++)r=this.escapeCharPositions[i],e.push(this.str.slice(n,r)),n=r+1;return e.push(this.str.slice(n,this.pos)),this.escapeCharPositions.length=0,e.join("")},t.QueryLexer.prototype.emit=function(e){this.lexemes.push({type:e,str:this.sliceString(),start:this.start,end:this.pos}),this.start=this.pos},t.QueryLexer.prototype.escapeCharacter=function(){this.escapeCharPositions.push(this.pos-1),this.pos+=1},t.QueryLexer.prototype.next=function(){if(this.pos>=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos<this.length},t.QueryLexer.EOS="EOS",t.QueryLexer.FIELD="FIELD",t.QueryLexer.TERM="TERM",t.QueryLexer.EDIT_DISTANCE="EDIT_DISTANCE",t.QueryLexer.BOOST="BOOST",t.QueryLexer.PRESENCE="PRESENCE",t.QueryLexer.lexField=function(e){return e.backup(),e.emit(t.QueryLexer.FIELD),e.ignore(),t.QueryLexer.lexText},t.QueryLexer.lexTerm=function(e){if(e.width()>1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof de=="object"?pe.exports=n():e.lunr=n()}(this,function(){return t})})()});var ce=[];function F(t,e){ce.push({selector:e,constructor:t})}var Y=class{constructor(){this.createComponents(document.body)}createComponents(e){ce.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r}),r.dataset.hasInstance=String(!0))})})}};var I=class{constructor(e){this.el=e.el}};var J=class{constructor(){this.listeners={}}addEventListener(e,n){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(n)}removeEventListener(e,n){if(!(e in this.listeners))return;let r=this.listeners[e];for(let i=0,s=r.length;i<s;i++)if(r[i]===n){r.splice(i,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return!0;let n=this.listeners[e.type].slice();for(let r=0,i=n.length;r<i;r++)n[r].call(this,e);return!e.defaultPrevented}};var re=(t,e=100)=>{let n=Date.now();return(...r)=>{n+e-Date.now()<0&&(t(...r),n=Date.now())}};var ie=class extends J{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.navigation=document.querySelector(".col-menu"),window.addEventListener("scroll",re(()=>this.onScroll(),10)),window.addEventListener("resize",re(()=>this.onResize(),10)),this.searchInput=document.querySelector("#tsd-search input"),this.searchInput&&this.searchInput.addEventListener("focus",()=>{this.hideShowToolbar()}),this.onResize(),this.onScroll()}triggerResize(){let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onScroll(){this.scrollTop=window.scrollY||0;let n=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(n),this.hideShowToolbar()}hideShowToolbar(){let n=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0||!!this.searchInput&&this.searchInput===document.activeElement,n!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.navigation?.classList.toggle("col-menu--hide")),this.lastY=this.scrollTop}},k=ie;k.instance=new ie;var X=class extends I{constructor(n){super(n);this.anchors=[];this.index=-1;k.instance.addEventListener("resize",()=>this.onResize()),k.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substring(0,n.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let i=r.href;if(i.indexOf("#")==-1||i.substring(0,n.length)!=n)return;let s=i.substring(i.indexOf("#")+1),o=document.querySelector("a.tsd-anchor[name="+s+"]"),a=r.parentNode;!o||!a||this.anchors.push({link:a,anchor:o,position:0})}),this.onResize()}onResize(){let n;for(let i=0,s=this.anchors.length;i<s;i++){n=this.anchors[i];let o=n.anchor.getBoundingClientRect();n.position=o.top+document.body.scrollTop}this.anchors.sort((i,s)=>i.position-s.position);let r=new CustomEvent("scroll",{detail:{scrollTop:k.instance.scrollTop}});this.onScroll(r)}onScroll(n){let r=n.detail.scrollTop+5,i=this.anchors,s=i.length-1,o=this.index;for(;o>-1&&i[o].position>r;)o-=1;for(;o<s&&i[o+1].position<r;)o+=1;this.index!=o&&(this.index>-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=o,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var he=(t,e=100)=>{let n;return(...r)=>{clearTimeout(n),n=setTimeout(()=>t(r),e)}};var ve=He(fe());function ye(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let n=document.querySelector("#tsd-search input"),r=document.querySelector("#tsd-search .results");if(!n||!r)throw new Error("The input field or the result list wrapper was not found");let i=!1;r.addEventListener("mousedown",()=>i=!0),r.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),n.addEventListener("focus",()=>t.classList.add("has-focus")),n.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ae(t,r,n,s)}function Ae(t,e,n,r){n.addEventListener("input",he(()=>{Ne(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?je(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?me(e,-1):s.key==="ArrowDown"?me(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ve(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ve.Index.load(window.searchData.index))}function Ne(t,e,n,r){if(Ve(r,t),!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s=i?r.index.search(`*${i}*`):[];for(let o=0;o<s.length;o++){let a=s[o],u=r.data.rows[Number(a.ref)],l=1;u.name.toLowerCase().startsWith(i.toLowerCase())&&(l*=1+1/(Math.abs(u.name.length-i.length)*10)),l*=u.boost??1,a.score*=l}s.sort((o,a)=>a.score-o.score);for(let o=0,a=Math.min(10,s.length);o<a;o++){let u=r.data.rows[Number(s[o].ref)],l=ge(u.name,i);u.parent&&(l=`<span class="parent">${ge(u.parent,i)}.</span>${l}`);let h=document.createElement("li");h.classList.value=u.classes??"";let m=document.createElement("a");m.href=r.base+u.url,m.innerHTML=l,h.append(m),e.appendChild(h)}}function me(t,e){let n=t.querySelector(".current");if(!n)n=t.querySelector(e==1?"li:first-child":"li:last-child"),n&&n.classList.add("current");else{let r=n;if(e===1)do r=r.nextElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);else do r=r.previousElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);r&&(n.classList.remove("current"),r.classList.add("current"))}}function je(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),e.blur()}}function ge(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(se(t.substring(s,o)),`<b>${se(t.substring(o,o+r.length))}</b>`),s=o+r.length,o=n.indexOf(r,s);return i.push(se(t.substring(s))),i.join("")}var ze={"&":"&","<":"<",">":">","'":"'",'"':"""};function se(t){return t.replace(/[&<>"'"]/g,e=>ze[e])}var oe=class{constructor(e,n){this.signature=e,this.description=n}addClass(e){this.signature.classList.add(e),this.description.classList.add(e)}removeClass(e){this.signature.classList.remove(e),this.description.classList.remove(e)}},Z=class extends I{constructor(n){super(n);this.groups=[];this.index=-1;this.createGroups(),this.container&&(this.el.classList.add("active"),Array.from(this.el.children).forEach(r=>{r.addEventListener("touchstart",i=>this.onClick(i)),r.addEventListener("click",i=>this.onClick(i))}),this.container.classList.add("active"),this.setIndex(this.inferIndexFromHash()))}setIndex(n){if(n<0&&(n=0),n>this.groups.length-1&&(n=this.groups.length-1),this.index==n)return;let r=this.groups[n];if(this.index>-1){let i=this.groups[this.index];if(i.removeClass("current"),i.addClass("fade-out"),r.addClass("current"),r.addClass("fade-in"),r.signature.id){let s=new URL(location.href);s.hash=r.signature.id,history.replaceState({},"",s)}k.instance.triggerResize(),setTimeout(()=>{i.removeClass("fade-out"),r.removeClass("fade-in")},300)}else r.addClass("current"),k.instance.triggerResize();this.index=n}createGroups(){let n=this.el.children;if(n.length<2)return;this.container=this.el.nextElementSibling;let r=this.container.children;this.groups=[];for(let i=0;i<n.length;i++)this.groups.push(new oe(n[i],r[i]))}onClick(n){this.groups.forEach((r,i)=>{r.signature===n.currentTarget&&this.setIndex(i)})}inferIndexFromHash(){let n=location.hash.substring(1),r=this.groups.findIndex(i=>i.signature.id===n);return Math.max(0,r)}};var H="mousedown",Le="mousemove",z="mouseup",K={x:0,y:0},xe=!1,ae=!1,Be=!1,A=!1,Ee=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Ee?"is-mobile":"not-mobile");Ee&&"ontouchstart"in document.documentElement&&(Be=!0,H="touchstart",Le="touchmove",z="touchend");document.addEventListener(H,t=>{ae=!0,A=!1;let e=H=="touchstart"?t.targetTouches[0]:t;K.y=e.pageY||0,K.x=e.pageX||0});document.addEventListener(Le,t=>{if(!!ae&&!A){let e=H=="touchstart"?t.targetTouches[0]:t,n=K.x-(e.pageX||0),r=K.y-(e.pageY||0);A=Math.sqrt(n*n+r*r)>10}});document.addEventListener(z,()=>{ae=!1});document.addEventListener("click",t=>{xe&&(t.preventDefault(),t.stopImmediatePropagation(),xe=!1)});var ee=class extends I{constructor(n){super(n);this.className=this.el.dataset.toggle||"",this.el.addEventListener(z,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(H,r=>this.onDocumentPointerDown(r)),document.addEventListener(z,r=>this.onDocumentPointerUp(r))}setActive(n){if(this.active==n)return;this.active=n,document.documentElement.classList.toggle("has-"+this.className,n),this.el.classList.toggle("active",n);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(n){A||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!A&&this.active&&n.target.closest(".col-menu")){let r=n.target.closest("a");if(r){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),r.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var le;try{le=localStorage}catch{le={getItem(){return null},setItem(){}}}var C=le;var be=document.head.appendChild(document.createElement("style"));be.dataset.for="filters";var te=class extends I{constructor(n){super(n);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),be.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } | ||
`}fromLocalStorage(){let n=C.getItem(this.key);return n?n==="true":this.el.checked}setLocalStorage(n){C.setItem(this.key,n.toString()),this.value=n,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),document.querySelectorAll(".tsd-index-section").forEach(n=>{n.style.display="block";let r=Array.from(n.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);n.style.display=r?"none":"block"})}};var ne=class extends I{constructor(n){super(n);this.calculateHeights(),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.textContent.replace(/\s+/g,"-").toLowerCase()}`,this.setLocalStorage(this.fromLocalStorage(),!0),this.summary.addEventListener("click",r=>this.toggleVisibility(r)),this.icon.style.transform=this.getIconRotation()}getIconRotation(n=this.el.open){return`rotate(${n?0:-90}deg)`}calculateHeights(){let n=this.el.open,{position:r,left:i}=this.el.style;this.el.style.position="fixed",this.el.style.left="-9999px",this.el.open=!0,this.expandedHeight=this.el.offsetHeight+"px",this.el.open=!1,this.collapsedHeight=this.el.offsetHeight+"px",this.el.open=n,this.el.style.height=n?this.expandedHeight:this.collapsedHeight,this.el.style.position=r,this.el.style.left=i}toggleVisibility(n){n.preventDefault(),this.el.style.overflow="hidden",this.el.open?this.collapse():this.expand()}expand(n=!0){this.el.open=!0,this.animate(this.collapsedHeight,this.expandedHeight,{opening:!0,duration:n?300:0})}collapse(n=!0){this.animate(this.expandedHeight,this.collapsedHeight,{opening:!1,duration:n?300:0})}animate(n,r,{opening:i,duration:s=300}){if(this.animation)return;let o={duration:s,easing:"ease"};this.animation=this.el.animate({height:[n,r]},o),this.icon.animate({transform:[this.icon.style.transform||this.getIconRotation(!i),this.getIconRotation(i)]},o).addEventListener("finish",()=>{this.icon.style.transform=this.getIconRotation(i)}),this.animation.addEventListener("finish",()=>this.animationEnd(i))}animationEnd(n){this.el.open=n,this.animation=void 0,this.el.style.height="auto",this.el.style.overflow="visible",this.setLocalStorage(n)}fromLocalStorage(){let n=C.getItem(this.key);return n?n==="true":this.el.open}setLocalStorage(n,r=!1){this.fromLocalStorage()===n&&!r||(C.setItem(this.key,n.toString()),this.el.open=n,this.handleValueChange(r))}handleValueChange(n=!1){this.fromLocalStorage()===this.el.open&&!n||(this.fromLocalStorage()?this.expand(!1):this.collapse(!1))}};function Se(t){let e=C.getItem("tsd-theme")||"os";t.value=e,we(e),t.addEventListener("change",()=>{C.setItem("tsd-theme",t.value),we(t.value)})}function we(t){document.documentElement.dataset.theme=t}ye();F(X,".menu-highlight");F(Z,".tsd-signatures");F(ee,"a[data-toggle]");F(ne,".tsd-index-accordion");F(te,".tsd-filter-item input[type=checkbox]");var Te=document.getElementById("theme");Te&&Se(Te);var qe=new Y;Object.defineProperty(window,"app",{value:qe});})(); | ||
/*! | ||
@@ -6,0 +6,0 @@ * lunr.Builder |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
984138
20
283
23286