@hpcc-js/eclwatch 3.7.1 → 3.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +1 -1
- package/dist/index.umd.cjs.map +1 -1
- package/package.json +3 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["e","r","t","o","i","a","n","l","z","N","P","w","I","F","R","te","V","d","f","m","h","p","g","T","A","k","r","i","L","C","O","u","n","o","_","s","ee","B","j","e","b","S","v","E","D","ie","re","c","t","M","a","ne"],"sources":["../src/__package__.ts","../src/ECLArchiveViewer.ts","../src/WUGraphLegend.ts","../src/WUScopeController.ts","../src/WUGraph.ts","../src/WUResultStore.ts","../src/WUResult.ts","../src/WUStatus.ts","../../api/dist/index.js","../../chart/dist/index.js","../src/WUTimeline.ts"],"sourcesContent":["export const PKG_NAME = \"__PACKAGE_NAME__\";\nexport const PKG_VERSION = \"__PACKAGE_VERSION__\";\nexport const BUILD_VERSION = \"__BUILD_VERSION__\";\n","import { Editor } from \"@hpcc-js/codemirror\";\nimport { Workunit } from \"@hpcc-js/comms\";\nimport { SplitPanel } from \"@hpcc-js/phosphor\";\nimport { DirectoryTree } from \"@hpcc-js/tree\";\nimport { hashSum, xml2json } from \"@hpcc-js/util\";\n\nexport class ECLArchiveViewer extends SplitPanel {\n private _prevHash;\n private _contentStr;\n public _directoryPane = new DirectoryTree();\n public _fileEditorPane = new Editor()\n .text(\"\")\n ;\n\n constructor() {\n super(\"horizontal\");\n this._directoryPane.rowClick = (text) => {\n this._fileEditorPane\n .text(text)\n .render()\n ;\n };\n }\n\n protected transformArchiveTreeData(json) {\n const ret = {\n label: json.name,\n children: json._children.map(transformNode).filter(n => n)\n };\n\n if (ret.children && ret.children[0] && ret.children[0].label === \"html\") {\n // must be parsererror\n return {\n label: \"root\",\n children: [\n {\n label: \"error\",\n content: JSON.stringify(ret, null, 4)\n }\n ]\n };\n }\n return ret;\n\n function transformNode(node) {\n const _node: any = {};\n _node.label = node.name + (node[\"$\"] && node[\"$\"].key ? ` (${node[\"$\"].key})` : \"\");\n if (node._children && node._children.length > 0) {\n _node.children = node._children.map(_node => {\n return transformNode(_node);\n })\n .filter(n => n)\n ;\n } else if (typeof node.content === \"string\" && node.content.trim()) {\n _node.content = node.content;\n } else {\n return false;\n }\n return _node;\n }\n }\n\n updateDirectoryPane(contentStr) {\n let json;\n if (contentStr) {\n try {\n json = JSON.parse(contentStr);\n } catch (e) {\n json = xml2json(contentStr);\n }\n }\n if (json) {\n const _data = this.transformArchiveTreeData(json);\n this._directoryPane\n .data(_data)\n .render()\n ;\n }\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this\n .addWidget(this._directoryPane)\n .addWidget(this._fileEditorPane)\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid()\n });\n\n if (this._prevHash !== hash || typeof this._contentStr === \"undefined\") {\n Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid())\n .fetchArchive()\n .then(resp => {\n\n this._contentStr = resp;\n this.updateDirectoryPane(this._contentStr);\n\n this._prevHash = hash;\n });\n } else {\n this.updateDirectoryPane(this._contentStr);\n }\n\n this.relativeSizes([this.directoryWidthRatio(), 1 - this.directoryWidthRatio()]);\n }\n}\nECLArchiveViewer.prototype._class += \" eclwatch_ECLArchiveViewer\";\n\nexport interface ECLArchiveViewer {\n directoryPaneColor(): string;\n directoryPaneColor(_: string): this;\n directoryPaneHoverColor(): string;\n directoryPaneHoverColor(_: string): this;\n fontColor(): string;\n fontColor(_: string): this;\n fontFamily(): string;\n fontFamily(_: string): this;\n fontSize(): number;\n fontSize(_: number): this;\n fileIconSize(): number;\n fileIconSize(_: number): this;\n folderIconOpen(): string;\n folderIconOpen(_: string): this;\n folderIconClosed(): string;\n folderIconClosed(_: string): this;\n textFileIcon(): string;\n textFileIcon(_: string): this;\n codeFileIcon(): string;\n codeFileIcon(_: string): this;\n verticalScroll(): boolean;\n verticalScroll(_: boolean): this;\n directoryWidthRatio(): number;\n directoryWidthRatio(_: number): this;\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n}\nECLArchiveViewer.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nECLArchiveViewer.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nECLArchiveViewer.prototype.publish(\"directoryWidthRatio\", 0.38, \"number\", \"Default directory panel width ratio relative to the full width\");\nECLArchiveViewer.prototype.publish(\"contentString\", null, \"string\", \"XML/JSON archive content string\");\nECLArchiveViewer.prototype.publishProxy(\"directoryPaneColor\", \"_directoryPane\", \"backgroundColor\");\nECLArchiveViewer.prototype.publishProxy(\"directoryPaneHoverColor\", \"_directoryPane\", \"hoverBackgroundColor\");\nECLArchiveViewer.prototype.publishProxy(\"iconSize\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontColor\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontFamily\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontSize\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"folderIconOpen\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"folderIconClosed\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"textFileIcon\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"codeFileIcon\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"verticalScroll\", \"_directoryPane\");\n","import { Vertex } from \"@hpcc-js/graph\";\nimport { Legend } from \"@hpcc-js/layout\";\nimport { local as d3Local, select as d3Select } from \"d3-selection\";\n\nimport \"../src/WUGraphLegend.css\";\n\nexport interface WUGraphLegendData {\n kind: number;\n faChar: string;\n label: string;\n count: number;\n}\n\nclass LegendVertex extends Vertex {\n\n constructor() {\n super();\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this._icon.on(\"click\", () => {\n this.click(this.data());\n });\n }\n\n click(kind: number) {\n }\n}\n\nexport class WUGraphLegend extends Legend {\n\n private icon = d3Local<Vertex>();\n protected _disabled2: { [kind: number]: boolean } = {\n /* TODO: Default some to disabled?\n 43: true,\n 71: true,\n 82: true,\n 88: true\n */\n };\n\n disabled(): number[];\n disabled(_: number[]): this;\n disabled(_?: number[]): number[] | this {\n if (!arguments.length) {\n const retVal = [];\n for (const key in this._disabled2) {\n if (this._disabled2[key]) {\n retVal.push(key);\n }\n }\n return retVal;\n }\n this._disabled2 = {};\n _.forEach(kind => this._disabled2[kind] = true);\n return this;\n }\n\n toggle(kind: number) {\n this._disabled2[kind] = !this._disabled2[kind];\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n const items = this._g.selectAll(\".legendItem\").data(this.data(), (d: any) => d.kind);\n items.enter().append(\"g\")\n .attr(\"class\", \"legendItem\")\n .each(function (this: HTMLElement, d) {\n context.icon.set(this, new LegendVertex()\n .target(this)\n .data(d.kind)\n .textbox_shape_colorStroke(\"none\")\n .textbox_shape_colorFill(\"none\")\n .iconAnchor(\"left\")\n .faChar(d.faChar)\n .text(`${d.label} (${d.count})`)\n .tooltip(`${d.kind} - ${d.label}`)\n .on(\"click\", kind => {\n context.toggle(kind);\n context.render();\n context.click(kind);\n })\n .on(\"mouseover\", kind => {\n context.mouseover(kind);\n })\n .on(\"mouseout\", kind => {\n context.mouseout(kind);\n })\n );\n })\n .merge(items)\n .each(function (this: HTMLElement, d, i) {\n const bbox = context.icon.get(this)\n .icon_shape_colorFill(context._disabled2[d.kind] ? \"gray\" : null)\n .render().getBBox();\n\n d3Select(this)\n .attr(\"transform\", `translate(${+bbox.width / 2}, ${i * 30})`)\n ;\n })\n ;\n items.exit()\n .each(function (this: HTMLElement, d) {\n context.icon.get(this)\n .target(null)\n .render();\n })\n .remove();\n const bbox = this.getBBox(true, true);\n this._g.attr(\"transform\", `translate(16, ${this.height() / 2 - bbox.height / 2})`);\n }\n\n // Events ---\n click(kind: number) {\n }\n\n mouseover(kind: number) {\n }\n\n mouseout(kind: number) {\n }\n}\nWUGraphLegend.prototype._class += \" eclwatch_WUGraphLegend\";\n","import { Icon } from \"@hpcc-js/common\";\nimport { BaseScope, ScopeEdge, ScopeGraph, ScopeSubgraph, ScopeVertex } from \"@hpcc-js/comms\";\nimport { Edge, IGraphData, Lineage, Subgraph, Vertex } from \"@hpcc-js/graph\";\nimport { Edge as UtilEdge, Subgraph as UtilSubgraph, Vertex as UtilVertex } from \"@hpcc-js/util\";\nimport { WUGraphLegendData } from \"./WUGraphLegend.ts\";\n\nexport type VertexType = Vertex | Icon;\n\nexport interface MyGraphData {\n subgraphs: Subgraph[];\n vertices: VertexType[];\n edges: Edge[];\n hierarchy: Lineage[];\n}\n\nfunction faCharFactory(kind): string {\n switch (kind) {\n case \"2\": return \"\\uf0c7\"; // Disk Write\n case \"3\": return \"\\uf15d\"; // sort\n case \"5\": return \"\\uf0b0\"; // Filter\n case \"6\": return \"\\uf1e0\"; // Split\n case \"12\": return \"\\uf039\"; // First N\n case \"15\": return \"\\uf126\"; // Lightweight Join\n case \"17\": return \"\\uf126\"; // Lookup Join\n case \"22\": return \"\\uf1e6\"; // Pipe Output\n case \"23\": return \"\\uf078\"; // Funnel\n case \"25\": return \"\\uf0ce\"; // Inline Dataset\n case \"26\": return \"\\uf074\"; // distribute\n case \"29\": return \"\\uf005\"; // Store Internal Result\n case \"36\": return \"\\uf128\"; // If\n case \"44\": return \"\\uf0c7\"; // write csv\n case \"47\": return \"\\uf0c7\"; // write\n case \"54\": return \"\\uf013\"; // Workunit Read\n case \"56\": return \"\\uf0c7\"; // Spill\n case \"59\": return \"\\uf126\"; // Merge\n case \"61\": return \"\\uf0c7\"; // write xml\n case \"82\": return \"\\uf1c0\"; // Projected Disk Read Spill\n case \"88\": return \"\\uf1c0\"; // Projected Disk Read Spill\n case \"92\": return \"\\uf129\"; // Limted Index Read\n case \"93\": return \"\\uf129\"; // Limted Index Read\n case \"99\": return \"\\uf1c0\"; // CSV Read\n case \"105\": return \"\\uf1c0\"; // CSV Read\n\n case \"7\": return \"\\uf090\"; // Project\n case \"9\": return \"\\uf0e2\"; // Local Iterate\n case \"16\": return \"\\uf005\"; // Output Internal\n case \"19\": return \"\\uf074\"; // Hash Distribute\n case \"21\": return \"\\uf275\"; // Normalize\n case \"35\": return \"\\uf0c7\"; // CSV Write\n case \"37\": return \"\\uf0c7\"; // Index Write\n case \"71\": return \"\\uf1c0\"; // Disk Read Spill\n case \"133\": return \"\\uf0ce\"; // Inline Dataset\n case \"148\": return \"\\uf0ce\"; // Inline Dataset\n case \"168\": return \"\\uf275\"; // Local Denormalize\n }\n return \"\\uf063\";\n}\n\nexport class WUScopeController {\n private graphDB: ScopeGraph;\n private subgraphsMap: { [id: string]: Subgraph } = {};\n private rSubgraphsMap: { [id: string]: ScopeSubgraph } = {};\n private verticesMap: { [id: string]: VertexType } = {};\n private rVerticesMap: { [id: string]: ScopeVertex } = {};\n private edgesMap: { [id: string]: Edge } = {};\n private rEdgesMap: { [id: string]: ScopeEdge } = {};\n private kindMap: { [id: string]: ScopeVertex[] } = {};\n\n protected _disabled: { [kind: number]: boolean } = {};\n\n constructor() {\n }\n\n clear() {\n this.subgraphsMap = {};\n this.rSubgraphsMap = {};\n this.verticesMap = {};\n this.rVerticesMap = {};\n this.edgesMap = {};\n this.rEdgesMap = {};\n }\n\n set(masterGraph: ScopeGraph) {\n this.graphDB = masterGraph;\n this.graphGui(this.graphDB);\n\n this.kindMap = {};\n this.graphDB.walk(item => {\n if (item instanceof UtilSubgraph) {\n } else if (item instanceof UtilVertex) {\n const kind = item._.attr(\"Kind\").RawValue;\n if (!this.kindMap[kind]) {\n this.kindMap[kind] = [];\n }\n this.kindMap[kind].push(item);\n } else if (item instanceof UtilEdge) {\n }\n });\n }\n\n disabled(): number[];\n disabled(_: number[]): this;\n disabled(_?: number[]): number[] | this {\n if (!arguments.length) {\n const retVal = [];\n for (const key in this._disabled) {\n if (this._disabled[key]) {\n retVal.push(key);\n }\n }\n return retVal;\n }\n this._disabled = {};\n _.forEach(kind => this._disabled[kind] = true);\n return this;\n }\n\n graphGui(graphDB: ScopeGraph): IGraphData {\n const graphGui: MyGraphData = {\n subgraphs: [],\n vertices: [],\n edges: [],\n hierarchy: []\n };\n\n graphDB.walk((item) => {\n if (item instanceof UtilSubgraph) {\n const subgraph = this.appendSubgraph(item, graphGui.hierarchy, graphGui.subgraphs);\n subgraph.showMinMax(item.vertices.length > 3 || subgraph.minState() !== \"normal\");\n } else if (item instanceof UtilVertex) {\n this.appendVertex(item, graphGui.hierarchy, graphGui.vertices);\n } else if (item instanceof UtilEdge) {\n this.appendEdge(item, graphGui.edges);\n }\n });\n\n return graphGui;\n }\n\n format(labelTpl, obj) {\n let retVal = \"\";\n let lpos = labelTpl.indexOf(\"%\");\n let rpos = -1;\n while (lpos >= 0) {\n retVal += labelTpl.substring(rpos + 1, lpos);\n rpos = labelTpl.indexOf(\"%\", lpos + 1);\n if (rpos < 0) {\n console.warn(\"Invalid Label Template\");\n break;\n }\n const key = labelTpl.substring(lpos + 1, rpos);\n retVal += !key ? \"%\" : (obj[labelTpl.substring(lpos + 1, rpos)] || \"\");\n lpos = labelTpl.indexOf(\"%\", rpos + 1);\n }\n retVal += labelTpl.substring(rpos + 1, labelTpl.length);\n return retVal.split(\"\\\\n\").join(\"\\n\");\n }\n\n createSubgraph(subgraph: ScopeSubgraph): Subgraph {\n let sg = this.subgraphsMap[subgraph._.Id];\n if (!sg) {\n sg = new Subgraph()\n .title(subgraph._.Id)\n .on(\"minClick\", () => {\n this.minClick(sg);\n })\n ;\n this.subgraphsMap[subgraph._.Id] = sg;\n this.rSubgraphsMap[sg.id()] = subgraph;\n }\n return sg;\n }\n\n createVertex(vertex: ScopeVertex): VertexType {\n let v = this.verticesMap[vertex._.Id];\n if (!v) {\n const attrs = vertex._.rawAttrs();\n if (vertex._.ScopeType === \"dummy\") {\n const parent = this.subgraphsMap[vertex.parent._.Id];\n v = new Icon()\n .shape_colorFill(\"darkred\")\n .shape_colorStroke(\"darkred\")\n .image_colorFill(\"white\")\n .faChar(\"\\uf067\")\n .on(\"click\", () => {\n parent.minState(\"normal\");\n this.minClick(parent);\n })\n ;\n } else {\n v = new Vertex()\n .icon_shape_colorFill(\"#1f77b4\")\n .icon_image_colorFill(\"white\")\n .faChar(faCharFactory(attrs[\"Kind\"]))\n .text(attrs[\"Label\"])\n ;\n const annotations = [];\n if (vertex._.hasAttr(\"Definition\")) {\n annotations.push({\n faChar: \"\\uf036\",\n tooltip: \"Definition\",\n shape_colorFill: \"lightgray\",\n shape_colorStroke: \"lightgray\",\n image_colorFill: \"black\"\n });\n }\n if (vertex._.hasAttr(\"IsInternal\")) {\n annotations.push({\n faChar: \"\\uf085\",\n tooltip: \"IsInternal\",\n shape_colorFill: \"red\",\n shape_colorStroke: \"red\",\n image_colorFill: \"white\"\n });\n }\n v.annotationIcons(annotations);\n }\n this.verticesMap[vertex._.Id] = v;\n this.rVerticesMap[v.id()] = vertex;\n }\n return v;\n }\n\n isSpill(edge: ScopeEdge): boolean {\n const sourceKind = edge.source._.attr(\"Kind\").RawValue;\n const targetKind = edge.target._.attr(\"Kind\").RawValue;\n return sourceKind === \"2\" || targetKind === \"71\";\n }\n\n spansSubgraph(edge: ScopeEdge): boolean {\n return edge.source.parent._.Id !== edge.target.parent._.Id;\n }\n\n createEdge(edge: ScopeEdge): Edge | undefined {\n let e = this.edgesMap[edge._.Id];\n if (!e) {\n const attrs = edge._.rawAttrs();\n const sourceV = this.verticesMap[edge.source._.Id];\n const targetV = this.verticesMap[edge.target._.Id];\n if (sourceV && targetV) {\n const isSpill = this.isSpill(edge);\n const spansSubgraph = this.spansSubgraph(edge);\n\n const label = this.format(\"%Label%\\n%NumRowsProcessed%\", attrs);\n /* TODO: Add extra annotations once WUDetails is fixed...\n const numSlaves = parseInt(attrs[\"NumSlaves\"]);\n const numStarts = parseInt(attrs[\"NumStarts\"]);\n const numStops = parseInt(attrs[\"NumStops\"]);\n const started = numStarts > 0;\n const finished = numStops === numSlaves;\n const active = started && !finished;\n */\n\n let strokeDasharray = null;\n let weight = 100;\n if (attrs[\"IsDependency\"]) {\n weight = 10;\n strokeDasharray = \"1,5\";\n } else if (attrs[\"_childGraph\"]) {\n strokeDasharray = \"5,5\";\n } else if (isSpill) {\n weight = 25;\n strokeDasharray = \"5,5,10,5\";\n } else if (spansSubgraph) {\n weight = 5;\n strokeDasharray = \"5,5\";\n }\n e = new Edge()\n .sourceVertex(sourceV)\n .targetVertex(targetV)\n .sourceMarker(\"circle\")\n .targetMarker(\"arrow\")\n .weight(weight)\n .strokeDasharray(strokeDasharray)\n .text(label)\n ;\n this.edgesMap[edge._.Id] = e;\n this.rEdgesMap[e.id()] = edge;\n }\n }\n return e;\n }\n\n appendSubgraph(subgraph: ScopeSubgraph, hierarchy: Lineage[], subgraphs: Subgraph[]): Subgraph {\n const sg = this.createSubgraph(subgraph);\n subgraphs.push(sg);\n const parent = this.subgraphsMap[subgraph.parent._.Id];\n if (parent) {\n hierarchy.push({ parent, child: sg });\n }\n return sg;\n }\n\n appendVertex(vertex: ScopeVertex, hierarchy: Lineage[], vertices: VertexType[]): VertexType {\n const v = this.createVertex(vertex);\n vertices.push(v);\n const parent = this.subgraphsMap[vertex.parent._.Id];\n if (parent) {\n hierarchy.push({ parent, child: v });\n }\n return v;\n }\n\n appendEdge(edge: ScopeEdge, edges: Edge[]): Edge {\n const e = this.createEdge(edge);\n if (e) {\n edges.push(e);\n }\n return e;\n }\n\n filterLegend(graphDB: ScopeGraph) {\n for (let i = graphDB.vertices.length - 1; i >= 0; --i) {\n const vertex = graphDB.vertices[i];\n const kind = vertex._.attr(\"Kind\").RawValue;\n if (this._disabled[kind]) {\n vertex.remove(false, (source: BaseScope, target: BaseScope) => {\n return new BaseScope({\n ScopeName: vertex._.ScopeName + \":in\",\n Id: source.Id + \"->\" + target.Id,\n ScopeType: \"dummy-edge\",\n Properties: {\n Property: [vertex._.attr(\"Label\")]\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n });\n }\n }\n }\n\n filterPartial(graphDB: ScopeGraph) {\n for (const subgraph of graphDB.subgraphs) {\n const sg = this.subgraphsMap[subgraph._.Id];\n switch (sg.minState()) {\n case \"partial\":\n const childVertices: ReadonlyArray<ScopeVertex> = subgraph.vertices;\n const vShow: ScopeVertex[] = [];\n const vHide: ScopeVertex[] = [];\n\n for (const vertex of childVertices) {\n if (vertex.inEdges.length === 0 || vertex.inEdges.some(edge => edge.source.parent !== edge.target.parent) ||\n vertex.outEdges.length === 0 || vertex.outEdges.some(edge => edge.source.parent !== edge.target.parent)) {\n vShow.push(vertex);\n } else {\n vHide.push(vertex);\n }\n }\n\n if (vHide.length > 1) {\n const dummyDetails = {\n ScopeName: subgraph._.ScopeName,\n Id: subgraph._.Id + \":dummy\",\n ScopeType: \"dummy\",\n Properties: {\n Property: [{\n Name: \"Activities\",\n RawValue: \"\" + vHide.length,\n Formatted: \"\" + vHide.length,\n Measure: \"count\",\n Creator: \"\",\n CreatorType: \"\"\n }]\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n };\n const dummyScope = new BaseScope(dummyDetails);\n const dummyVertex = subgraph.createVertex(dummyScope);\n\n for (const vertex of vHide) {\n for (const edge of vertex.inEdges) {\n if (vShow.indexOf(edge.source) >= 0) {\n const dummyEdgeScope = new BaseScope({\n ScopeName: edge.source._.ScopeName,\n Id: edge.source._.Id + \"->\" + dummyVertex._.Id,\n ScopeType: \"dummy-in\",\n Properties: {\n Property: []\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n subgraph.createEdge(edge.source, dummyVertex, dummyEdgeScope);\n }\n }\n for (const edge of vertex.outEdges) {\n if (vShow.indexOf(edge.target) >= 0) {\n const dummyEdgeScope = new BaseScope({\n ScopeName: edge.target._.ScopeName,\n Id: dummyVertex._.Id + \"->\" + edge.target._.Id,\n ScopeType: \"dummy-out\",\n Properties: {\n Property: []\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n subgraph.createEdge(dummyVertex, edge.target, dummyEdgeScope);\n }\n }\n }\n vHide.forEach(vertex => vertex.remove(true));\n }\n break;\n }\n }\n }\n\n filterEmptySubgraphs(graphDB: ScopeGraph) {\n while (true) {\n const emptySubgraphs = graphDB.subgraphs.filter(subgraph => subgraph.subgraphs.length === 0 && subgraph.vertices.length === 0);\n if (emptySubgraphs.length === 0) break;\n emptySubgraphs.forEach(subgraph => subgraph.remove(true));\n }\n }\n\n removeObsoleteSubgraphs(graphDB: ScopeGraph) {\n for (const subgraph of [...graphDB.subgraphs]) {\n if (subgraph.vertices.length === 0) {\n subgraph.remove(false);\n }\n }\n }\n\n graphData(): IGraphData {\n const graphDB = this.graphDB.clone();\n this.filterLegend(graphDB);\n this.filterPartial(graphDB);\n this.filterEmptySubgraphs(graphDB);\n this.removeObsoleteSubgraphs(graphDB);\n return this.graphGui(graphDB);\n }\n\n calcLegend(): WUGraphLegendData[] {\n const retVal: WUGraphLegendData[] = [];\n for (const kind in this.kindMap) {\n retVal.push({\n kind: parseInt(kind),\n faChar: faCharFactory(kind),\n label: this.kindMap[kind][0]._.attr(\"Label\").RawValue.split(\"\\n\")[0],\n count: this.kindMap[kind].length\n });\n }\n return retVal;\n }\n\n vertices(kind: number): VertexType[] {\n const retVal: VertexType[] = [];\n for (const v of this.kindMap[kind]) {\n retVal.push(this.verticesMap[v._.Id]);\n }\n return retVal;\n }\n\n formatRow(item: ScopeEdge | ScopeSubgraph | ScopeVertex, columns, row) {\n const attrs = item._.formattedAttrs();\n for (const key in attrs) {\n const idx = columns.indexOf(key);\n if (idx === -1) {\n columns.push(key);\n row.push(attrs[key]);\n } else {\n row[idx] = attrs[key];\n }\n }\n for (let i = 0; i < 100; ++i) {\n if (row[i] === undefined) {\n row[i] = \"\";\n }\n }\n return row;\n }\n\n activityData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Kind\", \"Label\"];\n const data = this.graphDB.vertices.map(v => {\n const row = [parseInt(v._.Id.split(\"a\")[1])];\n return this.formatRow(v, columns, row);\n });\n return { columns, data };\n }\n\n edgeData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Label\"];\n const data = this.graphDB.edges.map(e => {\n const row = [e._.Id];\n return this.formatRow(e, columns, row);\n });\n return { columns, data };\n }\n\n subgraphData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Label\"];\n const data = this.graphDB.subgraphs.map(sg => {\n const row = [sg._.Id];\n return this.formatRow(sg, columns, row);\n });\n return { columns, data };\n }\n\n calcGraphTooltip(item: VertexType | Edge) {\n let scope;\n let parentScope;\n if (item instanceof Subgraph) {\n const subgraph = this.rSubgraphsMap[item.id()];\n scope = subgraph._;\n parentScope = subgraph.parent._;\n } else if (item instanceof Vertex || item instanceof Icon) {\n const vertex = this.rVerticesMap[item.id()];\n scope = vertex._;\n parentScope = vertex.parent._;\n } else if (item instanceof Edge) {\n const edge = this.rEdgesMap[item.id()];\n scope = edge._;\n parentScope = edge.parent._;\n }\n if (scope) {\n return scope.calcTooltip(parentScope);\n }\n return \"\";\n }\n\n subgraph(id: string): Subgraph | undefined {\n return this.subgraphsMap[id];\n }\n\n vertex(id: string): VertexType | undefined {\n return this.verticesMap[id];\n }\n\n edge(id: string): Edge {\n return this.edgesMap[id];\n }\n\n // Events ---\n minClick(sg: Subgraph) {\n }\n}\n","import { Button, Spacer, ToggleButton, Widget } from \"@hpcc-js/common\";\nimport { ScopeGraph, Workunit } from \"@hpcc-js/comms\";\nimport { Table } from \"@hpcc-js/dgrid\";\nimport { Graph as GraphWidget, Subgraph, Vertex } from \"@hpcc-js/graph\";\nimport { Carousel, ChartPanel } from \"@hpcc-js/layout\";\nimport { hashSum } from \"@hpcc-js/util\";\nimport { WUGraphLegend } from \"./WUGraphLegend.ts\";\nimport { WUScopeController } from \"./WUScopeController.ts\";\n\nimport \"../src/WUGraph.css\";\n\nexport class WUGraph extends ChartPanel {\n\n private _partialAll = new Button().faChar(\"fa-window-restore\").tooltip(\"Partial All\")\n .on(\"click\", () => {\n this.stateClick(this._partialAll);\n });\n\n private _maxAll = new Button().faChar(\"fa-window-maximize\").tooltip(\"Max All\")\n .on(\"click\", () => {\n this.stateClick(this._maxAll);\n });\n\n private _toggleGraph = new ToggleButton().faChar(\"fa-chain\").tooltip(\"Graph\")\n .selected(true)\n .on(\"click\", () => {\n this.viewClick(this._toggleGraph);\n });\n\n private _toggleActivities = new ToggleButton().faChar(\"fa-table\").tooltip(\"Activitiies\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleActivities);\n });\n\n private _toggleEdges = new ToggleButton().faChar(\"fa-table\").tooltip(\"Edges\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleEdges);\n });\n\n private _toggleSubgraphs = new ToggleButton().faChar(\"fa-table\").tooltip(\"Subgraphs\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleSubgraphs);\n });\n\n protected _graph = new GraphWidget()\n .layout(\"Hierarchy\")\n .applyScaleOnLayout(true)\n .showToolbar(false)\n .allowDragging(false)\n ;\n\n private _activities = new Table()\n .pagination(false)\n ;\n\n private _edges = new Table()\n .pagination(false)\n ;\n\n private _subgraphs = new Table()\n .pagination(false)\n ;\n\n protected _legend = new WUGraphLegend(this)\n .on(\"click\", kind => {\n this.render();\n })\n .on(\"mouseover\", kind => {\n const verticesMap: { [id: string]: boolean } = {};\n for (const vertex of this._gc.vertices(kind)) {\n verticesMap[vertex.id()] = true;\n }\n this._graph.highlightVerticies(verticesMap);\n })\n .on(\"mouseout\", kind => {\n this._graph.highlightVerticies();\n })\n ;\n\n protected _view = new Carousel().widgets([this._graph, this._activities, this._edges, this._subgraphs]);\n\n protected _gc = new WUScopeController();\n\n constructor() {\n super();\n this.topOverlay(false);\n this.widget(this._view);\n const buttons: Widget[] = [\n this._toggleGraph,\n this._toggleActivities,\n this._toggleEdges,\n this._toggleSubgraphs,\n new Spacer(),\n this._partialAll,\n this._maxAll,\n new Spacer(),\n ...this._graph.iconBarButtons(),\n new Spacer()];\n this.buttons(buttons.concat(this.buttons()));\n this._gc.minClick = (sg: Subgraph) => {\n this.loadGraph();\n this._graph.render(w => {\n this._graph\n .selection([sg])\n .centerOnItem(sg)\n ;\n });\n };\n\n this._graph.tooltipHTML((v: Vertex) => {\n return this._gc.calcGraphTooltip(v);\n });\n }\n\n stateClick(sourceB: Button) {\n switch (sourceB) {\n case this._partialAll:\n this._graph.data().subgraphs.forEach((sg: Subgraph) => {\n sg.minState(\"partial\");\n });\n break;\n case this._maxAll:\n this._graph.data().subgraphs.forEach((sg: Subgraph) => {\n sg.minState(\"normal\");\n });\n break;\n }\n this.render();\n }\n\n viewClick(sourceTB: ToggleButton) {\n this._toggleGraph.selected(sourceTB === this._toggleGraph);\n this._toggleActivities.selected(sourceTB === this._toggleActivities);\n this._toggleEdges.selected(sourceTB === this._toggleEdges);\n this._toggleSubgraphs.selected(sourceTB === this._toggleSubgraphs);\n switch (sourceTB) {\n case this._toggleGraph:\n this._view.active(0);\n break;\n case this._toggleActivities:\n this._view.active(1);\n break;\n case this._toggleEdges:\n this._view.active(2);\n break;\n case this._toggleSubgraphs:\n this._view.active(3);\n break;\n }\n this.render(w => {\n });\n }\n\n private _prevHashSum;\n private _prevScopeGraph: ScopeGraph;\n fetchScopeGraph(): Promise<ScopeGraph> {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n graphID: this.graphID(),\n subgraphID: this.subgraphID()\n });\n if (!this._prevScopeGraph || this._prevHashSum !== hash) {\n this.startProgress();\n this._prevHashSum = hash;\n this._gc.clear();\n const wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n return wu.fetchGraphs().then(graphs => {\n for (const graph of graphs) {\n if (graph.Name === this.graphID()) {\n this.finishProgress();\n return graph.fetchScopeGraph(this.subgraphID());\n }\n }\n }).then(scopeGraph => {\n this._prevScopeGraph = scopeGraph;\n return this._prevScopeGraph;\n });\n }\n return Promise.resolve(this._prevScopeGraph);\n }\n\n enter(domNode, _element) {\n super.enter(domNode, _element);\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n }\n\n exit(domNode, element) {\n super.exit(domNode, element);\n }\n\n loadGraph() {\n this._gc.disabled(this._legend.disabled());\n this._graph\n .data(this._gc.graphData(), true)\n ;\n {\n const { columns, data } = this._gc.activityData();\n this._activities\n .columns(columns)\n .data(data)\n ;\n }\n {\n const { columns, data } = this._gc.edgeData();\n this._edges\n .columns(columns)\n .data(data)\n ;\n }\n {\n const { columns, data } = this._gc.subgraphData();\n this._subgraphs\n .columns(columns)\n .data(data)\n ;\n }\n }\n\n render(callback?: (w: Widget) => void): this {\n if (this.wuid() && this.graphID()) {\n this.fetchScopeGraph().then(scopedGraph => {\n this._gc.set(scopedGraph);\n this._legend.data(this._gc.calcLegend());\n this.loadGraph();\n super.render(callback);\n });\n } else {\n super.render(callback);\n }\n return this;\n }\n\n selection(_?) {\n if (!arguments.length) return this._graph.selection();\n const item = this._gc.vertex(_) || this._gc.edge(_) || this._gc.subgraph(_);\n if (item) {\n this._graph.selection([item]);\n }\n return this;\n }\n}\nWUGraph.prototype._class += \" eclwatch_WUGraph\";\n\nexport interface WUGraph {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n graphID(): string;\n graphID(_: string): this;\n subgraphID(): string;\n subgraphID(_: string): this;\n}\n\nWUGraph.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUGraph.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUGraph.prototype.publish(\"graphID\", \"\", \"string\", \"Graph ID\");\nWUGraph.prototype.publish(\"subgraphID\", \"\", \"string\", \"Subgraph ID\");\n","import { Exception, ResultFilter, Result, XSDSchema, XSDXMLNode } from \"@hpcc-js/comms\";\nimport { ColumnType, Deferred, domConstruct, QueryResults, RowFormatter } from \"@hpcc-js/dgrid\";\n\nfunction entitiesEncode(str) {\n return String(str).replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\");\n}\n\nfunction safeEncode(item) {\n switch (Object.prototype.toString.call(item)) {\n case \"[object Undefined]\":\n case \"[object Boolean]\":\n case \"[object Number]\":\n return item;\n case \"[object String]\":\n return entitiesEncode(item);\n default:\n console.warn(\"Unknown cell type: \" + Object.prototype.toString.call(item));\n }\n return item;\n}\n\nexport class Store {\n protected wuResult: Result;\n protected schema: XSDSchema;\n protected _columns: any[];\n protected _cache: { [key: string]: Promise<{ totalLength: number, data: any[] }> } = {};\n private rowFormatter: RowFormatter;\n protected _filter: ResultFilter = {};\n private onError?: (msg: string) => void;\n\n constructor(wuResult: Result, schema: XSDSchema, renderHtml: boolean, filter: ResultFilter = {}, onError?: (msg: string) => void) {\n this.wuResult = wuResult;\n this.schema = schema;\n this._columns = this.schema2Columns(this.schema.root);\n this.rowFormatter = new RowFormatter(this._columns, renderHtml);\n this._filter = filter;\n this.onError = onError;\n }\n\n columns() {\n return this._columns;\n }\n\n schema2Columns(parentNode: XSDXMLNode, prefix: string = \"\"): ColumnType[] {\n if (!parentNode) return [];\n return parentNode.children().filter(node => node.name.indexOf(\"__hidden\", node.name.length - \"__hidden\".length) === -1).map((node, idx) => {\n const label = node.name;\n const keyed = node.attrs[\"hpcc:keyed\"];\n const column: ColumnType = {\n field: prefix + label,\n leafID: label,\n idx,\n label: label + (keyed ? \" (i)\" : \"\"),\n className: \"resultGridCell\",\n hidden: false,\n sortable: false,\n width: keyed ? 16 : 0,\n isSet: node.isSet\n };\n const children = this.schema2Columns(node, prefix + label + \"_\");\n if (children.length) {\n column.width += 10 + children.reduce((prev: number, childNode: ColumnType) => {\n return prev + childNode.width!;\n }, 0);\n column.children = children;\n } else {\n column.width += node.charWidth() * 9;\n column.formatter = (cell, row) => {\n switch (typeof cell) {\n case \"string\":\n return {\n html: cell.replace(/\\t/g, \" \").trim()\n };\n case \"undefined\":\n return \"\";\n }\n return cell;\n };\n }\n return column;\n });\n }\n\n isChildDataset(cell) {\n if (Object.prototype.toString.call(cell) !== \"[object Object]\") {\n return false;\n }\n let propCount = 0;\n let firstPropType = null;\n for (const key in cell) {\n if (!firstPropType) {\n firstPropType = Object.prototype.toString.call(cell[key]);\n }\n propCount++;\n }\n return propCount === 1 && firstPropType === \"[object Array]\";\n }\n\n rowToTable(cell, __row, node) {\n if (this.isChildDataset(cell)) { // Don't display \"Row\" as a header ---\n for (const key in cell) {\n this.rowToTable(cell[key], __row, node);\n }\n return;\n }\n\n const table = domConstruct.create(\"table\", { border: 1, cellspacing: 0, width: \"100%\" }, node);\n switch (Object.prototype.toString.call(cell)) {\n case \"[object Object]\":\n let tr = domConstruct.create(\"tr\", null, table);\n for (const key in cell) {\n domConstruct.create(\"th\", { innerHTML: safeEncode(key) }, tr);\n }\n tr = domConstruct.create(\"tr\", null, table);\n for (const key in cell) {\n switch (Object.prototype.toString.call(cell[key])) {\n case \"[object Object]\":\n case \"[object Array]\":\n this.rowToTable(cell[key], __row, node);\n break;\n default:\n domConstruct.create(\"td\", { innerHTML: safeEncode(cell[key]) }, tr);\n break;\n }\n }\n break;\n case \"[object Array]\":\n for (let i = 0; i < cell.length; ++i) {\n switch (Object.prototype.toString.call(cell[i])) {\n case \"[object Boolean]\":\n case \"[object Number]\":\n case \"[object String]\":\n // Item in Scalar ---\n const tr1 = domConstruct.create(\"tr\", null, table);\n domConstruct.create(\"td\", { innerHTML: safeEncode(cell[i]) }, tr1);\n break;\n default:\n // Child Dataset ---\n if (i === 0) {\n const tr2 = domConstruct.create(\"tr\", null, table);\n for (const key in cell[i]) {\n domConstruct.create(\"th\", { innerHTML: safeEncode(key) }, tr2);\n }\n }\n domConstruct.create(\"tr\", null, table);\n for (const key in cell[i]) {\n if (cell[i][key]) {\n if (Object.prototype.toString.call(cell[i][key]) === \"[object Object]\" || Object.prototype.toString.call(cell[i][key]) === \"[object Array]\") {\n const td = domConstruct.create(\"td\", null, tr1);\n this.rowToTable(cell[i][key], cell[i], td);\n } else if (key.indexOf(\"__html\", key.length - \"__html\".length) !== -1) {\n domConstruct.create(\"td\", { innerHTML: cell[i][key] }, tr1);\n } else if (key.indexOf(\"__javascript\", key.length - \"__javascript\".length) !== -1) {\n /*const td = */ domConstruct.create(\"td\", null, tr1);\n // this.injectJavascript(cell[i][key], cell[i], td);\n } else {\n const val = cell[i][key];\n domConstruct.create(\"td\", { innerHTML: safeEncode(val) }, tr1);\n }\n } else {\n domConstruct.create(\"td\", { innerHTML: \"\" }, tr1);\n }\n }\n }\n }\n break;\n }\n }\n\n getIdentity(row) {\n return row.__hpcc_id;\n }\n\n _request(start, end): Promise<{ totalLength: number, data: any[] }> {\n if (!this.wuResult) return Promise.resolve({ totalLength: 0, data: [] });\n const cacheKey = `${start}->${end}`;\n if (this._cache[cacheKey]) return this._cache[cacheKey];\n const retVal = this.wuResult.fetchRows(start, end - start, false, this._filter).then((rows: any[]) => {\n return {\n totalLength: this.wuResult.Total,\n data: rows.map((row, idx) => {\n const formattedRow: any = this.rowFormatter.format(row);\n formattedRow.__hpcc_id = start + idx;\n formattedRow.__hpcc_orig = row;\n return formattedRow;\n })\n };\n }).catch((err: Exception) => {\n this.onError(err.Message || \"An exception has occurred\");\n return { totalLength: 0, data: [] };\n });\n this._cache[cacheKey] = retVal;\n return retVal;\n }\n\n fetchRange(options): Promise<any[]> {\n const retVal = new Deferred();\n this._request(options.start, options.end).then(response => retVal.resolve(response));\n return new QueryResults(retVal.then(response => response.data), {\n totalLength: retVal.then(response => response.totalLength)\n });\n }\n}\n","import { ResultFilter, IOptions, Result } from \"@hpcc-js/comms\";\nimport { Common } from \"@hpcc-js/dgrid\";\nimport { hashSum } from \"@hpcc-js/util\";\nimport { Store } from \"./WUResultStore.ts\";\n\nexport class WUResult extends Common {\n\n protected _result: Result;\n protected _localStore: Store;\n\n constructor() {\n super();\n this.renderHtml(false);\n }\n\n hashSum(opts: any = {}) {\n return hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n resultName: this.resultName(),\n sequence: this.sequence(),\n nodeGroup: this.nodeGroup(),\n logicalFile: this.logicalFile(),\n userID: this.user(),\n password: this.password(),\n bypassCache: this.bypassCache(),\n ...opts\n });\n }\n\n protected _prevResultHash: string;\n calcResult(): Result | null {\n const resultHash = this.hashSum();\n if (this._prevResultHash !== resultHash) {\n this._prevResultHash = resultHash;\n\n const opts: IOptions = {\n baseUrl: this.baseUrl(),\n userID: this.user(),\n password: this.password()\n };\n if (this.wuid() && this.resultName()) {\n this._result = Result.attach(opts, this.wuid(), this.resultName());\n } else if (this.wuid() && this.sequence() !== undefined) {\n this._result = Result.attach(opts, this.wuid(), this.sequence());\n } else if (this.logicalFile() && this.nodeGroup()) {\n this._result = Result.attachLogicalFile(opts, this.nodeGroup(), this.logicalFile());\n } else if (this.logicalFile()) {\n this._result = Result.attachLogicalFile(opts, \"\", this.logicalFile());\n }\n\n if (this._result && this.bypassCache()) {\n this._result.bypassCache(this.bypassCache());\n }\n }\n return this._result;\n }\n\n fetch(row, count, abortController = new AbortController()): Promise<object[]> {\n const result = this.calcResult();\n if (result) {\n return result.fetchRows(row, count, false, {}, abortController.signal);\n }\n return Promise.resolve([]);\n }\n\n protected _prevStoreHash: string;\n protected _prevQueryHash: string;\n update(domNode, element) {\n super.update(domNode, element);\n const storeHash = this.hashSum({\n renderHtml: this.renderHtml(),\n filter: this.filter()\n });\n if (this._prevStoreHash !== storeHash) {\n this._prevStoreHash = storeHash;\n const result = this.calcResult();\n if (result) {\n result.fetchXMLSchema().then(schema => {\n this._localStore = new Store(result, schema, this.renderHtml(), this.filter(), (msg) => {\n if (this._dgrid) {\n this._dgrid.noDataMessage = `<span class='dojoxGridNoData'>${msg}</span>`;\n this._dgrid.refresh();\n }\n });\n this._dgrid?.set(\"columns\", this._localStore.columns());\n this._dgrid?.set(\"collection\", this._localStore);\n });\n }\n }\n }\n\n click(row, col, sel) {\n }\n}\nWUResult.prototype._class += \" eclwatch_WUResult\";\n\nexport interface WUResult {\n baseUrl(): string;\n baseUrl(_: string): this;\n user(): string;\n user(_: string): this;\n password(): string;\n password(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n resultName(): string;\n resultName(_: string): this;\n sequence(): number;\n sequence(_: number): this;\n nodeGroup(): string;\n nodeGroup(_: string): this;\n logicalFile(): string;\n logicalFile(_: string): this;\n filter(): ResultFilter;\n filter(_: ResultFilter): this;\n bypassCache(): boolean;\n bypassCache(_: boolean): this;\n}\n\nWUResult.prototype.publish(\"baseUrl\", \"\", \"string\", \"URL to WsWorkunits\");\nWUResult.prototype.publish(\"user\", \"\", \"string\", \"User ID\");\nWUResult.prototype.publish(\"password\", \"\", \"string\", \"Password\");\nWUResult.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUResult.prototype.publish(\"resultName\", \"\", \"string\", \"Result Name\");\nWUResult.prototype.publish(\"sequence\", undefined, \"number\", \"Sequence Number\");\nWUResult.prototype.publish(\"nodeGroup\", \"\", \"string\", \"NodeGroup\");\nWUResult.prototype.publish(\"logicalFile\", \"\", \"string\", \"Logical File Name\");\nWUResult.prototype.publish(\"filter\", {}, \"object\", \"Filter\");\nWUResult.prototype.publish(\"bypassCache\", false, \"boolean\", \"Bypass cached results\");\n","import { Workunit, WUStateID } from \"@hpcc-js/comms\";\nimport { Edge, Graph, Vertex } from \"@hpcc-js/graph\";\nimport { hashSum, IObserverHandle } from \"@hpcc-js/util\";\n\nexport enum STATUS {\n CREATE = \"Created\",\n COMPILE = \"Compiled\",\n EXECUTE = \"Executed\",\n COMPLETE = \"Completed\"\n}\n\nexport enum STATUS_ACTIVE {\n CREATE = \"Creating\",\n COMPILE = \"Compiling\",\n EXECUTE = \"Executing\",\n COMPLETE = \"Completed\"\n}\n\nexport class WUStatus extends Graph {\n\n protected _wu: Workunit;\n protected _wuHandle: IObserverHandle;\n\n protected _create: Vertex;\n protected _compile: Vertex;\n protected _execute: Vertex;\n protected _complete: Vertex;\n\n constructor() {\n super();\n this\n .zoomable(false)\n .zoomToFitLimit(1)\n .layout(\"Hierarchy\")\n .hierarchyRankDirection(\"LR\")\n .showToolbar(false)\n .allowDragging(false)\n ;\n }\n\n private _prevHash;\n attachWorkunit() {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid()\n });\n if (this._prevHash !== hash) {\n this._prevHash = hash;\n this._wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n if (this._wuHandle) {\n this._wuHandle.release();\n }\n this._wuHandle = this._wu.watch(changes => {\n this.lazyRender();\n });\n }\n }\n\n createVertex(faChar: string) {\n return new Vertex()\n .icon_diameter(32)\n .icon_shape_colorFill(\"none\")\n .icon_shape_colorStroke(\"none\")\n .icon_image_colorFill(\"darkgray\")\n .iconAnchor(\"middle\")\n .textbox_shape_colorFill(\"none\")\n .textbox_shape_colorStroke(\"none\")\n .textbox_text_colorFill(\"darkgray\")\n .faChar(faChar)\n ;\n }\n\n updateVertex(vertex: Vertex, color: string) {\n vertex\n .icon_image_colorFill(color)\n .textbox_text_colorFill(color)\n ;\n }\n\n updateVertexStatus(level: 0 | 1 | 2 | 3 | 4, active: boolean = false) {\n const completeColor = this._wu.isFailed() ? \"darkred\" : \"darkgreen\";\n this._create.text(STATUS.CREATE);\n this._compile.text(STATUS.COMPILE);\n this._execute.text(STATUS.EXECUTE);\n this._complete.text(STATUS.COMPLETE);\n switch (level) {\n case 0:\n this.updateVertex(this._create, \"darkgray\");\n this.updateVertex(this._compile, \"darkgray\");\n this.updateVertex(this._execute, \"darkgray\");\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 1:\n this._create.text(STATUS_ACTIVE.CREATE);\n this.updateVertex(this._create, active ? \"orange\" : completeColor);\n this.updateVertex(this._compile, \"darkgray\");\n this.updateVertex(this._execute, \"darkgray\");\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 2:\n this._compile.text(STATUS_ACTIVE.COMPILE);\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, active ? \"orange\" : completeColor);\n this.updateVertex(this._execute, completeColor);\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 3:\n this._execute.text(STATUS_ACTIVE.EXECUTE);\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, completeColor);\n this.updateVertex(this._execute, active ? \"orange\" : completeColor);\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 4:\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, completeColor);\n this.updateVertex(this._execute, completeColor);\n this.updateVertex(this._complete, completeColor);\n break;\n }\n }\n\n createEdge(source, target) {\n return new Edge()\n .sourceVertex(source)\n .targetVertex(target)\n .strokeColor(\"black\")\n .showArc(false)\n ;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this._create = this.createVertex(\"\\uf11d\");\n this._compile = this.createVertex(\"\\uf085\");\n this._execute = this.createVertex(\"\\uf275\");\n this._complete = this.createVertex(\"\\uf11e\");\n const e1 = this.createEdge(this._create, this._compile);\n const e2 = this.createEdge(this._compile, this._execute);\n const e3 = this.createEdge(this._execute, this._complete);\n this.data({\n vertices: [this._create, this._compile, this._execute, this._complete],\n edges: [e1, e2, e3]\n });\n }\n\n update(domNode, element) {\n this.attachWorkunit();\n switch (this._wu.StateID) {\n case WUStateID.Blocked:\n case WUStateID.Wait:\n case WUStateID.Scheduled:\n case WUStateID.UploadingFiled:\n this.updateVertexStatus(1);\n break;\n case WUStateID.Compiling:\n this.updateVertexStatus(2, true);\n break;\n case WUStateID.Submitted:\n this.updateVertexStatus(1, true);\n break;\n case WUStateID.Compiled:\n this.updateVertexStatus(2);\n break;\n case WUStateID.Aborting:\n case WUStateID.Running:\n this.updateVertexStatus(3, true);\n break;\n case WUStateID.Aborted:\n case WUStateID.Archived:\n case WUStateID.Completed:\n this.updateVertexStatus(4);\n break;\n case WUStateID.Failed:\n this.updateVertexStatus(4, false);\n break;\n case WUStateID.DebugPaused:\n case WUStateID.DebugRunning:\n case WUStateID.Paused:\n case WUStateID.Unknown:\n default:\n this.updateVertexStatus(0);\n break;\n }\n super.update(domNode, element);\n this.zoomToFit();\n }\n\n exit(domNode, element) {\n if (this._wuHandle) {\n this._wuHandle.release();\n }\n super.exit(domNode, element);\n }\n}\nWUStatus.prototype._class += \" eclwatch_WUStatus\";\n\nexport interface WUStatus {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n}\n\nWUStatus.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUStatus.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\n","import { Palette as e, Widget as t, format as n, hsl as r, map as i, select as a, selection as o } from \"@hpcc-js/common\";\n//#region \\0rolldown/runtime.js\nvar s = \"@hpcc-js/api\", c = \"3.5.1\", l = \"3.26.1\";\n//#endregion\n//#region src/I1DChart.ts\nfunction I1DChart() {}\nI1DChart.prototype._dataFamily = \"1D\", I1DChart.prototype._palette = e.rainbow(\"default\"), I1DChart.prototype.click = function(e, t, n) {}, I1DChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/I2DChart.ts\nfunction I2DChart() {}\nI2DChart.prototype._dataFamily = \"2D\", I2DChart.prototype._palette = e.ordinal(\"default\"), I2DChart.prototype.fillColor = function(e, t, n, r) {\n\treturn this._palette(e[0]);\n}, I2DChart.prototype.strokeColor = function(e, t, n, i) {\n\treturn r(this.fillColor(e, t, n, i)).darker().toString();\n}, I2DChart.prototype.textColor = function(t, n, r, i) {\n\treturn e.textColor(this.fillColor(t, n, r, i));\n}, I2DChart.prototype.click = function(e, t, n) {}, I2DChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/I2DAggrChart.ts\nfunction I2DAggrChart() {}\nI2DAggrChart.prototype._palette = e.rainbow(\"default\"), I2DAggrChart.prototype.fillColor = function(e, t, n) {\n\treturn this._palette(e.length);\n}, I2DAggrChart.prototype.strokeColor = function(e, t, n) {\n\treturn r(this.fillColor(e, t, n)).darker().toString();\n}, I2DAggrChart.prototype.textColor = function(t, n, r) {\n\treturn e.textColor(this.fillColor(t, n, r));\n}, I2DAggrChart.prototype.click = function(e, t, n) {}, I2DAggrChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/IGraph.ts\nfunction IGraph() {}\nIGraph.prototype._dataFamily = \"graph\", IGraph.prototype.vertex_click = function(e, t, n, r) {\n\tr && r.vertex;\n}, IGraph.prototype.vertex_dblclick = function(e, t, n, r) {\n\tr && r.vertex;\n}, IGraph.prototype.edge_click = function(e, t, n, r) {\n\tr && r.edge;\n}, IGraph.prototype.edge_dblclick = function(e, t, n, r) {\n\tr && r.edge;\n};\n//#endregion\n//#region src/IHighlight.ts\nfunction instanceOfIHighlight(e) {\n\treturn typeof e.highlightColumn == \"function\";\n}\n//#endregion\n//#region src/IInput.ts\nfunction IInput() {}\nIInput.prototype = Object.create(t.prototype), IInput.prototype.constructor = IInput, IInput.prototype.isValid = function() {\n\treturn !(this.validate() && !new RegExp(this.validate()).test(this.value()));\n}, IInput.prototype.hasValue = function() {\n\tif (typeof this.type == \"function\") {\n\t\tswitch (this.type()) {\n\t\t\tcase \"radio\":\n\t\t\tcase \"checkbox\":\n\t\t\t\tif (this.value() && this.value() !== \"false\") return !0;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tif (this.value()) return !0;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn !1;\n\t}\n\treturn this.value() !== \"\";\n}, IInput.prototype.blur = function(e) {}, IInput.prototype.keyup = function(e) {}, IInput.prototype.focus = function(e) {}, IInput.prototype.click = function(e) {}, IInput.prototype.dblclick = function(e) {}, IInput.prototype.change = function(e, t) {}, IInput.prototype.resetValue = function(e) {\n\te.value(e._inputElement[0].node().value);\n}, IInput.prototype.disable = function(e) {\n\tthis._inputElement.forEach(function(t, n) {\n\t\tt.attr(\"disabled\", e ? \"disabled\" : null);\n\t});\n}, IInput.prototype.setFocus = function() {\n\tthis._inputElement.length && this._inputElement[0].node().focus();\n}, IInput.prototype.publish(\"name\", \"\", \"string\", \"HTML name for the input\"), IInput.prototype.publish(\"label\", \"\", \"string\", \"Descriptive label\"), IInput.prototype.publish(\"value\", \"\", \"string\", \"Input Current Value\"), IInput.prototype.publish(\"validate\", null, \"string\", \"Input Validation\");\n//#endregion\n//#region src/INDChart.ts\nfunction INDChart() {}\nINDChart.prototype._dataFamily = \"ND\", INDChart.prototype._palette = e.ordinal(\"default\"), INDChart.prototype.fillColor = function(e, t, n, r) {\n\treturn this._palette(t);\n}, INDChart.prototype.strokeColor = function(e, t, n, i) {\n\treturn r(this.fillColor(e, t, n, i)).darker().toString();\n}, INDChart.prototype.textColor = function(t, n, r, i) {\n\treturn e.textColor(this.fillColor(t, n, r, i));\n}, INDChart.prototype.click = function(e, t, n) {}, INDChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/Tooltip.ts\nfunction tip() {\n\tlet e = d3TipDirection, t = d3TipOffset, n = d3TipHTML, r = functor(document.body), s = initNode(), c = null, l = null, u = null, tip = function(e) {\n\t\tif (c = getSVGNode(e), !c) return;\n\t\tl = c.createSVGPoint();\n\t\tlet t = r();\n\t\tt && s && t.appendChild(s);\n\t};\n\ttip.show = function(e, i, a) {\n\t\tu = a[i];\n\t\tlet o = Array.prototype.slice.call(arguments), s = n.apply(this, o);\n\t\tif (s === null) return tip;\n\t\tlet c = t.apply(this, o), l = getNodeEl(), p = f.length, m, h = r().getBoundingClientRect();\n\t\tfor (l.html(s).style(\"opacity\", 1).style(\"pointer-events\", \"all\"); p--;) l.classed(f[p], !1);\n\t\tlet g = !1, _ = {}, v = f[0];\n\t\tfor (let e = 0; e < f.length && (g = _placement_attempt(f[e]), !g); e++);\n\t\tif (g) l.classed(\"notick\", !1);\n\t\telse {\n\t\t\tl.classed(\"notick\", !0);\n\t\t\tlet e = _vertical_adjustment(_[v]), t = _horizontal_adjustment(_[v]);\n\t\t\t_placement_attempt(v, e, t);\n\t\t}\n\t\treturn tip;\n\t\tfunction _horizontal_adjustment(e) {\n\t\t\treturn e.left > e.right ? e.left > 0 ? -e.left : 0 : e.right > 0 ? e.right : 0;\n\t\t}\n\t\tfunction _vertical_adjustment(e) {\n\t\t\treturn e.top > e.bottom ? e.top > 0 ? -e.top : 0 : e.bottom;\n\t\t}\n\t\tfunction _placement_attempt(e, t, n) {\n\t\t\tt ||= 0, n ||= 0, l.style(\"white-space\", \"nowrap\"), m = d.get(e).apply(this), l.classed(e, !0).style(\"top\", m.top + c[0] - t + \"px\").style(\"left\", m.left + c[1] - n + \"px\");\n\t\t\tlet r = l.node().getBoundingClientRect(), i = r.top > h.top && r.left > h.left && r.bottom < h.bottom && r.right < h.right;\n\t\t\treturn _[e] = {\n\t\t\t\ttop: h.top - r.top,\n\t\t\t\tright: r.right - h.right,\n\t\t\t\tbottom: r.bottom - h.bottom,\n\t\t\t\tleft: h.left - r.left\n\t\t\t}, l.style(\"white-space\", \"normal\"), _[e].total_overflow = Object.keys(_[e]).filter((t) => _[e][t] > 0).reduce((t, n) => t + _[e][n], 0), _[v].total_overflow > _[e].total_overflow && (v = e), i || l.classed(e, !1), i;\n\t\t}\n\t}, tip.hide = function() {\n\t\treturn getNodeEl().style(\"opacity\", 0).style(\"pointer-events\", \"none\"), tip;\n\t}, tip.attr = function(e, t) {\n\t\tif (arguments.length < 2 && typeof e == \"string\") return getNodeEl().attr(e);\n\t\tlet n = Array.prototype.slice.call(arguments);\n\t\treturn o.prototype.attr.apply(getNodeEl(), n), tip;\n\t}, tip.style = function(e, t) {\n\t\tif (arguments.length < 2 && typeof e == \"string\") return getNodeEl().style(e);\n\t\tlet n = Array.prototype.slice.call(arguments);\n\t\treturn o.prototype.style.apply(getNodeEl(), n), tip;\n\t}, tip.direction = function(t) {\n\t\treturn arguments.length ? (e = t == null ? t : functor(t), tip) : e;\n\t}, tip.offset = function(e) {\n\t\treturn arguments.length ? (t = e == null ? e : functor(e), tip) : t;\n\t}, tip.html = function(e) {\n\t\treturn arguments.length ? (n = e == null ? e : functor(e), tip) : n;\n\t}, tip.rootElement = function(e) {\n\t\treturn arguments.length ? (r = functor(e), tip) : r;\n\t}, tip.destroy = function() {\n\t\treturn s &&= (getNodeEl().remove(), null), tip;\n\t};\n\tfunction d3TipDirection() {\n\t\treturn \"n\";\n\t}\n\tfunction d3TipOffset() {\n\t\treturn [0, 0];\n\t}\n\tfunction d3TipHTML() {\n\t\treturn \" \";\n\t}\n\tlet d = i({\n\t\tn: directionNorth,\n\t\ts: directionSouth,\n\t\te: directionEast,\n\t\tw: directionWest,\n\t\tnw: directionNorthWest,\n\t\tne: directionNorthEast,\n\t\tsw: directionSouthWest,\n\t\tse: directionSouthEast\n\t}), f = d.keys();\n\tfunction directionNorth() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.n.y - s.offsetHeight,\n\t\t\tleft: e.n.x - s.offsetWidth / 2\n\t\t};\n\t}\n\tfunction directionSouth() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.s.y + 8,\n\t\t\tleft: e.s.x - s.offsetWidth / 2\n\t\t};\n\t}\n\tfunction directionEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.e.y - s.offsetHeight / 2,\n\t\t\tleft: e.e.x + 8\n\t\t};\n\t}\n\tfunction directionWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.w.y - s.offsetHeight / 2,\n\t\t\tleft: e.w.x - s.offsetWidth - 8\n\t\t};\n\t}\n\tfunction directionNorthWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.nw.y - s.offsetHeight,\n\t\t\tleft: e.nw.x - s.offsetWidth\n\t\t};\n\t}\n\tfunction directionNorthEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.ne.y - s.offsetHeight,\n\t\t\tleft: e.ne.x\n\t\t};\n\t}\n\tfunction directionSouthWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.sw.y,\n\t\t\tleft: e.sw.x - s.offsetWidth\n\t\t};\n\t}\n\tfunction directionSouthEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.se.y,\n\t\t\tleft: e.se.x\n\t\t};\n\t}\n\tfunction initNode() {\n\t\tlet e = a(document.createElement(\"div\"));\n\t\treturn e.attr(\"class\", \"d3-tip\").style(\"position\", \"absolute\").style(\"top\", \"0px\").style(\"opacity\", 0).style(\"pointer-events\", \"none\").style(\"box-sizing\", \"border-box\"), e.node();\n\t}\n\tfunction getSVGNode(e) {\n\t\tlet t = e.node();\n\t\treturn t ? t.tagName.toLowerCase() === \"svg\" ? t : t.ownerSVGElement : null;\n\t}\n\tfunction getNodeEl() {\n\t\treturn s ?? (s = initNode(), r().appendChild(s)), a(s);\n\t}\n\tfunction getScreenBBox(e) {\n\t\tlet t = u || e;\n\t\tfor (; t.getCTM == null && t.parentNode != null;) t = t.parentNode;\n\t\tlet n = {}, r = t.getCTM(), i = t.getBBox(), a = i.width, o = i.height, s = i.x, c = i.y;\n\t\treturn l.x = s, l.y = c, n.nw = l.matrixTransform(r), l.x += a, n.ne = l.matrixTransform(r), l.y += o, n.se = l.matrixTransform(r), l.x -= a, n.sw = l.matrixTransform(r), l.y -= o / 2, n.w = l.matrixTransform(r), l.x += a, n.e = l.matrixTransform(r), l.x -= a / 2, l.y -= o / 2, n.n = l.matrixTransform(r), l.y += o, n.s = l.matrixTransform(r), n;\n\t}\n\tfunction functor(e) {\n\t\treturn typeof e == \"function\" ? e : function() {\n\t\t\treturn e;\n\t\t};\n\t}\n\treturn tip;\n}\n//#endregion\n//#region src/ITooltip.ts\nfunction ITooltip() {\n\tif (this.tooltip = tip(), this.tooltipLabelFormat_exists() && (this._labelFormatter = n(this.tooltipLabelFormat())), this.tooltipValueFormat_exists() && (this._valueFormatter = n(this.tooltipValueFormat())), this.layerEnter) {\n\t\tlet e = this.layerEnter;\n\t\tthis.layerEnter = function(t, n, r) {\n\t\t\tthis._parentOverlay ||= t._parentOverlay, this.tooltipEnter(n), e.apply(this, arguments);\n\t\t};\n\t\tlet t = this.layerUpdate;\n\t\tthis.layerUpdate = function(e) {\n\t\t\tt.apply(this, arguments), this.tooltipUpdate();\n\t\t};\n\t\tlet n = this.layerExit;\n\t\tthis.layerExit = function(e) {\n\t\t\tthis.tooltipExit(), n.apply(this, arguments);\n\t\t};\n\t} else {\n\t\tlet e = this.enter;\n\t\tthis.enter = function(t, n) {\n\t\t\tthis.tooltipEnter(n), e.apply(this, arguments);\n\t\t};\n\t\tlet t = this.update;\n\t\tthis.update = function(e, n) {\n\t\t\tt.apply(this, arguments), this.tooltipUpdate();\n\t\t};\n\t\tlet n = this.exit;\n\t\tthis.exit = function(e, t) {\n\t\t\tthis.tooltipExit(), n.apply(this, arguments);\n\t\t};\n\t}\n}\nITooltip.prototype = Object.create(t.prototype), ITooltip.prototype.constructor = ITooltip, ITooltip.prototype.tooltipEnter = function(e) {\n\tlet t = this.parentOverlay();\n\tt.empty() || this.tooltip.rootElement(t.node().parentNode), e.call(this.tooltip);\n}, ITooltip.prototype.tooltipUpdate = function() {\n\tthis.tooltip.offset(() => {\n\t\tif (event && this.tooltipFollowMouse()) {\n\t\t\tlet e = document.querySelector(\".d3-tip\");\n\t\t\treturn e.style.display = \"block\", e.style.left = this.tooltipOffset() + event.clientX + \"px\", e.style.top = event.clientY + \"px\", [];\n\t\t}\n\t\tswitch (this.tooltip.direction()()) {\n\t\t\tcase \"e\": return [0, this.tooltipOffset()];\n\t\t\tdefault: return [-this.tooltipOffset(), 0];\n\t\t}\n\t});\n\tlet e = this.tooltip.attr(\"class\");\n\te && (e = e.split(\" notick\").join(\"\") + (this.tooltipTick() ? \"\" : \" notick\") + (this.tooltipStyle() === \"none\" ? \" hidden\" : \"\"), e = e.split(\" \").filter(function(e) {\n\t\treturn e.indexOf(\"ITooltip-tooltipStyle-\") !== 0;\n\t}).join(\" \"), e += \" ITooltip-tooltipStyle-\" + this.tooltipStyle(), this.tooltip.attr(\"class\", e));\n}, ITooltip.prototype.tooltipExit = function() {\n\tthis.tooltip && this.tooltip.destroy();\n}, ITooltip.prototype._tooltipHTML = function(e) {\n\treturn e;\n}, ITooltip.prototype.tooltipHTML = function(e) {\n\treturn this.tooltip.html(e);\n}, ITooltip.prototype.tooltipFormat = function(e = {}) {\n\tswitch (e.label = e.label === void 0 ? \"\" : e.label, this._labelFormatter ? e.label = this._labelFormatter(e.label) || \"\" : this.formatData && this.parseData && (e.label = this.formatData(this.parseData(e.label))), e.series = e.series || \"\", e.value instanceof Date ? e.value = e.value || \"\" : this._valueFormatter ? e.value = this._valueFormatter(e.value) || \"\" : this.formatValue && this.parseValue && (e.value = this.formatValue(this.parseValue(e.value))), this.tooltipStyle()) {\n\t\tcase \"none\": break;\n\t\tcase \"series-table\":\n\t\t\tlet t = \"<table class=\\\"ITooltip-series-table\\\"><thead><tr><th colspan=\\\"2\\\">\" + e.label + \"</th></tr></thead><tbody>\";\n\t\t\treturn e.arr.forEach(function(e) {\n\t\t\t\tt += \"<tr>\", t += \"<td>\", t += \"<div class=\\\"series-table-row-color\\\" style=\\\"background-color:\" + e.color + \"\\\"></div>\", t += \"<div class=\\\"series-table-row-label\\\">\" + e.label + \"</div>\", t += \"</td>\", t += \"<td><div class=\\\"series-table-row-value\\\">\" + e.value + \"</div></td>\", t += \"</tr>\";\n\t\t\t}), t += \"</tbody>\", t += \"</table>\", t;\n\t\tdefault: return e.series ? \"<span style='color:\" + this.tooltipSeriesColor() + \"'>\" + e.series + \"</span> / <span style='color:\" + this.tooltipLabelColor() + \"'>\" + e.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\" : e.label === \"\" ? \"<span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\" : \"<span style='color:\" + this.tooltipLabelColor() + \"'>\" + e.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\";\n\t}\n}, ITooltip.prototype.tooltipKeyValueFormat = function(e, t) {\n\tlet n = \"\";\n\tfor (let r in t) if (r !== e) {\n\t\tlet e = t && t[r] ? t[r] : \"\";\n\t\tn += `<tr><td style=\"${this.tooltipLabelColor_exists() ? \"color:\" + this.tooltipLabelColor() : \"\"}\">${r}</td><td style=\"font-weight:normal\">${e}</td></tr>`;\n\t}\n\treturn `<table>\n <thead>\n <tr><th colspan=\"2\" style=\"font-weight:bold;font-size:16px\">${t[e]}</th></tr>\n </thead>\n <tbody>\n ${n}\n </tbody>\n </table>`;\n}, ITooltip.prototype.publish(\"tooltipStyle\", \"default\", \"set\", \"Style mode\", [\n\t\"default\",\n\t\"none\",\n\t\"series-table\"\n], {}), ITooltip.prototype.publish(\"tooltipFollowMouse\", !1, \"boolean\", \"If true, the tooltip will follow mouse movement\", null, {}), ITooltip.prototype.publish(\"tooltipLabelFormat\", void 0, \"string\", \"Format of tooltip label(s) (the domain axis)\", null, {}), ITooltip.prototype.publish(\"tooltipValueFormat\", void 0, \"string\", \"Number format of tooltip value(s)\", null, {}), ITooltip.prototype.publish(\"tooltipSeriesColor\", \"#EAFFFF\", \"html-color\", \"Color of tooltip series text\", null, {}), ITooltip.prototype.publish(\"tooltipLabelColor\", \"#CCFFFF\", \"html-color\", \"Color of tooltip label text (the domain axis)\", null, {}), ITooltip.prototype.publish(\"tooltipValueColor\", \"white\", \"html-color\", \"Color of tooltip value(s)\", null, {}), ITooltip.prototype.publish(\"tooltipTick\", !0, \"boolean\", \"Show tooltip tick\", null, {}), ITooltip.prototype.publish(\"tooltipOffset\", 8, \"number\", \"Offset from the cursor\", null, {});\nvar u = ITooltip.prototype.tooltipLabelFormat;\nITooltip.prototype.tooltipLabelFormat = function(e) {\n\tlet t = u.apply(this, arguments);\n\treturn arguments.length && (this._labelFormatter = n(e)), t;\n};\nvar d = ITooltip.prototype.tooltipValueFormat;\nITooltip.prototype.tooltipValueFormat = function(e) {\n\tlet t = d.apply(this, arguments);\n\treturn arguments.length && (this._valueFormatter = n(e)), t;\n};\n//#endregion\n//#region src/ITree.ts\nfunction ITree() {}\nITree.prototype.constructor = ITree, ITree.prototype.click = function(e, t, n) {}, ITree.prototype.dblclick = function(e, t, n) {}, ITree.prototype._palette = e.ordinal(\"default\");\n//#endregion\nexport { l as BUILD_VERSION, I1DChart, I2DAggrChart, I2DChart, IGraph, IInput, INDChart, ITooltip, ITree, s as PKG_NAME, c as PKG_VERSION, instanceOfIHighlight };\n\n//# sourceMappingURL=index.js.map\n(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.d3-tip{color:#fff;z-index:10;background:#000000a8;border-radius:2px;padding:12px;font-weight:700;line-height:1;pointer-events:none!important}.d3-tip.hidden{visibility:hidden}.d3-tip:after{content:\" \";box-sizing:border-box;border:4px solid #000000a8;width:8px;height:8px;margin:0;display:inline-block;position:absolute;pointer-events:none!important}.d3-tip.n:after{border-top-width:8px;border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%;left:calc(50% - 4px)}.d3-tip.e:after{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;border-right-width:8px;top:calc(50% - 4px);left:-12px}.d3-tip.s{margin-top:8px}.d3-tip.s:after{border-top-color:#0000;border-bottom-width:8px;border-left-color:#0000;border-right-color:#0000;top:-12px;left:calc(50% - 4px)}.d3-tip.w:after{border-top-color:#0000;border-bottom-color:#0000;border-left-width:8px;border-right-color:#0000;top:calc(50% - 4px);left:100%}.d3-tip.notick:after{border-color:#0000!important}.common_Widget .over{stroke:#000000a8;opacity:.66}.d3-tip.ITooltip-tooltipStyle-series-table{padding:0}.d3-tip .ITooltip-series-table th,.d3-tip .ITooltip-series-table td{text-align:left;border:1px solid #d1d1d1;padding:6px}.d3-tip .ITooltip-series-table .series-table-row-color{width:10px;height:10px;margin-right:10px;display:inline-block}.d3-tip .ITooltip-series-table .series-table-row-label{display:inline-block}.d3-tip .ITooltip-series-table th{background-color:#b3b3b3}.d3-tip .ITooltip-series-table td{color:#555;background-color:#fff;font-weight:400}.d3-tip .ITooltip-series-table td:first-child{border-right:0}table.ITooltip-series-table td:last-child{border-left:1px dotted #a3a3a3}/*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();","import { I1DChart as e, I2DAggrChart as t, I2DChart as n, INDChart as r, ITooltip as i } from \"@hpcc-js/api\";\nimport { CanvasWidget as a, FAChar as o, HTMLWidget as s, Palette as c, SVGWidget as l, Text as u, Utility as d, brush as f, brushSelection as p, brushX as m, brushY as h, d3Event as g, descending as _, dispatch as v, drag as b, event as S, extent as C, format as w, hsl as T, interpolate as E, interpolateHcl as D, local as O, max as k, min as A, range as j, rgb as M, scaleBand as N, scaleLinear as P, scaleLog as F, scalePow as I, scaleSqrt as L, scaleTime as R, select as z, thresholdSturges as ee, tickStep as B, timeFormat as V, timeParse as te, zoom as ne } from \"@hpcc-js/common\";\nimport { degreesToRadians as re, normalizeRadians as ie } from \"@hpcc-js/util\";\n//#region \\0rolldown/runtime.js\nvar ae = Object.defineProperty, __name = (e, t) => ae(e, \"name\", {\n\tvalue: t,\n\tconfigurable: !0\n}), oe = \"@hpcc-js/chart\", se = \"3.8.1\", ce = \"3.26.1\", le = Math.PI, ue = 2 * le, de = 1e-6, fe = ue - de;\nfunction Path() {\n\tthis._x0 = this._y0 = this._x1 = this._y1 = null, this._ = \"\";\n}\nfunction path() {\n\treturn new Path();\n}\nPath.prototype = path.prototype = {\n\tconstructor: Path,\n\tmoveTo: function(e, t) {\n\t\tthis._ += \"M\" + (this._x0 = this._x1 = +e) + \",\" + (this._y0 = this._y1 = +t);\n\t},\n\tclosePath: function() {\n\t\tthis._x1 !== null && (this._x1 = this._x0, this._y1 = this._y0, this._ += \"Z\");\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._ += \"L\" + (this._x1 = +e) + \",\" + (this._y1 = +t);\n\t},\n\tquadraticCurveTo: function(e, t, n, r) {\n\t\tthis._ += \"Q\" + +e + \",\" + +t + \",\" + (this._x1 = +n) + \",\" + (this._y1 = +r);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._ += \"C\" + +e + \",\" + +t + \",\" + +n + \",\" + +r + \",\" + (this._x1 = +i) + \",\" + (this._y1 = +a);\n\t},\n\tarcTo: function(e, t, n, r, i) {\n\t\te = +e, t = +t, n = +n, r = +r, i = +i;\n\t\tvar a = this._x1, o = this._y1, s = n - e, c = r - t, l = a - e, u = o - t, d = l * l + u * u;\n\t\tif (i < 0) throw Error(\"negative radius: \" + i);\n\t\tif (this._x1 === null) this._ += \"M\" + (this._x1 = e) + \",\" + (this._y1 = t);\n\t\telse if (d > de) if (!(Math.abs(u * s - c * l) > de) || !i) this._ += \"L\" + (this._x1 = e) + \",\" + (this._y1 = t);\n\t\telse {\n\t\t\tvar f = n - a, p = r - o, m = s * s + c * c, h = f * f + p * p, g = Math.sqrt(m), _ = Math.sqrt(d), v = i * Math.tan((le - Math.acos((m + d - h) / (2 * g * _))) / 2), b = v / _, S = v / g;\n\t\t\tMath.abs(b - 1) > de && (this._ += \"L\" + (e + b * l) + \",\" + (t + b * u)), this._ += \"A\" + i + \",\" + i + \",0,0,\" + +(u * f > l * p) + \",\" + (this._x1 = e + S * s) + \",\" + (this._y1 = t + S * c);\n\t\t}\n\t},\n\tarc: function(e, t, n, r, i, a) {\n\t\te = +e, t = +t, n = +n, a = !!a;\n\t\tvar o = n * Math.cos(r), s = n * Math.sin(r), c = e + o, l = t + s, u = 1 ^ a, d = a ? r - i : i - r;\n\t\tif (n < 0) throw Error(\"negative radius: \" + n);\n\t\tthis._x1 === null ? this._ += \"M\" + c + \",\" + l : (Math.abs(this._x1 - c) > de || Math.abs(this._y1 - l) > de) && (this._ += \"L\" + c + \",\" + l), n && (d < 0 && (d = d % ue + ue), d > fe ? this._ += \"A\" + n + \",\" + n + \",0,1,\" + u + \",\" + (e - o) + \",\" + (t - s) + \"A\" + n + \",\" + n + \",0,1,\" + u + \",\" + (this._x1 = c) + \",\" + (this._y1 = l) : d > de && (this._ += \"A\" + n + \",\" + n + \",0,\" + +(d >= le) + \",\" + u + \",\" + (this._x1 = e + n * Math.cos(i)) + \",\" + (this._y1 = t + n * Math.sin(i))));\n\t},\n\trect: function(e, t, n, r) {\n\t\tthis._ += \"M\" + (this._x0 = this._x1 = +e) + \",\" + (this._y0 = this._y1 = +t) + \"h\" + +n + \"v\" + +r + \"h\" + -n + \"Z\";\n\t},\n\ttoString: function() {\n\t\treturn this._;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-shape/src/constant.js\nfunction constant_default$3(e) {\n\treturn function constant() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$3, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/math.js\nvar pe = Math.abs, H = Math.atan2, me = Math.cos, he = Math.max, ge = Math.min, U = Math.sin, _e = Math.sqrt, ve = Math.PI, ye = ve / 2, be = 2 * ve;\nfunction acos(e) {\n\treturn e > 1 ? 0 : e < -1 ? ve : Math.acos(e);\n}\nfunction asin$1(e) {\n\treturn e >= 1 ? ye : e <= -1 ? -ye : Math.asin(e);\n}\n__name(asin$1, \"asin\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/arc.js\nfunction arcInnerRadius$1(e) {\n\treturn e.innerRadius;\n}\n__name(arcInnerRadius$1, \"arcInnerRadius\");\nfunction arcOuterRadius$1(e) {\n\treturn e.outerRadius;\n}\n__name(arcOuterRadius$1, \"arcOuterRadius\");\nfunction arcStartAngle$1(e) {\n\treturn e.startAngle;\n}\n__name(arcStartAngle$1, \"arcStartAngle\");\nfunction arcEndAngle$1(e) {\n\treturn e.endAngle;\n}\n__name(arcEndAngle$1, \"arcEndAngle\"), __name(arc_default$1, \"default\");\nfunction arcPadAngle$1(e) {\n\treturn e && e.padAngle;\n}\n__name(arcPadAngle$1, \"arcPadAngle\");\nfunction intersect$1(e, t, n, r, i, a, o, s) {\n\tvar c = n - e, l = r - t, u = o - i, d = s - a, f = d * c - u * l;\n\tif (!(f * f < 1e-12)) return f = (u * (t - a) - d * (e - i)) / f, [e + f * c, t + f * l];\n}\n__name(intersect$1, \"intersect\");\nfunction cornerTangents$1(e, t, n, r, i, a, o) {\n\tvar s = e - n, c = t - r, l = (o ? a : -a) / _e(s * s + c * c), u = l * c, d = -l * s, f = e + u, p = t + d, m = n + u, h = r + d, g = (f + m) / 2, _ = (p + h) / 2, v = m - f, b = h - p, S = v * v + b * b, C = i - a, w = f * h - m * p, T = (b < 0 ? -1 : 1) * _e(he(0, C * C * S - w * w)), E = (w * b - v * T) / S, D = (-w * v - b * T) / S, O = (w * b + v * T) / S, k = (-w * v + b * T) / S, A = E - g, j = D - _, M = O - g, N = k - _;\n\treturn A * A + j * j > M * M + N * N && (E = O, D = k), {\n\t\tcx: E,\n\t\tcy: D,\n\t\tx01: -u,\n\t\ty01: -d,\n\t\tx11: E * (i / C - 1),\n\t\ty11: D * (i / C - 1)\n\t};\n}\n__name(cornerTangents$1, \"cornerTangents\");\nfunction arc_default$1() {\n\tvar e = arcInnerRadius$1, t = arcOuterRadius$1, n = constant_default$3(0), r = null, i = arcStartAngle$1, a = arcEndAngle$1, o = arcPadAngle$1, s = null;\n\tfunction arc() {\n\t\tvar c, l, u = +e.apply(this, arguments), d = +t.apply(this, arguments), f = i.apply(this, arguments) - ye, p = a.apply(this, arguments) - ye, m = pe(p - f), h = p > f;\n\t\tif (s ||= c = path(), d < u && (l = d, d = u, u = l), !(d > 1e-12)) s.moveTo(0, 0);\n\t\telse if (m > be - 1e-12) s.moveTo(d * me(f), d * U(f)), s.arc(0, 0, d, f, p, !h), u > 1e-12 && (s.moveTo(u * me(p), u * U(p)), s.arc(0, 0, u, p, f, h));\n\t\telse {\n\t\t\tvar g = f, _ = p, v = f, b = p, S = m, C = m, w = o.apply(this, arguments) / 2, T = w > 1e-12 && (r ? +r.apply(this, arguments) : _e(u * u + d * d)), E = ge(pe(d - u) / 2, +n.apply(this, arguments)), D = E, O = E, k, A;\n\t\t\tif (T > 1e-12) {\n\t\t\t\tvar j = asin$1(T / u * U(w)), M = asin$1(T / d * U(w));\n\t\t\t\t(S -= j * 2) > 1e-12 ? (j *= h ? 1 : -1, v += j, b -= j) : (S = 0, v = b = (f + p) / 2), (C -= M * 2) > 1e-12 ? (M *= h ? 1 : -1, g += M, _ -= M) : (C = 0, g = _ = (f + p) / 2);\n\t\t\t}\n\t\t\tvar N = d * me(g), P = d * U(g), F = u * me(b), I = u * U(b);\n\t\t\tif (E > 1e-12) {\n\t\t\t\tvar L = d * me(_), R = d * U(_), z = u * me(v), ee = u * U(v), B;\n\t\t\t\tif (m < ve && (B = intersect$1(N, P, z, ee, L, R, F, I))) {\n\t\t\t\t\tvar V = N - B[0], te = P - B[1], ne = L - B[0], re = R - B[1], ie = 1 / U(acos((V * ne + te * re) / (_e(V * V + te * te) * _e(ne * ne + re * re))) / 2), ae = _e(B[0] * B[0] + B[1] * B[1]);\n\t\t\t\t\tD = ge(E, (u - ae) / (ie - 1)), O = ge(E, (d - ae) / (ie + 1));\n\t\t\t\t}\n\t\t\t}\n\t\t\tC > 1e-12 ? O > 1e-12 ? (k = cornerTangents$1(z, ee, N, P, d, O, h), A = cornerTangents$1(L, R, F, I, d, O, h), s.moveTo(k.cx + k.x01, k.cy + k.y01), O < E ? s.arc(k.cx, k.cy, O, H(k.y01, k.x01), H(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, O, H(k.y01, k.x01), H(k.y11, k.x11), !h), s.arc(0, 0, d, H(k.cy + k.y11, k.cx + k.x11), H(A.cy + A.y11, A.cx + A.x11), !h), s.arc(A.cx, A.cy, O, H(A.y11, A.x11), H(A.y01, A.x01), !h))) : (s.moveTo(N, P), s.arc(0, 0, d, g, _, !h)) : s.moveTo(N, P), !(u > 1e-12) || !(S > 1e-12) ? s.lineTo(F, I) : D > 1e-12 ? (k = cornerTangents$1(F, I, L, R, u, -D, h), A = cornerTangents$1(N, P, z, ee, u, -D, h), s.lineTo(k.cx + k.x01, k.cy + k.y01), D < E ? s.arc(k.cx, k.cy, D, H(k.y01, k.x01), H(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, D, H(k.y01, k.x01), H(k.y11, k.x11), !h), s.arc(0, 0, u, H(k.cy + k.y11, k.cx + k.x11), H(A.cy + A.y11, A.cx + A.x11), h), s.arc(A.cx, A.cy, D, H(A.y11, A.x11), H(A.y01, A.x01), !h))) : s.arc(0, 0, u, b, v, h);\n\t\t}\n\t\tif (s.closePath(), c) return s = null, c + \"\" || null;\n\t}\n\treturn arc.centroid = function() {\n\t\tvar n = (+e.apply(this, arguments) + +t.apply(this, arguments)) / 2, r = (+i.apply(this, arguments) + +a.apply(this, arguments)) / 2 - ve / 2;\n\t\treturn [me(r) * n, U(r) * n];\n\t}, arc.innerRadius = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), arc) : e;\n\t}, arc.outerRadius = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$3(+e), arc) : t;\n\t}, arc.cornerRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), arc) : n;\n\t}, arc.padRadius = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), arc) : r;\n\t}, arc.startAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(+e), arc) : i;\n\t}, arc.endAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default$3(+e), arc) : a;\n\t}, arc.padAngle = function(e) {\n\t\treturn arguments.length ? (o = typeof e == \"function\" ? e : constant_default$3(+e), arc) : o;\n\t}, arc.context = function(e) {\n\t\treturn arguments.length ? (s = e ?? null, arc) : s;\n\t}, arc;\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/linear.js\nfunction Linear$1(e) {\n\tthis._context = e;\n}\n__name(Linear$1, \"Linear\"), Linear$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t}\n\t}\n}, __name(linear_default$1, \"default\");\nfunction linear_default$1(e) {\n\treturn new Linear$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/point.js\nfunction x$1(e) {\n\treturn e[0];\n}\n__name(x$1, \"x\");\nfunction y$1(e) {\n\treturn e[1];\n}\n__name(y$1, \"y\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/line.js\nfunction line_default$1() {\n\tvar e = x$1, t = y$1, n = constant_default$3(!0), r = null, i = linear_default$1, a = null;\n\tfunction line(o) {\n\t\tvar s, c = o.length, l, u = !1, d;\n\t\tfor (r ?? (a = i(d = path())), s = 0; s <= c; ++s) !(s < c && n(l = o[s], s, o)) === u && ((u = !u) ? a.lineStart() : a.lineEnd()), u && a.point(+e(l, s, o), +t(l, s, o));\n\t\tif (d) return a = null, d + \"\" || null;\n\t}\n\treturn line.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), line) : e;\n\t}, line.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$3(+e), line) : t;\n\t}, line.defined = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(!!e), line) : n;\n\t}, line.curve = function(e) {\n\t\treturn arguments.length ? (i = e, r != null && (a = i(r)), line) : i;\n\t}, line.context = function(e) {\n\t\treturn arguments.length ? (e == null ? r = a = null : a = i(r = e), line) : r;\n\t}, line;\n}\n__name(line_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/area.js\nfunction area_default$1() {\n\tvar e = x$1, t = null, n = constant_default$3(0), r = y$1, i = constant_default$3(!0), a = null, o = linear_default$1, s = null;\n\tfunction area(c) {\n\t\tvar l, u, d, f = c.length, p, m = !1, h, g = Array(f), _ = Array(f);\n\t\tfor (a ?? (s = o(h = path())), l = 0; l <= f; ++l) {\n\t\t\tif (!(l < f && i(p = c[l], l, c)) === m) if (m = !m) u = l, s.areaStart(), s.lineStart();\n\t\t\telse {\n\t\t\t\tfor (s.lineEnd(), s.lineStart(), d = l - 1; d >= u; --d) s.point(g[d], _[d]);\n\t\t\t\ts.lineEnd(), s.areaEnd();\n\t\t\t}\n\t\t\tm && (g[l] = +e(p, l, c), _[l] = +n(p, l, c), s.point(t ? +t(p, l, c) : g[l], r ? +r(p, l, c) : _[l]));\n\t\t}\n\t\tif (h) return s = null, h + \"\" || null;\n\t}\n\tfunction arealine() {\n\t\treturn line_default$1().defined(i).curve(o).context(a);\n\t}\n\treturn area.x = function(n) {\n\t\treturn arguments.length ? (e = typeof n == \"function\" ? n : constant_default$3(+n), t = null, area) : e;\n\t}, area.x0 = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), area) : e;\n\t}, area.x1 = function(e) {\n\t\treturn arguments.length ? (t = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), area) : t;\n\t}, area.y = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), r = null, area) : n;\n\t}, area.y0 = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), area) : n;\n\t}, area.y1 = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), area) : r;\n\t}, area.lineX0 = area.lineY0 = function() {\n\t\treturn arealine().x(e).y(n);\n\t}, area.lineY1 = function() {\n\t\treturn arealine().x(e).y(r);\n\t}, area.lineX1 = function() {\n\t\treturn arealine().x(t).y(n);\n\t}, area.defined = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(!!e), area) : i;\n\t}, area.curve = function(e) {\n\t\treturn arguments.length ? (o = e, a != null && (s = o(a)), area) : o;\n\t}, area.context = function(e) {\n\t\treturn arguments.length ? (e == null ? a = s = null : s = o(a = e), area) : a;\n\t}, area;\n}\n__name(area_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/descending.js\nfunction descending_default(e, t) {\n\treturn t < e ? -1 : t > e ? 1 : t >= e ? 0 : NaN;\n}\n__name(descending_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/identity.js\nfunction identity_default$2(e) {\n\treturn e;\n}\n__name(identity_default$2, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/pie.js\nfunction pie_default() {\n\tvar e = identity_default$2, t = descending_default, n = null, r = constant_default$3(0), i = constant_default$3(be), a = constant_default$3(0);\n\tfunction pie(o) {\n\t\tvar s, c = o.length, l, u, d = 0, f = Array(c), p = Array(c), m = +r.apply(this, arguments), h = Math.min(be, Math.max(-be, i.apply(this, arguments) - m)), g, _ = Math.min(Math.abs(h) / c, a.apply(this, arguments)), v = _ * (h < 0 ? -1 : 1), b;\n\t\tfor (s = 0; s < c; ++s) (b = p[f[s] = s] = +e(o[s], s, o)) > 0 && (d += b);\n\t\tfor (t == null ? n != null && f.sort(function(e, t) {\n\t\t\treturn n(o[e], o[t]);\n\t\t}) : f.sort(function(e, n) {\n\t\t\treturn t(p[e], p[n]);\n\t\t}), s = 0, u = d ? (h - c * v) / d : 0; s < c; ++s, m = g) l = f[s], b = p[l], g = m + (b > 0 ? b * u : 0) + v, p[l] = {\n\t\t\tdata: o[l],\n\t\t\tindex: s,\n\t\t\tvalue: b,\n\t\t\tstartAngle: m,\n\t\t\tendAngle: g,\n\t\t\tpadAngle: _\n\t\t};\n\t\treturn p;\n\t}\n\treturn pie.value = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), pie) : e;\n\t}, pie.sortValues = function(e) {\n\t\treturn arguments.length ? (t = e, n = null, pie) : t;\n\t}, pie.sort = function(e) {\n\t\treturn arguments.length ? (n = e, t = null, pie) : n;\n\t}, pie.startAngle = function(e) {\n\t\treturn arguments.length ? (r = typeof e == \"function\" ? e : constant_default$3(+e), pie) : r;\n\t}, pie.endAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(+e), pie) : i;\n\t}, pie.padAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default$3(+e), pie) : a;\n\t}, pie;\n}\n__name(pie_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/basis.js\nfunction point$7(e, t, n) {\n\te._context.bezierCurveTo((2 * e._x0 + e._x1) / 3, (2 * e._y0 + e._y1) / 3, (e._x0 + 2 * e._x1) / 3, (e._y0 + 2 * e._y1) / 3, (e._x0 + 4 * e._x1 + t) / 6, (e._y0 + 4 * e._y1 + n) / 6);\n}\n__name(point$7, \"point\");\nfunction Basis$1(e) {\n\tthis._context = e;\n}\n__name(Basis$1, \"Basis\"), __name(basis_default, \"default\"), Basis$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 3: point$7(this, this._x1, this._y1);\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3, this._context.lineTo((5 * this._x0 + this._x1) / 6, (5 * this._y0 + this._y1) / 6);\n\t\t\tdefault:\n\t\t\t\tpoint$7(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\nfunction basis_default(e) {\n\treturn new Basis$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/bundle.js\nfunction Bundle$1(e, t) {\n\tthis._basis = new Basis$1(e), this._beta = t;\n}\n__name(Bundle$1, \"Bundle\"), Bundle$1.prototype = {\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [], this._basis.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length - 1;\n\t\tif (n > 0) for (var r = e[0], i = t[0], a = e[n] - r, o = t[n] - i, s = -1, c; ++s <= n;) c = s / n, this._basis.point(this._beta * e[s] + (1 - this._beta) * (r + c * a), this._beta * t[s] + (1 - this._beta) * (i + c * o));\n\t\tthis._x = this._y = null, this._basis.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nvar xe = (function custom(e) {\n\tfunction bundle(t) {\n\t\treturn e === 1 ? new Basis$1(t) : new Bundle$1(t, e);\n\t}\n\treturn bundle.beta = function(e) {\n\t\treturn custom(+e);\n\t}, bundle;\n})(.85);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/cardinal.js\nfunction point$6(e, t, n) {\n\te._context.bezierCurveTo(e._x1 + e._k * (e._x2 - e._x0), e._y1 + e._k * (e._y2 - e._y0), e._x2 + e._k * (e._x1 - t), e._y2 + e._k * (e._y1 - n), e._x2, e._y2);\n}\n__name(point$6, \"point\");\nfunction Cardinal$1(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\n__name(Cardinal$1, \"Cardinal\"), Cardinal$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$6(this, this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x1 = e, this._y1 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$6(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar Se = (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new Cardinal$1(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/catmullRom.js\nfunction point$5(e, t, n) {\n\tvar r = e._x1, i = e._y1, a = e._x2, o = e._y2;\n\tif (e._l01_a > 1e-12) {\n\t\tvar s = 2 * e._l01_2a + 3 * e._l01_a * e._l12_a + e._l12_2a, c = 3 * e._l01_a * (e._l01_a + e._l12_a);\n\t\tr = (r * s - e._x0 * e._l12_2a + e._x2 * e._l01_2a) / c, i = (i * s - e._y0 * e._l12_2a + e._y2 * e._l01_2a) / c;\n\t}\n\tif (e._l23_a > 1e-12) {\n\t\tvar l = 2 * e._l23_2a + 3 * e._l23_a * e._l12_a + e._l12_2a, u = 3 * e._l23_a * (e._l23_a + e._l12_a);\n\t\ta = (a * l + e._x1 * e._l23_2a - t * e._l12_2a) / u, o = (o * l + e._y1 * e._l23_2a - n * e._l12_2a) / u;\n\t}\n\te._context.bezierCurveTo(r, i, a, o, e._x2, e._y2);\n}\n__name(point$5, \"point\");\nfunction CatmullRom$1(e, t) {\n\tthis._context = e, this._alpha = t;\n}\n__name(CatmullRom$1, \"CatmullRom\"), CatmullRom$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$5(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar Ce = (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRom$1(t, e) : new Cardinal$1(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/monotone.js\nfunction sign$1(e) {\n\treturn e < 0 ? -1 : 1;\n}\n__name(sign$1, \"sign\");\nfunction slope3$1(e, t, n) {\n\tvar r = e._x1 - e._x0, i = t - e._x1, a = (e._y1 - e._y0) / (r || i < 0 && -0), o = (n - e._y1) / (i || r < 0 && -0), s = (a * i + o * r) / (r + i);\n\treturn (sign$1(a) + sign$1(o)) * Math.min(Math.abs(a), Math.abs(o), .5 * Math.abs(s)) || 0;\n}\n__name(slope3$1, \"slope3\");\nfunction slope2$1(e, t) {\n\tvar n = e._x1 - e._x0;\n\treturn n ? (3 * (e._y1 - e._y0) / n - t) / 2 : t;\n}\n__name(slope2$1, \"slope2\");\nfunction point$4(e, t, n) {\n\tvar r = e._x0, i = e._y0, a = e._x1, o = e._y1, s = (a - r) / 3;\n\te._context.bezierCurveTo(r + s, i + s * t, a - s, o - s * n, a, o);\n}\n__name(point$4, \"point\");\nfunction MonotoneX$1(e) {\n\tthis._context = e;\n}\n__name(MonotoneX$1, \"MonotoneX\"), MonotoneX$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$4(this, this._t0, slope2$1(this, this._t0));\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tvar n = NaN;\n\t\tif (e = +e, t = +t, !(e === this._x1 && t === this._y1)) {\n\t\t\tswitch (this._point) {\n\t\t\t\tcase 0:\n\t\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\tthis._point = 2;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tthis._point = 3, point$4(this, slope2$1(this, n = slope3$1(this, e, t)), n);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tpoint$4(this, this._t0, n = slope3$1(this, e, t));\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t, this._t0 = n;\n\t\t}\n\t}\n};\nfunction MonotoneY$1(e) {\n\tthis._context = new ReflectContext$1(e);\n}\n__name(MonotoneY$1, \"MonotoneY\"), (MonotoneY$1.prototype = Object.create(MonotoneX$1.prototype)).point = function(e, t) {\n\tMonotoneX$1.prototype.point.call(this, t, e);\n};\nfunction ReflectContext$1(e) {\n\tthis._context = e;\n}\n__name(ReflectContext$1, \"ReflectContext\"), ReflectContext$1.prototype = {\n\tmoveTo: function(e, t) {\n\t\tthis._context.moveTo(t, e);\n\t},\n\tclosePath: function() {\n\t\tthis._context.closePath();\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._context.lineTo(t, e);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._context.bezierCurveTo(t, e, r, n, a, i);\n\t}\n};\nfunction monotoneX(e) {\n\treturn new MonotoneX$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/natural.js\nfunction Natural$1(e) {\n\tthis._context = e;\n}\n__name(Natural$1, \"Natural\"), Natural$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [];\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length;\n\t\tif (n) if (this._line ? this._context.lineTo(e[0], t[0]) : this._context.moveTo(e[0], t[0]), n === 2) this._context.lineTo(e[1], t[1]);\n\t\telse for (var r = controlPoints$1(e), i = controlPoints$1(t), a = 0, o = 1; o < n; ++a, ++o) this._context.bezierCurveTo(r[0][a], i[0][a], r[1][a], i[1][a], e[o], t[o]);\n\t\t(this._line || this._line !== 0 && n === 1) && this._context.closePath(), this._line = 1 - this._line, this._x = this._y = null;\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nfunction controlPoints$1(e) {\n\tvar t, n = e.length - 1, r, i = Array(n), a = Array(n), o = Array(n);\n\tfor (i[0] = 0, a[0] = 2, o[0] = e[0] + 2 * e[1], t = 1; t < n - 1; ++t) i[t] = 1, a[t] = 4, o[t] = 4 * e[t] + 2 * e[t + 1];\n\tfor (i[n - 1] = 2, a[n - 1] = 7, o[n - 1] = 8 * e[n - 1] + e[n], t = 1; t < n; ++t) r = i[t] / a[t - 1], a[t] -= r, o[t] -= r * o[t - 1];\n\tfor (i[n - 1] = o[n - 1] / a[n - 1], t = n - 2; t >= 0; --t) i[t] = (o[t] - i[t + 1]) / a[t];\n\tfor (a[n - 1] = (e[n] + i[n - 1]) / 2, t = 0; t < n - 1; ++t) a[t] = 2 * e[t + 1] - i[t + 1];\n\treturn [i, a];\n}\n__name(natural_default, \"default\"), __name(controlPoints$1, \"controlPoints\");\nfunction natural_default(e) {\n\treturn new Natural$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/step.js\nfunction Step$2(e, t) {\n\tthis._context = e, this._t = t;\n}\n__name(Step$2, \"Step\"), Step$2.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = this._y = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t0 < this._t && this._t < 1 && this._point === 2 && this._context.lineTo(this._x, this._y), (this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line >= 0 && (this._t = 1 - this._t, this._line = 1 - this._line);\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tif (this._t <= 0) this._context.lineTo(this._x, t), this._context.lineTo(e, t);\n\t\t\t\telse {\n\t\t\t\t\tvar n = this._x * (1 - this._t) + e * this._t;\n\t\t\t\t\tthis._context.lineTo(n, this._y), this._context.lineTo(n, t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x = e, this._y = t;\n\t}\n}, __name(step_default, \"default\");\nfunction step_default(e) {\n\treturn new Step$2(e, .5);\n}\nfunction stepBefore(e) {\n\treturn new Step$2(e, 0);\n}\nfunction stepAfter(e) {\n\treturn new Step$2(e, 1);\n}\n//#endregion\n//#region ../../node_modules/d3-axis/src/array.js\nvar we = Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-axis/src/identity.js\nfunction identity_default$1(e) {\n\treturn e;\n}\n__name(identity_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-axis/src/axis.js\nvar Te = 1, Ee = 2, De = 3, Oe = 4, ke = 1e-6;\nfunction translateX(e) {\n\treturn \"translate(\" + (e + .5) + \",0)\";\n}\nfunction translateY(e) {\n\treturn \"translate(0,\" + (e + .5) + \")\";\n}\nfunction number(e) {\n\treturn function(t) {\n\t\treturn +e(t);\n\t};\n}\nfunction center(e) {\n\tvar t = Math.max(0, e.bandwidth() - 1) / 2;\n\treturn e.round() && (t = Math.round(t)), function(n) {\n\t\treturn +e(n) + t;\n\t};\n}\nfunction entering() {\n\treturn !this.__axis;\n}\nfunction axis(e, t) {\n\tvar n = [], r = null, i = null, a = 6, o = 6, s = 3, c = e === Te || e === Oe ? -1 : 1, l = e === Oe || e === Ee ? \"x\" : \"y\", u = e === Te || e === De ? translateX : translateY;\n\tfunction axis(d) {\n\t\tvar f = r ?? (t.ticks ? t.ticks.apply(t, n) : t.domain()), p = i ?? (t.tickFormat ? t.tickFormat.apply(t, n) : identity_default$1), m = Math.max(a, 0) + s, h = t.range(), g = +h[0] + .5, _ = +h[h.length - 1] + .5, v = (t.bandwidth ? center : number)(t.copy()), b = d.selection ? d.selection() : d, S = b.selectAll(\".domain\").data([null]), C = b.selectAll(\".tick\").data(f, t).order(), w = C.exit(), T = C.enter().append(\"g\").attr(\"class\", \"tick\"), E = C.select(\"line\"), D = C.select(\"text\");\n\t\tS = S.merge(S.enter().insert(\"path\", \".tick\").attr(\"class\", \"domain\").attr(\"stroke\", \"currentColor\")), C = C.merge(T), E = E.merge(T.append(\"line\").attr(\"stroke\", \"currentColor\").attr(l + \"2\", c * a)), D = D.merge(T.append(\"text\").attr(\"fill\", \"currentColor\").attr(l, c * m).attr(\"dy\", e === Te ? \"0em\" : e === De ? \"0.71em\" : \"0.32em\")), d !== b && (S = S.transition(d), C = C.transition(d), E = E.transition(d), D = D.transition(d), w = w.transition(d).attr(\"opacity\", ke).attr(\"transform\", function(e) {\n\t\t\treturn isFinite(e = v(e)) ? u(e) : this.getAttribute(\"transform\");\n\t\t}), T.attr(\"opacity\", ke).attr(\"transform\", function(e) {\n\t\t\tvar t = this.parentNode.__axis;\n\t\t\treturn u(t && isFinite(t = t(e)) ? t : v(e));\n\t\t})), w.remove(), S.attr(\"d\", e === Oe || e == Ee ? o ? \"M\" + c * o + \",\" + g + \"H0.5V\" + _ + \"H\" + c * o : \"M0.5,\" + g + \"V\" + _ : o ? \"M\" + g + \",\" + c * o + \"V0.5H\" + _ + \"V\" + c * o : \"M\" + g + \",0.5H\" + _), C.attr(\"opacity\", 1).attr(\"transform\", function(e) {\n\t\t\treturn u(v(e));\n\t\t}), E.attr(l + \"2\", c * a), D.attr(l, c * m).text(p), b.filter(entering).attr(\"fill\", \"none\").attr(\"font-size\", 10).attr(\"font-family\", \"sans-serif\").attr(\"text-anchor\", e === Ee ? \"start\" : e === Oe ? \"end\" : \"middle\"), b.each(function() {\n\t\t\tthis.__axis = v;\n\t\t});\n\t}\n\treturn axis.scale = function(e) {\n\t\treturn arguments.length ? (t = e, axis) : t;\n\t}, axis.ticks = function() {\n\t\treturn n = we.call(arguments), axis;\n\t}, axis.tickArguments = function(e) {\n\t\treturn arguments.length ? (n = e == null ? [] : we.call(e), axis) : n.slice();\n\t}, axis.tickValues = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : we.call(e), axis) : r && r.slice();\n\t}, axis.tickFormat = function(e) {\n\t\treturn arguments.length ? (i = e, axis) : i;\n\t}, axis.tickSize = function(e) {\n\t\treturn arguments.length ? (a = o = +e, axis) : a;\n\t}, axis.tickSizeInner = function(e) {\n\t\treturn arguments.length ? (a = +e, axis) : a;\n\t}, axis.tickSizeOuter = function(e) {\n\t\treturn arguments.length ? (o = +e, axis) : o;\n\t}, axis.tickPadding = function(e) {\n\t\treturn arguments.length ? (s = +e, axis) : s;\n\t}, axis;\n}\nfunction axisTop(e) {\n\treturn axis(Te, e);\n}\nfunction axisRight(e) {\n\treturn axis(Ee, e);\n}\nfunction axisBottom(e) {\n\treturn axis(De, e);\n}\nfunction axisLeft(e) {\n\treturn axis(Oe, e);\n}\n//#endregion\n//#region src/Axis.ts\nvar Axis = class extends l {\n\t_origType;\n\t_origTimePattern;\n\tparser;\n\tparserInvert;\n\tformatter;\n\td3Scale;\n\td3Axis;\n\td3Guides;\n\t_guideElement;\n\tsvg;\n\tsvgAxis;\n\tsvgGuides;\n\t_tickFormatFunc;\n\tconstructor(e = \"origin\") {\n\t\tsuper(), this._drawStartPos = e, this.updateScale();\n\t}\n\tlowValue() {\n\t\treturn this.parse(this.low());\n\t}\n\thighValue() {\n\t\treturn this.parse(this.high());\n\t}\n\tparse(e, t) {\n\t\tif (e instanceof Array) return e.map(function(e) {\n\t\t\treturn this.parse(e);\n\t\t}, this);\n\t\tif (e != null) {\n\t\t\tif (this.parser) return this.parser(typeof e == \"number\" ? e.toString() : e);\n\t\t\tif (t && typeof e == \"string\") return +e;\n\t\t}\n\t\treturn e;\n\t}\n\tparseInvert(e) {\n\t\treturn e instanceof Array ? e.map(function(e) {\n\t\t\treturn this.parseInvert(e);\n\t\t}, this) : this.parserInvert && e ? this.parserInvert(e) : e;\n\t}\n\tformat(e) {\n\t\treturn e instanceof Array ? e.map(function(e) {\n\t\t\treturn this.format(e);\n\t\t}, this) : e != null && this.formatter ? this.formatter(e) : e;\n\t}\n\tparseFormat(e) {\n\t\treturn this.format(this.parse(e));\n\t}\n\ttickFormatFunc(e) {\n\t\treturn arguments.length ? (this._tickFormatFunc = e, this.updateScale(), this) : this._tickFormatFunc;\n\t}\n\tscalePos(e) {\n\t\tlet t = this.d3Scale(this.parse(e));\n\t\treturn this.type() === \"ordinal\" && (t += this.bandwidth() / 2), t;\n\t}\n\tbandwidth() {\n\t\treturn this.d3Scale.bandwidth ? this.d3Scale.bandwidth() : 0;\n\t}\n\tisHorizontal() {\n\t\tswitch (this.orientation()) {\n\t\t\tcase \"left\":\n\t\t\tcase \"right\": return !1;\n\t\t\tdefault:\n\t\t}\n\t\treturn !0;\n\t}\n\tdomain(e) {\n\t\treturn arguments.length ? (this.d3Scale.domain(e), this) : this.d3Scale.domain();\n\t}\n\trange(e) {\n\t\tif (!arguments.length) {\n\t\t\tif (this.d3Scale.rangeRoundBands) return this.d3Scale.rangeExtent();\n\t\t\tif (this.d3Scale.rangeRound) return this.d3Scale.range();\n\t\t}\n\t\treturn this.d3Scale.rangeRoundBands ? this.d3Scale.rangeRoundBands(e, .1) : this.d3Scale.rangeRound && this.d3Scale.range(e), this;\n\t}\n\tinvert(e) {\n\t\treturn this.d3Scale.invert(e);\n\t}\n\tguideTarget(e) {\n\t\treturn this._guideElement = z(e).attr(\"class\", this._class), this;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this.svg = t.append(\"g\"), this.svgAxis = this.svg.append(\"g\").attr(\"class\", \"axis\"), this.svgGuides = (this._guideElement || t).append(\"g\").attr(\"class\", \"guide\");\n\t}\n\t_prevOrientation;\n\tupdateScale() {\n\t\tswitch (this.type()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\tif (this.d3Scale = N().paddingInner(this.ordinalPaddingInner()).paddingOuter(this.ordinalPaddingOuter()), this.ordinals_exists() && this.d3Scale.domain(this.ordinals()), this.parser = null, this.ordinalMappings_exists()) {\n\t\t\t\t\tlet e = this.ordinalMappings();\n\t\t\t\t\tthis.formatter = (t) => e[t] || t;\n\t\t\t\t} else this.formatter = null;\n\t\t\t\tbreak;\n\t\t\tcase \"linear\":\n\t\t\t\tthis.d3Scale = P(), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"pow\":\n\t\t\t\tthis.d3Scale = I().exponent(this.powExponent()), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"log\":\n\t\t\t\tthis.d3Scale = F().base(this.logBase()), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"time\":\n\t\t\t\tthis.d3Scale = R(), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = this.timePattern_exists() ? te(this.timePattern()) : null, this.parserInvert = this.timePattern_exists() ? V(this.timePattern()) : null, this._tickFormatFunc ? this.formatter = this._tickFormatFunc : this.formatter = this.tickFormat_exists() ? V(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tif (this._prevOrientation !== this.orientation()) {\n\t\t\tswitch (this.orientation()) {\n\t\t\t\tcase \"left\":\n\t\t\t\t\tthis.d3Axis = axisLeft(this.d3Scale), this.d3Guides = axisLeft(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"top\":\n\t\t\t\t\tthis.d3Axis = axisTop(this.d3Scale), this.d3Guides = axisTop(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"right\":\n\t\t\t\t\tthis.d3Axis = axisRight(this.d3Scale), this.d3Guides = axisRight(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.d3Axis = axisBottom(this.d3Scale), this.d3Guides = axisBottom(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._prevOrientation = this.orientation(), this.svgAxis && this.svgAxis.html(\"\"), this.svgGuides && this.svgGuides.html(\"\");\n\t\t}\n\t\tif (this.extend()) switch (this.type()) {\n\t\t\tcase \"ordinal\": break;\n\t\t\tdefault:\n\t\t\t\tlet e, t, n, r, i, a;\n\t\t\t\tthis.isHorizontal() ? (e = this.width(), this.d3Scale.range([0, e]), t = e * this.extend() / 100, n = this.d3Scale.invert(0), i = this.d3Scale.invert(-t), r = this.d3Scale.invert(e), a = this.d3Scale.invert(e + t)) : (e = this.height(), this.d3Scale.range([e, 0]), t = e * this.extend() / 100, n = this.d3Scale.invert(e), i = this.d3Scale.invert(e + t), r = this.d3Scale.invert(0), a = this.d3Scale.invert(-t)), i === n && (i = n - n * this.extend() / 100), a === r && (a = r + r * this.extend() / 100), Math.sign(n) !== Math.sign(i) && (i = 0), Math.sign(r) !== Math.sign(a) && (a = 0), this.d3Scale.domain([i, a]);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.d3Axis.scale(this.d3Scale).tickFormat(this.formatter).ticks(this.tickCount()), this.d3Guides.scale(this.d3Scale).tickSize(this.tickLength_exists() ? -this.tickLength() : 0).tickFormat(\"\").ticks(this.tickCount());\n\t\tlet e = this.ticks();\n\t\treturn e.length && (this.d3Axis.tickValues(e.map((e) => this.parse(e.value))).tickFormat((t, n) => e[n].label), this.d3Guides.tickValues(e.map((e) => this.parse(e.value)))), this;\n\t}\n\tadjustText(e, t) {\n\t\tlet n = this.isHorizontal(), r = this.orientation() === \"left\", i = this.orientation() === \"bottom\", a = this, o = e.selectAll(\".tick > text\").style(\"font-family\", this.fontFamily()).style(\"font-size\", this.fontSize_exists() ? this.fontSize() + \"px\" : null);\n\t\tif (this.overlapMode() === \"linebreak\") this.type() === \"ordinal\" && o.call(function() {\n\t\t\treturn a.linebreak.apply(a, arguments);\n\t\t}, this.bandwidth());\n\t\telse if (this.overlapMode() === \"wrap\") this.type() === \"ordinal\" && o.call(function() {\n\t\t\treturn a.wrap.apply(a, arguments);\n\t\t}, this.bandwidth());\n\t\telse switch (n ? this.overlapMode() : \"none\") {\n\t\t\tcase \"stagger\":\n\t\t\t\to.style(\"text-anchor\", \"middle\").attr(\"dy\", function(e, n) {\n\t\t\t\t\treturn (i ? 1 : -1) * ((i ? .71 : 0) + n % t) + \"em\";\n\t\t\t\t}).attr(\"dx\", 0).attr(\"visibility\", null).attr(\"transform\", \"rotate(0)\");\n\t\t\t\tbreak;\n\t\t\tcase \"hide\":\n\t\t\t\to.style(\"text-anchor\", \"middle\").attr(\"dy\", (i ? .71 : 0) + \"em\").attr(\"dx\", 0).attr(\"visibility\", function(e, n) {\n\t\t\t\t\treturn n % t ? \"hidden\" : null;\n\t\t\t\t}).attr(\"transform\", \"rotate(0)\");\n\t\t\t\tbreak;\n\t\t\tcase \"rotate\":\n\t\t\t\tlet e = -this.labelRotation() || 0;\n\t\t\t\tif (e !== 0 && t > 1) {\n\t\t\t\t\to.each(function() {\n\t\t\t\t\t\tlet t = z(this), n = t.node().getBBox(), r = (i ? 1 : -1) * Math.sin(Math.PI * (-Math.abs(e) / 180));\n\t\t\t\t\t\tt.style(\"text-anchor\", e > 0 ? i ? \"start\" : \"end\" : i ? \"end\" : \"start\").attr(\"dy\", n.height / 2 * r + \"px\").attr(\"dx\", e > 0 ? i ? \"0.71em\" : \"-0.71em\" : i ? \"-0.71em\" : \"0.71em\").attr(\"transform\", \"rotate(\" + e + \")\").attr(\"visibility\", null);\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\tdefault: o.style(\"text-anchor\", n ? \"middle\" : r ? \"end\" : \"start\").attr(\"dy\", n ? (i ? .71 : 0) + \"em\" : \"0.32em\").attr(\"dx\", 0).attr(\"visibility\", null).attr(\"transform\", \"rotate(0)\");\n\t\t}\n\t}\n\tcalcTickOverlapModulus(e) {\n\t\tlet t = 1;\n\t\tswitch (this.overlapMode()) {\n\t\t\tcase \"rotate\":\n\t\t\tcase \"stagger\":\n\t\t\tcase \"hide\":\n\t\t\t\tlet n = [];\n\t\t\t\te.selectAll(\".tick > text\").each(function() {\n\t\t\t\t\tlet e = this.getBoundingClientRect();\n\t\t\t\t\tfor (let r = n.length - 1; r >= 0 && !(n[r].right < e.left); --r) n.length + 1 - r > t && (t = n.length + 1 - r);\n\t\t\t\t\tn.push(e);\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\treturn t;\n\t}\n\tcalcOverflow(e, t) {\n\t\tif (this.updateScale(), this.hidden()) return {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tdepth: 0,\n\t\t\ttickOverlapModulus: 1\n\t\t};\n\t\tlet n = this.isHorizontal();\n\t\tthis.range(n ? [0, this.width()] : [this.height(), 0]);\n\t\tlet r = e.append(\"g\").attr(\"class\", this.classID()), i = r.append(\"g\");\n\t\ti.attr(\"class\", n ? \"x\" : \"y\").call(this.d3Axis), t && e.selectAll(\".tick > text\").remove();\n\t\tlet a = {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tdepth: 0,\n\t\t\ttickOverlapModulus: this.calcTickOverlapModulus(i)\n\t\t};\n\t\tthis.adjustText(i, a.tickOverlapModulus);\n\t\tlet o = i.node().getBBox();\n\t\tswitch (a.depth = n ? o.height : o.width, this.shrinkToFit()) {\n\t\t\tcase \"low\":\n\t\t\tcase \"both\":\n\t\t\t\ta.left = n ? -o.x : 0, a.bottom = n ? 0 : -(this.height() - (o.height + o.y));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tswitch (this.shrinkToFit()) {\n\t\t\tcase \"high\":\n\t\t\tcase \"both\":\n\t\t\t\ta.top = n ? 0 : -o.y, a.right = n ? -(this.width() - o.x - o.width) : 0;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\treturn r.remove(), a;\n\t}\n\twrap(e, t, n) {\n\t\tn ||= /\\s+/;\n\t\tlet r = this;\n\t\te.each(function() {\n\t\t\tlet e = z(this), i = e.text().split(n).reverse(), a = [], o = 0, s = 1.1, c = e.attr(\"x\"), l = e.attr(\"y\"), u = parseFloat(e.style(\"font-size\")) || 10, d = Math.floor(t / (u * s)) - 1, f = r.isHorizontal() ? 1 : Math.ceil(i.length / d), p = parseFloat(e.attr(\"dy\")), m = e.text(null).append(\"tspan\").attr(\"x\", c).attr(\"y\", l).attr(\"dy\", p + \"em\"), h = 0, g = i.pop();\n\t\t\tfor (; g;) a.push(g), m.text(a.join(\" \")), h++, m.node().getComputedTextLength() > t && h >= f && (a.pop(), m.text(a.join(\" \")), a = [g], m = e.append(\"tspan\").attr(\"x\", c).attr(\"y\", l).attr(\"dy\", ++o * s + p + \"em\").text(g), h = 0), g = i.pop();\n\t\t\tr.isHorizontal() || e.selectAll(\"tspan\").attr(\"y\", -o / 2 + \"em\");\n\t\t});\n\t}\n\tlinebreak(e, t) {\n\t\tthis.wrap(e, t, \"\\n\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this.svg.style(\"display\", this.hidden() ? \"none\" : null);\n\t\tlet n = this.calcOverflow(t), r = this.isHorizontal() ? n.left : this.height() - n.top - n.bottom, i = this.isHorizontal() ? this.width() - n.right - this.padding() : 0 + this.padding();\n\t\tthis.range(this.reverse() ? [i, r] : [r, i]);\n\t\tlet a = this;\n\t\tfunction doPosition(e) {\n\t\t\te.attr(\"transform\", function() {\n\t\t\t\tswitch (a.orientation()) {\n\t\t\t\t\tcase \"left\": return \"translate(\" + n.depth + \", \" + n.top + \")\";\n\t\t\t\t\tcase \"top\": return \"translate(0,\" + n.depth + \")\";\n\t\t\t\t\tcase \"right\": return \"translate(\" + (a.width() - n.depth) + \", \" + n.top + \")\";\n\t\t\t\t\tcase \"bottom\": return \"translate(0,\" + (a.height() - n.depth) + \")\";\n\t\t\t\t\tdefault:\n\t\t\t\t}\n\t\t\t\treturn \"translate(0,0)\";\n\t\t\t});\n\t\t}\n\t\tthis.svg.style(\"visibility\", this.type() === \"none\" ? \"hidden\" : null).transition().call(doPosition), this._guideElement && this.svgGuides.transition().call(doPosition), this.svgAxis.call(this.d3Axis), this.adjustText(this.svgAxis, n.tickOverlapModulus);\n\t\tlet o = {\n\t\t\tx: this.pos().x,\n\t\t\twidth: this.width()\n\t\t}, s = this.svgAxis.selectAll(\".axisTitle\").data(this.title() ? [this.title()] : []), c = s.enter().append(\"text\").attr(\"class\", \"axisTitle\").merge(s).transition().attr(\"dx\", null).style(\"text-anchor\", \"end\");\n\t\tswitch (this.orientation()) {\n\t\t\tcase \"left\":\n\t\t\t\tc.attr(\"transform\", \"rotate(-90)\").attr(\"x\", -2).attr(\"y\", 2).attr(\"dy\", \".71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"right\":\n\t\t\t\tc.attr(\"transform\", \"rotate(-90)\").attr(\"x\", -2).attr(\"y\", 4).attr(\"dx\", null).attr(\"dy\", \"-.71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"top\":\n\t\t\t\tc.attr(\"transform\", \"rotate(0)\").attr(\"x\", o.width - 2).attr(\"y\", 2).attr(\"dx\", null).attr(\"dy\", \".71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tc.attr(\"transform\", \"rotate(0)\").attr(\"x\", o.width - 2).attr(\"y\", -2).attr(\"dy\", null);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tc.text(this.title_exists() ? this.title() : \"\"), s.exit().remove(), this.svgGuides.call(this.d3Guides).selectAll(\".tick\").classed(\"guide-0\", (e) => e === 0 && this.low() < 0);\n\t}\n\trerender() {\n\t\tthis.svgAxis.call(this.d3Axis), this.svgGuides.call(this.d3Guides);\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t), this._guideElement && this._guideElement.attr(\"transform\", this._element.attr(\"transform\"));\n\t}\n};\nAxis.prototype._class += \" chart_Axis\", Axis.prototype.publish(\"type\", \"linear\", \"set\", \"Type\", [\n\t\"none\",\n\t\"ordinal\",\n\t\"linear\",\n\t\"pow\",\n\t\"log\",\n\t\"time\"\n]), Axis.prototype.publish(\"timePattern\", \"%Y-%m-%d\", \"string\", \"Time Series Pattern\", null, { disable: (e) => e.type() !== \"time\" }), Axis.prototype.publish(\"reverse\", !1, \"boolean\", \"Reverse\"), Axis.prototype.publish(\"title\", null, \"string\", \"Title\"), Axis.prototype.publish(\"orientation\", \"bottom\", \"set\", \"Placement/orientation of the axis\", [\n\t\"left\",\n\t\"top\",\n\t\"right\",\n\t\"bottom\"\n]), Axis.prototype.publish(\"powExponent\", 2, \"number\", \"Power exponent (disabled when type is not 'pow')\", null, { disable: (e) => e.type() !== \"pow\" }), Axis.prototype.publish(\"logBase\", 10, \"number\", \"Logarithmic base (disabled when type is not 'log')\", null, { disable: (e) => e.type() !== \"log\" }), Axis.prototype.publish(\"ordinals\", [], \"array\", \"Array of ordinal values to display (disabled when type is not 'ordinal')\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"fontSize\", null, \"number\", \"Size of tick label font (pixels)\", null, { optional: !0 }), Axis.prototype.publish(\"fontFamily\", null, \"string\", \"Font family of tick labels\", null, { optional: !0 }), Axis.prototype.publish(\"tickCount\", null, \"number\", \"Number of ticks to display (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"tickFormat\", null, \"string\", \"Format rules for tick text (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"tickLength\", null, \"number\", \"Height (or width for left/right orientations) of the axis ticks (in pixels)\", null, { optional: !0 }), Axis.prototype.publish(\"ticks\", [], \"array\", \"Custom tick labels\", null, { optional: !0 }), Axis.prototype.publish(\"low\", null, \"any\", \"Minimum tick value (disabled when type is ordinal)\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"high\", null, \"any\", \"Maximum tick value (disabled when type is ordinal)\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"overlapMode\", \"none\", \"set\", \"Specifies the behavior when tick labels overlap\", [\n\t\"none\",\n\t\"stagger\",\n\t\"hide\",\n\t\"rotate\",\n\t\"linebreak\",\n\t\"wrap\"\n]), Axis.prototype.publish(\"labelRotation\", 33, \"number\", \"Angle of rotation for tick labels (disabled when overlapMode is not 'rotate')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.overlapMode() !== \"rotate\"\n}), Axis.prototype.publish(\"shrinkToFit\", \"both\", \"set\", \"shrinkToFit\", [\n\t\"none\",\n\t\"low\",\n\t\"high\",\n\t\"both\"\n]), Axis.prototype.publish(\"extend\", 5, \"number\", \"Extend the axis range by this % beyond what is needed to display the data (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"hidden\", !1, \"boolean\", \"Hides axis when 'true'\"), Axis.prototype.publish(\"ordinalPaddingInner\", .1, \"number\", \"Determines the ratio of the range that is reserved for blank space between band (0->1)\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"ordinalPaddingOuter\", .1, \"number\", \"Determines the ratio of the range that is reserved for blank space before the first band and after the last band (0->1)\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"ordinalMappings\", null, \"object\", \"Alternative label mappings (icons)\", null, { optional: !0 }), Axis.prototype.publish(\"padding\", 0, \"number\", \"Padding space at top of axis (pixels)\", null, { optional: !0 }), Axis.prototype._origType = Axis.prototype.type, Axis.prototype.type = function(e) {\n\tlet t = Axis.prototype._origType.apply(this, arguments);\n\treturn e !== void 0 && (this._type = e, this.updateScale()), t;\n}, Axis.prototype._origTimePattern = Axis.prototype.timePattern, Axis.prototype.timePattern = function(e) {\n\tlet t = Axis.prototype._origTimePattern.apply(this, arguments);\n\treturn e !== void 0 && (this._timePattern = e, this.updateScale()), t;\n};\n//#endregion\n//#region src/XYAxis.ts\nvar XYAxis = class extends l {\n\tdomainAxis;\n\tvalueAxis;\n\txAxis;\n\tyAxis;\n\txyBrush;\n\txBrush;\n\tyBrush;\n\tmargin;\n\tfocusChart;\n\tconstructor() {\n\t\tsuper(), d.SimpleSelectionMixin.call(this), this._drawStartPos = \"origin\", this.domainAxis = new Axis().classed({ domain: !0 }).orientation_default(\"bottom\").type(\"ordinal\").overlapMode_default(\"stagger\").shrinkToFit_default(\"high\").extend_default(0), this.valueAxis = new Axis().classed({ value: !0 }).orientation_default(\"left\").type(\"linear\").shrinkToFit_default(\"high\"), this.xyBrush = f().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2()), this.xBrush = m().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2()), this.yBrush = h().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2());\n\t}\n\t_prevBrush;\n\tresetSelection() {\n\t\treturn this._prevBrush = null, this;\n\t}\n\tparseData(e) {\n\t\treturn this.domainAxis.parse(e);\n\t}\n\tparseValue(e) {\n\t\treturn this.valueAxis.parse(e, !0);\n\t}\n\tformatData(e) {\n\t\treturn this.domainAxis.format(e);\n\t}\n\tformatValue(e) {\n\t\treturn this.valueAxis.format(e);\n\t}\n\tparsedData() {\n\t\treturn this.data().map(function(e) {\n\t\t\tlet t = 0;\n\t\t\treturn e.map(function(e, n) {\n\t\t\t\tif (n === 0) return this.parseData(e);\n\t\t\t\tif (n >= this.columns().length) return e;\n\t\t\t\tlet r = this.yAxisStacked() ? [t, t + this.parseValue(e)] : this.parseValue(e);\n\t\t\t\treturn t += this.parseValue(e), r;\n\t\t\t}, this);\n\t\t}, this);\n\t}\n\tbandwidth() {\n\t\treturn this.domainAxis.bandwidth();\n\t}\n\tsvg;\n\tsvgRegions;\n\tsvgDomainGuide;\n\tsvgValueGuide;\n\tsvgData;\n\tsvgDataClipRect;\n\tsvgFocus;\n\tsvgBrush;\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this.svg = t.append(\"g\"), this.svgRegions = t.append(\"g\"), this.svgDomainGuide = this.svg.append(\"g\"), this.svgValueGuide = this.svg.append(\"g\"), this.svgData = this.svg.append(\"g\"), this.svgDataClipRect = this.svg.append(\"clipPath\").attr(\"id\", this.id() + \"_clippath\").append(\"rect\").attr(\"x\", 0).attr(\"y\", 0), this.svgData = this.svg.append(\"g\").attr(\"clip-path\", \"url(#\" + this.id() + \"_clippath)\"), this._selection.widgetElement(this.svgData), this.svgFocus = t.append(\"g\"), this.domainAxis.target(this.svg.node()).guideTarget(this.svgDomainGuide.node()), this.valueAxis.target(this.svg.node()).guideTarget(this.svgValueGuide.node()), this.svgBrush = t.append(\"g\").attr(\"class\", \"brush\"), this.chartsEnter(this, this.svgData, 250);\n\t}\n\tresizeBrushHandle(e, t, n) {\n\t\tlet r, i, a;\n\t\treturn e.type === \"e\" || e.type === \"w\" ? (r = +(e.type === \"e\"), i = r ? 1 : -1, a = n / 3, \"M\" + .5 * i + \",\" + a + \"A6,6 0 0 \" + r + \" \" + 6.5 * i + \",\" + (a + 6) + \"V\" + (2 * a - 6) + \"A6,6 0 0 \" + r + \" \" + .5 * i + \",\" + 2 * a + \"ZM\" + 2.5 * i + \",\" + (a + 8) + \"V\" + (2 * a - 8) + \"M\" + 4.5 * i + \",\" + (a + 8) + \"V\" + (2 * a - 8)) : (r = +(e.type === \"s\"), a = r ? 1 : -1, i = t / 3, \"M\" + i + \", \" + .5 * a + \"A6,6 0 0 \" + (r + 1) % 2 + \" \" + (i + 6) + \",\" + 6.5 * a + \"H\" + (2 * i - 6) + \"A6,6 0 0 \" + (r + 1) % 2 + \" \" + 2 * i + \",\" + .5 * a + \"ZM\" + (i + 8) + \",\" + 2.5 * a + \"H\" + (2 * i - 8) + \"M\" + (i + 8) + \",\" + 4.5 * a + \"H\" + (2 * i - 8));\n\t}\n\t_skipSelection = !1;\n\tskipSelection(e) {\n\t\treturn arguments.length ? (this._skipSelection = e, this) : this._skipSelection;\n\t}\n\tbrushMoved() {\n\t\tif (this._skipSelection) return;\n\t\tlet e = [], t = this, n = p(this.svgBrush.node());\n\t\tn && (e = this.data().filter(function(e) {\n\t\t\tlet r = t.dataPos(e[0]);\n\t\t\tif (t.use2dSelection()) {\n\t\t\t\tlet i = t.valuePos(e[1]) + t.valueAxis.bandwidth() / 2;\n\t\t\t\treturn r >= n[0][0] && r <= n[1][0] && i >= n[0][1] && i <= n[1][1];\n\t\t\t} else return r >= n[0] && r <= n[1];\n\t\t})), this.selection(e);\n\t}\n\tbrushMoved2() {\n\t\tlet e = this.orientation() === \"horizontal\", t = this.use2dSelection() ? [] : e ? [{ type: \"w\" }, { type: \"e\" }] : [{ type: \"n\" }, { type: \"s\" }], n = this.svgBrush.selectAll(\".handle--custom\").data(t), r = g()?.selection;\n\t\tr == null ? n.attr(\"display\", \"none\") : e ? n.attr(\"display\", null).attr(\"transform\", (e, t) => \"translate(\" + r[t] + \",0)\") : n.attr(\"display\", null).attr(\"transform\", (e, t) => \"translate(0, \" + r[t] + \")\");\n\t}\n\tdataPos(e) {\n\t\treturn this.domainAxis.scalePos(e);\n\t}\n\tvaluePos(e) {\n\t\treturn this.valueAxis.scalePos(e);\n\t}\n\tgetAxisSize(e) {\n\t\treturn {\n\t\t\twidth: this.xAxis ? this.xAxis.width() : e.xAxis.width(),\n\t\t\theight: this.yAxis ? this.yAxis.height() : e.yAxis.width()\n\t\t};\n\t}\n\tcalcMargin(e, t, n) {\n\t\tlet r = {\n\t\t\ttop: !n && this.selectionMode() ? 10 : 2,\n\t\t\tright: n && (this.selectionMode() || this.xAxisFocus()) ? 10 : 2,\n\t\t\tbottom: (this.xAxisFocus() ? this.xAxisFocusHeight() : 0) + 2,\n\t\t\tleft: 2\n\t\t}, i = this.width() - r.left - r.right, a = this.height() - r.top - r.bottom, o = 0, s = 30, c = 0, l = 30;\n\t\tfor (let e = 0; e < 10; ++e) {\n\t\t\tthis.xAxis.width(i - l).height(0);\n\t\t\tlet e = this.xAxis.calcOverflow(t), n = e.depth;\n\t\t\tthis.yAxis.width(0).height(a - s);\n\t\t\tlet r = this.yAxis.calcOverflow(t), u = r.depth;\n\t\t\tif (o = e.right, c = r.top, n === s && u === l) break;\n\t\t\ts = n, l = u;\n\t\t}\n\t\treturn this.xAxis.x(i / 2 + l / 2 + r.left).y(a + r.top).width(i - l), this.yAxis.x(r.left).y(a / 2 - s / 2 + r.top).height(a - s), r.left += l, r.top += c, r.right += o, r.bottom += s, r;\n\t}\n\tupdateRegions(e, t, n) {\n\t\tlet r = this, i = this.svgRegions.selectAll(\".region\").data(this.regions());\n\t\ti.enter().append(\"rect\").attr(\"class\", \"region\"), n ? i.attr(\"x\", function(e) {\n\t\t\treturn r.dataPos(e.x0);\n\t\t}).attr(\"y\", 0).attr(\"width\", function(e) {\n\t\t\treturn r.dataPos(e.x1) - r.dataPos(e.x0);\n\t\t}).attr(\"height\", this.height()).style(\"stroke\", function(e) {\n\t\t\treturn r._palette(e.colorID);\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn T(r._palette(e.colorID)).brighter();\n\t\t}) : i.attr(\"x\", 0).attr(\"y\", function(e) {\n\t\t\treturn r.dataPos(e.x0);\n\t\t}).attr(\"width\", this.width()).attr(\"height\", function(e) {\n\t\t\treturn r.dataPos(e.x0) - r.dataPos(e.x1);\n\t\t}).style(\"stroke\", function(e) {\n\t\t\treturn r._palette(e.colorID);\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn T(r._palette(e.colorID)).brighter();\n\t\t}), i.exit().remove();\n\t}\n\t_prevXAxisType;\n\tupdate(e, t) {\n\t\tthis.selectionGlow(!this.tabNavigation()), super.update(e, t);\n\t\tlet n = this, r = this.orientation() === \"horizontal\";\n\t\tswitch (this.updateRegions(e, t, r), this.domainAxis.orientation(r ? \"bottom\" : \"left\").title(this.xAxisTitle_exists() ? this.xAxisTitle() : this.columns()[0]), this.valueAxis.orientation(r ? \"left\" : \"bottom\"), this.xAxis = r ? this.domainAxis : this.valueAxis, this.yAxis = r ? this.valueAxis : this.domainAxis, this.xAxisType()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\tlet e = this.columns().length, t = {};\n\t\t\t\tthis.domainAxis.ordinals(this.data().map(function(r) {\n\t\t\t\t\treturn t[r[0]] = n.xAxisOrdinalMapping(r, r[e]), r[0];\n\t\t\t\t})).ordinalMappings(t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tlet r = this.xAxisDomainLow() ? this.xAxisDomainLow() : this.domainAxis.parseInvert(A(this.parsedData(), function(e) {\n\t\t\t\t\treturn e[0];\n\t\t\t\t})), i = this.xAxisDomainHigh() ? this.xAxisDomainHigh() : this.domainAxis.parseInvert(k(this.parsedData(), function(e) {\n\t\t\t\t\treturn e[0];\n\t\t\t\t}));\n\t\t\t\tr !== void 0 && i !== void 0 && this.domainAxis.low(r).high(i);\n\t\t\t\tbreak;\n\t\t}\n\t\tlet i = this.yAxisDomainLow() ? this.yAxisDomainLow() : this.valueAxis.parseInvert(A(this.parsedData(), function(e) {\n\t\t\treturn A(e.filter(function(e, t) {\n\t\t\t\treturn t > 0 && n.columns()[t] && n.columns()[t].indexOf(\"__\") !== 0 && e !== null;\n\t\t\t}), function(e) {\n\t\t\t\treturn e instanceof Array ? e[0] : e;\n\t\t\t});\n\t\t})), a = this.yAxisDomainHigh() ? this.yAxisDomainHigh() : this.valueAxis.parseInvert(k(this.parsedData(), function(e) {\n\t\t\treturn k(e.filter(function(e, t) {\n\t\t\t\treturn t > 0 && n.columns()[t] && n.columns()[t].indexOf(\"__\") !== 0 && e !== null;\n\t\t\t}), function(e) {\n\t\t\t\treturn e instanceof Array ? e[1] : e;\n\t\t\t});\n\t\t}));\n\t\tthis.valueAxis.low(i).high(a), this.margin = this.calcMargin(e, t, r);\n\t\tlet o = this.width() - this.margin.left - this.margin.right;\n\t\to < 0 && (o = 0);\n\t\tlet s = this.height() - this.margin.top - this.margin.bottom;\n\t\ts < 0 && (s = 0);\n\t\tlet c = r ? o : s, l = r ? s : o;\n\t\tif (this.domainAxis.tickLength(this.xAxisGuideLines() ? l : 0).render(), this.valueAxis.tickLength(this.yAxisGuideLines() ? c : 0).render(), this.svgDataClipRect.attr(\"width\", o).attr(\"height\", s), this.svgData.transition().attr(\"transform\", \"translate(\" + this.margin.left + \",\" + this.margin.top + \")\"), this.updateBrush(o, s, c, r), this.updateFocusChart(e, t, this.margin, o, s, r), this.chartsUpdate(o, s, 250), this.selectionMode()) return this.brushMoved();\n\t}\n\tupdateBrush(e, t, n, r) {\n\t\tlet i = this.use2dSelection() ? this.xyBrush : r ? this.xBrush : this.yBrush, a = p(this.svgBrush.node());\n\t\ti.extent([[0, 0], [e, t]]), this.svgBrush.attr(\"transform\", \"translate(\" + this.margin.left + \", \" + this.margin.top + \")\").style(\"display\", this.selectionMode() ? null : \"none\").call(i);\n\t\tlet o = this.use2dSelection() ? [] : r ? [{ type: \"w\" }, { type: \"e\" }] : [{ type: \"n\" }, { type: \"s\" }], s = this.svgBrush.selectAll(\".handle--custom\").data(o);\n\t\tif (s.enter().append(\"path\").attr(\"class\", \"handle--custom\").merge(s).attr(\"cursor\", r ? \"ew-resize\" : \"ns-resize\").attr(\"d\", (n) => this.resizeBrushHandle(n, e, t)), this.selectionMode()) {\n\t\t\tif (this._prevXAxisType !== this.xAxisType() && (this._prevXAxisType = this.xAxisType(), this._prevBrush = null), this._prevBrush) {\n\t\t\t\tif (a) {\n\t\t\t\t\tif (this._prevBrush.orientation !== this.orientation()) {\n\t\t\t\t\t\tlet e = a[0];\n\t\t\t\t\t\ta[0] = this._prevBrush.maxCurrExtent - a[1], a[1] = this._prevBrush.maxCurrExtent - e;\n\t\t\t\t\t}\n\t\t\t\t\tlet e = n / this._prevBrush.maxCurrExtent;\n\t\t\t\t\te !== 1 && this.svgBrush.transition().on(\"start\", function() {\n\t\t\t\t\t\ti.on(\"end\", null);\n\t\t\t\t\t}).call(i.move, [a[0] * e, a[1] * e]).on(\"end\", () => {\n\t\t\t\t\t\ti.on(\"end\", () => this.brushMoved());\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else this.svgBrush.call(i.move, [0, n]);\n\t\t\tthis._prevBrush = {\n\t\t\t\torientation: this.orientation(),\n\t\t\t\tmaxCurrExtent: n\n\t\t\t};\n\t\t}\n\t}\n\tupdateFocusChart(e, t, n, r, i, a) {\n\t\tlet o = this, s = this.svgFocus.selectAll(\"#\" + this.id() + \"_focusChart\").data(this.xAxisFocus() ? [!0] : []);\n\t\ts.enter().append(\"g\").attr(\"id\", this.id() + \"_focusChart\").attr(\"class\", \"focus\").each(function() {\n\t\t\to.focusChart = new o.constructor().target(this), o.focusChart.xBrush.on(\"brush.focus\", function() {\n\t\t\t\to.syncAxis(r), o.chartsUpdate(r, i, 0);\n\t\t\t}), o.focusChart.layers(o.layers().map((e) => new e.constructor()));\n\t\t}).merge(s).each(function() {\n\t\t\to.copyPropsTo(o.focusChart, [\"layers\"]);\n\t\t\tlet e = 0;\n\t\t\tfor (let t of o.layers()) t.copyPropsTo(o.focusChart.layers()[e]), e++;\n\t\t\to.focusChart.xAxisFocus(!1).selectionMode(!0).skipSelection(!0).orientation(\"horizontal\").xAxisGuideLines(!1).xAxisDomainLow(null).xAxisDomainHigh(null).yAxisGuideLines(!1).x(o.width() / 2).y(o.height() - o.xAxisFocusHeight() / 2).width(o.width()).height(o.xAxisFocusHeight()).columns(o.columns()).data(o.data()).render(), o.syncAxis(r);\n\t\t}), s.exit().each(function() {\n\t\t\to.focusChart && (o.focusChart.target(null), delete o.focusChart);\n\t\t}).remove();\n\t}\n\tsyncAxis(e) {\n\t\tlet t = p(this.focusChart.svgBrush.node());\n\t\tif (t) {\n\t\t\tif (this.focusChart.xAxisType() !== \"ordinal\") this.xAxis.domain([this.focusChart.xAxis.invert(t[0]), this.focusChart.xAxis.invert(t[1])]);\n\t\t\telse {\n\t\t\t\tlet n = (t[1] - t[0]) / e;\n\t\t\t\tthis.xAxis.range([-t[0] / n, (e - t[0]) / n]);\n\t\t\t}\n\t\t\tthis.xAxis.rerender();\n\t\t}\n\t}\n\tlayerColumns(e) {\n\t\tlet t = e.columns(), n = super.columns().filter((e) => e !== t[0]);\n\t\treturn n.length ? [t[0], ...n] : t;\n\t}\n\tlayerColumnIndices(e) {\n\t\tlet t = e.columns();\n\t\treturn this.layerColumns(e).map((e) => t.indexOf(e));\n\t}\n\tlayerColumnIndex(e, t) {\n\t\treturn e.columns().indexOf(t);\n\t}\n\tlayerData(e) {\n\t\tif (arguments.length === 1) {\n\t\t\tlet t = this.layerColumnIndices(e);\n\t\t\treturn e.data().map((e) => {\n\t\t\t\tlet n = t.map((t) => e[t]);\n\t\t\t\treturn n.__hpcc_origRow = e, n;\n\t\t\t});\n\t\t}\n\t\tthrow Error(\"Setting data on XYAxisLayer is not supported.\");\n\t}\n\tlayerEnter(e, t, n = 250) {}\n\tlayerUpdate(e, t, n = 250) {}\n\tlayerExit(e, t, n = 250) {}\n\tchartsEnter(e, t, n = 250) {\n\t\tthis.layerEnter(this, t, n);\n\t\tfor (let e of this.layers()) e.__xyAxisElement = t.append(\"g\").attr(\"class\", e.class()), e.target(e.__xyAxisElement.node()).layerEnter(this, t, n);\n\t}\n\tchartsUpdate(e, t, n) {\n\t\tthis.layerUpdate(this, this.svgData, n);\n\t\tfor (let r of this.layers()) r.resize({\n\t\t\twidth: e,\n\t\t\theight: t\n\t\t}).layerUpdate(this, r.__xyAxisElement, n);\n\t}\n\texit(e, t) {\n\t\tthis.valueAxis.target(null), this.domainAxis.target(null), super.exit(e, t);\n\t}\n\tselection(e) {\n\t\tlet t = this;\n\t\tthis._selection.widgetElement().selectAll(\".selected,.deselected\").each(function(n) {\n\t\t\tlet r = e.indexOf(n.origRow) >= 0;\n\t\t\tz(this).classed(\"selected\", r).classed(\"deselected\", !r).attr(\"filter\", t._selection.svgGlowID() && r ? `url(#${t._selection.svgGlowID()})` : null);\n\t\t});\n\t\tlet n = e.map((e) => this.rowToObj(e));\n\t\tsetTimeout(() => {\n\t\t\tthis.click(n, \"\", !0);\n\t\t}, 0);\n\t}\n\txAxisOrdinalMapping(e, t) {\n\t\treturn e[0];\n\t}\n\tclick(e, t, n) {}\n\t_selection;\n};\nXYAxis.prototype._class += \" chart_XYAxis\", XYAxis.prototype.mixin(d.SimpleSelectionMixin), XYAxis.prototype.publish(\"orientation\", \"horizontal\", \"set\", \"Selects orientation for the axis\", [\"horizontal\", \"vertical\"]), XYAxis.prototype.publish(\"pointSizeColumn\", null, \"string\", \"pointSizeColumn\", null, { optional: !0 }), XYAxis.prototype.publish(\"minPointSize\", 6, \"number\", \"minPointSize\"), XYAxis.prototype.publish(\"maxPointSize\", 26, \"number\", \"maxPointSize\"), XYAxis.prototype.publish(\"use2dSelection\", !1, \"boolean\", \"2D Range Selector\"), XYAxis.prototype.publish(\"selectionMode\", !1, \"boolean\", \"Range Selector\"), XYAxis.prototype.publishProxy(\"xAxisTitle\", \"domainAxis\", \"title\"), XYAxis.prototype.publishProxy(\"xAxisTickCount\", \"domainAxis\", \"tickCount\"), XYAxis.prototype.publishProxy(\"xAxisTickFormat\", \"domainAxis\", \"tickFormat\"), XYAxis.prototype.publishProxy(\"xAxisTicks\", \"domainAxis\", \"ticks\"), XYAxis.prototype.publishProxy(\"xAxisType\", \"domainAxis\", \"type\"), XYAxis.prototype.publishProxy(\"xAxisTypeTimePattern\", \"domainAxis\", \"timePattern\"), XYAxis.prototype.publish(\"xAxisDomainLow\", null, \"string\", \"X-Axis Low\", null, {\n\toptional: !0,\n\tdisable: (e) => e.xAxisType() === \"ordinal\"\n}), XYAxis.prototype.publish(\"xAxisDomainHigh\", null, \"string\", \"X-Axis High\", null, {\n\toptional: !0,\n\tdisable: (e) => e.xAxisType() === \"ordinal\"\n}), XYAxis.prototype.publishProxy(\"xAxisFontSize\", \"domainAxis\", \"fontSize\"), XYAxis.prototype.publishProxy(\"xAxisFontFamily\", \"domainAxis\", \"fontFamily\"), XYAxis.prototype.publishProxy(\"xAxisOrdinalPaddingInner\", \"domainAxis\", \"ordinalPaddingInner\"), XYAxis.prototype.publishProxy(\"xAxisOrdinalPaddingOuter\", \"domainAxis\", \"ordinalPaddingOuter\"), XYAxis.prototype.publishProxy(\"xAxisOverlapMode\", \"domainAxis\", \"overlapMode\"), XYAxis.prototype.publishProxy(\"xAxisLabelRotation\", \"domainAxis\", \"labelRotation\"), XYAxis.prototype.publishProxy(\"xAxisDomainPadding\", \"domainAxis\", \"extend\"), XYAxis.prototype.publish(\"xAxisGuideLines\", !1, \"boolean\", \"Y-Axis Guide Lines\"), XYAxis.prototype.publish(\"xAxisFocus\", !1, \"boolean\", \"X-Axis Focus\", null, { disable: (e) => e.orientation() !== \"horizontal\" }), XYAxis.prototype.publish(\"xAxisFocusHeight\", 80, \"number\", \"X-Axis Focus Height\", null, { disable: (e) => !e.xAxisFocus() }), XYAxis.prototype.publishProxy(\"xAxisHidden\", \"domainAxis\", \"hidden\"), XYAxis.prototype.publishProxy(\"yAxisFontSize\", \"valueAxis\", \"fontSize\"), XYAxis.prototype.publishProxy(\"yAxisFontFamily\", \"valueAxis\", \"fontFamily\"), XYAxis.prototype.publishProxy(\"yAxisTitle\", \"valueAxis\", \"title\"), XYAxis.prototype.publishProxy(\"yAxisTickCount\", \"valueAxis\", \"tickCount\"), XYAxis.prototype.publishProxy(\"yAxisTickFormat\", \"valueAxis\", \"tickFormat\"), XYAxis.prototype.publishProxy(\"yAxisTicks\", \"valueAxis\", \"ticks\"), XYAxis.prototype.publishProxy(\"yAxisType\", \"valueAxis\", \"type\"), XYAxis.prototype.publishProxy(\"yAxisTypeTimePattern\", \"valueAxis\", \"timePattern\"), XYAxis.prototype.publishProxy(\"yAxisTypePowExponent\", \"valueAxis\", \"powExponent\"), XYAxis.prototype.publishProxy(\"yAxisTypeLogBase\", \"valueAxis\", \"logBase\"), XYAxis.prototype.publish(\"yAxisStacked\", !1, \"boolean\", \"Stacked Chart\", null, {\n\ttags: [\"Basic\"],\n\tdisable: (e) => e.xAxisType() !== \"ordinal\" || e._class.indexOf(\"chart_Column\") < 0\n}), XYAxis.prototype.publish(\"yAxisDomainLow\", null, \"string\", \"Y-Axis Low\", null, {\n\toptional: !0,\n\tdisable: (e) => e.yAxisType() === \"ordinal\"\n}), XYAxis.prototype.publish(\"yAxisDomainHigh\", null, \"string\", \"Y-Axis High\", null, {\n\toptional: !0,\n\tdisable: (e) => e.yAxisType() === \"ordinal\"\n}), XYAxis.prototype.publishProxy(\"yAxisDomainPadding\", \"valueAxis\", \"extend\"), XYAxis.prototype.publish(\"yAxisGuideLines\", !0, \"boolean\", \"Y-Axis Guide Lines\"), XYAxis.prototype.publishProxy(\"yAxisHidden\", \"valueAxis\", \"hidden\"), XYAxis.prototype.publish(\"regions\", [], \"array\", \"Regions\"), XYAxis.prototype.publish(\"layers\", [], \"widgetArray\", \"Layers\", null, { render: !1 }), XYAxis.prototype.publishProxy(\"xAxisPadding\", \"domainAxis\", \"padding\"), XYAxis.prototype.publishProxy(\"yAxisPadding\", \"valueAxis\", \"padding\"), XYAxis.prototype.publish(\"tabNavigation\", !1, \"boolean\", \"Enable or disable tab navigation\");\n//#endregion\n//#region src/Scatter.ts\nvar Scatter = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\",\n\t\tmulti: !0\n\t}];\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), this.xAxisGuideLines_default(!0).yAxisGuideLines_default(!0);\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tcurve() {\n\t\tswitch (this.interpolate()) {\n\t\t\tcase \"linear\": return linear_default$1;\n\t\t\tcase \"step\": return step_default;\n\t\t\tcase \"step-before\": return stepBefore;\n\t\t\tcase \"step-after\": return stepAfter;\n\t\t\tcase \"basis\": return basis_default;\n\t\t\tcase \"bundle\": return xe;\n\t\t\tcase \"cardinal\": return Se;\n\t\t\tcase \"catmullRom\": return Ce;\n\t\t\tcase \"natural\": return natural_default;\n\t\t\tdefault: return monotoneX;\n\t\t}\n\t}\n\tgetScale() {\n\t\tswitch (this.pointSizeScale()) {\n\t\t\tcase \"linear\": return P();\n\t\t\tcase \"pow\": return I().exponent(2);\n\t\t\tcase \"log\": return F();\n\t\t\tcase \"sqrt\": return L();\n\t\t}\n\t}\n\tpointColor(e, t, n, r) {\n\t\treturn this.interpolate() && this.pointDarken() ? this.strokeColor(e, t, n, r) : this.fillColor(e, t, n, r);\n\t}\n\tlineColor(e, t, n, r) {\n\t\treturn this.interpolateFill() && this.interpolateDarken() ? this.strokeColor(e, t, n, r) : this.fillColor(e, t, n, r);\n\t}\n\tareaColor(e, t, n, r) {\n\t\treturn this.fillColor(e, t, n, r);\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t\tlet r = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (r.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return r.tooltipFormat({\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tarr: r.columns().slice(1).map(function(t, n) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: r._palette(t),\n\t\t\t\t\t\t\tvalue: r.data()[e.rowIdx][n + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return r.tooltipFormat({\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tseries: e.column,\n\t\t\t\t\tvalue: e.value\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\t_prevPointShape;\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t);\n\t\tlet r = e.orientation() === \"horizontal\", i = r ? this.height() : this.width(), a = this;\n\t\tthis.tabNavigation() && e.parentRelativeDiv ? e.parentRelativeDiv.attr(\"tabindex\", \"0\").attr(\"role\", \"group\").attr(\"aria-label\", `${this.columns()[0] || \"Chart\"} data`) : e.parentRelativeDiv && e.parentRelativeDiv.attr(\"tabindex\", null).attr(\"role\", null).attr(\"aria-label\", null), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._prevPointShape !== this.pointShape() && (t.selectAll(\".data\").remove(), this._prevPointShape = this.pointShape());\n\t\tfunction mapShape(e) {\n\t\t\tswitch (e) {\n\t\t\t\tcase \"rectangle\": return \"rect\";\n\t\t\t\tcase \"circle\": return \"circle\";\n\t\t\t\tcase \"cross\": return \"path\";\n\t\t\t\tdefault:\n\t\t\t}\n\t\t}\n\t\tlet o = this.pointSizeColumn_exists(), s, c, l;\n\t\to && (s = this.columns().indexOf(this.pointSizeColumn()), c = C(this.data(), (e) => e[s]), l = this.getScale().domain(c));\n\t\tlet u = this.layerColumns(e), d = this.layerData(e), f = this.flattenData(u, d).map(function(e) {\n\t\t\treturn e.shape = mapShape(a.pointShape()), e.column = u[e.colIdx], e.row = d[e.rowIdx], e.origRow = d[e.rowIdx].__hpcc_origRow, c ? (e.size = l(e.row[s]) * (a.maxPointSize() - a.minPointSize()) + a.minPointSize(), e.column === a.pointSizeColumn() ? !1 : e) : (e.size = a.pointSize(), e);\n\t\t}).filter((e) => e), p = t.selectAll(\".area\").data(u.filter(function(e, t) {\n\t\t\treturn a.interpolate() && a.interpolateFill() && t > 0;\n\t\t})), m = p.enter().append(\"path\"), h = area_default$1().curve(this.curve());\n\t\tr ? h.x(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}).y0(Math.min(i, this.yPos(e, { value: 0 }))).y1(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}) : h.y(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}).x0(Math.max(0, this.xPos(e, { value: 0 }))).x1(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}), m.merge(p).attr(\"class\", (e) => \"area series series-\" + this.cssTag(e)).each(function(e, t) {\n\t\t\tz(this).attr(\"d\", h(f.filter(function(e) {\n\t\t\t\treturn e.colIdx === t + 1;\n\t\t\t}))).style(\"opacity\", a.interpolateFillOpacity()).style(\"stroke\", \"none\").style(\"fill\", a.areaColor([], e, void 0, []));\n\t\t}), p.exit().remove();\n\t\tlet _ = t.selectAll(\".line\").data(u.filter(function(e, t) {\n\t\t\treturn a.interpolate() && t > 0;\n\t\t})), v = _.enter().append(\"path\"), b = line_default$1().x(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}).y(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}).curve(this.curve());\n\t\tv.merge(_).attr(\"class\", (e) => \"line series series-\" + this.cssTag(e)).each(function(e, t) {\n\t\t\tlet n = z(this), r = f.filter(function(e) {\n\t\t\t\treturn e.colIdx === t + 1;\n\t\t\t});\n\t\t\tn.attr(\"d\", b(r)).style(\"stroke\", a.lineColor([], e, void 0, [])).style(\"fill\", \"none\");\n\t\t}), _.exit().remove();\n\t\tlet S = t.selectAll(\".point\").data(f, function(e, t) {\n\t\t\treturn e.shape + \"_\" + t;\n\t\t});\n\t\tS.enter().append(\"g\").each(function(t) {\n\t\t\tlet n = z(this);\n\t\t\tn.append(t.shape).attr(\"class\", \"pointShape\"), n.append(\"text\").attr(\"class\", \"pointValue\").style(\"display\", \"none\").attr(\"text-anchor\", a.valueAnchor()).attr(\"alignment-baseline\", a.valueBaseline()).attr(\"fill\", function(e, t) {\n\t\t\t\treturn a.valueBaseline() === \"middle\" || a.valueBaseline() === \"central\" ? a.textColor(e.row, e.column, e.value, e.origRow) : null;\n\t\t\t}), n.append(\"circle\").attr(\"class\", \"pointSelection\").on(\"mouseout.tooltip\", a.tooltip.hide).on(\"mousemove.tooltip\", a.tooltip.show).call(e._selection.enter.bind(e._selection)).on(\"click\", function(t, n) {\n\t\t\t\ta.click(e.rowToObj(e.data()[t.rowIdx]), t.column, e._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(t, n) {\n\t\t\t\ta.dblclick(e.rowToObj(e.data()[t.rowIdx]), t.column, e._selection.selected(this));\n\t\t\t}).on(\"keydown\", function(t, n) {\n\t\t\t\tif (a.tabNavigation()) {\n\t\t\t\t\tlet t = g();\n\t\t\t\t\t(t.code === \"Space\" || t.key === \"Enter\") && (t.preventDefault(), e._selection.click(this));\n\t\t\t\t}\n\t\t\t});\n\t\t}).merge(S).attr(\"class\", (e) => \"point series series-\" + this.cssTag(e.column)).each(function(t) {\n\t\t\tz(this).select(\".pointValue\").attr(\"x\", function(t) {\n\t\t\t\treturn a.xPos(e, t);\n\t\t\t}).attr(\"y\", function(t) {\n\t\t\t\treturn a.yPos(e, t);\n\t\t\t}).style(\"display\", a.showValue() ? \"block\" : \"none\").attr(\"text-anchor\", a.valueAnchor()).attr(\"alignment-baseline\", a.valueBaseline()).text(function(e) {\n\t\t\t\treturn e.value;\n\t\t\t}), z(this).select(\".pointSelection\").attr(\"cx\", function(t) {\n\t\t\t\treturn a.xPos(e, t);\n\t\t\t}).attr(\"cy\", function(t) {\n\t\t\t\treturn a.yPos(e, t);\n\t\t\t}).attr(\"r\", t.size).attr(\"tabindex\", a.tabNavigation() ? 0 : null).attr(\"role\", a.tabNavigation() ? \"button\" : null).attr(\"aria-label\", a.tabNavigation() ? (e) => `${e.column || \"Value\"}: ${e.value} @ ${e.label}` : null);\n\t\t\tlet n = z(this).select(\".pointShape\");\n\t\t\tswitch (t.shape) {\n\t\t\t\tcase \"rect\":\n\t\t\t\t\tn.attr(\"x\", function(n) {\n\t\t\t\t\t\treturn a.xPos(e, n) - t.size / 2;\n\t\t\t\t\t}).attr(\"y\", function(n) {\n\t\t\t\t\t\treturn a.yPos(e, n) - t.size / 2;\n\t\t\t\t\t}).attr(\"width\", t.size).attr(\"height\", t.size).style(\"fill\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"circle\":\n\t\t\t\t\tn.attr(\"cx\", function(t) {\n\t\t\t\t\t\treturn a.xPos(e, t);\n\t\t\t\t\t}).attr(\"cy\", function(t) {\n\t\t\t\t\t\treturn a.yPos(e, t);\n\t\t\t\t\t}).attr(\"r\", t.size * .9).style(\"fill\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"path\":\n\t\t\t\t\tn.attr(\"d\", function(n) {\n\t\t\t\t\t\treturn \"M\" + (a.xPos(e, n) - t.size / 2) + \" \" + (a.yPos(e, n) - t.size / 2) + \" L\" + (a.xPos(e, n) + t.size / 2) + \" \" + (a.yPos(e, n) + t.size / 2) + \" M\" + (a.xPos(e, n) - t.size / 2) + \" \" + (a.yPos(e, n) + t.size / 2) + \" L\" + (a.xPos(e, n) + t.size / 2) + \" \" + (a.yPos(e, n) - t.size / 2);\n\t\t\t\t\t}).style(\"stroke\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t}\n\t\t}), S.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nScatter.prototype._class += \" chart_Scatter\", Scatter.prototype.implements(r.prototype), Scatter.prototype.implements(i.prototype), Scatter.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Scatter.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Scatter.prototype.publish(\"pointSizeScale\", \"linear\", \"set\", \"pointSizeScale\", [\n\t\"linear\",\n\t\"pow\",\n\t\"log\",\n\t\"sqrt\"\n]), Scatter.prototype.publish(\"pointShape\", \"cross\", \"set\", \"Shape of the data points\", [\n\t\"circle\",\n\t\"rectangle\",\n\t\"cross\"\n]), Scatter.prototype.publish(\"pointSize\", 6, \"number\", \"Point Size\", null, { range: {\n\tmin: 1,\n\tstep: 1,\n\tmax: 200\n} }), Scatter.prototype.publish(\"interpolate\", \"\", \"set\", \"Interpolate Data\", [\n\t\"\",\n\t\"linear\",\n\t\"step\",\n\t\"step-before\",\n\t\"step-after\",\n\t\"basis\",\n\t\"bundle\",\n\t\"cardinal\",\n\t\"catmullRom\",\n\t\"natural\",\n\t\"monotone\"\n]), Scatter.prototype.publish(\"pointDarken\", !0, \"boolean\", \"If true, and interpolate is set, then points will have a slightly darker color than their assigned palette color\", null, { disable: (e) => !e.interpolate() }), Scatter.prototype.publish(\"interpolateDarken\", !0, \"boolean\", \"If true, and interpolateFill is true, then lines will have a slightly darker color than their assigned palette color\", null, { disable: (e) => !e.interpolateFill() }), Scatter.prototype.publish(\"interpolateFill\", !1, \"boolean\", \"If true, the area between the line and zero will be filled\"), Scatter.prototype.publish(\"interpolateFillOpacity\", .66, \"number\", \"Fill interpolation Opacity\", null, { range: {\n\tmin: 0,\n\tstep: .01,\n\tmax: 1\n} }), Scatter.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Scatter.prototype.publish(\"showValue\", !1, \"boolean\"), Scatter.prototype.publish(\"valueAnchor\", \"middle\", \"set\", \"text-anchor for shown value text\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), Scatter.prototype.publish(\"valueBaseline\", \"ideographic\", \"set\", \"alignment-baseline for shown value text\", [\n\t\"auto\",\n\t\"baseline\",\n\t\"before-edge\",\n\t\"text-before-edge\",\n\t\"middle\",\n\t\"central\",\n\t\"after-edge\",\n\t\"text-after-edge\",\n\t\"ideographic\",\n\t\"alphabetic\",\n\t\"hanging\",\n\t\"mathematical\",\n\t\"inherit\"\n]);\n//#endregion\n//#region src/Area.ts\nvar Area = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"linear\").interpolateFill_default(!0);\n\t}\n};\nArea.prototype._class += \" chart_Area\";\n//#endregion\n//#region src/Column.ts\nvar Column = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\",\n\t\tmulti: !0\n\t}];\n\t_linearGap;\n\ttextLocal = O();\n\tstackedTextLocal = O();\n\tisHorizontal;\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), this._selection.skipBringToTop(!0), this._linearGap = 25;\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t\tlet r = this;\n\t\tthis.tooltipHTML(function(t) {\n\t\t\tswitch (r.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return r.tooltipFormat({\n\t\t\t\t\tlabel: t.row[0],\n\t\t\t\t\tarr: r.columns().slice(1).map(function(e, n) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: e,\n\t\t\t\t\t\t\tcolor: r._palette(e),\n\t\t\t\t\t\t\tvalue: t.row[n + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault:\n\t\t\t\t\tlet n = t.row[t.idx];\n\t\t\t\t\treturn n instanceof Array && (n = n[1] - n[0]), r.tooltipFormat({\n\t\t\t\t\t\tlabel: t.row[0],\n\t\t\t\t\t\tseries: r.layerColumns(e)[t.idx],\n\t\t\t\t\t\tvalue: n\n\t\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tadjustedData(e) {\n\t\treturn this.layerData(e).map((t) => {\n\t\t\tlet n = 0;\n\t\t\treturn t.map((t, r) => {\n\t\t\t\tif (r === 0 || r >= this.layerColumns(e).length) return t;\n\t\t\t\tlet i = e.yAxisStacked() ? [n, n + t] : t;\n\t\t\t\treturn n += t, i;\n\t\t\t}, this);\n\t\t}, this);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n);\n\t\tlet r = e.orientation() === \"horizontal\";\n\t\tthis.isHorizontal = r;\n\t\tlet i = this;\n\t\tthis.tabNavigation() && e.parentRelativeDiv ? e.parentRelativeDiv.attr(\"tabindex\", \"0\").attr(\"role\", \"group\").attr(\"aria-label\", `${this.columns()[0] || \"Chart\"} data`) : e.parentRelativeDiv && e.parentRelativeDiv.attr(\"tabindex\", null).attr(\"role\", null).attr(\"aria-label\", null), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id()));\n\t\tlet a = w(i.showValueAsPercentFormat()), o = 10, s = 0;\n\t\tswitch (e.xAxisType()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\to = e.bandwidth(), s = -o / 2;\n\t\t\t\tbreak;\n\t\t\tcase \"linear\":\n\t\t\tcase \"time\":\n\t\t\t\to = Math.max(Math.abs(e.dataPos(2) - e.dataPos(1)) * (100 - this._linearGap) / 100, o), s = -o / 2;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tthis.tooltip.direction(r ? \"n\" : \"e\");\n\t\tlet c = N().domain(i.layerColumns(e).filter(function(e, t) {\n\t\t\treturn t > 0;\n\t\t})).rangeRound(r ? [0, o] : [o, 0]).paddingInner(Math.max(this.xAxisSeriesPaddingInner(), .05)).paddingOuter(0), l = [], d = [], f = this.columns().length, p = this.data();\n\t\tthis.showValue() && this.showValueAsPercent() === \"series\" && p.forEach((e) => {\n\t\t\te.filter((e, t) => t > 0 && t < f).forEach((e, t) => {\n\t\t\t\td[t + 1] === void 0 && (d[t + 1] = 0), d[t + 1] += e;\n\t\t\t});\n\t\t}), (this.showDomainTotal() || this.showValue() && this.showValueAsPercent() === \"domain\") && (l = p.map((e) => e.filter((e, t) => t > 0 && t < f).reduce((e, t) => e + t, 0)));\n\t\tlet m = t.selectAll(\".dataRow\").data(this.adjustedData(e)), h = e.data(), _ = this.getAxisSize(e);\n\t\tm.enter().append(\"g\").attr(\"class\", \"dataRow\").merge(m).each(function(t, p) {\n\t\t\tlet m = z(this), v = m.selectAll(\".dataCell\").data(t.filter(function(t, n) {\n\t\t\t\treturn n < i.layerColumns(e).length;\n\t\t\t}).map(function(n, r) {\n\t\t\t\treturn {\n\t\t\t\t\tcolumn: i.layerColumns(e)[r],\n\t\t\t\t\trow: t,\n\t\t\t\t\torigRow: h[p],\n\t\t\t\t\tvalue: n,\n\t\t\t\t\tidx: r\n\t\t\t\t};\n\t\t\t}).filter(function(e) {\n\t\t\t\treturn e.value !== null && e.idx > 0;\n\t\t\t}), (e) => e.column), b = v.enter().append(\"g\").attr(\"class\", \"dataCell\").on(\"mouseout.tooltip\", function(e) {\n\t\t\t\t(!i.tooltipInnerTextEllipsedOnly() || e.innerTextObj && e.innerTextObj.isTruncated) && i.tooltip.hide.apply(i, arguments);\n\t\t\t}).on(\"mousemove.tooltip\", function(e) {\n\t\t\t\t(!i.tooltipInnerTextEllipsedOnly() || e.innerTextObj && e.innerTextObj.isTruncated) && i.tooltip.show.apply(i, arguments);\n\t\t\t}).call(e._selection.enter.bind(e._selection)).on(\"click\", function(t) {\n\t\t\t\ti.click(e.rowToObj(t.origRow), t.column, e._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(t) {\n\t\t\t\ti.dblclick(e.rowToObj(t.origRow), t.column, e._selection.selected(this));\n\t\t\t}).on(\"keydown\", function(t, n) {\n\t\t\t\tif (i.tabNavigation()) {\n\t\t\t\t\tlet t = g();\n\t\t\t\t\t(t.code === \"Space\" || t.key === \"Enter\") && (t.preventDefault(), e._selection.click(this));\n\t\t\t\t}\n\t\t\t}).style(\"opacity\", 0).each(function(e) {\n\t\t\t\tlet t = z(this);\n\t\t\t\tt.append(\"rect\").attr(\"class\", \"columnRect series series-\" + i.cssTag(e.column)), t.append(\"text\").attr(\"class\", \"columnRectText\").style(\"stroke\", \"transparent\");\n\t\t\t});\n\t\t\tb.transition().duration(n).style(\"opacity\", 1);\n\t\t\tlet S = e.yAxisStacked() ? o : c.bandwidth();\n\t\t\tb.merge(v).attr(\"tabindex\", i.tabNavigation() ? 0 : null).attr(\"role\", i.tabNavigation() ? \"button\" : null).attr(\"aria-label\", i.tabNavigation() ? (e) => `${e.origRow[0]} - ${e.column}: ${e.value instanceof Array ? e.value[1] - e.value[0] : e.value}` : null).each(function(o) {\n\t\t\t\tlet m = z(this), h = e.dataPos(t[0]) + (e.yAxisStacked() ? 0 : c(o.column)) + s, g = o.value instanceof Array ? o.value[1] : o.value, v = o.origRow[o.idx];\n\t\t\t\tif (i.showValue()) {\n\t\t\t\t\tlet e = i.dataMeta();\n\t\t\t\t\tswitch (i.showValueAsPercent()) {\n\t\t\t\t\t\tcase \"series\":\n\t\t\t\t\t\t\tlet t = e.sum === void 0 ? d[o.idx] : e.sum;\n\t\t\t\t\t\t\tv = a(v / t);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"domain\":\n\t\t\t\t\t\t\tlet n = e.sum === void 0 ? l[p] : e.sum;\n\t\t\t\t\t\t\tv = a(v / n);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tv = w(i.showValueFormat())(v);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tlet b = e.valuePos(g), C = e.valuePos(o.value instanceof Array ? o.value[0] : 0), T = Math.min(C, b), E = Math.abs(b - C), D = i.innerTextFontSize(), O = i.innerTextPadding_exists() ? i.innerTextPadding() : D / 2.5, k = i.intersectRectRect({\n\t\t\t\t\tx: r ? h : T,\n\t\t\t\t\ty: r ? T : h,\n\t\t\t\t\twidth: r ? S : E,\n\t\t\t\t\theight: r ? E : S\n\t\t\t\t}, {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0,\n\t\t\t\t\twidth: _.width,\n\t\t\t\t\theight: _.height\n\t\t\t\t}), A = m.select(\"rect\").transition().duration(n).style(\"fill\", (e) => i.fillColor(e.row, e.column, e.value, e.origRow));\n\t\t\t\tr ? A.attr(\"x\", h).attr(\"y\", T).attr(\"width\", S).attr(\"height\", E) : A.attr(\"y\", h).attr(\"x\", T).attr(\"height\", S).attr(\"width\", E);\n\t\t\t\tlet j = m.select(\"text\").transition().duration(n).style(\"font-size\", D + \"px\").style(\"fill\", (e) => i.textColor(e.row, e.column, e.value, e.origRow));\n\t\t\t\tj.style(\"font-family\", i.innerTextFontFamily_exists() ? i.innerTextFontFamily() : null);\n\t\t\t\tlet M = i.innerTextPadding_exists() ? i.innerTextPadding() : 8, N = D / 2.7;\n\t\t\t\tif (r) {\n\t\t\t\t\tlet e = k.y + k.height - O;\n\t\t\t\t\tj.attr(\"x\", h + S / 2).attr(\"y\", e + N).attr(\"transform\", `rotate(-90, ${h + S / 2}, ${e})`);\n\t\t\t\t} else j.attr(\"x\", k.x + M).attr(\"y\", h + S / 2 + N);\n\t\t\t\tj.attr(\"height\", S).attr(\"width\", E), i.showInnerText() && j.text((e) => {\n\t\t\t\t\tlet t = i.innerText(e.origRow, e.origRow[f], e.idx);\n\t\t\t\t\tif (t) {\n\t\t\t\t\t\tlet n = r ? k.height : k.width, a = i.calcInnerText(n, t, v);\n\t\t\t\t\t\treturn e.innerTextObj = a, a.text;\n\t\t\t\t\t}\n\t\t\t\t\treturn \"\";\n\t\t\t\t});\n\t\t\t\tlet P = m.selectAll(\".dataText\").data(i.showValue() ? [`${g}`] : []);\n\t\t\t\tP.enter().append(\"g\").attr(\"class\", \"dataText\").each(function(e) {\n\t\t\t\t\ti.textLocal.set(this, new u().target(this).colorStroke_default(\"transparent\"));\n\t\t\t\t}).merge(P).each(function() {\n\t\t\t\t\tlet e = {\n\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\ty: 0\n\t\t\t\t\t}, t = i.valueFontFamily(), n = i.valueFontSize(), a = i.textSize(v, t, n), s = parseFloat(v) >= 0, c = i.valueAnchor() ? i.valueAnchor() : r ? \"middle\" : \"start\", l = k.x, u = _.width - (k.x + k.width), d = k.y, f = _.height - (k.y + k.height), p, m, g;\n\t\t\t\t\tif (o.innerTextObj) {\n\t\t\t\t\t\tlet { padding: t, valueTextWidth: i } = o.innerTextObj;\n\t\t\t\t\t\tm = !1, r ? (c = \"middle\", e.x = h + S / 2, o.innerTextObj.category === 4 ? (m = !0, e.y = T - t - n / 2) : e.y = T + t + n / 2) : (c = \"start\", o.innerTextObj.category === 4 ? (m = !0, e.x = E + T + t) : e.x = E + T - i - t, e.y = h + S / 2);\n\t\t\t\t\t} else r ? (p = k.height < a.height, m = !i.valueCentered() || p, e.x = k.x + k.width / 2, m ? s ? (g = d < a.height + M, g ? p ? e.y = k.y + k.height + a.height : (m = !1, e.y = k.y + k.height / 2) : e.y = k.y - a.height / 2 - M) : (g = f < a.height, g ? p ? e.y = k.y - a.height / 2 - M : (m = !1, e.y = k.y + k.height / 2) : e.y = k.y + a.height + M) : e.y = k.y + k.height / 2) : (p = k.width < a.width, m = !i.valueCentered() || p, e.y = k.y + k.height / 2, m ? s ? (g = u < a.width + M, g ? i.showInnerText() || !p ? (m = !1, e.x = k.x + k.width / 2) : e.x = k.x - (a.width - M) : e.x = k.x + k.width + a.width / 2 + M) : (g = l < a.width, g ? i.showInnerText() || !p ? (m = !1, e.x = k.x + k.width / 2) : e.x = k.x + k.width + (a.width - M) : e.x = k.x - (a.width - M)) : e.x = k.x + k.width / 2);\n\t\t\t\t\tlet b = m ? null : i.textColor(o.row, o.column, o.value, o.origRow), C = i.columns(), w = i.yAxisStacked() && p || m && i.yAxisStacked() && C.indexOf(o.column) !== C.length - 1;\n\t\t\t\t\ti.textLocal.get(this).pos(e).anchor(c).fontFamily(t).fontSize(n).text(`${v}`).colorFill(b).visible(i.showValue() && !w).render();\n\t\t\t\t}), P.exit().each(function(e) {\n\t\t\t\t\ti.textLocal.get(this).target(null);\n\t\t\t\t}).remove();\n\t\t\t}), v.exit().transition().duration(n).style(\"opacity\", 0).remove();\n\t\t\tlet C = e.yAxisStacked() ? l[p] : Math.max(...t.filter((e, t) => t > 0 && t < f)), T = m.selectAll(\".stackedTotalText\").data(i.showDomainTotal() ? [l[p]] : []);\n\t\t\tT.enter().append(\"g\").attr(\"class\", \"stackedTotalText\").each(function(e) {\n\t\t\t\ti.stackedTextLocal.set(this, new u().target(this).colorStroke_default(\"transparent\"));\n\t\t\t}).merge(T).each(function(n) {\n\t\t\t\tlet a = {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0\n\t\t\t\t}, o = e.dataPos(t[0]), s = e.valuePos(C), c = i.valueFontFamily(), l = i.valueFontSize(), u = i.textSize(n, c, l), d = parseFloat(n) >= 0, f = \"middle\";\n\t\t\t\tr ? (a.x = o, d ? a.y = s - u.height / 2 : a.y = s + u.height / 2) : (f = \"start\", a.y = o, d ? a.x = s + u.width / 2 : a.x = s - u.width / 2), i.stackedTextLocal.get(this).pos(a).anchor(f).fontFamily(c).fontSize(l).text(n).render();\n\t\t\t}), T.exit().each(function(e) {\n\t\t\t\ti.textLocal.get(this).target(null);\n\t\t\t}).remove();\n\t\t}), m.exit().transition().duration(n).remove();\n\t}\n\tcalcInnerText(e, t, n) {\n\t\tlet r = this.innerTextFontFamily_exists() ? this.innerTextFontFamily() : \"Verdana\", i = this.innerTextFontSize(), a = this.valueFontFamily_exists() ? this.valueFontFamily() : \"Verdana\", o = this.valueFontSize(), s = this.innerTextPadding_exists() ? this.innerTextPadding() : i / 2.5, c = this.isHorizontal ? o : this.textSize(n, a, o).width, l = this.textSize(\"...\", r, i).width, u = this.textSize(t, r, i).width, d = t, f = s * 3 + u + c, p = s * 3 + l + c, m = s * 1 + c, h = 4;\n\t\tif (f < e) h = 1;\n\t\telse if (p < e) {\n\t\t\tlet n = e - p, a = \"\";\n\t\t\tfor (let e of t) if (this.textSize(a + e, r, i).width > n) {\n\t\t\t\tt = a + \"...\";\n\t\t\t\tbreak;\n\t\t\t} else a += e;\n\t\t\th = 2;\n\t\t} else m < e ? (t = \"\", h = 3) : t = \"\";\n\t\treturn {\n\t\t\ttext: t,\n\t\t\tisTruncated: d !== t,\n\t\t\tpadding: s,\n\t\t\tcategory: h,\n\t\t\tvalueTextWidth: c\n\t\t};\n\t}\n\tinnerText(e, t, n) {\n\t\treturn e[0];\n\t}\n};\nColumn.prototype._class += \" chart_Column\", Column.prototype.implements(r.prototype), Column.prototype.implements(i.prototype), Column.prototype.publish(\"valueFontFamily\", null, \"string\", \"Font family of value text\", null, { optional: !0 }), Column.prototype.publish(\"valueFontSize\", 12, \"number\", \"Height of value text (pixels)\"), Column.prototype.publish(\"innerTextFontFamily\", null, \"string\", \"Font family of inner text\", null, { optional: !0 }), Column.prototype.publish(\"innerTextPadding\", 8, \"number\", \"Offset of inner text (pixels)\", null, { optional: !0 }), Column.prototype.publish(\"innerTextFontSize\", 12, \"number\", \"Height of inner text (pixels)\"), Column.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", () => Column.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Column.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Column.prototype.publish(\"showValue\", !1, \"boolean\", \"Show Value in column\"), Column.prototype.publish(\"showInnerText\", !1, \"boolean\", \"Show Label in column\"), Column.prototype.publish(\"showValueFormat\", \",\", \"string\", \"D3 Format for Value\", null, { disable: (e) => !e.showValue() || !!e.showValueAsPercent() }), Column.prototype.publish(\"showValueAsPercent\", null, \"set\", \"If showValue is true, optionally show value as a percentage by Series or Domain\", [\n\tnull,\n\t\"series\",\n\t\"domain\"\n], {\n\tdisable: (e) => !e.showValue(),\n\toptional: !0\n}), Column.prototype.publish(\"showValueAsPercentFormat\", \".0%\", \"string\", \"D3 Format for %\", null, { disable: (e) => !e.showValue() || !e.showValueAsPercent() }), Column.prototype.publish(\"showDomainTotal\", !1, \"boolean\", \"Show Total Value for Stacked Columns\", null), Column.prototype.publish(\"valueCentered\", !1, \"boolean\", \"Show Value in center of column\"), Column.prototype.publish(\"valueAnchor\", \"middle\", \"set\", \"text-anchor for shown value text\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), Column.prototype.publish(\"xAxisSeriesPaddingInner\", 0, \"number\", \"Determines the ratio of the range that is reserved for blank space between band (0->1)\"), Column.prototype.publish(\"tooltipInnerTextEllipsedOnly\", !1, \"boolean\", \"Show tooltip only when inner text is truncated with an ellipsis\");\n//#endregion\n//#region src/Bar.ts\nvar Bar = class extends Column {\n\tconstructor() {\n\t\tsuper(), this.orientation_default(\"vertical\");\n\t}\n};\nBar.prototype._class += \" chart_Bar\";\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/count.js\nfunction count(e) {\n\tvar t = 0, n = e.children, r = n && n.length;\n\tif (!r) t = 1;\n\telse for (; --r >= 0;) t += n[r].value;\n\te.value = t;\n}\nfunction count_default() {\n\treturn this.eachAfter(count);\n}\n__name(count_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/each.js\nfunction each_default(e) {\n\tvar t = this, n, r = [t], i, a, o;\n\tdo\n\t\tfor (n = r.reverse(), r = []; t = n.pop();) if (e(t), i = t.children, i) for (a = 0, o = i.length; a < o; ++a) r.push(i[a]);\n\twhile (r.length);\n\treturn this;\n}\n__name(each_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js\nfunction eachBefore_default(e) {\n\tfor (var t = this, n = [t], r, i; t = n.pop();) if (e(t), r = t.children, r) for (i = r.length - 1; i >= 0; --i) n.push(r[i]);\n\treturn this;\n}\n__name(eachBefore_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js\nfunction eachAfter_default(e) {\n\tfor (var t = this, n = [t], r = [], i, a, o; t = n.pop();) if (r.push(t), i = t.children, i) for (a = 0, o = i.length; a < o; ++a) n.push(i[a]);\n\tfor (; t = r.pop();) e(t);\n\treturn this;\n}\n__name(eachAfter_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/sum.js\nfunction sum_default(e) {\n\treturn this.eachAfter(function(t) {\n\t\tfor (var n = +e(t.data) || 0, r = t.children, i = r && r.length; --i >= 0;) n += r[i].value;\n\t\tt.value = n;\n\t});\n}\n__name(sum_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/sort.js\nfunction sort_default(e) {\n\treturn this.eachBefore(function(t) {\n\t\tt.children && t.children.sort(e);\n\t});\n}\n__name(sort_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/path.js\nfunction path_default$1(e) {\n\tfor (var t = this, n = leastCommonAncestor(t, e), r = [t]; t !== n;) t = t.parent, r.push(t);\n\tfor (var i = r.length; e !== n;) r.splice(i, 0, e), e = e.parent;\n\treturn r;\n}\n__name(path_default$1, \"default\");\nfunction leastCommonAncestor(e, t) {\n\tif (e === t) return e;\n\tvar n = e.ancestors(), r = t.ancestors(), i = null;\n\tfor (e = n.pop(), t = r.pop(); e === t;) i = e, e = n.pop(), t = r.pop();\n\treturn i;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/ancestors.js\nfunction ancestors_default() {\n\tfor (var e = this, t = [e]; e = e.parent;) t.push(e);\n\treturn t;\n}\n__name(ancestors_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/descendants.js\nfunction descendants_default() {\n\tvar e = [];\n\treturn this.each(function(t) {\n\t\te.push(t);\n\t}), e;\n}\n__name(descendants_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/leaves.js\nfunction leaves_default() {\n\tvar e = [];\n\treturn this.eachBefore(function(t) {\n\t\tt.children || e.push(t);\n\t}), e;\n}\n__name(leaves_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/links.js\nfunction links_default() {\n\tvar e = this, t = [];\n\treturn e.each(function(n) {\n\t\tn !== e && t.push({\n\t\t\tsource: n.parent,\n\t\t\ttarget: n\n\t\t});\n\t}), t;\n}\n__name(links_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/index.js\nfunction hierarchy(e, t) {\n\tvar n = new Node$1(e), r = +e.value && (n.value = e.value), i, a = [n], o, s, c, l;\n\tfor (t ??= defaultChildren; i = a.pop();) if (r && (i.value = +i.data.value), (s = t(i.data)) && (l = s.length)) for (i.children = Array(l), c = l - 1; c >= 0; --c) a.push(o = i.children[c] = new Node$1(s[c])), o.parent = i, o.depth = i.depth + 1;\n\treturn n.eachBefore(computeHeight);\n}\nfunction node_copy() {\n\treturn hierarchy(this).eachBefore(copyData);\n}\nfunction defaultChildren(e) {\n\treturn e.children;\n}\nfunction copyData(e) {\n\te.data = e.data.data;\n}\nfunction computeHeight(e) {\n\tvar t = 0;\n\tdo\n\t\te.height = t;\n\twhile ((e = e.parent) && e.height < ++t);\n}\nfunction Node$1(e) {\n\tthis.data = e, this.depth = this.height = 0, this.parent = null;\n}\n__name(Node$1, \"Node\"), Node$1.prototype = hierarchy.prototype = {\n\tconstructor: Node$1,\n\tcount: count_default,\n\teach: each_default,\n\teachAfter: eachAfter_default,\n\teachBefore: eachBefore_default,\n\tsum: sum_default,\n\tsort: sort_default,\n\tpath: path_default$1,\n\tancestors: ancestors_default,\n\tdescendants: descendants_default,\n\tleaves: leaves_default,\n\tlinks: links_default,\n\tcopy: node_copy\n};\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/array.js\nvar Ae = Array.prototype.slice;\nfunction shuffle(e) {\n\tfor (var t = e.length, n, r; t;) r = Math.random() * t-- | 0, n = e[t], e[t] = e[r], e[r] = n;\n\treturn e;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/enclose.js\nfunction enclose_default(e) {\n\tfor (var t = 0, n = (e = shuffle(Ae.call(e))).length, r = [], i, a; t < n;) i = e[t], a && enclosesWeak(a, i) ? ++t : (a = encloseBasis(r = extendBasis(r, i)), t = 0);\n\treturn a;\n}\n__name(enclose_default, \"default\");\nfunction extendBasis(e, t) {\n\tvar n, r;\n\tif (enclosesWeakAll(t, e)) return [t];\n\tfor (n = 0; n < e.length; ++n) if (enclosesNot(t, e[n]) && enclosesWeakAll(encloseBasis2(e[n], t), e)) return [e[n], t];\n\tfor (n = 0; n < e.length - 1; ++n) for (r = n + 1; r < e.length; ++r) if (enclosesNot(encloseBasis2(e[n], e[r]), t) && enclosesNot(encloseBasis2(e[n], t), e[r]) && enclosesNot(encloseBasis2(e[r], t), e[n]) && enclosesWeakAll(encloseBasis3(e[n], e[r], t), e)) return [\n\t\te[n],\n\t\te[r],\n\t\tt\n\t];\n\tthrow Error();\n}\nfunction enclosesNot(e, t) {\n\tvar n = e.r - t.r, r = t.x - e.x, i = t.y - e.y;\n\treturn n < 0 || n * n < r * r + i * i;\n}\nfunction enclosesWeak(e, t) {\n\tvar n = e.r - t.r + 1e-6, r = t.x - e.x, i = t.y - e.y;\n\treturn n > 0 && n * n > r * r + i * i;\n}\nfunction enclosesWeakAll(e, t) {\n\tfor (var n = 0; n < t.length; ++n) if (!enclosesWeak(e, t[n])) return !1;\n\treturn !0;\n}\nfunction encloseBasis(e) {\n\tswitch (e.length) {\n\t\tcase 1: return encloseBasis1(e[0]);\n\t\tcase 2: return encloseBasis2(e[0], e[1]);\n\t\tcase 3: return encloseBasis3(e[0], e[1], e[2]);\n\t}\n}\nfunction encloseBasis1(e) {\n\treturn {\n\t\tx: e.x,\n\t\ty: e.y,\n\t\tr: e.r\n\t};\n}\nfunction encloseBasis2(e, t) {\n\tvar n = e.x, r = e.y, i = e.r, a = t.x, o = t.y, s = t.r, c = a - n, l = o - r, u = s - i, d = Math.sqrt(c * c + l * l);\n\treturn {\n\t\tx: (n + a + c / d * u) / 2,\n\t\ty: (r + o + l / d * u) / 2,\n\t\tr: (d + i + s) / 2\n\t};\n}\nfunction encloseBasis3(e, t, n) {\n\tvar r = e.x, i = e.y, a = e.r, o = t.x, s = t.y, c = t.r, l = n.x, u = n.y, d = n.r, f = r - o, p = r - l, m = i - s, h = i - u, g = c - a, _ = d - a, v = r * r + i * i - a * a, b = v - o * o - s * s + c * c, S = v - l * l - u * u + d * d, C = p * m - f * h, w = (m * S - h * b) / (C * 2) - r, T = (h * g - m * _) / C, E = (p * b - f * S) / (C * 2) - i, D = (f * _ - p * g) / C, O = T * T + D * D - 1, k = 2 * (a + w * T + E * D), A = w * w + E * E - a * a, j = -(O ? (k + Math.sqrt(k * k - 4 * O * A)) / (2 * O) : A / k);\n\treturn {\n\t\tx: r + w + T * j,\n\t\ty: i + E + D * j,\n\t\tr: j\n\t};\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/siblings.js\nfunction place(e, t, n) {\n\tvar r = e.x - t.x, i, a, o = e.y - t.y, s, c, l = r * r + o * o;\n\tl ? (a = t.r + n.r, a *= a, c = e.r + n.r, c *= c, a > c ? (i = (l + c - a) / (2 * l), s = Math.sqrt(Math.max(0, c / l - i * i)), n.x = e.x - i * r - s * o, n.y = e.y - i * o + s * r) : (i = (l + a - c) / (2 * l), s = Math.sqrt(Math.max(0, a / l - i * i)), n.x = t.x + i * r - s * o, n.y = t.y + i * o + s * r)) : (n.x = t.x + n.r, n.y = t.y);\n}\nfunction intersects(e, t) {\n\tvar n = e.r + t.r - 1e-6, r = t.x - e.x, i = t.y - e.y;\n\treturn n > 0 && n * n > r * r + i * i;\n}\nfunction score(e) {\n\tvar t = e._, n = e.next._, r = t.r + n.r, i = (t.x * n.r + n.x * t.r) / r, a = (t.y * n.r + n.y * t.r) / r;\n\treturn i * i + a * a;\n}\nfunction Node(e) {\n\tthis._ = e, this.next = null, this.previous = null;\n}\nfunction packEnclose(e) {\n\tif (!(i = e.length)) return 0;\n\tvar t = e[0], n, r, i, a, o, s, c, l, u, d;\n\tif (t.x = 0, t.y = 0, !(i > 1)) return t.r;\n\tif (n = e[1], t.x = -n.r, n.x = t.r, n.y = 0, !(i > 2)) return t.r + n.r;\n\tplace(n, t, r = e[2]), t = new Node(t), n = new Node(n), r = new Node(r), t.next = r.previous = n, n.next = t.previous = r, r.next = n.previous = t;\n\tpack: for (s = 3; s < i; ++s) {\n\t\tplace(t._, n._, r = e[s]), r = new Node(r), c = n.next, l = t.previous, u = n._.r, d = t._.r;\n\t\tdo\n\t\t\tif (u <= d) {\n\t\t\t\tif (intersects(c._, r._)) {\n\t\t\t\t\tn = c, t.next = n, n.previous = t, --s;\n\t\t\t\t\tcontinue pack;\n\t\t\t\t}\n\t\t\t\tu += c._.r, c = c.next;\n\t\t\t} else {\n\t\t\t\tif (intersects(l._, r._)) {\n\t\t\t\t\tt = l, t.next = n, n.previous = t, --s;\n\t\t\t\t\tcontinue pack;\n\t\t\t\t}\n\t\t\t\td += l._.r, l = l.previous;\n\t\t\t}\n\t\twhile (c !== l.next);\n\t\tfor (r.previous = t, r.next = n, t.next = n.previous = n = r, a = score(t); (r = r.next) !== n;) (o = score(r)) < a && (t = r, a = o);\n\t\tn = t.next;\n\t}\n\tfor (t = [n._], r = n; (r = r.next) !== n;) t.push(r._);\n\tfor (r = enclose_default(t), s = 0; s < i; ++s) t = e[s], t.x -= r.x, t.y -= r.y;\n\treturn r.r;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/accessors.js\nfunction optional(e) {\n\treturn e == null ? null : required(e);\n}\nfunction required(e) {\n\tif (typeof e != \"function\") throw Error();\n\treturn e;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/constant.js\nfunction constantZero() {\n\treturn 0;\n}\nfunction constant_default$2(e) {\n\treturn function() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$2, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/index.js\nfunction defaultRadius(e) {\n\treturn Math.sqrt(e.value);\n}\nfunction pack_default() {\n\tvar e = null, t = 1, n = 1, r = constantZero;\n\tfunction pack(i) {\n\t\treturn i.x = t / 2, i.y = n / 2, e ? i.eachBefore(radiusLeaf(e)).eachAfter(packChildren(r, .5)).eachBefore(translateChild(1)) : i.eachBefore(radiusLeaf(defaultRadius)).eachAfter(packChildren(constantZero, 1)).eachAfter(packChildren(r, i.r / Math.min(t, n))).eachBefore(translateChild(Math.min(t, n) / (2 * i.r))), i;\n\t}\n\treturn pack.radius = function(t) {\n\t\treturn arguments.length ? (e = optional(t), pack) : e;\n\t}, pack.size = function(e) {\n\t\treturn arguments.length ? (t = +e[0], n = +e[1], pack) : [t, n];\n\t}, pack.padding = function(e) {\n\t\treturn arguments.length ? (r = typeof e == \"function\" ? e : constant_default$2(+e), pack) : r;\n\t}, pack;\n}\n__name(pack_default, \"default\");\nfunction radiusLeaf(e) {\n\treturn function(t) {\n\t\tt.children || (t.r = Math.max(0, +e(t) || 0));\n\t};\n}\nfunction packChildren(e, t) {\n\treturn function(n) {\n\t\tif (r = n.children) {\n\t\t\tvar r, i, a = r.length, o = e(n) * t || 0, s;\n\t\t\tif (o) for (i = 0; i < a; ++i) r[i].r += o;\n\t\t\tif (s = packEnclose(r), o) for (i = 0; i < a; ++i) r[i].r -= o;\n\t\t\tn.r = s + o;\n\t\t}\n\t};\n}\nfunction translateChild(e) {\n\treturn function(t) {\n\t\tvar n = t.parent;\n\t\tt.r *= e, n && (t.x = n.x + e * t.x, t.y = n.y + e * t.y);\n\t};\n}\n//#endregion\n//#region src/Bubble.ts\nvar Bubble = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\tlabelWidgets;\n\td3Pack;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this._drawStartPos = \"origin\", this.labelWidgets = {}, this.d3Pack = pack_default().size([this.width(), this.height()]).padding(1.5);\n\t}\n\tsize(e) {\n\t\tlet t = super.size.apply(this, arguments);\n\t\treturn arguments.length && this.d3Pack.size([this.width(), this.height()]), t;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t);\n\t\tlet n = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (n.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return n.tooltipFormat({\n\t\t\t\t\tlabel: e[0],\n\t\t\t\t\tarr: n.columns().slice(1).map(function(t, r) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: n._palette(e[0]),\n\t\t\t\t\t\t\tvalue: e[1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tvalue: e.data[1]\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this;\n\t\tthis._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id()));\n\t\tlet r = hierarchy({ children: this.cloneData() }).sum(function(e) {\n\t\t\treturn e[1];\n\t\t}).sort(function(e, t) {\n\t\t\treturn t[1] < e[1] ? -1 : +(t[1] > e[1]);\n\t\t});\n\t\tthis.d3Pack(r);\n\t\tlet i = t.selectAll(\".node\").data(r.children || [], (e) => e.data[0]);\n\t\ti.enter().append(\"g\").attr(\"class\", (e, t) => \"node series series-\" + this.cssTag(e.data[0])).attr(\"opacity\", 0).call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).each(function(e) {\n\t\t\tlet t = z(this), r = {\n\t\t\t\tx: e.x,\n\t\t\t\ty: e.y\n\t\t\t};\n\t\t\tt.append(\"circle\").attr(\"transform\", \"translate(\" + r.x + \",\" + r.y + \")\").attr(\"r\", 0).on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show), e.__viz_faChar ? n.labelWidgets[e.data[0]] = new o().char(e.__viz_faChar).target(this).render() : n.labelWidgets[e.data[0]] = new u().text(e.data[0]).target(this).render();\n\t\t}).merge(i).transition().attr(\"opacity\", 1).each(function(e) {\n\t\t\tlet t = z(this), r = {\n\t\t\t\tx: e.x,\n\t\t\t\ty: e.y\n\t\t\t};\n\t\t\tt.select(\"circle\").transition().attr(\"transform\", \"translate(\" + r.x + \",\" + r.y + \")\").style(\"fill\", n.fillColor(e.data, n.columns()[1], e.data[1])).attr(\"r\", e.r).select(\"title\").text(e.data[0] + \" (\" + e.data[1] + \")\"), e.__viz_faChar ? n.labelWidgets[e.data[0]].pos(r).render() : n.labelWidgets[e.data[0]].pos(r).colorFill_default(n.textColor(e.data, n.columns()[1], e.data[1])).width(e.r * 2).text(e.data[0]).render();\n\t\t}), i.exit().transition().style(\"opacity\", 0).remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nBubble.prototype._class += \" chart_Bubble\", Bubble.prototype.implements(n.prototype), Bubble.prototype.implements(i.prototype), Bubble.prototype.mixin(d.SimpleSelectionMixin), Bubble.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Bubble.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Bubble.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] });\n//#endregion\n//#region src/BubbleXY.ts\nvar BubbleXY = class extends Scatter {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tenter(e, t) {\n\t\tthis.pointSizeColumn_exists() || this.pointSizeColumn(this.columns()[this.columns().length - 1]), super.enter(e, t);\n\t}\n};\nBubbleXY.prototype._class += \" chart_BubbleXY\";\n//#endregion\n//#region ../../node_modules/d3-timer/src/timer.js\nvar je = 0, Me = 0, Ne = 0, Pe = 1e3, Fe, Ie, Le = 0, Re = 0, ze = 0, Be = typeof performance == \"object\" && performance.now ? performance : Date, Ve = typeof window == \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(e) {\n\tsetTimeout(e, 17);\n};\nfunction now() {\n\treturn Re ||= (Ve(clearNow), Be.now() + ze);\n}\nfunction clearNow() {\n\tRe = 0;\n}\nfunction Timer() {\n\tthis._call = this._time = this._next = null;\n}\nTimer.prototype = timer.prototype = {\n\tconstructor: Timer,\n\trestart: function(e, t, n) {\n\t\tif (typeof e != \"function\") throw TypeError(\"callback is not a function\");\n\t\tn = (n == null ? now() : +n) + (t == null ? 0 : +t), !this._next && Ie !== this && (Ie ? Ie._next = this : Fe = this, Ie = this), this._call = e, this._time = n, sleep();\n\t},\n\tstop: function() {\n\t\tthis._call && (this._call = null, this._time = Infinity, sleep());\n\t}\n};\nfunction timer(e, t, n) {\n\tvar r = new Timer();\n\treturn r.restart(e, t, n), r;\n}\nfunction timerFlush() {\n\tnow(), ++je;\n\tfor (var e = Fe, t; e;) (t = Re - e._time) >= 0 && e._call.call(null, t), e = e._next;\n\t--je;\n}\nfunction wake() {\n\tRe = (Le = Be.now()) + ze, je = Me = 0;\n\ttry {\n\t\ttimerFlush();\n\t} finally {\n\t\tje = 0, nap(), Re = 0;\n\t}\n}\nfunction poke() {\n\tvar e = Be.now(), t = e - Le;\n\tt > Pe && (ze -= t, Le = e);\n}\nfunction nap() {\n\tfor (var e, t = Fe, n, r = Infinity; t;) t._call ? (r > t._time && (r = t._time), e = t, t = t._next) : (n = t._next, t._next = null, t = e ? e._next = n : Fe = n);\n\tIe = e, sleep(r);\n}\nfunction sleep(e) {\n\tje || (Me &&= clearTimeout(Me), e - Re > 24 ? (e < Infinity && (Me = setTimeout(wake, e - Be.now() - ze)), Ne &&= clearInterval(Ne)) : (Ne ||= (Le = Be.now(), setInterval(poke, Pe)), je = 1, Ve(wake)));\n}\n//#endregion\n//#region ../../node_modules/d3v4-bullet/src/bullet.js\nfunction bullet_default() {\n\tvar e = \"left\", t = !1, n = !1, r = bulvarRanges, i = bulvarMarkers, a = bulvarMeasures, o = 380, s = 30, c = axisLeft();\n\tfunction bulvar(e) {\n\t\te.each(function(e, l) {\n\t\t\tvar u = r.call(this, e, l).slice().sort(_), d = i.call(this, e, l).slice().sort(_), f = a.call(this, e, l).slice().sort(_), p = z(this), m, h, g = p.select(\"g.wrap\");\n\t\t\tg.empty() && (g = p.append(\"g\").attr(\"class\", \"wrap\")), n ? (m = s, h = o, g.attr(\"transform\", \"rotate(90)translate(0,\" + -o + \")\")) : (m = o, h = s, g.attr(\"transform\", null));\n\t\t\tvar v = P().domain([0, Math.max(u[0], d[0], f[0])]).range(t ? [m, 0] : [0, m]), b = this.__chart__ || P().domain([0, Infinity]).range(v.range());\n\t\t\tthis.__chart__ = v;\n\t\t\tvar S = bulvarWidth(b), C = bulvarWidth(v), w = g.selectAll(\"rect.range\").data(u);\n\t\t\tw.enter().append(\"rect\").attr(\"class\", function(e, t) {\n\t\t\t\treturn \"range s\" + t;\n\t\t\t}).attr(\"width\", S).attr(\"height\", h).attr(\"x\", t ? b : 0).merge(w).transition(w).attr(\"x\", t ? v : 0).attr(\"width\", C).attr(\"height\", h);\n\t\t\tvar T = g.selectAll(\"rect.measure\").data(f);\n\t\t\tT.enter().append(\"rect\").attr(\"class\", function(e, t) {\n\t\t\t\treturn \"measure s\" + t;\n\t\t\t}).attr(\"width\", S).attr(\"height\", h / 3).attr(\"x\", t ? b : 0).attr(\"y\", h / 3).merge(T).transition(T).attr(\"width\", C).attr(\"height\", h / 3).attr(\"x\", t ? v : 0).attr(\"y\", h / 3);\n\t\t\tvar E = g.selectAll(\"line.marker\").data(d);\n\t\t\tE.enter().append(\"line\").attr(\"class\", \"marker\").attr(\"x1\", b).attr(\"x2\", b).attr(\"y1\", h / 6).attr(\"y2\", h * 5 / 6).merge(E).transition(E).attr(\"x1\", v).attr(\"x2\", v).attr(\"y1\", h / 6).attr(\"y2\", h * 5 / 6);\n\t\t\tvar D = p.selectAll(\"g.axis\").data([0]);\n\t\t\tD.enter().append(\"g\").attr(\"class\", \"axis\"), D.attr(\"transform\", n ? null : \"translate(0,\" + h + \")\").call(c.scale(v));\n\t\t}), timerFlush();\n\t}\n\treturn bulvar.orient = function(r) {\n\t\treturn arguments.length ? (e = r + \"\", t = e === \"right\" || e === \"bottom\", c.orient((n = e === \"top\" || e === \"bottom\") ? \"left\" : \"bottom\"), bulvar) : e;\n\t}, bulvar.ranges = function(e) {\n\t\treturn arguments.length ? (r = e, bulvar) : r;\n\t}, bulvar.markers = function(e) {\n\t\treturn arguments.length ? (i = e, bulvar) : i;\n\t}, bulvar.measures = function(e) {\n\t\treturn arguments.length ? (a = e, bulvar) : a;\n\t}, bulvar.width = function(e) {\n\t\treturn arguments.length ? (o = +e, bulvar) : o;\n\t}, bulvar.height = function(e) {\n\t\treturn arguments.length ? (s = +e, bulvar) : s;\n\t}, bulvar.tickFormat = function(e) {\n\t\treturn arguments.length ? (c.tickFormat(e), bulvar) : c.tickFormat();\n\t}, bulvar;\n}\n__name(bullet_default, \"default\");\nfunction bulvarRanges(e) {\n\treturn e.ranges;\n}\nfunction bulvarMarkers(e) {\n\treturn e.markers;\n}\nfunction bulvarMeasures(e) {\n\treturn e.measures;\n}\nfunction bulvarWidth(e) {\n\tvar t = e(0);\n\treturn function(n) {\n\t\treturn Math.abs(e(n) - t);\n\t};\n}\n//#endregion\n//#region src/Bullet.ts\nvar Bullet = class extends s {\n\t_hiddenColumns = {};\n\tconstructor() {\n\t\tsuper(), d.SimpleSelectionMixin.call(this, !0);\n\t}\n\tbulletData() {\n\t\tlet e = this;\n\t\tthis._hiddenColumns = {};\n\t\tlet t = this.columns();\n\t\treturn this.data().map(function(e) {\n\t\t\treturn {\n\t\t\t\ttitle: valueOf(e, this.titleColumn()),\n\t\t\t\tsubtitle: valueOf(e, this.subtitleColumn()),\n\t\t\t\tranges: valueOf(e, this.rangesColumn(), \"range\"),\n\t\t\t\tmeasures: valueOf(e, this.measuresColumn(), \"measure\"),\n\t\t\t\tmarkers: valueOf(e, this.markersColumn(), \"marker\"),\n\t\t\t\torigRow: e\n\t\t\t};\n\t\t}, this);\n\t\tfunction valueOf(n, r, i) {\n\t\t\tlet a = t.indexOf(r);\n\t\t\treturn a >= 0 ? n[a] instanceof Array ? n[a] : [n[a]] : (i && (e._hiddenColumns[i] = !0), [0]);\n\t\t}\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), z(e.parentNode).style(\"overflow\", \"auto\"), this._selection.widgetElement(t);\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this;\n\t\tt.selectAll(\".axis\").style(\"display\", \"none\"), t.selectAll(\".range,.measure,.marker\").style(\"display\", null);\n\t\tlet r = {\n\t\t\tleft: 2,\n\t\t\ttop: 8,\n\t\t\tright: 2,\n\t\t\tbottom: 8\n\t\t}, i = this.width() - r.left - r.right, a = 40 - r.top - r.bottom, o = t.selectAll(\"svg\").data(this.bulletData()), s = o.enter().append(\"svg\").attr(\"class\", \"bullet\").call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.origRow), n.titleColumn(), n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.origRow), n.titleColumn(), n._selection.selected(this));\n\t\t}).each(function() {\n\t\t\tlet e = z(this).append(\"g\").attr(\"class\", (e, t) => \"bulletBar series series-\" + n.cssTag(n.titleColumn())).append(\"g\").attr(\"class\", \"bulletTitle\");\n\t\t\te.append(\"text\").attr(\"class\", \"title\"), e.append(\"text\").attr(\"class\", \"subtitle\").attr(\"dy\", \"1em\");\n\t\t}).merge(o), c = s.select(\".bulletTitle\").style(\"text-anchor\", \"end\").attr(\"transform\", \"translate(-6,\" + a / 2 + \")\");\n\t\tc.select(\".title\").text(function(e) {\n\t\t\treturn e.title;\n\t\t}), c.select(\".subtitle\").text(function(e) {\n\t\t\treturn e.subtitle;\n\t\t});\n\t\tlet l = 0;\n\t\tc.each(function() {\n\t\t\tlet e = this.getBBox();\n\t\t\te.width > l && (l = e.width);\n\t\t});\n\t\tlet u = bullet_default().width(i - l - 6).height(a);\n\t\ts.attr(\"width\", i).attr(\"height\", a + r.top + r.bottom).style(\"margin-left\", `${r.left}px`), s.select(\".bulletBar\").attr(\"transform\", \"translate(\" + (l + 6) + \",\" + r.top + \")\").call(u), o.exit().remove(), Object.keys(this._hiddenColumns).length > 0 && t.selectAll(`.${Object.keys(this._hiddenColumns).join(\",.\")}`).style(\"display\", \"none\");\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tclick(e, t, n) {}\n\tdblclick(e, t, n) {}\n\t_selection;\n};\nBullet.prototype._class += \" chart_Bullet\", Bullet.prototype.publish(\"titleColumn\", null, \"set\", \"Title Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"subtitleColumn\", null, \"set\", \"Subtitle Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"rangesColumn\", null, \"set\", \"Ranges Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"measuresColumn\", null, \"set\", \"Measures Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"markersColumn\", null, \"set\", \"Markers Column\", function() {\n\treturn this.columns();\n}, { optional: !0 });\nvar He = Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-contour/src/ascending.js\nfunction ascending_default(e, t) {\n\treturn e - t;\n}\n__name(ascending_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/area.js\nfunction area_default(e) {\n\tfor (var t = 0, n = e.length, r = e[n - 1][1] * e[0][0] - e[n - 1][0] * e[0][1]; ++t < n;) r += e[t - 1][1] * e[t][0] - e[t - 1][0] * e[t][1];\n\treturn r;\n}\n__name(area_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/constant.js\nfunction constant_default$1(e) {\n\treturn function() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/contains.js\nfunction contains_default(e, t) {\n\tfor (var n = -1, r = t.length, i; ++n < r;) if (i = ringContains(e, t[n])) return i;\n\treturn 0;\n}\n__name(contains_default, \"default\");\nfunction ringContains(e, t) {\n\tfor (var n = t[0], r = t[1], i = -1, a = 0, o = e.length, s = o - 1; a < o; s = a++) {\n\t\tvar c = e[a], l = c[0], u = c[1], d = e[s], f = d[0], p = d[1];\n\t\tif (segmentContains(c, d, t)) return 0;\n\t\tu > r != p > r && n < (f - l) * (r - u) / (p - u) + l && (i = -i);\n\t}\n\treturn i;\n}\nfunction segmentContains(e, t, n) {\n\tvar r;\n\treturn collinear(e, t, n) && within(e[r = +(e[0] === t[0])], n[r], t[r]);\n}\nfunction collinear(e, t, n) {\n\treturn (t[0] - e[0]) * (n[1] - e[1]) === (n[0] - e[0]) * (t[1] - e[1]);\n}\nfunction within(e, t, n) {\n\treturn e <= t && t <= n || n <= t && t <= e;\n}\n//#endregion\n//#region ../../node_modules/d3-contour/src/noop.js\nfunction noop_default$1() {}\n__name(noop_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/contours.js\nvar W = [\n\t[],\n\t[[[1, 1.5], [.5, 1]]],\n\t[[[1.5, 1], [1, 1.5]]],\n\t[[[1.5, 1], [.5, 1]]],\n\t[[[1, .5], [1.5, 1]]],\n\t[[[1, 1.5], [.5, 1]], [[1, .5], [1.5, 1]]],\n\t[[[1, .5], [1, 1.5]]],\n\t[[[1, .5], [.5, 1]]],\n\t[[[.5, 1], [1, .5]]],\n\t[[[1, 1.5], [1, .5]]],\n\t[[[.5, 1], [1, .5]], [[1.5, 1], [1, 1.5]]],\n\t[[[1.5, 1], [1, .5]]],\n\t[[[.5, 1], [1.5, 1]]],\n\t[[[1, 1.5], [1.5, 1]]],\n\t[[[.5, 1], [1, 1.5]]],\n\t[]\n];\nfunction contours_default() {\n\tvar e = 1, t = 1, n = ee, r = smoothLinear;\n\tfunction contours(e) {\n\t\tvar t = n(e);\n\t\tif (Array.isArray(t)) t = t.slice().sort(ascending_default);\n\t\telse {\n\t\t\tvar r = C(e), i = r[0], a = r[1];\n\t\t\tt = B(i, a, t), t = j(Math.floor(i / t) * t, Math.floor(a / t) * t, t);\n\t\t}\n\t\treturn t.map(function(t) {\n\t\t\treturn contour(e, t);\n\t\t});\n\t}\n\tfunction contour(e, t) {\n\t\tvar n = [], i = [];\n\t\treturn isorings(e, t, function(a) {\n\t\t\tr(a, e, t), area_default(a) > 0 ? n.push([a]) : i.push(a);\n\t\t}), i.forEach(function(e) {\n\t\t\tfor (var t = 0, r = n.length, i; t < r; ++t) if (contains_default((i = n[t])[0], e) !== -1) {\n\t\t\t\ti.push(e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}), {\n\t\t\ttype: \"MultiPolygon\",\n\t\t\tvalue: t,\n\t\t\tcoordinates: n\n\t\t};\n\t}\n\tfunction isorings(n, r, i) {\n\t\tvar a = [], o = [], s = c = -1, c, l, u = n[0] >= r, d, f;\n\t\tfor (W[u << 1].forEach(stitch); ++s < e - 1;) l = u, u = n[s + 1] >= r, W[l | u << 1].forEach(stitch);\n\t\tfor (W[u << 0].forEach(stitch); ++c < t - 1;) {\n\t\t\tfor (s = -1, u = n[c * e + e] >= r, d = n[c * e] >= r, W[u << 1 | d << 2].forEach(stitch); ++s < e - 1;) l = u, u = n[c * e + e + s + 1] >= r, f = d, d = n[c * e + s + 1] >= r, W[l | u << 1 | d << 2 | f << 3].forEach(stitch);\n\t\t\tW[u | d << 3].forEach(stitch);\n\t\t}\n\t\tfor (s = -1, d = n[c * e] >= r, W[d << 2].forEach(stitch); ++s < e - 1;) f = d, d = n[c * e + s + 1] >= r, W[d << 2 | f << 3].forEach(stitch);\n\t\tW[d << 3].forEach(stitch);\n\t\tfunction stitch(e) {\n\t\t\tvar t = [e[0][0] + s, e[0][1] + c], n = [e[1][0] + s, e[1][1] + c], r = index(t), l = index(n), u, d;\n\t\t\t(u = o[r]) ? (d = a[l]) ? (delete o[u.end], delete a[d.start], u === d ? (u.ring.push(n), i(u.ring)) : a[u.start] = o[d.end] = {\n\t\t\t\tstart: u.start,\n\t\t\t\tend: d.end,\n\t\t\t\tring: u.ring.concat(d.ring)\n\t\t\t}) : (delete o[u.end], u.ring.push(n), o[u.end = l] = u) : (u = a[l]) ? (d = o[r]) ? (delete a[u.start], delete o[d.end], u === d ? (u.ring.push(n), i(u.ring)) : a[d.start] = o[u.end] = {\n\t\t\t\tstart: d.start,\n\t\t\t\tend: u.end,\n\t\t\t\tring: d.ring.concat(u.ring)\n\t\t\t}) : (delete a[u.start], u.ring.unshift(t), a[u.start = r] = u) : a[r] = o[l] = {\n\t\t\t\tstart: r,\n\t\t\t\tend: l,\n\t\t\t\tring: [t, n]\n\t\t\t};\n\t\t}\n\t}\n\tfunction index(t) {\n\t\treturn t[0] * 2 + t[1] * (e + 1) * 4;\n\t}\n\tfunction smoothLinear(n, r, i) {\n\t\tn.forEach(function(n) {\n\t\t\tvar a = n[0], o = n[1], s = a | 0, c = o | 0, l, u = r[c * e + s];\n\t\t\ta > 0 && a < e && s === a && (l = r[c * e + s - 1], n[0] = a + (i - l) / (u - l) - .5), o > 0 && o < t && c === o && (l = r[(c - 1) * e + s], n[1] = o + (i - l) / (u - l) - .5);\n\t\t});\n\t}\n\treturn contours.contour = contour, contours.size = function(n) {\n\t\tif (!arguments.length) return [e, t];\n\t\tvar r = Math.ceil(n[0]), i = Math.ceil(n[1]);\n\t\tif (!(r > 0) || !(i > 0)) throw Error(\"invalid size\");\n\t\treturn e = r, t = i, contours;\n\t}, contours.thresholds = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$1(Array.isArray(e) ? He.call(e) : e), contours) : n;\n\t}, contours.smooth = function(e) {\n\t\treturn arguments.length ? (r = e ? smoothLinear : noop_default$1, contours) : r === smoothLinear;\n\t}, contours;\n}\n__name(contours_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/blur.js\nfunction blurX(e, t, n) {\n\tfor (var r = e.width, i = e.height, a = (n << 1) + 1, o = 0; o < i; ++o) for (var s = 0, c = 0; s < r + n; ++s) s < r && (c += e.data[s + o * r]), s >= n && (s >= a && (c -= e.data[s - a + o * r]), t.data[s - n + o * r] = c / Math.min(s + 1, r - 1 + a - s, a));\n}\nfunction blurY(e, t, n) {\n\tfor (var r = e.width, i = e.height, a = (n << 1) + 1, o = 0; o < r; ++o) for (var s = 0, c = 0; s < i + n; ++s) s < i && (c += e.data[o + s * r]), s >= n && (s >= a && (c -= e.data[o + (s - a) * r]), t.data[o + (s - n) * r] = c / Math.min(s + 1, i - 1 + a - s, a));\n}\n//#endregion\n//#region ../../node_modules/d3-contour/src/density.js\nfunction defaultX(e) {\n\treturn e[0];\n}\nfunction defaultY(e) {\n\treturn e[1];\n}\nfunction defaultWeight() {\n\treturn 1;\n}\nfunction density_default() {\n\tvar e = defaultX, t = defaultY, n = defaultWeight, r = 960, i = 500, a = 20, o = 2, s = a * 3, c = r + s * 2 >> o, l = i + s * 2 >> o, u = constant_default$1(20);\n\tfunction density(r) {\n\t\tvar i = new Float32Array(c * l), d = new Float32Array(c * l);\n\t\tr.forEach(function(r, a, u) {\n\t\t\tvar d = +e(r, a, u) + s >> o, f = +t(r, a, u) + s >> o, p = +n(r, a, u);\n\t\t\td >= 0 && d < c && f >= 0 && f < l && (i[d + f * c] += p);\n\t\t}), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o);\n\t\tvar f = u(i);\n\t\tif (!Array.isArray(f)) {\n\t\t\tvar p = k(i);\n\t\t\tf = B(0, p, f), f = j(0, Math.floor(p / f) * f, f), f.shift();\n\t\t}\n\t\treturn contours_default().thresholds(f).size([c, l])(i).map(transform);\n\t}\n\tfunction transform(e) {\n\t\treturn e.value *= 2 ** (-2 * o), e.coordinates.forEach(transformPolygon), e;\n\t}\n\tfunction transformPolygon(e) {\n\t\te.forEach(transformRing);\n\t}\n\tfunction transformRing(e) {\n\t\te.forEach(transformPoint);\n\t}\n\tfunction transformPoint(e) {\n\t\te[0] = e[0] * 2 ** o - s, e[1] = e[1] * 2 ** o - s;\n\t}\n\tfunction resize() {\n\t\treturn s = a * 3, c = r + s * 2 >> o, l = i + s * 2 >> o, density;\n\t}\n\treturn density.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$1(+t), density) : e;\n\t}, density.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$1(+e), density) : t;\n\t}, density.weight = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$1(+e), density) : n;\n\t}, density.size = function(e) {\n\t\tif (!arguments.length) return [r, i];\n\t\tvar t = Math.ceil(e[0]), n = Math.ceil(e[1]);\n\t\tif (!(t >= 0) && !(t >= 0)) throw Error(\"invalid size\");\n\t\treturn r = t, i = n, resize();\n\t}, density.cellSize = function(e) {\n\t\tif (!arguments.length) return 1 << o;\n\t\tif (!((e = +e) >= 1)) throw Error(\"invalid cell size\");\n\t\treturn o = Math.floor(Math.log(e) / Math.LN2), resize();\n\t}, density.thresholds = function(e) {\n\t\treturn arguments.length ? (u = typeof e == \"function\" ? e : constant_default$1(Array.isArray(e) ? He.call(e) : e), density) : u;\n\t}, density.bandwidth = function(e) {\n\t\tif (!arguments.length) return Math.sqrt(a * (a + 1));\n\t\tif (!((e = +e) >= 0)) throw Error(\"invalid bandwidth\");\n\t\treturn a = Math.round((Math.sqrt(4 * e * e + 1) - 1) / 2), resize();\n\t}, density;\n}\n__name(density_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/adder.js\nfunction adder_default() {\n\treturn new Adder();\n}\n__name(adder_default, \"default\");\nfunction Adder() {\n\tthis.reset();\n}\nAdder.prototype = {\n\tconstructor: Adder,\n\treset: function() {\n\t\tthis.s = this.t = 0;\n\t},\n\tadd: function(e) {\n\t\tadd(Ue, e, this.t), add(this, Ue.s, this.s), this.s ? this.t += Ue.t : this.s = Ue.t;\n\t},\n\tvalueOf: function() {\n\t\treturn this.s;\n\t}\n};\nvar Ue = new Adder();\nfunction add(e, t, n) {\n\tvar r = e.s = t + n, i = r - t;\n\te.t = t - (r - i) + (n - i);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/math.js\nvar We = Math.PI;\nWe / 2, We / 4;\nvar Ge = We * 2;\n180 / We, We / 180;\nvar Ke = Math.abs, qe = Math.sqrt;\n//#endregion\n//#region ../../node_modules/d3-geo/src/noop.js\nfunction noop() {}\n//#endregion\n//#region ../../node_modules/d3-geo/src/stream.js\nfunction streamGeometry(e, t) {\n\te && Ye.hasOwnProperty(e.type) && Ye[e.type](e, t);\n}\nvar Je = {\n\tFeature: function(e, t) {\n\t\tstreamGeometry(e.geometry, t);\n\t},\n\tFeatureCollection: function(e, t) {\n\t\tfor (var n = e.features, r = -1, i = n.length; ++r < i;) streamGeometry(n[r].geometry, t);\n\t}\n}, Ye = {\n\tSphere: function(e, t) {\n\t\tt.sphere();\n\t},\n\tPoint: function(e, t) {\n\t\te = e.coordinates, t.point(e[0], e[1], e[2]);\n\t},\n\tMultiPoint: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) e = n[r], t.point(e[0], e[1], e[2]);\n\t},\n\tLineString: function(e, t) {\n\t\tstreamLine(e.coordinates, t, 0);\n\t},\n\tMultiLineString: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) streamLine(n[r], t, 0);\n\t},\n\tPolygon: function(e, t) {\n\t\tstreamPolygon(e.coordinates, t);\n\t},\n\tMultiPolygon: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) streamPolygon(n[r], t);\n\t},\n\tGeometryCollection: function(e, t) {\n\t\tfor (var n = e.geometries, r = -1, i = n.length; ++r < i;) streamGeometry(n[r], t);\n\t}\n};\nfunction streamLine(e, t, n) {\n\tvar r = -1, i = e.length - n, a;\n\tfor (t.lineStart(); ++r < i;) a = e[r], t.point(a[0], a[1], a[2]);\n\tt.lineEnd();\n}\nfunction streamPolygon(e, t) {\n\tvar n = -1, r = e.length;\n\tfor (t.polygonStart(); ++n < r;) streamLine(e[n], t, 1);\n\tt.polygonEnd();\n}\nfunction stream_default(e, t) {\n\te && Je.hasOwnProperty(e.type) ? Je[e.type](e, t) : streamGeometry(e, t);\n}\n__name(stream_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/identity.js\nfunction identity_default(e) {\n\treturn e;\n}\n__name(identity_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/area.js\nvar Xe = adder_default(), Ze = adder_default(), Qe, $e, et, tt, G = {\n\tpoint: noop,\n\tlineStart: noop,\n\tlineEnd: noop,\n\tpolygonStart: function() {\n\t\tG.lineStart = areaRingStart, G.lineEnd = areaRingEnd;\n\t},\n\tpolygonEnd: function() {\n\t\tG.lineStart = G.lineEnd = G.point = noop, Xe.add(Ke(Ze)), Ze.reset();\n\t},\n\tresult: function() {\n\t\tvar e = Xe / 2;\n\t\treturn Xe.reset(), e;\n\t}\n};\nfunction areaRingStart() {\n\tG.point = areaPointFirst;\n}\nfunction areaPointFirst(e, t) {\n\tG.point = areaPoint, Qe = et = e, $e = tt = t;\n}\nfunction areaPoint(e, t) {\n\tZe.add(tt * e - et * t), et = e, tt = t;\n}\nfunction areaRingEnd() {\n\tareaPoint(Qe, $e);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/bounds.js\nvar nt = Infinity, rt = nt, it = -nt, at = it, ot = {\n\tpoint: boundsPoint,\n\tlineStart: noop,\n\tlineEnd: noop,\n\tpolygonStart: noop,\n\tpolygonEnd: noop,\n\tresult: function() {\n\t\tvar e = [[nt, rt], [it, at]];\n\t\treturn it = at = -(rt = nt = Infinity), e;\n\t}\n};\nfunction boundsPoint(e, t) {\n\te < nt && (nt = e), e > it && (it = e), t < rt && (rt = t), t > at && (at = t);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/centroid.js\nvar st = 0, ct = 0, lt = 0, ut = 0, dt = 0, ft = 0, pt = 0, mt = 0, ht = 0, gt, _t, K, q, J = {\n\tpoint: centroidPoint,\n\tlineStart: centroidLineStart,\n\tlineEnd: centroidLineEnd,\n\tpolygonStart: function() {\n\t\tJ.lineStart = centroidRingStart, J.lineEnd = centroidRingEnd;\n\t},\n\tpolygonEnd: function() {\n\t\tJ.point = centroidPoint, J.lineStart = centroidLineStart, J.lineEnd = centroidLineEnd;\n\t},\n\tresult: function() {\n\t\tvar e = ht ? [pt / ht, mt / ht] : ft ? [ut / ft, dt / ft] : lt ? [st / lt, ct / lt] : [NaN, NaN];\n\t\treturn st = ct = lt = ut = dt = ft = pt = mt = ht = 0, e;\n\t}\n};\nfunction centroidPoint(e, t) {\n\tst += e, ct += t, ++lt;\n}\nfunction centroidLineStart() {\n\tJ.point = centroidPointFirstLine;\n}\nfunction centroidPointFirstLine(e, t) {\n\tJ.point = centroidPointLine, centroidPoint(K = e, q = t);\n}\nfunction centroidPointLine(e, t) {\n\tvar n = e - K, r = t - q, i = qe(n * n + r * r);\n\tut += i * (K + e) / 2, dt += i * (q + t) / 2, ft += i, centroidPoint(K = e, q = t);\n}\nfunction centroidLineEnd() {\n\tJ.point = centroidPoint;\n}\nfunction centroidRingStart() {\n\tJ.point = centroidPointFirstRing;\n}\nfunction centroidRingEnd() {\n\tcentroidPointRing(gt, _t);\n}\nfunction centroidPointFirstRing(e, t) {\n\tJ.point = centroidPointRing, centroidPoint(gt = K = e, _t = q = t);\n}\nfunction centroidPointRing(e, t) {\n\tvar n = e - K, r = t - q, i = qe(n * n + r * r);\n\tut += i * (K + e) / 2, dt += i * (q + t) / 2, ft += i, i = q * e - K * t, pt += i * (K + e), mt += i * (q + t), ht += i * 3, centroidPoint(K = e, q = t);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/context.js\nfunction PathContext(e) {\n\tthis._context = e;\n}\nPathContext.prototype = {\n\t_radius: 4.5,\n\tpointRadius: function(e) {\n\t\treturn this._radius = e, this;\n\t},\n\tpolygonStart: function() {\n\t\tthis._line = 0;\n\t},\n\tpolygonEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._line === 0 && this._context.closePath(), this._point = NaN;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._context.moveTo(e, t), this._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._context.moveTo(e + this._radius, t), this._context.arc(e, t, this._radius, 0, Ge);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tresult: noop\n};\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/measure.js\nvar vt = adder_default(), yt, bt, xt, St, Ct, wt = {\n\tpoint: noop,\n\tlineStart: function() {\n\t\twt.point = lengthPointFirst;\n\t},\n\tlineEnd: function() {\n\t\tyt && lengthPoint(bt, xt), wt.point = noop;\n\t},\n\tpolygonStart: function() {\n\t\tyt = !0;\n\t},\n\tpolygonEnd: function() {\n\t\tyt = null;\n\t},\n\tresult: function() {\n\t\tvar e = +vt;\n\t\treturn vt.reset(), e;\n\t}\n};\nfunction lengthPointFirst(e, t) {\n\twt.point = lengthPoint, bt = St = e, xt = Ct = t;\n}\nfunction lengthPoint(e, t) {\n\tSt -= e, Ct -= t, vt.add(qe(St * St + Ct * Ct)), St = e, Ct = t;\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/string.js\nfunction PathString() {\n\tthis._string = [];\n}\nPathString.prototype = {\n\t_radius: 4.5,\n\t_circle: circle(4.5),\n\tpointRadius: function(e) {\n\t\treturn (e = +e) !== this._radius && (this._radius = e, this._circle = null), this;\n\t},\n\tpolygonStart: function() {\n\t\tthis._line = 0;\n\t},\n\tpolygonEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._line === 0 && this._string.push(\"Z\"), this._point = NaN;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._string.push(\"M\", e, \",\", t), this._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._string.push(\"L\", e, \",\", t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._circle ??= circle(this._radius), this._string.push(\"M\", e, \",\", t, this._circle);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tresult: function() {\n\t\tif (this._string.length) {\n\t\t\tvar e = this._string.join(\"\");\n\t\t\treturn this._string = [], e;\n\t\t} else return null;\n\t}\n};\nfunction circle(e) {\n\treturn \"m0,\" + e + \"a\" + e + \",\" + e + \" 0 1,1 0,\" + -2 * e + \"a\" + e + \",\" + e + \" 0 1,1 0,\" + 2 * e + \"z\";\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/index.js\nfunction path_default(e, t) {\n\tvar n = 4.5, r, i;\n\tfunction path(e) {\n\t\treturn e && (typeof n == \"function\" && i.pointRadius(+n.apply(this, arguments)), stream_default(e, r(i))), i.result();\n\t}\n\treturn path.area = function(e) {\n\t\treturn stream_default(e, r(G)), G.result();\n\t}, path.measure = function(e) {\n\t\treturn stream_default(e, r(wt)), wt.result();\n\t}, path.bounds = function(e) {\n\t\treturn stream_default(e, r(ot)), ot.result();\n\t}, path.centroid = function(e) {\n\t\treturn stream_default(e, r(J)), J.result();\n\t}, path.projection = function(t) {\n\t\treturn arguments.length ? (r = t == null ? (e = null, identity_default) : (e = t).stream, path) : e;\n\t}, path.context = function(e) {\n\t\treturn arguments.length ? (i = e == null ? (t = null, new PathString()) : new PathContext(t = e), typeof n != \"function\" && i.pointRadius(n), path) : t;\n\t}, path.pointRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : (i.pointRadius(+e), +e), path) : n;\n\t}, path.projection(e).context(t);\n}\n__name(path_default, \"default\");\n//#endregion\n//#region src/Contour.ts\nvar Contour = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"x\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"y\",\n\t\ttype: \"number\"\n\t}];\n\t_dataMinWeight;\n\t_dataMaxWeight;\n\tconstructor() {\n\t\tsuper(), this.xAxisGuideLines_default(!1).yAxisGuideLines_default(!1).xAxisType_default(\"linear\");\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n), this._palette = this._palette.switch(this.paletteID());\n\t\tlet r = this.flattenData(this.layerColumns(e), this.layerData(e)), i = density_default().x((t) => this.xPos(e, t)).y((t) => this.yPos(e, t)).size([this.width(), this.height()]).bandwidth(this.contourBandwidth())(r), a = i.map((e) => e.value), o = Math.min.apply(this, a), s = Math.max.apply(this, a);\n\t\tthis._dataMinWeight = o, this._dataMaxWeight = s;\n\t\tlet c = t.selectAll(\"path\").data(i);\n\t\tc.enter().append(\"path\").merge(c).attr(\"d\", path_default()).attr(\"fill\", (e) => this.showContourFill() ? this._palette(e.value, o, s) : \"none\").attr(\"stroke\", this.contourStrokeColor()).attr(\"stroke-linejoin\", \"round\").attr(\"stroke-width\", this.contourStrokeWidth()), c.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nContour.prototype._class += \" chart_Contour\", Contour.prototype.implements(e.prototype), Contour.prototype.publish(\"paletteID\", \"YlGnBu\", \"string\", \"Color palette for this widget\"), Contour.prototype.publish(\"useClonedPalette\", !0, \"boolean\", \"Enable or disable using a cloned palette\"), Contour.prototype.publish(\"showContourFill\", !0, \"boolean\", \"Show/hide the contour background colors\"), Contour.prototype.publish(\"showContour\", !0, \"boolean\", \"Show/hide the contour border lines\"), Contour.prototype.publish(\"contourBandwidth\", 40, \"number\", \"Controls the sensitivity of the contour grouping algorithm\"), Contour.prototype.publish(\"contourStrokeColor\", \"#2C3A47\", \"html-color\", \"Color of the contour border lines\"), Contour.prototype.publish(\"contourStrokeWidth\", 1, \"number\", \"Width of the contour border lines\");\n//#endregion\n//#region src/Gantt.ts\nvar Gantt = class extends Bar {\n\tconstructor() {\n\t\tsuper(), this.orientation_default(\"vertical\").xAxisType_default(\"ordinal\").yAxisType_default(\"time\");\n\t}\n};\nGantt.prototype._class += \" chart_Gantt\";\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/constant.js\nfunction constant_default(e) {\n\treturn function constant() {\n\t\treturn e;\n\t};\n}\n__name(constant_default, \"default\");\nvar Tt = Math.PI, Et = Tt / 2, Dt = 2 * Tt;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/arc.js\nfunction arcInnerRadius(e) {\n\treturn e.innerRadius;\n}\nfunction arcOuterRadius(e) {\n\treturn e.outerRadius;\n}\nfunction arcStartAngle(e) {\n\treturn e.startAngle;\n}\nfunction arcEndAngle(e) {\n\treturn e.endAngle;\n}\nfunction arcPadAngle(e) {\n\treturn e && e.padAngle;\n}\nfunction asin(e) {\n\treturn e >= 1 ? Et : e <= -1 ? -Et : Math.asin(e);\n}\nfunction intersect(e, t, n, r, i, a, o, s) {\n\tvar c = n - e, l = r - t, u = o - i, d = s - a, f = (u * (t - a) - d * (e - i)) / (d * c - u * l);\n\treturn [e + f * c, t + f * l];\n}\nfunction cornerTangents(e, t, n, r, i, a, o) {\n\tvar s = e - n, c = t - r, l = (o ? a : -a) / Math.sqrt(s * s + c * c), u = l * c, d = -l * s, f = e + u, p = t + d, m = n + u, h = r + d, g = (f + m) / 2, _ = (p + h) / 2, v = m - f, b = h - p, S = v * v + b * b, C = i - a, w = f * h - m * p, T = (b < 0 ? -1 : 1) * Math.sqrt(Math.max(0, C * C * S - w * w)), E = (w * b - v * T) / S, D = (-w * v - b * T) / S, O = (w * b + v * T) / S, k = (-w * v + b * T) / S, A = E - g, j = D - _, M = O - g, N = k - _;\n\treturn A * A + j * j > M * M + N * N && (E = O, D = k), {\n\t\tcx: E,\n\t\tcy: D,\n\t\tx01: -u,\n\t\ty01: -d,\n\t\tx11: E * (i / C - 1),\n\t\ty11: D * (i / C - 1)\n\t};\n}\nfunction arc_default() {\n\tvar e = arcInnerRadius, t = arcOuterRadius, n = constant_default(0), r = null, i = arcStartAngle, a = arcEndAngle, o = arcPadAngle, s = null;\n\tfunction arc() {\n\t\tvar c, l, u = +e.apply(this, arguments), d = +t.apply(this, arguments), f = i.apply(this, arguments) - Et, p = a.apply(this, arguments) - Et, m = Math.abs(p - f), h = p > f;\n\t\tif (s ||= c = path(), d < u && (l = d, d = u, u = l), !(d > 1e-12)) s.moveTo(0, 0);\n\t\telse if (m > Dt - 1e-12) s.moveTo(d * Math.cos(f), d * Math.sin(f)), s.arc(0, 0, d, f, p, !h), u > 1e-12 && (s.moveTo(u * Math.cos(p), u * Math.sin(p)), s.arc(0, 0, u, p, f, h));\n\t\telse {\n\t\t\tvar g = f, _ = p, v = f, b = p, S = m, C = m, w = o.apply(this, arguments) / 2, T = w > 1e-12 && (r ? +r.apply(this, arguments) : Math.sqrt(u * u + d * d)), E = Math.min(Math.abs(d - u) / 2, +n.apply(this, arguments)), D = E, O = E, k, A;\n\t\t\tif (T > 1e-12) {\n\t\t\t\tvar j = asin(T / u * Math.sin(w)), M = asin(T / d * Math.sin(w));\n\t\t\t\t(S -= j * 2) > 1e-12 ? (j *= h ? 1 : -1, v += j, b -= j) : (S = 0, v = b = (f + p) / 2), (C -= M * 2) > 1e-12 ? (M *= h ? 1 : -1, g += M, _ -= M) : (C = 0, g = _ = (f + p) / 2);\n\t\t\t}\n\t\t\tvar N = d * Math.cos(g), P = d * Math.sin(g), F = u * Math.cos(b), I = u * Math.sin(b);\n\t\t\tif (E > 1e-12) {\n\t\t\t\tvar L = d * Math.cos(_), R = d * Math.sin(_), z = u * Math.cos(v), ee = u * Math.sin(v);\n\t\t\t\tif (m < Tt) {\n\t\t\t\t\tvar B = S > 1e-12 ? intersect(N, P, z, ee, L, R, F, I) : [F, I], V = N - B[0], te = P - B[1], ne = L - B[0], re = R - B[1], ie = 1 / Math.sin(Math.acos((V * ne + te * re) / (Math.sqrt(V * V + te * te) * Math.sqrt(ne * ne + re * re))) / 2), ae = Math.sqrt(B[0] * B[0] + B[1] * B[1]);\n\t\t\t\t\tD = Math.min(E, (u - ae) / (ie - 1)), O = Math.min(E, (d - ae) / (ie + 1));\n\t\t\t\t}\n\t\t\t}\n\t\t\tC > 1e-12 ? O > 1e-12 ? (k = cornerTangents(z, ee, N, P, d, O, h), A = cornerTangents(L, R, F, I, d, O, h), s.moveTo(k.cx + k.x01, k.cy + k.y01), O < E ? s.arc(k.cx, k.cy, O, Math.atan2(k.y01, k.x01), Math.atan2(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, O, Math.atan2(k.y01, k.x01), Math.atan2(k.y11, k.x11), !h), s.arc(0, 0, d, Math.atan2(k.cy + k.y11, k.cx + k.x11), Math.atan2(A.cy + A.y11, A.cx + A.x11), !h), s.arc(A.cx, A.cy, O, Math.atan2(A.y11, A.x11), Math.atan2(A.y01, A.x01), !h))) : (s.moveTo(N, P), s.arc(0, 0, d, g, _, !h)) : s.moveTo(N, P), !(u > 1e-12) || !(S > 1e-12) ? s.lineTo(F, I) : D > 1e-12 ? (k = cornerTangents(F, I, L, R, u, -D, h), A = cornerTangents(N, P, z, ee, u, -D, h), s.lineTo(k.cx + k.x01, k.cy + k.y01), D < E ? s.arc(k.cx, k.cy, D, Math.atan2(k.y01, k.x01), Math.atan2(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, D, Math.atan2(k.y01, k.x01), Math.atan2(k.y11, k.x11), !h), s.arc(0, 0, u, Math.atan2(k.cy + k.y11, k.cx + k.x11), Math.atan2(A.cy + A.y11, A.cx + A.x11), h), s.arc(A.cx, A.cy, D, Math.atan2(A.y11, A.x11), Math.atan2(A.y01, A.x01), !h))) : s.arc(0, 0, u, b, v, h);\n\t\t}\n\t\tif (s.closePath(), c) return s = null, c + \"\" || null;\n\t}\n\treturn arc.centroid = function() {\n\t\tvar n = (+e.apply(this, arguments) + +t.apply(this, arguments)) / 2, r = (+i.apply(this, arguments) + +a.apply(this, arguments)) / 2 - Tt / 2;\n\t\treturn [Math.cos(r) * n, Math.sin(r) * n];\n\t}, arc.innerRadius = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default(+t), arc) : e;\n\t}, arc.outerRadius = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default(+e), arc) : t;\n\t}, arc.cornerRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default(+e), arc) : n;\n\t}, arc.padRadius = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default(+e), arc) : r;\n\t}, arc.startAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default(+e), arc) : i;\n\t}, arc.endAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default(+e), arc) : a;\n\t}, arc.padAngle = function(e) {\n\t\treturn arguments.length ? (o = typeof e == \"function\" ? e : constant_default(+e), arc) : o;\n\t}, arc.context = function(e) {\n\t\treturn arguments.length ? (s = e ?? null, arc) : s;\n\t}, arc;\n}\n__name(arc_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/linear.js\nfunction Linear(e) {\n\tthis._context = e;\n}\nLinear.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t}\n\t}\n};\nfunction linear_default(e) {\n\treturn new Linear(e);\n}\n__name(linear_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/point.js\nfunction x(e) {\n\treturn e[0];\n}\nfunction y(e) {\n\treturn e[1];\n}\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/line.js\nfunction line_default() {\n\tvar e = x, t = y, n = constant_default(!0), r = null, i = linear_default, a = null;\n\tfunction line(o) {\n\t\tvar s, c = o.length, l, u = !1, d;\n\t\tfor (r ?? (a = i(d = path())), s = 0; s <= c; ++s) !(s < c && n(l = o[s], s, o)) === u && ((u = !u) ? a.lineStart() : a.lineEnd()), u && a.point(+e(l, s, o), +t(l, s, o));\n\t\tif (d) return a = null, d + \"\" || null;\n\t}\n\treturn line.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default(+t), line) : e;\n\t}, line.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default(+e), line) : t;\n\t}, line.defined = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default(!!e), line) : n;\n\t}, line.curve = function(e) {\n\t\treturn arguments.length ? (i = e, r != null && (a = i(r)), line) : i;\n\t}, line.context = function(e) {\n\t\treturn arguments.length ? (e == null ? r = a = null : a = i(r = e), line) : r;\n\t}, line;\n}\n__name(line_default, \"default\"), curveRadial(linear_default);\nfunction Radial(e) {\n\tthis._curve = e;\n}\nRadial.prototype = {\n\tareaStart: function() {\n\t\tthis._curve.areaStart();\n\t},\n\tareaEnd: function() {\n\t\tthis._curve.areaEnd();\n\t},\n\tlineStart: function() {\n\t\tthis._curve.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tthis._curve.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._curve.point(t * Math.sin(e), t * -Math.cos(e));\n\t}\n};\nfunction curveRadial(e) {\n\tfunction radial(t) {\n\t\treturn new Radial(e(t));\n\t}\n\treturn radial._curve = e, radial;\n}\nMath.sqrt(1 / 3) * 2;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/symbol/star.js\nvar Ot = Math.sin(Tt / 10) / Math.sin(7 * Tt / 10);\nMath.sin(Dt / 10) * Ot, -Math.cos(Dt / 10) * Ot, Math.sqrt(3) / 2, (1 / Math.sqrt(12) / 2 + 1) * 3;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/noop.js\nfunction noop_default() {}\n__name(noop_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basis.js\nfunction point$3(e, t, n) {\n\te._context.bezierCurveTo((2 * e._x0 + e._x1) / 3, (2 * e._y0 + e._y1) / 3, (e._x0 + 2 * e._x1) / 3, (e._y0 + 2 * e._y1) / 3, (e._x0 + 4 * e._x1 + t) / 6, (e._y0 + 4 * e._y1 + n) / 6);\n}\n__name(point$3, \"point\");\nfunction Basis(e) {\n\tthis._context = e;\n}\nBasis.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 3: point$3(this, this._x1, this._y1);\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3, this._context.lineTo((5 * this._x0 + this._x1) / 6, (5 * this._y0 + this._y1) / 6);\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basisClosed.js\nfunction BasisClosed(e) {\n\tthis._context = e;\n}\nBasisClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x2, this._y2), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.moveTo((this._x2 + 2 * this._x3) / 3, (this._y2 + 2 * this._y3) / 3), this._context.lineTo((this._x3 + 2 * this._x2) / 3, (this._y3 + 2 * this._y2) / 3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2), this.point(this._x3, this._y3), this.point(this._x4, this._y4);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x2 = e, this._y2 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x4 = e, this._y4 = t, this._context.moveTo((this._x0 + 4 * this._x1 + e) / 6, (this._y0 + 4 * this._y1 + t) / 6);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basisOpen.js\nfunction BasisOpen(e) {\n\tthis._context = e;\n}\nBasisOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3;\n\t\t\t\tvar n = (this._x0 + 4 * this._x1 + e) / 6, r = (this._y0 + 4 * this._y1 + t) / 6;\n\t\t\t\tthis._line ? this._context.lineTo(n, r) : this._context.moveTo(n, r);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/bundle.js\nfunction Bundle(e, t) {\n\tthis._basis = new Basis(e), this._beta = t;\n}\nBundle.prototype = {\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [], this._basis.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length - 1;\n\t\tif (n > 0) for (var r = e[0], i = t[0], a = e[n] - r, o = t[n] - i, s = -1, c; ++s <= n;) c = s / n, this._basis.point(this._beta * e[s] + (1 - this._beta) * (r + c * a), this._beta * t[s] + (1 - this._beta) * (i + c * o));\n\t\tthis._x = this._y = null, this._basis.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n}, (function custom(e) {\n\tfunction bundle(t) {\n\t\treturn e === 1 ? new Basis(t) : new Bundle(t, e);\n\t}\n\treturn bundle.beta = function(e) {\n\t\treturn custom(+e);\n\t}, bundle;\n})(.85);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinal.js\nfunction point$2(e, t, n) {\n\te._context.bezierCurveTo(e._x1 + e._k * (e._x2 - e._x0), e._y1 + e._k * (e._y2 - e._y0), e._x2 + e._k * (e._x1 - t), e._y2 + e._k * (e._y1 - n), e._x2, e._y2);\n}\n__name(point$2, \"point\");\nfunction Cardinal(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinal.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$2(this, this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x1 = e, this._y1 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new Cardinal(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinalClosed.js\nfunction CardinalClosed(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinalClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x3, this._y3), this.point(this._x4, this._y4), this.point(this._x5, this._y5);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._context.moveTo(this._x4 = e, this._y4 = t);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x5 = e, this._y5 = t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new CardinalClosed(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinalOpen.js\nfunction CardinalOpen(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinalOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._line ? this._context.lineTo(this._x2, this._y2) : this._context.moveTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new CardinalOpen(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRom.js\nfunction point$1(e, t, n) {\n\tvar r = e._x1, i = e._y1, a = e._x2, o = e._y2;\n\tif (e._l01_a > 1e-12) {\n\t\tvar s = 2 * e._l01_2a + 3 * e._l01_a * e._l12_a + e._l12_2a, c = 3 * e._l01_a * (e._l01_a + e._l12_a);\n\t\tr = (r * s - e._x0 * e._l12_2a + e._x2 * e._l01_2a) / c, i = (i * s - e._y0 * e._l12_2a + e._y2 * e._l01_2a) / c;\n\t}\n\tif (e._l23_a > 1e-12) {\n\t\tvar l = 2 * e._l23_2a + 3 * e._l23_a * e._l12_a + e._l12_2a, u = 3 * e._l23_a * (e._l23_a + e._l12_a);\n\t\ta = (a * l + e._x1 * e._l23_2a - t * e._l12_2a) / u, o = (o * l + e._y1 * e._l23_2a - n * e._l12_2a) / u;\n\t}\n\te._context.bezierCurveTo(r, i, a, o, e._x2, e._y2);\n}\n__name(point$1, \"point\");\nfunction CatmullRom(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRom.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar kt = (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRom(t, e) : new Cardinal(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRomClosed.js\nfunction CatmullRomClosed(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRomClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x3, this._y3), this.point(this._x4, this._y4), this.point(this._x5, this._y5);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._context.moveTo(this._x4 = e, this._y4 = t);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x5 = e, this._y5 = t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRomClosed(t, e) : new CardinalClosed(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRomOpen.js\nfunction CatmullRomOpen(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRomOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._line ? this._context.lineTo(this._x2, this._y2) : this._context.moveTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRomOpen(t, e) : new CardinalOpen(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/linearClosed.js\nfunction LinearClosed(e) {\n\tthis._context = e;\n}\nLinearClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._point && this._context.closePath();\n\t},\n\tpoint: function(e, t) {\n\t\te = +e, t = +t, this._point ? this._context.lineTo(e, t) : (this._point = 1, this._context.moveTo(e, t));\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/monotone.js\nfunction sign(e) {\n\treturn e < 0 ? -1 : 1;\n}\nfunction slope3(e, t, n) {\n\tvar r = e._x1 - e._x0, i = t - e._x1, a = (e._y1 - e._y0) / (r || i < 0 && -0), o = (n - e._y1) / (i || r < 0 && -0), s = (a * i + o * r) / (r + i);\n\treturn (sign(a) + sign(o)) * Math.min(Math.abs(a), Math.abs(o), .5 * Math.abs(s)) || 0;\n}\nfunction slope2(e, t) {\n\tvar n = e._x1 - e._x0;\n\treturn n ? (3 * (e._y1 - e._y0) / n - t) / 2 : t;\n}\nfunction point(e, t, n) {\n\tvar r = e._x0, i = e._y0, a = e._x1, o = e._y1, s = (a - r) / 3;\n\te._context.bezierCurveTo(r + s, i + s * t, a - s, o - s * n, a, o);\n}\nfunction MonotoneX(e) {\n\tthis._context = e;\n}\nMonotoneX.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint(this, this._t0, slope2(this, this._t0));\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tvar n = NaN;\n\t\tif (e = +e, t = +t, !(e === this._x1 && t === this._y1)) {\n\t\t\tswitch (this._point) {\n\t\t\t\tcase 0:\n\t\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\tthis._point = 2;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tthis._point = 3, point(this, slope2(this, n = slope3(this, e, t)), n);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tpoint(this, this._t0, n = slope3(this, e, t));\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t, this._t0 = n;\n\t\t}\n\t}\n};\nfunction MonotoneY(e) {\n\tthis._context = new ReflectContext(e);\n}\n(MonotoneY.prototype = Object.create(MonotoneX.prototype)).point = function(e, t) {\n\tMonotoneX.prototype.point.call(this, t, e);\n};\nfunction ReflectContext(e) {\n\tthis._context = e;\n}\nReflectContext.prototype = {\n\tmoveTo: function(e, t) {\n\t\tthis._context.moveTo(t, e);\n\t},\n\tclosePath: function() {\n\t\tthis._context.closePath();\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._context.lineTo(t, e);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._context.bezierCurveTo(t, e, r, n, a, i);\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/natural.js\nfunction Natural(e) {\n\tthis._context = e;\n}\nNatural.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [];\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length;\n\t\tif (n) if (this._line ? this._context.lineTo(e[0], t[0]) : this._context.moveTo(e[0], t[0]), n === 2) this._context.lineTo(e[1], t[1]);\n\t\telse for (var r = controlPoints(e), i = controlPoints(t), a = 0, o = 1; o < n; ++a, ++o) this._context.bezierCurveTo(r[0][a], i[0][a], r[1][a], i[1][a], e[o], t[o]);\n\t\t(this._line || this._line !== 0 && n === 1) && this._context.closePath(), this._line = 1 - this._line, this._x = this._y = null;\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nfunction controlPoints(e) {\n\tvar t, n = e.length - 1, r, i = Array(n), a = Array(n), o = Array(n);\n\tfor (i[0] = 0, a[0] = 2, o[0] = e[0] + 2 * e[1], t = 1; t < n - 1; ++t) i[t] = 1, a[t] = 4, o[t] = 4 * e[t] + 2 * e[t + 1];\n\tfor (i[n - 1] = 2, a[n - 1] = 7, o[n - 1] = 8 * e[n - 1] + e[n], t = 1; t < n; ++t) r = i[t] / a[t - 1], a[t] -= r, o[t] -= r * o[t - 1];\n\tfor (i[n - 1] = o[n - 1] / a[n - 1], t = n - 2; t >= 0; --t) i[t] = (o[t] - i[t + 1]) / a[t];\n\tfor (a[n - 1] = (e[n] + i[n - 1]) / 2, t = 0; t < n - 1; ++t) a[t] = 2 * e[t + 1] - i[t + 1];\n\treturn [i, a];\n}\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/step.js\nfunction Step$1(e, t) {\n\tthis._context = e, this._t = t;\n}\n__name(Step$1, \"Step\"), Step$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = this._y = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t0 < this._t && this._t < 1 && this._point === 2 && this._context.lineTo(this._x, this._y), (this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line >= 0 && (this._t = 1 - this._t, this._line = 1 - this._line);\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tif (this._t <= 0) this._context.lineTo(this._x, t), this._context.lineTo(e, t);\n\t\t\t\telse {\n\t\t\t\t\tvar n = this._x * (1 - this._t) + e * this._t;\n\t\t\t\t\tthis._context.lineTo(n, this._y), this._context.lineTo(n, t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x = e, this._y = t;\n\t}\n}, Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/indexRollupNext.js\nvar At = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? function(e) {\n\treturn typeof e;\n} : function(e) {\n\treturn e && typeof Symbol == \"function\" && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e;\n}, classCallCheck = function(e, t) {\n\tif (!(e instanceof t)) throw TypeError(\"Cannot call a class as a function\");\n}, jt = function() {\n\tfunction defineProperties(e, t) {\n\t\tfor (var n = 0; n < t.length; n++) {\n\t\t\tvar r = t[n];\n\t\t\tr.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(e, r.key, r);\n\t\t}\n\t}\n\treturn function(e, t, n) {\n\t\treturn t && defineProperties(e.prototype, t), n && defineProperties(e, n), e;\n\t};\n}(), Y = Object.assign || function(e) {\n\tfor (var t = 1; t < arguments.length; t++) {\n\t\tvar n = arguments[t];\n\t\tfor (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);\n\t}\n\treturn e;\n}, X = function get(e, t, n) {\n\te === null && (e = Function.prototype);\n\tvar r = Object.getOwnPropertyDescriptor(e, t);\n\tif (r === void 0) {\n\t\tvar i = Object.getPrototypeOf(e);\n\t\treturn i === null ? void 0 : get(i, t, n);\n\t} else if (\"value\" in r) return r.value;\n\telse {\n\t\tvar a = r.get;\n\t\treturn a === void 0 ? void 0 : a.call(n);\n\t}\n}, inherits = function(e, t) {\n\tif (typeof t != \"function\" && t !== null) throw TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n\te.prototype = Object.create(t && t.prototype, { constructor: {\n\t\tvalue: e,\n\t\tenumerable: !1,\n\t\twritable: !0,\n\t\tconfigurable: !0\n\t} }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t);\n}, possibleConstructorReturn = function(e, t) {\n\tif (!e) throw ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n\treturn t && (typeof t == \"object\" || typeof t == \"function\") ? t : e;\n}, toConsumableArray = function(e) {\n\tif (Array.isArray(e)) {\n\t\tfor (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];\n\t\treturn n;\n\t} else return Array.from(e);\n}, Mt = function() {\n\tfunction Annotation(e) {\n\t\tvar t = e.x, n = t === void 0 ? 0 : t, r = e.y, i = r === void 0 ? 0 : r, a = e.nx, o = e.ny, s = e.dy, c = s === void 0 ? 0 : s, l = e.dx, u = l === void 0 ? 0 : l, d = e.color, f = d === void 0 ? \"grey\" : d, p = e.data, m = e.type, h = e.subject, g = e.connector, _ = e.note, v = e.disable, b = e.id, S = e.className;\n\t\tclassCallCheck(this, Annotation), this._dx = a === void 0 ? u : a - n, this._dy = o === void 0 ? c : o - i, this._x = n, this._y = i, this._color = f, this.id = b, this._className = S || \"\", this._type = m || \"\", this.data = p, this.note = _ || {}, this.connector = g || {}, this.subject = h || {}, this.disable = v || [];\n\t}\n\treturn jt(Annotation, [\n\t\t{\n\t\t\tkey: \"updatePosition\",\n\t\t\tvalue: function updatePosition() {\n\t\t\t\tthis.type.setPosition && (this.type.setPosition(), this.type.subject && this.type.subject.selectAll(\":not(.handle)\").nodes().length !== 0 && this.type.redrawSubject());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"clearComponents\",\n\t\t\tvalue: function clearComponents() {\n\t\t\t\tthis.type.clearComponents && this.type.clearComponents();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateOffset\",\n\t\t\tvalue: function updateOffset() {\n\t\t\t\tthis.type.setOffset && (this.type.setOffset(), this.type.connector.selectAll(\":not(.handle)\").nodes().length !== 0 && this.type.redrawConnector(), this.type.redrawNote());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"className\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._className;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._className = e, this.type.setClassName && this.type.setClassName();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"type\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._type;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._type = e, this.clearComponents();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"x\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._x;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._x = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"y\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._y;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._y = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"color\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._color;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._color = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dx\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._dx;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dx = e, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dy\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._dy;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dy = e, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"nx\",\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dx = e - this._x, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"ny\",\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dy = e - this._y, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"offset\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._dx,\n\t\t\t\t\ty: this._dy\n\t\t\t\t};\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tvar t = e.x, n = e.y;\n\t\t\t\tthis._dx = t, this._dy = n, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"position\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._x,\n\t\t\t\t\ty: this._y\n\t\t\t\t};\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tvar t = e.x, n = e.y;\n\t\t\t\tthis._x = t, this._y = n, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"translation\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._x + this._dx,\n\t\t\t\t\ty: this._y + this._dy\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"json\",\n\t\t\tget: function get$$1() {\n\t\t\t\tvar e = {\n\t\t\t\t\tx: this._x,\n\t\t\t\t\ty: this._y,\n\t\t\t\t\tdx: this._dx,\n\t\t\t\t\tdy: this._dy\n\t\t\t\t};\n\t\t\t\treturn this.data && Object.keys(this.data).length > 0 && (e.data = this.data), this.type && (e.type = this.type), this._className && (e.className = this._className), Object.keys(this.connector).length > 0 && (e.connector = this.connector), Object.keys(this.subject).length > 0 && (e.subject = this.subject), Object.keys(this.note).length > 0 && (e.note = this.note), e;\n\t\t\t}\n\t\t}\n\t]), Annotation;\n}(), Nt = function() {\n\tfunction AnnotationCollection(e) {\n\t\tvar t = e.annotations, n = e.accessors, r = e.accessorsInverse;\n\t\tclassCallCheck(this, AnnotationCollection), this.accessors = n, this.accessorsInverse = r, this.annotations = t;\n\t}\n\treturn jt(AnnotationCollection, [\n\t\t{\n\t\t\tkey: \"clearTypes\",\n\t\t\tvalue: function clearTypes(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type = void 0, t.subject = e && e.subject || t.subject, t.connector = e && e.connector || t.connector, t.note = e && e.note || t.note;\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPositionWithAccessors\",\n\t\t\tvalue: function setPositionWithAccessors() {\n\t\t\t\tvar e = this;\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type.setPositionWithAccessors(e.accessors);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"editMode\",\n\t\t\tvalue: function editMode(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && (t.type.editMode = e, t.type.updateEditMode());\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateDisable\",\n\t\t\tvalue: function updateDisable(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.disable = e, t.type && e.forEach(function(e) {\n\t\t\t\t\t\tt.type[e] && (t.type[e].remove && t.type[e].remove(), t.type[e] = void 0);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateTextWrap\",\n\t\t\tvalue: function updateTextWrap(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && t.type.updateTextWrap && t.type.updateTextWrap(e);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateText\",\n\t\t\tvalue: function updateText() {\n\t\t\t\tthis.annotations.forEach(function(e) {\n\t\t\t\t\te.type && e.type.drawText && e.type.drawText();\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateNotePadding\",\n\t\t\tvalue: function updateNotePadding(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && (t.type.notePadding = e);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"json\",\n\t\t\tget: function get$$1() {\n\t\t\t\tvar e = this;\n\t\t\t\treturn this.annotations.map(function(t) {\n\t\t\t\t\tvar n = t.json;\n\t\t\t\t\treturn e.accessorsInverse && t.data && (n.data = {}, Object.keys(e.accessorsInverse).forEach(function(r) {\n\t\t\t\t\t\tn.data[r] = e.accessorsInverse[r]({\n\t\t\t\t\t\t\tx: t.x,\n\t\t\t\t\t\t\ty: t.y\n\t\t\t\t\t\t});\n\t\t\t\t\t})), n;\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"noteNodes\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this.annotations.map(function(e) {\n\t\t\t\t\treturn Y({}, e.type.getNoteBBoxOffset(), {\n\t\t\t\t\t\tpositionX: e.x,\n\t\t\t\t\t\tpositionY: e.y\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t]), AnnotationCollection;\n}(), Pt = function pointHandle(e) {\n\tvar t = e.cx, n = t === void 0 ? 0 : t, r = e.cy;\n\treturn { move: {\n\t\tx: n,\n\t\ty: r === void 0 ? 0 : r\n\t} };\n}, Ft = function circleHandles(e) {\n\tvar t = e.cx, n = t === void 0 ? 0 : t, r = e.cy, i = r === void 0 ? 0 : r, a = e.r1, o = e.r2, s = e.padding, c = { move: {\n\t\tx: n,\n\t\ty: i\n\t} };\n\treturn a !== void 0 && (c.r1 = {\n\t\tx: n + a / Math.sqrt(2),\n\t\ty: i + a / Math.sqrt(2)\n\t}), o !== void 0 && (c.r2 = {\n\t\tx: n + o / Math.sqrt(2),\n\t\ty: i + o / Math.sqrt(2)\n\t}), s !== void 0 && (c.padding = {\n\t\tx: n + a + s,\n\t\ty: i\n\t}), c;\n}, It = function addHandles(e) {\n\tvar t = e.group, n = e.handles, r = e.r, i = r === void 0 ? 10 : r, a = t.selectAll(\"circle.handle\").data(n);\n\ta.enter().append(\"circle\").attr(\"class\", \"handle\").attr(\"fill\", \"grey\").attr(\"fill-opacity\", .1).attr(\"cursor\", \"move\").attr(\"stroke-dasharray\", 5).attr(\"stroke\", \"grey\").call(b().container(z(\"g.annotations\").node()).on(\"start\", function(e) {\n\t\treturn e.start && e.start(e);\n\t}).on(\"drag\", function(e) {\n\t\treturn e.drag && e.drag(e);\n\t}).on(\"end\", function(e) {\n\t\treturn e.end && e.end(e);\n\t})), t.selectAll(\"circle.handle\").attr(\"cx\", function(e) {\n\t\treturn e.x;\n\t}).attr(\"cy\", function(e) {\n\t\treturn e.y;\n\t}).attr(\"r\", function(e) {\n\t\treturn e.r || i;\n\t}).attr(\"class\", function(e) {\n\t\treturn \"handle \" + (e.className || \"\");\n\t}), a.exit().remove();\n}, Lt = function leftRightDynamic(e, t) {\n\treturn (e === \"dynamic\" || e === \"left\" || e === \"right\") && (e = t < 0 ? \"top\" : \"bottom\"), e;\n}, Rt = function topBottomDynamic(e, t) {\n\treturn (e === \"dynamic\" || e === \"top\" || e === \"bottom\") && (e = t < 0 ? \"right\" : \"left\"), e;\n}, zt = [\n\t\"topBottom\",\n\t\"top\",\n\t\"bottom\"\n], Bt = [\n\t\"leftRight\",\n\t\"left\",\n\t\"right\"\n], noteAlignment = (function(e) {\n\tvar t = e.padding, n = t === void 0 ? 0 : t, r = e.bbox, i = r === void 0 ? {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t} : r, a = e.align, o = e.orientation, s = e.offset, c = s === void 0 ? {\n\t\tx: 0,\n\t\ty: 0\n\t} : s, l = -i.x, u = 0;\n\treturn zt.indexOf(o) === -1 ? Bt.indexOf(o) !== -1 && (a = Lt(a, c.y), c.x < 0 && o === \"leftRight\" || o === \"left\" ? l -= i.width + n : l += n, a === \"middle\" ? u -= i.height / 2 : a === \"top\" && (u -= i.height)) : (a = Rt(a, c.x), c.y < 0 && o === \"topBottom\" || o === \"top\" ? u -= i.height + n : u += n, a === \"middle\" ? l -= i.width / 2 : a === \"right\" && (l -= i.width)), {\n\t\tx: l,\n\t\ty: u\n\t};\n}), Z = function lineBuilder(e) {\n\tvar t = e.data, n = e.curve, r = n === void 0 ? linear_default : n, i = e.canvasContext, a = e.className, o = e.classID, s = line_default().curve(r), c = {\n\t\ttype: \"path\",\n\t\tclassName: a,\n\t\tclassID: o,\n\t\tdata: t\n\t};\n\treturn i ? (s.context(i), c.pathMethods = s) : c.attrs = { d: s(t) }, c;\n}, Vt = function arcBuilder(e) {\n\tvar t = e.data, n = e.canvasContext, r = {\n\t\ttype: \"path\",\n\t\tclassName: e.className,\n\t\tclassID: e.classID,\n\t\tdata: t\n\t}, i = arc_default().innerRadius(t.innerRadius || 0).outerRadius(t.outerRadius || t.radius || 2).startAngle(t.startAngle || 0).endAngle(t.endAngle || 2 * Math.PI);\n\treturn n ? (i.context(n), r.pathMethods = lineGen) : r.attrs = { d: i() }, r;\n}, noteVertical = (function(e) {\n\tvar t = e.align, n = e.x, r = n === void 0 ? 0 : n, i = e.y, a = i === void 0 ? 0 : i, o = e.bbox, s = e.offset;\n\treturn t = Lt(t, s.y), t === \"top\" ? a -= o.height : t === \"middle\" && (a -= o.height / 2), { components: [Z({\n\t\tdata: [[r, a], [r, a + o.height]],\n\t\tclassName: \"note-line\"\n\t})] };\n}), noteHorizontal = (function(e) {\n\tvar t = e.align, n = e.x, r = n === void 0 ? 0 : n, i = e.y, a = i === void 0 ? 0 : i, o = e.offset, s = e.bbox;\n\treturn t = Rt(t, o.x), t === \"right\" ? r -= s.width : t === \"middle\" && (r -= s.width / 2), { components: [Z({\n\t\tdata: [[r, a], [r + s.width, a]],\n\t\tclassName: \"note-line\"\n\t})] };\n}), Ht = function lineSetup(e) {\n\tvar t = e.type, n = e.subjectType, r = t.annotation, i = r.position, a = r.x - i.x, o = a + r.dx, s = r.y - i.y, c = s + r.dy, l = r.subject;\n\tif (n === \"circle\" && (l.outerRadius || l.radius)) {\n\t\tvar u = Math.sqrt((a - o) * (a - o) + (s - c) * (s - c)), d = Math.asin(-c / u), f = l.outerRadius || l.radius + (l.radiusPadding || 0);\n\t\ta = Math.abs(Math.cos(d) * f) * (o < 0 ? -1 : 1), s = Math.abs(Math.sin(d) * f) * (c < 0 ? -1 : 1);\n\t}\n\tif (n === \"rect\") {\n\t\tvar p = l.width, m = l.height;\n\t\t(p > 0 && r.dx > 0 || p < 0 && r.dx < 0) && (a = Math.abs(p) > Math.abs(r.dx) ? p / 2 : p), (m > 0 && r.dy > 0 || m < 0 && r.dy < 0) && (s = Math.abs(m) > Math.abs(r.dy) ? m / 2 : m), a === p / 2 && s === m / 2 && (a = o, s = c);\n\t}\n\treturn [[a, s], [o, c]];\n}, connectorLine = (function(e) {\n\treturn { components: [Z({\n\t\tdata: Ht(e),\n\t\tclassName: \"connector\"\n\t})] };\n}), connectorElbow = (function(e) {\n\tvar t = e.type, n = e.subjectType, r = t.annotation, i = r.position, a = r.x - i.x, o = a + r.dx, s = r.y - i.y, c = s + r.dy, l = r.subject;\n\tif (n === \"rect\") {\n\t\tvar u = l.width, d = l.height;\n\t\t(u > 0 && r.dx > 0 || u < 0 && r.dx < 0) && (a = Math.abs(u) > Math.abs(r.dx) ? u / 2 : u), (d > 0 && r.dy > 0 || d < 0 && r.dy < 0) && (s = Math.abs(d) > Math.abs(r.dy) ? d / 2 : d), a === u / 2 && s === d / 2 && (a = o, s = c);\n\t}\n\tvar f = [[a, s], [o, c]], p = c - s, m = o - a, h = o, g = c, _ = c < s && o > a || o < a && c > s ? -1 : 1;\n\tif (Math.abs(m) < Math.abs(p) ? (h = o, g = s + m * _) : (g = c, h = a + p * _), n === \"circle\" && (l.outerRadius || l.radius)) {\n\t\tvar v = (l.outerRadius || l.radius) + (l.radiusPadding || 0), b = v / Math.sqrt(2);\n\t\tif (Math.abs(m) > b && Math.abs(p) > b) a = b * (o < 0 ? -1 : 1), s = b * (c < 0 ? -1 : 1), f = [\n\t\t\t[a, s],\n\t\t\t[h, g],\n\t\t\t[o, c]\n\t\t];\n\t\telse if (Math.abs(m) > Math.abs(p)) {\n\t\t\tvar S = Math.asin(-c / v);\n\t\t\ta = Math.abs(Math.cos(S) * v) * (o < 0 ? -1 : 1), f = [[a, c], [o, c]];\n\t\t} else {\n\t\t\tvar C = Math.acos(o / v);\n\t\t\ts = Math.abs(Math.sin(C) * v) * (c < 0 ? -1 : 1), f = [[o, s], [o, c]];\n\t\t}\n\t} else f = [\n\t\t[a, s],\n\t\t[h, g],\n\t\t[o, c]\n\t];\n\treturn { components: [Z({\n\t\tdata: f,\n\t\tclassName: \"connector\"\n\t})] };\n}), connectorCurve = (function(e) {\n\tvar t = e.type, n = e.connectorData, r = e.subjectType;\n\tn ||= {}, (!n.points || typeof n.points == \"number\") && (n.points = Ut(t.annotation.offset, n.points)), n.curve ||= kt;\n\tvar i = [];\n\tif (t.editMode) {\n\t\tvar a = n.points.map(function(e, t) {\n\t\t\treturn Y({}, Pt({\n\t\t\t\tcx: e[0],\n\t\t\t\tcy: e[1]\n\t\t\t}), { index: t });\n\t\t}), o = function updatePoint(e) {\n\t\t\tn.points[e][0] += S.dx, n.points[e][1] += S.dy, t.redrawConnector();\n\t\t};\n\t\ti = t.mapHandles(a.map(function(e) {\n\t\t\treturn Y({}, e.move, { drag: o.bind(t, e.index) });\n\t\t}));\n\t}\n\tvar s = Ht({\n\t\ttype: t,\n\t\tsubjectType: r\n\t});\n\treturn s = [s[0]].concat(toConsumableArray(n.points), [s[1]]), {\n\t\tcomponents: [Z({\n\t\t\tdata: s,\n\t\t\tcurve: n.curve,\n\t\t\tclassName: \"connector\"\n\t\t})],\n\t\thandles: i\n\t};\n}), Ut = function createPoints(e) {\n\tfor (var t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 2, n = {\n\t\tx: e.x / (t + 1),\n\t\ty: e.y / (t + 1)\n\t}, r = [], i = 1; i <= t; i++) r.push([n.x * i + i % 2 * 20, n.y * i - i % 2 * 20]);\n\treturn r;\n}, connectorArrow = (function(e) {\n\tvar t = e.annotation, n = e.start, r = e.end, i = e.scale, a = i === void 0 ? 1 : i, o = t.position;\n\tn = n ? [-r[0] + n[0], -r[1] + n[1]] : [t.dx, t.dy], r ||= [t.x - o.x, t.y - o.y];\n\tvar s = r[0], c = r[1], l = n[0], u = n[1], d = 10 * a, f = 16 / 180 * Math.PI, p = Math.atan(u / l);\n\treturn l < 0 && (p += Math.PI), { components: [Z({\n\t\tdata: [\n\t\t\t[s, c],\n\t\t\t[Math.cos(p + f) * d + s, Math.sin(p + f) * d + c],\n\t\t\t[Math.cos(p - f) * d + s, Math.sin(p - f) * d + c],\n\t\t\t[s, c]\n\t\t],\n\t\tclassName: \"connector-end connector-arrow\",\n\t\tclassID: \"connector-end\"\n\t})] };\n}), connectorDot = (function(e) {\n\tvar t = e.line, n = e.scale, r = Vt({\n\t\tclassName: \"connector-end connector-dot\",\n\t\tclassID: \"connector-end\",\n\t\tdata: { radius: 3 * Math.sqrt(n === void 0 ? 1 : n) }\n\t});\n\treturn r.attrs.transform = \"translate(\" + t.data[0][0] + \", \" + t.data[0][1] + \")\", { components: [r] };\n}), subjectCircle = (function(e) {\n\tvar t = e.subjectData, n = e.type;\n\t!t.radius && !t.outerRadius && (t.radius = 20);\n\tvar r = [], i = Vt({\n\t\tdata: t,\n\t\tclassName: \"subject\"\n\t});\n\tif (n.editMode) {\n\t\tvar a = Ft({\n\t\t\tr1: i.data.outerRadius || i.data.radius,\n\t\t\tr2: i.data.innerRadius,\n\t\t\tpadding: t.radiusPadding\n\t\t}), o = function updateRadius(e) {\n\t\t\tt[e] = t[e] + S.dx * Math.sqrt(2), n.redrawSubject(), n.redrawConnector();\n\t\t}, s = [Y({}, a.r1, { drag: o.bind(n, t.outerRadius === void 0 ? \"radius\" : \"outerRadius\") })];\n\t\tt.innerRadius && s.push(Y({}, a.r2, { drag: o.bind(n, \"innerRadius\") })), r = n.mapHandles(s);\n\t}\n\treturn i.attrs[\"fill-opacity\"] = 0, {\n\t\tcomponents: [i],\n\t\thandles: r\n\t};\n}), subjectRect = (function(e) {\n\tvar t = e.subjectData, n = e.type;\n\tt.width ||= 100, t.height ||= 100;\n\tvar r = [], i = t.width, a = t.height, o = Z({\n\t\tdata: [\n\t\t\t[0, 0],\n\t\t\t[i, 0],\n\t\t\t[i, a],\n\t\t\t[0, a],\n\t\t\t[0, 0]\n\t\t],\n\t\tclassName: \"subject\"\n\t});\n\tif (n.editMode) {\n\t\tvar s = [{\n\t\t\tx: i,\n\t\t\ty: a / 2,\n\t\t\tdrag: function updateWidth() {\n\t\t\t\tt.width = S.x, n.redrawSubject(), n.redrawConnector();\n\t\t\t}.bind(n)\n\t\t}, {\n\t\t\tx: i / 2,\n\t\t\ty: a,\n\t\t\tdrag: function updateHeight() {\n\t\t\t\tt.height = S.y, n.redrawSubject(), n.redrawConnector();\n\t\t\t}.bind(n)\n\t\t}];\n\t\tr = n.mapHandles(s);\n\t}\n\treturn o.attrs[\"fill-opacity\"] = .1, {\n\t\tcomponents: [o],\n\t\thandles: r\n\t};\n}), subjectThreshold = (function(e) {\n\tvar t = e.subjectData, n = e.type.annotation.position, r = (t.x1 === void 0 ? n.x : t.x1) - n.x, i = (t.x2 === void 0 ? n.x : t.x2) - n.x, a = (t.y1 === void 0 ? n.y : t.y1) - n.y, o = (t.y2 === void 0 ? n.y : t.y2) - n.y;\n\treturn { components: [Z({\n\t\tdata: [[r, a], [i, o]],\n\t\tclassName: \"subject\"\n\t})] };\n}), subjectBadge = (function(e) {\n\tvar t = e.subjectData, n = t === void 0 ? {} : t, r = e.type, i = r === void 0 ? {} : r, a = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, o = i.typeSettings && i.typeSettings.subject;\n\tn.radius || (o && o.radius ? n.radius = o.radius : n.radius = 14), n.x || o && o.x && (n.x = o.x), n.y || o && o.y && (n.y = o.y);\n\tvar s = [], c = [], l = n.radius, u = l * .7, d = 0, f = 0, p = Math.sqrt(2) * l, m = {\n\t\txleftcorner: -l,\n\t\txrightcorner: l,\n\t\tytopcorner: -l,\n\t\tybottomcorner: l,\n\t\txleft: -p,\n\t\txright: p,\n\t\tytop: -p,\n\t\tybottom: p\n\t};\n\tn.x && !n.y ? d = m[\"x\" + n.x] : n.y && !n.x ? f = m[\"y\" + n.y] : n.x && n.y && (d = m[\"x\" + n.x + \"corner\"], f = m[\"y\" + n.y + \"corner\"]);\n\tvar h = \"translate(\" + d + \", \" + f + \")\", g = Vt({\n\t\tclassName: \"subject\",\n\t\tdata: { radius: l }\n\t});\n\tg.attrs.transform = h, g.attrs.fill = a.color, g.attrs[\"stroke-linecap\"] = \"round\", g.attrs[\"stroke-width\"] = \"3px\";\n\tvar _ = Vt({\n\t\tclassName: \"subject-ring\",\n\t\tdata: {\n\t\t\touterRadius: l,\n\t\t\tinnerRadius: u\n\t\t}\n\t});\n\t_.attrs.transform = h, _.attrs[\"stroke-width\"] = \"3px\", _.attrs.fill = \"white\";\n\tvar v = void 0;\n\tif (d && f || !d && !f) v = Z({\n\t\tclassName: \"subject-pointer\",\n\t\tdata: [\n\t\t\t[0, 0],\n\t\t\t[d || 0, 0],\n\t\t\t[0, f || 0],\n\t\t\t[0, 0]\n\t\t]\n\t});\n\telse if (d || f) {\n\t\tvar b = function notCornerPointerXY(e) {\n\t\t\tvar t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 1;\n\t\t\treturn e && e / Math.sqrt(2) / Math.sqrt(2) || t * l / Math.sqrt(2);\n\t\t};\n\t\tv = Z({\n\t\t\tclassName: \"subject-pointer\",\n\t\t\tdata: [\n\t\t\t\t[0, 0],\n\t\t\t\t[b(d), b(f)],\n\t\t\t\t[b(d, -1), b(f, -1)],\n\t\t\t\t[0, 0]\n\t\t\t]\n\t\t});\n\t}\n\tif (v && (v.attrs.fill = a.color, v.attrs[\"stroke-linecap\"] = \"round\", v.attrs[\"stroke-width\"] = \"3px\", c.push(v)), i.editMode) {\n\t\tvar C = {\n\t\t\tx: d * 2,\n\t\t\ty: f * 2,\n\t\t\tdrag: function dragBadge() {\n\t\t\t\tn.x = S.x < -l * 2 ? \"left\" : S.x > l * 2 ? \"right\" : void 0, n.y = S.y < -l * 2 ? \"top\" : S.y > l * 2 ? \"bottom\" : void 0, i.redrawSubject();\n\t\t\t}.bind(i)\n\t\t};\n\t\t!C.x && !C.y && (C.y = -l), s = i.mapHandles([C]);\n\t}\n\tvar w = void 0;\n\treturn n.text && (w = {\n\t\ttype: \"text\",\n\t\tclassName: \"badge-text\",\n\t\tattrs: {\n\t\t\tfill: \"white\",\n\t\t\tstroke: \"none\",\n\t\t\t\"font-size\": \".7em\",\n\t\t\ttext: n.text,\n\t\t\t\"text-anchor\": \"middle\",\n\t\t\tdy: \".25em\",\n\t\t\tx: d,\n\t\t\ty: f\n\t\t}\n\t}), c.push(g), c.push(_), c.push(w), {\n\t\tcomponents: c,\n\t\thandles: s\n\t};\n}), Wt = function() {\n\tfunction Type(e) {\n\t\tvar t = e.a, n = e.annotation, r = e.editMode, i = e.dispatcher, a = e.notePadding, o = e.accessors;\n\t\tif (classCallCheck(this, Type), this.a = t, this.note = n.disable.indexOf(\"note\") === -1 && t.select(\"g.annotation-note\"), this.noteContent = this.note && t.select(\"g.annotation-note-content\"), this.connector = n.disable.indexOf(\"connector\") === -1 && t.select(\"g.annotation-connector\"), this.subject = n.disable.indexOf(\"subject\") === -1 && t.select(\"g.annotation-subject\"), this.dispatcher = i, i) {\n\t\t\tvar s = Yt.bind(null, i, n);\n\t\t\ts({\n\t\t\t\tcomponent: this.note,\n\t\t\t\tname: \"note\"\n\t\t\t}), s({\n\t\t\t\tcomponent: this.connector,\n\t\t\t\tname: \"connector\"\n\t\t\t}), s({\n\t\t\t\tcomponent: this.subject,\n\t\t\t\tname: \"subject\"\n\t\t\t});\n\t\t}\n\t\tthis.annotation = n, this.editMode = n.editMode || r, this.notePadding = a === void 0 ? 3 : a, this.offsetCornerX = 0, this.offsetCornerY = 0, o && n.data && this.init(o);\n\t}\n\treturn jt(Type, [\n\t\t{\n\t\t\tkey: \"init\",\n\t\t\tvalue: function init(e) {\n\t\t\t\tthis.annotation.x || this.mapX(e), this.annotation.y || this.mapY(e);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapY\",\n\t\t\tvalue: function mapY(e) {\n\t\t\t\te.y && (this.annotation.y = e.y(this.annotation.data));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapX\",\n\t\t\tvalue: function mapX(e) {\n\t\t\t\te.x && (this.annotation.x = e.x(this.annotation.data));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateEditMode\",\n\t\t\tvalue: function updateEditMode() {\n\t\t\t\tthis.a.selectAll(\"circle.handle\").remove();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawOnSVG\",\n\t\t\tvalue: function drawOnSVG(e, t) {\n\t\t\t\tvar n = this;\n\t\t\t\tArray.isArray(t) || (t = [t]), t.filter(function(e) {\n\t\t\t\t\treturn e;\n\t\t\t\t}).forEach(function(t) {\n\t\t\t\t\tvar r = t.type, i = t.className, a = t.attrs, o = t.handles, s = t.classID;\n\t\t\t\t\tif (r === \"handle\") It({\n\t\t\t\t\t\tgroup: e,\n\t\t\t\t\t\tr: a && a.r,\n\t\t\t\t\t\thandles: o\n\t\t\t\t\t});\n\t\t\t\t\telse {\n\t\t\t\t\t\tQ(e, [n.annotation], r, i, s);\n\t\t\t\t\t\tfor (var c = e.select(r + \".\" + (s || i)), l = Object.keys(a), u = [], d = c.node().attributes, f = d.length - 1; f >= 0; f--) {\n\t\t\t\t\t\t\tvar p = d[f].name;\n\t\t\t\t\t\t\tl.indexOf(p) === -1 && p !== \"class\" && u.push(p);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tl.forEach(function(e) {\n\t\t\t\t\t\t\te === \"text\" ? c.text(a[e]) : c.attr(e, a[e]);\n\t\t\t\t\t\t}), u.forEach(function(e) {\n\t\t\t\t\t\t\treturn c.attr(e, null);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"getNoteBBox\",\n\t\t\tvalue: function getNoteBBox() {\n\t\t\t\treturn Zt(this.note, \".annotation-note-content text\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"getNoteBBoxOffset\",\n\t\t\tvalue: function getNoteBBoxOffset() {\n\t\t\t\tvar e = Zt(this.note, \".annotation-note-content\"), t = this.noteContent.attr(\"transform\").split(/\\(|\\,|\\)/g);\n\t\t\t\treturn e.offsetCornerX = parseFloat(t[1]) + this.annotation.dx, e.offsetCornerY = parseFloat(t[2]) + this.annotation.dy, e.offsetX = this.annotation.dx, e.offsetY = this.annotation.dy, e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawSubject\",\n\t\t\tvalue: function drawSubject() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.subject, r = t.type, i = {\n\t\t\t\t\ttype: this,\n\t\t\t\t\tsubjectData: n\n\t\t\t\t}, a = {};\n\t\t\t\tr === \"circle\" ? a = subjectCircle(i) : r === \"rect\" ? a = subjectRect(i) : r === \"threshold\" ? a = subjectThreshold(i) : r === \"badge\" && (a = subjectBadge(i, this.annotation));\n\t\t\t\tvar o = a, s = o.components, c = s === void 0 ? [] : s, l = o.handles, u = l === void 0 ? [] : l;\n\t\t\t\treturn c.forEach(function(t) {\n\t\t\t\t\tt && t.attrs && !t.attrs.stroke && (t.attrs.stroke = e.annotation.color);\n\t\t\t\t}), this.editMode && (u = u.concat(this.mapHandles([{ drag: this.dragSubject.bind(this) }])), c.push({\n\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\thandles: u\n\t\t\t\t})), c;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawConnector\",\n\t\t\tvalue: function drawConnector() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.connector, r = n.type || t.type, i = {\n\t\t\t\t\ttype: this,\n\t\t\t\t\tconnectorData: n\n\t\t\t\t};\n\t\t\t\ti.subjectType = this.typeSettings && this.typeSettings.subject && this.typeSettings.subject.type;\n\t\t\t\tvar a = {};\n\t\t\t\ta = r === \"curve\" ? connectorCurve(i) : r === \"elbow\" ? connectorElbow(i) : connectorLine(i);\n\t\t\t\tvar o = a, s = o.components, c = s === void 0 ? [] : s, l = o.handles, u = l === void 0 ? [] : l, d = c[0];\n\t\t\t\td && (d.attrs.stroke = this.annotation.color, d.attrs.fill = \"none\");\n\t\t\t\tvar f = n.end || t.end, p = {};\n\t\t\t\tif (f === \"arrow\") {\n\t\t\t\t\tvar m = d.data[1], h = d.data[0];\n\t\t\t\t\tMath.sqrt((m[0] - h[0]) ** 2 + (m[1] - h[1]) ** 2) < 5 && d.data[2] && (m = d.data[2]), p = connectorArrow({\n\t\t\t\t\t\tannotation: this.annotation,\n\t\t\t\t\t\tstart: m,\n\t\t\t\t\t\tend: h,\n\t\t\t\t\t\tscale: n.endScale\n\t\t\t\t\t});\n\t\t\t\t} else f === \"dot\" ? p = connectorDot({\n\t\t\t\t\tline: d,\n\t\t\t\t\tscale: n.endScale\n\t\t\t\t}) : (!f || f === \"none\") && this.connector && this.connector.select(\".connector-end\").remove();\n\t\t\t\treturn p.components && (p.components.forEach(function(t) {\n\t\t\t\t\tt.attrs.fill = e.annotation.color, t.attrs.stroke = e.annotation.color;\n\t\t\t\t}), c = c.concat(p.components)), this.editMode && u.length !== 0 && c.push({\n\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\thandles: u\n\t\t\t\t}), c;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawNote\",\n\t\t\tvalue: function drawNote() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.note, r = n.align || t.align || \"dynamic\", i = {\n\t\t\t\t\tbbox: t.bbox,\n\t\t\t\t\talign: r,\n\t\t\t\t\toffset: this.annotation.offset\n\t\t\t\t}, a = n.lineType || t.lineType, o = {};\n\t\t\t\ta === \"vertical\" ? o = noteVertical(i) : a === \"horizontal\" && (o = noteHorizontal(i));\n\t\t\t\tvar s = o, c = s.components, l = c === void 0 ? [] : c, u = s.handles, d = u === void 0 ? [] : u;\n\t\t\t\tif (l.forEach(function(t) {\n\t\t\t\t\tt.attrs.stroke = e.annotation.color;\n\t\t\t\t}), this.editMode) {\n\t\t\t\t\td = this.mapHandles([{\n\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\tdrag: this.dragNote.bind(this)\n\t\t\t\t\t}]), l.push({\n\t\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\t\thandles: d\n\t\t\t\t\t});\n\t\t\t\t\tvar f = this.dragNote.bind(this), p = this.dragstarted.bind(this), m = this.dragended.bind(this);\n\t\t\t\t\tthis.note.call(b().container(z(\"g.annotations\").node()).on(\"start\", function(e) {\n\t\t\t\t\t\treturn p(e);\n\t\t\t\t\t}).on(\"drag\", function(e) {\n\t\t\t\t\t\treturn f(e);\n\t\t\t\t\t}).on(\"end\", function(e) {\n\t\t\t\t\t\treturn m(e);\n\t\t\t\t\t}));\n\t\t\t\t} else this.note.on(\"mousedown.drag\", null);\n\t\t\t\treturn l;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawNoteContent\",\n\t\t\tvalue: function drawNoteContent(e) {\n\t\t\t\tvar t = this.annotation.note, n = t.padding === void 0 ? this.notePadding : t.padding, r = t.orientation || e.orientation || \"topBottom\", i = t.lineType || e.lineType, a = t.align || e.align || \"dynamic\";\n\t\t\t\ti === \"vertical\" ? r = \"leftRight\" : i === \"horizontal\" && (r = \"topBottom\");\n\t\t\t\tvar o = noteAlignment({\n\t\t\t\t\tpadding: n,\n\t\t\t\t\tbbox: e.bbox,\n\t\t\t\t\toffset: this.annotation.offset,\n\t\t\t\t\torientation: r,\n\t\t\t\t\talign: a\n\t\t\t\t}), s = o.x, c = o.y;\n\t\t\t\treturn this.offsetCornerX = s + this.annotation.dx, this.offsetCornerY = c + this.annotation.dy, this.note && this.noteContent.attr(\"transform\", \"translate(\" + s + \", \" + c + \")\"), [];\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawOnScreen\",\n\t\t\tvalue: function drawOnScreen(e, t) {\n\t\t\t\treturn this.drawOnSVG(e, t);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawSubject\",\n\t\t\tvalue: function redrawSubject() {\n\t\t\t\tthis.subject && this.drawOnScreen(this.subject, this.drawSubject());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawConnector\",\n\t\t\tvalue: function redrawConnector() {\n\t\t\t\tthis.connector && this.drawOnScreen(this.connector, this.drawConnector());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawNote\",\n\t\t\tvalue: function redrawNote() {\n\t\t\t\tvar e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.getNoteBBox();\n\t\t\t\tthis.noteContent && this.drawOnScreen(this.noteContent, this.drawNoteContent({ bbox: e })), this.note && this.drawOnScreen(this.note, this.drawNote({ bbox: e }));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPosition\",\n\t\t\tvalue: function setPosition() {\n\t\t\t\tvar e = this.annotation.position;\n\t\t\t\tthis.a.attr(\"transform\", \"translate(\" + e.x + \", \" + e.y + \")\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"clearComponents\",\n\t\t\tvalue: function clearComponents() {\n\t\t\t\tthis.subject && this.subject.select(\"*\").remove(), this.connector && this.connector.select(\"*\").remove();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setOffset\",\n\t\t\tvalue: function setOffset() {\n\t\t\t\tif (this.note) {\n\t\t\t\t\tvar e = this.annotation.offset;\n\t\t\t\t\tthis.note.attr(\"transform\", \"translate(\" + e.x + \", \" + e.y + \")\");\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPositionWithAccessors\",\n\t\t\tvalue: function setPositionWithAccessors(e) {\n\t\t\t\te && this.annotation.data && (this.mapX(e), this.mapY(e)), this.setPosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setClassName\",\n\t\t\tvalue: function setClassName() {\n\t\t\t\tthis.a.attr(\"class\", \"annotation \" + (this.className && this.className()) + \" \" + (this.editMode ? \"editable\" : \"\") + \" \" + (this.annotation.className || \"\"));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"draw\",\n\t\t\tvalue: function draw() {\n\t\t\t\tthis.setClassName(), this.setPosition(), this.setOffset(), this.redrawSubject(), this.redrawConnector(), this.redrawNote();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragstarted\",\n\t\t\tvalue: function dragstarted() {\n\t\t\t\tS.sourceEvent.stopPropagation(), this.dispatcher && this.dispatcher.call(\"dragstart\", this.a, this.annotation), this.a.classed(\"dragging\", !0), this.a.selectAll(\"circle.handle\").style(\"pointer-events\", \"none\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragended\",\n\t\t\tvalue: function dragended() {\n\t\t\t\tthis.dispatcher && this.dispatcher.call(\"dragend\", this.a, this.annotation), this.a.classed(\"dragging\", !1), this.a.selectAll(\"circle.handle\").style(\"pointer-events\", \"all\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragSubject\",\n\t\t\tvalue: function dragSubject() {\n\t\t\t\tvar e = this.annotation.position;\n\t\t\t\te.x += S.dx, e.y += S.dy, this.annotation.position = e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragNote\",\n\t\t\tvalue: function dragNote() {\n\t\t\t\tvar e = this.annotation.offset;\n\t\t\t\te.x += S.dx, e.y += S.dy, this.annotation.offset = e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapHandles\",\n\t\t\tvalue: function mapHandles(e) {\n\t\t\t\tvar t = this;\n\t\t\t\treturn e.map(function(e) {\n\t\t\t\t\treturn Y({}, e, {\n\t\t\t\t\t\tstart: t.dragstarted.bind(t),\n\t\t\t\t\t\tend: t.dragended.bind(t)\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t]), Type;\n}(), Gt = function customType(e, t, n) {\n\treturn function(e) {\n\t\tinherits(customType, e);\n\t\tfunction customType(e) {\n\t\t\tclassCallCheck(this, customType);\n\t\t\tvar n = possibleConstructorReturn(this, (customType.__proto__ || Object.getPrototypeOf(customType)).call(this, e));\n\t\t\treturn n.typeSettings = t, t.disable && t.disable.forEach(function(e) {\n\t\t\t\tn[e] && n[e].remove(), n[e] = void 0, e === \"note\" && (n.noteContent = void 0);\n\t\t\t}), n;\n\t\t}\n\t\treturn jt(customType, [\n\t\t\t{\n\t\t\t\tkey: \"className\",\n\t\t\t\tvalue: function className() {\n\t\t\t\t\treturn \"\" + (t.className || X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"className\", this) && X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"className\", this).call(this) || \"\");\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawSubject\",\n\t\t\t\tvalue: function drawSubject(e) {\n\t\t\t\t\treturn this.typeSettings.subject = Y({}, t.subject, this.typeSettings.subject), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawSubject\", this).call(this, Y({}, e, this.typeSettings.subject));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawConnector\",\n\t\t\t\tvalue: function drawConnector(e) {\n\t\t\t\t\treturn this.typeSettings.connector = Y({}, t.connector, this.typeSettings.connector), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawConnector\", this).call(this, Y({}, e, t.connector, this.typeSettings.connector));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawNote\",\n\t\t\t\tvalue: function drawNote(e) {\n\t\t\t\t\treturn this.typeSettings.note = Y({}, t.note, this.typeSettings.note), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawNote\", this).call(this, Y({}, e, t.note, this.typeSettings.note));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawNoteContent\",\n\t\t\t\tvalue: function drawNoteContent(e) {\n\t\t\t\t\treturn X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawNoteContent\", this).call(this, Y({}, e, t.note, this.typeSettings.note));\n\t\t\t\t}\n\t\t\t}\n\t\t], [{\n\t\t\tkey: \"init\",\n\t\t\tvalue: function init(e, t) {\n\t\t\t\treturn X(customType.__proto__ || Object.getPrototypeOf(customType), \"init\", this).call(this, e, t), n && (e = n(e, t)), e;\n\t\t\t}\n\t\t}]), customType;\n\t}(e);\n}, Kt = function(e) {\n\tinherits(d3NoteText, e);\n\tfunction d3NoteText(e) {\n\t\tclassCallCheck(this, d3NoteText);\n\t\tvar t = possibleConstructorReturn(this, (d3NoteText.__proto__ || Object.getPrototypeOf(d3NoteText)).call(this, e));\n\t\treturn t.textWrap = e.textWrap || 120, t.drawText(), t;\n\t}\n\treturn jt(d3NoteText, [{\n\t\tkey: \"updateTextWrap\",\n\t\tvalue: function updateTextWrap(e) {\n\t\t\tthis.textWrap = e, this.drawText();\n\t\t}\n\t}, {\n\t\tkey: \"drawText\",\n\t\tvalue: function drawText() {\n\t\t\tif (this.note) {\n\t\t\t\tQ(this.note, [this.annotation], \"g\", \"annotation-note-content\");\n\t\t\t\tvar e = this.note.select(\"g.annotation-note-content\");\n\t\t\t\tQ(e, [this.annotation], \"rect\", \"annotation-note-bg\"), Q(e, [this.annotation], \"text\", \"annotation-note-label\"), Q(e, [this.annotation], \"text\", \"annotation-note-title\");\n\t\t\t\tvar t = { height: 0 }, n = this.a.select(\"text.annotation-note-label\"), r = this.annotation.note && this.annotation.note.wrap || this.typeSettings && this.typeSettings.note && this.typeSettings.note.wrap || this.textWrap, i = this.annotation.note && this.annotation.note.wrapSplitter || this.typeSettings && this.typeSettings.note && this.typeSettings.note.wrapSplitter, a = this.annotation.note && this.annotation.note.bgPadding || this.typeSettings && this.typeSettings.note && this.typeSettings.note.bgPadding, o = {\n\t\t\t\t\ttop: 0,\n\t\t\t\t\tbottom: 0,\n\t\t\t\t\tleft: 0,\n\t\t\t\t\tright: 0\n\t\t\t\t};\n\t\t\t\tif (typeof a == \"number\" ? o = {\n\t\t\t\t\ttop: a,\n\t\t\t\t\tbottom: a,\n\t\t\t\t\tleft: a,\n\t\t\t\t\tright: a\n\t\t\t\t} : a && (a === void 0 ? \"undefined\" : At(a)) === \"object\" && (o = Y(o, a)), this.annotation.note.title) {\n\t\t\t\t\tvar s = this.a.select(\"text.annotation-note-title\");\n\t\t\t\t\ts.text(this.annotation.note.title), s.attr(\"fill\", this.annotation.color), s.attr(\"font-weight\", \"bold\"), s.call(Xt, r, i), t = s.node().getBBox();\n\t\t\t\t}\n\t\t\t\tn.text(this.annotation.note.label).attr(\"dx\", \"0\"), n.call(Xt, r, i), n.attr(\"y\", t.height * 1.1 || 0), n.attr(\"fill\", this.annotation.color);\n\t\t\t\tvar c = this.getNoteBBox();\n\t\t\t\tthis.a.select(\"rect.annotation-note-bg\").attr(\"width\", c.width + o.left + o.right).attr(\"height\", c.height + o.top + o.bottom).attr(\"x\", c.x - o.left).attr(\"y\", -o.top).attr(\"fill\", \"white\").attr(\"fill-opacity\", 0);\n\t\t\t}\n\t\t}\n\t}]), d3NoteText;\n}(Wt);\nGt(Kt, {\n\tclassName: \"label\",\n\tnote: { align: \"middle\" }\n});\nvar qt = Gt(Kt, {\n\tclassName: \"callout\",\n\tnote: { lineType: \"horizontal\" }\n}), Jt = Gt(qt, {\n\tclassName: \"callout elbow\",\n\tconnector: { type: \"elbow\" }\n});\nGt(qt, {\n\tclassName: \"callout curve\",\n\tconnector: { type: \"curve\" }\n}), Gt(Wt, {\n\tclassName: \"badge\",\n\tsubject: { type: \"badge\" },\n\tdisable: [\"connector\", \"note\"]\n}), Gt(Kt, {\n\tclassName: \"callout circle\",\n\tsubject: { type: \"circle\" },\n\tnote: { lineType: \"horizontal\" },\n\tconnector: { type: \"elbow\" }\n}), Gt(Kt, {\n\tclassName: \"callout rect\",\n\tsubject: { type: \"rect\" },\n\tnote: { lineType: \"horizontal\" },\n\tconnector: { type: \"elbow\" }\n}), Gt(function(e) {\n\tinherits(ThresholdMap, e);\n\tfunction ThresholdMap() {\n\t\treturn classCallCheck(this, ThresholdMap), possibleConstructorReturn(this, (ThresholdMap.__proto__ || Object.getPrototypeOf(ThresholdMap)).apply(this, arguments));\n\t}\n\treturn jt(ThresholdMap, [{\n\t\tkey: \"mapY\",\n\t\tvalue: function mapY(e) {\n\t\t\tX(ThresholdMap.prototype.__proto__ || Object.getPrototypeOf(ThresholdMap.prototype), \"mapY\", this).call(this, e);\n\t\t\tvar t = this.annotation;\n\t\t\t(t.subject.x1 || t.subject.x2) && t.data && e.y && (t.y = e.y(t.data)), (t.subject.x1 || t.subject.x2) && !t.x && (t.x = t.subject.x1 || t.subject.x2);\n\t\t}\n\t}, {\n\t\tkey: \"mapX\",\n\t\tvalue: function mapX(e) {\n\t\t\tX(ThresholdMap.prototype.__proto__ || Object.getPrototypeOf(ThresholdMap.prototype), \"mapX\", this).call(this, e);\n\t\t\tvar t = this.annotation;\n\t\t\t(t.subject.y1 || t.subject.y2) && t.data && e.x && (t.x = e.x(t.data)), (t.subject.y1 || t.subject.y2) && !t.y && (t.y = t.subject.y1 || t.subject.y2);\n\t\t}\n\t}]), ThresholdMap;\n}(qt), {\n\tclassName: \"callout xythreshold\",\n\tsubject: { type: \"threshold\" }\n});\nvar Q = function newWithClass(e, t, n, r, i) {\n\tvar a = e.selectAll(n + \".\" + (i || r)).data(t);\n\treturn a.enter().append(n).merge(a).attr(\"class\", r), a.exit().remove(), e;\n}, Yt = function addHandlers(e, t, n) {\n\tvar r = n.component, i = n.name;\n\tr && r.on(\"mouseover.annotations\", function() {\n\t\te.call(i + \"over\", r, t);\n\t}).on(\"mouseout.annotations\", function() {\n\t\treturn e.call(i + \"out\", r, t);\n\t}).on(\"click.annotations\", function() {\n\t\treturn e.call(i + \"click\", r, t);\n\t});\n}, Xt = function wrap(e, t, n) {\n\tvar r = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 1.2;\n\te.each(function() {\n\t\tfor (var e = z(this), i = e.text().split(n || /[ \\t\\r\\n]+/).reverse().filter(function(e) {\n\t\t\treturn e !== \"\";\n\t\t}), a = void 0, o = [], s = e.text(null).append(\"tspan\").attr(\"x\", 0).attr(\"dy\", \"0.8em\"); a = i.pop();) o.push(a), s.text(o.join(\" \")), s.node().getComputedTextLength() > t && o.length > 1 && (o.pop(), s.text(o.join(\" \")), o = [a], s = e.append(\"tspan\").attr(\"x\", 0).attr(\"dy\", r + \"em\").text(a));\n\t});\n}, Zt = function bboxWithoutHandles(e) {\n\tvar t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : \":not(.handle)\";\n\treturn e ? e.selectAll(t).nodes().reduce(function(e, t) {\n\t\tvar n = t.getBBox();\n\t\te.x = Math.min(e.x, n.x), e.y = Math.min(e.y, n.y), e.width = Math.max(e.width, n.width);\n\t\tvar r = t && t.attributes && t.attributes.y;\n\t\treturn e.height = Math.max(e.height, (r && parseFloat(r.value) || 0) + n.height), e;\n\t}, {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t}) : {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t};\n};\nfunction annotation() {\n\tvar e = [], t = void 0, n = void 0, r = [], i = {}, a = {}, o = !1, s = void 0, c = qt, l = void 0, u = void 0, d = v(\"subjectover\", \"subjectout\", \"subjectclick\", \"connectorover\", \"connectorout\", \"connectorclick\", \"noteover\", \"noteout\", \"noteclick\", \"dragend\", \"dragstart\"), f = void 0, p = function annotation(n) {\n\t\tf = n, o || n.selectAll(\"circle.handle\").remove();\n\t\tvar p = e.map(function(e) {\n\t\t\treturn e.type ||= c, e.disable ||= r, new Mt(e);\n\t\t});\n\t\tt ||= new Nt({\n\t\t\tannotations: p,\n\t\t\taccessors: i,\n\t\t\taccessorsInverse: a,\n\t\t\tids: s\n\t\t}), n.selectAll(\"g\").data([t]).enter().append(\"g\").attr(\"class\", \"annotations\");\n\t\tvar m = n.select(\"g.annotations\");\n\t\tQ(m, t.annotations, \"g\", \"annotation\"), m.selectAll(\"g.annotation\").each(function(e) {\n\t\t\tvar t = z(this);\n\t\t\tt.attr(\"class\", \"annotation\"), Q(t, [e], \"g\", \"annotation-connector\"), Q(t, [e], \"g\", \"annotation-subject\"), Q(t, [e], \"g\", \"annotation-note\"), Q(t.select(\"g.annotation-note\"), [e], \"g\", \"annotation-note-content\"), e.type = e.type.toString() === \"[object Object]\" ? e.type : new e.type({\n\t\t\t\ta: t,\n\t\t\t\tannotation: e,\n\t\t\t\ttextWrap: l,\n\t\t\t\tnotePadding: u,\n\t\t\t\teditMode: o,\n\t\t\t\tdispatcher: d,\n\t\t\t\taccessors: i\n\t\t\t}), e.type.draw(), e.type.drawText && e.type.drawText();\n\t\t});\n\t};\n\treturn p.json = function() {\n\t\treturn console.log(\"Annotations JSON was copied to your clipboard. Please note the annotation type is not JSON compatible. It appears in the objects array in the console, but not in the copied JSON.\", t.json), window.copy(JSON.stringify(t.json.map(function(e) {\n\t\t\treturn delete e.type, e;\n\t\t}))), p;\n\t}, p.update = function() {\n\t\treturn e && t && (e = t.annotations.map(function(e) {\n\t\t\treturn e.type.draw(), e;\n\t\t})), p;\n\t}, p.updateText = function() {\n\t\treturn t && (t.updateText(l), e = t.annotations), p;\n\t}, p.updatedAccessors = function() {\n\t\treturn t.setPositionWithAccessors(), e = t.annotations, p;\n\t}, p.disable = function(n) {\n\t\treturn arguments.length ? (r = n, t && (t.updateDisable(r), e = t.annotations), p) : r;\n\t}, p.textWrap = function(n) {\n\t\treturn arguments.length ? (l = n, t && (t.updateTextWrap(l), e = t.annotations), p) : l;\n\t}, p.notePadding = function(n) {\n\t\treturn arguments.length ? (u = n, t && (t.updateNotePadding(u), e = t.annotations), p) : u;\n\t}, p.type = function(n, r) {\n\t\treturn arguments.length ? (c = n, t && (t.annotations.map(function(e) {\n\t\t\te.type.note && e.type.note.selectAll(\"*:not(.annotation-note-content)\").remove(), e.type.noteContent && e.type.noteContent.selectAll(\"*\").remove(), e.type.subject && e.type.subject.selectAll(\"*\").remove(), e.type.connector && e.type.connector.selectAll(\"*\").remove(), e.type.typeSettings = {}, e.type = c, e.subject = r && r.subject || e.subject, e.connector = r && r.connector || e.connector, e.note = r && r.note || e.note;\n\t\t}), e = t.annotations), p) : c;\n\t}, p.annotations = function(n) {\n\t\treturn arguments.length ? (e = n, t && t.annotations && (e.some(function(e) {\n\t\t\treturn !e.type || e.type.toString() !== \"[object Object]\";\n\t\t}) ? (t = null, p(f)) : t.annotations = e), p) : t && t.annotations || e;\n\t}, p.context = function(e) {\n\t\treturn arguments.length ? (n = e, p) : n;\n\t}, p.accessors = function(e) {\n\t\treturn arguments.length ? (i = e, p) : i;\n\t}, p.accessorsInverse = function(e) {\n\t\treturn arguments.length ? (a = e, p) : a;\n\t}, p.ids = function(e) {\n\t\treturn arguments.length ? (s = e, p) : s;\n\t}, p.editMode = function(n) {\n\t\treturn arguments.length ? (o = n, f && f.selectAll(\"g.annotation\").classed(\"editable\", o), t && (t.editMode(o), e = t.annotations), p) : o;\n\t}, p.collection = function(e) {\n\t\treturn arguments.length ? (t = e, p) : t;\n\t}, p.on = function() {\n\t\tvar e = d.on.apply(d, arguments);\n\t\treturn e === d ? p : e;\n\t}, p;\n}\n//#endregion\n//#region src/Gauge.ts\nfunction value2Angle(e) {\n\treturn (e - .5) * .65 * 2 * Math.PI;\n}\nfunction pointOnArc(e, t) {\n\treturn {\n\t\tx: Math.cos(e - Math.PI / 2) * t,\n\t\ty: Math.sin(e - Math.PI / 2) * t\n\t};\n}\nfunction indicatorTranslate(e, t, n = !1) {\n\tlet r = pointOnArc(e, t), i = e * 180 / Math.PI + (n === !0 ? 180 : 0);\n\treturn `translate(${r.x}, ${r.y}) rotate(${i})`;\n}\nfunction indicatorTween(e, t, n = !1) {\n\treturn function(r) {\n\t\tlet i = E(r.angle, e);\n\t\treturn r.angle = e, function(e) {\n\t\t\treturn indicatorTranslate(i(e), t, n);\n\t\t};\n\t};\n}\nfunction arcTween(e, t, n) {\n\treturn function(r) {\n\t\tlet i = E(r.startAngle, e), a = E(r.endAngle, t);\n\t\treturn function(e) {\n\t\t\treturn r.startAngle = i(e), r.endAngle = a(e), n(r);\n\t\t};\n\t};\n}\nvar $ = class Gauge extends l {\n\t_d3Arc = arc_default$1().innerRadius(85).outerRadius(100);\n\t_colorScale = P().interpolate(D);\n\t_usageArc;\n\t_meanArc;\n\t_freeArc;\n\t_indInner;\n\t_indOuter;\n\t_centerTextG;\n\t_centerText;\n\t_bottomText;\n\t_tooltipG;\n\t_mainTooltip;\n\tconstructor() {\n\t\tsuper();\n\t}\n\ttip(e) {\n\t\tif (e === null || e.label === \"\") this._tooltipG.transition().style(\"opacity\", 0).on(\"interrupt end\", () => {\n\t\t\tthis._tooltipG.selectAll(\"g\").remove();\n\t\t});\n\t\telse {\n\t\t\tthis._tooltipG.interrupt().style(\"opacity\", 1), e.w = this._centerText.datum().w + 10;\n\t\t\tlet t = \"horizontal\", n = 0, r = 5, i = 5;\n\t\t\te.y >= 5 && e.y <= 25 ? (n = e.x < 0 ? -e.w / 2 : e.w / 2, r = 12.5, i = void 0, t = \"vertical\") : e.y > 25 && (r = 25, i = 0);\n\t\t\tlet a = annotation().type(Jt).annotations([{\n\t\t\t\tdata: e,\n\t\t\t\tdx: -e.x + n,\n\t\t\t\tdy: -e.y + r,\n\t\t\t\tcolor: \"black\",\n\t\t\t\tnote: {\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tlineType: t,\n\t\t\t\t\tpadding: i,\n\t\t\t\t\talign: \"middle\"\n\t\t\t\t}\n\t\t\t}]).accessors({\n\t\t\t\tx: (e) => e.x,\n\t\t\t\ty: (e) => e.y\n\t\t\t});\n\t\t\tthis._tooltipG.call(a);\n\t\t}\n\t}\n\tcalcSize(e, t, n) {\n\t\tlet r = e.node().getBBox(), i = t / r.width, a = n / r.height, o = i < a ? i : a;\n\t\treturn {\n\t\t\twidth: r.width,\n\t\t\theight: r.height,\n\t\t\tscale: o\n\t\t};\n\t}\n\tupdateText(e, t, n, r, i) {\n\t\te.datum({\n\t\t\tx: t,\n\t\t\ty: n,\n\t\t\tw: r,\n\t\t\th: i\n\t\t}).attr(\"transform\", null);\n\t\tlet a = this.calcSize(e, r, i), o = t + r / 2 - a.width / 2 * a.scale, s = n + i / 2 - a.height / 2 * a.scale;\n\t\te.attr(\"transform\", `translate(${o}, ${s}) scale(${a.scale})`);\n\t}\n\tcalcWidth() {\n\t\treturn Math.min(this.width(), this.height(), this.maxDiameter());\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), t.on(\"click\", (e) => {\n\t\t\tthis.click(e);\n\t\t}), this._usageArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(0)\n\t\t}).style(\"fill\", \"green\").on(\"mousemove\", (e) => {\n\t\t\tlet [t, n] = this._d3Arc.centroid(e);\n\t\t\tthis.tip({\n\t\t\t\tx: t,\n\t\t\t\ty: n,\n\t\t\t\tlabel: this.valueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._freeArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(1)\n\t\t}).style(\"fill\", \"lightGrey\"), this._meanArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(0)\n\t\t}).style(\"fill\", \"black\").on(\"mousemove\", (e) => {\n\t\t\tlet [t, n] = this._d3Arc.centroid(e);\n\t\t\tthis.tip({\n\t\t\t\tx: t,\n\t\t\t\ty: n,\n\t\t\t\tlabel: this.tickValueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._mainTooltip = t.append(\"title\");\n\t\tlet n = this;\n\t\tfunction appendIndicator() {\n\t\t\treturn t.append(\"path\").datum({ angle: value2Angle(0) }).style(\"fill\", \"black\").style(\"stroke\", \"black\").attr(\"d\", \"M 0 0 l -3 -3 l 6 0 z\").on(\"mousemove\", (e) => {\n\t\t\t\tlet [t, r] = n._d3Arc.centroid(n._meanArc.datum());\n\t\t\t\tn.tip({\n\t\t\t\t\tx: t,\n\t\t\t\t\ty: r,\n\t\t\t\t\tlabel: n.tickValueDescription()\n\t\t\t\t});\n\t\t\t}).on(\"mouseout\", (e) => {\n\t\t\t\tn.tip(null);\n\t\t\t});\n\t\t}\n\t\tthis._indInner = appendIndicator(), this._indOuter = appendIndicator(), this._centerText = t.append(\"text\").attr(\"dy\", \".66em\").style(\"fill\", \"green\").on(\"mousemove\", (e) => {\n\t\t\tthis.tip({\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\tlabel: this.valueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._bottomText = t.append(\"text\").attr(\"dy\", \".66em\").on(\"mousemove\", (e) => {\n\t\t\tthis.tip({\n\t\t\t\tx: 0,\n\t\t\t\ty: e.y,\n\t\t\t\tlabel: this.titleDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._tooltipG = t.append(\"g\").attr(\"class\", \"annotation-tip\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._colorScale.domain(this.colorDomain()).range(this.colorRange()), t.attr(\"title\", this.tooltip()).style(\"cursor\", this.click === Gauge.prototype.click ? null : \"pointer\");\n\t\tlet n = this.calcWidth() / 3, r = this.calcWidth() / 2 - 5;\n\t\tthis._d3Arc.innerRadius(n).outerRadius(r);\n\t\tlet i = this.value(), a = this.tickValue();\n\t\tthis._usageArc.style(\"fill\", this._colorScale(i)).transition().duration(750).attrTween(\"d\", arcTween(value2Angle(0), value2Angle(i), this._d3Arc)), this._freeArc.style(\"fill\", this.emptyColor()).transition().duration(750).attrTween(\"d\", arcTween(value2Angle(i), value2Angle(1), this._d3Arc)), this._meanArc.style(\"fill\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"d\", arcTween(value2Angle(a - .001), value2Angle(a + .001), this._d3Arc)), this._indInner.style(\"fill\", this.tickColor()).style(\"stroke\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"transform\", indicatorTween(value2Angle(a), n, !0)), this._indOuter.style(\"fill\", this.tickColor()).style(\"stroke\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"transform\", indicatorTween(value2Angle(a), r)), this._centerText.style(\"fill\", this._colorScale(i)).text(w(\".0%\")(i)), this._bottomText.style(\"fill\", this.click === Gauge.prototype.click ? this.titleColor() : this.titleClickColor()).style(\"text-decoration\", this.click === Gauge.prototype.click ? null : \"underline\").text(this.title());\n\t\tlet o = pointOnArc(value2Angle(1), n - 8);\n\t\tthis.updateText(this._centerText, -o.x, -o.y, 2 * o.x, 2 * o.y);\n\t\tlet s = pointOnArc(value2Angle(1), r);\n\t\ts.y += 5;\n\t\tlet c = this.calcWidth() - 20, l = this.calcWidth() / 2 - s.y - 5;\n\t\tthis.updateText(this._bottomText, -c / 2, s.y, c, l), this._mainTooltip.text(this.tooltip());\n\t}\n\tclick(e) {}\n};\n$.prototype._class += \" chart_Gauge\", $.prototype.publish(\"title\", \"\", \"string\", \"Title\"), $.prototype.publish(\"titleDescription\", \"\", \"string\", \"Title Description\"), $.prototype.publish(\"titleColor\", \"black\", \"html-color\", \"Color of the title text\"), $.prototype.publish(\"titleClickColor\", \"blue\", \"html-color\", \"Color of the title text when clickable\"), $.prototype.publish(\"maxDiameter\", 128, \"number\", \"Max Diameter\"), $.prototype.publish(\"value\", 0, \"number\", \"Value\"), $.prototype.publish(\"valueDescription\", \"\", \"string\", \"Value Description\"), $.prototype.publish(\"showTick\", !1, \"boolean\", \"Show Tick\"), $.prototype.publish(\"tickValue\", 0, \"number\", \"Tick Value\"), $.prototype.publish(\"tickValueDescription\", \"\", \"string\", \"Tick Value Description\"), $.prototype.publish(\"tooltip\", \"\", \"string\", \"Tooltip\"), $.prototype.publish(\"colorRange\", [\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"orange\",\n\t\"red\",\n\t\"red\"\n], \"array\", \"Array of colors for the filled gauge portion. The fill color will be relative to the gauge value.\"), $.prototype.publish(\"colorDomain\", [\n\t0,\n\t.1,\n\t.2,\n\t.3,\n\t.4,\n\t.5,\n\t.6,\n\t.7,\n\t.8,\n\t.9,\n\t1\n], \"array\", \"This array augments the mapping of the value to the fill colorRange.\"), $.prototype.publish(\"emptyColor\", \"lightgrey\", \"html-color\", \"Color of the empty portion of the gauge\"), $.prototype.publish(\"tickColor\", \"black\", \"html-color\", \"Color of the tick\");\n//#endregion\n//#region src/Pie.ts\nvar sortAscending = (e, t) => e[1] - t[1] > 0 ? 1 : -1, sortDescending = (e, t) => e[1] - t[1] > 0 ? -1 : 1, Pie = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\t_totalValue;\n\td3Pie;\n\td3Arc;\n\td3LabelArc;\n\t_labelPositions;\n\t_smallValueLabelHeight;\n\t_labelWidthLimit;\n\t_quadIdxArr;\n\t_minLabelTop = 0;\n\t_maxLabelBottom = 0;\n\t_seriesValueFormatter;\n\t_seriesPercentageFormatter;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this.d3Pie = pie_default(), this.d3Arc = arc_default$1(), this.d3LabelArc = arc_default$1(), this.tooltipTick_default(!1).tooltipOffset_default(0);\n\t}\n\tintersection(e, t) {\n\t\treturn this.intersectCircle(this.calcOuterRadius(), e, t);\n\t}\n\tcalcInnerRadius() {\n\t\treturn this.innerRadius_exists() ? this.calcOuterRadius() * this.innerRadius() / 100 : 0;\n\t}\n\tcalcOuterRadius() {\n\t\tlet e = this.textSize(this.data().map((e) => this.getLabelText({ data: e }, !1)), \"Verdana\", 12).width, t = this._size.width - (this.showLabels() ? e * 2 : 0) - 20, n = this._size.height - 36 - (this.showLabels() ? this._smallValueLabelHeight : 0), r = Math.min(t, n) / 2 - 2;\n\t\treturn t / 2 - 2 < this.minOuterRadius() ? this._labelWidthLimit = e - (this.minOuterRadius() - (t / 2 - 2)) : this._labelWidthLimit = e, r < this.minOuterRadius() ? this.minOuterRadius() : r;\n\t}\n\tcalcSmallValueLabelHeight() {\n\t\tlet e = this.data().reduce((e, t) => e + t[1], 0), t = 0;\n\t\treturn this.data().forEach((n) => {\n\t\t\tn[1] / e < .1 && t++;\n\t\t}), this.labelHeight() * t;\n\t}\n\tcalcTotalValue() {\n\t\treturn this.data().reduce((e, t) => e + t[1], 0);\n\t}\n\tcalcPadAngleRadians() {\n\t\tlet e = this.slicePadding();\n\t\treturn e > 0 ? Math.min(e, .05) : 0;\n\t}\n\tgetLabelText(e, t) {\n\t\tlet n, r = e.data[0];\n\t\tif (this._labelWidthLimit !== void 0 && t) {\n\t\t\tlet e = this.textSize(r, \"Verdana\", this.labelHeight()).width;\n\t\t\tthis._labelWidthLimit < e && (n = r.length * (this._labelWidthLimit / e) - 3, r = n < r.length ? r.slice(0, n) + \"...\" : r);\n\t\t}\n\t\tif (this.showSeriesValue() && (r += ` : ${this._seriesValueFormatter(e.data[1])}`), this.showSeriesPercentage()) {\n\t\t\tlet t = this._totalValue, n = this.dataMeta();\n\t\t\tn.sum !== void 0 && (t = n.sum);\n\t\t\tlet i = e.data[1] / t * 100;\n\t\t\tr += ` : ${this._seriesPercentageFormatter(i)}%`;\n\t\t}\n\t\treturn r;\n\t}\n\tselection(e) {\n\t\tif (!arguments.length) try {\n\t\t\treturn this._selection.selection2()[0]?.data;\n\t\t} catch {\n\t\t\treturn;\n\t\t}\n\t\tlet t = JSON.stringify(e);\n\t\tthis._selection.selection2((e) => t === JSON.stringify(e.data));\n\t}\n\tselectByLabel(e) {\n\t\tlet t = this.data().filter((t) => t[0] === e)[0];\n\t\tt && this.selection(t);\n\t}\n\t_slices;\n\t_labels;\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t).skipBringToTop(!0), this._slices = t.append(\"g\"), this._labels = t.append(\"g\");\n\t\tlet n = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (n.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tarr: n.columns().slice(1).map(function(t, r) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: n._palette(e.data[0]),\n\t\t\t\t\t\t\tvalue: e.data[r + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tvalue: e.data[1]\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tthis.selectionGlow(!this.tabNavigation()), super.update(e, t);\n\t\tlet n = this;\n\t\tthis.updateD3Pie(), this._palette = this._palette.switch(this.paletteID()), this._seriesValueFormatter = w(this.seriesValueFormat()), this._seriesPercentageFormatter = w(this.seriesPercentageFormat()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._smallValueLabelHeight = this.calcSmallValueLabelHeight(), this._totalValue = this.calcTotalValue();\n\t\tlet r = this.calcOuterRadius(), i = Math.max(this.calcInnerRadius(), Math.min(r / 30, 6)), a = r + 12;\n\t\tthis.d3Arc.innerRadius(i).padRadius(r).outerRadius(r).padAngle(this.calcPadAngleRadians()), this._quadIdxArr = [\n\t\t\t[],\n\t\t\t[],\n\t\t\t[],\n\t\t\t[]\n\t\t];\n\t\tlet o = [...this.data()];\n\t\tswitch (this.sortDataByValue()) {\n\t\t\tcase \"ascending\":\n\t\t\t\to.sort(sortAscending);\n\t\t\t\tbreak;\n\t\t\tcase \"descending\":\n\t\t\t\to.sort(sortDescending);\n\t\t\t\tbreak;\n\t\t}\n\t\tlet s = this._slices.selectAll(\".arc\").data(this.d3Pie(o), (e) => e.data[0]);\n\t\tthis._labelPositions = [], s.enter().append(\"g\").attr(\"class\", (e, t) => \"arc series series-\" + this.cssTag(e.data[0])).attr(\"opacity\", 0).call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"keydown\", function(e, t) {\n\t\t\tlet r = g();\n\t\t\tn.tabNavigation() && (r.code === \"Space\" || r.key === \"Enter\") && (r.preventDefault(), n._selection.click(this));\n\t\t}).each(function(e, t) {\n\t\t\tz(this).append(\"path\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).on(\"mouseover\", arcTween(0, 0)).on(\"mouseout\", arcTween(-5, 150));\n\t\t}).merge(s).transition().attr(\"opacity\", 1).attr(\"tabindex\", n.tabNavigation() ? \"0\" : null).attr(\"role\", n.tabNavigation() ? \"button\" : null).attr(\"aria-label\", n.tabNavigation() ? (e) => `${e.data[0]}: ${e.data[1]}` : null).each(function(e, t) {\n\t\t\tlet i = n.getQuadrant(midAngle(e));\n\t\t\tn._quadIdxArr[i].push(t), e.outerRadius = r - 5, z(this).select(\"path\").transition().attr(\"d\", n.d3Arc).style(\"fill\", n.fillColor(e.data, n.columns()[1], e.data[1]));\n\t\t}), s.exit().transition().style(\"opacity\", 0).remove(), this.d3LabelArc.innerRadius(a).outerRadius(a);\n\t\tlet c = this._labels.selectAll(\"text\").data(this.showLabels() ? this.d3Pie(o) : [], (e) => e.data[0]), l = c.enter().append(\"text\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).attr(\"dy\", \".5em\").on(\"click\", function(e) {\n\t\t\tn._slices.selectAll(\"g\").filter(function(t) {\n\t\t\t\te.data === t.data && (n._selection.click(this), n.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this)));\n\t\t\t});\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn._slices.selectAll(\"g\").filter(function(t) {\n\t\t\t\te.data === t.data && n.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t\t});\n\t\t}).merge(c).text((e) => this.getLabelText(e, !0)).each(function(e, t) {\n\t\t\tlet r = n.d3LabelArc.centroid(e), i = midAngle(e);\n\t\t\tr[0] = a * (n.isLeftSide(i) ? 1 : -1), n._labelPositions.push({\n\t\t\t\ttop: r[1],\n\t\t\t\tbottom: r[1] + n.labelHeight()\n\t\t\t});\n\t\t});\n\t\tthis.showLabels() && (this.adjustForOverlap(), l.transition().style(\"font-size\", this.labelHeight() + \"px\").attr(\"transform\", (e, t) => {\n\t\t\tlet r = n.d3LabelArc.centroid(e);\n\t\t\treturn r[0] = a * (n.isLeftSide(midAngle(e)) ? 1 : -1), r[1] = n._labelPositions[t].top, \"translate(\" + r + \")\";\n\t\t}).style(\"text-anchor\", (e) => this.isLeftSide(midAngle(e)) ? \"start\" : \"end\")), c.exit().remove();\n\t\tlet u = this._labels.selectAll(\"polyline\").data(this.showLabels() ? this.d3Pie(o) : [], (e) => this.getLabelText(e, !0));\n\t\tu.enter().append(\"polyline\").merge(u).transition().attr(\"points\", function(e, t) {\n\t\t\tlet r = n.d3LabelArc.centroid(e), i = n.d3Arc.centroid(e), o = [...r];\n\t\t\treturn r[0] = a * (n.isLeftSide(midAngle(e)) ? 1 : -1), r[1] = n._labelPositions[t].top, [\n\t\t\t\ti,\n\t\t\t\to,\n\t\t\t\tr\n\t\t\t];\n\t\t}), u.exit().remove(), this.showLabels() && this.centerOnLabels();\n\t\tfunction midAngle(e) {\n\t\t\treturn e.startAngle + (e.endAngle - e.startAngle) / 2;\n\t\t}\n\t\tfunction arcTween(e, t) {\n\t\t\treturn function() {\n\t\t\t\tz(this).transition().delay(t).attrTween(\"d\", function(t) {\n\t\t\t\t\tlet i = E(t.outerRadius, r + e);\n\t\t\t\t\treturn function(e) {\n\t\t\t\t\t\treturn t.outerRadius = i(e), n.d3Arc(t);\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t};\n\t\t}\n\t}\n\tisLeftSide(e) {\n\t\treturn e = ie(e), e > Math.PI * 2 ? e : e < Math.PI && e > 0;\n\t}\n\tgetQuadrant(e) {\n\t\tlet t = 0, n = ie(e);\n\t\treturn t = n <= Math.PI * 1 && n >= Math.PI * .5 ? 3 : t, t = n <= Math.PI * .5 && n >= Math.PI * 0 ? 2 : t, t = n <= Math.PI * 0 && n >= Math.PI * -.5 ? 1 : t, t;\n\t}\n\tcenterOnLabels() {\n\t\tlet e = this.pos().y, t = e * 2, n = this.calcOuterRadius(), r = Math.min(this._minLabelTop, -n), i = Math.max(this._maxLabelBottom, n), a = t - (i - r), o = Math.abs(this._minLabelTop), s = 0;\n\t\ti > e ? (s = e - i + this.labelHeight() / 2, s -= a / 2) : r < 0 && o > e && (s = o - e + this.labelHeight() / 2, s += a / 2);\n\t\tlet c = this.pos();\n\t\tthis.pos({\n\t\t\ty: c.y + s,\n\t\t\tx: c.x\n\t\t});\n\t}\n\tadjustForOverlap() {\n\t\tlet e = this.labelHeight();\n\t\tthis._quadIdxArr.forEach((t, n) => {\n\t\t\tthis._quadIdxArr[n].sort((e, t) => {\n\t\t\t\tif (n === 1 || n === 2) return this._labelPositions[e].top > this._labelPositions[t].top ? -1 : 1;\n\t\t\t\tif (n === 0 || n === 3) return this._labelPositions[e].top > this._labelPositions[t].top ? 1 : -1;\n\t\t\t});\n\t\t\tlet r;\n\t\t\tthis._quadIdxArr[n].forEach((t, i) => {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tif (n === 1 || n === 2) {\n\t\t\t\t\t\tif (r < this._labelPositions[t].bottom) {\n\t\t\t\t\t\t\tlet e = this._labelPositions[t].bottom - r;\n\t\t\t\t\t\t\tthis._labelPositions[t].top -= e, this._labelPositions[t].bottom -= e;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if ((n === 0 || n === 3) && r + e > this._labelPositions[t].top) {\n\t\t\t\t\t\tlet n = Math.abs(this._labelPositions[t].top) - Math.abs(r + e);\n\t\t\t\t\t\tthis._labelPositions[t].top -= n, this._labelPositions[t].bottom -= n;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tr = this._labelPositions[t].top;\n\t\t\t});\n\t\t}), this._minLabelTop = 0, this._maxLabelBottom = 0, this._quadIdxArr.forEach((e, t) => {\n\t\t\tthis._quadIdxArr[t].forEach((e, t) => {\n\t\t\t\tthis._minLabelTop > this._labelPositions[e].top && (this._minLabelTop = this._labelPositions[e].top), this._maxLabelBottom < this._labelPositions[e].bottom && (this._maxLabelBottom = this._labelPositions[e].bottom);\n\t\t\t});\n\t\t});\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tupdateD3Pie() {\n\t\tlet e = ie(re(this.startAngle()));\n\t\tswitch (this.sortDataByValue()) {\n\t\t\tcase \"ascending\":\n\t\t\t\tthis.d3Pie.sort(sortAscending);\n\t\t\t\tbreak;\n\t\t\tcase \"descending\":\n\t\t\t\tthis.d3Pie.sort(sortDescending);\n\t\t\t\tbreak;\n\t\t\tdefault: this.d3Pie.sort(null);\n\t\t}\n\t\tthis.d3Pie.padAngle(this.calcPadAngleRadians()).startAngle(e).endAngle(2 * Math.PI + e).value(function(e) {\n\t\t\treturn e[1];\n\t\t});\n\t}\n};\nPie.prototype._class += \" chart_Pie\", Pie.prototype.implements(n.prototype), Pie.prototype.implements(i.prototype), Pie.prototype.mixin(d.SimpleSelectionMixin), Pie.prototype.publish(\"showLabels\", !0, \"boolean\", \"If true, wedge labels will display\"), Pie.prototype.publish(\"showSeriesValue\", !1, \"boolean\", \"Append data series value next to label\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"seriesValueFormat\", \",.0f\", \"string\", \"Number format used for formatting series values\", null, { disable: (e) => !e.showSeriesValue() }), Pie.prototype.publish(\"showSeriesPercentage\", !1, \"boolean\", \"Append data series percentage next to label\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"seriesPercentageFormat\", \",.0f\", \"string\", \"Number format used for formatting series percentages\", null, { disable: (e) => !e.showSeriesPercentage() }), Pie.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Pie.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Pie.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Pie.prototype.publish(\"innerRadius\", 0, \"number\", \"Sets inner pie hole radius as a percentage of the radius of the pie chart\", null, {\n\ttags: [\"Basic\"],\n\trange: {\n\t\tmin: 0,\n\t\tstep: 1,\n\t\tmax: 100\n\t}\n}), Pie.prototype.publish(\"minOuterRadius\", 20, \"number\", \"Minimum outer radius (pixels)\"), Pie.prototype.publish(\"startAngle\", 0, \"number\", \"Starting angle of the first (and largest) wedge (degrees)\"), Pie.prototype.publish(\"labelHeight\", 12, \"number\", \"Font size of labels (pixels)\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"slicePadding\", .01, \"number\", \"Padding between pie slices (converted to pixels)\", null, {\n\ttags: [\"Basic\"],\n\trange: {\n\t\tmin: 0,\n\t\tstep: .01,\n\t\tmax: .2\n\t}\n}), Pie.prototype.publish(\"sortDataByValue\", \"descending\", \"set\", \"Sort data by value\", [\n\t\"none\",\n\t\"ascending\",\n\t\"descending\"\n]), Pie.prototype.publish(\"tabNavigation\", !1, \"boolean\", \"Enable or disable tab navigation\");\n//#endregion\n//#region src/HalfPie.ts\nvar HalfPie = class extends Pie {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t);\n\t\tlet n = this._pos.x, r = this._pos.y;\n\t\tthis._drawStartPos === \"origin\" && this._target instanceof SVGElement && (n -= this._size.width / 2, r -= this._size.height / 2), r += this._size.height / 4, this._element.attr(\"transform\", \"translate(\" + n + \",\" + r + \")scale(\" + this._widgetScale + \")\");\n\t}\n\tupdateD3Pie() {\n\t\tsuper.updateD3Pie(), this.d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n\t}\n};\nHalfPie.prototype._class += \" chart_HalfPie\";\n//#endregion\n//#region src/Heat.ts\nvar Heat = class extends XYAxis {\n\t_domForeignObject;\n\t_domCanvas;\n\t_heat;\n\tconstructor() {\n\t\tsuper(), this.xAxisGuideLines_default(!0).yAxisGuideLines_default(!0);\n\t}\n\tradius(e) {\n\t\treturn this.radiusX(e), this.radiusY(e), this;\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n), this._domForeignObject = this.svg.insert(\"foreignObject\", `#${this.id() + \"_clippath\"}`), this._domCanvas = this._domForeignObject.append(\"xhtml:body\").style(\"margin\", \"0px\").style(\"padding\", \"0px\").style(\"background-color\", \"transparent\").append(\"canvas\"), this._heat = simpleheat(this._domCanvas.node());\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t), this._palette = this._palette.switch(this.paletteID());\n\t\tlet r = this.width() - this.margin.left - this.margin.right;\n\t\tr < 0 && (r = 0);\n\t\tlet i = this.height() - this.margin.top - this.margin.bottom;\n\t\ti < 0 && (i = 0), this._domForeignObject.attr(\"x\", this.margin.left).attr(\"y\", this.margin.top).attr(\"width\", r).attr(\"height\", i), this._domCanvas.attr(\"width\", r).attr(\"height\", i);\n\t\tlet a = e.orientation() === \"horizontal\" ? this.data().map((t) => [\n\t\t\te.dataPos(t[0]),\n\t\t\te.valuePos(t[1]),\n\t\t\tt[2]\n\t\t]) : this.data().map((t) => [\n\t\t\te.valuePos(t[1]),\n\t\t\te.dataPos(t[0]),\n\t\t\tt[2]\n\t\t]), o = this.maxWeight_exists() ? this.maxWeight() : k(a, (e) => e[2]);\n\t\tif (this.paletteID() !== \"default\") {\n\t\t\tlet e = {}, t = this.reversePalette();\n\t\t\tfor (let n = 0; n < 8; ++n) e[n / 8] = this._palette((t ? 8 - n : n) / 8, 0, 1);\n\t\t\tthis._heat.gradient(e);\n\t\t} else this._heat.gradient(this._heat.defaultGradient);\n\t\tthis._heat.resize();\n\t\tlet s = this.radiusAsPercent() ? this.radiusX() * r / 100 : this.radiusX(), c = this.radiusAsPercent() ? this.radiusY() * i / 100 : this.radiusY();\n\t\tthis._heat.clear().radius(s, c, this.blur()).max(o).data(a).draw(this.minOpacity());\n\t}\n};\nHeat.prototype._class += \" chart_Heat\", Heat.prototype._palette = c.rainbow(\"default\"), Heat.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Heat.prototype._palette.switch(), { tags: [\"Basic\"] }), Heat.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Heat.prototype.publish(\"reversePalette\", !1, \"boolean\", \"Reverse Palette Colors\", null, { disable: (e) => e.paletteID() === \"default\" }), Heat.prototype.publish(\"radiusX\", 25, \"number\", \"Point X radius (25 by default)\"), Heat.prototype.publish(\"radiusY\", 25, \"number\", \"Point Y radius (25 by default)\"), Heat.prototype.publish(\"radiusAsPercent\", !1, \"boolean\", \"Calculate RadiusX + RadiusY as % of size\"), Heat.prototype.publish(\"blur\", 15, \"number\", \"Point blur radius (15 by default)\"), Heat.prototype.publish(\"maxWeight\", void 0, \"number\", \"Clamp max weight to value (optional), omitting uses max data point\", void 0, { optional: !0 }), Heat.prototype.publish(\"minOpacity\", .05, \"number\", \"Minimum point opacity (0.05 by default)\");\nfunction simpleheat(e) {\n\tif (!(this instanceof simpleheat)) return new simpleheat(e);\n\tthis._canvas = e = typeof e == \"string\" ? document.getElementById(e) : e, this._ctx = e.getContext(\"2d\"), this._width = e.width, this._height = e.height, this._max = 1, this._data = [];\n}\nsimpleheat.prototype = {\n\tdefaultRadius: 25,\n\tdefaultGradient: {\n\t\t.4: \"blue\",\n\t\t.6: \"cyan\",\n\t\t.7: \"lime\",\n\t\t.8: \"yellow\",\n\t\t1: \"red\"\n\t},\n\tdata: function(e) {\n\t\treturn this._data = e, this;\n\t},\n\tmax: function(e) {\n\t\treturn this._max = e, this;\n\t},\n\tadd: function(e) {\n\t\treturn this._data.push(e), this;\n\t},\n\tclear: function() {\n\t\treturn this._data = [], this;\n\t},\n\tradius: function(e, t, n) {\n\t\tn = n === void 0 ? 15 : n;\n\t\tlet r = this._ellipse = this._createCanvas(), i = r.getContext(\"2d\"), a = this._r = e + n, o = this._r = t + n;\n\t\treturn r.width = a * 2, r.height = o * 2, i.shadowOffsetX = i.shadowOffsetY = a * 2, i.shadowOffsetY = i.shadowOffsetY = o * 2, i.shadowBlur = n, i.shadowColor = \"black\", i.beginPath(), i.ellipse(-a, -o, e, t, 0, 0, Math.PI * 2, !0), i.closePath(), i.fill(), this;\n\t},\n\tresize: function() {\n\t\tthis._width = this._canvas.width, this._height = this._canvas.height;\n\t},\n\tgradient: function(e) {\n\t\tlet t = this._createCanvas(), n = t.getContext(\"2d\"), r = n.createLinearGradient(0, 0, 0, 256);\n\t\tt.width = 1, t.height = 256;\n\t\tfor (let t in e) r.addColorStop(+t, e[t]);\n\t\treturn n.fillStyle = r, n.fillRect(0, 0, 1, 256), this._grad = n.getImageData(0, 0, 1, 256).data, this;\n\t},\n\tdraw: function(e) {\n\t\tthis._ellipse || this.radius(this.defaultRadius, this.defaultRadius), this._grad || this.gradient(this.defaultGradient);\n\t\tlet t = this._ctx;\n\t\tt.clearRect(0, 0, this._width, this._height);\n\t\tfor (let n = 0, r = this._data.length, i; n < r; n++) i = this._data[n], i[2] < 0 ? i[2] = 0 : i[2] > this._max && (i[2] = this._max), t.globalAlpha = Math.max(i[2] / this._max, e === void 0 ? .05 : e), t.drawImage(this._ellipse, i[0] - this._r, i[1] - this._r);\n\t\tlet n = t.getImageData(0, 0, this._width, this._height);\n\t\treturn this._colorize(n.data, this._grad), t.putImageData(n, 0, 0), this;\n\t},\n\t_colorize: function(e, t) {\n\t\tfor (let n = 0, r = e.length, i; n < r; n += 4) i = e[n + 3] * 4, i && (e[n] = t[i], e[n + 1] = t[i + 1], e[n + 2] = t[i + 2]);\n\t},\n\t_createCanvas: function() {\n\t\treturn typeof document < \"u\" ? document.createElement(\"canvas\") : new this._canvas.constructor();\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-hexbin/src/hexbin.js\nvar Qt = Math.PI / 3, $t = [\n\t0,\n\tQt,\n\t2 * Qt,\n\t3 * Qt,\n\t4 * Qt,\n\t5 * Qt\n];\nfunction pointX(e) {\n\treturn e[0];\n}\nfunction pointY(e) {\n\treturn e[1];\n}\nfunction hexbin_default() {\n\tvar e = 0, t = 0, n = 1, r = 1, i = pointX, a = pointY, o, s, c;\n\tfunction hexbin(e) {\n\t\tvar t = {}, n = [], r, o = e.length;\n\t\tfor (r = 0; r < o; ++r) if (!(isNaN(u = +i.call(null, l = e[r], r, e)) || isNaN(d = +a.call(null, l, r, e)))) {\n\t\t\tvar l, u, d, f = Math.round(d /= c), p = Math.round(u = u / s - (f & 1) / 2), m = d - f;\n\t\t\tif (Math.abs(m) * 3 > 1) {\n\t\t\t\tvar h = u - p, g = p + (u < p ? -1 : 1) / 2, _ = f + (d < f ? -1 : 1), v = u - g, b = d - _;\n\t\t\t\th * h + m * m > v * v + b * b && (p = g + (f & 1 ? 1 : -1) / 2, f = _);\n\t\t\t}\n\t\t\tvar S = p + \"-\" + f, C = t[S];\n\t\t\tC ? C.push(l) : (n.push(C = t[S] = [l]), C.x = (p + (f & 1) / 2) * s, C.y = f * c);\n\t\t}\n\t\treturn n;\n\t}\n\tfunction hexagon(e) {\n\t\tvar t = 0, n = 0;\n\t\treturn $t.map(function(r) {\n\t\t\tvar i = Math.sin(r) * e, a = -Math.cos(r) * e, o = i - t, s = a - n;\n\t\t\treturn t = i, n = a, [o, s];\n\t\t});\n\t}\n\treturn hexbin.hexagon = function(e) {\n\t\treturn \"m\" + hexagon(e == null ? o : +e).join(\"l\") + \"z\";\n\t}, hexbin.centers = function() {\n\t\tfor (var i = [], a = Math.round(t / c), l = Math.round(e / s), u = a * c; u < r + o; u += c, ++a) for (var d = l * s + (a & 1) * s / 2; d < n + s / 2; d += s) i.push([d, u]);\n\t\treturn i;\n\t}, hexbin.mesh = function() {\n\t\tvar e = hexagon(o).slice(0, 4).join(\"l\");\n\t\treturn hexbin.centers().map(function(t) {\n\t\t\treturn \"M\" + t + \"m\" + e;\n\t\t}).join(\"\");\n\t}, hexbin.x = function(e) {\n\t\treturn arguments.length ? (i = e, hexbin) : i;\n\t}, hexbin.y = function(e) {\n\t\treturn arguments.length ? (a = e, hexbin) : a;\n\t}, hexbin.radius = function(e) {\n\t\treturn arguments.length ? (o = +e, s = o * 2 * Math.sin(Qt), c = o * 1.5, hexbin) : o;\n\t}, hexbin.size = function(i) {\n\t\treturn arguments.length ? (e = t = 0, n = +i[0], r = +i[1], hexbin) : [n - e, r - t];\n\t}, hexbin.extent = function(i) {\n\t\treturn arguments.length ? (e = +i[0][0], t = +i[0][1], n = +i[1][0], r = +i[1][1], hexbin) : [[e, t], [n, r]];\n\t}, hexbin.radius(1);\n}\n__name(hexbin_default, \"default\");\n//#endregion\n//#region src/HexBin.ts\nvar HexBin = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"x\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"y\",\n\t\ttype: \"number\"\n\t}];\n\t_hexbin;\n\t_dataMinWeight;\n\t_dataMaxWeight;\n\tconstructor() {\n\t\tsuper(), t.call(this), this.tooltipValueFormat_default(\",.0f\"), i.call(this), this.tooltipHTML((e) => {\n\t\t\tlet t = C(e, (e) => e.label), n = C(e, (e) => e.value);\n\t\t\treturn this.tooltipFormat({\n\t\t\t\tseries: t[0] === t[1] ? t[0] : `${t[0]} -> ${t[1]}`,\n\t\t\t\tlabel: n[0] === n[1] ? n[0] : `${n[0]} -> ${n[1]}`,\n\t\t\t\tvalue: e.length\n\t\t\t});\n\t\t}), this._hexbin = hexbin_default().x((e) => e.x).y((e) => e.y), this.xAxisGuideLines_default(!1).yAxisGuideLines_default(!1).xAxisType_default(\"linear\");\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n);\n\t\tlet r = this;\n\t\tthis._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._hexbin.extent([0, 0], [this.width(), this.height()]).radius(this.binSize());\n\t\tlet i = this.flattenData().map((t) => ({\n\t\t\tx: r.xPos(e, t),\n\t\t\ty: r.yPos(e, t),\n\t\t\tlabel: e.parseData(t.label),\n\t\t\tvalue: e.parseValue(t.value),\n\t\t\torigRow: t\n\t\t})), a = this._hexbin(i), o = A(a, function(e) {\n\t\t\treturn e.length;\n\t\t}), s = k(a, function(e) {\n\t\t\treturn e.length;\n\t\t});\n\t\tthis._dataMinWeight = o, this._dataMaxWeight = s;\n\t\tlet c = t.selectAll(\".hexagon\").data(a, function(e) {\n\t\t\treturn e.i + \"_\" + e.j;\n\t\t});\n\t\tc.enter().append(\"path\").attr(\"class\", \"hexagon\").call(e._selection.enter.bind(e._selection)).on(\"click\", function(t) {\n\t\t\tlet n = r.data();\n\t\t\tr.click(t.map((t) => e.rowToObj(n[t.origRow.rowIdx])), r.columns()[1], e._selection.selected(this));\n\t\t}).on(\"dblclick\", function(t) {\n\t\t\tlet n = r.data();\n\t\t\tr.dblclick(t.map((t) => e.rowToObj(n[t.origRow.rowIdx])), r.columns()[1], e._selection.selected(this));\n\t\t}).on(\"mouseout.tooltip\", r.tooltip.hide).on(\"mousemove.tooltip\", r.tooltip.show).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(0)\";\n\t\t}).merge(c).transition().duration(n).attr(\"d\", this._hexbin.hexagon()).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(1)\";\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn r._palette(e.length, o, s);\n\t\t}), c.exit().transition().duration(n).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(0)\";\n\t\t}).remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tclick(e, t, n) {}\n\tdblclick(e, t, n) {}\n};\nHexBin.prototype._class += \" chart_HexBin\", HexBin.prototype.implements(t.prototype), HexBin.prototype.implements(i.prototype), HexBin.prototype.publish(\"paletteID\", \"Blues\", \"set\", \"Color palette for this widget\", HexBin.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), HexBin.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), HexBin.prototype.publish(\"binSize\", 20, \"number\", \"Bin radius\", null, { range: {\n\tmin: 1,\n\tmax: 300,\n\tstep: 1\n} });\n//#endregion\n//#region src/Line.ts\nvar Line = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"linear\");\n\t}\n};\nLine.prototype._class += \" chart_Line\";\n//#endregion\n//#region src/QuarterPie.ts\nvar QuarterPie = class extends Pie {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t);\n\t\tlet n = this.orientation() === \"left\" ? 0 : this._size.width, r = this._size.height;\n\t\tthis._drawStartPos === \"origin\" && this._target instanceof SVGElement && (n -= this._size.width / 2, r -= this._size.height / 2), this._element.attr(\"transform\", \"translate(\" + n + \",\" + r + \")scale(\" + this._widgetScale + \")\");\n\t}\n\tupdateD3Pie() {\n\t\tsuper.updateD3Pie(), this.d3Pie.startAngle(this.orientation() === \"left\" ? 0 : -Math.PI / 2).endAngle(this.orientation() === \"left\" ? Math.PI / 2 : 0);\n\t}\n\tcalcOuterRadius() {\n\t\tlet e = this.textSize(this.data().map((e) => this.getLabelText({ data: e })), \"Verdana\", 12).width;\n\t\treturn Math.min(this._size.width - e - 10, this._size.height - 36) - 2;\n\t}\n};\nQuarterPie.prototype._class += \" chart_QuarterPie\", QuarterPie.prototype.publish(\"orientation\", \"left\", \"set\", \"Determines the placement and start/end angle.\", [\"left\", \"right\"]);\n//#endregion\n//#region src/QuartileCandlestick.ts\nvar QuartileCandlestick = class extends l {\n\t_g;\n\t_leftLine;\n\t_rightLine;\n\t_midLine;\n\t_midOuterRect;\n\t_midInnerRect1;\n\t_midInnerRect2;\n\t_q0text;\n\t_q1text;\n\t_q2text;\n\t_q3text;\n\t_q4text;\n\t_q0val;\n\t_q1val;\n\t_q2val;\n\t_q3val;\n\t_q4val;\n\tconstructor() {\n\t\tsuper();\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._g = t.append(\"g\"), this._leftLine = this._g.append(\"rect\"), this._rightLine = this._g.append(\"rect\"), this._midLine = this._g.append(\"rect\"), this._midOuterRect = this._g.append(\"rect\"), this._midInnerRect1 = this._g.append(\"rect\"), this._midInnerRect2 = this._g.append(\"rect\"), this._q0text = this._g.append(\"text\"), this._q1text = this._g.append(\"text\"), this._q2text = this._g.append(\"text\"), this._q3text = this._g.append(\"text\"), this._q4text = this._g.append(\"text\"), this._q0val = this._g.append(\"text\"), this._q1val = this._g.append(\"text\"), this._q2val = this._g.append(\"text\"), this._q3val = this._g.append(\"text\"), this._q4val = this._g.append(\"text\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = (this.orientation() === \"horizontal\" ? this.width() : this.height()) - this.lineWidth(), r = this.orientation() === \"horizontal\" ? this.height() : this.width(), i = P().domain([this.data()[0], this.data()[4]]).range([this.edgePadding(), n - this.edgePadding()]), a = this.candleWidth_exists() ? this.candleWidth() : r, o = this.lineWidth(), s = this.lineColor(), c = this.roundedCorners(), l = this.edgePadding(), u = i(this.data()[1]), d = i(this.data()[2]), f = i(this.data()[3]), p = -a / 2, m = a / 2, h = this.upperTextRotation(), g = this.lowerTextRotation(), _ = this.textPadding(), v = this.labelFontSize(), b = this.valueFontSize(), S = Math.max(v, b), C = n - l;\n\t\tif (S > 0) {\n\t\t\tfor (; u - l < S;) u += S;\n\t\t\tfor (; d - u < S;) d += S;\n\t\t\tfor (; f - d < S;) f += S;\n\t\t\tfor (; C - f < S;) f -= S;\n\t\t\tfor (; f - d < S;) d -= S;\n\t\t\tfor (; d - u < S;) u -= S;\n\t\t}\n\t\tlet w = -n / 2 - this.lineWidth() / 2, T = 0, E = 0, D = 1, O = \"start\", k = \"end\";\n\t\tthis.orientation() === \"vertical\" && (w = 0, T = n / 2 + this.lineWidth() / 2, E = -90, O = \"end\", k = \"start\", D = -1), this._g.style(\"shape-rendering\", \"crispEdges\").attr(\"transform\", `translate(${w},${T})rotate(${E})scale(1)`), this._leftLine.attr(\"fill\", s).attr(\"height\", a).attr(\"width\", o).attr(\"x\", l).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._rightLine.attr(\"class\", \"right-line\").attr(\"fill\", s).attr(\"height\", a).attr(\"width\", o).attr(\"x\", C).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._midLine.attr(\"fill\", s).attr(\"height\", o).attr(\"width\", C - l).attr(\"x\", l).attr(\"y\", -o / 2), this._midOuterRect.attr(\"fill\", s).attr(\"height\", a).attr(\"width\", f - u).attr(\"x\", u).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._midInnerRect1.attr(\"fill\", this.innerRectColor()).attr(\"height\", a - o * 2).attr(\"width\", d - (u + o * 2)).attr(\"x\", u + o).attr(\"y\", o - a / 2).attr(\"rx\", c * .618).attr(\"ry\", c * .618), this._midInnerRect2.attr(\"fill\", this.innerRectColor()).attr(\"height\", a - o * 2).attr(\"width\", f - d - o).attr(\"x\", d).attr(\"y\", o - a / 2).attr(\"rx\", c * .618).attr(\"ry\", c * .618), this._q0text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${l}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"hanging\").text(this.columns()[0]), this._q1text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${u}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[1]), this._q2text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${d}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[2]), this._q3text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${f}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[3]), this._q4text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${C + o}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"baseline\").text(this.columns()[4]), this._q0val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${l}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"hanging\").text(this.data()[0]), this._q1val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${u}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[1]), this._q2val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${d}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[2]), this._q3val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${f}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[3]), this._q4val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${C + o}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"baseline\").text(this.data()[4]);\n\t}\n};\nQuartileCandlestick.prototype._class += \" chart_QuartileCandlestick\", QuartileCandlestick.prototype.publish(\"textColor\", \"black\", \"html-color\", \"Color of label and value text\"), QuartileCandlestick.prototype.publish(\"showLabels\", !0, \"boolean\", \"If true, labels will be shown\"), QuartileCandlestick.prototype.publish(\"showValues\", !0, \"boolean\", \"If true, values will be shown\"), QuartileCandlestick.prototype.publish(\"orientation\", \"horizontal\", \"set\", \"Determines layout\", [\"horizontal\", \"vertical\"]), QuartileCandlestick.prototype.publish(\"valueFontSize\", 12, \"number\", \"Font size of value text (pixels)\"), QuartileCandlestick.prototype.publish(\"labelFontSize\", 12, \"number\", \"Font size of label text (pixels)\"), QuartileCandlestick.prototype.publish(\"roundedCorners\", 8, \"number\", \"Radius of rounded rect corners (pixels)\"), QuartileCandlestick.prototype.publish(\"lineWidth\", 4, \"number\", \"Width of lines (pixels)\"), QuartileCandlestick.prototype.publish(\"candleWidth\", null, \"number\", \"Height of outer rect (pixels)\", null, { optional: !0 }), QuartileCandlestick.prototype.publish(\"textPadding\", 8, \"number\", \"Padding between outer rect and text (pixels)\"), QuartileCandlestick.prototype.publish(\"edgePadding\", 30, \"number\", \"Padding between outer rect and left/right sides (pixels)\"), QuartileCandlestick.prototype.publish(\"lineColor\", \"#333\", \"html-color\", \"Color of outer rect and lines\"), QuartileCandlestick.prototype.publish(\"innerRectColor\", \"white\", \"html-color\", \"Color of the inner rects\"), QuartileCandlestick.prototype.publish(\"upperTextRotation\", -60, \"number\", \"Rotation of label text (degrees)\"), QuartileCandlestick.prototype.publish(\"lowerTextRotation\", -60, \"number\", \"Rotation of value text (degrees)\");\n//#endregion\n//#region src/Radar.ts\nvar Radar = class extends l {\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), d.SimpleSelectionMixin.call(this);\n\t}\n\tmapShape(e) {\n\t\tswitch (e) {\n\t\t\tcase \"rectangle\": return \"rect\";\n\t\t\tcase \"circle\": return \"circle\";\n\t\t\tcase \"cross\": return \"path\";\n\t\t\tdefault:\n\t\t}\n\t}\n\tsetPointAttributes(e, t, n) {\n\t\tlet r = this.mapShape(this.pointShape()), i = this;\n\t\tswitch (r) {\n\t\t\tcase \"rect\":\n\t\t\t\te.attr(\"width\", i.pointSize()).attr(\"height\", i.pointSize()).style(\"fill\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tcase \"circle\":\n\t\t\t\te.attr(\"r\", i.pointSize() / 2).attr(\"cx\", t).attr(\"cy\", n).style(\"fill\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tcase \"path\":\n\t\t\t\tlet r = i.pointSize() / 2;\n\t\t\t\te.attr(\"d\", function(e) {\n\t\t\t\t\treturn \"M\" + (t - r) + \" \" + (n - r) + \" L\" + (t + r) + \" \" + (n + r) + \" M\" + (t - r) + \" \" + (n + r) + \" L\" + (t + r) + \" \" + (n - r);\n\t\t\t\t}).style(\"stroke\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this.tooltipHTML((e) => this.tooltipFormat({\n\t\t\tlabel: e.label,\n\t\t\tseries: e.column,\n\t\t\tvalue: e.value\n\t\t}));\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._palette = this._palette.switch(this.paletteID());\n\t\tlet n = this, r = this.height(), i = this.width(), a = r / 2, o = i / 2, s = this.columns(), c = this.data(), l = this.flattenData(s, c).map((e, t) => (e.shape = this.mapShape(this.pointShape()), e.column = s[e.colIdx], e.row = c[t], e)), u = [], d = this.degrees2radians(360 / this.data().length), f = this.fontSize(), p = 0;\n\t\tl.filter((e) => e.colIdx === 1).forEach((e) => {\n\t\t\tlet t = super.textSize(e.label, `${this.fontFamily()}`, this.fontSize());\n\t\t\tp < t.width && (p = t.width);\n\t\t});\n\t\tlet m = Math.min(a - f, o - p), h = t.selectAll(\".label\").data(l.filter((e) => e.colIdx === 1)), g = Math.max.apply(n, l.map((e) => e.value));\n\t\th.enter().append(\"text\").attr(\"class\", \"label\").attr(\"text-anchor\", \"middle\").merge(h).attr(\"font-size\", this.fontSize()).attr(\"font-family\", this.fontFamily()).each(function(e, t) {\n\t\t\tlet r = n.polar2cartesian(m, t * d - Math.PI / 2);\n\t\t\tu.push(r.map((e) => e * n.labelPaddingRatio()));\n\t\t\tlet i = \"middle\", a = Math.round(r[0]);\n\t\t\ti = a > 0 ? \"start\" : i, i = a < 0 ? \"end\" : i, z(this).attr(\"text-anchor\", i).attr(\"x\", r[0]).attr(\"y\", r[1]);\n\t\t}).text((e) => e.label), h.exit().remove();\n\t\tlet _ = t.selectAll(\".domain\").data(l.filter((e) => e.colIdx === 1));\n\t\t_.enter().append(\"line\").classed(\"domain\", !0).style(\"stroke\", \"#000\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"1px\").merge(_).attr(\"x1\", 0).attr(\"y1\", 0).attr(\"x2\", (e, t) => u[t][0]).attr(\"y2\", (e, t) => u[t][1]), _.exit().remove();\n\t\tlet v = t.selectAll(\".value_guide\").data(this.valueGuideRatios());\n\t\tv.enter().append(\"polygon\").classed(\"value_guide\", !0).style(\"stroke\", \"grey\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"0.3px\").merge(v).each(function(e, t) {\n\t\t\tlet n = [];\n\t\t\tu.forEach((t, r) => {\n\t\t\t\tn.push([t[0] * e, t[1] * e]);\n\t\t\t}), z(this).attr(\"points\", n.join(\" \")).attr(\"stroke\", \"rgb(0, 0, 0)\").attr(\"stroke-opacity\", .75).attr(\"stroke-width\", .3).attr(\"fill-opacity\", 0);\n\t\t}), v.exit().remove();\n\t\tlet b = t.selectAll(\".value_guide_text\").data(this.valueGuideRatios());\n\t\tb.enter().append(\"text\").attr(\"class\", \"value_guide_text\").attr(\"text-anchor\", \"start\").attr(\"font-size\", this.fontSize()).attr(\"font-family\", this.fontFamily()).merge(b).attr(\"x\", 2).attr(\"y\", (e) => u[0][1] * e).text((e, t) => Math.round(e * g)), v.exit().remove();\n\t\tlet S = t.selectAll(\".area\").data(s.filter((e, t) => t > 0));\n\t\tS.enter().append(\"polygon\").attr(\"class\", \"area\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"0.3px\").merge(S).style(\"stroke\", (e) => this.strokeColor([], e, 0)).style(\"fill\", (e) => this.fillColor([], e, 0)).style(\"fill-opacity\", this.fillOpacity()).attr(\"points\", (e, t) => u.map((e, n) => {\n\t\t\tlet r = c[n][t + 1], i = r === 0 ? 0 : r / g;\n\t\t\treturn e[0] * i + \",\" + e[1] * i;\n\t\t}).join(\" \")), S.exit().remove();\n\t\tlet C = t.selectAll(\".point\").data(l);\n\t\tC.enter().append(\"g\").attr(\"class\", \"point\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).on(\"click\", function(e, t) {\n\t\t\tlet r = n.data()[e.rowIdx], i = n.rowToObj(r), a = n._selection.selected(this);\n\t\t\tn.click(i, n.columns()[e.colIdx], a);\n\t\t}).on(\"dblclick\", function(e, t) {\n\t\t\tn.dblclick(n.rowToObj(n.data()[e.rowIdx]), e.column, n._selection.selected(this));\n\t\t}).each(function(e) {\n\t\t\tlet t = z(this);\n\t\t\tt.append(\"circle\").attr(\"class\", \"pointSelection\").attr(\"r\", n.pointSize()).call(n._selection.enter.bind(n._selection)), t.append(n.mapShape(n.pointShape())).attr(\"class\", \"pointShape\");\n\t\t}).merge(C).each(function(e) {\n\t\t\tlet t = z(this), r = e.value === 0 ? 0 : e.value / g, i = u[e.rowIdx][0] * r, a = u[e.rowIdx][1] * r;\n\t\t\tt.select(\".pointSelection\").attr(\"cx\", i).attr(\"cy\", a);\n\t\t\tlet o = t.select(\".pointShape\").style(\"stroke\", n.strokeColor(e.row, e.column, e.value)).style(\"fill\", n.fillColor(e.row, e.column, e.value));\n\t\t\tn.setPointAttributes(o, i, a);\n\t\t}), C.exit().remove();\n\t}\n\tpolar2cartesian(e, t) {\n\t\treturn [e * Math.cos(t), e * Math.sin(t)];\n\t}\n\tcartesian2polar(e, t) {\n\t\treturn [Math.atan2(t, e), Math.sqrt(e * e + t * t)];\n\t}\n\tdegrees2radians(e) {\n\t\treturn e / 57.295779513;\n\t}\n\tradians2degrees(e) {\n\t\treturn e * 57.295779513;\n\t}\n\tpoint_in_polygon(e, t) {\n\t\tlet n = e[0], r = e[1], i = !1;\n\t\tfor (let e = 0, a = t.length - 1; e < t.length; a = e++) {\n\t\t\tlet o = t[e][0], s = t[e][1], c = t[a][0], l = t[a][1];\n\t\t\ts > r != l > r && n < (c - o) * (r - s) / (l - s) + o && (i = !i);\n\t\t}\n\t\treturn i;\n\t}\n};\nRadar.prototype._class += \" chart_Radar\", Radar.prototype.implements(r.prototype), Radar.prototype.implements(i.prototype), Radar.prototype.mixin(d.SimpleSelectionMixin), Radar.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Radar.prototype._palette.switch()), Radar.prototype.publish(\"pointShape\", \"cross\", \"set\", \"pointShape\", [\n\t\"circle\",\n\t\"rectangle\",\n\t\"cross\"\n]), Radar.prototype.publish(\"pointSize\", 6, \"number\", \"Point Size\", null, { range: {\n\tmin: 1,\n\tstep: 1,\n\tmax: 200\n} }), Radar.prototype.publish(\"valueGuideRatios\", [\n\t.2,\n\t.4,\n\t.6,\n\t.8,\n\t1\n], \"array\", \"Array of values between 0 and 1 that are multiplied by the widget radius to produce guide lines\"), Radar.prototype.publish(\"fillOpacity\", .66, \"number\", \"Opacity of the data polygon(s)\"), Radar.prototype.publish(\"fontFamily\", \"\", \"string\", \"fontFamily\"), Radar.prototype.publish(\"fontSize\", 16, \"number\", \"fontSize\"), Radar.prototype.publish(\"labelPaddingRatio\", .9, \"number\", \"labelPaddingRatio\");\n//#endregion\n//#region src/RadialBar.ts\nvar RadialBar = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\"\n\t}];\n\t_domainScale = N();\n\t_valueScale = P();\n\t_d3Arc = arc_default$1().startAngle(0).endAngle((e) => this._valueScale(e[1]));\n\t_arcs;\n\t_axialAxis;\n\t_radialAxis;\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), d.SimpleSelectionMixin.call(this);\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this.tooltipHTML((e) => this.tooltipFormat({\n\t\t\tlabel: e[0],\n\t\t\tvalue: e[1]\n\t\t})), this._radialAxis = t.append(\"g\").attr(\"class\", \"r axis\"), this._axialAxis = t.append(\"g\").attr(\"class\", \"a axis\"), this._arcs = t.append(\"g\").attr(\"class\", \"data\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this, r = Math.max(this.valueDomainHigh_exists() ? this.valueDomainHigh() : 0, ...this.data().map((e) => e[1]));\n\t\tthis._valueScale.domain([0, r]).range([0, this.radians(this.valueMaxAngle())]);\n\t\tlet i = this._valueScale.ticks(this.tickCount()), a = this.textSize(i.map((e) => \"\" + e), \"Verdana\", 12).width, o = Math.min(this.width() - (10 + a) * 2, this.height() - 44) / 2, s = this.data().map((e) => e[0]);\n\t\tthis._domainScale.domain(s).range([0, o]).padding(this.domainPadding());\n\t\tlet c = this._domainScale.step() * this._domainScale.padding(), l = this._radialAxis.selectAll(\"circle\").data(s);\n\t\tl.enter().append(\"circle\").attr(\"fill\", \"transparent\").merge(l).attr(\"r\", (e) => this._domainScale(e) + this._domainScale.step() - c / 2), l.exit().remove();\n\t\tlet u = this._radialAxis.selectAll(\".arc-text\").data(s);\n\t\tu.enter().append(\"text\").attr(\"class\", \"arc-text\").attr(\"x\", -4).attr(\"alignment-baseline\", \"middle\").attr(\"text-anchor\", \"end\").merge(u).attr(\"y\", (e) => -this._domainScale(e) - this._domainScale.bandwidth() / 2).text((e) => e), u.exit().remove();\n\t\tlet d = this._axialAxis.selectAll(\"line\").data(i);\n\t\td.enter().append(\"line\").merge(d).attr(\"x2\", (e) => o * Math.cos(this._valueScale(e) - this.radians(90))).attr(\"y2\", (e) => o * Math.sin(this._valueScale(e) - this.radians(90))), d.exit().remove();\n\t\tlet f = this._axialAxis.selectAll(\"text\").data(i);\n\t\tf.enter().append(\"text\").style(\"dominant-baseline\", \"central\").merge(f).attr(\"x\", (e) => (o + 10) * Math.cos(this._valueScale(e) - this.radians(90))).attr(\"y\", (e) => (o + 10) * Math.sin(this._valueScale(e) - this.radians(90))).style(\"text-anchor\", (e) => {\n\t\t\tlet t = this.degrees(this._valueScale(e));\n\t\t\treturn t >= 0 && t <= 20 || t >= 160 && t <= 200 || t >= 340 && t <= 360 ? \"middle\" : t >= 180 && t <= 360 ? \"end\" : null;\n\t\t}).text((e) => e), f.exit().remove();\n\t\tlet p = this.columns().length > 1 ? this.columns()[1] : \"\";\n\t\tthis._d3Arc.innerRadius((e) => this._domainScale(e[0])).outerRadius((e) => this._domainScale(e[0]) + this._domainScale.bandwidth());\n\t\tlet m = this._arcs.selectAll(\"path\").data(this.data(), (e) => e[0]);\n\t\tm.enter().append(\"path\").attr(\"class\", \"arc\").call(this._selection.enter.bind(this._selection)).on(\"mouseout.tooltip\", this.tooltip.hide).on(\"mousemove.tooltip\", this.tooltip.show).on(\"click\", function(e, t) {\n\t\t\tn.click(n.rowToObj(e), p, n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e, t) {\n\t\t\tn.dblclick(n.rowToObj(e), p, n._selection.selected(this));\n\t\t}).merge(m).style(\"fill\", (e, t) => this.fillColor(e, e[0], e[1])).transition().delay((e, t) => t * this.transitionDelay()).duration(this.transitionDuration()).attrTween(\"d\", (e, t) => {\n\t\t\tlet n = E(e._current || 0, e[1]);\n\t\t\treturn e._current = e[1], (r) => this._d3Arc([e[0], n(r)], t);\n\t\t}), m.exit().remove();\n\t}\n\tdegrees(e) {\n\t\treturn e * 180 / Math.PI;\n\t}\n\tradians(e) {\n\t\treturn e * Math.PI / 180;\n\t}\n};\nRadialBar.prototype._class += \" chart_RadialBar\", RadialBar.prototype.implements(r.prototype), RadialBar.prototype.implements(i.prototype), RadialBar.prototype.mixin(d.SimpleSelectionMixin), RadialBar.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", RadialBar.prototype._palette.switch()), RadialBar.prototype.publish(\"tickCount\", 10, \"number\", \"Number of ticks to display\"), RadialBar.prototype.publish(\"domainPadding\", .25, \"number\", \"Padding between chart edge and container edge (0..1)\"), RadialBar.prototype.publish(\"valueMaxAngle\", 270, \"number\", \"Maximum angular length of a bar (degrees)\"), RadialBar.prototype.publish(\"valueDomainHigh\", null, \"number\", \"Value domain high\", void 0, { optional: !0 }), RadialBar.prototype.publish(\"transitionDelay\", 100, \"number\", \"Delay between the start of each row animation (ms)\"), RadialBar.prototype.publish(\"transitionDuration\", 750, \"number\", \"Duration of a row's animation (ms)\");\n//#endregion\n//#region src/StatChart.ts\nvar en = c.rainbow(\"Blues\"), tn = c.ordinal(\"Quartile\", [\n\ten(100, 0, 100),\n\ten(50, 0, 100),\n\ten(50, 0, 100),\n\ten(75, 0, 100)\n]);\ntn(\"Std. Dev.\"), tn(\"MinMax\"), tn(\"25%\"), tn(\"50%\");\nfunction myFormatter(e) {\n\tlet t = w(e);\n\treturn function(e) {\n\t\tlet n = (Math.round(e * 100) / 100).toString();\n\t\treturn n.length <= 4 ? n : t(e);\n\t};\n}\nvar StatChart = class extends s {\n\t_selectElement;\n\t_tickFormatter;\n\t_bellCurve = new Scatter().columns([\"\", \"Std. Dev.\"]).paletteID(\"Quartile\").interpolate_default(\"basis\").pointSize(0).xAxisType(\"linear\").xAxisOverlapMode(\"none\").xAxisTickFormat(\",\").yAxisHidden(!0).yAxisDomainLow(0).yAxisDomainHigh(110).yAxisGuideLines(!1);\n\t_candle = new QuartileCandlestick().columns([\n\t\t\"Min\",\n\t\t\"25%\",\n\t\t\"50%\",\n\t\t\"75%\",\n\t\t\"Max\"\n\t]).edgePadding(0).roundedCorners(1).lineWidth(1).upperTextRotation(-90).lowerTextRotation(-90).labelFontSize(0).valueFontSize(0).lineColor(en(90, 0, 100)).innerRectColor(en(10, 0, 100));\n\tconstructor() {\n\t\tsuper(), this.columns([\n\t\t\t\"Min\",\n\t\t\t\"25%\",\n\t\t\t\"50%\",\n\t\t\t\"75%\",\n\t\t\t\"Max\",\n\t\t\t\"Mean\",\n\t\t\t\"Std. Dev.\"\n\t\t]);\n\t}\n\tstdDev(e) {\n\t\treturn this.mean() + e * this.standardDeviation();\n\t}\n\tformatStdDev(e) {\n\t\treturn this._tickFormatter(this.stdDev(e));\n\t}\n\tquartile(e) {\n\t\treturn this.quartiles()[e];\n\t}\n\tformatQ(e) {\n\t\treturn this._tickFormatter(this.quartile(e));\n\t}\n\tdomain(e) {\n\t\tswitch (e) {\n\t\t\tcase \"25_75\": return [this.quartile(1), this.quartile(3)];\n\t\t\tcase \"normal\": return [this.stdDev(-4), this.stdDev(4)];\n\t\t\tdefault: return [this.quartile(0), this.quartile(4)];\n\t\t}\n\t}\n\tmin() {\n\t\treturn this.quartile(0);\n\t}\n\tmax() {\n\t\treturn this.quartile(4);\n\t}\n\tdata(e) {\n\t\tif (!arguments.length) return [[\n\t\t\t...this.quartiles(),\n\t\t\tthis.mean(),\n\t\t\tthis.standardDeviation()\n\t\t]];\n\t\tlet t = e[0];\n\t\treturn this.quartiles([\n\t\t\tt[0],\n\t\t\tt[1],\n\t\t\tt[2],\n\t\t\tt[3],\n\t\t\tt[4]\n\t\t]), this.mean(t[5]), this.standardDeviation(t[6]), this;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._bellCurve.target(t.append(\"div\").node()), this._candle.target(t.append(\"div\").node()), this._selectElement = t.append(\"div\").style(\"position\", \"absolute\").style(\"top\", \"0px\").style(\"right\", \"0px\").append(\"select\").on(\"change\", () => {\n\t\t\tthis.view(this._selectElement.node().value), this.lazyRender();\n\t\t}), this._selectElement.append(\"option\").attr(\"value\", \"min_max\").text(\"Min / Max\"), this._selectElement.append(\"option\").attr(\"value\", \"25_75\").text(\"25% / 75%\"), this._selectElement.append(\"option\").attr(\"value\", \"normal\").text(\"Normal\");\n\t}\n\tbellTicks(e) {\n\t\tlet t;\n\t\tswitch (e) {\n\t\t\tcase \"25_75\":\n\t\t\t\tt = [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(1),\n\t\t\t\t\t\tvalue: this.quartile(1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(2),\n\t\t\t\t\t\tvalue: this.quartile(2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(3),\n\t\t\t\t\t\tvalue: this.quartile(3)\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\tcase \"normal\":\n\t\t\t\tt = [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(-4),\n\t\t\t\t\t\tvalue: this.stdDev(-4)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-3σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-3)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-2σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-1σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(0),\n\t\t\t\t\t\tvalue: this.stdDev(0)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+1σ\",\n\t\t\t\t\t\tvalue: this.stdDev(1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+2σ\",\n\t\t\t\t\t\tvalue: this.stdDev(2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+3σ\",\n\t\t\t\t\t\tvalue: this.stdDev(3)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(4),\n\t\t\t\t\t\tvalue: this.stdDev(4)\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\tdefault: t = [\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(0),\n\t\t\t\t\tvalue: this.quartile(0)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(1),\n\t\t\t\t\tvalue: this.quartile(1)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(2),\n\t\t\t\t\tvalue: this.quartile(2)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(3),\n\t\t\t\t\tvalue: this.quartile(3)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(4),\n\t\t\t\t\tvalue: this.quartile(4)\n\t\t\t\t}\n\t\t\t];\n\t\t}\n\t\tlet [n, r] = this.domain(this._selectElement.node().value);\n\t\treturn t.filter((e) => e.value >= n && e.value <= r).map((e) => ({\n\t\t\tlabel: e.label,\n\t\t\tvalue: e.value.toString()\n\t\t}));\n\t}\n\tupdateScatter() {\n\t\tlet e = this._selectElement.node().value, [t, n] = this.domain(e), r = (n - t) * (this.domainPadding() / 100);\n\t\tthis._bellCurve.xAxisDomainLow(t - r).xAxisDomainHigh(n + r).xAxisTicks(this.bellTicks(e)).data([\n\t\t\t[this.stdDev(-4), 0],\n\t\t\t[this.stdDev(-3), .3],\n\t\t\t[this.stdDev(-2), 5],\n\t\t\t[this.stdDev(-1), 68],\n\t\t\t[this.stdDev(0), 100],\n\t\t\t[this.stdDev(1), 68],\n\t\t\t[this.stdDev(2), 5],\n\t\t\t[this.stdDev(3), .3],\n\t\t\t[this.stdDev(4), 0]\n\t\t]).resize({\n\t\t\twidth: this.width(),\n\t\t\theight: this.height() - this.candleHeight()\n\t\t}).render();\n\t}\n\tupdateCandle() {\n\t\tlet e = this._bellCurve.dataPos(this.quartile(0)), t = this._bellCurve.dataPos(this.quartile(4)) - e;\n\t\tthis._candle.resize({\n\t\t\twidth: this.width(),\n\t\t\theight: this.candleHeight()\n\t\t}).pos({\n\t\t\tx: e + t / 2 + 2,\n\t\t\ty: this.candleHeight() / 2\n\t\t}).width(t).candleWidth(this.candleHeight()).data(this.quartiles()).render();\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._tickFormatter = myFormatter(this.tickFormat()), this._selectElement.node().value = this.view(), this.updateScatter(), this.updateCandle();\n\t}\n\texit(e, t) {\n\t\tthis._bellCurve.target(null), this._candle.target(null), this._selectElement.remove(), super.exit(e, t);\n\t}\n};\nStatChart.prototype._class += \" chart_StatChart\", StatChart.prototype.publish(\"view\", \"min_max\", \"set\", \"View\", [\n\t\"min_max\",\n\t\"25_75\",\n\t\"normal\"\n]), StatChart.prototype.publish(\"tickFormat\", \".2e\", \"string\", \"X-Axis Tick Format\"), StatChart.prototype.publish(\"candleHeight\", 20, \"number\", \"Height of candle widget (pixels)\"), StatChart.prototype.publish(\"domainPadding\", 10, \"number\", \"Domain value padding\"), StatChart.prototype.publish(\"mean\", .5, \"number\", \"Mean\"), StatChart.prototype.publish(\"standardDeviation\", .125, \"number\", \"Standard Deviation (σ)\"), StatChart.prototype.publish(\"quartiles\", [\n\t0,\n\t.25,\n\t.5,\n\t.75,\n\t1\n], \"object\", \"Quartiles (Min, 25%, 50%, 75%, Max)\");\n//#endregion\n//#region src/Step.ts\nvar Step = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"step\");\n\t}\n};\nStep.prototype._class += \" chart_Step\";\n//#endregion\n//#region src/Summary.ts\nvar nn = \"text\", rn = \"html\", Summary = class extends s {\n\t_playIntervalIdx = 0;\n\t_mainDiv;\n\t_headerDiv;\n\t_textDiv;\n\tconstructor() {\n\t\tsuper(), this._tag = \"div\", this._drawStartPos = \"center\", this.playInterval(this.playInterval());\n\t}\n\tlookupFieldIdx(e, t) {\n\t\tlet n = t;\n\t\tif (!(this[e + \"_exists\"]() && (n = this.columns().indexOf(this[e]()), n < 0))) return n;\n\t}\n\tlookupFieldText(e, t) {\n\t\treturn this[e + \"_exists\"]() ? this[e]() : t === void 0 ? \"\" : this.columns()[t] || \"\";\n\t}\n\tcurrentRow() {\n\t\treturn this.data()[this._playIntervalIdx];\n\t}\n\tsummaryData() {\n\t\tlet e;\n\t\tthis.hideLabel() || (e = this.lookupFieldIdx(\"labelColumn\", 0));\n\t\tlet t = this.lookupFieldIdx(\"iconColumn\"), n = this.lookupFieldIdx(\"valueColumn\", 1), r, i;\n\t\tthis.hideMore() || (r = this.lookupFieldIdx(\"moreIconColumn\"), i = this.lookupFieldIdx(\"moreTextColumn\"));\n\t\tlet a = this.lookupFieldIdx(\"colorFillColumn\"), o = this.lookupFieldIdx(\"colorStrokeColumn\");\n\t\treturn this.formattedData().map(function(s) {\n\t\t\treturn {\n\t\t\t\ticon: t === void 0 ? this.icon() : s[t],\n\t\t\t\tlabel: e === void 0 ? \"\" : s[e],\n\t\t\t\tvalue: s[n],\n\t\t\t\tmoreIcon: r === void 0 ? this.hideMore() ? \"\" : this.moreIcon() : s[r],\n\t\t\t\tmoreText: i === void 0 ? this.hideMore() ? \"\" : this.moreText() : s[i],\n\t\t\t\tfill: a === void 0 ? this.colorFill() : s[a],\n\t\t\t\tstroke: o === void 0 ? this.colorStroke() : s[o]\n\t\t\t};\n\t\t}, this);\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._mainDiv = t.append(\"div\");\n\t\tlet n = this;\n\t\tthis._headerDiv = this._mainDiv.append(\"h2\").on(\"click\", function() {\n\t\t\tn.click(n.rowToObj(n.currentRow()), n.lookupFieldText(\"valueColumn\", 1), !0);\n\t\t}).on(\"dblclick\", function() {\n\t\t\tn.dblclick(n.rowToObj(n.currentRow()), n.lookupFieldText(\"valueColumn\", 1), !0);\n\t\t}), this._textDiv = this._mainDiv.append(\"div\").attr(\"class\", \"text\").on(\"click\", function() {\n\t\t\tn.click(n.rowToObj(n.currentRow()), n.lookupFieldText(\"labelColumn\", 0), !0);\n\t\t}).on(\"dblclick\", function() {\n\t\t\tn.dblclick(n.rowToObj(n.currentRow()), n.lookupFieldText(\"labelColumn\", 0), !0);\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this.data().length;\n\t\tlet n = this.summaryData();\n\t\tthis._playIntervalIdx >= n.length && (this._playIntervalIdx = 0);\n\t\tlet r = this._playIntervalIdx < n.length ? n[this._playIntervalIdx] : [\"\", \"\"];\n\t\tt.style(\"width\", this.fixedSize() ? this.minWidth_exists() ? this.minWidth() + \"px\" : null : \"100%\").style(\"height\", this.fixedSize() ? this.minHeight_exists() ? this.minHeight() + \"px\" : null : \"100%\"), this._mainDiv.attr(\"class\", \"content bgIcon \" + r.icon).transition().style(\"background-color\", r.fill).style(\"color\", r.stroke).style(\"min-width\", this.minWidth_exists() ? this.minWidth() + \"px\" : null).style(\"min-height\", this.minHeight_exists() ? this.minHeight() + \"px\" : null).style(\"font-size\", this.iconFontSize() + \"px\"), this._headerDiv.transition().style(\"color\", r.stroke).style(\"font-size\", this.headerFontSize() + \"px\")[this.valueHTML() ? rn : nn](r.value), this._textDiv.style(\"font-size\", this.textFontSize() + \"px\")[this.labelHTML() ? rn : nn](r.label);\n\t\tlet i = this, a = this._mainDiv.selectAll(\".more\").data([r]), o = a.enter().append(\"div\").attr(\"class\", \"more\").on(\"click\", function(e) {\n\t\t\ti.click(i.rowToObj(i.currentRow()), i.lookupFieldText(\"moreTextColumn\") || \"more\", !0);\n\t\t}).each(function() {\n\t\t\tlet e = z(this);\n\t\t\te.append(\"i\"), e.append(\"span\");\n\t\t}).merge(a).style(\"display\", this.hideMoreWrapper() ? \"none\" : null).style(\"font-size\", this.moreFontSize() + \"px\").style(\"height\", this.moreWrapperHeight_exists() ? this.moreWrapperHeight() + \"px\" : null).transition().style(\"background-color\", M(r.fill).darker(.75).toString());\n\t\to.select(\"i\").attr(\"class\", function(e) {\n\t\t\treturn \"fa \" + e.moreIcon;\n\t\t}), this.moreTextHTML() ? o.select(\"span\").each(function(e) {\n\t\t\tthis.innerHTML = e.moreText;\n\t\t}) : o.select(\"span\").text((e) => e.moreText), a.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nSummary.prototype._class += \" chart_Summary\", Summary.prototype.implements(n.prototype), Summary.prototype.publish(\"iconColumn\", null, \"set\", \"Select Icon Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"icon\", \"fa-briefcase\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.iconColumn() }), Summary.prototype.publish(\"headerFontSize\", null, \"number\", \"headerFontSize\"), Summary.prototype.publish(\"textFontSize\", null, \"number\", \"textFontSize\"), Summary.prototype.publish(\"moreFontSize\", null, \"number\", \"moreFontSize\"), Summary.prototype.publish(\"iconFontSize\", null, \"number\", \"iconFontSize\"), Summary.prototype.publish(\"hideLabel\", !1, \"boolean\", \"Hide label column\"), Summary.prototype.publish(\"labelColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideLabel()\n}), Summary.prototype.publish(\"labelHTML\", !1, \"boolean\", \"Allow HTML\", null, { disable: (e) => e.hideLabel() }), Summary.prototype.publish(\"valueColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"valueHTML\", !1, \"boolean\", \"Allow HTML\"), Summary.prototype.publish(\"hideMore\", !1, \"boolean\", \"Hide More Information\"), Summary.prototype.publish(\"hideMoreWrapper\", !1, \"boolean\", \"Hide More Information Wrapper\"), Summary.prototype.publish(\"moreWrapperHeight\", null, \"number\", \"Height of the 'more' text wrapper (pixels)\"), Summary.prototype.publish(\"moreIconColumn\", null, \"set\", \"Select More Icon Column\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideMore()\n}), Summary.prototype.publish(\"moreIcon\", \"fa-info-circle\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.hideMore() || e.moreIconColumn() }), Summary.prototype.publish(\"moreTextColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideMore()\n}), Summary.prototype.publish(\"moreText\", \"More Info\", \"string\", \"More text\", null, { disable: (e) => e.hideMore() || e.moreTextColumn() }), Summary.prototype.publish(\"moreTextHTML\", !1, \"boolean\", \"Allow HTML\", null, { disable: (e) => e.hideMore() }), Summary.prototype.publish(\"colorFillColumn\", null, \"set\", \"Column for color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"colorFill\", \"#3498db\", \"html-color\", \"Fill Color\", null, { disable: (e) => e.colorFillColumn() }), Summary.prototype.publish(\"colorStrokeColumn\", null, \"set\", \"Column for color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"colorStroke\", \"#ffffff\", \"html-color\", \"Fill Color\", null, { disable: (e) => e.colorStrokeColumn() }), Summary.prototype.publish(\"fixedSize\", !0, \"boolean\", \"Fix Size to Min Width/Height\"), Summary.prototype.publish(\"minWidth\", 225, \"number\", \"Minimum Width\"), Summary.prototype.publish(\"minHeight\", 150, \"number\", \"Minimum Height\"), Summary.prototype.publish(\"playInterval\", null, \"number\", \"Play Interval\", null, { optional: !0 });\nvar an = Summary.prototype.playInterval;\nSummary.prototype.playInterval = function(e) {\n\tlet t = an.apply(this, arguments);\n\tif (arguments.length) {\n\t\tthis._playIntervalHandle && clearInterval(this._playIntervalHandle);\n\t\tlet t = this;\n\t\te && (this._playIntervalHandle = setInterval(function() {\n\t\t\tt._playIntervalIdx++, t._renderCount && t.data().length && t.render();\n\t\t}, e));\n\t}\n\treturn t;\n};\n//#endregion\n//#region src/SummaryC.ts\nvar SummaryC = class extends a {\n\t_playIntervalIdx = 0;\n\tconstructor() {\n\t\tsuper(), n.call(this), this.playInterval(this.playInterval());\n\t}\n\tcurrentRow() {\n\t\treturn this.data()[this._playIntervalIdx];\n\t}\n\tenter(e, t) {\n\t\tsuper.enter.apply(this, arguments);\n\t\tlet { width: n, height: r } = this.size();\n\t\te.height = r, e.width = n;\n\t}\n\tupdate(e, t) {\n\t\tsuper.update.apply(this, arguments);\n\t\tlet n = this;\n\t\tthis._playIntervalIdx >= this.data().length && (this._playIntervalIdx = 0);\n\t\tlet r = this.size(), i = Math.min(r.width, r.height), a = this.fontSizeRatio(), o = this.columns().indexOf(this.labelColumn()), s = this.columns().indexOf(this.valueColumn()), c = this.columns().indexOf(this.colorFillColumn()), l = this.columns().indexOf(this.colorStrokeColumn()), u = this.columns().indexOf(this.iconColumn()), f = u === -1 ? this.icon() : this.currentRow()[u], p = o === -1 ? \"\" : this.currentRow()[o], m = s === -1 ? \"\" : this.currentRow()[s], h = c === -1 ? this.colorFill() : this.currentRow()[c], g = l === -1 ? this.colorStroke() : this.currentRow()[l], _ = r.height * (a - this.paddingSizeRatio()), v = r.height * (1 - a - this.paddingSizeRatio()), b = r.height * (this.iconSizeRatio() - this.paddingSizeRatio()), S = i * this.paddingSizeRatio(), C = e.getContext(\"2d\");\n\t\tC.clearRect(0, 0, r.width, r.height);\n\t\tlet w = n.fontFamily();\n\t\tC.fillStyle = h, C.fillRect(0, 0, r.width, r.height), C.globalAlpha = this.iconOpacity(), drawIcon(d.faChar(f), b, n.iconAnchor()), C.globalAlpha = this.valueOpacity(), _ = drawText(m, S, _, n.valueAnchor()), C.globalAlpha = this.labelOpacity(), drawText(p, _ + S, v, n.labelAnchor());\n\t\tfunction drawText(e, t, n, i) {\n\t\t\tC.textBaseline = \"top\", C.font = `${n}px ${w}`, C.fillStyle = g;\n\t\t\tlet a = C.measureText(e);\n\t\t\tif (a.width > r.width - S * 2) {\n\t\t\t\tlet t = (r.width - S * 2) / a.width;\n\t\t\t\tn *= t, C.font = `${n}px ${w}`, a = C.measureText(e);\n\t\t\t}\n\t\t\tlet o = getTextOffsetX(a.width, i);\n\t\t\treturn C.fillText(e, o, t), n;\n\t\t}\n\t\tfunction drawIcon(e, t, i) {\n\t\t\tif (e === void 0) return;\n\t\t\tC.textBaseline = n.iconBaseline(), C.font = `${t}px FontAwesome`, C.fillStyle = g;\n\t\t\tlet a = C.measureText(e);\n\t\t\ta.width > r.width - S * 2 && (C.font = `${t * ((r.width - S * 2) / a.width)}px FontAwesome`, a = C.measureText(e));\n\t\t\tlet o = getTextOffsetX(a.width, i), s = getTextOffsetY(n.iconBaseline());\n\t\t\tC.fillText(e, o, s);\n\t\t}\n\t\tfunction getTextOffsetX(e, t) {\n\t\t\tswitch (t) {\n\t\t\t\tcase \"start\": return S;\n\t\t\t\tcase \"middle\": return r.width / 2 - e / 2;\n\t\t\t\tcase \"end\": return r.width - e - S;\n\t\t\t}\n\t\t}\n\t\tfunction getTextOffsetY(e) {\n\t\t\tswitch (e) {\n\t\t\t\tcase \"top\": return S;\n\t\t\t\tcase \"middle\": return r.height / 2;\n\t\t\t\tcase \"bottom\": return r.height - S;\n\t\t\t}\n\t\t}\n\t}\n};\nSummaryC.prototype._class += \" chart_SummaryC\", SummaryC.prototype.implements(n.prototype), SummaryC.prototype.publish(\"iconBaseline\", \"bottom\", \"string\", \"Text baseline for the icon\", [\n\t\"top\",\n\t\"middle\",\n\t\"bottom\"\n]), SummaryC.prototype.publish(\"iconAnchor\", \"end\", \"set\", \"Anchors the icon either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"valueAnchor\", \"start\", \"set\", \"Anchors the value either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"labelAnchor\", \"start\", \"set\", \"Anchors the label either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"iconColumn\", null, \"set\", \"Select Icon Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"icon\", \"fa-briefcase\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.iconColumn() }), SummaryC.prototype.publish(\"fontFamily\", \"Arial\", \"string\", \"Font Family\"), SummaryC.prototype.publish(\"labelColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"valueColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorFillColumn\", null, \"set\", \"Column for background color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorFill\", \"#0097e6\", \"html-color\", \"Background Color\", null, { disable: (e) => e.colorFillColumn() }), SummaryC.prototype.publish(\"colorStrokeColumn\", null, \"set\", \"Column for font color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorStroke\", \"#2f3640\", \"html-color\", \"Font Color\", null, { disable: (e) => e.colorStrokeColumn() }), SummaryC.prototype.publish(\"fixedSize\", !0, \"boolean\", \"Fix Size to Min Width/Height\"), SummaryC.prototype.publish(\"minWidth\", 225, \"number\", \"Minimum Width\"), SummaryC.prototype.publish(\"minHeight\", 150, \"number\", \"Minimum Height\"), SummaryC.prototype.publish(\"playInterval\", null, \"number\", \"Play Interval\", null, { optional: !0 }), SummaryC.prototype.publish(\"fontSizeRatio\", .618, \"number\", \"Ratio between widget height and value font size\"), SummaryC.prototype.publish(\"valueOpacity\", 1, \"number\", \"Opacity of value text (0..1)\"), SummaryC.prototype.publish(\"labelOpacity\", .9, \"number\", \"Opacity of label text (0..1)\"), SummaryC.prototype.publish(\"iconOpacity\", .3, \"number\", \"Opacity of icon text (0..1)\"), SummaryC.prototype.publish(\"paddingSizeRatio\", .1, \"number\", \"Ratio of the smallest dimension for edge padding (0..1)\"), SummaryC.prototype.publish(\"iconSizeRatio\", .9, \"number\", \"Ratio of the height for icon size (0..1)\");\nvar on = SummaryC.prototype.playInterval;\nSummaryC.prototype.playInterval = function(e) {\n\tlet t = on.apply(this, arguments);\n\tif (arguments.length) {\n\t\tthis._playIntervalHandle && clearInterval(this._playIntervalHandle);\n\t\tlet t = this;\n\t\te && (this._playIntervalHandle = setInterval(function() {\n\t\t\tt._playIntervalIdx++, t._renderCount && t.data().length && t.render();\n\t\t}, e));\n\t}\n\treturn t;\n};\n//#endregion\n//#region src/D3Cloud.ts\nvar sn = Math.PI / 180, cn = 64, ln = 2048;\nfunction d3Cloud() {\n\tlet e = v(\"word\", \"end\"), t = {}, n = [256, 256], r = cloudText, i = cloudFont, a = cloudFontSize, o = cloudFontNormal, s = cloudFontNormal, c = cloudRotate, l = cloudPadding, u = [], d = archimedeanSpiral, f = Infinity, p = null, m = Math.random, h = cloudCanvas;\n\tt.canvas = function(e) {\n\t\treturn arguments.length ? (h = functor(e), t) : h;\n\t}, t.start = function() {\n\t\tlet d = getContext(h()), g = zeroArray((n[0] >> 5) * n[1]), _ = null, v = u.length, b = -1, S = [], C = u.map(function(e, t) {\n\t\t\treturn e.text = r.call(this, e, t), e.font = i.call(this, e, t), e.style = o.call(this, e, t), e.weight = s.call(this, e, t), e.rotate = c.call(this, e, t), e.size = ~~a.call(this, e, t), e.padding = l.call(this, e, t), e;\n\t\t}).sort(function(e, t) {\n\t\t\treturn t.size - e.size;\n\t\t});\n\t\treturn p && clearInterval(p), p = setInterval(step, 0), step(), t;\n\t\tfunction step() {\n\t\t\tlet r = Date.now();\n\t\t\tfor (; Date.now() - r < f && ++b < v && p;) {\n\t\t\t\tlet r = C[b];\n\t\t\t\tr.x = n[0] * (m() + .5) >> 1, r.y = n[1] * (m() + .5) >> 1, cloudSprite(d, r, C, b), r.hasText && place(g, r, _) && (S.push(r), e.call(\"word\", t, r), _ ? cloudBounds(_, r) : _ = [{\n\t\t\t\t\tx: r.x + r.x0,\n\t\t\t\t\ty: r.y + r.y0\n\t\t\t\t}, {\n\t\t\t\t\tx: r.x + r.x1,\n\t\t\t\t\ty: r.y + r.y1\n\t\t\t\t}], r.x -= n[0] >> 1, r.y -= n[1] >> 1);\n\t\t\t}\n\t\t\tb >= v && (t.stop(), e.call(\"end\", t, S, _));\n\t\t}\n\t}, t.stop = function() {\n\t\treturn p &&= (clearInterval(p), null), t;\n\t};\n\tfunction getContext(e) {\n\t\te.width = e.height = 1;\n\t\tlet t = Math.sqrt(e.getContext(\"2d\").getImageData(0, 0, 1, 1).data.length >> 2);\n\t\te.width = (cn << 5) / t, e.height = ln / t;\n\t\tlet n = e.getContext(\"2d\");\n\t\treturn n.fillStyle = n.strokeStyle = \"red\", n.textAlign = \"center\", {\n\t\t\tcontext: n,\n\t\t\tratio: t\n\t\t};\n\t}\n\tfunction place(e, t, r) {\n\t\tlet i = t.x, a = t.y, o = Math.sqrt(n[0] * n[0] + n[1] * n[1]), s = d(n), c = m() < .5 ? 1 : -1, l = -c, u, f, p;\n\t\tfor (; (u = s(l += c)) && (f = ~~u[0], p = ~~u[1], !(Math.min(Math.abs(f), Math.abs(p)) >= o));) if (t.x = i + f, t.y = a + p, !(t.x + t.x0 < 0 || t.y + t.y0 < 0 || t.x + t.x1 > n[0] || t.y + t.y1 > n[1]) && (!r || !cloudCollide(t, e, n[0])) && (!r || collideRects(t, r))) {\n\t\t\tlet r = t.sprite, i = t.width >> 5, a = n[0] >> 5, o = t.x - (i << 4), s = o & 127, c = 32 - s, l = t.y1 - t.y0, u = (t.y + t.y0) * a + (o >> 5), d;\n\t\t\tfor (let t = 0; t < l; t++) {\n\t\t\t\td = 0;\n\t\t\t\tfor (let n = 0; n <= i; n++) e[u + n] |= d << c | (n < i ? (d = r[t * i + n]) >>> s : 0);\n\t\t\t\tu += a;\n\t\t\t}\n\t\t\treturn delete t.sprite, !0;\n\t\t}\n\t\treturn !1;\n\t}\n\treturn t.timeInterval = function(e) {\n\t\treturn arguments.length ? (f = e ?? Infinity, t) : f;\n\t}, t.words = function(e) {\n\t\treturn arguments.length ? (u = e, t) : u;\n\t}, t.size = function(e) {\n\t\treturn arguments.length ? (n = [+e[0], +e[1]], t) : n;\n\t}, t.font = function(e) {\n\t\treturn arguments.length ? (i = functor(e), t) : i;\n\t}, t.fontStyle = function(e) {\n\t\treturn arguments.length ? (o = functor(e), t) : o;\n\t}, t.fontWeight = function(e) {\n\t\treturn arguments.length ? (s = functor(e), t) : s;\n\t}, t.rotate = function(e) {\n\t\treturn arguments.length ? (c = functor(e), t) : c;\n\t}, t.text = function(e) {\n\t\treturn arguments.length ? (r = functor(e), t) : r;\n\t}, t.spiral = function(e) {\n\t\treturn arguments.length ? (d = un[e] || e, t) : d;\n\t}, t.fontSize = function(e) {\n\t\treturn arguments.length ? (a = functor(e), t) : a;\n\t}, t.padding = function(e) {\n\t\treturn arguments.length ? (l = functor(e), t) : l;\n\t}, t.random = function(e) {\n\t\treturn arguments.length ? (m = e, t) : m;\n\t}, t.on = function() {\n\t\tlet n = e.on.apply(e, arguments);\n\t\treturn n === e ? t : n;\n\t}, t;\n}\nfunction cloudText(e) {\n\treturn e.text;\n}\nfunction cloudFont() {\n\treturn \"serif\";\n}\nfunction cloudFontNormal() {\n\treturn \"normal\";\n}\nfunction cloudFontSize(e) {\n\treturn Math.sqrt(e.value);\n}\nfunction cloudRotate() {\n\treturn (~~(Math.random() * 6) - 3) * 30;\n}\nfunction cloudPadding() {\n\treturn 1;\n}\nfunction cloudSprite(e, t, n, r) {\n\tif (t.sprite) return;\n\tlet i = e.context, a = e.ratio;\n\ti.clearRect(0, 0, (cn << 5) / a, ln / a);\n\tlet o = 0, s = 0, c = 0, l = n.length;\n\tfor (--r; ++r < l;) {\n\t\tt = n[r], i.save(), i.font = t.style + \" \" + t.weight + \" \" + ~~((t.size + 1) / a) + \"px \" + t.font;\n\t\tlet e = i.measureText(t.text + \"m\").width * a, l = t.size << 1;\n\t\tif (t.rotate) {\n\t\t\tlet n = Math.sin(t.rotate * sn), r = Math.cos(t.rotate * sn), i = e * r, a = e * n, o = l * r, s = l * n;\n\t\t\te = Math.max(Math.abs(i + s), Math.abs(i - s)) + 31 >> 5 << 5, l = ~~Math.max(Math.abs(a + o), Math.abs(a - o));\n\t\t} else e = e + 31 >> 5 << 5;\n\t\tif (l > c && (c = l), o + e >= cn << 5 && (o = 0, s += c, c = 0), s + l >= ln) break;\n\t\ti.translate((o + (e >> 1)) / a, (s + (l >> 1)) / a), t.rotate && i.rotate(t.rotate * sn), i.fillText(t.text, 0, 0), t.padding && (i.lineWidth = 2 * t.padding, i.strokeText(t.text, 0, 0)), i.restore(), t.width = e, t.height = l, t.xoff = o, t.yoff = s, t.x1 = e >> 1, t.y1 = l >> 1, t.x0 = -t.x1, t.y0 = -t.y1, t.hasText = !0, o += e;\n\t}\n\tlet u = i.getImageData(0, 0, (cn << 5) / a, ln / a).data, d = [];\n\tfor (; --r >= 0;) {\n\t\tif (t = n[r], !t.hasText) continue;\n\t\tlet e = t.width, i = e >> 5, a = t.y1 - t.y0;\n\t\tfor (let e = 0; e < a * i; e++) d[e] = 0;\n\t\tif (o = t.xoff, o == null) return;\n\t\ts = t.yoff;\n\t\tlet c = 0, l = -1;\n\t\tfor (let n = 0; n < a; n++) {\n\t\t\tfor (let t = 0; t < e; t++) {\n\t\t\t\tlet e = i * n + (t >> 5), r = u[(s + n) * (cn << 5) + (o + t) << 2] ? 1 << 31 - t % 32 : 0;\n\t\t\t\td[e] |= r, c |= r;\n\t\t\t}\n\t\t\tc ? l = n : (t.y0++, a--, n--, s++);\n\t\t}\n\t\tt.y1 = t.y0 + l, t.sprite = d.slice(0, (t.y1 - t.y0) * i);\n\t}\n}\nfunction cloudCollide(e, t, n) {\n\tn >>= 5;\n\tlet r = e.sprite, i = e.width >> 5, a = e.x - (i << 4), o = a & 127, s = 32 - o, c = e.y1 - e.y0, l = (e.y + e.y0) * n + (a >> 5), u;\n\tfor (let e = 0; e < c; e++) {\n\t\tu = 0;\n\t\tfor (let n = 0; n <= i; n++) if ((u << s | (n < i ? (u = r[e * i + n]) >>> o : 0)) & t[l + n]) return !0;\n\t\tl += n;\n\t}\n\treturn !1;\n}\nfunction cloudBounds(e, t) {\n\tlet n = e[0], r = e[1];\n\tt.x + t.x0 < n.x && (n.x = t.x + t.x0), t.y + t.y0 < n.y && (n.y = t.y + t.y0), t.x + t.x1 > r.x && (r.x = t.x + t.x1), t.y + t.y1 > r.y && (r.y = t.y + t.y1);\n}\nfunction collideRects(e, t) {\n\treturn e.x + e.x1 > t[0].x && e.x + e.x0 < t[1].x && e.y + e.y1 > t[0].y && e.y + e.y0 < t[1].y;\n}\nfunction archimedeanSpiral(e) {\n\tlet t = e[0] / e[1];\n\treturn function(e) {\n\t\treturn [t * (e *= .1) * Math.cos(e), e * Math.sin(e)];\n\t};\n}\nfunction rectangularSpiral(e) {\n\tlet t = 4 * e[0] / e[1], n = 0, r = 0;\n\treturn function(e) {\n\t\tlet i = e < 0 ? -1 : 1;\n\t\tswitch (Math.sqrt(1 + 4 * i * e) - i & 3) {\n\t\t\tcase 0:\n\t\t\t\tn += t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tr += 4;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tn -= t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tr -= 4;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn [n, r];\n\t};\n}\nfunction zeroArray(e) {\n\tlet t = [], n = -1;\n\tfor (; ++n < e;) t[n] = 0;\n\treturn t;\n}\nfunction cloudCanvas() {\n\treturn document.createElement(\"canvas\");\n}\nfunction functor(e) {\n\treturn typeof e == \"function\" ? e : function() {\n\t\treturn e;\n\t};\n}\nvar un = {\n\tarchimedean: archimedeanSpiral,\n\trectangular: rectangularSpiral\n}, WordCloud = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\t_prevOffsetX;\n\t_prevOffsetY;\n\t_prevZoom;\n\t_root;\n\t_canvas;\n\t_d3Cloud;\n\t_d3Zoom;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this._prevOffsetX = this.offsetX(), this._prevOffsetY = this.offsetY(), this._prevZoom = this.zoom();\n\t}\n\tcalcData() {\n\t\treturn this.data().map((e) => ({\n\t\t\t__viz_label: e[0],\n\t\t\t__viz_weight: e[1],\n\t\t\t__viz_row: e\n\t\t}));\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this._root = t.append(\"g\"), this._canvas = document.createElement(\"canvas\");\n\t\tlet n = this;\n\t\tthis._d3Zoom = ne().scaleExtent([.1, 10]), this._d3Zoom.on(\"zoom\", function(e) {\n\t\t\tlet t = g();\n\t\t\tt && t.transform && n.zoomed(n._d3Zoom, [t.transform.x, t.transform.y], t.transform.k);\n\t\t}), t.call(this._d3Zoom), this.tooltipHTML(function(e) {\n\t\t\tlet t = n.columns(), r = t && t.length ? t[0] : \"Word\";\n\t\t\treturn n.tooltipFormat({\n\t\t\t\tlabel: e.__viz_label,\n\t\t\t\tseries: r,\n\t\t\t\tvalue: e.__viz_weight\n\t\t\t});\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._d3Cloud = d3Cloud().canvas(() => this._canvas), this.zoomed(this, [this.offsetX(), this.offsetY()], this.zoom());\n\t\tlet n = this.calcData(), r = this, i = C(n, function(e) {\n\t\t\treturn e.__viz_weight;\n\t\t}), a;\n\t\tswitch (this.scaleMode()) {\n\t\t\tcase \"log\":\n\t\t\t\ta = F;\n\t\t\t\tbreak;\n\t\t\tcase \"sqrt\":\n\t\t\t\ta = L;\n\t\t\t\tbreak;\n\t\t\tcase \"pow\":\n\t\t\t\ta = I;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ta = P;\n\t\t\t\tbreak;\n\t\t}\n\t\tlet o = a().domain(i).range([this.fontSizeFrom(), this.fontSizeTo()]), s = P().domain([0, r.angleCount() - 1]).range([r.angleFrom(), r.angleTo()]);\n\t\tthis._d3Cloud.stop().size([this.width(), this.height()]).words(n).font(this.fontFamily()).padding(this.padding()).spiral(this.spiral()).text(function(e) {\n\t\t\treturn e.__viz_label.trim();\n\t\t}).fontSize(function(e) {\n\t\t\treturn o(e.__viz_weight);\n\t\t}).rotate((e, t) => s(t % r.angleCount())).on(\"word\", (e) => {}).on(\"end\", draw).start();\n\t\tfunction draw(e, t) {\n\t\t\tlet n = r._root.selectAll(\"text\").data(e, function(e) {\n\t\t\t\treturn e.__viz_label ? e.__viz_label.toLowerCase() : \"\";\n\t\t\t});\n\t\t\tn.enter().append(\"text\").attr(\"text-anchor\", \"middle\").call(r._selection.enter.bind(r._selection)).text(function(e) {\n\t\t\t\treturn e.__viz_label;\n\t\t\t}).on(\"click\", function(e) {\n\t\t\t\tr.click(r.rowToObj(e.__viz_row), r.columns()[1], r._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(e) {\n\t\t\t\tr.dblclick(r.rowToObj(e.__viz_row), r.columns()[1], r._selection.selected(this));\n\t\t\t}).on(\"mouseout.tooltip\", r.tooltip.hide).on(\"mousemove.tooltip\", r.tooltip.show).style(\"opacity\", 1e-6).merge(n).style(\"font-size\", function(e) {\n\t\t\t\treturn o(e.__viz_weight) + \"px\";\n\t\t\t}).style(\"font-family\", r.fontFamily()).transition().duration(1e3).attr(\"transform\", function(e) {\n\t\t\t\treturn \"translate(\" + [e.x, e.y] + \")rotate(\" + e.rotate + \")\";\n\t\t\t}).style(\"fill\", function(e) {\n\t\t\t\treturn r._palette(e.__viz_label ? e.__viz_label.toLowerCase() : \"\");\n\t\t\t}).style(\"opacity\", 1), n.exit().transition().duration(1e3).style(\"opacity\", 1e-4).remove();\n\t\t}\n\t}\n\tzoomed(e, t, n) {\n\t\tif (t[0] !== this._prevOffsetX || t[1] !== this._prevOffsetY || n !== this._prevZoom) {\n\t\t\tswitch (this._root.attr(\"transform\", t), e) {\n\t\t\t\tcase this: break;\n\t\t\t\tcase this._d3Zoom:\n\t\t\t\t\tthis.offsetX(t[0]), this.offsetY(t[1]), this.zoom(n);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._prevOffsetX = t[0], this._prevOffsetY = t[1], this._prevZoom = n;\n\t\t}\n\t}\n};\nWordCloud.prototype._class += \" chart_WordCloud\", WordCloud.prototype.implements(n.prototype), WordCloud.prototype.implements(i.prototype), WordCloud.prototype.mixin(d.SimpleSelectionMixin), WordCloud.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", WordCloud.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), WordCloud.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), WordCloud.prototype.publish(\"fontFamily\", \"Impact\", \"string\", \"Font Name\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"fontSizeFrom\", 6, \"number\", \"Minimum font size (pixels)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"fontSizeTo\", 48, \"number\", \"Maximum font size (pixels)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleFrom\", -60, \"number\", \"Minimum angle (degrees)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleTo\", 60, \"number\", \"Maximum angle (degrees)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleCount\", 5, \"number\", \"Number of different angles\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"padding\", 0, \"number\", \"Padding between words (pixels)\", null, { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"scaleMode\", \"linear\", \"set\", \"Text scaling mode\", [\n\t\"linear\",\n\t\"log\",\n\t\"sqrt\",\n\t\"pow\"\n], { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"spiral\", \"archimedean\", \"set\", \"Text scaling mode\", [\"archimedean\", \"rectangular\"], { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"offsetX\", 0, \"number\", \"X offset\", null, { tags: [\"Advanced\"] }), WordCloud.prototype.publish(\"offsetY\", 0, \"number\", \"Y offset\", null, { tags: [\"Advanced\"] }), WordCloud.prototype.publish(\"zoom\", 1, \"number\", \"Zoom\", null, { tags: [\"Advanced\"] });\n//#endregion\n//#region src/timeFormats.ts\nfunction multiScale24Hours() {\n\tlet e = V(\".%L\"), t = V(\":%S\"), n = V(\"%H:%M\"), r = V(\"%H:00\"), i = V(\"%b %d\"), a = V(\"%b\"), o = V(\"%Y\");\n\treturn (s) => s.getMilliseconds() === 0 ? s.getSeconds() === 0 ? s.getMinutes() === 0 ? s.getHours() === 0 ? s.getDate() === 1 ? s.getMonth() === 0 ? o(s) : a(s) : i(s) : r(s) : n(s) : t(s) : e(s);\n}\n//#endregion\nexport { Area, Axis, ce as BUILD_VERSION, Bar, Bubble, BubbleXY, Bullet, Column, Contour, Gantt, $ as Gauge, HalfPie, Heat, HexBin, Line, oe as PKG_NAME, se as PKG_VERSION, Pie, QuarterPie, QuartileCandlestick, Radar, RadialBar, Scatter, StatChart, Step, Summary, SummaryC, WordCloud, XYAxis, multiScale24Hours };\n\n//# sourceMappingURL=index.js.map\n(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.chart_Axis{fill:#000;font:10px sans-serif}.chart_Axis .axis .tick>text{font:10px sans-serif}.chart_Axis .axis path.domain,.chart_Axis .axis .tick line{fill:none;stroke:#000}.chart_Axis .guide path.domain{fill:none;stroke:none}.chart_Axis .guide .tick line{fill:none;stroke:#d3d3d3;opacity:.7}.chart_Axis .guide .tick.guide-0 line{stroke:#000;stroke-width:1px;stroke-dasharray:3 5}.chart_Axis line,.chart_Axis path{shape-rendering:crispedges}.chart_XYAxis .axis{fill:#000;font:10px sans-serif}.chart_XYAxis .tick>text{font:10px sans-serif}.chart_XYAxis .focus .chart_Axis.value .tick{visibility:hidden}.chart_XYAxis .axis path,.chart_XYAxis .axis line{fill:none;stroke:#000;shape-rendering:crispedges}.chart_XYAxis .region{opacity:.33}.chart_XYAxis .brush rect.background{z-index:-999}.chart_XYAxis .brush .selection{stroke:#4682b4;stroke-opacity:1;stroke-width:1px;fill:#4682b4;fill-opacity:.125;shape-rendering:crispedges}.chart_XYAxis .brush path.handle--custom{fill:#eee;stroke:#666}.chart_Scatter .pointShape,.chart_Scatter .line,.chart_Scatter .area{pointer-events:none}.chart_Scatter .point .pointSelection{fill:none;stroke:#0000;stroke-width:2px;pointer-events:all;transition:all .2s}.chart_Scatter .point .pointSelection.selected{stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Scatter .point .pointSelection:hover{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Scatter .point .pointSelection:focus{stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Scatter .point .pointSelection.selected:focus{stroke:#6f42c1!important}.chart_Scatter .point .pointSelection:focus-visible{outline:none}.chart_Scatter .point .pointSelection:active{outline:none!important}.chart_Column .columnRect{fill:#4682b4;cursor:pointer}.chart_Column .data.axis path{display:none}.chart_Column .columnRect{stroke:#0000;border-width:2px}.chart_Column .dataCell.selected .columnRect{transition:all .2s;stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Column .dataCell:hover .columnRect{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Column .dataCell:focus .columnRect{transition:all .2s;stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Column .dataCell.selected:focus .columnRect{stroke:#6f42c1!important}.chart_Column .dataCell:focus-visible{outline:none}.chart_Column .dataCell:active{outline:none!important}.chart_Bubble circle{cursor:pointer}.chart_Bubble .selected circle{stroke:red;stroke-width:1.5px}.chart_Bubble .common_FAChar{fill:#fff;pointer-events:none}.chart_Bubble .common_Text{pointer-events:none}.chart_Bullet .domain{opacity:0}.chart_Bullet .bullet{border:1px solid #0000;font:10px sans-serif}.chart_Bullet .bullet.selected{border-color:red}.chart_Bullet .bullet.over{border-color:orange}.chart_Bullet .bullet.selected.over{border-color:red}.chart_Bullet .bullet .marker{stroke:#000;stroke-width:2px}.chart_Bullet .bullet .tick line{stroke:#666;stroke-width:.5px}.chart_Bullet .bullet .range.s0{fill:#eee}.chart_Bullet .bullet .range.s1{fill:#ddd}.chart_Bullet .bullet .range.s2{fill:#ccc}.chart_Bullet .bullet .measure.s0{fill:#b0c4de}.chart_Bullet .bullet .measure.s1{fill:#4682b4}.chart_Bullet .bullet .title{font-size:14px;font-weight:700}.chart_Bullet .bullet .subtitle{fill:#999}.chart_Pie path,.chart_Pie>g>text{cursor:pointer}.chart_Pie .arc path{stroke:#0000;stroke-width:2px}.chart_Pie .arc.selected path{transition:all .2s;stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Pie polyline{opacity:.3;stroke:#000;stroke-width:2px;fill:none}.chart_Pie .arc:hover path{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Pie .arc:focus path{transition:all .2s;stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Pie .arc.selected:focus path{stroke:#6f42c1!important}.chart_Pie .arc:focus-visible{outline:none}.chart_Pie .arc:active{outline:none!important}.chart_HexBin .hexagon{fill:none;stroke:#000;stroke-width:.5px}.chart_HexBin .hexagon.selected{stroke:red}.chart_Line .dataLine{fill:none;stroke:#4682b4;stroke-width:1.5px}.chart_Radar .pointShape,.chart_Radar .area{pointer-events:none}.chart_Radar .point .pointSelection{fill:none;stroke:none;pointer-events:all}.chart_Radar .point .pointSelection.selected{fill:none;stroke:red}.chart_RadialBar path.arc{opacity:.9;transition:opacity .5s}.chart_RadialBar path.arc.selected{stroke:red}.chart_RadialBar path.arc:hover{opacity:.7}.chart_RadialBar .axis line,.chart_RadialBar .axis circle{stroke:#ccc;stroke-width:1px}.chart_RadialBar .axis circle{fill:none}.chart_RadialBar .r.axis text{text-anchor:end}.chart_Summary{width:225px;height:150px;font-size:14px}.chart_Summary .content h2{margin-top:10px;margin-bottom:10px;margin-left:10px;font-size:3em;font-weight:700}.chart_Summary .bgIcon:before{opacity:.4;font-family:FontAwesome;font-size:5.5em;position:absolute;top:.5em;right:15px}.chart_Summary .bgIcon{position:relative}.chart_Summary .content{float:left;background-color:#efd752;width:100%;height:100%}.chart_Summary .content div{opacity:.8;margin-top:-1.1em;font-size:1.1em}.chart_Summary .content .text{padding-left:10px}.chart_Summary .content .more{width:100%;height:3em;line-height:3em;position:absolute;bottom:0}.chart_Summary .content .more i{padding-left:10px;padding-right:.5em}.other_Wordcloud text{cursor:pointer}/*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();","import { Palette } from \"@hpcc-js/common\";\nimport { Scope, Workunit, WsWorkunits } from \"@hpcc-js/comms\";\nimport { ReactTimelineSeries } from \"@hpcc-js/timeline\";\nimport { multiScale24Hours } from \"@hpcc-js/chart\";\nimport { hashSum, RecursivePartial } from \"@hpcc-js/util\";\n\nimport \"../src/WUGraph.css\";\n\nconst columns = [\"label\", \"start\", \"end\", \"icon\", \"color\", \"series\"];\n\nexport class WUTimeline extends ReactTimelineSeries {\n\n protected _palette = Palette.ordinal(\"default\");\n\n constructor() {\n super();\n this\n .columns(columns)\n .titleColumn(\"label\")\n .iconColumn(\"icon\")\n .colorColumn(\"color\")\n .seriesColumn(\"series\")\n .timePattern(\"%Y-%m-%dT%H:%M:%S.%LZ\")\n .tickFormatFunc(multiScale24Hours())\n .tooltipTimeFormat(\"%H:%M:%S.%L\")\n .tooltipHTML(d => {\n return d[columns.length].calcTooltip();\n })\n ;\n }\n\n private _prevHashSum;\n clear(): this {\n delete this._prevHashSum;\n return this;\n }\n fetchScopes() {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n request: this.request()\n });\n if (this._prevHashSum !== hash) {\n this._prevHashSum = hash;\n const wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n wu.fetchDetails(this.request()).then(scopes => {\n return scopes.filter(scope => scope.Id && scope.attr(\"WhenStarted\").RawValue).map((scope: Scope) => {\n const whenStarted = +scope.attr(\"WhenStarted\").RawValue / 1000;\n const timeElapsed = +scope.attr(\"TimeElapsed\").RawValue / 1000000;\n return [\n scope.Id,\n new Date(whenStarted).toISOString(),\n timeElapsed ? new Date(whenStarted + timeElapsed).toISOString() : undefined,\n null,\n this._palette(scope.ScopeType),\n scope.ScopeName.split(\"::\").join(\":\").split(\":\").slice(0, 1),\n scope\n ];\n });\n }).then(scopes => {\n this\n .data(scopes)\n .render()\n ;\n });\n }\n }\n\n enter(domNode, _element) {\n super.enter(domNode, _element);\n }\n\n update(domNode, element) {\n this.fetchScopes();\n super.update(domNode, element);\n }\n\n exit(domNode, element) {\n super.exit(domNode, element);\n }\n}\nWUTimeline.prototype._class += \" eclwatch_WUTimeline\";\n\nexport interface WUTimeline {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n request(): Partial<WsWorkunits.WUDetails>;\n request(_: RecursivePartial<WsWorkunits.WUDetails>): this;\n}\n\nWUTimeline.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUTimeline.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUTimeline.prototype.publish(\"request\", {\n ScopeFilter: {\n MaxDepth: 3,\n ScopeTypes: [\"graph\", \"subgraph\"]\n },\n NestedFilter: {\n Depth: 0,\n ScopeTypes: []\n },\n PropertiesToReturn: {\n AllProperties: false,\n AllStatistics: true,\n AllHints: false,\n Properties: [\"WhenStarted\", \"TimeElapsed\"]\n },\n ScopeOptions: {\n IncludeId: true,\n IncludeScope: true,\n IncludeScopeType: true\n },\n PropertyOptions: {\n IncludeName: true,\n IncludeRawValue: true,\n IncludeFormatted: true,\n IncludeMeasure: true,\n IncludeCreator: false,\n IncludeCreatorType: false\n }\n}, \"object\", \"WUDetails Request\");\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["e","r","t","o","i","a","n","l","z","N","P","w","I","F","R","te","V","d","f","m","h","p","g","T","A","k","r","i","L","C","O","u","n","o","_","s","ee","B","j","e","b","S","v","E","D","ie","re","c","t","M","a","ne"],"sources":["../src/__package__.ts","../src/ECLArchiveViewer.ts","../src/WUGraphLegend.ts","../src/WUScopeController.ts","../src/WUGraph.ts","../src/WUResultStore.ts","../src/WUResult.ts","../src/WUStatus.ts","../../api/dist/index.js","../../chart/dist/index.js","../src/WUTimeline.ts"],"sourcesContent":["export const PKG_NAME = \"__PACKAGE_NAME__\";\nexport const PKG_VERSION = \"__PACKAGE_VERSION__\";\nexport const BUILD_VERSION = \"__BUILD_VERSION__\";\n","import { Editor } from \"@hpcc-js/codemirror\";\nimport { Workunit } from \"@hpcc-js/comms\";\nimport { SplitPanel } from \"@hpcc-js/phosphor\";\nimport { DirectoryTree } from \"@hpcc-js/tree\";\nimport { hashSum, xml2json } from \"@hpcc-js/util\";\n\nexport class ECLArchiveViewer extends SplitPanel {\n private _prevHash;\n private _contentStr;\n public _directoryPane = new DirectoryTree();\n public _fileEditorPane = new Editor()\n .text(\"\")\n ;\n\n constructor() {\n super(\"horizontal\");\n this._directoryPane.rowClick = (text) => {\n this._fileEditorPane\n .text(text)\n .render()\n ;\n };\n }\n\n protected transformArchiveTreeData(json) {\n const ret = {\n label: json.name,\n children: json._children.map(transformNode).filter(n => n)\n };\n\n if (ret.children && ret.children[0] && ret.children[0].label === \"html\") {\n // must be parsererror\n return {\n label: \"root\",\n children: [\n {\n label: \"error\",\n content: JSON.stringify(ret, null, 4)\n }\n ]\n };\n }\n return ret;\n\n function transformNode(node) {\n const _node: any = {};\n _node.label = node.name + (node[\"$\"] && node[\"$\"].key ? ` (${node[\"$\"].key})` : \"\");\n if (node._children && node._children.length > 0) {\n _node.children = node._children.map(_node => {\n return transformNode(_node);\n })\n .filter(n => n)\n ;\n } else if (typeof node.content === \"string\" && node.content.trim()) {\n _node.content = node.content;\n } else {\n return false;\n }\n return _node;\n }\n }\n\n updateDirectoryPane(contentStr) {\n let json;\n if (contentStr) {\n try {\n json = JSON.parse(contentStr);\n } catch (e) {\n json = xml2json(contentStr);\n }\n }\n if (json) {\n const _data = this.transformArchiveTreeData(json);\n this._directoryPane\n .data(_data)\n .render()\n ;\n }\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this\n .addWidget(this._directoryPane)\n .addWidget(this._fileEditorPane)\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid()\n });\n\n if (this._prevHash !== hash || typeof this._contentStr === \"undefined\") {\n Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid())\n .fetchArchive()\n .then(resp => {\n\n this._contentStr = resp;\n this.updateDirectoryPane(this._contentStr);\n\n this._prevHash = hash;\n });\n } else {\n this.updateDirectoryPane(this._contentStr);\n }\n\n this.relativeSizes([this.directoryWidthRatio(), 1 - this.directoryWidthRatio()]);\n }\n}\nECLArchiveViewer.prototype._class += \" eclwatch_ECLArchiveViewer\";\n\nexport interface ECLArchiveViewer {\n directoryPaneColor(): string;\n directoryPaneColor(_: string): this;\n directoryPaneHoverColor(): string;\n directoryPaneHoverColor(_: string): this;\n fontColor(): string;\n fontColor(_: string): this;\n fontFamily(): string;\n fontFamily(_: string): this;\n fontSize(): number;\n fontSize(_: number): this;\n fileIconSize(): number;\n fileIconSize(_: number): this;\n folderIconOpen(): string;\n folderIconOpen(_: string): this;\n folderIconClosed(): string;\n folderIconClosed(_: string): this;\n textFileIcon(): string;\n textFileIcon(_: string): this;\n codeFileIcon(): string;\n codeFileIcon(_: string): this;\n verticalScroll(): boolean;\n verticalScroll(_: boolean): this;\n directoryWidthRatio(): number;\n directoryWidthRatio(_: number): this;\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n}\nECLArchiveViewer.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nECLArchiveViewer.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nECLArchiveViewer.prototype.publish(\"directoryWidthRatio\", 0.38, \"number\", \"Default directory panel width ratio relative to the full width\");\nECLArchiveViewer.prototype.publish(\"contentString\", null, \"string\", \"XML/JSON archive content string\");\nECLArchiveViewer.prototype.publishProxy(\"directoryPaneColor\", \"_directoryPane\", \"backgroundColor\");\nECLArchiveViewer.prototype.publishProxy(\"directoryPaneHoverColor\", \"_directoryPane\", \"hoverBackgroundColor\");\nECLArchiveViewer.prototype.publishProxy(\"iconSize\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontColor\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontFamily\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"fontSize\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"folderIconOpen\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"folderIconClosed\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"textFileIcon\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"codeFileIcon\", \"_directoryPane\");\nECLArchiveViewer.prototype.publishProxy(\"verticalScroll\", \"_directoryPane\");\n","import { Vertex } from \"@hpcc-js/graph\";\nimport { Legend } from \"@hpcc-js/layout\";\nimport { local as d3Local, select as d3Select } from \"d3-selection\";\n\nimport \"../src/WUGraphLegend.css\";\n\nexport interface WUGraphLegendData {\n kind: number;\n faChar: string;\n label: string;\n count: number;\n}\n\nclass LegendVertex extends Vertex {\n\n constructor() {\n super();\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this._icon.on(\"click\", () => {\n this.click(this.data());\n });\n }\n\n click(kind: number) {\n }\n}\n\nexport class WUGraphLegend extends Legend {\n\n private icon = d3Local<Vertex>();\n protected _disabled2: { [kind: number]: boolean } = {\n /* TODO: Default some to disabled?\n 43: true,\n 71: true,\n 82: true,\n 88: true\n */\n };\n\n disabled(): number[];\n disabled(_: number[]): this;\n disabled(_?: number[]): number[] | this {\n if (!arguments.length) {\n const retVal = [];\n for (const key in this._disabled2) {\n if (this._disabled2[key]) {\n retVal.push(key);\n }\n }\n return retVal;\n }\n this._disabled2 = {};\n _.forEach(kind => this._disabled2[kind] = true);\n return this;\n }\n\n toggle(kind: number) {\n this._disabled2[kind] = !this._disabled2[kind];\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n const items = this._g.selectAll(\".legendItem\").data(this.data(), (d: any) => d.kind);\n items.enter().append(\"g\")\n .attr(\"class\", \"legendItem\")\n .each(function (this: HTMLElement, d) {\n context.icon.set(this, new LegendVertex()\n .target(this)\n .data(d.kind)\n .textbox_shape_colorStroke(\"none\")\n .textbox_shape_colorFill(\"none\")\n .iconAnchor(\"left\")\n .faChar(d.faChar)\n .text(`${d.label} (${d.count})`)\n .tooltip(`${d.kind} - ${d.label}`)\n .on(\"click\", kind => {\n context.toggle(kind);\n context.render();\n context.click(kind);\n })\n .on(\"mouseover\", kind => {\n context.mouseover(kind);\n })\n .on(\"mouseout\", kind => {\n context.mouseout(kind);\n })\n );\n })\n .merge(items)\n .each(function (this: HTMLElement, d, i) {\n const bbox = context.icon.get(this)\n .icon_shape_colorFill(context._disabled2[d.kind] ? \"gray\" : null)\n .render().getBBox();\n\n d3Select(this)\n .attr(\"transform\", `translate(${+bbox.width / 2}, ${i * 30})`)\n ;\n })\n ;\n items.exit()\n .each(function (this: HTMLElement, d) {\n context.icon.get(this)\n .target(null)\n .render();\n })\n .remove();\n const bbox = this.getBBox(true, true);\n this._g.attr(\"transform\", `translate(16, ${this.height() / 2 - bbox.height / 2})`);\n }\n\n // Events ---\n click(kind: number) {\n }\n\n mouseover(kind: number) {\n }\n\n mouseout(kind: number) {\n }\n}\nWUGraphLegend.prototype._class += \" eclwatch_WUGraphLegend\";\n","import { Icon } from \"@hpcc-js/common\";\nimport { BaseScope, ScopeEdge, ScopeGraph, ScopeSubgraph, ScopeVertex } from \"@hpcc-js/comms\";\nimport { Edge, IGraphData, Lineage, Subgraph, Vertex } from \"@hpcc-js/graph\";\nimport { Edge as UtilEdge, Subgraph as UtilSubgraph, Vertex as UtilVertex } from \"@hpcc-js/util\";\nimport { WUGraphLegendData } from \"./WUGraphLegend.ts\";\n\nexport type VertexType = Vertex | Icon;\n\nexport interface MyGraphData {\n subgraphs: Subgraph[];\n vertices: VertexType[];\n edges: Edge[];\n hierarchy: Lineage[];\n}\n\nfunction faCharFactory(kind): string {\n switch (kind) {\n case \"2\": return \"\\uf0c7\"; // Disk Write\n case \"3\": return \"\\uf15d\"; // sort\n case \"5\": return \"\\uf0b0\"; // Filter\n case \"6\": return \"\\uf1e0\"; // Split\n case \"12\": return \"\\uf039\"; // First N\n case \"15\": return \"\\uf126\"; // Lightweight Join\n case \"17\": return \"\\uf126\"; // Lookup Join\n case \"22\": return \"\\uf1e6\"; // Pipe Output\n case \"23\": return \"\\uf078\"; // Funnel\n case \"25\": return \"\\uf0ce\"; // Inline Dataset\n case \"26\": return \"\\uf074\"; // distribute\n case \"29\": return \"\\uf005\"; // Store Internal Result\n case \"36\": return \"\\uf128\"; // If\n case \"44\": return \"\\uf0c7\"; // write csv\n case \"47\": return \"\\uf0c7\"; // write\n case \"54\": return \"\\uf013\"; // Workunit Read\n case \"56\": return \"\\uf0c7\"; // Spill\n case \"59\": return \"\\uf126\"; // Merge\n case \"61\": return \"\\uf0c7\"; // write xml\n case \"82\": return \"\\uf1c0\"; // Projected Disk Read Spill\n case \"88\": return \"\\uf1c0\"; // Projected Disk Read Spill\n case \"92\": return \"\\uf129\"; // Limted Index Read\n case \"93\": return \"\\uf129\"; // Limted Index Read\n case \"99\": return \"\\uf1c0\"; // CSV Read\n case \"105\": return \"\\uf1c0\"; // CSV Read\n\n case \"7\": return \"\\uf090\"; // Project\n case \"9\": return \"\\uf0e2\"; // Local Iterate\n case \"16\": return \"\\uf005\"; // Output Internal\n case \"19\": return \"\\uf074\"; // Hash Distribute\n case \"21\": return \"\\uf275\"; // Normalize\n case \"35\": return \"\\uf0c7\"; // CSV Write\n case \"37\": return \"\\uf0c7\"; // Index Write\n case \"71\": return \"\\uf1c0\"; // Disk Read Spill\n case \"133\": return \"\\uf0ce\"; // Inline Dataset\n case \"148\": return \"\\uf0ce\"; // Inline Dataset\n case \"168\": return \"\\uf275\"; // Local Denormalize\n }\n return \"\\uf063\";\n}\n\nexport class WUScopeController {\n private graphDB: ScopeGraph;\n private subgraphsMap: { [id: string]: Subgraph } = {};\n private rSubgraphsMap: { [id: string]: ScopeSubgraph } = {};\n private verticesMap: { [id: string]: VertexType } = {};\n private rVerticesMap: { [id: string]: ScopeVertex } = {};\n private edgesMap: { [id: string]: Edge } = {};\n private rEdgesMap: { [id: string]: ScopeEdge } = {};\n private kindMap: { [id: string]: ScopeVertex[] } = {};\n\n protected _disabled: { [kind: number]: boolean } = {};\n\n constructor() {\n }\n\n clear() {\n this.subgraphsMap = {};\n this.rSubgraphsMap = {};\n this.verticesMap = {};\n this.rVerticesMap = {};\n this.edgesMap = {};\n this.rEdgesMap = {};\n }\n\n set(masterGraph: ScopeGraph) {\n this.graphDB = masterGraph;\n this.graphGui(this.graphDB);\n\n this.kindMap = {};\n this.graphDB.walk(item => {\n if (item instanceof UtilSubgraph) {\n } else if (item instanceof UtilVertex) {\n const kind = item._.attr(\"Kind\").RawValue;\n if (!this.kindMap[kind]) {\n this.kindMap[kind] = [];\n }\n this.kindMap[kind].push(item);\n } else if (item instanceof UtilEdge) {\n }\n });\n }\n\n disabled(): number[];\n disabled(_: number[]): this;\n disabled(_?: number[]): number[] | this {\n if (!arguments.length) {\n const retVal = [];\n for (const key in this._disabled) {\n if (this._disabled[key]) {\n retVal.push(key);\n }\n }\n return retVal;\n }\n this._disabled = {};\n _.forEach(kind => this._disabled[kind] = true);\n return this;\n }\n\n graphGui(graphDB: ScopeGraph): IGraphData {\n const graphGui: MyGraphData = {\n subgraphs: [],\n vertices: [],\n edges: [],\n hierarchy: []\n };\n\n graphDB.walk((item) => {\n if (item instanceof UtilSubgraph) {\n const subgraph = this.appendSubgraph(item, graphGui.hierarchy, graphGui.subgraphs);\n subgraph.showMinMax(item.vertices.length > 3 || subgraph.minState() !== \"normal\");\n } else if (item instanceof UtilVertex) {\n this.appendVertex(item, graphGui.hierarchy, graphGui.vertices);\n } else if (item instanceof UtilEdge) {\n this.appendEdge(item, graphGui.edges);\n }\n });\n\n return graphGui;\n }\n\n format(labelTpl, obj) {\n let retVal = \"\";\n let lpos = labelTpl.indexOf(\"%\");\n let rpos = -1;\n while (lpos >= 0) {\n retVal += labelTpl.substring(rpos + 1, lpos);\n rpos = labelTpl.indexOf(\"%\", lpos + 1);\n if (rpos < 0) {\n console.warn(\"Invalid Label Template\");\n break;\n }\n const key = labelTpl.substring(lpos + 1, rpos);\n retVal += !key ? \"%\" : (obj[labelTpl.substring(lpos + 1, rpos)] || \"\");\n lpos = labelTpl.indexOf(\"%\", rpos + 1);\n }\n retVal += labelTpl.substring(rpos + 1, labelTpl.length);\n return retVal.split(\"\\\\n\").join(\"\\n\");\n }\n\n createSubgraph(subgraph: ScopeSubgraph): Subgraph {\n let sg = this.subgraphsMap[subgraph._.Id];\n if (!sg) {\n sg = new Subgraph()\n .title(subgraph._.Id)\n .on(\"minClick\", () => {\n this.minClick(sg);\n })\n ;\n this.subgraphsMap[subgraph._.Id] = sg;\n this.rSubgraphsMap[sg.id()] = subgraph;\n }\n return sg;\n }\n\n createVertex(vertex: ScopeVertex): VertexType {\n let v = this.verticesMap[vertex._.Id];\n if (!v) {\n const attrs = vertex._.rawAttrs();\n if (vertex._.ScopeType === \"dummy\") {\n const parent = this.subgraphsMap[vertex.parent._.Id];\n v = new Icon()\n .shape_colorFill(\"darkred\")\n .shape_colorStroke(\"darkred\")\n .image_colorFill(\"white\")\n .faChar(\"\\uf067\")\n .on(\"click\", () => {\n parent.minState(\"normal\");\n this.minClick(parent);\n })\n ;\n } else {\n v = new Vertex()\n .icon_shape_colorFill(\"#1f77b4\")\n .icon_image_colorFill(\"white\")\n .faChar(faCharFactory(attrs[\"Kind\"]))\n .text(attrs[\"Label\"])\n ;\n const annotations = [];\n if (vertex._.hasAttr(\"Definition\")) {\n annotations.push({\n faChar: \"\\uf036\",\n tooltip: \"Definition\",\n shape_colorFill: \"lightgray\",\n shape_colorStroke: \"lightgray\",\n image_colorFill: \"black\"\n });\n }\n if (vertex._.hasAttr(\"IsInternal\")) {\n annotations.push({\n faChar: \"\\uf085\",\n tooltip: \"IsInternal\",\n shape_colorFill: \"red\",\n shape_colorStroke: \"red\",\n image_colorFill: \"white\"\n });\n }\n v.annotationIcons(annotations);\n }\n this.verticesMap[vertex._.Id] = v;\n this.rVerticesMap[v.id()] = vertex;\n }\n return v;\n }\n\n isSpill(edge: ScopeEdge): boolean {\n const sourceKind = edge.source._.attr(\"Kind\").RawValue;\n const targetKind = edge.target._.attr(\"Kind\").RawValue;\n return sourceKind === \"2\" || targetKind === \"71\";\n }\n\n spansSubgraph(edge: ScopeEdge): boolean {\n return edge.source.parent._.Id !== edge.target.parent._.Id;\n }\n\n createEdge(edge: ScopeEdge): Edge | undefined {\n let e = this.edgesMap[edge._.Id];\n if (!e) {\n const attrs = edge._.rawAttrs();\n const sourceV = this.verticesMap[edge.source._.Id];\n const targetV = this.verticesMap[edge.target._.Id];\n if (sourceV && targetV) {\n const isSpill = this.isSpill(edge);\n const spansSubgraph = this.spansSubgraph(edge);\n\n const label = this.format(\"%Label%\\n%NumRowsProcessed%\", attrs);\n /* TODO: Add extra annotations once WUDetails is fixed...\n const numSlaves = parseInt(attrs[\"NumSlaves\"]);\n const numStarts = parseInt(attrs[\"NumStarts\"]);\n const numStops = parseInt(attrs[\"NumStops\"]);\n const started = numStarts > 0;\n const finished = numStops === numSlaves;\n const active = started && !finished;\n */\n\n let strokeDasharray = null;\n let weight = 100;\n if (attrs[\"IsDependency\"]) {\n weight = 10;\n strokeDasharray = \"1,5\";\n } else if (attrs[\"_childGraph\"]) {\n strokeDasharray = \"5,5\";\n } else if (isSpill) {\n weight = 25;\n strokeDasharray = \"5,5,10,5\";\n } else if (spansSubgraph) {\n weight = 5;\n strokeDasharray = \"5,5\";\n }\n e = new Edge()\n .sourceVertex(sourceV)\n .targetVertex(targetV)\n .sourceMarker(\"circle\")\n .targetMarker(\"arrow\")\n .weight(weight)\n .strokeDasharray(strokeDasharray)\n .text(label)\n ;\n this.edgesMap[edge._.Id] = e;\n this.rEdgesMap[e.id()] = edge;\n }\n }\n return e;\n }\n\n appendSubgraph(subgraph: ScopeSubgraph, hierarchy: Lineage[], subgraphs: Subgraph[]): Subgraph {\n const sg = this.createSubgraph(subgraph);\n subgraphs.push(sg);\n const parent = this.subgraphsMap[subgraph.parent._.Id];\n if (parent) {\n hierarchy.push({ parent, child: sg });\n }\n return sg;\n }\n\n appendVertex(vertex: ScopeVertex, hierarchy: Lineage[], vertices: VertexType[]): VertexType {\n const v = this.createVertex(vertex);\n vertices.push(v);\n const parent = this.subgraphsMap[vertex.parent._.Id];\n if (parent) {\n hierarchy.push({ parent, child: v });\n }\n return v;\n }\n\n appendEdge(edge: ScopeEdge, edges: Edge[]): Edge {\n const e = this.createEdge(edge);\n if (e) {\n edges.push(e);\n }\n return e;\n }\n\n filterLegend(graphDB: ScopeGraph) {\n for (let i = graphDB.vertices.length - 1; i >= 0; --i) {\n const vertex = graphDB.vertices[i];\n const kind = vertex._.attr(\"Kind\").RawValue;\n if (this._disabled[kind]) {\n vertex.remove(false, (source: BaseScope, target: BaseScope) => {\n return new BaseScope({\n ScopeName: vertex._.ScopeName + \":in\",\n Id: source.Id + \"->\" + target.Id,\n ScopeType: \"dummy-edge\",\n Properties: {\n Property: [vertex._.attr(\"Label\")]\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n });\n }\n }\n }\n\n filterPartial(graphDB: ScopeGraph) {\n for (const subgraph of graphDB.subgraphs) {\n const sg = this.subgraphsMap[subgraph._.Id];\n switch (sg.minState()) {\n case \"partial\":\n const childVertices: ReadonlyArray<ScopeVertex> = subgraph.vertices;\n const vShow: ScopeVertex[] = [];\n const vHide: ScopeVertex[] = [];\n\n for (const vertex of childVertices) {\n if (vertex.inEdges.length === 0 || vertex.inEdges.some(edge => edge.source.parent !== edge.target.parent) ||\n vertex.outEdges.length === 0 || vertex.outEdges.some(edge => edge.source.parent !== edge.target.parent)) {\n vShow.push(vertex);\n } else {\n vHide.push(vertex);\n }\n }\n\n if (vHide.length > 1) {\n const dummyDetails = {\n ScopeName: subgraph._.ScopeName,\n Id: subgraph._.Id + \":dummy\",\n ScopeType: \"dummy\",\n Properties: {\n Property: [{\n Name: \"Activities\",\n RawValue: \"\" + vHide.length,\n Formatted: \"\" + vHide.length,\n Measure: \"count\",\n Creator: \"\",\n CreatorType: \"\"\n }]\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n };\n const dummyScope = new BaseScope(dummyDetails);\n const dummyVertex = subgraph.createVertex(dummyScope);\n\n for (const vertex of vHide) {\n for (const edge of vertex.inEdges) {\n if (vShow.indexOf(edge.source) >= 0) {\n const dummyEdgeScope = new BaseScope({\n ScopeName: edge.source._.ScopeName,\n Id: edge.source._.Id + \"->\" + dummyVertex._.Id,\n ScopeType: \"dummy-in\",\n Properties: {\n Property: []\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n subgraph.createEdge(edge.source, dummyVertex, dummyEdgeScope);\n }\n }\n for (const edge of vertex.outEdges) {\n if (vShow.indexOf(edge.target) >= 0) {\n const dummyEdgeScope = new BaseScope({\n ScopeName: edge.target._.ScopeName,\n Id: dummyVertex._.Id + \"->\" + edge.target._.Id,\n ScopeType: \"dummy-out\",\n Properties: {\n Property: []\n },\n Notes: {\n Note: []\n },\n SinkActivity: \"\"\n });\n subgraph.createEdge(dummyVertex, edge.target, dummyEdgeScope);\n }\n }\n }\n vHide.forEach(vertex => vertex.remove(true));\n }\n break;\n }\n }\n }\n\n filterEmptySubgraphs(graphDB: ScopeGraph) {\n while (true) {\n const emptySubgraphs = graphDB.subgraphs.filter(subgraph => subgraph.subgraphs.length === 0 && subgraph.vertices.length === 0);\n if (emptySubgraphs.length === 0) break;\n emptySubgraphs.forEach(subgraph => subgraph.remove(true));\n }\n }\n\n removeObsoleteSubgraphs(graphDB: ScopeGraph) {\n for (const subgraph of [...graphDB.subgraphs]) {\n if (subgraph.vertices.length === 0) {\n subgraph.remove(false);\n }\n }\n }\n\n graphData(): IGraphData {\n const graphDB = this.graphDB.clone();\n this.filterLegend(graphDB);\n this.filterPartial(graphDB);\n this.filterEmptySubgraphs(graphDB);\n this.removeObsoleteSubgraphs(graphDB);\n return this.graphGui(graphDB);\n }\n\n calcLegend(): WUGraphLegendData[] {\n const retVal: WUGraphLegendData[] = [];\n for (const kind in this.kindMap) {\n retVal.push({\n kind: parseInt(kind),\n faChar: faCharFactory(kind),\n label: this.kindMap[kind][0]._.attr(\"Label\").RawValue.split(\"\\n\")[0],\n count: this.kindMap[kind].length\n });\n }\n return retVal;\n }\n\n vertices(kind: number): VertexType[] {\n const retVal: VertexType[] = [];\n for (const v of this.kindMap[kind]) {\n retVal.push(this.verticesMap[v._.Id]);\n }\n return retVal;\n }\n\n formatRow(item: ScopeEdge | ScopeSubgraph | ScopeVertex, columns, row) {\n const attrs = item._.formattedAttrs();\n for (const key in attrs) {\n const idx = columns.indexOf(key);\n if (idx === -1) {\n columns.push(key);\n row.push(attrs[key]);\n } else {\n row[idx] = attrs[key];\n }\n }\n for (let i = 0; i < 100; ++i) {\n if (row[i] === undefined) {\n row[i] = \"\";\n }\n }\n return row;\n }\n\n activityData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Kind\", \"Label\"];\n const data = this.graphDB.vertices.map(v => {\n const row = [parseInt(v._.Id.split(\"a\")[1])];\n return this.formatRow(v, columns, row);\n });\n return { columns, data };\n }\n\n edgeData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Label\"];\n const data = this.graphDB.edges.map(e => {\n const row = [e._.Id];\n return this.formatRow(e, columns, row);\n });\n return { columns, data };\n }\n\n subgraphData(): { columns: string[], data: any[][] } {\n const columns = [\"Id\", \"Label\"];\n const data = this.graphDB.subgraphs.map(sg => {\n const row = [sg._.Id];\n return this.formatRow(sg, columns, row);\n });\n return { columns, data };\n }\n\n calcGraphTooltip(item: VertexType | Edge) {\n let scope;\n let parentScope;\n if (item instanceof Subgraph) {\n const subgraph = this.rSubgraphsMap[item.id()];\n scope = subgraph._;\n parentScope = subgraph.parent._;\n } else if (item instanceof Vertex || item instanceof Icon) {\n const vertex = this.rVerticesMap[item.id()];\n scope = vertex._;\n parentScope = vertex.parent._;\n } else if (item instanceof Edge) {\n const edge = this.rEdgesMap[item.id()];\n scope = edge._;\n parentScope = edge.parent._;\n }\n if (scope) {\n return scope.calcTooltip(parentScope);\n }\n return \"\";\n }\n\n subgraph(id: string): Subgraph | undefined {\n return this.subgraphsMap[id];\n }\n\n vertex(id: string): VertexType | undefined {\n return this.verticesMap[id];\n }\n\n edge(id: string): Edge {\n return this.edgesMap[id];\n }\n\n // Events ---\n minClick(sg: Subgraph) {\n }\n}\n","import { Button, Spacer, ToggleButton, Widget } from \"@hpcc-js/common\";\nimport { ScopeGraph, Workunit } from \"@hpcc-js/comms\";\nimport { Table } from \"@hpcc-js/dgrid\";\nimport { Graph as GraphWidget, Subgraph, Vertex } from \"@hpcc-js/graph\";\nimport { Carousel, ChartPanel } from \"@hpcc-js/layout\";\nimport { hashSum } from \"@hpcc-js/util\";\nimport { WUGraphLegend } from \"./WUGraphLegend.ts\";\nimport { WUScopeController } from \"./WUScopeController.ts\";\n\nimport \"../src/WUGraph.css\";\n\nexport class WUGraph extends ChartPanel {\n\n private _partialAll = new Button().faChar(\"fa-window-restore\").tooltip(\"Partial All\")\n .on(\"click\", () => {\n this.stateClick(this._partialAll);\n });\n\n private _maxAll = new Button().faChar(\"fa-window-maximize\").tooltip(\"Max All\")\n .on(\"click\", () => {\n this.stateClick(this._maxAll);\n });\n\n private _toggleGraph = new ToggleButton().faChar(\"fa-chain\").tooltip(\"Graph\")\n .selected(true)\n .on(\"click\", () => {\n this.viewClick(this._toggleGraph);\n });\n\n private _toggleActivities = new ToggleButton().faChar(\"fa-table\").tooltip(\"Activitiies\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleActivities);\n });\n\n private _toggleEdges = new ToggleButton().faChar(\"fa-table\").tooltip(\"Edges\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleEdges);\n });\n\n private _toggleSubgraphs = new ToggleButton().faChar(\"fa-table\").tooltip(\"Subgraphs\")\n .selected(false)\n .on(\"click\", () => {\n this.viewClick(this._toggleSubgraphs);\n });\n\n protected _graph = new GraphWidget()\n .layout(\"Hierarchy\")\n .applyScaleOnLayout(true)\n .showToolbar(false)\n .allowDragging(false)\n ;\n\n private _activities = new Table()\n .pagination(false)\n ;\n\n private _edges = new Table()\n .pagination(false)\n ;\n\n private _subgraphs = new Table()\n .pagination(false)\n ;\n\n protected _legend = new WUGraphLegend(this)\n .on(\"click\", kind => {\n this.render();\n })\n .on(\"mouseover\", kind => {\n const verticesMap: { [id: string]: boolean } = {};\n for (const vertex of this._gc.vertices(kind)) {\n verticesMap[vertex.id()] = true;\n }\n this._graph.highlightVerticies(verticesMap);\n })\n .on(\"mouseout\", kind => {\n this._graph.highlightVerticies();\n })\n ;\n\n protected _view = new Carousel().widgets([this._graph, this._activities, this._edges, this._subgraphs]);\n\n protected _gc = new WUScopeController();\n\n constructor() {\n super();\n this.topOverlay(false);\n this.widget(this._view);\n const buttons: Widget[] = [\n this._toggleGraph,\n this._toggleActivities,\n this._toggleEdges,\n this._toggleSubgraphs,\n new Spacer(),\n this._partialAll,\n this._maxAll,\n new Spacer(),\n ...this._graph.iconBarButtons(),\n new Spacer()];\n this.buttons(buttons.concat(this.buttons()));\n this._gc.minClick = (sg: Subgraph) => {\n this.loadGraph();\n this._graph.render(w => {\n this._graph\n .selection([sg])\n .centerOnItem(sg)\n ;\n });\n };\n\n this._graph.tooltipHTML((v: Vertex) => {\n return this._gc.calcGraphTooltip(v);\n });\n }\n\n stateClick(sourceB: Button) {\n switch (sourceB) {\n case this._partialAll:\n this._graph.data().subgraphs.forEach((sg: Subgraph) => {\n sg.minState(\"partial\");\n });\n break;\n case this._maxAll:\n this._graph.data().subgraphs.forEach((sg: Subgraph) => {\n sg.minState(\"normal\");\n });\n break;\n }\n this.render();\n }\n\n viewClick(sourceTB: ToggleButton) {\n this._toggleGraph.selected(sourceTB === this._toggleGraph);\n this._toggleActivities.selected(sourceTB === this._toggleActivities);\n this._toggleEdges.selected(sourceTB === this._toggleEdges);\n this._toggleSubgraphs.selected(sourceTB === this._toggleSubgraphs);\n switch (sourceTB) {\n case this._toggleGraph:\n this._view.active(0);\n break;\n case this._toggleActivities:\n this._view.active(1);\n break;\n case this._toggleEdges:\n this._view.active(2);\n break;\n case this._toggleSubgraphs:\n this._view.active(3);\n break;\n }\n this.render(w => {\n });\n }\n\n private _prevHashSum;\n private _prevScopeGraph: ScopeGraph;\n fetchScopeGraph(): Promise<ScopeGraph> {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n graphID: this.graphID(),\n subgraphID: this.subgraphID()\n });\n if (!this._prevScopeGraph || this._prevHashSum !== hash) {\n this.startProgress();\n this._prevHashSum = hash;\n this._gc.clear();\n const wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n return wu.fetchGraphs().then(graphs => {\n for (const graph of graphs) {\n if (graph.Name === this.graphID()) {\n this.finishProgress();\n return graph.fetchScopeGraph(this.subgraphID());\n }\n }\n }).then(scopeGraph => {\n this._prevScopeGraph = scopeGraph;\n return this._prevScopeGraph;\n });\n }\n return Promise.resolve(this._prevScopeGraph);\n }\n\n enter(domNode, _element) {\n super.enter(domNode, _element);\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n }\n\n exit(domNode, element) {\n super.exit(domNode, element);\n }\n\n loadGraph() {\n this._gc.disabled(this._legend.disabled());\n this._graph\n .data(this._gc.graphData(), true)\n ;\n {\n const { columns, data } = this._gc.activityData();\n this._activities\n .columns(columns)\n .data(data)\n ;\n }\n {\n const { columns, data } = this._gc.edgeData();\n this._edges\n .columns(columns)\n .data(data)\n ;\n }\n {\n const { columns, data } = this._gc.subgraphData();\n this._subgraphs\n .columns(columns)\n .data(data)\n ;\n }\n }\n\n render(callback?: (w: Widget) => void): this {\n if (this.wuid() && this.graphID()) {\n this.fetchScopeGraph().then(scopedGraph => {\n this._gc.set(scopedGraph);\n this._legend.data(this._gc.calcLegend());\n this.loadGraph();\n super.render(callback);\n });\n } else {\n super.render(callback);\n }\n return this;\n }\n\n selection(_?) {\n if (!arguments.length) return this._graph.selection();\n const item = this._gc.vertex(_) || this._gc.edge(_) || this._gc.subgraph(_);\n if (item) {\n this._graph.selection([item]);\n }\n return this;\n }\n}\nWUGraph.prototype._class += \" eclwatch_WUGraph\";\n\nexport interface WUGraph {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n graphID(): string;\n graphID(_: string): this;\n subgraphID(): string;\n subgraphID(_: string): this;\n}\n\nWUGraph.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUGraph.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUGraph.prototype.publish(\"graphID\", \"\", \"string\", \"Graph ID\");\nWUGraph.prototype.publish(\"subgraphID\", \"\", \"string\", \"Subgraph ID\");\n","import { Exception, ResultFilter, Result, XSDSchema, XSDXMLNode } from \"@hpcc-js/comms\";\nimport { ColumnType, Deferred, domConstruct, QueryResults, RowFormatter } from \"@hpcc-js/dgrid\";\n\nfunction entitiesEncode(str) {\n return String(str).replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\");\n}\n\nfunction safeEncode(item) {\n switch (Object.prototype.toString.call(item)) {\n case \"[object Undefined]\":\n case \"[object Boolean]\":\n case \"[object Number]\":\n return item;\n case \"[object String]\":\n return entitiesEncode(item);\n default:\n console.warn(\"Unknown cell type: \" + Object.prototype.toString.call(item));\n }\n return item;\n}\n\nexport class Store {\n protected wuResult: Result;\n protected schema: XSDSchema;\n protected _columns: any[];\n protected _cache: { [key: string]: Promise<{ totalLength: number, data: any[] }> } = {};\n private rowFormatter: RowFormatter;\n protected _filter: ResultFilter = {};\n private onError?: (msg: string) => void;\n\n constructor(wuResult: Result, schema: XSDSchema, renderHtml: boolean, filter: ResultFilter = {}, onError?: (msg: string) => void) {\n this.wuResult = wuResult;\n this.schema = schema;\n this._columns = this.schema2Columns(this.schema.root);\n this.rowFormatter = new RowFormatter(this._columns, renderHtml);\n this._filter = filter;\n this.onError = onError;\n }\n\n columns() {\n return this._columns;\n }\n\n schema2Columns(parentNode: XSDXMLNode, prefix: string = \"\"): ColumnType[] {\n if (!parentNode) return [];\n return parentNode.children().filter(node => node.name.indexOf(\"__hidden\", node.name.length - \"__hidden\".length) === -1).map((node, idx) => {\n const label = node.name;\n const keyed = node.attrs[\"hpcc:keyed\"];\n const column: ColumnType = {\n field: prefix + label,\n leafID: label,\n idx,\n label: label + (keyed ? \" (i)\" : \"\"),\n className: \"resultGridCell\",\n hidden: false,\n sortable: false,\n width: keyed ? 16 : 0,\n isSet: node.isSet\n };\n const children = this.schema2Columns(node, prefix + label + \"_\");\n if (children.length) {\n column.width += 10 + children.reduce((prev: number, childNode: ColumnType) => {\n return prev + childNode.width!;\n }, 0);\n column.children = children;\n } else {\n column.width += node.charWidth() * 9;\n column.formatter = (cell, row) => {\n switch (typeof cell) {\n case \"string\":\n return {\n html: cell.replace(/\\t/g, \" \").trim()\n };\n case \"undefined\":\n return \"\";\n }\n return cell;\n };\n }\n return column;\n });\n }\n\n isChildDataset(cell) {\n if (Object.prototype.toString.call(cell) !== \"[object Object]\") {\n return false;\n }\n let propCount = 0;\n let firstPropType = null;\n for (const key in cell) {\n if (!firstPropType) {\n firstPropType = Object.prototype.toString.call(cell[key]);\n }\n propCount++;\n }\n return propCount === 1 && firstPropType === \"[object Array]\";\n }\n\n rowToTable(cell, __row, node) {\n if (this.isChildDataset(cell)) { // Don't display \"Row\" as a header ---\n for (const key in cell) {\n this.rowToTable(cell[key], __row, node);\n }\n return;\n }\n\n const table = domConstruct.create(\"table\", { border: 1, cellspacing: 0, width: \"100%\" }, node);\n switch (Object.prototype.toString.call(cell)) {\n case \"[object Object]\":\n let tr = domConstruct.create(\"tr\", null, table);\n for (const key in cell) {\n domConstruct.create(\"th\", { innerHTML: safeEncode(key) }, tr);\n }\n tr = domConstruct.create(\"tr\", null, table);\n for (const key in cell) {\n switch (Object.prototype.toString.call(cell[key])) {\n case \"[object Object]\":\n case \"[object Array]\":\n this.rowToTable(cell[key], __row, node);\n break;\n default:\n domConstruct.create(\"td\", { innerHTML: safeEncode(cell[key]) }, tr);\n break;\n }\n }\n break;\n case \"[object Array]\":\n for (let i = 0; i < cell.length; ++i) {\n switch (Object.prototype.toString.call(cell[i])) {\n case \"[object Boolean]\":\n case \"[object Number]\":\n case \"[object String]\":\n // Item in Scalar ---\n const tr1 = domConstruct.create(\"tr\", null, table);\n domConstruct.create(\"td\", { innerHTML: safeEncode(cell[i]) }, tr1);\n break;\n default:\n // Child Dataset ---\n if (i === 0) {\n const tr2 = domConstruct.create(\"tr\", null, table);\n for (const key in cell[i]) {\n domConstruct.create(\"th\", { innerHTML: safeEncode(key) }, tr2);\n }\n }\n domConstruct.create(\"tr\", null, table);\n for (const key in cell[i]) {\n if (cell[i][key]) {\n if (Object.prototype.toString.call(cell[i][key]) === \"[object Object]\" || Object.prototype.toString.call(cell[i][key]) === \"[object Array]\") {\n const td = domConstruct.create(\"td\", null, tr1);\n this.rowToTable(cell[i][key], cell[i], td);\n } else if (key.indexOf(\"__html\", key.length - \"__html\".length) !== -1) {\n domConstruct.create(\"td\", { innerHTML: cell[i][key] }, tr1);\n } else if (key.indexOf(\"__javascript\", key.length - \"__javascript\".length) !== -1) {\n /*const td = */ domConstruct.create(\"td\", null, tr1);\n // this.injectJavascript(cell[i][key], cell[i], td);\n } else {\n const val = cell[i][key];\n domConstruct.create(\"td\", { innerHTML: safeEncode(val) }, tr1);\n }\n } else {\n domConstruct.create(\"td\", { innerHTML: \"\" }, tr1);\n }\n }\n }\n }\n break;\n }\n }\n\n getIdentity(row) {\n return row.__hpcc_id;\n }\n\n _request(start, end): Promise<{ totalLength: number, data: any[] }> {\n if (!this.wuResult) return Promise.resolve({ totalLength: 0, data: [] });\n const cacheKey = `${start}->${end}`;\n if (this._cache[cacheKey]) return this._cache[cacheKey];\n const retVal = this.wuResult.fetchRows(start, end - start, false, this._filter).then((rows: any[]) => {\n return {\n totalLength: this.wuResult.Total,\n data: rows.map((row, idx) => {\n const formattedRow: any = this.rowFormatter.format(row);\n formattedRow.__hpcc_id = start + idx;\n formattedRow.__hpcc_orig = row;\n return formattedRow;\n })\n };\n }).catch((err: Exception) => {\n this.onError(err.Message || \"An exception has occurred\");\n return { totalLength: 0, data: [] };\n });\n this._cache[cacheKey] = retVal;\n return retVal;\n }\n\n fetchRange(options): Promise<any[]> {\n const retVal = new Deferred();\n this._request(options.start, options.end).then(response => retVal.resolve(response));\n return new QueryResults(retVal.then(response => response.data), {\n totalLength: retVal.then(response => response.totalLength)\n });\n }\n}\n","import { ResultFilter, IOptions, Result } from \"@hpcc-js/comms\";\nimport { Common } from \"@hpcc-js/dgrid\";\nimport { hashSum } from \"@hpcc-js/util\";\nimport { Store } from \"./WUResultStore.ts\";\n\nexport class WUResult extends Common {\n\n protected _result: Result;\n protected _localStore: Store;\n\n constructor() {\n super();\n this.renderHtml(false);\n }\n\n hashSum(opts: any = {}) {\n return hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n resultName: this.resultName(),\n sequence: this.sequence(),\n nodeGroup: this.nodeGroup(),\n logicalFile: this.logicalFile(),\n userID: this.user(),\n password: this.password(),\n bypassCache: this.bypassCache(),\n ...opts\n });\n }\n\n protected _prevResultHash: string;\n calcResult(): Result | null {\n const resultHash = this.hashSum();\n if (this._prevResultHash !== resultHash) {\n this._prevResultHash = resultHash;\n\n const opts: IOptions = {\n baseUrl: this.baseUrl(),\n userID: this.user(),\n password: this.password()\n };\n if (this.wuid() && this.resultName()) {\n this._result = Result.attach(opts, this.wuid(), this.resultName());\n } else if (this.wuid() && this.sequence() !== undefined) {\n this._result = Result.attach(opts, this.wuid(), this.sequence());\n } else if (this.logicalFile() && this.nodeGroup()) {\n this._result = Result.attachLogicalFile(opts, this.nodeGroup(), this.logicalFile());\n } else if (this.logicalFile()) {\n this._result = Result.attachLogicalFile(opts, \"\", this.logicalFile());\n }\n\n if (this._result && this.bypassCache()) {\n this._result.bypassCache(this.bypassCache());\n }\n }\n return this._result;\n }\n\n fetch(row, count, abortController = new AbortController()): Promise<object[]> {\n const result = this.calcResult();\n if (result) {\n return result.fetchRows(row, count, false, {}, abortController.signal);\n }\n return Promise.resolve([]);\n }\n\n protected _prevStoreHash: string;\n protected _prevQueryHash: string;\n update(domNode, element) {\n super.update(domNode, element);\n const storeHash = this.hashSum({\n renderHtml: this.renderHtml(),\n filter: this.filter()\n });\n if (this._prevStoreHash !== storeHash) {\n this._prevStoreHash = storeHash;\n const result = this.calcResult();\n if (result) {\n result.fetchXMLSchema().then(schema => {\n this._localStore = new Store(result, schema, this.renderHtml(), this.filter(), (msg) => {\n if (this._dgrid) {\n this._dgrid.noDataMessage = `<span class='dojoxGridNoData'>${msg}</span>`;\n this._dgrid.refresh();\n }\n });\n this._dgrid?.set(\"columns\", this._localStore.columns());\n this._dgrid?.set(\"collection\", this._localStore);\n });\n }\n }\n }\n\n click(row, col, sel) {\n }\n}\nWUResult.prototype._class += \" eclwatch_WUResult\";\n\nexport interface WUResult {\n baseUrl(): string;\n baseUrl(_: string): this;\n user(): string;\n user(_: string): this;\n password(): string;\n password(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n resultName(): string;\n resultName(_: string): this;\n sequence(): number;\n sequence(_: number): this;\n nodeGroup(): string;\n nodeGroup(_: string): this;\n logicalFile(): string;\n logicalFile(_: string): this;\n filter(): ResultFilter;\n filter(_: ResultFilter): this;\n bypassCache(): boolean;\n bypassCache(_: boolean): this;\n}\n\nWUResult.prototype.publish(\"baseUrl\", \"\", \"string\", \"URL to WsWorkunits\");\nWUResult.prototype.publish(\"user\", \"\", \"string\", \"User ID\");\nWUResult.prototype.publish(\"password\", \"\", \"string\", \"Password\");\nWUResult.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUResult.prototype.publish(\"resultName\", \"\", \"string\", \"Result Name\");\nWUResult.prototype.publish(\"sequence\", undefined, \"number\", \"Sequence Number\");\nWUResult.prototype.publish(\"nodeGroup\", \"\", \"string\", \"NodeGroup\");\nWUResult.prototype.publish(\"logicalFile\", \"\", \"string\", \"Logical File Name\");\nWUResult.prototype.publish(\"filter\", {}, \"object\", \"Filter\");\nWUResult.prototype.publish(\"bypassCache\", false, \"boolean\", \"Bypass cached results\");\n","import { Workunit, WUStateID } from \"@hpcc-js/comms\";\nimport { Edge, Graph, Vertex } from \"@hpcc-js/graph\";\nimport { hashSum, IObserverHandle } from \"@hpcc-js/util\";\n\nexport enum STATUS {\n CREATE = \"Created\",\n COMPILE = \"Compiled\",\n EXECUTE = \"Executed\",\n COMPLETE = \"Completed\"\n}\n\nexport enum STATUS_ACTIVE {\n CREATE = \"Creating\",\n COMPILE = \"Compiling\",\n EXECUTE = \"Executing\",\n COMPLETE = \"Completed\"\n}\n\nexport class WUStatus extends Graph {\n\n protected _wu: Workunit;\n protected _wuHandle: IObserverHandle;\n\n protected _create: Vertex;\n protected _compile: Vertex;\n protected _execute: Vertex;\n protected _complete: Vertex;\n\n constructor() {\n super();\n this\n .zoomable(false)\n .zoomToFitLimit(1)\n .layout(\"Hierarchy\")\n .hierarchyRankDirection(\"LR\")\n .showToolbar(false)\n .allowDragging(false)\n ;\n }\n\n private _prevHash;\n attachWorkunit() {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid()\n });\n if (this._prevHash !== hash) {\n this._prevHash = hash;\n this._wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n if (this._wuHandle) {\n this._wuHandle.release();\n }\n this._wuHandle = this._wu.watch(changes => {\n this.lazyRender();\n });\n }\n }\n\n createVertex(faChar: string) {\n return new Vertex()\n .icon_diameter(32)\n .icon_shape_colorFill(\"none\")\n .icon_shape_colorStroke(\"none\")\n .icon_image_colorFill(\"darkgray\")\n .iconAnchor(\"middle\")\n .textbox_shape_colorFill(\"none\")\n .textbox_shape_colorStroke(\"none\")\n .textbox_text_colorFill(\"darkgray\")\n .faChar(faChar)\n ;\n }\n\n updateVertex(vertex: Vertex, color: string) {\n vertex\n .icon_image_colorFill(color)\n .textbox_text_colorFill(color)\n ;\n }\n\n updateVertexStatus(level: 0 | 1 | 2 | 3 | 4, active: boolean = false) {\n const completeColor = this._wu.isFailed() ? \"darkred\" : \"darkgreen\";\n this._create.text(STATUS.CREATE);\n this._compile.text(STATUS.COMPILE);\n this._execute.text(STATUS.EXECUTE);\n this._complete.text(STATUS.COMPLETE);\n switch (level) {\n case 0:\n this.updateVertex(this._create, \"darkgray\");\n this.updateVertex(this._compile, \"darkgray\");\n this.updateVertex(this._execute, \"darkgray\");\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 1:\n this._create.text(STATUS_ACTIVE.CREATE);\n this.updateVertex(this._create, active ? \"orange\" : completeColor);\n this.updateVertex(this._compile, \"darkgray\");\n this.updateVertex(this._execute, \"darkgray\");\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 2:\n this._compile.text(STATUS_ACTIVE.COMPILE);\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, active ? \"orange\" : completeColor);\n this.updateVertex(this._execute, completeColor);\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 3:\n this._execute.text(STATUS_ACTIVE.EXECUTE);\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, completeColor);\n this.updateVertex(this._execute, active ? \"orange\" : completeColor);\n this.updateVertex(this._complete, \"darkgray\");\n break;\n case 4:\n this.updateVertex(this._create, completeColor);\n this.updateVertex(this._compile, completeColor);\n this.updateVertex(this._execute, completeColor);\n this.updateVertex(this._complete, completeColor);\n break;\n }\n }\n\n createEdge(source, target) {\n return new Edge()\n .sourceVertex(source)\n .targetVertex(target)\n .strokeColor(\"black\")\n .showArc(false)\n ;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this._create = this.createVertex(\"\\uf11d\");\n this._compile = this.createVertex(\"\\uf085\");\n this._execute = this.createVertex(\"\\uf275\");\n this._complete = this.createVertex(\"\\uf11e\");\n const e1 = this.createEdge(this._create, this._compile);\n const e2 = this.createEdge(this._compile, this._execute);\n const e3 = this.createEdge(this._execute, this._complete);\n this.data({\n vertices: [this._create, this._compile, this._execute, this._complete],\n edges: [e1, e2, e3]\n });\n }\n\n update(domNode, element) {\n this.attachWorkunit();\n switch (this._wu.StateID) {\n case WUStateID.Blocked:\n case WUStateID.Wait:\n case WUStateID.Scheduled:\n case WUStateID.UploadingFiled:\n this.updateVertexStatus(1);\n break;\n case WUStateID.Compiling:\n this.updateVertexStatus(2, true);\n break;\n case WUStateID.Submitted:\n this.updateVertexStatus(1, true);\n break;\n case WUStateID.Compiled:\n this.updateVertexStatus(2);\n break;\n case WUStateID.Aborting:\n case WUStateID.Running:\n this.updateVertexStatus(3, true);\n break;\n case WUStateID.Aborted:\n case WUStateID.Archived:\n case WUStateID.Completed:\n this.updateVertexStatus(4);\n break;\n case WUStateID.Failed:\n this.updateVertexStatus(4, false);\n break;\n case WUStateID.DebugPaused:\n case WUStateID.DebugRunning:\n case WUStateID.Paused:\n case WUStateID.Unknown:\n default:\n this.updateVertexStatus(0);\n break;\n }\n super.update(domNode, element);\n this.zoomToFit();\n }\n\n exit(domNode, element) {\n if (this._wuHandle) {\n this._wuHandle.release();\n }\n super.exit(domNode, element);\n }\n}\nWUStatus.prototype._class += \" eclwatch_WUStatus\";\n\nexport interface WUStatus {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n}\n\nWUStatus.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUStatus.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\n","import { Palette as e, Widget as t, format as n, hsl as r, map as i, select as a, selection as o } from \"@hpcc-js/common\";\n//#region \\0rolldown/runtime.js\nvar s = \"@hpcc-js/api\", c = \"3.5.1\", l = \"3.26.2\";\n//#endregion\n//#region src/I1DChart.ts\nfunction I1DChart() {}\nI1DChart.prototype._dataFamily = \"1D\", I1DChart.prototype._palette = e.rainbow(\"default\"), I1DChart.prototype.click = function(e, t, n) {}, I1DChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/I2DChart.ts\nfunction I2DChart() {}\nI2DChart.prototype._dataFamily = \"2D\", I2DChart.prototype._palette = e.ordinal(\"default\"), I2DChart.prototype.fillColor = function(e, t, n, r) {\n\treturn this._palette(e[0]);\n}, I2DChart.prototype.strokeColor = function(e, t, n, i) {\n\treturn r(this.fillColor(e, t, n, i)).darker().toString();\n}, I2DChart.prototype.textColor = function(t, n, r, i) {\n\treturn e.textColor(this.fillColor(t, n, r, i));\n}, I2DChart.prototype.click = function(e, t, n) {}, I2DChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/I2DAggrChart.ts\nfunction I2DAggrChart() {}\nI2DAggrChart.prototype._palette = e.rainbow(\"default\"), I2DAggrChart.prototype.fillColor = function(e, t, n) {\n\treturn this._palette(e.length);\n}, I2DAggrChart.prototype.strokeColor = function(e, t, n) {\n\treturn r(this.fillColor(e, t, n)).darker().toString();\n}, I2DAggrChart.prototype.textColor = function(t, n, r) {\n\treturn e.textColor(this.fillColor(t, n, r));\n}, I2DAggrChart.prototype.click = function(e, t, n) {}, I2DAggrChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/IGraph.ts\nfunction IGraph() {}\nIGraph.prototype._dataFamily = \"graph\", IGraph.prototype.vertex_click = function(e, t, n, r) {\n\tr && r.vertex;\n}, IGraph.prototype.vertex_dblclick = function(e, t, n, r) {\n\tr && r.vertex;\n}, IGraph.prototype.edge_click = function(e, t, n, r) {\n\tr && r.edge;\n}, IGraph.prototype.edge_dblclick = function(e, t, n, r) {\n\tr && r.edge;\n};\n//#endregion\n//#region src/IHighlight.ts\nfunction instanceOfIHighlight(e) {\n\treturn typeof e.highlightColumn == \"function\";\n}\n//#endregion\n//#region src/IInput.ts\nfunction IInput() {}\nIInput.prototype = Object.create(t.prototype), IInput.prototype.constructor = IInput, IInput.prototype.isValid = function() {\n\treturn !(this.validate() && !new RegExp(this.validate()).test(this.value()));\n}, IInput.prototype.hasValue = function() {\n\tif (typeof this.type == \"function\") {\n\t\tswitch (this.type()) {\n\t\t\tcase \"radio\":\n\t\t\tcase \"checkbox\":\n\t\t\t\tif (this.value() && this.value() !== \"false\") return !0;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tif (this.value()) return !0;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn !1;\n\t}\n\treturn this.value() !== \"\";\n}, IInput.prototype.blur = function(e) {}, IInput.prototype.keyup = function(e) {}, IInput.prototype.focus = function(e) {}, IInput.prototype.click = function(e) {}, IInput.prototype.dblclick = function(e) {}, IInput.prototype.change = function(e, t) {}, IInput.prototype.resetValue = function(e) {\n\te.value(e._inputElement[0].node().value);\n}, IInput.prototype.disable = function(e) {\n\tthis._inputElement.forEach(function(t, n) {\n\t\tt.attr(\"disabled\", e ? \"disabled\" : null);\n\t});\n}, IInput.prototype.setFocus = function() {\n\tthis._inputElement.length && this._inputElement[0].node().focus();\n}, IInput.prototype.publish(\"name\", \"\", \"string\", \"HTML name for the input\"), IInput.prototype.publish(\"label\", \"\", \"string\", \"Descriptive label\"), IInput.prototype.publish(\"value\", \"\", \"string\", \"Input Current Value\"), IInput.prototype.publish(\"validate\", null, \"string\", \"Input Validation\");\n//#endregion\n//#region src/INDChart.ts\nfunction INDChart() {}\nINDChart.prototype._dataFamily = \"ND\", INDChart.prototype._palette = e.ordinal(\"default\"), INDChart.prototype.fillColor = function(e, t, n, r) {\n\treturn this._palette(t);\n}, INDChart.prototype.strokeColor = function(e, t, n, i) {\n\treturn r(this.fillColor(e, t, n, i)).darker().toString();\n}, INDChart.prototype.textColor = function(t, n, r, i) {\n\treturn e.textColor(this.fillColor(t, n, r, i));\n}, INDChart.prototype.click = function(e, t, n) {}, INDChart.prototype.dblclick = function(e, t, n) {};\n//#endregion\n//#region src/Tooltip.ts\nfunction tip() {\n\tlet e = d3TipDirection, t = d3TipOffset, n = d3TipHTML, r = functor(document.body), s = initNode(), c = null, l = null, u = null, tip = function(e) {\n\t\tif (c = getSVGNode(e), !c) return;\n\t\tl = c.createSVGPoint();\n\t\tlet t = r();\n\t\tt && s && t.appendChild(s);\n\t};\n\ttip.show = function(e, i, a) {\n\t\tu = a[i];\n\t\tlet o = Array.prototype.slice.call(arguments), s = n.apply(this, o);\n\t\tif (s === null) return tip;\n\t\tlet c = t.apply(this, o), l = getNodeEl(), p = f.length, m, h = r().getBoundingClientRect();\n\t\tfor (l.html(s).style(\"opacity\", 1).style(\"pointer-events\", \"all\"); p--;) l.classed(f[p], !1);\n\t\tlet g = !1, _ = {}, v = f[0];\n\t\tfor (let e = 0; e < f.length && (g = _placement_attempt(f[e]), !g); e++);\n\t\tif (g) l.classed(\"notick\", !1);\n\t\telse {\n\t\t\tl.classed(\"notick\", !0);\n\t\t\tlet e = _vertical_adjustment(_[v]), t = _horizontal_adjustment(_[v]);\n\t\t\t_placement_attempt(v, e, t);\n\t\t}\n\t\treturn tip;\n\t\tfunction _horizontal_adjustment(e) {\n\t\t\treturn e.left > e.right ? e.left > 0 ? -e.left : 0 : e.right > 0 ? e.right : 0;\n\t\t}\n\t\tfunction _vertical_adjustment(e) {\n\t\t\treturn e.top > e.bottom ? e.top > 0 ? -e.top : 0 : e.bottom;\n\t\t}\n\t\tfunction _placement_attempt(e, t, n) {\n\t\t\tt ||= 0, n ||= 0, l.style(\"white-space\", \"nowrap\"), m = d.get(e).apply(this), l.classed(e, !0).style(\"top\", m.top + c[0] - t + \"px\").style(\"left\", m.left + c[1] - n + \"px\");\n\t\t\tlet r = l.node().getBoundingClientRect(), i = r.top > h.top && r.left > h.left && r.bottom < h.bottom && r.right < h.right;\n\t\t\treturn _[e] = {\n\t\t\t\ttop: h.top - r.top,\n\t\t\t\tright: r.right - h.right,\n\t\t\t\tbottom: r.bottom - h.bottom,\n\t\t\t\tleft: h.left - r.left\n\t\t\t}, l.style(\"white-space\", \"normal\"), _[e].total_overflow = Object.keys(_[e]).filter((t) => _[e][t] > 0).reduce((t, n) => t + _[e][n], 0), _[v].total_overflow > _[e].total_overflow && (v = e), i || l.classed(e, !1), i;\n\t\t}\n\t}, tip.hide = function() {\n\t\treturn getNodeEl().style(\"opacity\", 0).style(\"pointer-events\", \"none\"), tip;\n\t}, tip.attr = function(e, t) {\n\t\tif (arguments.length < 2 && typeof e == \"string\") return getNodeEl().attr(e);\n\t\tlet n = Array.prototype.slice.call(arguments);\n\t\treturn o.prototype.attr.apply(getNodeEl(), n), tip;\n\t}, tip.style = function(e, t) {\n\t\tif (arguments.length < 2 && typeof e == \"string\") return getNodeEl().style(e);\n\t\tlet n = Array.prototype.slice.call(arguments);\n\t\treturn o.prototype.style.apply(getNodeEl(), n), tip;\n\t}, tip.direction = function(t) {\n\t\treturn arguments.length ? (e = t == null ? t : functor(t), tip) : e;\n\t}, tip.offset = function(e) {\n\t\treturn arguments.length ? (t = e == null ? e : functor(e), tip) : t;\n\t}, tip.html = function(e) {\n\t\treturn arguments.length ? (n = e == null ? e : functor(e), tip) : n;\n\t}, tip.rootElement = function(e) {\n\t\treturn arguments.length ? (r = functor(e), tip) : r;\n\t}, tip.destroy = function() {\n\t\treturn s &&= (getNodeEl().remove(), null), tip;\n\t};\n\tfunction d3TipDirection() {\n\t\treturn \"n\";\n\t}\n\tfunction d3TipOffset() {\n\t\treturn [0, 0];\n\t}\n\tfunction d3TipHTML() {\n\t\treturn \" \";\n\t}\n\tlet d = i({\n\t\tn: directionNorth,\n\t\ts: directionSouth,\n\t\te: directionEast,\n\t\tw: directionWest,\n\t\tnw: directionNorthWest,\n\t\tne: directionNorthEast,\n\t\tsw: directionSouthWest,\n\t\tse: directionSouthEast\n\t}), f = d.keys();\n\tfunction directionNorth() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.n.y - s.offsetHeight,\n\t\t\tleft: e.n.x - s.offsetWidth / 2\n\t\t};\n\t}\n\tfunction directionSouth() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.s.y + 8,\n\t\t\tleft: e.s.x - s.offsetWidth / 2\n\t\t};\n\t}\n\tfunction directionEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.e.y - s.offsetHeight / 2,\n\t\t\tleft: e.e.x + 8\n\t\t};\n\t}\n\tfunction directionWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.w.y - s.offsetHeight / 2,\n\t\t\tleft: e.w.x - s.offsetWidth - 8\n\t\t};\n\t}\n\tfunction directionNorthWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.nw.y - s.offsetHeight,\n\t\t\tleft: e.nw.x - s.offsetWidth\n\t\t};\n\t}\n\tfunction directionNorthEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.ne.y - s.offsetHeight,\n\t\t\tleft: e.ne.x\n\t\t};\n\t}\n\tfunction directionSouthWest() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.sw.y,\n\t\t\tleft: e.sw.x - s.offsetWidth\n\t\t};\n\t}\n\tfunction directionSouthEast() {\n\t\tlet e = getScreenBBox(window);\n\t\treturn {\n\t\t\ttop: e.se.y,\n\t\t\tleft: e.se.x\n\t\t};\n\t}\n\tfunction initNode() {\n\t\tlet e = a(document.createElement(\"div\"));\n\t\treturn e.attr(\"class\", \"d3-tip\").style(\"position\", \"absolute\").style(\"top\", \"0px\").style(\"opacity\", 0).style(\"pointer-events\", \"none\").style(\"box-sizing\", \"border-box\"), e.node();\n\t}\n\tfunction getSVGNode(e) {\n\t\tlet t = e.node();\n\t\treturn t ? t.tagName.toLowerCase() === \"svg\" ? t : t.ownerSVGElement : null;\n\t}\n\tfunction getNodeEl() {\n\t\treturn s ?? (s = initNode(), r().appendChild(s)), a(s);\n\t}\n\tfunction getScreenBBox(e) {\n\t\tlet t = u || e;\n\t\tfor (; t.getCTM == null && t.parentNode != null;) t = t.parentNode;\n\t\tlet n = {}, r = t.getCTM(), i = t.getBBox(), a = i.width, o = i.height, s = i.x, c = i.y;\n\t\treturn l.x = s, l.y = c, n.nw = l.matrixTransform(r), l.x += a, n.ne = l.matrixTransform(r), l.y += o, n.se = l.matrixTransform(r), l.x -= a, n.sw = l.matrixTransform(r), l.y -= o / 2, n.w = l.matrixTransform(r), l.x += a, n.e = l.matrixTransform(r), l.x -= a / 2, l.y -= o / 2, n.n = l.matrixTransform(r), l.y += o, n.s = l.matrixTransform(r), n;\n\t}\n\tfunction functor(e) {\n\t\treturn typeof e == \"function\" ? e : function() {\n\t\t\treturn e;\n\t\t};\n\t}\n\treturn tip;\n}\n//#endregion\n//#region src/ITooltip.ts\nfunction ITooltip() {\n\tif (this.tooltip = tip(), this.tooltipLabelFormat_exists() && (this._labelFormatter = n(this.tooltipLabelFormat())), this.tooltipValueFormat_exists() && (this._valueFormatter = n(this.tooltipValueFormat())), this.layerEnter) {\n\t\tlet e = this.layerEnter;\n\t\tthis.layerEnter = function(t, n, r) {\n\t\t\tthis._parentOverlay ||= t._parentOverlay, this.tooltipEnter(n), e.apply(this, arguments);\n\t\t};\n\t\tlet t = this.layerUpdate;\n\t\tthis.layerUpdate = function(e) {\n\t\t\tt.apply(this, arguments), this.tooltipUpdate();\n\t\t};\n\t\tlet n = this.layerExit;\n\t\tthis.layerExit = function(e) {\n\t\t\tthis.tooltipExit(), n.apply(this, arguments);\n\t\t};\n\t} else {\n\t\tlet e = this.enter;\n\t\tthis.enter = function(t, n) {\n\t\t\tthis.tooltipEnter(n), e.apply(this, arguments);\n\t\t};\n\t\tlet t = this.update;\n\t\tthis.update = function(e, n) {\n\t\t\tt.apply(this, arguments), this.tooltipUpdate();\n\t\t};\n\t\tlet n = this.exit;\n\t\tthis.exit = function(e, t) {\n\t\t\tthis.tooltipExit(), n.apply(this, arguments);\n\t\t};\n\t}\n}\nITooltip.prototype = Object.create(t.prototype), ITooltip.prototype.constructor = ITooltip, ITooltip.prototype.tooltipEnter = function(e) {\n\tlet t = this.parentOverlay();\n\tt.empty() || this.tooltip.rootElement(t.node().parentNode), e.call(this.tooltip);\n}, ITooltip.prototype.tooltipUpdate = function() {\n\tthis.tooltip.offset(() => {\n\t\tif (event && this.tooltipFollowMouse()) {\n\t\t\tlet e = document.querySelector(\".d3-tip\");\n\t\t\treturn e.style.display = \"block\", e.style.left = this.tooltipOffset() + event.clientX + \"px\", e.style.top = event.clientY + \"px\", [];\n\t\t}\n\t\tswitch (this.tooltip.direction()()) {\n\t\t\tcase \"e\": return [0, this.tooltipOffset()];\n\t\t\tdefault: return [-this.tooltipOffset(), 0];\n\t\t}\n\t});\n\tlet e = this.tooltip.attr(\"class\");\n\te && (e = e.split(\" notick\").join(\"\") + (this.tooltipTick() ? \"\" : \" notick\") + (this.tooltipStyle() === \"none\" ? \" hidden\" : \"\"), e = e.split(\" \").filter(function(e) {\n\t\treturn e.indexOf(\"ITooltip-tooltipStyle-\") !== 0;\n\t}).join(\" \"), e += \" ITooltip-tooltipStyle-\" + this.tooltipStyle(), this.tooltip.attr(\"class\", e));\n}, ITooltip.prototype.tooltipExit = function() {\n\tthis.tooltip && this.tooltip.destroy();\n}, ITooltip.prototype._tooltipHTML = function(e) {\n\treturn e;\n}, ITooltip.prototype.tooltipHTML = function(e) {\n\treturn this.tooltip.html(e);\n}, ITooltip.prototype.tooltipFormat = function(e = {}) {\n\tswitch (e.label = e.label === void 0 ? \"\" : e.label, this._labelFormatter ? e.label = this._labelFormatter(e.label) || \"\" : this.formatData && this.parseData && (e.label = this.formatData(this.parseData(e.label))), e.series = e.series || \"\", e.value instanceof Date ? e.value = e.value || \"\" : this._valueFormatter ? e.value = this._valueFormatter(e.value) || \"\" : this.formatValue && this.parseValue && (e.value = this.formatValue(this.parseValue(e.value))), this.tooltipStyle()) {\n\t\tcase \"none\": break;\n\t\tcase \"series-table\":\n\t\t\tlet t = \"<table class=\\\"ITooltip-series-table\\\"><thead><tr><th colspan=\\\"2\\\">\" + e.label + \"</th></tr></thead><tbody>\";\n\t\t\treturn e.arr.forEach(function(e) {\n\t\t\t\tt += \"<tr>\", t += \"<td>\", t += \"<div class=\\\"series-table-row-color\\\" style=\\\"background-color:\" + e.color + \"\\\"></div>\", t += \"<div class=\\\"series-table-row-label\\\">\" + e.label + \"</div>\", t += \"</td>\", t += \"<td><div class=\\\"series-table-row-value\\\">\" + e.value + \"</div></td>\", t += \"</tr>\";\n\t\t\t}), t += \"</tbody>\", t += \"</table>\", t;\n\t\tdefault: return e.series ? \"<span style='color:\" + this.tooltipSeriesColor() + \"'>\" + e.series + \"</span> / <span style='color:\" + this.tooltipLabelColor() + \"'>\" + e.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\" : e.label === \"\" ? \"<span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\" : \"<span style='color:\" + this.tooltipLabelColor() + \"'>\" + e.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + e.value + \"</span>\";\n\t}\n}, ITooltip.prototype.tooltipKeyValueFormat = function(e, t) {\n\tlet n = \"\";\n\tfor (let r in t) if (r !== e) {\n\t\tlet e = t && t[r] ? t[r] : \"\";\n\t\tn += `<tr><td style=\"${this.tooltipLabelColor_exists() ? \"color:\" + this.tooltipLabelColor() : \"\"}\">${r}</td><td style=\"font-weight:normal\">${e}</td></tr>`;\n\t}\n\treturn `<table>\n <thead>\n <tr><th colspan=\"2\" style=\"font-weight:bold;font-size:16px\">${t[e]}</th></tr>\n </thead>\n <tbody>\n ${n}\n </tbody>\n </table>`;\n}, ITooltip.prototype.publish(\"tooltipStyle\", \"default\", \"set\", \"Style mode\", [\n\t\"default\",\n\t\"none\",\n\t\"series-table\"\n], {}), ITooltip.prototype.publish(\"tooltipFollowMouse\", !1, \"boolean\", \"If true, the tooltip will follow mouse movement\", null, {}), ITooltip.prototype.publish(\"tooltipLabelFormat\", void 0, \"string\", \"Format of tooltip label(s) (the domain axis)\", null, {}), ITooltip.prototype.publish(\"tooltipValueFormat\", void 0, \"string\", \"Number format of tooltip value(s)\", null, {}), ITooltip.prototype.publish(\"tooltipSeriesColor\", \"#EAFFFF\", \"html-color\", \"Color of tooltip series text\", null, {}), ITooltip.prototype.publish(\"tooltipLabelColor\", \"#CCFFFF\", \"html-color\", \"Color of tooltip label text (the domain axis)\", null, {}), ITooltip.prototype.publish(\"tooltipValueColor\", \"white\", \"html-color\", \"Color of tooltip value(s)\", null, {}), ITooltip.prototype.publish(\"tooltipTick\", !0, \"boolean\", \"Show tooltip tick\", null, {}), ITooltip.prototype.publish(\"tooltipOffset\", 8, \"number\", \"Offset from the cursor\", null, {});\nvar u = ITooltip.prototype.tooltipLabelFormat;\nITooltip.prototype.tooltipLabelFormat = function(e) {\n\tlet t = u.apply(this, arguments);\n\treturn arguments.length && (this._labelFormatter = n(e)), t;\n};\nvar d = ITooltip.prototype.tooltipValueFormat;\nITooltip.prototype.tooltipValueFormat = function(e) {\n\tlet t = d.apply(this, arguments);\n\treturn arguments.length && (this._valueFormatter = n(e)), t;\n};\n//#endregion\n//#region src/ITree.ts\nfunction ITree() {}\nITree.prototype.constructor = ITree, ITree.prototype.click = function(e, t, n) {}, ITree.prototype.dblclick = function(e, t, n) {}, ITree.prototype._palette = e.ordinal(\"default\");\n//#endregion\nexport { l as BUILD_VERSION, I1DChart, I2DAggrChart, I2DChart, IGraph, IInput, INDChart, ITooltip, ITree, s as PKG_NAME, c as PKG_VERSION, instanceOfIHighlight };\n\n//# sourceMappingURL=index.js.map\n(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.d3-tip{color:#fff;z-index:10;background:#000000a8;border-radius:2px;padding:12px;font-weight:700;line-height:1;pointer-events:none!important}.d3-tip.hidden{visibility:hidden}.d3-tip:after{content:\" \";box-sizing:border-box;border:4px solid #000000a8;width:8px;height:8px;margin:0;display:inline-block;position:absolute;pointer-events:none!important}.d3-tip.n:after{border-top-width:8px;border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;top:100%;left:calc(50% - 4px)}.d3-tip.e:after{border-top-color:#0000;border-bottom-color:#0000;border-left-color:#0000;border-right-width:8px;top:calc(50% - 4px);left:-12px}.d3-tip.s{margin-top:8px}.d3-tip.s:after{border-top-color:#0000;border-bottom-width:8px;border-left-color:#0000;border-right-color:#0000;top:-12px;left:calc(50% - 4px)}.d3-tip.w:after{border-top-color:#0000;border-bottom-color:#0000;border-left-width:8px;border-right-color:#0000;top:calc(50% - 4px);left:100%}.d3-tip.notick:after{border-color:#0000!important}.common_Widget .over{stroke:#000000a8;opacity:.66}.d3-tip.ITooltip-tooltipStyle-series-table{padding:0}.d3-tip .ITooltip-series-table th,.d3-tip .ITooltip-series-table td{text-align:left;border:1px solid #d1d1d1;padding:6px}.d3-tip .ITooltip-series-table .series-table-row-color{width:10px;height:10px;margin-right:10px;display:inline-block}.d3-tip .ITooltip-series-table .series-table-row-label{display:inline-block}.d3-tip .ITooltip-series-table th{background-color:#b3b3b3}.d3-tip .ITooltip-series-table td{color:#555;background-color:#fff;font-weight:400}.d3-tip .ITooltip-series-table td:first-child{border-right:0}table.ITooltip-series-table td:last-child{border-left:1px dotted #a3a3a3}/*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();","import { I1DChart as e, I2DAggrChart as t, I2DChart as n, INDChart as r, ITooltip as i } from \"@hpcc-js/api\";\nimport { CanvasWidget as a, FAChar as o, HTMLWidget as s, Palette as c, SVGWidget as l, Text as u, Utility as d, brush as f, brushSelection as p, brushX as m, brushY as h, d3Event as g, descending as _, dispatch as v, drag as b, event as S, extent as C, format as w, hsl as T, interpolate as E, interpolateHcl as D, local as O, max as k, min as A, range as j, rgb as M, scaleBand as N, scaleLinear as P, scaleLog as F, scalePow as I, scaleSqrt as L, scaleTime as R, select as z, thresholdSturges as ee, tickStep as B, timeFormat as V, timeParse as te, zoom as ne } from \"@hpcc-js/common\";\nimport { degreesToRadians as re, normalizeRadians as ie } from \"@hpcc-js/util\";\n//#region \\0rolldown/runtime.js\nvar ae = Object.defineProperty, __name = (e, t) => ae(e, \"name\", {\n\tvalue: t,\n\tconfigurable: !0\n}), oe = \"@hpcc-js/chart\", se = \"3.8.1\", ce = \"3.26.2\", le = Math.PI, ue = 2 * le, de = 1e-6, fe = ue - de;\nfunction Path() {\n\tthis._x0 = this._y0 = this._x1 = this._y1 = null, this._ = \"\";\n}\nfunction path() {\n\treturn new Path();\n}\nPath.prototype = path.prototype = {\n\tconstructor: Path,\n\tmoveTo: function(e, t) {\n\t\tthis._ += \"M\" + (this._x0 = this._x1 = +e) + \",\" + (this._y0 = this._y1 = +t);\n\t},\n\tclosePath: function() {\n\t\tthis._x1 !== null && (this._x1 = this._x0, this._y1 = this._y0, this._ += \"Z\");\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._ += \"L\" + (this._x1 = +e) + \",\" + (this._y1 = +t);\n\t},\n\tquadraticCurveTo: function(e, t, n, r) {\n\t\tthis._ += \"Q\" + +e + \",\" + +t + \",\" + (this._x1 = +n) + \",\" + (this._y1 = +r);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._ += \"C\" + +e + \",\" + +t + \",\" + +n + \",\" + +r + \",\" + (this._x1 = +i) + \",\" + (this._y1 = +a);\n\t},\n\tarcTo: function(e, t, n, r, i) {\n\t\te = +e, t = +t, n = +n, r = +r, i = +i;\n\t\tvar a = this._x1, o = this._y1, s = n - e, c = r - t, l = a - e, u = o - t, d = l * l + u * u;\n\t\tif (i < 0) throw Error(\"negative radius: \" + i);\n\t\tif (this._x1 === null) this._ += \"M\" + (this._x1 = e) + \",\" + (this._y1 = t);\n\t\telse if (d > de) if (!(Math.abs(u * s - c * l) > de) || !i) this._ += \"L\" + (this._x1 = e) + \",\" + (this._y1 = t);\n\t\telse {\n\t\t\tvar f = n - a, p = r - o, m = s * s + c * c, h = f * f + p * p, g = Math.sqrt(m), _ = Math.sqrt(d), v = i * Math.tan((le - Math.acos((m + d - h) / (2 * g * _))) / 2), b = v / _, S = v / g;\n\t\t\tMath.abs(b - 1) > de && (this._ += \"L\" + (e + b * l) + \",\" + (t + b * u)), this._ += \"A\" + i + \",\" + i + \",0,0,\" + +(u * f > l * p) + \",\" + (this._x1 = e + S * s) + \",\" + (this._y1 = t + S * c);\n\t\t}\n\t},\n\tarc: function(e, t, n, r, i, a) {\n\t\te = +e, t = +t, n = +n, a = !!a;\n\t\tvar o = n * Math.cos(r), s = n * Math.sin(r), c = e + o, l = t + s, u = 1 ^ a, d = a ? r - i : i - r;\n\t\tif (n < 0) throw Error(\"negative radius: \" + n);\n\t\tthis._x1 === null ? this._ += \"M\" + c + \",\" + l : (Math.abs(this._x1 - c) > de || Math.abs(this._y1 - l) > de) && (this._ += \"L\" + c + \",\" + l), n && (d < 0 && (d = d % ue + ue), d > fe ? this._ += \"A\" + n + \",\" + n + \",0,1,\" + u + \",\" + (e - o) + \",\" + (t - s) + \"A\" + n + \",\" + n + \",0,1,\" + u + \",\" + (this._x1 = c) + \",\" + (this._y1 = l) : d > de && (this._ += \"A\" + n + \",\" + n + \",0,\" + +(d >= le) + \",\" + u + \",\" + (this._x1 = e + n * Math.cos(i)) + \",\" + (this._y1 = t + n * Math.sin(i))));\n\t},\n\trect: function(e, t, n, r) {\n\t\tthis._ += \"M\" + (this._x0 = this._x1 = +e) + \",\" + (this._y0 = this._y1 = +t) + \"h\" + +n + \"v\" + +r + \"h\" + -n + \"Z\";\n\t},\n\ttoString: function() {\n\t\treturn this._;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-shape/src/constant.js\nfunction constant_default$3(e) {\n\treturn function constant() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$3, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/math.js\nvar pe = Math.abs, H = Math.atan2, me = Math.cos, he = Math.max, ge = Math.min, U = Math.sin, _e = Math.sqrt, ve = Math.PI, ye = ve / 2, be = 2 * ve;\nfunction acos(e) {\n\treturn e > 1 ? 0 : e < -1 ? ve : Math.acos(e);\n}\nfunction asin$1(e) {\n\treturn e >= 1 ? ye : e <= -1 ? -ye : Math.asin(e);\n}\n__name(asin$1, \"asin\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/arc.js\nfunction arcInnerRadius$1(e) {\n\treturn e.innerRadius;\n}\n__name(arcInnerRadius$1, \"arcInnerRadius\");\nfunction arcOuterRadius$1(e) {\n\treturn e.outerRadius;\n}\n__name(arcOuterRadius$1, \"arcOuterRadius\");\nfunction arcStartAngle$1(e) {\n\treturn e.startAngle;\n}\n__name(arcStartAngle$1, \"arcStartAngle\");\nfunction arcEndAngle$1(e) {\n\treturn e.endAngle;\n}\n__name(arcEndAngle$1, \"arcEndAngle\"), __name(arc_default$1, \"default\");\nfunction arcPadAngle$1(e) {\n\treturn e && e.padAngle;\n}\n__name(arcPadAngle$1, \"arcPadAngle\");\nfunction intersect$1(e, t, n, r, i, a, o, s) {\n\tvar c = n - e, l = r - t, u = o - i, d = s - a, f = d * c - u * l;\n\tif (!(f * f < 1e-12)) return f = (u * (t - a) - d * (e - i)) / f, [e + f * c, t + f * l];\n}\n__name(intersect$1, \"intersect\");\nfunction cornerTangents$1(e, t, n, r, i, a, o) {\n\tvar s = e - n, c = t - r, l = (o ? a : -a) / _e(s * s + c * c), u = l * c, d = -l * s, f = e + u, p = t + d, m = n + u, h = r + d, g = (f + m) / 2, _ = (p + h) / 2, v = m - f, b = h - p, S = v * v + b * b, C = i - a, w = f * h - m * p, T = (b < 0 ? -1 : 1) * _e(he(0, C * C * S - w * w)), E = (w * b - v * T) / S, D = (-w * v - b * T) / S, O = (w * b + v * T) / S, k = (-w * v + b * T) / S, A = E - g, j = D - _, M = O - g, N = k - _;\n\treturn A * A + j * j > M * M + N * N && (E = O, D = k), {\n\t\tcx: E,\n\t\tcy: D,\n\t\tx01: -u,\n\t\ty01: -d,\n\t\tx11: E * (i / C - 1),\n\t\ty11: D * (i / C - 1)\n\t};\n}\n__name(cornerTangents$1, \"cornerTangents\");\nfunction arc_default$1() {\n\tvar e = arcInnerRadius$1, t = arcOuterRadius$1, n = constant_default$3(0), r = null, i = arcStartAngle$1, a = arcEndAngle$1, o = arcPadAngle$1, s = null;\n\tfunction arc() {\n\t\tvar c, l, u = +e.apply(this, arguments), d = +t.apply(this, arguments), f = i.apply(this, arguments) - ye, p = a.apply(this, arguments) - ye, m = pe(p - f), h = p > f;\n\t\tif (s ||= c = path(), d < u && (l = d, d = u, u = l), !(d > 1e-12)) s.moveTo(0, 0);\n\t\telse if (m > be - 1e-12) s.moveTo(d * me(f), d * U(f)), s.arc(0, 0, d, f, p, !h), u > 1e-12 && (s.moveTo(u * me(p), u * U(p)), s.arc(0, 0, u, p, f, h));\n\t\telse {\n\t\t\tvar g = f, _ = p, v = f, b = p, S = m, C = m, w = o.apply(this, arguments) / 2, T = w > 1e-12 && (r ? +r.apply(this, arguments) : _e(u * u + d * d)), E = ge(pe(d - u) / 2, +n.apply(this, arguments)), D = E, O = E, k, A;\n\t\t\tif (T > 1e-12) {\n\t\t\t\tvar j = asin$1(T / u * U(w)), M = asin$1(T / d * U(w));\n\t\t\t\t(S -= j * 2) > 1e-12 ? (j *= h ? 1 : -1, v += j, b -= j) : (S = 0, v = b = (f + p) / 2), (C -= M * 2) > 1e-12 ? (M *= h ? 1 : -1, g += M, _ -= M) : (C = 0, g = _ = (f + p) / 2);\n\t\t\t}\n\t\t\tvar N = d * me(g), P = d * U(g), F = u * me(b), I = u * U(b);\n\t\t\tif (E > 1e-12) {\n\t\t\t\tvar L = d * me(_), R = d * U(_), z = u * me(v), ee = u * U(v), B;\n\t\t\t\tif (m < ve && (B = intersect$1(N, P, z, ee, L, R, F, I))) {\n\t\t\t\t\tvar V = N - B[0], te = P - B[1], ne = L - B[0], re = R - B[1], ie = 1 / U(acos((V * ne + te * re) / (_e(V * V + te * te) * _e(ne * ne + re * re))) / 2), ae = _e(B[0] * B[0] + B[1] * B[1]);\n\t\t\t\t\tD = ge(E, (u - ae) / (ie - 1)), O = ge(E, (d - ae) / (ie + 1));\n\t\t\t\t}\n\t\t\t}\n\t\t\tC > 1e-12 ? O > 1e-12 ? (k = cornerTangents$1(z, ee, N, P, d, O, h), A = cornerTangents$1(L, R, F, I, d, O, h), s.moveTo(k.cx + k.x01, k.cy + k.y01), O < E ? s.arc(k.cx, k.cy, O, H(k.y01, k.x01), H(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, O, H(k.y01, k.x01), H(k.y11, k.x11), !h), s.arc(0, 0, d, H(k.cy + k.y11, k.cx + k.x11), H(A.cy + A.y11, A.cx + A.x11), !h), s.arc(A.cx, A.cy, O, H(A.y11, A.x11), H(A.y01, A.x01), !h))) : (s.moveTo(N, P), s.arc(0, 0, d, g, _, !h)) : s.moveTo(N, P), !(u > 1e-12) || !(S > 1e-12) ? s.lineTo(F, I) : D > 1e-12 ? (k = cornerTangents$1(F, I, L, R, u, -D, h), A = cornerTangents$1(N, P, z, ee, u, -D, h), s.lineTo(k.cx + k.x01, k.cy + k.y01), D < E ? s.arc(k.cx, k.cy, D, H(k.y01, k.x01), H(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, D, H(k.y01, k.x01), H(k.y11, k.x11), !h), s.arc(0, 0, u, H(k.cy + k.y11, k.cx + k.x11), H(A.cy + A.y11, A.cx + A.x11), h), s.arc(A.cx, A.cy, D, H(A.y11, A.x11), H(A.y01, A.x01), !h))) : s.arc(0, 0, u, b, v, h);\n\t\t}\n\t\tif (s.closePath(), c) return s = null, c + \"\" || null;\n\t}\n\treturn arc.centroid = function() {\n\t\tvar n = (+e.apply(this, arguments) + +t.apply(this, arguments)) / 2, r = (+i.apply(this, arguments) + +a.apply(this, arguments)) / 2 - ve / 2;\n\t\treturn [me(r) * n, U(r) * n];\n\t}, arc.innerRadius = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), arc) : e;\n\t}, arc.outerRadius = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$3(+e), arc) : t;\n\t}, arc.cornerRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), arc) : n;\n\t}, arc.padRadius = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), arc) : r;\n\t}, arc.startAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(+e), arc) : i;\n\t}, arc.endAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default$3(+e), arc) : a;\n\t}, arc.padAngle = function(e) {\n\t\treturn arguments.length ? (o = typeof e == \"function\" ? e : constant_default$3(+e), arc) : o;\n\t}, arc.context = function(e) {\n\t\treturn arguments.length ? (s = e ?? null, arc) : s;\n\t}, arc;\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/linear.js\nfunction Linear$1(e) {\n\tthis._context = e;\n}\n__name(Linear$1, \"Linear\"), Linear$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t}\n\t}\n}, __name(linear_default$1, \"default\");\nfunction linear_default$1(e) {\n\treturn new Linear$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/point.js\nfunction x$1(e) {\n\treturn e[0];\n}\n__name(x$1, \"x\");\nfunction y$1(e) {\n\treturn e[1];\n}\n__name(y$1, \"y\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/line.js\nfunction line_default$1() {\n\tvar e = x$1, t = y$1, n = constant_default$3(!0), r = null, i = linear_default$1, a = null;\n\tfunction line(o) {\n\t\tvar s, c = o.length, l, u = !1, d;\n\t\tfor (r ?? (a = i(d = path())), s = 0; s <= c; ++s) !(s < c && n(l = o[s], s, o)) === u && ((u = !u) ? a.lineStart() : a.lineEnd()), u && a.point(+e(l, s, o), +t(l, s, o));\n\t\tif (d) return a = null, d + \"\" || null;\n\t}\n\treturn line.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), line) : e;\n\t}, line.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$3(+e), line) : t;\n\t}, line.defined = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(!!e), line) : n;\n\t}, line.curve = function(e) {\n\t\treturn arguments.length ? (i = e, r != null && (a = i(r)), line) : i;\n\t}, line.context = function(e) {\n\t\treturn arguments.length ? (e == null ? r = a = null : a = i(r = e), line) : r;\n\t}, line;\n}\n__name(line_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/area.js\nfunction area_default$1() {\n\tvar e = x$1, t = null, n = constant_default$3(0), r = y$1, i = constant_default$3(!0), a = null, o = linear_default$1, s = null;\n\tfunction area(c) {\n\t\tvar l, u, d, f = c.length, p, m = !1, h, g = Array(f), _ = Array(f);\n\t\tfor (a ?? (s = o(h = path())), l = 0; l <= f; ++l) {\n\t\t\tif (!(l < f && i(p = c[l], l, c)) === m) if (m = !m) u = l, s.areaStart(), s.lineStart();\n\t\t\telse {\n\t\t\t\tfor (s.lineEnd(), s.lineStart(), d = l - 1; d >= u; --d) s.point(g[d], _[d]);\n\t\t\t\ts.lineEnd(), s.areaEnd();\n\t\t\t}\n\t\t\tm && (g[l] = +e(p, l, c), _[l] = +n(p, l, c), s.point(t ? +t(p, l, c) : g[l], r ? +r(p, l, c) : _[l]));\n\t\t}\n\t\tif (h) return s = null, h + \"\" || null;\n\t}\n\tfunction arealine() {\n\t\treturn line_default$1().defined(i).curve(o).context(a);\n\t}\n\treturn area.x = function(n) {\n\t\treturn arguments.length ? (e = typeof n == \"function\" ? n : constant_default$3(+n), t = null, area) : e;\n\t}, area.x0 = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), area) : e;\n\t}, area.x1 = function(e) {\n\t\treturn arguments.length ? (t = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), area) : t;\n\t}, area.y = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), r = null, area) : n;\n\t}, area.y0 = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$3(+e), area) : n;\n\t}, area.y1 = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default$3(+e), area) : r;\n\t}, area.lineX0 = area.lineY0 = function() {\n\t\treturn arealine().x(e).y(n);\n\t}, area.lineY1 = function() {\n\t\treturn arealine().x(e).y(r);\n\t}, area.lineX1 = function() {\n\t\treturn arealine().x(t).y(n);\n\t}, area.defined = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(!!e), area) : i;\n\t}, area.curve = function(e) {\n\t\treturn arguments.length ? (o = e, a != null && (s = o(a)), area) : o;\n\t}, area.context = function(e) {\n\t\treturn arguments.length ? (e == null ? a = s = null : s = o(a = e), area) : a;\n\t}, area;\n}\n__name(area_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/descending.js\nfunction descending_default(e, t) {\n\treturn t < e ? -1 : t > e ? 1 : t >= e ? 0 : NaN;\n}\n__name(descending_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/identity.js\nfunction identity_default$2(e) {\n\treturn e;\n}\n__name(identity_default$2, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/pie.js\nfunction pie_default() {\n\tvar e = identity_default$2, t = descending_default, n = null, r = constant_default$3(0), i = constant_default$3(be), a = constant_default$3(0);\n\tfunction pie(o) {\n\t\tvar s, c = o.length, l, u, d = 0, f = Array(c), p = Array(c), m = +r.apply(this, arguments), h = Math.min(be, Math.max(-be, i.apply(this, arguments) - m)), g, _ = Math.min(Math.abs(h) / c, a.apply(this, arguments)), v = _ * (h < 0 ? -1 : 1), b;\n\t\tfor (s = 0; s < c; ++s) (b = p[f[s] = s] = +e(o[s], s, o)) > 0 && (d += b);\n\t\tfor (t == null ? n != null && f.sort(function(e, t) {\n\t\t\treturn n(o[e], o[t]);\n\t\t}) : f.sort(function(e, n) {\n\t\t\treturn t(p[e], p[n]);\n\t\t}), s = 0, u = d ? (h - c * v) / d : 0; s < c; ++s, m = g) l = f[s], b = p[l], g = m + (b > 0 ? b * u : 0) + v, p[l] = {\n\t\t\tdata: o[l],\n\t\t\tindex: s,\n\t\t\tvalue: b,\n\t\t\tstartAngle: m,\n\t\t\tendAngle: g,\n\t\t\tpadAngle: _\n\t\t};\n\t\treturn p;\n\t}\n\treturn pie.value = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$3(+t), pie) : e;\n\t}, pie.sortValues = function(e) {\n\t\treturn arguments.length ? (t = e, n = null, pie) : t;\n\t}, pie.sort = function(e) {\n\t\treturn arguments.length ? (n = e, t = null, pie) : n;\n\t}, pie.startAngle = function(e) {\n\t\treturn arguments.length ? (r = typeof e == \"function\" ? e : constant_default$3(+e), pie) : r;\n\t}, pie.endAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default$3(+e), pie) : i;\n\t}, pie.padAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default$3(+e), pie) : a;\n\t}, pie;\n}\n__name(pie_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/basis.js\nfunction point$7(e, t, n) {\n\te._context.bezierCurveTo((2 * e._x0 + e._x1) / 3, (2 * e._y0 + e._y1) / 3, (e._x0 + 2 * e._x1) / 3, (e._y0 + 2 * e._y1) / 3, (e._x0 + 4 * e._x1 + t) / 6, (e._y0 + 4 * e._y1 + n) / 6);\n}\n__name(point$7, \"point\");\nfunction Basis$1(e) {\n\tthis._context = e;\n}\n__name(Basis$1, \"Basis\"), __name(basis_default, \"default\"), Basis$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 3: point$7(this, this._x1, this._y1);\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3, this._context.lineTo((5 * this._x0 + this._x1) / 6, (5 * this._y0 + this._y1) / 6);\n\t\t\tdefault:\n\t\t\t\tpoint$7(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\nfunction basis_default(e) {\n\treturn new Basis$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/bundle.js\nfunction Bundle$1(e, t) {\n\tthis._basis = new Basis$1(e), this._beta = t;\n}\n__name(Bundle$1, \"Bundle\"), Bundle$1.prototype = {\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [], this._basis.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length - 1;\n\t\tif (n > 0) for (var r = e[0], i = t[0], a = e[n] - r, o = t[n] - i, s = -1, c; ++s <= n;) c = s / n, this._basis.point(this._beta * e[s] + (1 - this._beta) * (r + c * a), this._beta * t[s] + (1 - this._beta) * (i + c * o));\n\t\tthis._x = this._y = null, this._basis.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nvar xe = (function custom(e) {\n\tfunction bundle(t) {\n\t\treturn e === 1 ? new Basis$1(t) : new Bundle$1(t, e);\n\t}\n\treturn bundle.beta = function(e) {\n\t\treturn custom(+e);\n\t}, bundle;\n})(.85);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/cardinal.js\nfunction point$6(e, t, n) {\n\te._context.bezierCurveTo(e._x1 + e._k * (e._x2 - e._x0), e._y1 + e._k * (e._y2 - e._y0), e._x2 + e._k * (e._x1 - t), e._y2 + e._k * (e._y1 - n), e._x2, e._y2);\n}\n__name(point$6, \"point\");\nfunction Cardinal$1(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\n__name(Cardinal$1, \"Cardinal\"), Cardinal$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$6(this, this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x1 = e, this._y1 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$6(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar Se = (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new Cardinal$1(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/catmullRom.js\nfunction point$5(e, t, n) {\n\tvar r = e._x1, i = e._y1, a = e._x2, o = e._y2;\n\tif (e._l01_a > 1e-12) {\n\t\tvar s = 2 * e._l01_2a + 3 * e._l01_a * e._l12_a + e._l12_2a, c = 3 * e._l01_a * (e._l01_a + e._l12_a);\n\t\tr = (r * s - e._x0 * e._l12_2a + e._x2 * e._l01_2a) / c, i = (i * s - e._y0 * e._l12_2a + e._y2 * e._l01_2a) / c;\n\t}\n\tif (e._l23_a > 1e-12) {\n\t\tvar l = 2 * e._l23_2a + 3 * e._l23_a * e._l12_a + e._l12_2a, u = 3 * e._l23_a * (e._l23_a + e._l12_a);\n\t\ta = (a * l + e._x1 * e._l23_2a - t * e._l12_2a) / u, o = (o * l + e._y1 * e._l23_2a - n * e._l12_2a) / u;\n\t}\n\te._context.bezierCurveTo(r, i, a, o, e._x2, e._y2);\n}\n__name(point$5, \"point\");\nfunction CatmullRom$1(e, t) {\n\tthis._context = e, this._alpha = t;\n}\n__name(CatmullRom$1, \"CatmullRom\"), CatmullRom$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$5(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar Ce = (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRom$1(t, e) : new Cardinal$1(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/monotone.js\nfunction sign$1(e) {\n\treturn e < 0 ? -1 : 1;\n}\n__name(sign$1, \"sign\");\nfunction slope3$1(e, t, n) {\n\tvar r = e._x1 - e._x0, i = t - e._x1, a = (e._y1 - e._y0) / (r || i < 0 && -0), o = (n - e._y1) / (i || r < 0 && -0), s = (a * i + o * r) / (r + i);\n\treturn (sign$1(a) + sign$1(o)) * Math.min(Math.abs(a), Math.abs(o), .5 * Math.abs(s)) || 0;\n}\n__name(slope3$1, \"slope3\");\nfunction slope2$1(e, t) {\n\tvar n = e._x1 - e._x0;\n\treturn n ? (3 * (e._y1 - e._y0) / n - t) / 2 : t;\n}\n__name(slope2$1, \"slope2\");\nfunction point$4(e, t, n) {\n\tvar r = e._x0, i = e._y0, a = e._x1, o = e._y1, s = (a - r) / 3;\n\te._context.bezierCurveTo(r + s, i + s * t, a - s, o - s * n, a, o);\n}\n__name(point$4, \"point\");\nfunction MonotoneX$1(e) {\n\tthis._context = e;\n}\n__name(MonotoneX$1, \"MonotoneX\"), MonotoneX$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$4(this, this._t0, slope2$1(this, this._t0));\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tvar n = NaN;\n\t\tif (e = +e, t = +t, !(e === this._x1 && t === this._y1)) {\n\t\t\tswitch (this._point) {\n\t\t\t\tcase 0:\n\t\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\tthis._point = 2;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tthis._point = 3, point$4(this, slope2$1(this, n = slope3$1(this, e, t)), n);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tpoint$4(this, this._t0, n = slope3$1(this, e, t));\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t, this._t0 = n;\n\t\t}\n\t}\n};\nfunction MonotoneY$1(e) {\n\tthis._context = new ReflectContext$1(e);\n}\n__name(MonotoneY$1, \"MonotoneY\"), (MonotoneY$1.prototype = Object.create(MonotoneX$1.prototype)).point = function(e, t) {\n\tMonotoneX$1.prototype.point.call(this, t, e);\n};\nfunction ReflectContext$1(e) {\n\tthis._context = e;\n}\n__name(ReflectContext$1, \"ReflectContext\"), ReflectContext$1.prototype = {\n\tmoveTo: function(e, t) {\n\t\tthis._context.moveTo(t, e);\n\t},\n\tclosePath: function() {\n\t\tthis._context.closePath();\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._context.lineTo(t, e);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._context.bezierCurveTo(t, e, r, n, a, i);\n\t}\n};\nfunction monotoneX(e) {\n\treturn new MonotoneX$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/natural.js\nfunction Natural$1(e) {\n\tthis._context = e;\n}\n__name(Natural$1, \"Natural\"), Natural$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [];\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length;\n\t\tif (n) if (this._line ? this._context.lineTo(e[0], t[0]) : this._context.moveTo(e[0], t[0]), n === 2) this._context.lineTo(e[1], t[1]);\n\t\telse for (var r = controlPoints$1(e), i = controlPoints$1(t), a = 0, o = 1; o < n; ++a, ++o) this._context.bezierCurveTo(r[0][a], i[0][a], r[1][a], i[1][a], e[o], t[o]);\n\t\t(this._line || this._line !== 0 && n === 1) && this._context.closePath(), this._line = 1 - this._line, this._x = this._y = null;\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nfunction controlPoints$1(e) {\n\tvar t, n = e.length - 1, r, i = Array(n), a = Array(n), o = Array(n);\n\tfor (i[0] = 0, a[0] = 2, o[0] = e[0] + 2 * e[1], t = 1; t < n - 1; ++t) i[t] = 1, a[t] = 4, o[t] = 4 * e[t] + 2 * e[t + 1];\n\tfor (i[n - 1] = 2, a[n - 1] = 7, o[n - 1] = 8 * e[n - 1] + e[n], t = 1; t < n; ++t) r = i[t] / a[t - 1], a[t] -= r, o[t] -= r * o[t - 1];\n\tfor (i[n - 1] = o[n - 1] / a[n - 1], t = n - 2; t >= 0; --t) i[t] = (o[t] - i[t + 1]) / a[t];\n\tfor (a[n - 1] = (e[n] + i[n - 1]) / 2, t = 0; t < n - 1; ++t) a[t] = 2 * e[t + 1] - i[t + 1];\n\treturn [i, a];\n}\n__name(natural_default, \"default\"), __name(controlPoints$1, \"controlPoints\");\nfunction natural_default(e) {\n\treturn new Natural$1(e);\n}\n//#endregion\n//#region ../../node_modules/d3-shape/src/curve/step.js\nfunction Step$2(e, t) {\n\tthis._context = e, this._t = t;\n}\n__name(Step$2, \"Step\"), Step$2.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = this._y = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t0 < this._t && this._t < 1 && this._point === 2 && this._context.lineTo(this._x, this._y), (this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line >= 0 && (this._t = 1 - this._t, this._line = 1 - this._line);\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tif (this._t <= 0) this._context.lineTo(this._x, t), this._context.lineTo(e, t);\n\t\t\t\telse {\n\t\t\t\t\tvar n = this._x * (1 - this._t) + e * this._t;\n\t\t\t\t\tthis._context.lineTo(n, this._y), this._context.lineTo(n, t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x = e, this._y = t;\n\t}\n}, __name(step_default, \"default\");\nfunction step_default(e) {\n\treturn new Step$2(e, .5);\n}\nfunction stepBefore(e) {\n\treturn new Step$2(e, 0);\n}\nfunction stepAfter(e) {\n\treturn new Step$2(e, 1);\n}\n//#endregion\n//#region ../../node_modules/d3-axis/src/array.js\nvar we = Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-axis/src/identity.js\nfunction identity_default$1(e) {\n\treturn e;\n}\n__name(identity_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-axis/src/axis.js\nvar Te = 1, Ee = 2, De = 3, Oe = 4, ke = 1e-6;\nfunction translateX(e) {\n\treturn \"translate(\" + (e + .5) + \",0)\";\n}\nfunction translateY(e) {\n\treturn \"translate(0,\" + (e + .5) + \")\";\n}\nfunction number(e) {\n\treturn function(t) {\n\t\treturn +e(t);\n\t};\n}\nfunction center(e) {\n\tvar t = Math.max(0, e.bandwidth() - 1) / 2;\n\treturn e.round() && (t = Math.round(t)), function(n) {\n\t\treturn +e(n) + t;\n\t};\n}\nfunction entering() {\n\treturn !this.__axis;\n}\nfunction axis(e, t) {\n\tvar n = [], r = null, i = null, a = 6, o = 6, s = 3, c = e === Te || e === Oe ? -1 : 1, l = e === Oe || e === Ee ? \"x\" : \"y\", u = e === Te || e === De ? translateX : translateY;\n\tfunction axis(d) {\n\t\tvar f = r ?? (t.ticks ? t.ticks.apply(t, n) : t.domain()), p = i ?? (t.tickFormat ? t.tickFormat.apply(t, n) : identity_default$1), m = Math.max(a, 0) + s, h = t.range(), g = +h[0] + .5, _ = +h[h.length - 1] + .5, v = (t.bandwidth ? center : number)(t.copy()), b = d.selection ? d.selection() : d, S = b.selectAll(\".domain\").data([null]), C = b.selectAll(\".tick\").data(f, t).order(), w = C.exit(), T = C.enter().append(\"g\").attr(\"class\", \"tick\"), E = C.select(\"line\"), D = C.select(\"text\");\n\t\tS = S.merge(S.enter().insert(\"path\", \".tick\").attr(\"class\", \"domain\").attr(\"stroke\", \"currentColor\")), C = C.merge(T), E = E.merge(T.append(\"line\").attr(\"stroke\", \"currentColor\").attr(l + \"2\", c * a)), D = D.merge(T.append(\"text\").attr(\"fill\", \"currentColor\").attr(l, c * m).attr(\"dy\", e === Te ? \"0em\" : e === De ? \"0.71em\" : \"0.32em\")), d !== b && (S = S.transition(d), C = C.transition(d), E = E.transition(d), D = D.transition(d), w = w.transition(d).attr(\"opacity\", ke).attr(\"transform\", function(e) {\n\t\t\treturn isFinite(e = v(e)) ? u(e) : this.getAttribute(\"transform\");\n\t\t}), T.attr(\"opacity\", ke).attr(\"transform\", function(e) {\n\t\t\tvar t = this.parentNode.__axis;\n\t\t\treturn u(t && isFinite(t = t(e)) ? t : v(e));\n\t\t})), w.remove(), S.attr(\"d\", e === Oe || e == Ee ? o ? \"M\" + c * o + \",\" + g + \"H0.5V\" + _ + \"H\" + c * o : \"M0.5,\" + g + \"V\" + _ : o ? \"M\" + g + \",\" + c * o + \"V0.5H\" + _ + \"V\" + c * o : \"M\" + g + \",0.5H\" + _), C.attr(\"opacity\", 1).attr(\"transform\", function(e) {\n\t\t\treturn u(v(e));\n\t\t}), E.attr(l + \"2\", c * a), D.attr(l, c * m).text(p), b.filter(entering).attr(\"fill\", \"none\").attr(\"font-size\", 10).attr(\"font-family\", \"sans-serif\").attr(\"text-anchor\", e === Ee ? \"start\" : e === Oe ? \"end\" : \"middle\"), b.each(function() {\n\t\t\tthis.__axis = v;\n\t\t});\n\t}\n\treturn axis.scale = function(e) {\n\t\treturn arguments.length ? (t = e, axis) : t;\n\t}, axis.ticks = function() {\n\t\treturn n = we.call(arguments), axis;\n\t}, axis.tickArguments = function(e) {\n\t\treturn arguments.length ? (n = e == null ? [] : we.call(e), axis) : n.slice();\n\t}, axis.tickValues = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : we.call(e), axis) : r && r.slice();\n\t}, axis.tickFormat = function(e) {\n\t\treturn arguments.length ? (i = e, axis) : i;\n\t}, axis.tickSize = function(e) {\n\t\treturn arguments.length ? (a = o = +e, axis) : a;\n\t}, axis.tickSizeInner = function(e) {\n\t\treturn arguments.length ? (a = +e, axis) : a;\n\t}, axis.tickSizeOuter = function(e) {\n\t\treturn arguments.length ? (o = +e, axis) : o;\n\t}, axis.tickPadding = function(e) {\n\t\treturn arguments.length ? (s = +e, axis) : s;\n\t}, axis;\n}\nfunction axisTop(e) {\n\treturn axis(Te, e);\n}\nfunction axisRight(e) {\n\treturn axis(Ee, e);\n}\nfunction axisBottom(e) {\n\treturn axis(De, e);\n}\nfunction axisLeft(e) {\n\treturn axis(Oe, e);\n}\n//#endregion\n//#region src/Axis.ts\nvar Axis = class extends l {\n\t_origType;\n\t_origTimePattern;\n\tparser;\n\tparserInvert;\n\tformatter;\n\td3Scale;\n\td3Axis;\n\td3Guides;\n\t_guideElement;\n\tsvg;\n\tsvgAxis;\n\tsvgGuides;\n\t_tickFormatFunc;\n\tconstructor(e = \"origin\") {\n\t\tsuper(), this._drawStartPos = e, this.updateScale();\n\t}\n\tlowValue() {\n\t\treturn this.parse(this.low());\n\t}\n\thighValue() {\n\t\treturn this.parse(this.high());\n\t}\n\tparse(e, t) {\n\t\tif (e instanceof Array) return e.map(function(e) {\n\t\t\treturn this.parse(e);\n\t\t}, this);\n\t\tif (e != null) {\n\t\t\tif (this.parser) return this.parser(typeof e == \"number\" ? e.toString() : e);\n\t\t\tif (t && typeof e == \"string\") return +e;\n\t\t}\n\t\treturn e;\n\t}\n\tparseInvert(e) {\n\t\treturn e instanceof Array ? e.map(function(e) {\n\t\t\treturn this.parseInvert(e);\n\t\t}, this) : this.parserInvert && e ? this.parserInvert(e) : e;\n\t}\n\tformat(e) {\n\t\treturn e instanceof Array ? e.map(function(e) {\n\t\t\treturn this.format(e);\n\t\t}, this) : e != null && this.formatter ? this.formatter(e) : e;\n\t}\n\tparseFormat(e) {\n\t\treturn this.format(this.parse(e));\n\t}\n\ttickFormatFunc(e) {\n\t\treturn arguments.length ? (this._tickFormatFunc = e, this.updateScale(), this) : this._tickFormatFunc;\n\t}\n\tscalePos(e) {\n\t\tlet t = this.d3Scale(this.parse(e));\n\t\treturn this.type() === \"ordinal\" && (t += this.bandwidth() / 2), t;\n\t}\n\tbandwidth() {\n\t\treturn this.d3Scale.bandwidth ? this.d3Scale.bandwidth() : 0;\n\t}\n\tisHorizontal() {\n\t\tswitch (this.orientation()) {\n\t\t\tcase \"left\":\n\t\t\tcase \"right\": return !1;\n\t\t\tdefault:\n\t\t}\n\t\treturn !0;\n\t}\n\tdomain(e) {\n\t\treturn arguments.length ? (this.d3Scale.domain(e), this) : this.d3Scale.domain();\n\t}\n\trange(e) {\n\t\tif (!arguments.length) {\n\t\t\tif (this.d3Scale.rangeRoundBands) return this.d3Scale.rangeExtent();\n\t\t\tif (this.d3Scale.rangeRound) return this.d3Scale.range();\n\t\t}\n\t\treturn this.d3Scale.rangeRoundBands ? this.d3Scale.rangeRoundBands(e, .1) : this.d3Scale.rangeRound && this.d3Scale.range(e), this;\n\t}\n\tinvert(e) {\n\t\treturn this.d3Scale.invert(e);\n\t}\n\tguideTarget(e) {\n\t\treturn this._guideElement = z(e).attr(\"class\", this._class), this;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this.svg = t.append(\"g\"), this.svgAxis = this.svg.append(\"g\").attr(\"class\", \"axis\"), this.svgGuides = (this._guideElement || t).append(\"g\").attr(\"class\", \"guide\");\n\t}\n\t_prevOrientation;\n\tupdateScale() {\n\t\tswitch (this.type()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\tif (this.d3Scale = N().paddingInner(this.ordinalPaddingInner()).paddingOuter(this.ordinalPaddingOuter()), this.ordinals_exists() && this.d3Scale.domain(this.ordinals()), this.parser = null, this.ordinalMappings_exists()) {\n\t\t\t\t\tlet e = this.ordinalMappings();\n\t\t\t\t\tthis.formatter = (t) => e[t] || t;\n\t\t\t\t} else this.formatter = null;\n\t\t\t\tbreak;\n\t\t\tcase \"linear\":\n\t\t\t\tthis.d3Scale = P(), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"pow\":\n\t\t\t\tthis.d3Scale = I().exponent(this.powExponent()), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"log\":\n\t\t\t\tthis.d3Scale = F().base(this.logBase()), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = null, this.formatter = this.tickFormat_exists() ? w(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tcase \"time\":\n\t\t\t\tthis.d3Scale = R(), this.low_exists() && this.high_exists() && this.d3Scale.domain([this.lowValue(), this.highValue()]), this.parser = this.timePattern_exists() ? te(this.timePattern()) : null, this.parserInvert = this.timePattern_exists() ? V(this.timePattern()) : null, this._tickFormatFunc ? this.formatter = this._tickFormatFunc : this.formatter = this.tickFormat_exists() ? V(this.tickFormat()) : null;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tif (this._prevOrientation !== this.orientation()) {\n\t\t\tswitch (this.orientation()) {\n\t\t\t\tcase \"left\":\n\t\t\t\t\tthis.d3Axis = axisLeft(this.d3Scale), this.d3Guides = axisLeft(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"top\":\n\t\t\t\t\tthis.d3Axis = axisTop(this.d3Scale), this.d3Guides = axisTop(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"right\":\n\t\t\t\t\tthis.d3Axis = axisRight(this.d3Scale), this.d3Guides = axisRight(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.d3Axis = axisBottom(this.d3Scale), this.d3Guides = axisBottom(this.d3Scale);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._prevOrientation = this.orientation(), this.svgAxis && this.svgAxis.html(\"\"), this.svgGuides && this.svgGuides.html(\"\");\n\t\t}\n\t\tif (this.extend()) switch (this.type()) {\n\t\t\tcase \"ordinal\": break;\n\t\t\tdefault:\n\t\t\t\tlet e, t, n, r, i, a;\n\t\t\t\tthis.isHorizontal() ? (e = this.width(), this.d3Scale.range([0, e]), t = e * this.extend() / 100, n = this.d3Scale.invert(0), i = this.d3Scale.invert(-t), r = this.d3Scale.invert(e), a = this.d3Scale.invert(e + t)) : (e = this.height(), this.d3Scale.range([e, 0]), t = e * this.extend() / 100, n = this.d3Scale.invert(e), i = this.d3Scale.invert(e + t), r = this.d3Scale.invert(0), a = this.d3Scale.invert(-t)), i === n && (i = n - n * this.extend() / 100), a === r && (a = r + r * this.extend() / 100), Math.sign(n) !== Math.sign(i) && (i = 0), Math.sign(r) !== Math.sign(a) && (a = 0), this.d3Scale.domain([i, a]);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.d3Axis.scale(this.d3Scale).tickFormat(this.formatter).ticks(this.tickCount()), this.d3Guides.scale(this.d3Scale).tickSize(this.tickLength_exists() ? -this.tickLength() : 0).tickFormat(\"\").ticks(this.tickCount());\n\t\tlet e = this.ticks();\n\t\treturn e.length && (this.d3Axis.tickValues(e.map((e) => this.parse(e.value))).tickFormat((t, n) => e[n].label), this.d3Guides.tickValues(e.map((e) => this.parse(e.value)))), this;\n\t}\n\tadjustText(e, t) {\n\t\tlet n = this.isHorizontal(), r = this.orientation() === \"left\", i = this.orientation() === \"bottom\", a = this, o = e.selectAll(\".tick > text\").style(\"font-family\", this.fontFamily()).style(\"font-size\", this.fontSize_exists() ? this.fontSize() + \"px\" : null);\n\t\tif (this.overlapMode() === \"linebreak\") this.type() === \"ordinal\" && o.call(function() {\n\t\t\treturn a.linebreak.apply(a, arguments);\n\t\t}, this.bandwidth());\n\t\telse if (this.overlapMode() === \"wrap\") this.type() === \"ordinal\" && o.call(function() {\n\t\t\treturn a.wrap.apply(a, arguments);\n\t\t}, this.bandwidth());\n\t\telse switch (n ? this.overlapMode() : \"none\") {\n\t\t\tcase \"stagger\":\n\t\t\t\to.style(\"text-anchor\", \"middle\").attr(\"dy\", function(e, n) {\n\t\t\t\t\treturn (i ? 1 : -1) * ((i ? .71 : 0) + n % t) + \"em\";\n\t\t\t\t}).attr(\"dx\", 0).attr(\"visibility\", null).attr(\"transform\", \"rotate(0)\");\n\t\t\t\tbreak;\n\t\t\tcase \"hide\":\n\t\t\t\to.style(\"text-anchor\", \"middle\").attr(\"dy\", (i ? .71 : 0) + \"em\").attr(\"dx\", 0).attr(\"visibility\", function(e, n) {\n\t\t\t\t\treturn n % t ? \"hidden\" : null;\n\t\t\t\t}).attr(\"transform\", \"rotate(0)\");\n\t\t\t\tbreak;\n\t\t\tcase \"rotate\":\n\t\t\t\tlet e = -this.labelRotation() || 0;\n\t\t\t\tif (e !== 0 && t > 1) {\n\t\t\t\t\to.each(function() {\n\t\t\t\t\t\tlet t = z(this), n = t.node().getBBox(), r = (i ? 1 : -1) * Math.sin(Math.PI * (-Math.abs(e) / 180));\n\t\t\t\t\t\tt.style(\"text-anchor\", e > 0 ? i ? \"start\" : \"end\" : i ? \"end\" : \"start\").attr(\"dy\", n.height / 2 * r + \"px\").attr(\"dx\", e > 0 ? i ? \"0.71em\" : \"-0.71em\" : i ? \"-0.71em\" : \"0.71em\").attr(\"transform\", \"rotate(\" + e + \")\").attr(\"visibility\", null);\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\tdefault: o.style(\"text-anchor\", n ? \"middle\" : r ? \"end\" : \"start\").attr(\"dy\", n ? (i ? .71 : 0) + \"em\" : \"0.32em\").attr(\"dx\", 0).attr(\"visibility\", null).attr(\"transform\", \"rotate(0)\");\n\t\t}\n\t}\n\tcalcTickOverlapModulus(e) {\n\t\tlet t = 1;\n\t\tswitch (this.overlapMode()) {\n\t\t\tcase \"rotate\":\n\t\t\tcase \"stagger\":\n\t\t\tcase \"hide\":\n\t\t\t\tlet n = [];\n\t\t\t\te.selectAll(\".tick > text\").each(function() {\n\t\t\t\t\tlet e = this.getBoundingClientRect();\n\t\t\t\t\tfor (let r = n.length - 1; r >= 0 && !(n[r].right < e.left); --r) n.length + 1 - r > t && (t = n.length + 1 - r);\n\t\t\t\t\tn.push(e);\n\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\treturn t;\n\t}\n\tcalcOverflow(e, t) {\n\t\tif (this.updateScale(), this.hidden()) return {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tdepth: 0,\n\t\t\ttickOverlapModulus: 1\n\t\t};\n\t\tlet n = this.isHorizontal();\n\t\tthis.range(n ? [0, this.width()] : [this.height(), 0]);\n\t\tlet r = e.append(\"g\").attr(\"class\", this.classID()), i = r.append(\"g\");\n\t\ti.attr(\"class\", n ? \"x\" : \"y\").call(this.d3Axis), t && e.selectAll(\".tick > text\").remove();\n\t\tlet a = {\n\t\t\tleft: 0,\n\t\t\ttop: 0,\n\t\t\tright: 0,\n\t\t\tbottom: 0,\n\t\t\tdepth: 0,\n\t\t\ttickOverlapModulus: this.calcTickOverlapModulus(i)\n\t\t};\n\t\tthis.adjustText(i, a.tickOverlapModulus);\n\t\tlet o = i.node().getBBox();\n\t\tswitch (a.depth = n ? o.height : o.width, this.shrinkToFit()) {\n\t\t\tcase \"low\":\n\t\t\tcase \"both\":\n\t\t\t\ta.left = n ? -o.x : 0, a.bottom = n ? 0 : -(this.height() - (o.height + o.y));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tswitch (this.shrinkToFit()) {\n\t\t\tcase \"high\":\n\t\t\tcase \"both\":\n\t\t\t\ta.top = n ? 0 : -o.y, a.right = n ? -(this.width() - o.x - o.width) : 0;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\treturn r.remove(), a;\n\t}\n\twrap(e, t, n) {\n\t\tn ||= /\\s+/;\n\t\tlet r = this;\n\t\te.each(function() {\n\t\t\tlet e = z(this), i = e.text().split(n).reverse(), a = [], o = 0, s = 1.1, c = e.attr(\"x\"), l = e.attr(\"y\"), u = parseFloat(e.style(\"font-size\")) || 10, d = Math.floor(t / (u * s)) - 1, f = r.isHorizontal() ? 1 : Math.ceil(i.length / d), p = parseFloat(e.attr(\"dy\")), m = e.text(null).append(\"tspan\").attr(\"x\", c).attr(\"y\", l).attr(\"dy\", p + \"em\"), h = 0, g = i.pop();\n\t\t\tfor (; g;) a.push(g), m.text(a.join(\" \")), h++, m.node().getComputedTextLength() > t && h >= f && (a.pop(), m.text(a.join(\" \")), a = [g], m = e.append(\"tspan\").attr(\"x\", c).attr(\"y\", l).attr(\"dy\", ++o * s + p + \"em\").text(g), h = 0), g = i.pop();\n\t\t\tr.isHorizontal() || e.selectAll(\"tspan\").attr(\"y\", -o / 2 + \"em\");\n\t\t});\n\t}\n\tlinebreak(e, t) {\n\t\tthis.wrap(e, t, \"\\n\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this.svg.style(\"display\", this.hidden() ? \"none\" : null);\n\t\tlet n = this.calcOverflow(t), r = this.isHorizontal() ? n.left : this.height() - n.top - n.bottom, i = this.isHorizontal() ? this.width() - n.right - this.padding() : 0 + this.padding();\n\t\tthis.range(this.reverse() ? [i, r] : [r, i]);\n\t\tlet a = this;\n\t\tfunction doPosition(e) {\n\t\t\te.attr(\"transform\", function() {\n\t\t\t\tswitch (a.orientation()) {\n\t\t\t\t\tcase \"left\": return \"translate(\" + n.depth + \", \" + n.top + \")\";\n\t\t\t\t\tcase \"top\": return \"translate(0,\" + n.depth + \")\";\n\t\t\t\t\tcase \"right\": return \"translate(\" + (a.width() - n.depth) + \", \" + n.top + \")\";\n\t\t\t\t\tcase \"bottom\": return \"translate(0,\" + (a.height() - n.depth) + \")\";\n\t\t\t\t\tdefault:\n\t\t\t\t}\n\t\t\t\treturn \"translate(0,0)\";\n\t\t\t});\n\t\t}\n\t\tthis.svg.style(\"visibility\", this.type() === \"none\" ? \"hidden\" : null).transition().call(doPosition), this._guideElement && this.svgGuides.transition().call(doPosition), this.svgAxis.call(this.d3Axis), this.adjustText(this.svgAxis, n.tickOverlapModulus);\n\t\tlet o = {\n\t\t\tx: this.pos().x,\n\t\t\twidth: this.width()\n\t\t}, s = this.svgAxis.selectAll(\".axisTitle\").data(this.title() ? [this.title()] : []), c = s.enter().append(\"text\").attr(\"class\", \"axisTitle\").merge(s).transition().attr(\"dx\", null).style(\"text-anchor\", \"end\");\n\t\tswitch (this.orientation()) {\n\t\t\tcase \"left\":\n\t\t\t\tc.attr(\"transform\", \"rotate(-90)\").attr(\"x\", -2).attr(\"y\", 2).attr(\"dy\", \".71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"right\":\n\t\t\t\tc.attr(\"transform\", \"rotate(-90)\").attr(\"x\", -2).attr(\"y\", 4).attr(\"dx\", null).attr(\"dy\", \"-.71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"top\":\n\t\t\t\tc.attr(\"transform\", \"rotate(0)\").attr(\"x\", o.width - 2).attr(\"y\", 2).attr(\"dx\", null).attr(\"dy\", \".71em\");\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tc.attr(\"transform\", \"rotate(0)\").attr(\"x\", o.width - 2).attr(\"y\", -2).attr(\"dy\", null);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tc.text(this.title_exists() ? this.title() : \"\"), s.exit().remove(), this.svgGuides.call(this.d3Guides).selectAll(\".tick\").classed(\"guide-0\", (e) => e === 0 && this.low() < 0);\n\t}\n\trerender() {\n\t\tthis.svgAxis.call(this.d3Axis), this.svgGuides.call(this.d3Guides);\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t), this._guideElement && this._guideElement.attr(\"transform\", this._element.attr(\"transform\"));\n\t}\n};\nAxis.prototype._class += \" chart_Axis\", Axis.prototype.publish(\"type\", \"linear\", \"set\", \"Type\", [\n\t\"none\",\n\t\"ordinal\",\n\t\"linear\",\n\t\"pow\",\n\t\"log\",\n\t\"time\"\n]), Axis.prototype.publish(\"timePattern\", \"%Y-%m-%d\", \"string\", \"Time Series Pattern\", null, { disable: (e) => e.type() !== \"time\" }), Axis.prototype.publish(\"reverse\", !1, \"boolean\", \"Reverse\"), Axis.prototype.publish(\"title\", null, \"string\", \"Title\"), Axis.prototype.publish(\"orientation\", \"bottom\", \"set\", \"Placement/orientation of the axis\", [\n\t\"left\",\n\t\"top\",\n\t\"right\",\n\t\"bottom\"\n]), Axis.prototype.publish(\"powExponent\", 2, \"number\", \"Power exponent (disabled when type is not 'pow')\", null, { disable: (e) => e.type() !== \"pow\" }), Axis.prototype.publish(\"logBase\", 10, \"number\", \"Logarithmic base (disabled when type is not 'log')\", null, { disable: (e) => e.type() !== \"log\" }), Axis.prototype.publish(\"ordinals\", [], \"array\", \"Array of ordinal values to display (disabled when type is not 'ordinal')\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"fontSize\", null, \"number\", \"Size of tick label font (pixels)\", null, { optional: !0 }), Axis.prototype.publish(\"fontFamily\", null, \"string\", \"Font family of tick labels\", null, { optional: !0 }), Axis.prototype.publish(\"tickCount\", null, \"number\", \"Number of ticks to display (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"tickFormat\", null, \"string\", \"Format rules for tick text (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"tickLength\", null, \"number\", \"Height (or width for left/right orientations) of the axis ticks (in pixels)\", null, { optional: !0 }), Axis.prototype.publish(\"ticks\", [], \"array\", \"Custom tick labels\", null, { optional: !0 }), Axis.prototype.publish(\"low\", null, \"any\", \"Minimum tick value (disabled when type is ordinal)\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"high\", null, \"any\", \"Maximum tick value (disabled when type is ordinal)\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"overlapMode\", \"none\", \"set\", \"Specifies the behavior when tick labels overlap\", [\n\t\"none\",\n\t\"stagger\",\n\t\"hide\",\n\t\"rotate\",\n\t\"linebreak\",\n\t\"wrap\"\n]), Axis.prototype.publish(\"labelRotation\", 33, \"number\", \"Angle of rotation for tick labels (disabled when overlapMode is not 'rotate')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.overlapMode() !== \"rotate\"\n}), Axis.prototype.publish(\"shrinkToFit\", \"both\", \"set\", \"shrinkToFit\", [\n\t\"none\",\n\t\"low\",\n\t\"high\",\n\t\"both\"\n]), Axis.prototype.publish(\"extend\", 5, \"number\", \"Extend the axis range by this % beyond what is needed to display the data (disabled when type is 'ordinal')\", null, {\n\toptional: !0,\n\tdisable: (e) => e.type() === \"ordinal\"\n}), Axis.prototype.publish(\"hidden\", !1, \"boolean\", \"Hides axis when 'true'\"), Axis.prototype.publish(\"ordinalPaddingInner\", .1, \"number\", \"Determines the ratio of the range that is reserved for blank space between band (0->1)\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"ordinalPaddingOuter\", .1, \"number\", \"Determines the ratio of the range that is reserved for blank space before the first band and after the last band (0->1)\", null, { disable: (e) => e.type() !== \"ordinal\" }), Axis.prototype.publish(\"ordinalMappings\", null, \"object\", \"Alternative label mappings (icons)\", null, { optional: !0 }), Axis.prototype.publish(\"padding\", 0, \"number\", \"Padding space at top of axis (pixels)\", null, { optional: !0 }), Axis.prototype._origType = Axis.prototype.type, Axis.prototype.type = function(e) {\n\tlet t = Axis.prototype._origType.apply(this, arguments);\n\treturn e !== void 0 && (this._type = e, this.updateScale()), t;\n}, Axis.prototype._origTimePattern = Axis.prototype.timePattern, Axis.prototype.timePattern = function(e) {\n\tlet t = Axis.prototype._origTimePattern.apply(this, arguments);\n\treturn e !== void 0 && (this._timePattern = e, this.updateScale()), t;\n};\n//#endregion\n//#region src/XYAxis.ts\nvar XYAxis = class extends l {\n\tdomainAxis;\n\tvalueAxis;\n\txAxis;\n\tyAxis;\n\txyBrush;\n\txBrush;\n\tyBrush;\n\tmargin;\n\tfocusChart;\n\tconstructor() {\n\t\tsuper(), d.SimpleSelectionMixin.call(this), this._drawStartPos = \"origin\", this.domainAxis = new Axis().classed({ domain: !0 }).orientation_default(\"bottom\").type(\"ordinal\").overlapMode_default(\"stagger\").shrinkToFit_default(\"high\").extend_default(0), this.valueAxis = new Axis().classed({ value: !0 }).orientation_default(\"left\").type(\"linear\").shrinkToFit_default(\"high\"), this.xyBrush = f().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2()), this.xBrush = m().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2()), this.yBrush = h().on(\"end\", () => this.brushMoved()).on(\"start.handle brush.handle end.handle\", () => this.brushMoved2());\n\t}\n\t_prevBrush;\n\tresetSelection() {\n\t\treturn this._prevBrush = null, this;\n\t}\n\tparseData(e) {\n\t\treturn this.domainAxis.parse(e);\n\t}\n\tparseValue(e) {\n\t\treturn this.valueAxis.parse(e, !0);\n\t}\n\tformatData(e) {\n\t\treturn this.domainAxis.format(e);\n\t}\n\tformatValue(e) {\n\t\treturn this.valueAxis.format(e);\n\t}\n\tparsedData() {\n\t\treturn this.data().map(function(e) {\n\t\t\tlet t = 0;\n\t\t\treturn e.map(function(e, n) {\n\t\t\t\tif (n === 0) return this.parseData(e);\n\t\t\t\tif (n >= this.columns().length) return e;\n\t\t\t\tlet r = this.yAxisStacked() ? [t, t + this.parseValue(e)] : this.parseValue(e);\n\t\t\t\treturn t += this.parseValue(e), r;\n\t\t\t}, this);\n\t\t}, this);\n\t}\n\tbandwidth() {\n\t\treturn this.domainAxis.bandwidth();\n\t}\n\tsvg;\n\tsvgRegions;\n\tsvgDomainGuide;\n\tsvgValueGuide;\n\tsvgData;\n\tsvgDataClipRect;\n\tsvgFocus;\n\tsvgBrush;\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this.svg = t.append(\"g\"), this.svgRegions = t.append(\"g\"), this.svgDomainGuide = this.svg.append(\"g\"), this.svgValueGuide = this.svg.append(\"g\"), this.svgData = this.svg.append(\"g\"), this.svgDataClipRect = this.svg.append(\"clipPath\").attr(\"id\", this.id() + \"_clippath\").append(\"rect\").attr(\"x\", 0).attr(\"y\", 0), this.svgData = this.svg.append(\"g\").attr(\"clip-path\", \"url(#\" + this.id() + \"_clippath)\"), this._selection.widgetElement(this.svgData), this.svgFocus = t.append(\"g\"), this.domainAxis.target(this.svg.node()).guideTarget(this.svgDomainGuide.node()), this.valueAxis.target(this.svg.node()).guideTarget(this.svgValueGuide.node()), this.svgBrush = t.append(\"g\").attr(\"class\", \"brush\"), this.chartsEnter(this, this.svgData, 250);\n\t}\n\tresizeBrushHandle(e, t, n) {\n\t\tlet r, i, a;\n\t\treturn e.type === \"e\" || e.type === \"w\" ? (r = +(e.type === \"e\"), i = r ? 1 : -1, a = n / 3, \"M\" + .5 * i + \",\" + a + \"A6,6 0 0 \" + r + \" \" + 6.5 * i + \",\" + (a + 6) + \"V\" + (2 * a - 6) + \"A6,6 0 0 \" + r + \" \" + .5 * i + \",\" + 2 * a + \"ZM\" + 2.5 * i + \",\" + (a + 8) + \"V\" + (2 * a - 8) + \"M\" + 4.5 * i + \",\" + (a + 8) + \"V\" + (2 * a - 8)) : (r = +(e.type === \"s\"), a = r ? 1 : -1, i = t / 3, \"M\" + i + \", \" + .5 * a + \"A6,6 0 0 \" + (r + 1) % 2 + \" \" + (i + 6) + \",\" + 6.5 * a + \"H\" + (2 * i - 6) + \"A6,6 0 0 \" + (r + 1) % 2 + \" \" + 2 * i + \",\" + .5 * a + \"ZM\" + (i + 8) + \",\" + 2.5 * a + \"H\" + (2 * i - 8) + \"M\" + (i + 8) + \",\" + 4.5 * a + \"H\" + (2 * i - 8));\n\t}\n\t_skipSelection = !1;\n\tskipSelection(e) {\n\t\treturn arguments.length ? (this._skipSelection = e, this) : this._skipSelection;\n\t}\n\tbrushMoved() {\n\t\tif (this._skipSelection) return;\n\t\tlet e = [], t = this, n = p(this.svgBrush.node());\n\t\tn && (e = this.data().filter(function(e) {\n\t\t\tlet r = t.dataPos(e[0]);\n\t\t\tif (t.use2dSelection()) {\n\t\t\t\tlet i = t.valuePos(e[1]) + t.valueAxis.bandwidth() / 2;\n\t\t\t\treturn r >= n[0][0] && r <= n[1][0] && i >= n[0][1] && i <= n[1][1];\n\t\t\t} else return r >= n[0] && r <= n[1];\n\t\t})), this.selection(e);\n\t}\n\tbrushMoved2() {\n\t\tlet e = this.orientation() === \"horizontal\", t = this.use2dSelection() ? [] : e ? [{ type: \"w\" }, { type: \"e\" }] : [{ type: \"n\" }, { type: \"s\" }], n = this.svgBrush.selectAll(\".handle--custom\").data(t), r = g()?.selection;\n\t\tr == null ? n.attr(\"display\", \"none\") : e ? n.attr(\"display\", null).attr(\"transform\", (e, t) => \"translate(\" + r[t] + \",0)\") : n.attr(\"display\", null).attr(\"transform\", (e, t) => \"translate(0, \" + r[t] + \")\");\n\t}\n\tdataPos(e) {\n\t\treturn this.domainAxis.scalePos(e);\n\t}\n\tvaluePos(e) {\n\t\treturn this.valueAxis.scalePos(e);\n\t}\n\tgetAxisSize(e) {\n\t\treturn {\n\t\t\twidth: this.xAxis ? this.xAxis.width() : e.xAxis.width(),\n\t\t\theight: this.yAxis ? this.yAxis.height() : e.yAxis.width()\n\t\t};\n\t}\n\tcalcMargin(e, t, n) {\n\t\tlet r = {\n\t\t\ttop: !n && this.selectionMode() ? 10 : 2,\n\t\t\tright: n && (this.selectionMode() || this.xAxisFocus()) ? 10 : 2,\n\t\t\tbottom: (this.xAxisFocus() ? this.xAxisFocusHeight() : 0) + 2,\n\t\t\tleft: 2\n\t\t}, i = this.width() - r.left - r.right, a = this.height() - r.top - r.bottom, o = 0, s = 30, c = 0, l = 30;\n\t\tfor (let e = 0; e < 10; ++e) {\n\t\t\tthis.xAxis.width(i - l).height(0);\n\t\t\tlet e = this.xAxis.calcOverflow(t), n = e.depth;\n\t\t\tthis.yAxis.width(0).height(a - s);\n\t\t\tlet r = this.yAxis.calcOverflow(t), u = r.depth;\n\t\t\tif (o = e.right, c = r.top, n === s && u === l) break;\n\t\t\ts = n, l = u;\n\t\t}\n\t\treturn this.xAxis.x(i / 2 + l / 2 + r.left).y(a + r.top).width(i - l), this.yAxis.x(r.left).y(a / 2 - s / 2 + r.top).height(a - s), r.left += l, r.top += c, r.right += o, r.bottom += s, r;\n\t}\n\tupdateRegions(e, t, n) {\n\t\tlet r = this, i = this.svgRegions.selectAll(\".region\").data(this.regions());\n\t\ti.enter().append(\"rect\").attr(\"class\", \"region\"), n ? i.attr(\"x\", function(e) {\n\t\t\treturn r.dataPos(e.x0);\n\t\t}).attr(\"y\", 0).attr(\"width\", function(e) {\n\t\t\treturn r.dataPos(e.x1) - r.dataPos(e.x0);\n\t\t}).attr(\"height\", this.height()).style(\"stroke\", function(e) {\n\t\t\treturn r._palette(e.colorID);\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn T(r._palette(e.colorID)).brighter();\n\t\t}) : i.attr(\"x\", 0).attr(\"y\", function(e) {\n\t\t\treturn r.dataPos(e.x0);\n\t\t}).attr(\"width\", this.width()).attr(\"height\", function(e) {\n\t\t\treturn r.dataPos(e.x0) - r.dataPos(e.x1);\n\t\t}).style(\"stroke\", function(e) {\n\t\t\treturn r._palette(e.colorID);\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn T(r._palette(e.colorID)).brighter();\n\t\t}), i.exit().remove();\n\t}\n\t_prevXAxisType;\n\tupdate(e, t) {\n\t\tthis.selectionGlow(!this.tabNavigation()), super.update(e, t);\n\t\tlet n = this, r = this.orientation() === \"horizontal\";\n\t\tswitch (this.updateRegions(e, t, r), this.domainAxis.orientation(r ? \"bottom\" : \"left\").title(this.xAxisTitle_exists() ? this.xAxisTitle() : this.columns()[0]), this.valueAxis.orientation(r ? \"left\" : \"bottom\"), this.xAxis = r ? this.domainAxis : this.valueAxis, this.yAxis = r ? this.valueAxis : this.domainAxis, this.xAxisType()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\tlet e = this.columns().length, t = {};\n\t\t\t\tthis.domainAxis.ordinals(this.data().map(function(r) {\n\t\t\t\t\treturn t[r[0]] = n.xAxisOrdinalMapping(r, r[e]), r[0];\n\t\t\t\t})).ordinalMappings(t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tlet r = this.xAxisDomainLow() ? this.xAxisDomainLow() : this.domainAxis.parseInvert(A(this.parsedData(), function(e) {\n\t\t\t\t\treturn e[0];\n\t\t\t\t})), i = this.xAxisDomainHigh() ? this.xAxisDomainHigh() : this.domainAxis.parseInvert(k(this.parsedData(), function(e) {\n\t\t\t\t\treturn e[0];\n\t\t\t\t}));\n\t\t\t\tr !== void 0 && i !== void 0 && this.domainAxis.low(r).high(i);\n\t\t\t\tbreak;\n\t\t}\n\t\tlet i = this.yAxisDomainLow() ? this.yAxisDomainLow() : this.valueAxis.parseInvert(A(this.parsedData(), function(e) {\n\t\t\treturn A(e.filter(function(e, t) {\n\t\t\t\treturn t > 0 && n.columns()[t] && n.columns()[t].indexOf(\"__\") !== 0 && e !== null;\n\t\t\t}), function(e) {\n\t\t\t\treturn e instanceof Array ? e[0] : e;\n\t\t\t});\n\t\t})), a = this.yAxisDomainHigh() ? this.yAxisDomainHigh() : this.valueAxis.parseInvert(k(this.parsedData(), function(e) {\n\t\t\treturn k(e.filter(function(e, t) {\n\t\t\t\treturn t > 0 && n.columns()[t] && n.columns()[t].indexOf(\"__\") !== 0 && e !== null;\n\t\t\t}), function(e) {\n\t\t\t\treturn e instanceof Array ? e[1] : e;\n\t\t\t});\n\t\t}));\n\t\tthis.valueAxis.low(i).high(a), this.margin = this.calcMargin(e, t, r);\n\t\tlet o = this.width() - this.margin.left - this.margin.right;\n\t\to < 0 && (o = 0);\n\t\tlet s = this.height() - this.margin.top - this.margin.bottom;\n\t\ts < 0 && (s = 0);\n\t\tlet c = r ? o : s, l = r ? s : o;\n\t\tif (this.domainAxis.tickLength(this.xAxisGuideLines() ? l : 0).render(), this.valueAxis.tickLength(this.yAxisGuideLines() ? c : 0).render(), this.svgDataClipRect.attr(\"width\", o).attr(\"height\", s), this.svgData.transition().attr(\"transform\", \"translate(\" + this.margin.left + \",\" + this.margin.top + \")\"), this.updateBrush(o, s, c, r), this.updateFocusChart(e, t, this.margin, o, s, r), this.chartsUpdate(o, s, 250), this.selectionMode()) return this.brushMoved();\n\t}\n\tupdateBrush(e, t, n, r) {\n\t\tlet i = this.use2dSelection() ? this.xyBrush : r ? this.xBrush : this.yBrush, a = p(this.svgBrush.node());\n\t\ti.extent([[0, 0], [e, t]]), this.svgBrush.attr(\"transform\", \"translate(\" + this.margin.left + \", \" + this.margin.top + \")\").style(\"display\", this.selectionMode() ? null : \"none\").call(i);\n\t\tlet o = this.use2dSelection() ? [] : r ? [{ type: \"w\" }, { type: \"e\" }] : [{ type: \"n\" }, { type: \"s\" }], s = this.svgBrush.selectAll(\".handle--custom\").data(o);\n\t\tif (s.enter().append(\"path\").attr(\"class\", \"handle--custom\").merge(s).attr(\"cursor\", r ? \"ew-resize\" : \"ns-resize\").attr(\"d\", (n) => this.resizeBrushHandle(n, e, t)), this.selectionMode()) {\n\t\t\tif (this._prevXAxisType !== this.xAxisType() && (this._prevXAxisType = this.xAxisType(), this._prevBrush = null), this._prevBrush) {\n\t\t\t\tif (a) {\n\t\t\t\t\tif (this._prevBrush.orientation !== this.orientation()) {\n\t\t\t\t\t\tlet e = a[0];\n\t\t\t\t\t\ta[0] = this._prevBrush.maxCurrExtent - a[1], a[1] = this._prevBrush.maxCurrExtent - e;\n\t\t\t\t\t}\n\t\t\t\t\tlet e = n / this._prevBrush.maxCurrExtent;\n\t\t\t\t\te !== 1 && this.svgBrush.transition().on(\"start\", function() {\n\t\t\t\t\t\ti.on(\"end\", null);\n\t\t\t\t\t}).call(i.move, [a[0] * e, a[1] * e]).on(\"end\", () => {\n\t\t\t\t\t\ti.on(\"end\", () => this.brushMoved());\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else this.svgBrush.call(i.move, [0, n]);\n\t\t\tthis._prevBrush = {\n\t\t\t\torientation: this.orientation(),\n\t\t\t\tmaxCurrExtent: n\n\t\t\t};\n\t\t}\n\t}\n\tupdateFocusChart(e, t, n, r, i, a) {\n\t\tlet o = this, s = this.svgFocus.selectAll(\"#\" + this.id() + \"_focusChart\").data(this.xAxisFocus() ? [!0] : []);\n\t\ts.enter().append(\"g\").attr(\"id\", this.id() + \"_focusChart\").attr(\"class\", \"focus\").each(function() {\n\t\t\to.focusChart = new o.constructor().target(this), o.focusChart.xBrush.on(\"brush.focus\", function() {\n\t\t\t\to.syncAxis(r), o.chartsUpdate(r, i, 0);\n\t\t\t}), o.focusChart.layers(o.layers().map((e) => new e.constructor()));\n\t\t}).merge(s).each(function() {\n\t\t\to.copyPropsTo(o.focusChart, [\"layers\"]);\n\t\t\tlet e = 0;\n\t\t\tfor (let t of o.layers()) t.copyPropsTo(o.focusChart.layers()[e]), e++;\n\t\t\to.focusChart.xAxisFocus(!1).selectionMode(!0).skipSelection(!0).orientation(\"horizontal\").xAxisGuideLines(!1).xAxisDomainLow(null).xAxisDomainHigh(null).yAxisGuideLines(!1).x(o.width() / 2).y(o.height() - o.xAxisFocusHeight() / 2).width(o.width()).height(o.xAxisFocusHeight()).columns(o.columns()).data(o.data()).render(), o.syncAxis(r);\n\t\t}), s.exit().each(function() {\n\t\t\to.focusChart && (o.focusChart.target(null), delete o.focusChart);\n\t\t}).remove();\n\t}\n\tsyncAxis(e) {\n\t\tlet t = p(this.focusChart.svgBrush.node());\n\t\tif (t) {\n\t\t\tif (this.focusChart.xAxisType() !== \"ordinal\") this.xAxis.domain([this.focusChart.xAxis.invert(t[0]), this.focusChart.xAxis.invert(t[1])]);\n\t\t\telse {\n\t\t\t\tlet n = (t[1] - t[0]) / e;\n\t\t\t\tthis.xAxis.range([-t[0] / n, (e - t[0]) / n]);\n\t\t\t}\n\t\t\tthis.xAxis.rerender();\n\t\t}\n\t}\n\tlayerColumns(e) {\n\t\tlet t = e.columns(), n = super.columns().filter((e) => e !== t[0]);\n\t\treturn n.length ? [t[0], ...n] : t;\n\t}\n\tlayerColumnIndices(e) {\n\t\tlet t = e.columns();\n\t\treturn this.layerColumns(e).map((e) => t.indexOf(e));\n\t}\n\tlayerColumnIndex(e, t) {\n\t\treturn e.columns().indexOf(t);\n\t}\n\tlayerData(e) {\n\t\tif (arguments.length === 1) {\n\t\t\tlet t = this.layerColumnIndices(e);\n\t\t\treturn e.data().map((e) => {\n\t\t\t\tlet n = t.map((t) => e[t]);\n\t\t\t\treturn n.__hpcc_origRow = e, n;\n\t\t\t});\n\t\t}\n\t\tthrow Error(\"Setting data on XYAxisLayer is not supported.\");\n\t}\n\tlayerEnter(e, t, n = 250) {}\n\tlayerUpdate(e, t, n = 250) {}\n\tlayerExit(e, t, n = 250) {}\n\tchartsEnter(e, t, n = 250) {\n\t\tthis.layerEnter(this, t, n);\n\t\tfor (let e of this.layers()) e.__xyAxisElement = t.append(\"g\").attr(\"class\", e.class()), e.target(e.__xyAxisElement.node()).layerEnter(this, t, n);\n\t}\n\tchartsUpdate(e, t, n) {\n\t\tthis.layerUpdate(this, this.svgData, n);\n\t\tfor (let r of this.layers()) r.resize({\n\t\t\twidth: e,\n\t\t\theight: t\n\t\t}).layerUpdate(this, r.__xyAxisElement, n);\n\t}\n\texit(e, t) {\n\t\tthis.valueAxis.target(null), this.domainAxis.target(null), super.exit(e, t);\n\t}\n\tselection(e) {\n\t\tlet t = this;\n\t\tthis._selection.widgetElement().selectAll(\".selected,.deselected\").each(function(n) {\n\t\t\tlet r = e.indexOf(n.origRow) >= 0;\n\t\t\tz(this).classed(\"selected\", r).classed(\"deselected\", !r).attr(\"filter\", t._selection.svgGlowID() && r ? `url(#${t._selection.svgGlowID()})` : null);\n\t\t});\n\t\tlet n = e.map((e) => this.rowToObj(e));\n\t\tsetTimeout(() => {\n\t\t\tthis.click(n, \"\", !0);\n\t\t}, 0);\n\t}\n\txAxisOrdinalMapping(e, t) {\n\t\treturn e[0];\n\t}\n\tclick(e, t, n) {}\n\t_selection;\n};\nXYAxis.prototype._class += \" chart_XYAxis\", XYAxis.prototype.mixin(d.SimpleSelectionMixin), XYAxis.prototype.publish(\"orientation\", \"horizontal\", \"set\", \"Selects orientation for the axis\", [\"horizontal\", \"vertical\"]), XYAxis.prototype.publish(\"pointSizeColumn\", null, \"string\", \"pointSizeColumn\", null, { optional: !0 }), XYAxis.prototype.publish(\"minPointSize\", 6, \"number\", \"minPointSize\"), XYAxis.prototype.publish(\"maxPointSize\", 26, \"number\", \"maxPointSize\"), XYAxis.prototype.publish(\"use2dSelection\", !1, \"boolean\", \"2D Range Selector\"), XYAxis.prototype.publish(\"selectionMode\", !1, \"boolean\", \"Range Selector\"), XYAxis.prototype.publishProxy(\"xAxisTitle\", \"domainAxis\", \"title\"), XYAxis.prototype.publishProxy(\"xAxisTickCount\", \"domainAxis\", \"tickCount\"), XYAxis.prototype.publishProxy(\"xAxisTickFormat\", \"domainAxis\", \"tickFormat\"), XYAxis.prototype.publishProxy(\"xAxisTicks\", \"domainAxis\", \"ticks\"), XYAxis.prototype.publishProxy(\"xAxisType\", \"domainAxis\", \"type\"), XYAxis.prototype.publishProxy(\"xAxisTypeTimePattern\", \"domainAxis\", \"timePattern\"), XYAxis.prototype.publish(\"xAxisDomainLow\", null, \"string\", \"X-Axis Low\", null, {\n\toptional: !0,\n\tdisable: (e) => e.xAxisType() === \"ordinal\"\n}), XYAxis.prototype.publish(\"xAxisDomainHigh\", null, \"string\", \"X-Axis High\", null, {\n\toptional: !0,\n\tdisable: (e) => e.xAxisType() === \"ordinal\"\n}), XYAxis.prototype.publishProxy(\"xAxisFontSize\", \"domainAxis\", \"fontSize\"), XYAxis.prototype.publishProxy(\"xAxisFontFamily\", \"domainAxis\", \"fontFamily\"), XYAxis.prototype.publishProxy(\"xAxisOrdinalPaddingInner\", \"domainAxis\", \"ordinalPaddingInner\"), XYAxis.prototype.publishProxy(\"xAxisOrdinalPaddingOuter\", \"domainAxis\", \"ordinalPaddingOuter\"), XYAxis.prototype.publishProxy(\"xAxisOverlapMode\", \"domainAxis\", \"overlapMode\"), XYAxis.prototype.publishProxy(\"xAxisLabelRotation\", \"domainAxis\", \"labelRotation\"), XYAxis.prototype.publishProxy(\"xAxisDomainPadding\", \"domainAxis\", \"extend\"), XYAxis.prototype.publish(\"xAxisGuideLines\", !1, \"boolean\", \"Y-Axis Guide Lines\"), XYAxis.prototype.publish(\"xAxisFocus\", !1, \"boolean\", \"X-Axis Focus\", null, { disable: (e) => e.orientation() !== \"horizontal\" }), XYAxis.prototype.publish(\"xAxisFocusHeight\", 80, \"number\", \"X-Axis Focus Height\", null, { disable: (e) => !e.xAxisFocus() }), XYAxis.prototype.publishProxy(\"xAxisHidden\", \"domainAxis\", \"hidden\"), XYAxis.prototype.publishProxy(\"yAxisFontSize\", \"valueAxis\", \"fontSize\"), XYAxis.prototype.publishProxy(\"yAxisFontFamily\", \"valueAxis\", \"fontFamily\"), XYAxis.prototype.publishProxy(\"yAxisTitle\", \"valueAxis\", \"title\"), XYAxis.prototype.publishProxy(\"yAxisTickCount\", \"valueAxis\", \"tickCount\"), XYAxis.prototype.publishProxy(\"yAxisTickFormat\", \"valueAxis\", \"tickFormat\"), XYAxis.prototype.publishProxy(\"yAxisTicks\", \"valueAxis\", \"ticks\"), XYAxis.prototype.publishProxy(\"yAxisType\", \"valueAxis\", \"type\"), XYAxis.prototype.publishProxy(\"yAxisTypeTimePattern\", \"valueAxis\", \"timePattern\"), XYAxis.prototype.publishProxy(\"yAxisTypePowExponent\", \"valueAxis\", \"powExponent\"), XYAxis.prototype.publishProxy(\"yAxisTypeLogBase\", \"valueAxis\", \"logBase\"), XYAxis.prototype.publish(\"yAxisStacked\", !1, \"boolean\", \"Stacked Chart\", null, {\n\ttags: [\"Basic\"],\n\tdisable: (e) => e.xAxisType() !== \"ordinal\" || e._class.indexOf(\"chart_Column\") < 0\n}), XYAxis.prototype.publish(\"yAxisDomainLow\", null, \"string\", \"Y-Axis Low\", null, {\n\toptional: !0,\n\tdisable: (e) => e.yAxisType() === \"ordinal\"\n}), XYAxis.prototype.publish(\"yAxisDomainHigh\", null, \"string\", \"Y-Axis High\", null, {\n\toptional: !0,\n\tdisable: (e) => e.yAxisType() === \"ordinal\"\n}), XYAxis.prototype.publishProxy(\"yAxisDomainPadding\", \"valueAxis\", \"extend\"), XYAxis.prototype.publish(\"yAxisGuideLines\", !0, \"boolean\", \"Y-Axis Guide Lines\"), XYAxis.prototype.publishProxy(\"yAxisHidden\", \"valueAxis\", \"hidden\"), XYAxis.prototype.publish(\"regions\", [], \"array\", \"Regions\"), XYAxis.prototype.publish(\"layers\", [], \"widgetArray\", \"Layers\", null, { render: !1 }), XYAxis.prototype.publishProxy(\"xAxisPadding\", \"domainAxis\", \"padding\"), XYAxis.prototype.publishProxy(\"yAxisPadding\", \"valueAxis\", \"padding\"), XYAxis.prototype.publish(\"tabNavigation\", !1, \"boolean\", \"Enable or disable tab navigation\");\n//#endregion\n//#region src/Scatter.ts\nvar Scatter = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\",\n\t\tmulti: !0\n\t}];\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), this.xAxisGuideLines_default(!0).yAxisGuideLines_default(!0);\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tcurve() {\n\t\tswitch (this.interpolate()) {\n\t\t\tcase \"linear\": return linear_default$1;\n\t\t\tcase \"step\": return step_default;\n\t\t\tcase \"step-before\": return stepBefore;\n\t\t\tcase \"step-after\": return stepAfter;\n\t\t\tcase \"basis\": return basis_default;\n\t\t\tcase \"bundle\": return xe;\n\t\t\tcase \"cardinal\": return Se;\n\t\t\tcase \"catmullRom\": return Ce;\n\t\t\tcase \"natural\": return natural_default;\n\t\t\tdefault: return monotoneX;\n\t\t}\n\t}\n\tgetScale() {\n\t\tswitch (this.pointSizeScale()) {\n\t\t\tcase \"linear\": return P();\n\t\t\tcase \"pow\": return I().exponent(2);\n\t\t\tcase \"log\": return F();\n\t\t\tcase \"sqrt\": return L();\n\t\t}\n\t}\n\tpointColor(e, t, n, r) {\n\t\treturn this.interpolate() && this.pointDarken() ? this.strokeColor(e, t, n, r) : this.fillColor(e, t, n, r);\n\t}\n\tlineColor(e, t, n, r) {\n\t\treturn this.interpolateFill() && this.interpolateDarken() ? this.strokeColor(e, t, n, r) : this.fillColor(e, t, n, r);\n\t}\n\tareaColor(e, t, n, r) {\n\t\treturn this.fillColor(e, t, n, r);\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t\tlet r = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (r.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return r.tooltipFormat({\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tarr: r.columns().slice(1).map(function(t, n) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: r._palette(t),\n\t\t\t\t\t\t\tvalue: r.data()[e.rowIdx][n + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return r.tooltipFormat({\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tseries: e.column,\n\t\t\t\t\tvalue: e.value\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\t_prevPointShape;\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t);\n\t\tlet r = e.orientation() === \"horizontal\", i = r ? this.height() : this.width(), a = this;\n\t\tthis.tabNavigation() && e.parentRelativeDiv ? e.parentRelativeDiv.attr(\"tabindex\", \"0\").attr(\"role\", \"group\").attr(\"aria-label\", `${this.columns()[0] || \"Chart\"} data`) : e.parentRelativeDiv && e.parentRelativeDiv.attr(\"tabindex\", null).attr(\"role\", null).attr(\"aria-label\", null), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._prevPointShape !== this.pointShape() && (t.selectAll(\".data\").remove(), this._prevPointShape = this.pointShape());\n\t\tfunction mapShape(e) {\n\t\t\tswitch (e) {\n\t\t\t\tcase \"rectangle\": return \"rect\";\n\t\t\t\tcase \"circle\": return \"circle\";\n\t\t\t\tcase \"cross\": return \"path\";\n\t\t\t\tdefault:\n\t\t\t}\n\t\t}\n\t\tlet o = this.pointSizeColumn_exists(), s, c, l;\n\t\to && (s = this.columns().indexOf(this.pointSizeColumn()), c = C(this.data(), (e) => e[s]), l = this.getScale().domain(c));\n\t\tlet u = this.layerColumns(e), d = this.layerData(e), f = this.flattenData(u, d).map(function(e) {\n\t\t\treturn e.shape = mapShape(a.pointShape()), e.column = u[e.colIdx], e.row = d[e.rowIdx], e.origRow = d[e.rowIdx].__hpcc_origRow, c ? (e.size = l(e.row[s]) * (a.maxPointSize() - a.minPointSize()) + a.minPointSize(), e.column === a.pointSizeColumn() ? !1 : e) : (e.size = a.pointSize(), e);\n\t\t}).filter((e) => e), p = t.selectAll(\".area\").data(u.filter(function(e, t) {\n\t\t\treturn a.interpolate() && a.interpolateFill() && t > 0;\n\t\t})), m = p.enter().append(\"path\"), h = area_default$1().curve(this.curve());\n\t\tr ? h.x(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}).y0(Math.min(i, this.yPos(e, { value: 0 }))).y1(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}) : h.y(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}).x0(Math.max(0, this.xPos(e, { value: 0 }))).x1(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}), m.merge(p).attr(\"class\", (e) => \"area series series-\" + this.cssTag(e)).each(function(e, t) {\n\t\t\tz(this).attr(\"d\", h(f.filter(function(e) {\n\t\t\t\treturn e.colIdx === t + 1;\n\t\t\t}))).style(\"opacity\", a.interpolateFillOpacity()).style(\"stroke\", \"none\").style(\"fill\", a.areaColor([], e, void 0, []));\n\t\t}), p.exit().remove();\n\t\tlet _ = t.selectAll(\".line\").data(u.filter(function(e, t) {\n\t\t\treturn a.interpolate() && t > 0;\n\t\t})), v = _.enter().append(\"path\"), b = line_default$1().x(function(t) {\n\t\t\treturn a.xPos(e, t);\n\t\t}).y(function(t) {\n\t\t\treturn a.yPos(e, t);\n\t\t}).curve(this.curve());\n\t\tv.merge(_).attr(\"class\", (e) => \"line series series-\" + this.cssTag(e)).each(function(e, t) {\n\t\t\tlet n = z(this), r = f.filter(function(e) {\n\t\t\t\treturn e.colIdx === t + 1;\n\t\t\t});\n\t\t\tn.attr(\"d\", b(r)).style(\"stroke\", a.lineColor([], e, void 0, [])).style(\"fill\", \"none\");\n\t\t}), _.exit().remove();\n\t\tlet S = t.selectAll(\".point\").data(f, function(e, t) {\n\t\t\treturn e.shape + \"_\" + t;\n\t\t});\n\t\tS.enter().append(\"g\").each(function(t) {\n\t\t\tlet n = z(this);\n\t\t\tn.append(t.shape).attr(\"class\", \"pointShape\"), n.append(\"text\").attr(\"class\", \"pointValue\").style(\"display\", \"none\").attr(\"text-anchor\", a.valueAnchor()).attr(\"alignment-baseline\", a.valueBaseline()).attr(\"fill\", function(e, t) {\n\t\t\t\treturn a.valueBaseline() === \"middle\" || a.valueBaseline() === \"central\" ? a.textColor(e.row, e.column, e.value, e.origRow) : null;\n\t\t\t}), n.append(\"circle\").attr(\"class\", \"pointSelection\").on(\"mouseout.tooltip\", a.tooltip.hide).on(\"mousemove.tooltip\", a.tooltip.show).call(e._selection.enter.bind(e._selection)).on(\"click\", function(t, n) {\n\t\t\t\ta.click(e.rowToObj(e.data()[t.rowIdx]), t.column, e._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(t, n) {\n\t\t\t\ta.dblclick(e.rowToObj(e.data()[t.rowIdx]), t.column, e._selection.selected(this));\n\t\t\t}).on(\"keydown\", function(t, n) {\n\t\t\t\tif (a.tabNavigation()) {\n\t\t\t\t\tlet t = g();\n\t\t\t\t\t(t.code === \"Space\" || t.key === \"Enter\") && (t.preventDefault(), e._selection.click(this));\n\t\t\t\t}\n\t\t\t});\n\t\t}).merge(S).attr(\"class\", (e) => \"point series series-\" + this.cssTag(e.column)).each(function(t) {\n\t\t\tz(this).select(\".pointValue\").attr(\"x\", function(t) {\n\t\t\t\treturn a.xPos(e, t);\n\t\t\t}).attr(\"y\", function(t) {\n\t\t\t\treturn a.yPos(e, t);\n\t\t\t}).style(\"display\", a.showValue() ? \"block\" : \"none\").attr(\"text-anchor\", a.valueAnchor()).attr(\"alignment-baseline\", a.valueBaseline()).text(function(e) {\n\t\t\t\treturn e.value;\n\t\t\t}), z(this).select(\".pointSelection\").attr(\"cx\", function(t) {\n\t\t\t\treturn a.xPos(e, t);\n\t\t\t}).attr(\"cy\", function(t) {\n\t\t\t\treturn a.yPos(e, t);\n\t\t\t}).attr(\"r\", t.size).attr(\"tabindex\", a.tabNavigation() ? 0 : null).attr(\"role\", a.tabNavigation() ? \"button\" : null).attr(\"aria-label\", a.tabNavigation() ? (e) => `${e.column || \"Value\"}: ${e.value} @ ${e.label}` : null);\n\t\t\tlet n = z(this).select(\".pointShape\");\n\t\t\tswitch (t.shape) {\n\t\t\t\tcase \"rect\":\n\t\t\t\t\tn.attr(\"x\", function(n) {\n\t\t\t\t\t\treturn a.xPos(e, n) - t.size / 2;\n\t\t\t\t\t}).attr(\"y\", function(n) {\n\t\t\t\t\t\treturn a.yPos(e, n) - t.size / 2;\n\t\t\t\t\t}).attr(\"width\", t.size).attr(\"height\", t.size).style(\"fill\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"circle\":\n\t\t\t\t\tn.attr(\"cx\", function(t) {\n\t\t\t\t\t\treturn a.xPos(e, t);\n\t\t\t\t\t}).attr(\"cy\", function(t) {\n\t\t\t\t\t\treturn a.yPos(e, t);\n\t\t\t\t\t}).attr(\"r\", t.size * .9).style(\"fill\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"path\":\n\t\t\t\t\tn.attr(\"d\", function(n) {\n\t\t\t\t\t\treturn \"M\" + (a.xPos(e, n) - t.size / 2) + \" \" + (a.yPos(e, n) - t.size / 2) + \" L\" + (a.xPos(e, n) + t.size / 2) + \" \" + (a.yPos(e, n) + t.size / 2) + \" M\" + (a.xPos(e, n) - t.size / 2) + \" \" + (a.yPos(e, n) + t.size / 2) + \" L\" + (a.xPos(e, n) + t.size / 2) + \" \" + (a.yPos(e, n) - t.size / 2);\n\t\t\t\t\t}).style(\"stroke\", a.pointColor(t.row, t.column, t.value, t.origRow));\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t}\n\t\t}), S.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nScatter.prototype._class += \" chart_Scatter\", Scatter.prototype.implements(r.prototype), Scatter.prototype.implements(i.prototype), Scatter.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Scatter.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Scatter.prototype.publish(\"pointSizeScale\", \"linear\", \"set\", \"pointSizeScale\", [\n\t\"linear\",\n\t\"pow\",\n\t\"log\",\n\t\"sqrt\"\n]), Scatter.prototype.publish(\"pointShape\", \"cross\", \"set\", \"Shape of the data points\", [\n\t\"circle\",\n\t\"rectangle\",\n\t\"cross\"\n]), Scatter.prototype.publish(\"pointSize\", 6, \"number\", \"Point Size\", null, { range: {\n\tmin: 1,\n\tstep: 1,\n\tmax: 200\n} }), Scatter.prototype.publish(\"interpolate\", \"\", \"set\", \"Interpolate Data\", [\n\t\"\",\n\t\"linear\",\n\t\"step\",\n\t\"step-before\",\n\t\"step-after\",\n\t\"basis\",\n\t\"bundle\",\n\t\"cardinal\",\n\t\"catmullRom\",\n\t\"natural\",\n\t\"monotone\"\n]), Scatter.prototype.publish(\"pointDarken\", !0, \"boolean\", \"If true, and interpolate is set, then points will have a slightly darker color than their assigned palette color\", null, { disable: (e) => !e.interpolate() }), Scatter.prototype.publish(\"interpolateDarken\", !0, \"boolean\", \"If true, and interpolateFill is true, then lines will have a slightly darker color than their assigned palette color\", null, { disable: (e) => !e.interpolateFill() }), Scatter.prototype.publish(\"interpolateFill\", !1, \"boolean\", \"If true, the area between the line and zero will be filled\"), Scatter.prototype.publish(\"interpolateFillOpacity\", .66, \"number\", \"Fill interpolation Opacity\", null, { range: {\n\tmin: 0,\n\tstep: .01,\n\tmax: 1\n} }), Scatter.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Scatter.prototype.publish(\"showValue\", !1, \"boolean\"), Scatter.prototype.publish(\"valueAnchor\", \"middle\", \"set\", \"text-anchor for shown value text\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), Scatter.prototype.publish(\"valueBaseline\", \"ideographic\", \"set\", \"alignment-baseline for shown value text\", [\n\t\"auto\",\n\t\"baseline\",\n\t\"before-edge\",\n\t\"text-before-edge\",\n\t\"middle\",\n\t\"central\",\n\t\"after-edge\",\n\t\"text-after-edge\",\n\t\"ideographic\",\n\t\"alphabetic\",\n\t\"hanging\",\n\t\"mathematical\",\n\t\"inherit\"\n]);\n//#endregion\n//#region src/Area.ts\nvar Area = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"linear\").interpolateFill_default(!0);\n\t}\n};\nArea.prototype._class += \" chart_Area\";\n//#endregion\n//#region src/Column.ts\nvar Column = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\",\n\t\tmulti: !0\n\t}];\n\t_linearGap;\n\ttextLocal = O();\n\tstackedTextLocal = O();\n\tisHorizontal;\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), this._selection.skipBringToTop(!0), this._linearGap = 25;\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t\tlet r = this;\n\t\tthis.tooltipHTML(function(t) {\n\t\t\tswitch (r.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return r.tooltipFormat({\n\t\t\t\t\tlabel: t.row[0],\n\t\t\t\t\tarr: r.columns().slice(1).map(function(e, n) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: e,\n\t\t\t\t\t\t\tcolor: r._palette(e),\n\t\t\t\t\t\t\tvalue: t.row[n + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault:\n\t\t\t\t\tlet n = t.row[t.idx];\n\t\t\t\t\treturn n instanceof Array && (n = n[1] - n[0]), r.tooltipFormat({\n\t\t\t\t\t\tlabel: t.row[0],\n\t\t\t\t\t\tseries: r.layerColumns(e)[t.idx],\n\t\t\t\t\t\tvalue: n\n\t\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tadjustedData(e) {\n\t\treturn this.layerData(e).map((t) => {\n\t\t\tlet n = 0;\n\t\t\treturn t.map((t, r) => {\n\t\t\t\tif (r === 0 || r >= this.layerColumns(e).length) return t;\n\t\t\t\tlet i = e.yAxisStacked() ? [n, n + t] : t;\n\t\t\t\treturn n += t, i;\n\t\t\t}, this);\n\t\t}, this);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n);\n\t\tlet r = e.orientation() === \"horizontal\";\n\t\tthis.isHorizontal = r;\n\t\tlet i = this;\n\t\tthis.tabNavigation() && e.parentRelativeDiv ? e.parentRelativeDiv.attr(\"tabindex\", \"0\").attr(\"role\", \"group\").attr(\"aria-label\", `${this.columns()[0] || \"Chart\"} data`) : e.parentRelativeDiv && e.parentRelativeDiv.attr(\"tabindex\", null).attr(\"role\", null).attr(\"aria-label\", null), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id()));\n\t\tlet a = w(i.showValueAsPercentFormat()), o = 10, s = 0;\n\t\tswitch (e.xAxisType()) {\n\t\t\tcase \"ordinal\":\n\t\t\t\to = e.bandwidth(), s = -o / 2;\n\t\t\t\tbreak;\n\t\t\tcase \"linear\":\n\t\t\tcase \"time\":\n\t\t\t\to = Math.max(Math.abs(e.dataPos(2) - e.dataPos(1)) * (100 - this._linearGap) / 100, o), s = -o / 2;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t\tthis.tooltip.direction(r ? \"n\" : \"e\");\n\t\tlet c = N().domain(i.layerColumns(e).filter(function(e, t) {\n\t\t\treturn t > 0;\n\t\t})).rangeRound(r ? [0, o] : [o, 0]).paddingInner(Math.max(this.xAxisSeriesPaddingInner(), .05)).paddingOuter(0), l = [], d = [], f = this.columns().length, p = this.data();\n\t\tthis.showValue() && this.showValueAsPercent() === \"series\" && p.forEach((e) => {\n\t\t\te.filter((e, t) => t > 0 && t < f).forEach((e, t) => {\n\t\t\t\td[t + 1] === void 0 && (d[t + 1] = 0), d[t + 1] += e;\n\t\t\t});\n\t\t}), (this.showDomainTotal() || this.showValue() && this.showValueAsPercent() === \"domain\") && (l = p.map((e) => e.filter((e, t) => t > 0 && t < f).reduce((e, t) => e + t, 0)));\n\t\tlet m = t.selectAll(\".dataRow\").data(this.adjustedData(e)), h = e.data(), _ = this.getAxisSize(e);\n\t\tm.enter().append(\"g\").attr(\"class\", \"dataRow\").merge(m).each(function(t, p) {\n\t\t\tlet m = z(this), v = m.selectAll(\".dataCell\").data(t.filter(function(t, n) {\n\t\t\t\treturn n < i.layerColumns(e).length;\n\t\t\t}).map(function(n, r) {\n\t\t\t\treturn {\n\t\t\t\t\tcolumn: i.layerColumns(e)[r],\n\t\t\t\t\trow: t,\n\t\t\t\t\torigRow: h[p],\n\t\t\t\t\tvalue: n,\n\t\t\t\t\tidx: r\n\t\t\t\t};\n\t\t\t}).filter(function(e) {\n\t\t\t\treturn e.value !== null && e.idx > 0;\n\t\t\t}), (e) => e.column), b = v.enter().append(\"g\").attr(\"class\", \"dataCell\").on(\"mouseout.tooltip\", function(e) {\n\t\t\t\t(!i.tooltipInnerTextEllipsedOnly() || e.innerTextObj && e.innerTextObj.isTruncated) && i.tooltip.hide.apply(i, arguments);\n\t\t\t}).on(\"mousemove.tooltip\", function(e) {\n\t\t\t\t(!i.tooltipInnerTextEllipsedOnly() || e.innerTextObj && e.innerTextObj.isTruncated) && i.tooltip.show.apply(i, arguments);\n\t\t\t}).call(e._selection.enter.bind(e._selection)).on(\"click\", function(t) {\n\t\t\t\ti.click(e.rowToObj(t.origRow), t.column, e._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(t) {\n\t\t\t\ti.dblclick(e.rowToObj(t.origRow), t.column, e._selection.selected(this));\n\t\t\t}).on(\"keydown\", function(t, n) {\n\t\t\t\tif (i.tabNavigation()) {\n\t\t\t\t\tlet t = g();\n\t\t\t\t\t(t.code === \"Space\" || t.key === \"Enter\") && (t.preventDefault(), e._selection.click(this));\n\t\t\t\t}\n\t\t\t}).style(\"opacity\", 0).each(function(e) {\n\t\t\t\tlet t = z(this);\n\t\t\t\tt.append(\"rect\").attr(\"class\", \"columnRect series series-\" + i.cssTag(e.column)), t.append(\"text\").attr(\"class\", \"columnRectText\").style(\"stroke\", \"transparent\");\n\t\t\t});\n\t\t\tb.transition().duration(n).style(\"opacity\", 1);\n\t\t\tlet S = e.yAxisStacked() ? o : c.bandwidth();\n\t\t\tb.merge(v).attr(\"tabindex\", i.tabNavigation() ? 0 : null).attr(\"role\", i.tabNavigation() ? \"button\" : null).attr(\"aria-label\", i.tabNavigation() ? (e) => `${e.origRow[0]} - ${e.column}: ${e.value instanceof Array ? e.value[1] - e.value[0] : e.value}` : null).each(function(o) {\n\t\t\t\tlet m = z(this), h = e.dataPos(t[0]) + (e.yAxisStacked() ? 0 : c(o.column)) + s, g = o.value instanceof Array ? o.value[1] : o.value, v = o.origRow[o.idx];\n\t\t\t\tif (i.showValue()) {\n\t\t\t\t\tlet e = i.dataMeta();\n\t\t\t\t\tswitch (i.showValueAsPercent()) {\n\t\t\t\t\t\tcase \"series\":\n\t\t\t\t\t\t\tlet t = e.sum === void 0 ? d[o.idx] : e.sum;\n\t\t\t\t\t\t\tv = a(v / t);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase \"domain\":\n\t\t\t\t\t\t\tlet n = e.sum === void 0 ? l[p] : e.sum;\n\t\t\t\t\t\t\tv = a(v / n);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tv = w(i.showValueFormat())(v);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tlet b = e.valuePos(g), C = e.valuePos(o.value instanceof Array ? o.value[0] : 0), T = Math.min(C, b), E = Math.abs(b - C), D = i.innerTextFontSize(), O = i.innerTextPadding_exists() ? i.innerTextPadding() : D / 2.5, k = i.intersectRectRect({\n\t\t\t\t\tx: r ? h : T,\n\t\t\t\t\ty: r ? T : h,\n\t\t\t\t\twidth: r ? S : E,\n\t\t\t\t\theight: r ? E : S\n\t\t\t\t}, {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0,\n\t\t\t\t\twidth: _.width,\n\t\t\t\t\theight: _.height\n\t\t\t\t}), A = m.select(\"rect\").transition().duration(n).style(\"fill\", (e) => i.fillColor(e.row, e.column, e.value, e.origRow));\n\t\t\t\tr ? A.attr(\"x\", h).attr(\"y\", T).attr(\"width\", S).attr(\"height\", E) : A.attr(\"y\", h).attr(\"x\", T).attr(\"height\", S).attr(\"width\", E);\n\t\t\t\tlet j = m.select(\"text\").transition().duration(n).style(\"font-size\", D + \"px\").style(\"fill\", (e) => i.textColor(e.row, e.column, e.value, e.origRow));\n\t\t\t\tj.style(\"font-family\", i.innerTextFontFamily_exists() ? i.innerTextFontFamily() : null);\n\t\t\t\tlet M = i.innerTextPadding_exists() ? i.innerTextPadding() : 8, N = D / 2.7;\n\t\t\t\tif (r) {\n\t\t\t\t\tlet e = k.y + k.height - O;\n\t\t\t\t\tj.attr(\"x\", h + S / 2).attr(\"y\", e + N).attr(\"transform\", `rotate(-90, ${h + S / 2}, ${e})`);\n\t\t\t\t} else j.attr(\"x\", k.x + M).attr(\"y\", h + S / 2 + N);\n\t\t\t\tj.attr(\"height\", S).attr(\"width\", E), i.showInnerText() && j.text((e) => {\n\t\t\t\t\tlet t = i.innerText(e.origRow, e.origRow[f], e.idx);\n\t\t\t\t\tif (t) {\n\t\t\t\t\t\tlet n = r ? k.height : k.width, a = i.calcInnerText(n, t, v);\n\t\t\t\t\t\treturn e.innerTextObj = a, a.text;\n\t\t\t\t\t}\n\t\t\t\t\treturn \"\";\n\t\t\t\t});\n\t\t\t\tlet P = m.selectAll(\".dataText\").data(i.showValue() ? [`${g}`] : []);\n\t\t\t\tP.enter().append(\"g\").attr(\"class\", \"dataText\").each(function(e) {\n\t\t\t\t\ti.textLocal.set(this, new u().target(this).colorStroke_default(\"transparent\"));\n\t\t\t\t}).merge(P).each(function() {\n\t\t\t\t\tlet e = {\n\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\ty: 0\n\t\t\t\t\t}, t = i.valueFontFamily(), n = i.valueFontSize(), a = i.textSize(v, t, n), s = parseFloat(v) >= 0, c = i.valueAnchor() ? i.valueAnchor() : r ? \"middle\" : \"start\", l = k.x, u = _.width - (k.x + k.width), d = k.y, f = _.height - (k.y + k.height), p, m, g;\n\t\t\t\t\tif (o.innerTextObj) {\n\t\t\t\t\t\tlet { padding: t, valueTextWidth: i } = o.innerTextObj;\n\t\t\t\t\t\tm = !1, r ? (c = \"middle\", e.x = h + S / 2, o.innerTextObj.category === 4 ? (m = !0, e.y = T - t - n / 2) : e.y = T + t + n / 2) : (c = \"start\", o.innerTextObj.category === 4 ? (m = !0, e.x = E + T + t) : e.x = E + T - i - t, e.y = h + S / 2);\n\t\t\t\t\t} else r ? (p = k.height < a.height, m = !i.valueCentered() || p, e.x = k.x + k.width / 2, m ? s ? (g = d < a.height + M, g ? p ? e.y = k.y + k.height + a.height : (m = !1, e.y = k.y + k.height / 2) : e.y = k.y - a.height / 2 - M) : (g = f < a.height, g ? p ? e.y = k.y - a.height / 2 - M : (m = !1, e.y = k.y + k.height / 2) : e.y = k.y + a.height + M) : e.y = k.y + k.height / 2) : (p = k.width < a.width, m = !i.valueCentered() || p, e.y = k.y + k.height / 2, m ? s ? (g = u < a.width + M, g ? i.showInnerText() || !p ? (m = !1, e.x = k.x + k.width / 2) : e.x = k.x - (a.width - M) : e.x = k.x + k.width + a.width / 2 + M) : (g = l < a.width, g ? i.showInnerText() || !p ? (m = !1, e.x = k.x + k.width / 2) : e.x = k.x + k.width + (a.width - M) : e.x = k.x - (a.width - M)) : e.x = k.x + k.width / 2);\n\t\t\t\t\tlet b = m ? null : i.textColor(o.row, o.column, o.value, o.origRow), C = i.columns(), w = i.yAxisStacked() && p || m && i.yAxisStacked() && C.indexOf(o.column) !== C.length - 1;\n\t\t\t\t\ti.textLocal.get(this).pos(e).anchor(c).fontFamily(t).fontSize(n).text(`${v}`).colorFill(b).visible(i.showValue() && !w).render();\n\t\t\t\t}), P.exit().each(function(e) {\n\t\t\t\t\ti.textLocal.get(this).target(null);\n\t\t\t\t}).remove();\n\t\t\t}), v.exit().transition().duration(n).style(\"opacity\", 0).remove();\n\t\t\tlet C = e.yAxisStacked() ? l[p] : Math.max(...t.filter((e, t) => t > 0 && t < f)), T = m.selectAll(\".stackedTotalText\").data(i.showDomainTotal() ? [l[p]] : []);\n\t\t\tT.enter().append(\"g\").attr(\"class\", \"stackedTotalText\").each(function(e) {\n\t\t\t\ti.stackedTextLocal.set(this, new u().target(this).colorStroke_default(\"transparent\"));\n\t\t\t}).merge(T).each(function(n) {\n\t\t\t\tlet a = {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0\n\t\t\t\t}, o = e.dataPos(t[0]), s = e.valuePos(C), c = i.valueFontFamily(), l = i.valueFontSize(), u = i.textSize(n, c, l), d = parseFloat(n) >= 0, f = \"middle\";\n\t\t\t\tr ? (a.x = o, d ? a.y = s - u.height / 2 : a.y = s + u.height / 2) : (f = \"start\", a.y = o, d ? a.x = s + u.width / 2 : a.x = s - u.width / 2), i.stackedTextLocal.get(this).pos(a).anchor(f).fontFamily(c).fontSize(l).text(n).render();\n\t\t\t}), T.exit().each(function(e) {\n\t\t\t\ti.textLocal.get(this).target(null);\n\t\t\t}).remove();\n\t\t}), m.exit().transition().duration(n).remove();\n\t}\n\tcalcInnerText(e, t, n) {\n\t\tlet r = this.innerTextFontFamily_exists() ? this.innerTextFontFamily() : \"Verdana\", i = this.innerTextFontSize(), a = this.valueFontFamily_exists() ? this.valueFontFamily() : \"Verdana\", o = this.valueFontSize(), s = this.innerTextPadding_exists() ? this.innerTextPadding() : i / 2.5, c = this.isHorizontal ? o : this.textSize(n, a, o).width, l = this.textSize(\"...\", r, i).width, u = this.textSize(t, r, i).width, d = t, f = s * 3 + u + c, p = s * 3 + l + c, m = s * 1 + c, h = 4;\n\t\tif (f < e) h = 1;\n\t\telse if (p < e) {\n\t\t\tlet n = e - p, a = \"\";\n\t\t\tfor (let e of t) if (this.textSize(a + e, r, i).width > n) {\n\t\t\t\tt = a + \"...\";\n\t\t\t\tbreak;\n\t\t\t} else a += e;\n\t\t\th = 2;\n\t\t} else m < e ? (t = \"\", h = 3) : t = \"\";\n\t\treturn {\n\t\t\ttext: t,\n\t\t\tisTruncated: d !== t,\n\t\t\tpadding: s,\n\t\t\tcategory: h,\n\t\t\tvalueTextWidth: c\n\t\t};\n\t}\n\tinnerText(e, t, n) {\n\t\treturn e[0];\n\t}\n};\nColumn.prototype._class += \" chart_Column\", Column.prototype.implements(r.prototype), Column.prototype.implements(i.prototype), Column.prototype.publish(\"valueFontFamily\", null, \"string\", \"Font family of value text\", null, { optional: !0 }), Column.prototype.publish(\"valueFontSize\", 12, \"number\", \"Height of value text (pixels)\"), Column.prototype.publish(\"innerTextFontFamily\", null, \"string\", \"Font family of inner text\", null, { optional: !0 }), Column.prototype.publish(\"innerTextPadding\", 8, \"number\", \"Offset of inner text (pixels)\", null, { optional: !0 }), Column.prototype.publish(\"innerTextFontSize\", 12, \"number\", \"Height of inner text (pixels)\"), Column.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", () => Column.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Column.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Column.prototype.publish(\"showValue\", !1, \"boolean\", \"Show Value in column\"), Column.prototype.publish(\"showInnerText\", !1, \"boolean\", \"Show Label in column\"), Column.prototype.publish(\"showValueFormat\", \",\", \"string\", \"D3 Format for Value\", null, { disable: (e) => !e.showValue() || !!e.showValueAsPercent() }), Column.prototype.publish(\"showValueAsPercent\", null, \"set\", \"If showValue is true, optionally show value as a percentage by Series or Domain\", [\n\tnull,\n\t\"series\",\n\t\"domain\"\n], {\n\tdisable: (e) => !e.showValue(),\n\toptional: !0\n}), Column.prototype.publish(\"showValueAsPercentFormat\", \".0%\", \"string\", \"D3 Format for %\", null, { disable: (e) => !e.showValue() || !e.showValueAsPercent() }), Column.prototype.publish(\"showDomainTotal\", !1, \"boolean\", \"Show Total Value for Stacked Columns\", null), Column.prototype.publish(\"valueCentered\", !1, \"boolean\", \"Show Value in center of column\"), Column.prototype.publish(\"valueAnchor\", \"middle\", \"set\", \"text-anchor for shown value text\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), Column.prototype.publish(\"xAxisSeriesPaddingInner\", 0, \"number\", \"Determines the ratio of the range that is reserved for blank space between band (0->1)\"), Column.prototype.publish(\"tooltipInnerTextEllipsedOnly\", !1, \"boolean\", \"Show tooltip only when inner text is truncated with an ellipsis\");\n//#endregion\n//#region src/Bar.ts\nvar Bar = class extends Column {\n\tconstructor() {\n\t\tsuper(), this.orientation_default(\"vertical\");\n\t}\n};\nBar.prototype._class += \" chart_Bar\";\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/count.js\nfunction count(e) {\n\tvar t = 0, n = e.children, r = n && n.length;\n\tif (!r) t = 1;\n\telse for (; --r >= 0;) t += n[r].value;\n\te.value = t;\n}\nfunction count_default() {\n\treturn this.eachAfter(count);\n}\n__name(count_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/each.js\nfunction each_default(e) {\n\tvar t = this, n, r = [t], i, a, o;\n\tdo\n\t\tfor (n = r.reverse(), r = []; t = n.pop();) if (e(t), i = t.children, i) for (a = 0, o = i.length; a < o; ++a) r.push(i[a]);\n\twhile (r.length);\n\treturn this;\n}\n__name(each_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js\nfunction eachBefore_default(e) {\n\tfor (var t = this, n = [t], r, i; t = n.pop();) if (e(t), r = t.children, r) for (i = r.length - 1; i >= 0; --i) n.push(r[i]);\n\treturn this;\n}\n__name(eachBefore_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js\nfunction eachAfter_default(e) {\n\tfor (var t = this, n = [t], r = [], i, a, o; t = n.pop();) if (r.push(t), i = t.children, i) for (a = 0, o = i.length; a < o; ++a) n.push(i[a]);\n\tfor (; t = r.pop();) e(t);\n\treturn this;\n}\n__name(eachAfter_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/sum.js\nfunction sum_default(e) {\n\treturn this.eachAfter(function(t) {\n\t\tfor (var n = +e(t.data) || 0, r = t.children, i = r && r.length; --i >= 0;) n += r[i].value;\n\t\tt.value = n;\n\t});\n}\n__name(sum_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/sort.js\nfunction sort_default(e) {\n\treturn this.eachBefore(function(t) {\n\t\tt.children && t.children.sort(e);\n\t});\n}\n__name(sort_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/path.js\nfunction path_default$1(e) {\n\tfor (var t = this, n = leastCommonAncestor(t, e), r = [t]; t !== n;) t = t.parent, r.push(t);\n\tfor (var i = r.length; e !== n;) r.splice(i, 0, e), e = e.parent;\n\treturn r;\n}\n__name(path_default$1, \"default\");\nfunction leastCommonAncestor(e, t) {\n\tif (e === t) return e;\n\tvar n = e.ancestors(), r = t.ancestors(), i = null;\n\tfor (e = n.pop(), t = r.pop(); e === t;) i = e, e = n.pop(), t = r.pop();\n\treturn i;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/ancestors.js\nfunction ancestors_default() {\n\tfor (var e = this, t = [e]; e = e.parent;) t.push(e);\n\treturn t;\n}\n__name(ancestors_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/descendants.js\nfunction descendants_default() {\n\tvar e = [];\n\treturn this.each(function(t) {\n\t\te.push(t);\n\t}), e;\n}\n__name(descendants_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/leaves.js\nfunction leaves_default() {\n\tvar e = [];\n\treturn this.eachBefore(function(t) {\n\t\tt.children || e.push(t);\n\t}), e;\n}\n__name(leaves_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/links.js\nfunction links_default() {\n\tvar e = this, t = [];\n\treturn e.each(function(n) {\n\t\tn !== e && t.push({\n\t\t\tsource: n.parent,\n\t\t\ttarget: n\n\t\t});\n\t}), t;\n}\n__name(links_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/hierarchy/index.js\nfunction hierarchy(e, t) {\n\tvar n = new Node$1(e), r = +e.value && (n.value = e.value), i, a = [n], o, s, c, l;\n\tfor (t ??= defaultChildren; i = a.pop();) if (r && (i.value = +i.data.value), (s = t(i.data)) && (l = s.length)) for (i.children = Array(l), c = l - 1; c >= 0; --c) a.push(o = i.children[c] = new Node$1(s[c])), o.parent = i, o.depth = i.depth + 1;\n\treturn n.eachBefore(computeHeight);\n}\nfunction node_copy() {\n\treturn hierarchy(this).eachBefore(copyData);\n}\nfunction defaultChildren(e) {\n\treturn e.children;\n}\nfunction copyData(e) {\n\te.data = e.data.data;\n}\nfunction computeHeight(e) {\n\tvar t = 0;\n\tdo\n\t\te.height = t;\n\twhile ((e = e.parent) && e.height < ++t);\n}\nfunction Node$1(e) {\n\tthis.data = e, this.depth = this.height = 0, this.parent = null;\n}\n__name(Node$1, \"Node\"), Node$1.prototype = hierarchy.prototype = {\n\tconstructor: Node$1,\n\tcount: count_default,\n\teach: each_default,\n\teachAfter: eachAfter_default,\n\teachBefore: eachBefore_default,\n\tsum: sum_default,\n\tsort: sort_default,\n\tpath: path_default$1,\n\tancestors: ancestors_default,\n\tdescendants: descendants_default,\n\tleaves: leaves_default,\n\tlinks: links_default,\n\tcopy: node_copy\n};\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/array.js\nvar Ae = Array.prototype.slice;\nfunction shuffle(e) {\n\tfor (var t = e.length, n, r; t;) r = Math.random() * t-- | 0, n = e[t], e[t] = e[r], e[r] = n;\n\treturn e;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/enclose.js\nfunction enclose_default(e) {\n\tfor (var t = 0, n = (e = shuffle(Ae.call(e))).length, r = [], i, a; t < n;) i = e[t], a && enclosesWeak(a, i) ? ++t : (a = encloseBasis(r = extendBasis(r, i)), t = 0);\n\treturn a;\n}\n__name(enclose_default, \"default\");\nfunction extendBasis(e, t) {\n\tvar n, r;\n\tif (enclosesWeakAll(t, e)) return [t];\n\tfor (n = 0; n < e.length; ++n) if (enclosesNot(t, e[n]) && enclosesWeakAll(encloseBasis2(e[n], t), e)) return [e[n], t];\n\tfor (n = 0; n < e.length - 1; ++n) for (r = n + 1; r < e.length; ++r) if (enclosesNot(encloseBasis2(e[n], e[r]), t) && enclosesNot(encloseBasis2(e[n], t), e[r]) && enclosesNot(encloseBasis2(e[r], t), e[n]) && enclosesWeakAll(encloseBasis3(e[n], e[r], t), e)) return [\n\t\te[n],\n\t\te[r],\n\t\tt\n\t];\n\tthrow Error();\n}\nfunction enclosesNot(e, t) {\n\tvar n = e.r - t.r, r = t.x - e.x, i = t.y - e.y;\n\treturn n < 0 || n * n < r * r + i * i;\n}\nfunction enclosesWeak(e, t) {\n\tvar n = e.r - t.r + 1e-6, r = t.x - e.x, i = t.y - e.y;\n\treturn n > 0 && n * n > r * r + i * i;\n}\nfunction enclosesWeakAll(e, t) {\n\tfor (var n = 0; n < t.length; ++n) if (!enclosesWeak(e, t[n])) return !1;\n\treturn !0;\n}\nfunction encloseBasis(e) {\n\tswitch (e.length) {\n\t\tcase 1: return encloseBasis1(e[0]);\n\t\tcase 2: return encloseBasis2(e[0], e[1]);\n\t\tcase 3: return encloseBasis3(e[0], e[1], e[2]);\n\t}\n}\nfunction encloseBasis1(e) {\n\treturn {\n\t\tx: e.x,\n\t\ty: e.y,\n\t\tr: e.r\n\t};\n}\nfunction encloseBasis2(e, t) {\n\tvar n = e.x, r = e.y, i = e.r, a = t.x, o = t.y, s = t.r, c = a - n, l = o - r, u = s - i, d = Math.sqrt(c * c + l * l);\n\treturn {\n\t\tx: (n + a + c / d * u) / 2,\n\t\ty: (r + o + l / d * u) / 2,\n\t\tr: (d + i + s) / 2\n\t};\n}\nfunction encloseBasis3(e, t, n) {\n\tvar r = e.x, i = e.y, a = e.r, o = t.x, s = t.y, c = t.r, l = n.x, u = n.y, d = n.r, f = r - o, p = r - l, m = i - s, h = i - u, g = c - a, _ = d - a, v = r * r + i * i - a * a, b = v - o * o - s * s + c * c, S = v - l * l - u * u + d * d, C = p * m - f * h, w = (m * S - h * b) / (C * 2) - r, T = (h * g - m * _) / C, E = (p * b - f * S) / (C * 2) - i, D = (f * _ - p * g) / C, O = T * T + D * D - 1, k = 2 * (a + w * T + E * D), A = w * w + E * E - a * a, j = -(O ? (k + Math.sqrt(k * k - 4 * O * A)) / (2 * O) : A / k);\n\treturn {\n\t\tx: r + w + T * j,\n\t\ty: i + E + D * j,\n\t\tr: j\n\t};\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/siblings.js\nfunction place(e, t, n) {\n\tvar r = e.x - t.x, i, a, o = e.y - t.y, s, c, l = r * r + o * o;\n\tl ? (a = t.r + n.r, a *= a, c = e.r + n.r, c *= c, a > c ? (i = (l + c - a) / (2 * l), s = Math.sqrt(Math.max(0, c / l - i * i)), n.x = e.x - i * r - s * o, n.y = e.y - i * o + s * r) : (i = (l + a - c) / (2 * l), s = Math.sqrt(Math.max(0, a / l - i * i)), n.x = t.x + i * r - s * o, n.y = t.y + i * o + s * r)) : (n.x = t.x + n.r, n.y = t.y);\n}\nfunction intersects(e, t) {\n\tvar n = e.r + t.r - 1e-6, r = t.x - e.x, i = t.y - e.y;\n\treturn n > 0 && n * n > r * r + i * i;\n}\nfunction score(e) {\n\tvar t = e._, n = e.next._, r = t.r + n.r, i = (t.x * n.r + n.x * t.r) / r, a = (t.y * n.r + n.y * t.r) / r;\n\treturn i * i + a * a;\n}\nfunction Node(e) {\n\tthis._ = e, this.next = null, this.previous = null;\n}\nfunction packEnclose(e) {\n\tif (!(i = e.length)) return 0;\n\tvar t = e[0], n, r, i, a, o, s, c, l, u, d;\n\tif (t.x = 0, t.y = 0, !(i > 1)) return t.r;\n\tif (n = e[1], t.x = -n.r, n.x = t.r, n.y = 0, !(i > 2)) return t.r + n.r;\n\tplace(n, t, r = e[2]), t = new Node(t), n = new Node(n), r = new Node(r), t.next = r.previous = n, n.next = t.previous = r, r.next = n.previous = t;\n\tpack: for (s = 3; s < i; ++s) {\n\t\tplace(t._, n._, r = e[s]), r = new Node(r), c = n.next, l = t.previous, u = n._.r, d = t._.r;\n\t\tdo\n\t\t\tif (u <= d) {\n\t\t\t\tif (intersects(c._, r._)) {\n\t\t\t\t\tn = c, t.next = n, n.previous = t, --s;\n\t\t\t\t\tcontinue pack;\n\t\t\t\t}\n\t\t\t\tu += c._.r, c = c.next;\n\t\t\t} else {\n\t\t\t\tif (intersects(l._, r._)) {\n\t\t\t\t\tt = l, t.next = n, n.previous = t, --s;\n\t\t\t\t\tcontinue pack;\n\t\t\t\t}\n\t\t\t\td += l._.r, l = l.previous;\n\t\t\t}\n\t\twhile (c !== l.next);\n\t\tfor (r.previous = t, r.next = n, t.next = n.previous = n = r, a = score(t); (r = r.next) !== n;) (o = score(r)) < a && (t = r, a = o);\n\t\tn = t.next;\n\t}\n\tfor (t = [n._], r = n; (r = r.next) !== n;) t.push(r._);\n\tfor (r = enclose_default(t), s = 0; s < i; ++s) t = e[s], t.x -= r.x, t.y -= r.y;\n\treturn r.r;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/accessors.js\nfunction optional(e) {\n\treturn e == null ? null : required(e);\n}\nfunction required(e) {\n\tif (typeof e != \"function\") throw Error();\n\treturn e;\n}\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/constant.js\nfunction constantZero() {\n\treturn 0;\n}\nfunction constant_default$2(e) {\n\treturn function() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$2, \"default\");\n//#endregion\n//#region ../../node_modules/d3-hierarchy/src/pack/index.js\nfunction defaultRadius(e) {\n\treturn Math.sqrt(e.value);\n}\nfunction pack_default() {\n\tvar e = null, t = 1, n = 1, r = constantZero;\n\tfunction pack(i) {\n\t\treturn i.x = t / 2, i.y = n / 2, e ? i.eachBefore(radiusLeaf(e)).eachAfter(packChildren(r, .5)).eachBefore(translateChild(1)) : i.eachBefore(radiusLeaf(defaultRadius)).eachAfter(packChildren(constantZero, 1)).eachAfter(packChildren(r, i.r / Math.min(t, n))).eachBefore(translateChild(Math.min(t, n) / (2 * i.r))), i;\n\t}\n\treturn pack.radius = function(t) {\n\t\treturn arguments.length ? (e = optional(t), pack) : e;\n\t}, pack.size = function(e) {\n\t\treturn arguments.length ? (t = +e[0], n = +e[1], pack) : [t, n];\n\t}, pack.padding = function(e) {\n\t\treturn arguments.length ? (r = typeof e == \"function\" ? e : constant_default$2(+e), pack) : r;\n\t}, pack;\n}\n__name(pack_default, \"default\");\nfunction radiusLeaf(e) {\n\treturn function(t) {\n\t\tt.children || (t.r = Math.max(0, +e(t) || 0));\n\t};\n}\nfunction packChildren(e, t) {\n\treturn function(n) {\n\t\tif (r = n.children) {\n\t\t\tvar r, i, a = r.length, o = e(n) * t || 0, s;\n\t\t\tif (o) for (i = 0; i < a; ++i) r[i].r += o;\n\t\t\tif (s = packEnclose(r), o) for (i = 0; i < a; ++i) r[i].r -= o;\n\t\t\tn.r = s + o;\n\t\t}\n\t};\n}\nfunction translateChild(e) {\n\treturn function(t) {\n\t\tvar n = t.parent;\n\t\tt.r *= e, n && (t.x = n.x + e * t.x, t.y = n.y + e * t.y);\n\t};\n}\n//#endregion\n//#region src/Bubble.ts\nvar Bubble = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\tlabelWidgets;\n\td3Pack;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this._drawStartPos = \"origin\", this.labelWidgets = {}, this.d3Pack = pack_default().size([this.width(), this.height()]).padding(1.5);\n\t}\n\tsize(e) {\n\t\tlet t = super.size.apply(this, arguments);\n\t\treturn arguments.length && this.d3Pack.size([this.width(), this.height()]), t;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t);\n\t\tlet n = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (n.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return n.tooltipFormat({\n\t\t\t\t\tlabel: e[0],\n\t\t\t\t\tarr: n.columns().slice(1).map(function(t, r) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: n._palette(e[0]),\n\t\t\t\t\t\t\tvalue: e[1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tvalue: e.data[1]\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this;\n\t\tthis._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id()));\n\t\tlet r = hierarchy({ children: this.cloneData() }).sum(function(e) {\n\t\t\treturn e[1];\n\t\t}).sort(function(e, t) {\n\t\t\treturn t[1] < e[1] ? -1 : +(t[1] > e[1]);\n\t\t});\n\t\tthis.d3Pack(r);\n\t\tlet i = t.selectAll(\".node\").data(r.children || [], (e) => e.data[0]);\n\t\ti.enter().append(\"g\").attr(\"class\", (e, t) => \"node series series-\" + this.cssTag(e.data[0])).attr(\"opacity\", 0).call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).each(function(e) {\n\t\t\tlet t = z(this), r = {\n\t\t\t\tx: e.x,\n\t\t\t\ty: e.y\n\t\t\t};\n\t\t\tt.append(\"circle\").attr(\"transform\", \"translate(\" + r.x + \",\" + r.y + \")\").attr(\"r\", 0).on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show), e.__viz_faChar ? n.labelWidgets[e.data[0]] = new o().char(e.__viz_faChar).target(this).render() : n.labelWidgets[e.data[0]] = new u().text(e.data[0]).target(this).render();\n\t\t}).merge(i).transition().attr(\"opacity\", 1).each(function(e) {\n\t\t\tlet t = z(this), r = {\n\t\t\t\tx: e.x,\n\t\t\t\ty: e.y\n\t\t\t};\n\t\t\tt.select(\"circle\").transition().attr(\"transform\", \"translate(\" + r.x + \",\" + r.y + \")\").style(\"fill\", n.fillColor(e.data, n.columns()[1], e.data[1])).attr(\"r\", e.r).select(\"title\").text(e.data[0] + \" (\" + e.data[1] + \")\"), e.__viz_faChar ? n.labelWidgets[e.data[0]].pos(r).render() : n.labelWidgets[e.data[0]].pos(r).colorFill_default(n.textColor(e.data, n.columns()[1], e.data[1])).width(e.r * 2).text(e.data[0]).render();\n\t\t}), i.exit().transition().style(\"opacity\", 0).remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nBubble.prototype._class += \" chart_Bubble\", Bubble.prototype.implements(n.prototype), Bubble.prototype.implements(i.prototype), Bubble.prototype.mixin(d.SimpleSelectionMixin), Bubble.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Bubble.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Bubble.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] });\n//#endregion\n//#region src/BubbleXY.ts\nvar BubbleXY = class extends Scatter {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tenter(e, t) {\n\t\tthis.pointSizeColumn_exists() || this.pointSizeColumn(this.columns()[this.columns().length - 1]), super.enter(e, t);\n\t}\n};\nBubbleXY.prototype._class += \" chart_BubbleXY\";\n//#endregion\n//#region ../../node_modules/d3-timer/src/timer.js\nvar je = 0, Me = 0, Ne = 0, Pe = 1e3, Fe, Ie, Le = 0, Re = 0, ze = 0, Be = typeof performance == \"object\" && performance.now ? performance : Date, Ve = typeof window == \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(e) {\n\tsetTimeout(e, 17);\n};\nfunction now() {\n\treturn Re ||= (Ve(clearNow), Be.now() + ze);\n}\nfunction clearNow() {\n\tRe = 0;\n}\nfunction Timer() {\n\tthis._call = this._time = this._next = null;\n}\nTimer.prototype = timer.prototype = {\n\tconstructor: Timer,\n\trestart: function(e, t, n) {\n\t\tif (typeof e != \"function\") throw TypeError(\"callback is not a function\");\n\t\tn = (n == null ? now() : +n) + (t == null ? 0 : +t), !this._next && Ie !== this && (Ie ? Ie._next = this : Fe = this, Ie = this), this._call = e, this._time = n, sleep();\n\t},\n\tstop: function() {\n\t\tthis._call && (this._call = null, this._time = Infinity, sleep());\n\t}\n};\nfunction timer(e, t, n) {\n\tvar r = new Timer();\n\treturn r.restart(e, t, n), r;\n}\nfunction timerFlush() {\n\tnow(), ++je;\n\tfor (var e = Fe, t; e;) (t = Re - e._time) >= 0 && e._call.call(null, t), e = e._next;\n\t--je;\n}\nfunction wake() {\n\tRe = (Le = Be.now()) + ze, je = Me = 0;\n\ttry {\n\t\ttimerFlush();\n\t} finally {\n\t\tje = 0, nap(), Re = 0;\n\t}\n}\nfunction poke() {\n\tvar e = Be.now(), t = e - Le;\n\tt > Pe && (ze -= t, Le = e);\n}\nfunction nap() {\n\tfor (var e, t = Fe, n, r = Infinity; t;) t._call ? (r > t._time && (r = t._time), e = t, t = t._next) : (n = t._next, t._next = null, t = e ? e._next = n : Fe = n);\n\tIe = e, sleep(r);\n}\nfunction sleep(e) {\n\tje || (Me &&= clearTimeout(Me), e - Re > 24 ? (e < Infinity && (Me = setTimeout(wake, e - Be.now() - ze)), Ne &&= clearInterval(Ne)) : (Ne ||= (Le = Be.now(), setInterval(poke, Pe)), je = 1, Ve(wake)));\n}\n//#endregion\n//#region ../../node_modules/d3v4-bullet/src/bullet.js\nfunction bullet_default() {\n\tvar e = \"left\", t = !1, n = !1, r = bulvarRanges, i = bulvarMarkers, a = bulvarMeasures, o = 380, s = 30, c = axisLeft();\n\tfunction bulvar(e) {\n\t\te.each(function(e, l) {\n\t\t\tvar u = r.call(this, e, l).slice().sort(_), d = i.call(this, e, l).slice().sort(_), f = a.call(this, e, l).slice().sort(_), p = z(this), m, h, g = p.select(\"g.wrap\");\n\t\t\tg.empty() && (g = p.append(\"g\").attr(\"class\", \"wrap\")), n ? (m = s, h = o, g.attr(\"transform\", \"rotate(90)translate(0,\" + -o + \")\")) : (m = o, h = s, g.attr(\"transform\", null));\n\t\t\tvar v = P().domain([0, Math.max(u[0], d[0], f[0])]).range(t ? [m, 0] : [0, m]), b = this.__chart__ || P().domain([0, Infinity]).range(v.range());\n\t\t\tthis.__chart__ = v;\n\t\t\tvar S = bulvarWidth(b), C = bulvarWidth(v), w = g.selectAll(\"rect.range\").data(u);\n\t\t\tw.enter().append(\"rect\").attr(\"class\", function(e, t) {\n\t\t\t\treturn \"range s\" + t;\n\t\t\t}).attr(\"width\", S).attr(\"height\", h).attr(\"x\", t ? b : 0).merge(w).transition(w).attr(\"x\", t ? v : 0).attr(\"width\", C).attr(\"height\", h);\n\t\t\tvar T = g.selectAll(\"rect.measure\").data(f);\n\t\t\tT.enter().append(\"rect\").attr(\"class\", function(e, t) {\n\t\t\t\treturn \"measure s\" + t;\n\t\t\t}).attr(\"width\", S).attr(\"height\", h / 3).attr(\"x\", t ? b : 0).attr(\"y\", h / 3).merge(T).transition(T).attr(\"width\", C).attr(\"height\", h / 3).attr(\"x\", t ? v : 0).attr(\"y\", h / 3);\n\t\t\tvar E = g.selectAll(\"line.marker\").data(d);\n\t\t\tE.enter().append(\"line\").attr(\"class\", \"marker\").attr(\"x1\", b).attr(\"x2\", b).attr(\"y1\", h / 6).attr(\"y2\", h * 5 / 6).merge(E).transition(E).attr(\"x1\", v).attr(\"x2\", v).attr(\"y1\", h / 6).attr(\"y2\", h * 5 / 6);\n\t\t\tvar D = p.selectAll(\"g.axis\").data([0]);\n\t\t\tD.enter().append(\"g\").attr(\"class\", \"axis\"), D.attr(\"transform\", n ? null : \"translate(0,\" + h + \")\").call(c.scale(v));\n\t\t}), timerFlush();\n\t}\n\treturn bulvar.orient = function(r) {\n\t\treturn arguments.length ? (e = r + \"\", t = e === \"right\" || e === \"bottom\", c.orient((n = e === \"top\" || e === \"bottom\") ? \"left\" : \"bottom\"), bulvar) : e;\n\t}, bulvar.ranges = function(e) {\n\t\treturn arguments.length ? (r = e, bulvar) : r;\n\t}, bulvar.markers = function(e) {\n\t\treturn arguments.length ? (i = e, bulvar) : i;\n\t}, bulvar.measures = function(e) {\n\t\treturn arguments.length ? (a = e, bulvar) : a;\n\t}, bulvar.width = function(e) {\n\t\treturn arguments.length ? (o = +e, bulvar) : o;\n\t}, bulvar.height = function(e) {\n\t\treturn arguments.length ? (s = +e, bulvar) : s;\n\t}, bulvar.tickFormat = function(e) {\n\t\treturn arguments.length ? (c.tickFormat(e), bulvar) : c.tickFormat();\n\t}, bulvar;\n}\n__name(bullet_default, \"default\");\nfunction bulvarRanges(e) {\n\treturn e.ranges;\n}\nfunction bulvarMarkers(e) {\n\treturn e.markers;\n}\nfunction bulvarMeasures(e) {\n\treturn e.measures;\n}\nfunction bulvarWidth(e) {\n\tvar t = e(0);\n\treturn function(n) {\n\t\treturn Math.abs(e(n) - t);\n\t};\n}\n//#endregion\n//#region src/Bullet.ts\nvar Bullet = class extends s {\n\t_hiddenColumns = {};\n\tconstructor() {\n\t\tsuper(), d.SimpleSelectionMixin.call(this, !0);\n\t}\n\tbulletData() {\n\t\tlet e = this;\n\t\tthis._hiddenColumns = {};\n\t\tlet t = this.columns();\n\t\treturn this.data().map(function(e) {\n\t\t\treturn {\n\t\t\t\ttitle: valueOf(e, this.titleColumn()),\n\t\t\t\tsubtitle: valueOf(e, this.subtitleColumn()),\n\t\t\t\tranges: valueOf(e, this.rangesColumn(), \"range\"),\n\t\t\t\tmeasures: valueOf(e, this.measuresColumn(), \"measure\"),\n\t\t\t\tmarkers: valueOf(e, this.markersColumn(), \"marker\"),\n\t\t\t\torigRow: e\n\t\t\t};\n\t\t}, this);\n\t\tfunction valueOf(n, r, i) {\n\t\t\tlet a = t.indexOf(r);\n\t\t\treturn a >= 0 ? n[a] instanceof Array ? n[a] : [n[a]] : (i && (e._hiddenColumns[i] = !0), [0]);\n\t\t}\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), z(e.parentNode).style(\"overflow\", \"auto\"), this._selection.widgetElement(t);\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this;\n\t\tt.selectAll(\".axis\").style(\"display\", \"none\"), t.selectAll(\".range,.measure,.marker\").style(\"display\", null);\n\t\tlet r = {\n\t\t\tleft: 2,\n\t\t\ttop: 8,\n\t\t\tright: 2,\n\t\t\tbottom: 8\n\t\t}, i = this.width() - r.left - r.right, a = 40 - r.top - r.bottom, o = t.selectAll(\"svg\").data(this.bulletData()), s = o.enter().append(\"svg\").attr(\"class\", \"bullet\").call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.origRow), n.titleColumn(), n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.origRow), n.titleColumn(), n._selection.selected(this));\n\t\t}).each(function() {\n\t\t\tlet e = z(this).append(\"g\").attr(\"class\", (e, t) => \"bulletBar series series-\" + n.cssTag(n.titleColumn())).append(\"g\").attr(\"class\", \"bulletTitle\");\n\t\t\te.append(\"text\").attr(\"class\", \"title\"), e.append(\"text\").attr(\"class\", \"subtitle\").attr(\"dy\", \"1em\");\n\t\t}).merge(o), c = s.select(\".bulletTitle\").style(\"text-anchor\", \"end\").attr(\"transform\", \"translate(-6,\" + a / 2 + \")\");\n\t\tc.select(\".title\").text(function(e) {\n\t\t\treturn e.title;\n\t\t}), c.select(\".subtitle\").text(function(e) {\n\t\t\treturn e.subtitle;\n\t\t});\n\t\tlet l = 0;\n\t\tc.each(function() {\n\t\t\tlet e = this.getBBox();\n\t\t\te.width > l && (l = e.width);\n\t\t});\n\t\tlet u = bullet_default().width(i - l - 6).height(a);\n\t\ts.attr(\"width\", i).attr(\"height\", a + r.top + r.bottom).style(\"margin-left\", `${r.left}px`), s.select(\".bulletBar\").attr(\"transform\", \"translate(\" + (l + 6) + \",\" + r.top + \")\").call(u), o.exit().remove(), Object.keys(this._hiddenColumns).length > 0 && t.selectAll(`.${Object.keys(this._hiddenColumns).join(\",.\")}`).style(\"display\", \"none\");\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tclick(e, t, n) {}\n\tdblclick(e, t, n) {}\n\t_selection;\n};\nBullet.prototype._class += \" chart_Bullet\", Bullet.prototype.publish(\"titleColumn\", null, \"set\", \"Title Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"subtitleColumn\", null, \"set\", \"Subtitle Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"rangesColumn\", null, \"set\", \"Ranges Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"measuresColumn\", null, \"set\", \"Measures Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Bullet.prototype.publish(\"markersColumn\", null, \"set\", \"Markers Column\", function() {\n\treturn this.columns();\n}, { optional: !0 });\nvar He = Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-contour/src/ascending.js\nfunction ascending_default(e, t) {\n\treturn e - t;\n}\n__name(ascending_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/area.js\nfunction area_default(e) {\n\tfor (var t = 0, n = e.length, r = e[n - 1][1] * e[0][0] - e[n - 1][0] * e[0][1]; ++t < n;) r += e[t - 1][1] * e[t][0] - e[t - 1][0] * e[t][1];\n\treturn r;\n}\n__name(area_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/constant.js\nfunction constant_default$1(e) {\n\treturn function() {\n\t\treturn e;\n\t};\n}\n__name(constant_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/contains.js\nfunction contains_default(e, t) {\n\tfor (var n = -1, r = t.length, i; ++n < r;) if (i = ringContains(e, t[n])) return i;\n\treturn 0;\n}\n__name(contains_default, \"default\");\nfunction ringContains(e, t) {\n\tfor (var n = t[0], r = t[1], i = -1, a = 0, o = e.length, s = o - 1; a < o; s = a++) {\n\t\tvar c = e[a], l = c[0], u = c[1], d = e[s], f = d[0], p = d[1];\n\t\tif (segmentContains(c, d, t)) return 0;\n\t\tu > r != p > r && n < (f - l) * (r - u) / (p - u) + l && (i = -i);\n\t}\n\treturn i;\n}\nfunction segmentContains(e, t, n) {\n\tvar r;\n\treturn collinear(e, t, n) && within(e[r = +(e[0] === t[0])], n[r], t[r]);\n}\nfunction collinear(e, t, n) {\n\treturn (t[0] - e[0]) * (n[1] - e[1]) === (n[0] - e[0]) * (t[1] - e[1]);\n}\nfunction within(e, t, n) {\n\treturn e <= t && t <= n || n <= t && t <= e;\n}\n//#endregion\n//#region ../../node_modules/d3-contour/src/noop.js\nfunction noop_default$1() {}\n__name(noop_default$1, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/contours.js\nvar W = [\n\t[],\n\t[[[1, 1.5], [.5, 1]]],\n\t[[[1.5, 1], [1, 1.5]]],\n\t[[[1.5, 1], [.5, 1]]],\n\t[[[1, .5], [1.5, 1]]],\n\t[[[1, 1.5], [.5, 1]], [[1, .5], [1.5, 1]]],\n\t[[[1, .5], [1, 1.5]]],\n\t[[[1, .5], [.5, 1]]],\n\t[[[.5, 1], [1, .5]]],\n\t[[[1, 1.5], [1, .5]]],\n\t[[[.5, 1], [1, .5]], [[1.5, 1], [1, 1.5]]],\n\t[[[1.5, 1], [1, .5]]],\n\t[[[.5, 1], [1.5, 1]]],\n\t[[[1, 1.5], [1.5, 1]]],\n\t[[[.5, 1], [1, 1.5]]],\n\t[]\n];\nfunction contours_default() {\n\tvar e = 1, t = 1, n = ee, r = smoothLinear;\n\tfunction contours(e) {\n\t\tvar t = n(e);\n\t\tif (Array.isArray(t)) t = t.slice().sort(ascending_default);\n\t\telse {\n\t\t\tvar r = C(e), i = r[0], a = r[1];\n\t\t\tt = B(i, a, t), t = j(Math.floor(i / t) * t, Math.floor(a / t) * t, t);\n\t\t}\n\t\treturn t.map(function(t) {\n\t\t\treturn contour(e, t);\n\t\t});\n\t}\n\tfunction contour(e, t) {\n\t\tvar n = [], i = [];\n\t\treturn isorings(e, t, function(a) {\n\t\t\tr(a, e, t), area_default(a) > 0 ? n.push([a]) : i.push(a);\n\t\t}), i.forEach(function(e) {\n\t\t\tfor (var t = 0, r = n.length, i; t < r; ++t) if (contains_default((i = n[t])[0], e) !== -1) {\n\t\t\t\ti.push(e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}), {\n\t\t\ttype: \"MultiPolygon\",\n\t\t\tvalue: t,\n\t\t\tcoordinates: n\n\t\t};\n\t}\n\tfunction isorings(n, r, i) {\n\t\tvar a = [], o = [], s = c = -1, c, l, u = n[0] >= r, d, f;\n\t\tfor (W[u << 1].forEach(stitch); ++s < e - 1;) l = u, u = n[s + 1] >= r, W[l | u << 1].forEach(stitch);\n\t\tfor (W[u << 0].forEach(stitch); ++c < t - 1;) {\n\t\t\tfor (s = -1, u = n[c * e + e] >= r, d = n[c * e] >= r, W[u << 1 | d << 2].forEach(stitch); ++s < e - 1;) l = u, u = n[c * e + e + s + 1] >= r, f = d, d = n[c * e + s + 1] >= r, W[l | u << 1 | d << 2 | f << 3].forEach(stitch);\n\t\t\tW[u | d << 3].forEach(stitch);\n\t\t}\n\t\tfor (s = -1, d = n[c * e] >= r, W[d << 2].forEach(stitch); ++s < e - 1;) f = d, d = n[c * e + s + 1] >= r, W[d << 2 | f << 3].forEach(stitch);\n\t\tW[d << 3].forEach(stitch);\n\t\tfunction stitch(e) {\n\t\t\tvar t = [e[0][0] + s, e[0][1] + c], n = [e[1][0] + s, e[1][1] + c], r = index(t), l = index(n), u, d;\n\t\t\t(u = o[r]) ? (d = a[l]) ? (delete o[u.end], delete a[d.start], u === d ? (u.ring.push(n), i(u.ring)) : a[u.start] = o[d.end] = {\n\t\t\t\tstart: u.start,\n\t\t\t\tend: d.end,\n\t\t\t\tring: u.ring.concat(d.ring)\n\t\t\t}) : (delete o[u.end], u.ring.push(n), o[u.end = l] = u) : (u = a[l]) ? (d = o[r]) ? (delete a[u.start], delete o[d.end], u === d ? (u.ring.push(n), i(u.ring)) : a[d.start] = o[u.end] = {\n\t\t\t\tstart: d.start,\n\t\t\t\tend: u.end,\n\t\t\t\tring: d.ring.concat(u.ring)\n\t\t\t}) : (delete a[u.start], u.ring.unshift(t), a[u.start = r] = u) : a[r] = o[l] = {\n\t\t\t\tstart: r,\n\t\t\t\tend: l,\n\t\t\t\tring: [t, n]\n\t\t\t};\n\t\t}\n\t}\n\tfunction index(t) {\n\t\treturn t[0] * 2 + t[1] * (e + 1) * 4;\n\t}\n\tfunction smoothLinear(n, r, i) {\n\t\tn.forEach(function(n) {\n\t\t\tvar a = n[0], o = n[1], s = a | 0, c = o | 0, l, u = r[c * e + s];\n\t\t\ta > 0 && a < e && s === a && (l = r[c * e + s - 1], n[0] = a + (i - l) / (u - l) - .5), o > 0 && o < t && c === o && (l = r[(c - 1) * e + s], n[1] = o + (i - l) / (u - l) - .5);\n\t\t});\n\t}\n\treturn contours.contour = contour, contours.size = function(n) {\n\t\tif (!arguments.length) return [e, t];\n\t\tvar r = Math.ceil(n[0]), i = Math.ceil(n[1]);\n\t\tif (!(r > 0) || !(i > 0)) throw Error(\"invalid size\");\n\t\treturn e = r, t = i, contours;\n\t}, contours.thresholds = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$1(Array.isArray(e) ? He.call(e) : e), contours) : n;\n\t}, contours.smooth = function(e) {\n\t\treturn arguments.length ? (r = e ? smoothLinear : noop_default$1, contours) : r === smoothLinear;\n\t}, contours;\n}\n__name(contours_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-contour/src/blur.js\nfunction blurX(e, t, n) {\n\tfor (var r = e.width, i = e.height, a = (n << 1) + 1, o = 0; o < i; ++o) for (var s = 0, c = 0; s < r + n; ++s) s < r && (c += e.data[s + o * r]), s >= n && (s >= a && (c -= e.data[s - a + o * r]), t.data[s - n + o * r] = c / Math.min(s + 1, r - 1 + a - s, a));\n}\nfunction blurY(e, t, n) {\n\tfor (var r = e.width, i = e.height, a = (n << 1) + 1, o = 0; o < r; ++o) for (var s = 0, c = 0; s < i + n; ++s) s < i && (c += e.data[o + s * r]), s >= n && (s >= a && (c -= e.data[o + (s - a) * r]), t.data[o + (s - n) * r] = c / Math.min(s + 1, i - 1 + a - s, a));\n}\n//#endregion\n//#region ../../node_modules/d3-contour/src/density.js\nfunction defaultX(e) {\n\treturn e[0];\n}\nfunction defaultY(e) {\n\treturn e[1];\n}\nfunction defaultWeight() {\n\treturn 1;\n}\nfunction density_default() {\n\tvar e = defaultX, t = defaultY, n = defaultWeight, r = 960, i = 500, a = 20, o = 2, s = a * 3, c = r + s * 2 >> o, l = i + s * 2 >> o, u = constant_default$1(20);\n\tfunction density(r) {\n\t\tvar i = new Float32Array(c * l), d = new Float32Array(c * l);\n\t\tr.forEach(function(r, a, u) {\n\t\t\tvar d = +e(r, a, u) + s >> o, f = +t(r, a, u) + s >> o, p = +n(r, a, u);\n\t\t\td >= 0 && d < c && f >= 0 && f < l && (i[d + f * c] += p);\n\t\t}), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o), blurX({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, a >> o), blurY({\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: d\n\t\t}, {\n\t\t\twidth: c,\n\t\t\theight: l,\n\t\t\tdata: i\n\t\t}, a >> o);\n\t\tvar f = u(i);\n\t\tif (!Array.isArray(f)) {\n\t\t\tvar p = k(i);\n\t\t\tf = B(0, p, f), f = j(0, Math.floor(p / f) * f, f), f.shift();\n\t\t}\n\t\treturn contours_default().thresholds(f).size([c, l])(i).map(transform);\n\t}\n\tfunction transform(e) {\n\t\treturn e.value *= 2 ** (-2 * o), e.coordinates.forEach(transformPolygon), e;\n\t}\n\tfunction transformPolygon(e) {\n\t\te.forEach(transformRing);\n\t}\n\tfunction transformRing(e) {\n\t\te.forEach(transformPoint);\n\t}\n\tfunction transformPoint(e) {\n\t\te[0] = e[0] * 2 ** o - s, e[1] = e[1] * 2 ** o - s;\n\t}\n\tfunction resize() {\n\t\treturn s = a * 3, c = r + s * 2 >> o, l = i + s * 2 >> o, density;\n\t}\n\treturn density.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default$1(+t), density) : e;\n\t}, density.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default$1(+e), density) : t;\n\t}, density.weight = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default$1(+e), density) : n;\n\t}, density.size = function(e) {\n\t\tif (!arguments.length) return [r, i];\n\t\tvar t = Math.ceil(e[0]), n = Math.ceil(e[1]);\n\t\tif (!(t >= 0) && !(t >= 0)) throw Error(\"invalid size\");\n\t\treturn r = t, i = n, resize();\n\t}, density.cellSize = function(e) {\n\t\tif (!arguments.length) return 1 << o;\n\t\tif (!((e = +e) >= 1)) throw Error(\"invalid cell size\");\n\t\treturn o = Math.floor(Math.log(e) / Math.LN2), resize();\n\t}, density.thresholds = function(e) {\n\t\treturn arguments.length ? (u = typeof e == \"function\" ? e : constant_default$1(Array.isArray(e) ? He.call(e) : e), density) : u;\n\t}, density.bandwidth = function(e) {\n\t\tif (!arguments.length) return Math.sqrt(a * (a + 1));\n\t\tif (!((e = +e) >= 0)) throw Error(\"invalid bandwidth\");\n\t\treturn a = Math.round((Math.sqrt(4 * e * e + 1) - 1) / 2), resize();\n\t}, density;\n}\n__name(density_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/adder.js\nfunction adder_default() {\n\treturn new Adder();\n}\n__name(adder_default, \"default\");\nfunction Adder() {\n\tthis.reset();\n}\nAdder.prototype = {\n\tconstructor: Adder,\n\treset: function() {\n\t\tthis.s = this.t = 0;\n\t},\n\tadd: function(e) {\n\t\tadd(Ue, e, this.t), add(this, Ue.s, this.s), this.s ? this.t += Ue.t : this.s = Ue.t;\n\t},\n\tvalueOf: function() {\n\t\treturn this.s;\n\t}\n};\nvar Ue = new Adder();\nfunction add(e, t, n) {\n\tvar r = e.s = t + n, i = r - t;\n\te.t = t - (r - i) + (n - i);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/math.js\nvar We = Math.PI;\nWe / 2, We / 4;\nvar Ge = We * 2;\n180 / We, We / 180;\nvar Ke = Math.abs, qe = Math.sqrt;\n//#endregion\n//#region ../../node_modules/d3-geo/src/noop.js\nfunction noop() {}\n//#endregion\n//#region ../../node_modules/d3-geo/src/stream.js\nfunction streamGeometry(e, t) {\n\te && Ye.hasOwnProperty(e.type) && Ye[e.type](e, t);\n}\nvar Je = {\n\tFeature: function(e, t) {\n\t\tstreamGeometry(e.geometry, t);\n\t},\n\tFeatureCollection: function(e, t) {\n\t\tfor (var n = e.features, r = -1, i = n.length; ++r < i;) streamGeometry(n[r].geometry, t);\n\t}\n}, Ye = {\n\tSphere: function(e, t) {\n\t\tt.sphere();\n\t},\n\tPoint: function(e, t) {\n\t\te = e.coordinates, t.point(e[0], e[1], e[2]);\n\t},\n\tMultiPoint: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) e = n[r], t.point(e[0], e[1], e[2]);\n\t},\n\tLineString: function(e, t) {\n\t\tstreamLine(e.coordinates, t, 0);\n\t},\n\tMultiLineString: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) streamLine(n[r], t, 0);\n\t},\n\tPolygon: function(e, t) {\n\t\tstreamPolygon(e.coordinates, t);\n\t},\n\tMultiPolygon: function(e, t) {\n\t\tfor (var n = e.coordinates, r = -1, i = n.length; ++r < i;) streamPolygon(n[r], t);\n\t},\n\tGeometryCollection: function(e, t) {\n\t\tfor (var n = e.geometries, r = -1, i = n.length; ++r < i;) streamGeometry(n[r], t);\n\t}\n};\nfunction streamLine(e, t, n) {\n\tvar r = -1, i = e.length - n, a;\n\tfor (t.lineStart(); ++r < i;) a = e[r], t.point(a[0], a[1], a[2]);\n\tt.lineEnd();\n}\nfunction streamPolygon(e, t) {\n\tvar n = -1, r = e.length;\n\tfor (t.polygonStart(); ++n < r;) streamLine(e[n], t, 1);\n\tt.polygonEnd();\n}\nfunction stream_default(e, t) {\n\te && Je.hasOwnProperty(e.type) ? Je[e.type](e, t) : streamGeometry(e, t);\n}\n__name(stream_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/identity.js\nfunction identity_default(e) {\n\treturn e;\n}\n__name(identity_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/area.js\nvar Xe = adder_default(), Ze = adder_default(), Qe, $e, et, tt, G = {\n\tpoint: noop,\n\tlineStart: noop,\n\tlineEnd: noop,\n\tpolygonStart: function() {\n\t\tG.lineStart = areaRingStart, G.lineEnd = areaRingEnd;\n\t},\n\tpolygonEnd: function() {\n\t\tG.lineStart = G.lineEnd = G.point = noop, Xe.add(Ke(Ze)), Ze.reset();\n\t},\n\tresult: function() {\n\t\tvar e = Xe / 2;\n\t\treturn Xe.reset(), e;\n\t}\n};\nfunction areaRingStart() {\n\tG.point = areaPointFirst;\n}\nfunction areaPointFirst(e, t) {\n\tG.point = areaPoint, Qe = et = e, $e = tt = t;\n}\nfunction areaPoint(e, t) {\n\tZe.add(tt * e - et * t), et = e, tt = t;\n}\nfunction areaRingEnd() {\n\tareaPoint(Qe, $e);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/bounds.js\nvar nt = Infinity, rt = nt, it = -nt, at = it, ot = {\n\tpoint: boundsPoint,\n\tlineStart: noop,\n\tlineEnd: noop,\n\tpolygonStart: noop,\n\tpolygonEnd: noop,\n\tresult: function() {\n\t\tvar e = [[nt, rt], [it, at]];\n\t\treturn it = at = -(rt = nt = Infinity), e;\n\t}\n};\nfunction boundsPoint(e, t) {\n\te < nt && (nt = e), e > it && (it = e), t < rt && (rt = t), t > at && (at = t);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/centroid.js\nvar st = 0, ct = 0, lt = 0, ut = 0, dt = 0, ft = 0, pt = 0, mt = 0, ht = 0, gt, _t, K, q, J = {\n\tpoint: centroidPoint,\n\tlineStart: centroidLineStart,\n\tlineEnd: centroidLineEnd,\n\tpolygonStart: function() {\n\t\tJ.lineStart = centroidRingStart, J.lineEnd = centroidRingEnd;\n\t},\n\tpolygonEnd: function() {\n\t\tJ.point = centroidPoint, J.lineStart = centroidLineStart, J.lineEnd = centroidLineEnd;\n\t},\n\tresult: function() {\n\t\tvar e = ht ? [pt / ht, mt / ht] : ft ? [ut / ft, dt / ft] : lt ? [st / lt, ct / lt] : [NaN, NaN];\n\t\treturn st = ct = lt = ut = dt = ft = pt = mt = ht = 0, e;\n\t}\n};\nfunction centroidPoint(e, t) {\n\tst += e, ct += t, ++lt;\n}\nfunction centroidLineStart() {\n\tJ.point = centroidPointFirstLine;\n}\nfunction centroidPointFirstLine(e, t) {\n\tJ.point = centroidPointLine, centroidPoint(K = e, q = t);\n}\nfunction centroidPointLine(e, t) {\n\tvar n = e - K, r = t - q, i = qe(n * n + r * r);\n\tut += i * (K + e) / 2, dt += i * (q + t) / 2, ft += i, centroidPoint(K = e, q = t);\n}\nfunction centroidLineEnd() {\n\tJ.point = centroidPoint;\n}\nfunction centroidRingStart() {\n\tJ.point = centroidPointFirstRing;\n}\nfunction centroidRingEnd() {\n\tcentroidPointRing(gt, _t);\n}\nfunction centroidPointFirstRing(e, t) {\n\tJ.point = centroidPointRing, centroidPoint(gt = K = e, _t = q = t);\n}\nfunction centroidPointRing(e, t) {\n\tvar n = e - K, r = t - q, i = qe(n * n + r * r);\n\tut += i * (K + e) / 2, dt += i * (q + t) / 2, ft += i, i = q * e - K * t, pt += i * (K + e), mt += i * (q + t), ht += i * 3, centroidPoint(K = e, q = t);\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/context.js\nfunction PathContext(e) {\n\tthis._context = e;\n}\nPathContext.prototype = {\n\t_radius: 4.5,\n\tpointRadius: function(e) {\n\t\treturn this._radius = e, this;\n\t},\n\tpolygonStart: function() {\n\t\tthis._line = 0;\n\t},\n\tpolygonEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._line === 0 && this._context.closePath(), this._point = NaN;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._context.moveTo(e, t), this._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._context.moveTo(e + this._radius, t), this._context.arc(e, t, this._radius, 0, Ge);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tresult: noop\n};\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/measure.js\nvar vt = adder_default(), yt, bt, xt, St, Ct, wt = {\n\tpoint: noop,\n\tlineStart: function() {\n\t\twt.point = lengthPointFirst;\n\t},\n\tlineEnd: function() {\n\t\tyt && lengthPoint(bt, xt), wt.point = noop;\n\t},\n\tpolygonStart: function() {\n\t\tyt = !0;\n\t},\n\tpolygonEnd: function() {\n\t\tyt = null;\n\t},\n\tresult: function() {\n\t\tvar e = +vt;\n\t\treturn vt.reset(), e;\n\t}\n};\nfunction lengthPointFirst(e, t) {\n\twt.point = lengthPoint, bt = St = e, xt = Ct = t;\n}\nfunction lengthPoint(e, t) {\n\tSt -= e, Ct -= t, vt.add(qe(St * St + Ct * Ct)), St = e, Ct = t;\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/string.js\nfunction PathString() {\n\tthis._string = [];\n}\nPathString.prototype = {\n\t_radius: 4.5,\n\t_circle: circle(4.5),\n\tpointRadius: function(e) {\n\t\treturn (e = +e) !== this._radius && (this._radius = e, this._circle = null), this;\n\t},\n\tpolygonStart: function() {\n\t\tthis._line = 0;\n\t},\n\tpolygonEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._line === 0 && this._string.push(\"Z\"), this._point = NaN;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._string.push(\"M\", e, \",\", t), this._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._string.push(\"L\", e, \",\", t);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._circle ??= circle(this._radius), this._string.push(\"M\", e, \",\", t, this._circle);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tresult: function() {\n\t\tif (this._string.length) {\n\t\t\tvar e = this._string.join(\"\");\n\t\t\treturn this._string = [], e;\n\t\t} else return null;\n\t}\n};\nfunction circle(e) {\n\treturn \"m0,\" + e + \"a\" + e + \",\" + e + \" 0 1,1 0,\" + -2 * e + \"a\" + e + \",\" + e + \" 0 1,1 0,\" + 2 * e + \"z\";\n}\n//#endregion\n//#region ../../node_modules/d3-geo/src/path/index.js\nfunction path_default(e, t) {\n\tvar n = 4.5, r, i;\n\tfunction path(e) {\n\t\treturn e && (typeof n == \"function\" && i.pointRadius(+n.apply(this, arguments)), stream_default(e, r(i))), i.result();\n\t}\n\treturn path.area = function(e) {\n\t\treturn stream_default(e, r(G)), G.result();\n\t}, path.measure = function(e) {\n\t\treturn stream_default(e, r(wt)), wt.result();\n\t}, path.bounds = function(e) {\n\t\treturn stream_default(e, r(ot)), ot.result();\n\t}, path.centroid = function(e) {\n\t\treturn stream_default(e, r(J)), J.result();\n\t}, path.projection = function(t) {\n\t\treturn arguments.length ? (r = t == null ? (e = null, identity_default) : (e = t).stream, path) : e;\n\t}, path.context = function(e) {\n\t\treturn arguments.length ? (i = e == null ? (t = null, new PathString()) : new PathContext(t = e), typeof n != \"function\" && i.pointRadius(n), path) : t;\n\t}, path.pointRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : (i.pointRadius(+e), +e), path) : n;\n\t}, path.projection(e).context(t);\n}\n__name(path_default, \"default\");\n//#endregion\n//#region src/Contour.ts\nvar Contour = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"x\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"y\",\n\t\ttype: \"number\"\n\t}];\n\t_dataMinWeight;\n\t_dataMaxWeight;\n\tconstructor() {\n\t\tsuper(), this.xAxisGuideLines_default(!1).yAxisGuideLines_default(!1).xAxisType_default(\"linear\");\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n), this._palette = this._palette.switch(this.paletteID());\n\t\tlet r = this.flattenData(this.layerColumns(e), this.layerData(e)), i = density_default().x((t) => this.xPos(e, t)).y((t) => this.yPos(e, t)).size([this.width(), this.height()]).bandwidth(this.contourBandwidth())(r), a = i.map((e) => e.value), o = Math.min.apply(this, a), s = Math.max.apply(this, a);\n\t\tthis._dataMinWeight = o, this._dataMaxWeight = s;\n\t\tlet c = t.selectAll(\"path\").data(i);\n\t\tc.enter().append(\"path\").merge(c).attr(\"d\", path_default()).attr(\"fill\", (e) => this.showContourFill() ? this._palette(e.value, o, s) : \"none\").attr(\"stroke\", this.contourStrokeColor()).attr(\"stroke-linejoin\", \"round\").attr(\"stroke-width\", this.contourStrokeWidth()), c.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nContour.prototype._class += \" chart_Contour\", Contour.prototype.implements(e.prototype), Contour.prototype.publish(\"paletteID\", \"YlGnBu\", \"string\", \"Color palette for this widget\"), Contour.prototype.publish(\"useClonedPalette\", !0, \"boolean\", \"Enable or disable using a cloned palette\"), Contour.prototype.publish(\"showContourFill\", !0, \"boolean\", \"Show/hide the contour background colors\"), Contour.prototype.publish(\"showContour\", !0, \"boolean\", \"Show/hide the contour border lines\"), Contour.prototype.publish(\"contourBandwidth\", 40, \"number\", \"Controls the sensitivity of the contour grouping algorithm\"), Contour.prototype.publish(\"contourStrokeColor\", \"#2C3A47\", \"html-color\", \"Color of the contour border lines\"), Contour.prototype.publish(\"contourStrokeWidth\", 1, \"number\", \"Width of the contour border lines\");\n//#endregion\n//#region src/Gantt.ts\nvar Gantt = class extends Bar {\n\tconstructor() {\n\t\tsuper(), this.orientation_default(\"vertical\").xAxisType_default(\"ordinal\").yAxisType_default(\"time\");\n\t}\n};\nGantt.prototype._class += \" chart_Gantt\";\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/constant.js\nfunction constant_default(e) {\n\treturn function constant() {\n\t\treturn e;\n\t};\n}\n__name(constant_default, \"default\");\nvar Tt = Math.PI, Et = Tt / 2, Dt = 2 * Tt;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/arc.js\nfunction arcInnerRadius(e) {\n\treturn e.innerRadius;\n}\nfunction arcOuterRadius(e) {\n\treturn e.outerRadius;\n}\nfunction arcStartAngle(e) {\n\treturn e.startAngle;\n}\nfunction arcEndAngle(e) {\n\treturn e.endAngle;\n}\nfunction arcPadAngle(e) {\n\treturn e && e.padAngle;\n}\nfunction asin(e) {\n\treturn e >= 1 ? Et : e <= -1 ? -Et : Math.asin(e);\n}\nfunction intersect(e, t, n, r, i, a, o, s) {\n\tvar c = n - e, l = r - t, u = o - i, d = s - a, f = (u * (t - a) - d * (e - i)) / (d * c - u * l);\n\treturn [e + f * c, t + f * l];\n}\nfunction cornerTangents(e, t, n, r, i, a, o) {\n\tvar s = e - n, c = t - r, l = (o ? a : -a) / Math.sqrt(s * s + c * c), u = l * c, d = -l * s, f = e + u, p = t + d, m = n + u, h = r + d, g = (f + m) / 2, _ = (p + h) / 2, v = m - f, b = h - p, S = v * v + b * b, C = i - a, w = f * h - m * p, T = (b < 0 ? -1 : 1) * Math.sqrt(Math.max(0, C * C * S - w * w)), E = (w * b - v * T) / S, D = (-w * v - b * T) / S, O = (w * b + v * T) / S, k = (-w * v + b * T) / S, A = E - g, j = D - _, M = O - g, N = k - _;\n\treturn A * A + j * j > M * M + N * N && (E = O, D = k), {\n\t\tcx: E,\n\t\tcy: D,\n\t\tx01: -u,\n\t\ty01: -d,\n\t\tx11: E * (i / C - 1),\n\t\ty11: D * (i / C - 1)\n\t};\n}\nfunction arc_default() {\n\tvar e = arcInnerRadius, t = arcOuterRadius, n = constant_default(0), r = null, i = arcStartAngle, a = arcEndAngle, o = arcPadAngle, s = null;\n\tfunction arc() {\n\t\tvar c, l, u = +e.apply(this, arguments), d = +t.apply(this, arguments), f = i.apply(this, arguments) - Et, p = a.apply(this, arguments) - Et, m = Math.abs(p - f), h = p > f;\n\t\tif (s ||= c = path(), d < u && (l = d, d = u, u = l), !(d > 1e-12)) s.moveTo(0, 0);\n\t\telse if (m > Dt - 1e-12) s.moveTo(d * Math.cos(f), d * Math.sin(f)), s.arc(0, 0, d, f, p, !h), u > 1e-12 && (s.moveTo(u * Math.cos(p), u * Math.sin(p)), s.arc(0, 0, u, p, f, h));\n\t\telse {\n\t\t\tvar g = f, _ = p, v = f, b = p, S = m, C = m, w = o.apply(this, arguments) / 2, T = w > 1e-12 && (r ? +r.apply(this, arguments) : Math.sqrt(u * u + d * d)), E = Math.min(Math.abs(d - u) / 2, +n.apply(this, arguments)), D = E, O = E, k, A;\n\t\t\tif (T > 1e-12) {\n\t\t\t\tvar j = asin(T / u * Math.sin(w)), M = asin(T / d * Math.sin(w));\n\t\t\t\t(S -= j * 2) > 1e-12 ? (j *= h ? 1 : -1, v += j, b -= j) : (S = 0, v = b = (f + p) / 2), (C -= M * 2) > 1e-12 ? (M *= h ? 1 : -1, g += M, _ -= M) : (C = 0, g = _ = (f + p) / 2);\n\t\t\t}\n\t\t\tvar N = d * Math.cos(g), P = d * Math.sin(g), F = u * Math.cos(b), I = u * Math.sin(b);\n\t\t\tif (E > 1e-12) {\n\t\t\t\tvar L = d * Math.cos(_), R = d * Math.sin(_), z = u * Math.cos(v), ee = u * Math.sin(v);\n\t\t\t\tif (m < Tt) {\n\t\t\t\t\tvar B = S > 1e-12 ? intersect(N, P, z, ee, L, R, F, I) : [F, I], V = N - B[0], te = P - B[1], ne = L - B[0], re = R - B[1], ie = 1 / Math.sin(Math.acos((V * ne + te * re) / (Math.sqrt(V * V + te * te) * Math.sqrt(ne * ne + re * re))) / 2), ae = Math.sqrt(B[0] * B[0] + B[1] * B[1]);\n\t\t\t\t\tD = Math.min(E, (u - ae) / (ie - 1)), O = Math.min(E, (d - ae) / (ie + 1));\n\t\t\t\t}\n\t\t\t}\n\t\t\tC > 1e-12 ? O > 1e-12 ? (k = cornerTangents(z, ee, N, P, d, O, h), A = cornerTangents(L, R, F, I, d, O, h), s.moveTo(k.cx + k.x01, k.cy + k.y01), O < E ? s.arc(k.cx, k.cy, O, Math.atan2(k.y01, k.x01), Math.atan2(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, O, Math.atan2(k.y01, k.x01), Math.atan2(k.y11, k.x11), !h), s.arc(0, 0, d, Math.atan2(k.cy + k.y11, k.cx + k.x11), Math.atan2(A.cy + A.y11, A.cx + A.x11), !h), s.arc(A.cx, A.cy, O, Math.atan2(A.y11, A.x11), Math.atan2(A.y01, A.x01), !h))) : (s.moveTo(N, P), s.arc(0, 0, d, g, _, !h)) : s.moveTo(N, P), !(u > 1e-12) || !(S > 1e-12) ? s.lineTo(F, I) : D > 1e-12 ? (k = cornerTangents(F, I, L, R, u, -D, h), A = cornerTangents(N, P, z, ee, u, -D, h), s.lineTo(k.cx + k.x01, k.cy + k.y01), D < E ? s.arc(k.cx, k.cy, D, Math.atan2(k.y01, k.x01), Math.atan2(A.y01, A.x01), !h) : (s.arc(k.cx, k.cy, D, Math.atan2(k.y01, k.x01), Math.atan2(k.y11, k.x11), !h), s.arc(0, 0, u, Math.atan2(k.cy + k.y11, k.cx + k.x11), Math.atan2(A.cy + A.y11, A.cx + A.x11), h), s.arc(A.cx, A.cy, D, Math.atan2(A.y11, A.x11), Math.atan2(A.y01, A.x01), !h))) : s.arc(0, 0, u, b, v, h);\n\t\t}\n\t\tif (s.closePath(), c) return s = null, c + \"\" || null;\n\t}\n\treturn arc.centroid = function() {\n\t\tvar n = (+e.apply(this, arguments) + +t.apply(this, arguments)) / 2, r = (+i.apply(this, arguments) + +a.apply(this, arguments)) / 2 - Tt / 2;\n\t\treturn [Math.cos(r) * n, Math.sin(r) * n];\n\t}, arc.innerRadius = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default(+t), arc) : e;\n\t}, arc.outerRadius = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default(+e), arc) : t;\n\t}, arc.cornerRadius = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default(+e), arc) : n;\n\t}, arc.padRadius = function(e) {\n\t\treturn arguments.length ? (r = e == null ? null : typeof e == \"function\" ? e : constant_default(+e), arc) : r;\n\t}, arc.startAngle = function(e) {\n\t\treturn arguments.length ? (i = typeof e == \"function\" ? e : constant_default(+e), arc) : i;\n\t}, arc.endAngle = function(e) {\n\t\treturn arguments.length ? (a = typeof e == \"function\" ? e : constant_default(+e), arc) : a;\n\t}, arc.padAngle = function(e) {\n\t\treturn arguments.length ? (o = typeof e == \"function\" ? e : constant_default(+e), arc) : o;\n\t}, arc.context = function(e) {\n\t\treturn arguments.length ? (s = e ?? null, arc) : s;\n\t}, arc;\n}\n__name(arc_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/linear.js\nfunction Linear(e) {\n\tthis._context = e;\n}\nLinear.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tthis._context.lineTo(e, t);\n\t\t\t\tbreak;\n\t\t}\n\t}\n};\nfunction linear_default(e) {\n\treturn new Linear(e);\n}\n__name(linear_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/point.js\nfunction x(e) {\n\treturn e[0];\n}\nfunction y(e) {\n\treturn e[1];\n}\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/line.js\nfunction line_default() {\n\tvar e = x, t = y, n = constant_default(!0), r = null, i = linear_default, a = null;\n\tfunction line(o) {\n\t\tvar s, c = o.length, l, u = !1, d;\n\t\tfor (r ?? (a = i(d = path())), s = 0; s <= c; ++s) !(s < c && n(l = o[s], s, o)) === u && ((u = !u) ? a.lineStart() : a.lineEnd()), u && a.point(+e(l, s, o), +t(l, s, o));\n\t\tif (d) return a = null, d + \"\" || null;\n\t}\n\treturn line.x = function(t) {\n\t\treturn arguments.length ? (e = typeof t == \"function\" ? t : constant_default(+t), line) : e;\n\t}, line.y = function(e) {\n\t\treturn arguments.length ? (t = typeof e == \"function\" ? e : constant_default(+e), line) : t;\n\t}, line.defined = function(e) {\n\t\treturn arguments.length ? (n = typeof e == \"function\" ? e : constant_default(!!e), line) : n;\n\t}, line.curve = function(e) {\n\t\treturn arguments.length ? (i = e, r != null && (a = i(r)), line) : i;\n\t}, line.context = function(e) {\n\t\treturn arguments.length ? (e == null ? r = a = null : a = i(r = e), line) : r;\n\t}, line;\n}\n__name(line_default, \"default\"), curveRadial(linear_default);\nfunction Radial(e) {\n\tthis._curve = e;\n}\nRadial.prototype = {\n\tareaStart: function() {\n\t\tthis._curve.areaStart();\n\t},\n\tareaEnd: function() {\n\t\tthis._curve.areaEnd();\n\t},\n\tlineStart: function() {\n\t\tthis._curve.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tthis._curve.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._curve.point(t * Math.sin(e), t * -Math.cos(e));\n\t}\n};\nfunction curveRadial(e) {\n\tfunction radial(t) {\n\t\treturn new Radial(e(t));\n\t}\n\treturn radial._curve = e, radial;\n}\nMath.sqrt(1 / 3) * 2;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/symbol/star.js\nvar Ot = Math.sin(Tt / 10) / Math.sin(7 * Tt / 10);\nMath.sin(Dt / 10) * Ot, -Math.cos(Dt / 10) * Ot, Math.sqrt(3) / 2, (1 / Math.sqrt(12) / 2 + 1) * 3;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/noop.js\nfunction noop_default() {}\n__name(noop_default, \"default\");\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basis.js\nfunction point$3(e, t, n) {\n\te._context.bezierCurveTo((2 * e._x0 + e._x1) / 3, (2 * e._y0 + e._y1) / 3, (e._x0 + 2 * e._x1) / 3, (e._y0 + 2 * e._y1) / 3, (e._x0 + 4 * e._x1 + t) / 6, (e._y0 + 4 * e._y1 + n) / 6);\n}\n__name(point$3, \"point\");\nfunction Basis(e) {\n\tthis._context = e;\n}\nBasis.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 3: point$3(this, this._x1, this._y1);\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3, this._context.lineTo((5 * this._x0 + this._x1) / 6, (5 * this._y0 + this._y1) / 6);\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basisClosed.js\nfunction BasisClosed(e) {\n\tthis._context = e;\n}\nBasisClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x2, this._y2), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.moveTo((this._x2 + 2 * this._x3) / 3, (this._y2 + 2 * this._y3) / 3), this._context.lineTo((this._x3 + 2 * this._x2) / 3, (this._y3 + 2 * this._y2) / 3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2), this.point(this._x3, this._y3), this.point(this._x4, this._y4);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x2 = e, this._y2 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x4 = e, this._y4 = t, this._context.moveTo((this._x0 + 4 * this._x1 + e) / 6, (this._y0 + 4 * this._y1 + t) / 6);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/basisOpen.js\nfunction BasisOpen(e) {\n\tthis._context = e;\n}\nBasisOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3;\n\t\t\t\tvar n = (this._x0 + 4 * this._x1 + e) / 6, r = (this._y0 + 4 * this._y1 + t) / 6;\n\t\t\t\tthis._line ? this._context.lineTo(n, r) : this._context.moveTo(n, r);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$3(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t;\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/bundle.js\nfunction Bundle(e, t) {\n\tthis._basis = new Basis(e), this._beta = t;\n}\nBundle.prototype = {\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [], this._basis.lineStart();\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length - 1;\n\t\tif (n > 0) for (var r = e[0], i = t[0], a = e[n] - r, o = t[n] - i, s = -1, c; ++s <= n;) c = s / n, this._basis.point(this._beta * e[s] + (1 - this._beta) * (r + c * a), this._beta * t[s] + (1 - this._beta) * (i + c * o));\n\t\tthis._x = this._y = null, this._basis.lineEnd();\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n}, (function custom(e) {\n\tfunction bundle(t) {\n\t\treturn e === 1 ? new Basis(t) : new Bundle(t, e);\n\t}\n\treturn bundle.beta = function(e) {\n\t\treturn custom(+e);\n\t}, bundle;\n})(.85);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinal.js\nfunction point$2(e, t, n) {\n\te._context.bezierCurveTo(e._x1 + e._k * (e._x2 - e._x0), e._y1 + e._k * (e._y2 - e._y0), e._x2 + e._k * (e._x1 - t), e._y2 + e._k * (e._y1 - n), e._x2, e._y2);\n}\n__name(point$2, \"point\");\nfunction Cardinal(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinal.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint$2(this, this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._x1 = e, this._y1 = t;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new Cardinal(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinalClosed.js\nfunction CardinalClosed(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinalClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x3, this._y3), this.point(this._x4, this._y4), this.point(this._x5, this._y5);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._context.moveTo(this._x4 = e, this._y4 = t);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x5 = e, this._y5 = t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new CardinalClosed(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/cardinalOpen.js\nfunction CardinalOpen(e, t) {\n\tthis._context = e, this._k = (1 - t) / 6;\n}\nCardinalOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._line ? this._context.lineTo(this._x2, this._y2) : this._context.moveTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$2(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction cardinal(t) {\n\t\treturn new CardinalOpen(t, e);\n\t}\n\treturn cardinal.tension = function(e) {\n\t\treturn custom(+e);\n\t}, cardinal;\n})(0);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRom.js\nfunction point$1(e, t, n) {\n\tvar r = e._x1, i = e._y1, a = e._x2, o = e._y2;\n\tif (e._l01_a > 1e-12) {\n\t\tvar s = 2 * e._l01_2a + 3 * e._l01_a * e._l12_a + e._l12_2a, c = 3 * e._l01_a * (e._l01_a + e._l12_a);\n\t\tr = (r * s - e._x0 * e._l12_2a + e._x2 * e._l01_2a) / c, i = (i * s - e._y0 * e._l12_2a + e._y2 * e._l01_2a) / c;\n\t}\n\tif (e._l23_a > 1e-12) {\n\t\tvar l = 2 * e._l23_2a + 3 * e._l23_a * e._l12_a + e._l12_2a, u = 3 * e._l23_a * (e._l23_a + e._l12_a);\n\t\ta = (a * l + e._x1 * e._l23_2a - t * e._l12_2a) / u, o = (o * l + e._y1 * e._l23_2a - n * e._l12_2a) / u;\n\t}\n\te._context.bezierCurveTo(r, i, a, o, e._x2, e._y2);\n}\n__name(point$1, \"point\");\nfunction CatmullRom(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRom.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2: this._point = 3;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n};\nvar kt = (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRom(t, e) : new Cardinal(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRomClosed.js\nfunction CatmullRomClosed(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRomClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._x3 = this._x4 = this._x5 = this._y0 = this._y1 = this._y2 = this._y3 = this._y4 = this._y5 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 1:\n\t\t\t\tthis._context.moveTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x3, this._y3), this._context.closePath();\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.point(this._x3, this._y3), this.point(this._x4, this._y4), this.point(this._x5, this._y5);\n\t\t\t\tbreak;\n\t\t}\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._x3 = e, this._y3 = t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2, this._context.moveTo(this._x4 = e, this._y4 = t);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._x5 = e, this._y5 = t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRomClosed(t, e) : new CardinalClosed(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/catmullRomOpen.js\nfunction CatmullRomOpen(e, t) {\n\tthis._context = e, this._alpha = t;\n}\nCatmullRomOpen.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._x2 = this._y0 = this._y1 = this._y2 = NaN, this._l01_a = this._l12_a = this._l23_a = this._l01_2a = this._l12_2a = this._l23_2a = this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t(this._line || this._line !== 0 && this._point === 3) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tif (e = +e, t = +t, this._point) {\n\t\t\tvar n = this._x2 - e, r = this._y2 - t;\n\t\t\tthis._l23_a = Math.sqrt(this._l23_2a = (n * n + r * r) ** +this._alpha);\n\t\t}\n\t\tswitch (this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis._point = 2;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis._point = 3, this._line ? this._context.lineTo(this._x2, this._y2) : this._context.moveTo(this._x2, this._y2);\n\t\t\t\tbreak;\n\t\t\tcase 3: this._point = 4;\n\t\t\tdefault:\n\t\t\t\tpoint$1(this, e, t);\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = e, this._y0 = this._y1, this._y1 = this._y2, this._y2 = t;\n\t}\n}, (function custom(e) {\n\tfunction catmullRom(t) {\n\t\treturn e ? new CatmullRomOpen(t, e) : new CardinalOpen(t, 0);\n\t}\n\treturn catmullRom.alpha = function(e) {\n\t\treturn custom(+e);\n\t}, catmullRom;\n})(.5);\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/linearClosed.js\nfunction LinearClosed(e) {\n\tthis._context = e;\n}\nLinearClosed.prototype = {\n\tareaStart: noop_default,\n\tareaEnd: noop_default,\n\tlineStart: function() {\n\t\tthis._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tthis._point && this._context.closePath();\n\t},\n\tpoint: function(e, t) {\n\t\te = +e, t = +t, this._point ? this._context.lineTo(e, t) : (this._point = 1, this._context.moveTo(e, t));\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/monotone.js\nfunction sign(e) {\n\treturn e < 0 ? -1 : 1;\n}\nfunction slope3(e, t, n) {\n\tvar r = e._x1 - e._x0, i = t - e._x1, a = (e._y1 - e._y0) / (r || i < 0 && -0), o = (n - e._y1) / (i || r < 0 && -0), s = (a * i + o * r) / (r + i);\n\treturn (sign(a) + sign(o)) * Math.min(Math.abs(a), Math.abs(o), .5 * Math.abs(s)) || 0;\n}\nfunction slope2(e, t) {\n\tvar n = e._x1 - e._x0;\n\treturn n ? (3 * (e._y1 - e._y0) / n - t) / 2 : t;\n}\nfunction point(e, t, n) {\n\tvar r = e._x0, i = e._y0, a = e._x1, o = e._y1, s = (a - r) / 3;\n\te._context.bezierCurveTo(r + s, i + s * t, a - s, o - s * n, a, o);\n}\nfunction MonotoneX(e) {\n\tthis._context = e;\n}\nMonotoneX.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x0 = this._x1 = this._y0 = this._y1 = this._t0 = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\tswitch (this._point) {\n\t\t\tcase 2:\n\t\t\t\tthis._context.lineTo(this._x1, this._y1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tpoint(this, this._t0, slope2(this, this._t0));\n\t\t\t\tbreak;\n\t\t}\n\t\t(this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line = 1 - this._line;\n\t},\n\tpoint: function(e, t) {\n\t\tvar n = NaN;\n\t\tif (e = +e, t = +t, !(e === this._x1 && t === this._y1)) {\n\t\t\tswitch (this._point) {\n\t\t\t\tcase 0:\n\t\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 1:\n\t\t\t\t\tthis._point = 2;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 2:\n\t\t\t\t\tthis._point = 3, point(this, slope2(this, n = slope3(this, e, t)), n);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tpoint(this, this._t0, n = slope3(this, e, t));\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._x0 = this._x1, this._x1 = e, this._y0 = this._y1, this._y1 = t, this._t0 = n;\n\t\t}\n\t}\n};\nfunction MonotoneY(e) {\n\tthis._context = new ReflectContext(e);\n}\n(MonotoneY.prototype = Object.create(MonotoneX.prototype)).point = function(e, t) {\n\tMonotoneX.prototype.point.call(this, t, e);\n};\nfunction ReflectContext(e) {\n\tthis._context = e;\n}\nReflectContext.prototype = {\n\tmoveTo: function(e, t) {\n\t\tthis._context.moveTo(t, e);\n\t},\n\tclosePath: function() {\n\t\tthis._context.closePath();\n\t},\n\tlineTo: function(e, t) {\n\t\tthis._context.lineTo(t, e);\n\t},\n\tbezierCurveTo: function(e, t, n, r, i, a) {\n\t\tthis._context.bezierCurveTo(t, e, r, n, a, i);\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/natural.js\nfunction Natural(e) {\n\tthis._context = e;\n}\nNatural.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = [], this._y = [];\n\t},\n\tlineEnd: function() {\n\t\tvar e = this._x, t = this._y, n = e.length;\n\t\tif (n) if (this._line ? this._context.lineTo(e[0], t[0]) : this._context.moveTo(e[0], t[0]), n === 2) this._context.lineTo(e[1], t[1]);\n\t\telse for (var r = controlPoints(e), i = controlPoints(t), a = 0, o = 1; o < n; ++a, ++o) this._context.bezierCurveTo(r[0][a], i[0][a], r[1][a], i[1][a], e[o], t[o]);\n\t\t(this._line || this._line !== 0 && n === 1) && this._context.closePath(), this._line = 1 - this._line, this._x = this._y = null;\n\t},\n\tpoint: function(e, t) {\n\t\tthis._x.push(+e), this._y.push(+t);\n\t}\n};\nfunction controlPoints(e) {\n\tvar t, n = e.length - 1, r, i = Array(n), a = Array(n), o = Array(n);\n\tfor (i[0] = 0, a[0] = 2, o[0] = e[0] + 2 * e[1], t = 1; t < n - 1; ++t) i[t] = 1, a[t] = 4, o[t] = 4 * e[t] + 2 * e[t + 1];\n\tfor (i[n - 1] = 2, a[n - 1] = 7, o[n - 1] = 8 * e[n - 1] + e[n], t = 1; t < n; ++t) r = i[t] / a[t - 1], a[t] -= r, o[t] -= r * o[t - 1];\n\tfor (i[n - 1] = o[n - 1] / a[n - 1], t = n - 2; t >= 0; --t) i[t] = (o[t] - i[t + 1]) / a[t];\n\tfor (a[n - 1] = (e[n] + i[n - 1]) / 2, t = 0; t < n - 1; ++t) a[t] = 2 * e[t + 1] - i[t + 1];\n\treturn [i, a];\n}\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/node_modules/d3-shape/src/curve/step.js\nfunction Step$1(e, t) {\n\tthis._context = e, this._t = t;\n}\n__name(Step$1, \"Step\"), Step$1.prototype = {\n\tareaStart: function() {\n\t\tthis._line = 0;\n\t},\n\tareaEnd: function() {\n\t\tthis._line = NaN;\n\t},\n\tlineStart: function() {\n\t\tthis._x = this._y = NaN, this._point = 0;\n\t},\n\tlineEnd: function() {\n\t\t0 < this._t && this._t < 1 && this._point === 2 && this._context.lineTo(this._x, this._y), (this._line || this._line !== 0 && this._point === 1) && this._context.closePath(), this._line >= 0 && (this._t = 1 - this._t, this._line = 1 - this._line);\n\t},\n\tpoint: function(e, t) {\n\t\tswitch (e = +e, t = +t, this._point) {\n\t\t\tcase 0:\n\t\t\t\tthis._point = 1, this._line ? this._context.lineTo(e, t) : this._context.moveTo(e, t);\n\t\t\t\tbreak;\n\t\t\tcase 1: this._point = 2;\n\t\t\tdefault:\n\t\t\t\tif (this._t <= 0) this._context.lineTo(this._x, t), this._context.lineTo(e, t);\n\t\t\t\telse {\n\t\t\t\t\tvar n = this._x * (1 - this._t) + e * this._t;\n\t\t\t\t\tthis._context.lineTo(n, this._y), this._context.lineTo(n, t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tthis._x = e, this._y = t;\n\t}\n}, Array.prototype.slice;\n//#endregion\n//#region ../../node_modules/d3-svg-annotation/indexRollupNext.js\nvar At = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? function(e) {\n\treturn typeof e;\n} : function(e) {\n\treturn e && typeof Symbol == \"function\" && e.constructor === Symbol && e !== Symbol.prototype ? \"symbol\" : typeof e;\n}, classCallCheck = function(e, t) {\n\tif (!(e instanceof t)) throw TypeError(\"Cannot call a class as a function\");\n}, jt = function() {\n\tfunction defineProperties(e, t) {\n\t\tfor (var n = 0; n < t.length; n++) {\n\t\t\tvar r = t[n];\n\t\t\tr.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(e, r.key, r);\n\t\t}\n\t}\n\treturn function(e, t, n) {\n\t\treturn t && defineProperties(e.prototype, t), n && defineProperties(e, n), e;\n\t};\n}(), Y = Object.assign || function(e) {\n\tfor (var t = 1; t < arguments.length; t++) {\n\t\tvar n = arguments[t];\n\t\tfor (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);\n\t}\n\treturn e;\n}, X = function get(e, t, n) {\n\te === null && (e = Function.prototype);\n\tvar r = Object.getOwnPropertyDescriptor(e, t);\n\tif (r === void 0) {\n\t\tvar i = Object.getPrototypeOf(e);\n\t\treturn i === null ? void 0 : get(i, t, n);\n\t} else if (\"value\" in r) return r.value;\n\telse {\n\t\tvar a = r.get;\n\t\treturn a === void 0 ? void 0 : a.call(n);\n\t}\n}, inherits = function(e, t) {\n\tif (typeof t != \"function\" && t !== null) throw TypeError(\"Super expression must either be null or a function, not \" + typeof t);\n\te.prototype = Object.create(t && t.prototype, { constructor: {\n\t\tvalue: e,\n\t\tenumerable: !1,\n\t\twritable: !0,\n\t\tconfigurable: !0\n\t} }), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t);\n}, possibleConstructorReturn = function(e, t) {\n\tif (!e) throw ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n\treturn t && (typeof t == \"object\" || typeof t == \"function\") ? t : e;\n}, toConsumableArray = function(e) {\n\tif (Array.isArray(e)) {\n\t\tfor (var t = 0, n = Array(e.length); t < e.length; t++) n[t] = e[t];\n\t\treturn n;\n\t} else return Array.from(e);\n}, Mt = function() {\n\tfunction Annotation(e) {\n\t\tvar t = e.x, n = t === void 0 ? 0 : t, r = e.y, i = r === void 0 ? 0 : r, a = e.nx, o = e.ny, s = e.dy, c = s === void 0 ? 0 : s, l = e.dx, u = l === void 0 ? 0 : l, d = e.color, f = d === void 0 ? \"grey\" : d, p = e.data, m = e.type, h = e.subject, g = e.connector, _ = e.note, v = e.disable, b = e.id, S = e.className;\n\t\tclassCallCheck(this, Annotation), this._dx = a === void 0 ? u : a - n, this._dy = o === void 0 ? c : o - i, this._x = n, this._y = i, this._color = f, this.id = b, this._className = S || \"\", this._type = m || \"\", this.data = p, this.note = _ || {}, this.connector = g || {}, this.subject = h || {}, this.disable = v || [];\n\t}\n\treturn jt(Annotation, [\n\t\t{\n\t\t\tkey: \"updatePosition\",\n\t\t\tvalue: function updatePosition() {\n\t\t\t\tthis.type.setPosition && (this.type.setPosition(), this.type.subject && this.type.subject.selectAll(\":not(.handle)\").nodes().length !== 0 && this.type.redrawSubject());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"clearComponents\",\n\t\t\tvalue: function clearComponents() {\n\t\t\t\tthis.type.clearComponents && this.type.clearComponents();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateOffset\",\n\t\t\tvalue: function updateOffset() {\n\t\t\t\tthis.type.setOffset && (this.type.setOffset(), this.type.connector.selectAll(\":not(.handle)\").nodes().length !== 0 && this.type.redrawConnector(), this.type.redrawNote());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"className\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._className;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._className = e, this.type.setClassName && this.type.setClassName();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"type\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._type;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._type = e, this.clearComponents();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"x\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._x;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._x = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"y\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._y;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._y = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"color\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._color;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._color = e, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dx\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._dx;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dx = e, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dy\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this._dy;\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dy = e, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"nx\",\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dx = e - this._x, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"ny\",\n\t\t\tset: function set$$1(e) {\n\t\t\t\tthis._dy = e - this._y, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"offset\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._dx,\n\t\t\t\t\ty: this._dy\n\t\t\t\t};\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tvar t = e.x, n = e.y;\n\t\t\t\tthis._dx = t, this._dy = n, this.updateOffset();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"position\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._x,\n\t\t\t\t\ty: this._y\n\t\t\t\t};\n\t\t\t},\n\t\t\tset: function set$$1(e) {\n\t\t\t\tvar t = e.x, n = e.y;\n\t\t\t\tthis._x = t, this._y = n, this.updatePosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"translation\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn {\n\t\t\t\t\tx: this._x + this._dx,\n\t\t\t\t\ty: this._y + this._dy\n\t\t\t\t};\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"json\",\n\t\t\tget: function get$$1() {\n\t\t\t\tvar e = {\n\t\t\t\t\tx: this._x,\n\t\t\t\t\ty: this._y,\n\t\t\t\t\tdx: this._dx,\n\t\t\t\t\tdy: this._dy\n\t\t\t\t};\n\t\t\t\treturn this.data && Object.keys(this.data).length > 0 && (e.data = this.data), this.type && (e.type = this.type), this._className && (e.className = this._className), Object.keys(this.connector).length > 0 && (e.connector = this.connector), Object.keys(this.subject).length > 0 && (e.subject = this.subject), Object.keys(this.note).length > 0 && (e.note = this.note), e;\n\t\t\t}\n\t\t}\n\t]), Annotation;\n}(), Nt = function() {\n\tfunction AnnotationCollection(e) {\n\t\tvar t = e.annotations, n = e.accessors, r = e.accessorsInverse;\n\t\tclassCallCheck(this, AnnotationCollection), this.accessors = n, this.accessorsInverse = r, this.annotations = t;\n\t}\n\treturn jt(AnnotationCollection, [\n\t\t{\n\t\t\tkey: \"clearTypes\",\n\t\t\tvalue: function clearTypes(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type = void 0, t.subject = e && e.subject || t.subject, t.connector = e && e.connector || t.connector, t.note = e && e.note || t.note;\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPositionWithAccessors\",\n\t\t\tvalue: function setPositionWithAccessors() {\n\t\t\t\tvar e = this;\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type.setPositionWithAccessors(e.accessors);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"editMode\",\n\t\t\tvalue: function editMode(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && (t.type.editMode = e, t.type.updateEditMode());\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateDisable\",\n\t\t\tvalue: function updateDisable(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.disable = e, t.type && e.forEach(function(e) {\n\t\t\t\t\t\tt.type[e] && (t.type[e].remove && t.type[e].remove(), t.type[e] = void 0);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateTextWrap\",\n\t\t\tvalue: function updateTextWrap(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && t.type.updateTextWrap && t.type.updateTextWrap(e);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateText\",\n\t\t\tvalue: function updateText() {\n\t\t\t\tthis.annotations.forEach(function(e) {\n\t\t\t\t\te.type && e.type.drawText && e.type.drawText();\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateNotePadding\",\n\t\t\tvalue: function updateNotePadding(e) {\n\t\t\t\tthis.annotations.forEach(function(t) {\n\t\t\t\t\tt.type && (t.type.notePadding = e);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"json\",\n\t\t\tget: function get$$1() {\n\t\t\t\tvar e = this;\n\t\t\t\treturn this.annotations.map(function(t) {\n\t\t\t\t\tvar n = t.json;\n\t\t\t\t\treturn e.accessorsInverse && t.data && (n.data = {}, Object.keys(e.accessorsInverse).forEach(function(r) {\n\t\t\t\t\t\tn.data[r] = e.accessorsInverse[r]({\n\t\t\t\t\t\t\tx: t.x,\n\t\t\t\t\t\t\ty: t.y\n\t\t\t\t\t\t});\n\t\t\t\t\t})), n;\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"noteNodes\",\n\t\t\tget: function get$$1() {\n\t\t\t\treturn this.annotations.map(function(e) {\n\t\t\t\t\treturn Y({}, e.type.getNoteBBoxOffset(), {\n\t\t\t\t\t\tpositionX: e.x,\n\t\t\t\t\t\tpositionY: e.y\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t]), AnnotationCollection;\n}(), Pt = function pointHandle(e) {\n\tvar t = e.cx, n = t === void 0 ? 0 : t, r = e.cy;\n\treturn { move: {\n\t\tx: n,\n\t\ty: r === void 0 ? 0 : r\n\t} };\n}, Ft = function circleHandles(e) {\n\tvar t = e.cx, n = t === void 0 ? 0 : t, r = e.cy, i = r === void 0 ? 0 : r, a = e.r1, o = e.r2, s = e.padding, c = { move: {\n\t\tx: n,\n\t\ty: i\n\t} };\n\treturn a !== void 0 && (c.r1 = {\n\t\tx: n + a / Math.sqrt(2),\n\t\ty: i + a / Math.sqrt(2)\n\t}), o !== void 0 && (c.r2 = {\n\t\tx: n + o / Math.sqrt(2),\n\t\ty: i + o / Math.sqrt(2)\n\t}), s !== void 0 && (c.padding = {\n\t\tx: n + a + s,\n\t\ty: i\n\t}), c;\n}, It = function addHandles(e) {\n\tvar t = e.group, n = e.handles, r = e.r, i = r === void 0 ? 10 : r, a = t.selectAll(\"circle.handle\").data(n);\n\ta.enter().append(\"circle\").attr(\"class\", \"handle\").attr(\"fill\", \"grey\").attr(\"fill-opacity\", .1).attr(\"cursor\", \"move\").attr(\"stroke-dasharray\", 5).attr(\"stroke\", \"grey\").call(b().container(z(\"g.annotations\").node()).on(\"start\", function(e) {\n\t\treturn e.start && e.start(e);\n\t}).on(\"drag\", function(e) {\n\t\treturn e.drag && e.drag(e);\n\t}).on(\"end\", function(e) {\n\t\treturn e.end && e.end(e);\n\t})), t.selectAll(\"circle.handle\").attr(\"cx\", function(e) {\n\t\treturn e.x;\n\t}).attr(\"cy\", function(e) {\n\t\treturn e.y;\n\t}).attr(\"r\", function(e) {\n\t\treturn e.r || i;\n\t}).attr(\"class\", function(e) {\n\t\treturn \"handle \" + (e.className || \"\");\n\t}), a.exit().remove();\n}, Lt = function leftRightDynamic(e, t) {\n\treturn (e === \"dynamic\" || e === \"left\" || e === \"right\") && (e = t < 0 ? \"top\" : \"bottom\"), e;\n}, Rt = function topBottomDynamic(e, t) {\n\treturn (e === \"dynamic\" || e === \"top\" || e === \"bottom\") && (e = t < 0 ? \"right\" : \"left\"), e;\n}, zt = [\n\t\"topBottom\",\n\t\"top\",\n\t\"bottom\"\n], Bt = [\n\t\"leftRight\",\n\t\"left\",\n\t\"right\"\n], noteAlignment = (function(e) {\n\tvar t = e.padding, n = t === void 0 ? 0 : t, r = e.bbox, i = r === void 0 ? {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t} : r, a = e.align, o = e.orientation, s = e.offset, c = s === void 0 ? {\n\t\tx: 0,\n\t\ty: 0\n\t} : s, l = -i.x, u = 0;\n\treturn zt.indexOf(o) === -1 ? Bt.indexOf(o) !== -1 && (a = Lt(a, c.y), c.x < 0 && o === \"leftRight\" || o === \"left\" ? l -= i.width + n : l += n, a === \"middle\" ? u -= i.height / 2 : a === \"top\" && (u -= i.height)) : (a = Rt(a, c.x), c.y < 0 && o === \"topBottom\" || o === \"top\" ? u -= i.height + n : u += n, a === \"middle\" ? l -= i.width / 2 : a === \"right\" && (l -= i.width)), {\n\t\tx: l,\n\t\ty: u\n\t};\n}), Z = function lineBuilder(e) {\n\tvar t = e.data, n = e.curve, r = n === void 0 ? linear_default : n, i = e.canvasContext, a = e.className, o = e.classID, s = line_default().curve(r), c = {\n\t\ttype: \"path\",\n\t\tclassName: a,\n\t\tclassID: o,\n\t\tdata: t\n\t};\n\treturn i ? (s.context(i), c.pathMethods = s) : c.attrs = { d: s(t) }, c;\n}, Vt = function arcBuilder(e) {\n\tvar t = e.data, n = e.canvasContext, r = {\n\t\ttype: \"path\",\n\t\tclassName: e.className,\n\t\tclassID: e.classID,\n\t\tdata: t\n\t}, i = arc_default().innerRadius(t.innerRadius || 0).outerRadius(t.outerRadius || t.radius || 2).startAngle(t.startAngle || 0).endAngle(t.endAngle || 2 * Math.PI);\n\treturn n ? (i.context(n), r.pathMethods = lineGen) : r.attrs = { d: i() }, r;\n}, noteVertical = (function(e) {\n\tvar t = e.align, n = e.x, r = n === void 0 ? 0 : n, i = e.y, a = i === void 0 ? 0 : i, o = e.bbox, s = e.offset;\n\treturn t = Lt(t, s.y), t === \"top\" ? a -= o.height : t === \"middle\" && (a -= o.height / 2), { components: [Z({\n\t\tdata: [[r, a], [r, a + o.height]],\n\t\tclassName: \"note-line\"\n\t})] };\n}), noteHorizontal = (function(e) {\n\tvar t = e.align, n = e.x, r = n === void 0 ? 0 : n, i = e.y, a = i === void 0 ? 0 : i, o = e.offset, s = e.bbox;\n\treturn t = Rt(t, o.x), t === \"right\" ? r -= s.width : t === \"middle\" && (r -= s.width / 2), { components: [Z({\n\t\tdata: [[r, a], [r + s.width, a]],\n\t\tclassName: \"note-line\"\n\t})] };\n}), Ht = function lineSetup(e) {\n\tvar t = e.type, n = e.subjectType, r = t.annotation, i = r.position, a = r.x - i.x, o = a + r.dx, s = r.y - i.y, c = s + r.dy, l = r.subject;\n\tif (n === \"circle\" && (l.outerRadius || l.radius)) {\n\t\tvar u = Math.sqrt((a - o) * (a - o) + (s - c) * (s - c)), d = Math.asin(-c / u), f = l.outerRadius || l.radius + (l.radiusPadding || 0);\n\t\ta = Math.abs(Math.cos(d) * f) * (o < 0 ? -1 : 1), s = Math.abs(Math.sin(d) * f) * (c < 0 ? -1 : 1);\n\t}\n\tif (n === \"rect\") {\n\t\tvar p = l.width, m = l.height;\n\t\t(p > 0 && r.dx > 0 || p < 0 && r.dx < 0) && (a = Math.abs(p) > Math.abs(r.dx) ? p / 2 : p), (m > 0 && r.dy > 0 || m < 0 && r.dy < 0) && (s = Math.abs(m) > Math.abs(r.dy) ? m / 2 : m), a === p / 2 && s === m / 2 && (a = o, s = c);\n\t}\n\treturn [[a, s], [o, c]];\n}, connectorLine = (function(e) {\n\treturn { components: [Z({\n\t\tdata: Ht(e),\n\t\tclassName: \"connector\"\n\t})] };\n}), connectorElbow = (function(e) {\n\tvar t = e.type, n = e.subjectType, r = t.annotation, i = r.position, a = r.x - i.x, o = a + r.dx, s = r.y - i.y, c = s + r.dy, l = r.subject;\n\tif (n === \"rect\") {\n\t\tvar u = l.width, d = l.height;\n\t\t(u > 0 && r.dx > 0 || u < 0 && r.dx < 0) && (a = Math.abs(u) > Math.abs(r.dx) ? u / 2 : u), (d > 0 && r.dy > 0 || d < 0 && r.dy < 0) && (s = Math.abs(d) > Math.abs(r.dy) ? d / 2 : d), a === u / 2 && s === d / 2 && (a = o, s = c);\n\t}\n\tvar f = [[a, s], [o, c]], p = c - s, m = o - a, h = o, g = c, _ = c < s && o > a || o < a && c > s ? -1 : 1;\n\tif (Math.abs(m) < Math.abs(p) ? (h = o, g = s + m * _) : (g = c, h = a + p * _), n === \"circle\" && (l.outerRadius || l.radius)) {\n\t\tvar v = (l.outerRadius || l.radius) + (l.radiusPadding || 0), b = v / Math.sqrt(2);\n\t\tif (Math.abs(m) > b && Math.abs(p) > b) a = b * (o < 0 ? -1 : 1), s = b * (c < 0 ? -1 : 1), f = [\n\t\t\t[a, s],\n\t\t\t[h, g],\n\t\t\t[o, c]\n\t\t];\n\t\telse if (Math.abs(m) > Math.abs(p)) {\n\t\t\tvar S = Math.asin(-c / v);\n\t\t\ta = Math.abs(Math.cos(S) * v) * (o < 0 ? -1 : 1), f = [[a, c], [o, c]];\n\t\t} else {\n\t\t\tvar C = Math.acos(o / v);\n\t\t\ts = Math.abs(Math.sin(C) * v) * (c < 0 ? -1 : 1), f = [[o, s], [o, c]];\n\t\t}\n\t} else f = [\n\t\t[a, s],\n\t\t[h, g],\n\t\t[o, c]\n\t];\n\treturn { components: [Z({\n\t\tdata: f,\n\t\tclassName: \"connector\"\n\t})] };\n}), connectorCurve = (function(e) {\n\tvar t = e.type, n = e.connectorData, r = e.subjectType;\n\tn ||= {}, (!n.points || typeof n.points == \"number\") && (n.points = Ut(t.annotation.offset, n.points)), n.curve ||= kt;\n\tvar i = [];\n\tif (t.editMode) {\n\t\tvar a = n.points.map(function(e, t) {\n\t\t\treturn Y({}, Pt({\n\t\t\t\tcx: e[0],\n\t\t\t\tcy: e[1]\n\t\t\t}), { index: t });\n\t\t}), o = function updatePoint(e) {\n\t\t\tn.points[e][0] += S.dx, n.points[e][1] += S.dy, t.redrawConnector();\n\t\t};\n\t\ti = t.mapHandles(a.map(function(e) {\n\t\t\treturn Y({}, e.move, { drag: o.bind(t, e.index) });\n\t\t}));\n\t}\n\tvar s = Ht({\n\t\ttype: t,\n\t\tsubjectType: r\n\t});\n\treturn s = [s[0]].concat(toConsumableArray(n.points), [s[1]]), {\n\t\tcomponents: [Z({\n\t\t\tdata: s,\n\t\t\tcurve: n.curve,\n\t\t\tclassName: \"connector\"\n\t\t})],\n\t\thandles: i\n\t};\n}), Ut = function createPoints(e) {\n\tfor (var t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 2, n = {\n\t\tx: e.x / (t + 1),\n\t\ty: e.y / (t + 1)\n\t}, r = [], i = 1; i <= t; i++) r.push([n.x * i + i % 2 * 20, n.y * i - i % 2 * 20]);\n\treturn r;\n}, connectorArrow = (function(e) {\n\tvar t = e.annotation, n = e.start, r = e.end, i = e.scale, a = i === void 0 ? 1 : i, o = t.position;\n\tn = n ? [-r[0] + n[0], -r[1] + n[1]] : [t.dx, t.dy], r ||= [t.x - o.x, t.y - o.y];\n\tvar s = r[0], c = r[1], l = n[0], u = n[1], d = 10 * a, f = 16 / 180 * Math.PI, p = Math.atan(u / l);\n\treturn l < 0 && (p += Math.PI), { components: [Z({\n\t\tdata: [\n\t\t\t[s, c],\n\t\t\t[Math.cos(p + f) * d + s, Math.sin(p + f) * d + c],\n\t\t\t[Math.cos(p - f) * d + s, Math.sin(p - f) * d + c],\n\t\t\t[s, c]\n\t\t],\n\t\tclassName: \"connector-end connector-arrow\",\n\t\tclassID: \"connector-end\"\n\t})] };\n}), connectorDot = (function(e) {\n\tvar t = e.line, n = e.scale, r = Vt({\n\t\tclassName: \"connector-end connector-dot\",\n\t\tclassID: \"connector-end\",\n\t\tdata: { radius: 3 * Math.sqrt(n === void 0 ? 1 : n) }\n\t});\n\treturn r.attrs.transform = \"translate(\" + t.data[0][0] + \", \" + t.data[0][1] + \")\", { components: [r] };\n}), subjectCircle = (function(e) {\n\tvar t = e.subjectData, n = e.type;\n\t!t.radius && !t.outerRadius && (t.radius = 20);\n\tvar r = [], i = Vt({\n\t\tdata: t,\n\t\tclassName: \"subject\"\n\t});\n\tif (n.editMode) {\n\t\tvar a = Ft({\n\t\t\tr1: i.data.outerRadius || i.data.radius,\n\t\t\tr2: i.data.innerRadius,\n\t\t\tpadding: t.radiusPadding\n\t\t}), o = function updateRadius(e) {\n\t\t\tt[e] = t[e] + S.dx * Math.sqrt(2), n.redrawSubject(), n.redrawConnector();\n\t\t}, s = [Y({}, a.r1, { drag: o.bind(n, t.outerRadius === void 0 ? \"radius\" : \"outerRadius\") })];\n\t\tt.innerRadius && s.push(Y({}, a.r2, { drag: o.bind(n, \"innerRadius\") })), r = n.mapHandles(s);\n\t}\n\treturn i.attrs[\"fill-opacity\"] = 0, {\n\t\tcomponents: [i],\n\t\thandles: r\n\t};\n}), subjectRect = (function(e) {\n\tvar t = e.subjectData, n = e.type;\n\tt.width ||= 100, t.height ||= 100;\n\tvar r = [], i = t.width, a = t.height, o = Z({\n\t\tdata: [\n\t\t\t[0, 0],\n\t\t\t[i, 0],\n\t\t\t[i, a],\n\t\t\t[0, a],\n\t\t\t[0, 0]\n\t\t],\n\t\tclassName: \"subject\"\n\t});\n\tif (n.editMode) {\n\t\tvar s = [{\n\t\t\tx: i,\n\t\t\ty: a / 2,\n\t\t\tdrag: function updateWidth() {\n\t\t\t\tt.width = S.x, n.redrawSubject(), n.redrawConnector();\n\t\t\t}.bind(n)\n\t\t}, {\n\t\t\tx: i / 2,\n\t\t\ty: a,\n\t\t\tdrag: function updateHeight() {\n\t\t\t\tt.height = S.y, n.redrawSubject(), n.redrawConnector();\n\t\t\t}.bind(n)\n\t\t}];\n\t\tr = n.mapHandles(s);\n\t}\n\treturn o.attrs[\"fill-opacity\"] = .1, {\n\t\tcomponents: [o],\n\t\thandles: r\n\t};\n}), subjectThreshold = (function(e) {\n\tvar t = e.subjectData, n = e.type.annotation.position, r = (t.x1 === void 0 ? n.x : t.x1) - n.x, i = (t.x2 === void 0 ? n.x : t.x2) - n.x, a = (t.y1 === void 0 ? n.y : t.y1) - n.y, o = (t.y2 === void 0 ? n.y : t.y2) - n.y;\n\treturn { components: [Z({\n\t\tdata: [[r, a], [i, o]],\n\t\tclassName: \"subject\"\n\t})] };\n}), subjectBadge = (function(e) {\n\tvar t = e.subjectData, n = t === void 0 ? {} : t, r = e.type, i = r === void 0 ? {} : r, a = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, o = i.typeSettings && i.typeSettings.subject;\n\tn.radius || (o && o.radius ? n.radius = o.radius : n.radius = 14), n.x || o && o.x && (n.x = o.x), n.y || o && o.y && (n.y = o.y);\n\tvar s = [], c = [], l = n.radius, u = l * .7, d = 0, f = 0, p = Math.sqrt(2) * l, m = {\n\t\txleftcorner: -l,\n\t\txrightcorner: l,\n\t\tytopcorner: -l,\n\t\tybottomcorner: l,\n\t\txleft: -p,\n\t\txright: p,\n\t\tytop: -p,\n\t\tybottom: p\n\t};\n\tn.x && !n.y ? d = m[\"x\" + n.x] : n.y && !n.x ? f = m[\"y\" + n.y] : n.x && n.y && (d = m[\"x\" + n.x + \"corner\"], f = m[\"y\" + n.y + \"corner\"]);\n\tvar h = \"translate(\" + d + \", \" + f + \")\", g = Vt({\n\t\tclassName: \"subject\",\n\t\tdata: { radius: l }\n\t});\n\tg.attrs.transform = h, g.attrs.fill = a.color, g.attrs[\"stroke-linecap\"] = \"round\", g.attrs[\"stroke-width\"] = \"3px\";\n\tvar _ = Vt({\n\t\tclassName: \"subject-ring\",\n\t\tdata: {\n\t\t\touterRadius: l,\n\t\t\tinnerRadius: u\n\t\t}\n\t});\n\t_.attrs.transform = h, _.attrs[\"stroke-width\"] = \"3px\", _.attrs.fill = \"white\";\n\tvar v = void 0;\n\tif (d && f || !d && !f) v = Z({\n\t\tclassName: \"subject-pointer\",\n\t\tdata: [\n\t\t\t[0, 0],\n\t\t\t[d || 0, 0],\n\t\t\t[0, f || 0],\n\t\t\t[0, 0]\n\t\t]\n\t});\n\telse if (d || f) {\n\t\tvar b = function notCornerPointerXY(e) {\n\t\t\tvar t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 1;\n\t\t\treturn e && e / Math.sqrt(2) / Math.sqrt(2) || t * l / Math.sqrt(2);\n\t\t};\n\t\tv = Z({\n\t\t\tclassName: \"subject-pointer\",\n\t\t\tdata: [\n\t\t\t\t[0, 0],\n\t\t\t\t[b(d), b(f)],\n\t\t\t\t[b(d, -1), b(f, -1)],\n\t\t\t\t[0, 0]\n\t\t\t]\n\t\t});\n\t}\n\tif (v && (v.attrs.fill = a.color, v.attrs[\"stroke-linecap\"] = \"round\", v.attrs[\"stroke-width\"] = \"3px\", c.push(v)), i.editMode) {\n\t\tvar C = {\n\t\t\tx: d * 2,\n\t\t\ty: f * 2,\n\t\t\tdrag: function dragBadge() {\n\t\t\t\tn.x = S.x < -l * 2 ? \"left\" : S.x > l * 2 ? \"right\" : void 0, n.y = S.y < -l * 2 ? \"top\" : S.y > l * 2 ? \"bottom\" : void 0, i.redrawSubject();\n\t\t\t}.bind(i)\n\t\t};\n\t\t!C.x && !C.y && (C.y = -l), s = i.mapHandles([C]);\n\t}\n\tvar w = void 0;\n\treturn n.text && (w = {\n\t\ttype: \"text\",\n\t\tclassName: \"badge-text\",\n\t\tattrs: {\n\t\t\tfill: \"white\",\n\t\t\tstroke: \"none\",\n\t\t\t\"font-size\": \".7em\",\n\t\t\ttext: n.text,\n\t\t\t\"text-anchor\": \"middle\",\n\t\t\tdy: \".25em\",\n\t\t\tx: d,\n\t\t\ty: f\n\t\t}\n\t}), c.push(g), c.push(_), c.push(w), {\n\t\tcomponents: c,\n\t\thandles: s\n\t};\n}), Wt = function() {\n\tfunction Type(e) {\n\t\tvar t = e.a, n = e.annotation, r = e.editMode, i = e.dispatcher, a = e.notePadding, o = e.accessors;\n\t\tif (classCallCheck(this, Type), this.a = t, this.note = n.disable.indexOf(\"note\") === -1 && t.select(\"g.annotation-note\"), this.noteContent = this.note && t.select(\"g.annotation-note-content\"), this.connector = n.disable.indexOf(\"connector\") === -1 && t.select(\"g.annotation-connector\"), this.subject = n.disable.indexOf(\"subject\") === -1 && t.select(\"g.annotation-subject\"), this.dispatcher = i, i) {\n\t\t\tvar s = Yt.bind(null, i, n);\n\t\t\ts({\n\t\t\t\tcomponent: this.note,\n\t\t\t\tname: \"note\"\n\t\t\t}), s({\n\t\t\t\tcomponent: this.connector,\n\t\t\t\tname: \"connector\"\n\t\t\t}), s({\n\t\t\t\tcomponent: this.subject,\n\t\t\t\tname: \"subject\"\n\t\t\t});\n\t\t}\n\t\tthis.annotation = n, this.editMode = n.editMode || r, this.notePadding = a === void 0 ? 3 : a, this.offsetCornerX = 0, this.offsetCornerY = 0, o && n.data && this.init(o);\n\t}\n\treturn jt(Type, [\n\t\t{\n\t\t\tkey: \"init\",\n\t\t\tvalue: function init(e) {\n\t\t\t\tthis.annotation.x || this.mapX(e), this.annotation.y || this.mapY(e);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapY\",\n\t\t\tvalue: function mapY(e) {\n\t\t\t\te.y && (this.annotation.y = e.y(this.annotation.data));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapX\",\n\t\t\tvalue: function mapX(e) {\n\t\t\t\te.x && (this.annotation.x = e.x(this.annotation.data));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"updateEditMode\",\n\t\t\tvalue: function updateEditMode() {\n\t\t\t\tthis.a.selectAll(\"circle.handle\").remove();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawOnSVG\",\n\t\t\tvalue: function drawOnSVG(e, t) {\n\t\t\t\tvar n = this;\n\t\t\t\tArray.isArray(t) || (t = [t]), t.filter(function(e) {\n\t\t\t\t\treturn e;\n\t\t\t\t}).forEach(function(t) {\n\t\t\t\t\tvar r = t.type, i = t.className, a = t.attrs, o = t.handles, s = t.classID;\n\t\t\t\t\tif (r === \"handle\") It({\n\t\t\t\t\t\tgroup: e,\n\t\t\t\t\t\tr: a && a.r,\n\t\t\t\t\t\thandles: o\n\t\t\t\t\t});\n\t\t\t\t\telse {\n\t\t\t\t\t\tQ(e, [n.annotation], r, i, s);\n\t\t\t\t\t\tfor (var c = e.select(r + \".\" + (s || i)), l = Object.keys(a), u = [], d = c.node().attributes, f = d.length - 1; f >= 0; f--) {\n\t\t\t\t\t\t\tvar p = d[f].name;\n\t\t\t\t\t\t\tl.indexOf(p) === -1 && p !== \"class\" && u.push(p);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tl.forEach(function(e) {\n\t\t\t\t\t\t\te === \"text\" ? c.text(a[e]) : c.attr(e, a[e]);\n\t\t\t\t\t\t}), u.forEach(function(e) {\n\t\t\t\t\t\t\treturn c.attr(e, null);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"getNoteBBox\",\n\t\t\tvalue: function getNoteBBox() {\n\t\t\t\treturn Zt(this.note, \".annotation-note-content text\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"getNoteBBoxOffset\",\n\t\t\tvalue: function getNoteBBoxOffset() {\n\t\t\t\tvar e = Zt(this.note, \".annotation-note-content\"), t = this.noteContent.attr(\"transform\").split(/\\(|\\,|\\)/g);\n\t\t\t\treturn e.offsetCornerX = parseFloat(t[1]) + this.annotation.dx, e.offsetCornerY = parseFloat(t[2]) + this.annotation.dy, e.offsetX = this.annotation.dx, e.offsetY = this.annotation.dy, e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawSubject\",\n\t\t\tvalue: function drawSubject() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.subject, r = t.type, i = {\n\t\t\t\t\ttype: this,\n\t\t\t\t\tsubjectData: n\n\t\t\t\t}, a = {};\n\t\t\t\tr === \"circle\" ? a = subjectCircle(i) : r === \"rect\" ? a = subjectRect(i) : r === \"threshold\" ? a = subjectThreshold(i) : r === \"badge\" && (a = subjectBadge(i, this.annotation));\n\t\t\t\tvar o = a, s = o.components, c = s === void 0 ? [] : s, l = o.handles, u = l === void 0 ? [] : l;\n\t\t\t\treturn c.forEach(function(t) {\n\t\t\t\t\tt && t.attrs && !t.attrs.stroke && (t.attrs.stroke = e.annotation.color);\n\t\t\t\t}), this.editMode && (u = u.concat(this.mapHandles([{ drag: this.dragSubject.bind(this) }])), c.push({\n\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\thandles: u\n\t\t\t\t})), c;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawConnector\",\n\t\t\tvalue: function drawConnector() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.connector, r = n.type || t.type, i = {\n\t\t\t\t\ttype: this,\n\t\t\t\t\tconnectorData: n\n\t\t\t\t};\n\t\t\t\ti.subjectType = this.typeSettings && this.typeSettings.subject && this.typeSettings.subject.type;\n\t\t\t\tvar a = {};\n\t\t\t\ta = r === \"curve\" ? connectorCurve(i) : r === \"elbow\" ? connectorElbow(i) : connectorLine(i);\n\t\t\t\tvar o = a, s = o.components, c = s === void 0 ? [] : s, l = o.handles, u = l === void 0 ? [] : l, d = c[0];\n\t\t\t\td && (d.attrs.stroke = this.annotation.color, d.attrs.fill = \"none\");\n\t\t\t\tvar f = n.end || t.end, p = {};\n\t\t\t\tif (f === \"arrow\") {\n\t\t\t\t\tvar m = d.data[1], h = d.data[0];\n\t\t\t\t\tMath.sqrt((m[0] - h[0]) ** 2 + (m[1] - h[1]) ** 2) < 5 && d.data[2] && (m = d.data[2]), p = connectorArrow({\n\t\t\t\t\t\tannotation: this.annotation,\n\t\t\t\t\t\tstart: m,\n\t\t\t\t\t\tend: h,\n\t\t\t\t\t\tscale: n.endScale\n\t\t\t\t\t});\n\t\t\t\t} else f === \"dot\" ? p = connectorDot({\n\t\t\t\t\tline: d,\n\t\t\t\t\tscale: n.endScale\n\t\t\t\t}) : (!f || f === \"none\") && this.connector && this.connector.select(\".connector-end\").remove();\n\t\t\t\treturn p.components && (p.components.forEach(function(t) {\n\t\t\t\t\tt.attrs.fill = e.annotation.color, t.attrs.stroke = e.annotation.color;\n\t\t\t\t}), c = c.concat(p.components)), this.editMode && u.length !== 0 && c.push({\n\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\thandles: u\n\t\t\t\t}), c;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawNote\",\n\t\t\tvalue: function drawNote() {\n\t\t\t\tvar e = this, t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = this.annotation.note, r = n.align || t.align || \"dynamic\", i = {\n\t\t\t\t\tbbox: t.bbox,\n\t\t\t\t\talign: r,\n\t\t\t\t\toffset: this.annotation.offset\n\t\t\t\t}, a = n.lineType || t.lineType, o = {};\n\t\t\t\ta === \"vertical\" ? o = noteVertical(i) : a === \"horizontal\" && (o = noteHorizontal(i));\n\t\t\t\tvar s = o, c = s.components, l = c === void 0 ? [] : c, u = s.handles, d = u === void 0 ? [] : u;\n\t\t\t\tif (l.forEach(function(t) {\n\t\t\t\t\tt.attrs.stroke = e.annotation.color;\n\t\t\t\t}), this.editMode) {\n\t\t\t\t\td = this.mapHandles([{\n\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\tdrag: this.dragNote.bind(this)\n\t\t\t\t\t}]), l.push({\n\t\t\t\t\t\ttype: \"handle\",\n\t\t\t\t\t\thandles: d\n\t\t\t\t\t});\n\t\t\t\t\tvar f = this.dragNote.bind(this), p = this.dragstarted.bind(this), m = this.dragended.bind(this);\n\t\t\t\t\tthis.note.call(b().container(z(\"g.annotations\").node()).on(\"start\", function(e) {\n\t\t\t\t\t\treturn p(e);\n\t\t\t\t\t}).on(\"drag\", function(e) {\n\t\t\t\t\t\treturn f(e);\n\t\t\t\t\t}).on(\"end\", function(e) {\n\t\t\t\t\t\treturn m(e);\n\t\t\t\t\t}));\n\t\t\t\t} else this.note.on(\"mousedown.drag\", null);\n\t\t\t\treturn l;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawNoteContent\",\n\t\t\tvalue: function drawNoteContent(e) {\n\t\t\t\tvar t = this.annotation.note, n = t.padding === void 0 ? this.notePadding : t.padding, r = t.orientation || e.orientation || \"topBottom\", i = t.lineType || e.lineType, a = t.align || e.align || \"dynamic\";\n\t\t\t\ti === \"vertical\" ? r = \"leftRight\" : i === \"horizontal\" && (r = \"topBottom\");\n\t\t\t\tvar o = noteAlignment({\n\t\t\t\t\tpadding: n,\n\t\t\t\t\tbbox: e.bbox,\n\t\t\t\t\toffset: this.annotation.offset,\n\t\t\t\t\torientation: r,\n\t\t\t\t\talign: a\n\t\t\t\t}), s = o.x, c = o.y;\n\t\t\t\treturn this.offsetCornerX = s + this.annotation.dx, this.offsetCornerY = c + this.annotation.dy, this.note && this.noteContent.attr(\"transform\", \"translate(\" + s + \", \" + c + \")\"), [];\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"drawOnScreen\",\n\t\t\tvalue: function drawOnScreen(e, t) {\n\t\t\t\treturn this.drawOnSVG(e, t);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawSubject\",\n\t\t\tvalue: function redrawSubject() {\n\t\t\t\tthis.subject && this.drawOnScreen(this.subject, this.drawSubject());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawConnector\",\n\t\t\tvalue: function redrawConnector() {\n\t\t\t\tthis.connector && this.drawOnScreen(this.connector, this.drawConnector());\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"redrawNote\",\n\t\t\tvalue: function redrawNote() {\n\t\t\t\tvar e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.getNoteBBox();\n\t\t\t\tthis.noteContent && this.drawOnScreen(this.noteContent, this.drawNoteContent({ bbox: e })), this.note && this.drawOnScreen(this.note, this.drawNote({ bbox: e }));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPosition\",\n\t\t\tvalue: function setPosition() {\n\t\t\t\tvar e = this.annotation.position;\n\t\t\t\tthis.a.attr(\"transform\", \"translate(\" + e.x + \", \" + e.y + \")\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"clearComponents\",\n\t\t\tvalue: function clearComponents() {\n\t\t\t\tthis.subject && this.subject.select(\"*\").remove(), this.connector && this.connector.select(\"*\").remove();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setOffset\",\n\t\t\tvalue: function setOffset() {\n\t\t\t\tif (this.note) {\n\t\t\t\t\tvar e = this.annotation.offset;\n\t\t\t\t\tthis.note.attr(\"transform\", \"translate(\" + e.x + \", \" + e.y + \")\");\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setPositionWithAccessors\",\n\t\t\tvalue: function setPositionWithAccessors(e) {\n\t\t\t\te && this.annotation.data && (this.mapX(e), this.mapY(e)), this.setPosition();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"setClassName\",\n\t\t\tvalue: function setClassName() {\n\t\t\t\tthis.a.attr(\"class\", \"annotation \" + (this.className && this.className()) + \" \" + (this.editMode ? \"editable\" : \"\") + \" \" + (this.annotation.className || \"\"));\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"draw\",\n\t\t\tvalue: function draw() {\n\t\t\t\tthis.setClassName(), this.setPosition(), this.setOffset(), this.redrawSubject(), this.redrawConnector(), this.redrawNote();\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragstarted\",\n\t\t\tvalue: function dragstarted() {\n\t\t\t\tS.sourceEvent.stopPropagation(), this.dispatcher && this.dispatcher.call(\"dragstart\", this.a, this.annotation), this.a.classed(\"dragging\", !0), this.a.selectAll(\"circle.handle\").style(\"pointer-events\", \"none\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragended\",\n\t\t\tvalue: function dragended() {\n\t\t\t\tthis.dispatcher && this.dispatcher.call(\"dragend\", this.a, this.annotation), this.a.classed(\"dragging\", !1), this.a.selectAll(\"circle.handle\").style(\"pointer-events\", \"all\");\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragSubject\",\n\t\t\tvalue: function dragSubject() {\n\t\t\t\tvar e = this.annotation.position;\n\t\t\t\te.x += S.dx, e.y += S.dy, this.annotation.position = e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"dragNote\",\n\t\t\tvalue: function dragNote() {\n\t\t\t\tvar e = this.annotation.offset;\n\t\t\t\te.x += S.dx, e.y += S.dy, this.annotation.offset = e;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tkey: \"mapHandles\",\n\t\t\tvalue: function mapHandles(e) {\n\t\t\t\tvar t = this;\n\t\t\t\treturn e.map(function(e) {\n\t\t\t\t\treturn Y({}, e, {\n\t\t\t\t\t\tstart: t.dragstarted.bind(t),\n\t\t\t\t\t\tend: t.dragended.bind(t)\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t]), Type;\n}(), Gt = function customType(e, t, n) {\n\treturn function(e) {\n\t\tinherits(customType, e);\n\t\tfunction customType(e) {\n\t\t\tclassCallCheck(this, customType);\n\t\t\tvar n = possibleConstructorReturn(this, (customType.__proto__ || Object.getPrototypeOf(customType)).call(this, e));\n\t\t\treturn n.typeSettings = t, t.disable && t.disable.forEach(function(e) {\n\t\t\t\tn[e] && n[e].remove(), n[e] = void 0, e === \"note\" && (n.noteContent = void 0);\n\t\t\t}), n;\n\t\t}\n\t\treturn jt(customType, [\n\t\t\t{\n\t\t\t\tkey: \"className\",\n\t\t\t\tvalue: function className() {\n\t\t\t\t\treturn \"\" + (t.className || X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"className\", this) && X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"className\", this).call(this) || \"\");\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawSubject\",\n\t\t\t\tvalue: function drawSubject(e) {\n\t\t\t\t\treturn this.typeSettings.subject = Y({}, t.subject, this.typeSettings.subject), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawSubject\", this).call(this, Y({}, e, this.typeSettings.subject));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawConnector\",\n\t\t\t\tvalue: function drawConnector(e) {\n\t\t\t\t\treturn this.typeSettings.connector = Y({}, t.connector, this.typeSettings.connector), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawConnector\", this).call(this, Y({}, e, t.connector, this.typeSettings.connector));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawNote\",\n\t\t\t\tvalue: function drawNote(e) {\n\t\t\t\t\treturn this.typeSettings.note = Y({}, t.note, this.typeSettings.note), X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawNote\", this).call(this, Y({}, e, t.note, this.typeSettings.note));\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: \"drawNoteContent\",\n\t\t\t\tvalue: function drawNoteContent(e) {\n\t\t\t\t\treturn X(customType.prototype.__proto__ || Object.getPrototypeOf(customType.prototype), \"drawNoteContent\", this).call(this, Y({}, e, t.note, this.typeSettings.note));\n\t\t\t\t}\n\t\t\t}\n\t\t], [{\n\t\t\tkey: \"init\",\n\t\t\tvalue: function init(e, t) {\n\t\t\t\treturn X(customType.__proto__ || Object.getPrototypeOf(customType), \"init\", this).call(this, e, t), n && (e = n(e, t)), e;\n\t\t\t}\n\t\t}]), customType;\n\t}(e);\n}, Kt = function(e) {\n\tinherits(d3NoteText, e);\n\tfunction d3NoteText(e) {\n\t\tclassCallCheck(this, d3NoteText);\n\t\tvar t = possibleConstructorReturn(this, (d3NoteText.__proto__ || Object.getPrototypeOf(d3NoteText)).call(this, e));\n\t\treturn t.textWrap = e.textWrap || 120, t.drawText(), t;\n\t}\n\treturn jt(d3NoteText, [{\n\t\tkey: \"updateTextWrap\",\n\t\tvalue: function updateTextWrap(e) {\n\t\t\tthis.textWrap = e, this.drawText();\n\t\t}\n\t}, {\n\t\tkey: \"drawText\",\n\t\tvalue: function drawText() {\n\t\t\tif (this.note) {\n\t\t\t\tQ(this.note, [this.annotation], \"g\", \"annotation-note-content\");\n\t\t\t\tvar e = this.note.select(\"g.annotation-note-content\");\n\t\t\t\tQ(e, [this.annotation], \"rect\", \"annotation-note-bg\"), Q(e, [this.annotation], \"text\", \"annotation-note-label\"), Q(e, [this.annotation], \"text\", \"annotation-note-title\");\n\t\t\t\tvar t = { height: 0 }, n = this.a.select(\"text.annotation-note-label\"), r = this.annotation.note && this.annotation.note.wrap || this.typeSettings && this.typeSettings.note && this.typeSettings.note.wrap || this.textWrap, i = this.annotation.note && this.annotation.note.wrapSplitter || this.typeSettings && this.typeSettings.note && this.typeSettings.note.wrapSplitter, a = this.annotation.note && this.annotation.note.bgPadding || this.typeSettings && this.typeSettings.note && this.typeSettings.note.bgPadding, o = {\n\t\t\t\t\ttop: 0,\n\t\t\t\t\tbottom: 0,\n\t\t\t\t\tleft: 0,\n\t\t\t\t\tright: 0\n\t\t\t\t};\n\t\t\t\tif (typeof a == \"number\" ? o = {\n\t\t\t\t\ttop: a,\n\t\t\t\t\tbottom: a,\n\t\t\t\t\tleft: a,\n\t\t\t\t\tright: a\n\t\t\t\t} : a && (a === void 0 ? \"undefined\" : At(a)) === \"object\" && (o = Y(o, a)), this.annotation.note.title) {\n\t\t\t\t\tvar s = this.a.select(\"text.annotation-note-title\");\n\t\t\t\t\ts.text(this.annotation.note.title), s.attr(\"fill\", this.annotation.color), s.attr(\"font-weight\", \"bold\"), s.call(Xt, r, i), t = s.node().getBBox();\n\t\t\t\t}\n\t\t\t\tn.text(this.annotation.note.label).attr(\"dx\", \"0\"), n.call(Xt, r, i), n.attr(\"y\", t.height * 1.1 || 0), n.attr(\"fill\", this.annotation.color);\n\t\t\t\tvar c = this.getNoteBBox();\n\t\t\t\tthis.a.select(\"rect.annotation-note-bg\").attr(\"width\", c.width + o.left + o.right).attr(\"height\", c.height + o.top + o.bottom).attr(\"x\", c.x - o.left).attr(\"y\", -o.top).attr(\"fill\", \"white\").attr(\"fill-opacity\", 0);\n\t\t\t}\n\t\t}\n\t}]), d3NoteText;\n}(Wt);\nGt(Kt, {\n\tclassName: \"label\",\n\tnote: { align: \"middle\" }\n});\nvar qt = Gt(Kt, {\n\tclassName: \"callout\",\n\tnote: { lineType: \"horizontal\" }\n}), Jt = Gt(qt, {\n\tclassName: \"callout elbow\",\n\tconnector: { type: \"elbow\" }\n});\nGt(qt, {\n\tclassName: \"callout curve\",\n\tconnector: { type: \"curve\" }\n}), Gt(Wt, {\n\tclassName: \"badge\",\n\tsubject: { type: \"badge\" },\n\tdisable: [\"connector\", \"note\"]\n}), Gt(Kt, {\n\tclassName: \"callout circle\",\n\tsubject: { type: \"circle\" },\n\tnote: { lineType: \"horizontal\" },\n\tconnector: { type: \"elbow\" }\n}), Gt(Kt, {\n\tclassName: \"callout rect\",\n\tsubject: { type: \"rect\" },\n\tnote: { lineType: \"horizontal\" },\n\tconnector: { type: \"elbow\" }\n}), Gt(function(e) {\n\tinherits(ThresholdMap, e);\n\tfunction ThresholdMap() {\n\t\treturn classCallCheck(this, ThresholdMap), possibleConstructorReturn(this, (ThresholdMap.__proto__ || Object.getPrototypeOf(ThresholdMap)).apply(this, arguments));\n\t}\n\treturn jt(ThresholdMap, [{\n\t\tkey: \"mapY\",\n\t\tvalue: function mapY(e) {\n\t\t\tX(ThresholdMap.prototype.__proto__ || Object.getPrototypeOf(ThresholdMap.prototype), \"mapY\", this).call(this, e);\n\t\t\tvar t = this.annotation;\n\t\t\t(t.subject.x1 || t.subject.x2) && t.data && e.y && (t.y = e.y(t.data)), (t.subject.x1 || t.subject.x2) && !t.x && (t.x = t.subject.x1 || t.subject.x2);\n\t\t}\n\t}, {\n\t\tkey: \"mapX\",\n\t\tvalue: function mapX(e) {\n\t\t\tX(ThresholdMap.prototype.__proto__ || Object.getPrototypeOf(ThresholdMap.prototype), \"mapX\", this).call(this, e);\n\t\t\tvar t = this.annotation;\n\t\t\t(t.subject.y1 || t.subject.y2) && t.data && e.x && (t.x = e.x(t.data)), (t.subject.y1 || t.subject.y2) && !t.y && (t.y = t.subject.y1 || t.subject.y2);\n\t\t}\n\t}]), ThresholdMap;\n}(qt), {\n\tclassName: \"callout xythreshold\",\n\tsubject: { type: \"threshold\" }\n});\nvar Q = function newWithClass(e, t, n, r, i) {\n\tvar a = e.selectAll(n + \".\" + (i || r)).data(t);\n\treturn a.enter().append(n).merge(a).attr(\"class\", r), a.exit().remove(), e;\n}, Yt = function addHandlers(e, t, n) {\n\tvar r = n.component, i = n.name;\n\tr && r.on(\"mouseover.annotations\", function() {\n\t\te.call(i + \"over\", r, t);\n\t}).on(\"mouseout.annotations\", function() {\n\t\treturn e.call(i + \"out\", r, t);\n\t}).on(\"click.annotations\", function() {\n\t\treturn e.call(i + \"click\", r, t);\n\t});\n}, Xt = function wrap(e, t, n) {\n\tvar r = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 1.2;\n\te.each(function() {\n\t\tfor (var e = z(this), i = e.text().split(n || /[ \\t\\r\\n]+/).reverse().filter(function(e) {\n\t\t\treturn e !== \"\";\n\t\t}), a = void 0, o = [], s = e.text(null).append(\"tspan\").attr(\"x\", 0).attr(\"dy\", \"0.8em\"); a = i.pop();) o.push(a), s.text(o.join(\" \")), s.node().getComputedTextLength() > t && o.length > 1 && (o.pop(), s.text(o.join(\" \")), o = [a], s = e.append(\"tspan\").attr(\"x\", 0).attr(\"dy\", r + \"em\").text(a));\n\t});\n}, Zt = function bboxWithoutHandles(e) {\n\tvar t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : \":not(.handle)\";\n\treturn e ? e.selectAll(t).nodes().reduce(function(e, t) {\n\t\tvar n = t.getBBox();\n\t\te.x = Math.min(e.x, n.x), e.y = Math.min(e.y, n.y), e.width = Math.max(e.width, n.width);\n\t\tvar r = t && t.attributes && t.attributes.y;\n\t\treturn e.height = Math.max(e.height, (r && parseFloat(r.value) || 0) + n.height), e;\n\t}, {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t}) : {\n\t\tx: 0,\n\t\ty: 0,\n\t\twidth: 0,\n\t\theight: 0\n\t};\n};\nfunction annotation() {\n\tvar e = [], t = void 0, n = void 0, r = [], i = {}, a = {}, o = !1, s = void 0, c = qt, l = void 0, u = void 0, d = v(\"subjectover\", \"subjectout\", \"subjectclick\", \"connectorover\", \"connectorout\", \"connectorclick\", \"noteover\", \"noteout\", \"noteclick\", \"dragend\", \"dragstart\"), f = void 0, p = function annotation(n) {\n\t\tf = n, o || n.selectAll(\"circle.handle\").remove();\n\t\tvar p = e.map(function(e) {\n\t\t\treturn e.type ||= c, e.disable ||= r, new Mt(e);\n\t\t});\n\t\tt ||= new Nt({\n\t\t\tannotations: p,\n\t\t\taccessors: i,\n\t\t\taccessorsInverse: a,\n\t\t\tids: s\n\t\t}), n.selectAll(\"g\").data([t]).enter().append(\"g\").attr(\"class\", \"annotations\");\n\t\tvar m = n.select(\"g.annotations\");\n\t\tQ(m, t.annotations, \"g\", \"annotation\"), m.selectAll(\"g.annotation\").each(function(e) {\n\t\t\tvar t = z(this);\n\t\t\tt.attr(\"class\", \"annotation\"), Q(t, [e], \"g\", \"annotation-connector\"), Q(t, [e], \"g\", \"annotation-subject\"), Q(t, [e], \"g\", \"annotation-note\"), Q(t.select(\"g.annotation-note\"), [e], \"g\", \"annotation-note-content\"), e.type = e.type.toString() === \"[object Object]\" ? e.type : new e.type({\n\t\t\t\ta: t,\n\t\t\t\tannotation: e,\n\t\t\t\ttextWrap: l,\n\t\t\t\tnotePadding: u,\n\t\t\t\teditMode: o,\n\t\t\t\tdispatcher: d,\n\t\t\t\taccessors: i\n\t\t\t}), e.type.draw(), e.type.drawText && e.type.drawText();\n\t\t});\n\t};\n\treturn p.json = function() {\n\t\treturn console.log(\"Annotations JSON was copied to your clipboard. Please note the annotation type is not JSON compatible. It appears in the objects array in the console, but not in the copied JSON.\", t.json), window.copy(JSON.stringify(t.json.map(function(e) {\n\t\t\treturn delete e.type, e;\n\t\t}))), p;\n\t}, p.update = function() {\n\t\treturn e && t && (e = t.annotations.map(function(e) {\n\t\t\treturn e.type.draw(), e;\n\t\t})), p;\n\t}, p.updateText = function() {\n\t\treturn t && (t.updateText(l), e = t.annotations), p;\n\t}, p.updatedAccessors = function() {\n\t\treturn t.setPositionWithAccessors(), e = t.annotations, p;\n\t}, p.disable = function(n) {\n\t\treturn arguments.length ? (r = n, t && (t.updateDisable(r), e = t.annotations), p) : r;\n\t}, p.textWrap = function(n) {\n\t\treturn arguments.length ? (l = n, t && (t.updateTextWrap(l), e = t.annotations), p) : l;\n\t}, p.notePadding = function(n) {\n\t\treturn arguments.length ? (u = n, t && (t.updateNotePadding(u), e = t.annotations), p) : u;\n\t}, p.type = function(n, r) {\n\t\treturn arguments.length ? (c = n, t && (t.annotations.map(function(e) {\n\t\t\te.type.note && e.type.note.selectAll(\"*:not(.annotation-note-content)\").remove(), e.type.noteContent && e.type.noteContent.selectAll(\"*\").remove(), e.type.subject && e.type.subject.selectAll(\"*\").remove(), e.type.connector && e.type.connector.selectAll(\"*\").remove(), e.type.typeSettings = {}, e.type = c, e.subject = r && r.subject || e.subject, e.connector = r && r.connector || e.connector, e.note = r && r.note || e.note;\n\t\t}), e = t.annotations), p) : c;\n\t}, p.annotations = function(n) {\n\t\treturn arguments.length ? (e = n, t && t.annotations && (e.some(function(e) {\n\t\t\treturn !e.type || e.type.toString() !== \"[object Object]\";\n\t\t}) ? (t = null, p(f)) : t.annotations = e), p) : t && t.annotations || e;\n\t}, p.context = function(e) {\n\t\treturn arguments.length ? (n = e, p) : n;\n\t}, p.accessors = function(e) {\n\t\treturn arguments.length ? (i = e, p) : i;\n\t}, p.accessorsInverse = function(e) {\n\t\treturn arguments.length ? (a = e, p) : a;\n\t}, p.ids = function(e) {\n\t\treturn arguments.length ? (s = e, p) : s;\n\t}, p.editMode = function(n) {\n\t\treturn arguments.length ? (o = n, f && f.selectAll(\"g.annotation\").classed(\"editable\", o), t && (t.editMode(o), e = t.annotations), p) : o;\n\t}, p.collection = function(e) {\n\t\treturn arguments.length ? (t = e, p) : t;\n\t}, p.on = function() {\n\t\tvar e = d.on.apply(d, arguments);\n\t\treturn e === d ? p : e;\n\t}, p;\n}\n//#endregion\n//#region src/Gauge.ts\nfunction value2Angle(e) {\n\treturn (e - .5) * .65 * 2 * Math.PI;\n}\nfunction pointOnArc(e, t) {\n\treturn {\n\t\tx: Math.cos(e - Math.PI / 2) * t,\n\t\ty: Math.sin(e - Math.PI / 2) * t\n\t};\n}\nfunction indicatorTranslate(e, t, n = !1) {\n\tlet r = pointOnArc(e, t), i = e * 180 / Math.PI + (n === !0 ? 180 : 0);\n\treturn `translate(${r.x}, ${r.y}) rotate(${i})`;\n}\nfunction indicatorTween(e, t, n = !1) {\n\treturn function(r) {\n\t\tlet i = E(r.angle, e);\n\t\treturn r.angle = e, function(e) {\n\t\t\treturn indicatorTranslate(i(e), t, n);\n\t\t};\n\t};\n}\nfunction arcTween(e, t, n) {\n\treturn function(r) {\n\t\tlet i = E(r.startAngle, e), a = E(r.endAngle, t);\n\t\treturn function(e) {\n\t\t\treturn r.startAngle = i(e), r.endAngle = a(e), n(r);\n\t\t};\n\t};\n}\nvar $ = class Gauge extends l {\n\t_d3Arc = arc_default$1().innerRadius(85).outerRadius(100);\n\t_colorScale = P().interpolate(D);\n\t_usageArc;\n\t_meanArc;\n\t_freeArc;\n\t_indInner;\n\t_indOuter;\n\t_centerTextG;\n\t_centerText;\n\t_bottomText;\n\t_tooltipG;\n\t_mainTooltip;\n\tconstructor() {\n\t\tsuper();\n\t}\n\ttip(e) {\n\t\tif (e === null || e.label === \"\") this._tooltipG.transition().style(\"opacity\", 0).on(\"interrupt end\", () => {\n\t\t\tthis._tooltipG.selectAll(\"g\").remove();\n\t\t});\n\t\telse {\n\t\t\tthis._tooltipG.interrupt().style(\"opacity\", 1), e.w = this._centerText.datum().w + 10;\n\t\t\tlet t = \"horizontal\", n = 0, r = 5, i = 5;\n\t\t\te.y >= 5 && e.y <= 25 ? (n = e.x < 0 ? -e.w / 2 : e.w / 2, r = 12.5, i = void 0, t = \"vertical\") : e.y > 25 && (r = 25, i = 0);\n\t\t\tlet a = annotation().type(Jt).annotations([{\n\t\t\t\tdata: e,\n\t\t\t\tdx: -e.x + n,\n\t\t\t\tdy: -e.y + r,\n\t\t\t\tcolor: \"black\",\n\t\t\t\tnote: {\n\t\t\t\t\tlabel: e.label,\n\t\t\t\t\tlineType: t,\n\t\t\t\t\tpadding: i,\n\t\t\t\t\talign: \"middle\"\n\t\t\t\t}\n\t\t\t}]).accessors({\n\t\t\t\tx: (e) => e.x,\n\t\t\t\ty: (e) => e.y\n\t\t\t});\n\t\t\tthis._tooltipG.call(a);\n\t\t}\n\t}\n\tcalcSize(e, t, n) {\n\t\tlet r = e.node().getBBox(), i = t / r.width, a = n / r.height, o = i < a ? i : a;\n\t\treturn {\n\t\t\twidth: r.width,\n\t\t\theight: r.height,\n\t\t\tscale: o\n\t\t};\n\t}\n\tupdateText(e, t, n, r, i) {\n\t\te.datum({\n\t\t\tx: t,\n\t\t\ty: n,\n\t\t\tw: r,\n\t\t\th: i\n\t\t}).attr(\"transform\", null);\n\t\tlet a = this.calcSize(e, r, i), o = t + r / 2 - a.width / 2 * a.scale, s = n + i / 2 - a.height / 2 * a.scale;\n\t\te.attr(\"transform\", `translate(${o}, ${s}) scale(${a.scale})`);\n\t}\n\tcalcWidth() {\n\t\treturn Math.min(this.width(), this.height(), this.maxDiameter());\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), t.on(\"click\", (e) => {\n\t\t\tthis.click(e);\n\t\t}), this._usageArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(0)\n\t\t}).style(\"fill\", \"green\").on(\"mousemove\", (e) => {\n\t\t\tlet [t, n] = this._d3Arc.centroid(e);\n\t\t\tthis.tip({\n\t\t\t\tx: t,\n\t\t\t\ty: n,\n\t\t\t\tlabel: this.valueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._freeArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(1)\n\t\t}).style(\"fill\", \"lightGrey\"), this._meanArc = t.append(\"path\").datum({\n\t\t\tstartAngle: value2Angle(0),\n\t\t\tendAngle: value2Angle(0)\n\t\t}).style(\"fill\", \"black\").on(\"mousemove\", (e) => {\n\t\t\tlet [t, n] = this._d3Arc.centroid(e);\n\t\t\tthis.tip({\n\t\t\t\tx: t,\n\t\t\t\ty: n,\n\t\t\t\tlabel: this.tickValueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._mainTooltip = t.append(\"title\");\n\t\tlet n = this;\n\t\tfunction appendIndicator() {\n\t\t\treturn t.append(\"path\").datum({ angle: value2Angle(0) }).style(\"fill\", \"black\").style(\"stroke\", \"black\").attr(\"d\", \"M 0 0 l -3 -3 l 6 0 z\").on(\"mousemove\", (e) => {\n\t\t\t\tlet [t, r] = n._d3Arc.centroid(n._meanArc.datum());\n\t\t\t\tn.tip({\n\t\t\t\t\tx: t,\n\t\t\t\t\ty: r,\n\t\t\t\t\tlabel: n.tickValueDescription()\n\t\t\t\t});\n\t\t\t}).on(\"mouseout\", (e) => {\n\t\t\t\tn.tip(null);\n\t\t\t});\n\t\t}\n\t\tthis._indInner = appendIndicator(), this._indOuter = appendIndicator(), this._centerText = t.append(\"text\").attr(\"dy\", \".66em\").style(\"fill\", \"green\").on(\"mousemove\", (e) => {\n\t\t\tthis.tip({\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\tlabel: this.valueDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._bottomText = t.append(\"text\").attr(\"dy\", \".66em\").on(\"mousemove\", (e) => {\n\t\t\tthis.tip({\n\t\t\t\tx: 0,\n\t\t\t\ty: e.y,\n\t\t\t\tlabel: this.titleDescription()\n\t\t\t});\n\t\t}).on(\"mouseout\", (e) => {\n\t\t\tthis.tip(null);\n\t\t}), this._tooltipG = t.append(\"g\").attr(\"class\", \"annotation-tip\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._colorScale.domain(this.colorDomain()).range(this.colorRange()), t.attr(\"title\", this.tooltip()).style(\"cursor\", this.click === Gauge.prototype.click ? null : \"pointer\");\n\t\tlet n = this.calcWidth() / 3, r = this.calcWidth() / 2 - 5;\n\t\tthis._d3Arc.innerRadius(n).outerRadius(r);\n\t\tlet i = this.value(), a = this.tickValue();\n\t\tthis._usageArc.style(\"fill\", this._colorScale(i)).transition().duration(750).attrTween(\"d\", arcTween(value2Angle(0), value2Angle(i), this._d3Arc)), this._freeArc.style(\"fill\", this.emptyColor()).transition().duration(750).attrTween(\"d\", arcTween(value2Angle(i), value2Angle(1), this._d3Arc)), this._meanArc.style(\"fill\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"d\", arcTween(value2Angle(a - .001), value2Angle(a + .001), this._d3Arc)), this._indInner.style(\"fill\", this.tickColor()).style(\"stroke\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"transform\", indicatorTween(value2Angle(a), n, !0)), this._indOuter.style(\"fill\", this.tickColor()).style(\"stroke\", this.tickColor()).style(\"visibility\", this.showTick() ? \"visible\" : \"hidden\").transition().duration(750).attrTween(\"transform\", indicatorTween(value2Angle(a), r)), this._centerText.style(\"fill\", this._colorScale(i)).text(w(\".0%\")(i)), this._bottomText.style(\"fill\", this.click === Gauge.prototype.click ? this.titleColor() : this.titleClickColor()).style(\"text-decoration\", this.click === Gauge.prototype.click ? null : \"underline\").text(this.title());\n\t\tlet o = pointOnArc(value2Angle(1), n - 8);\n\t\tthis.updateText(this._centerText, -o.x, -o.y, 2 * o.x, 2 * o.y);\n\t\tlet s = pointOnArc(value2Angle(1), r);\n\t\ts.y += 5;\n\t\tlet c = this.calcWidth() - 20, l = this.calcWidth() / 2 - s.y - 5;\n\t\tthis.updateText(this._bottomText, -c / 2, s.y, c, l), this._mainTooltip.text(this.tooltip());\n\t}\n\tclick(e) {}\n};\n$.prototype._class += \" chart_Gauge\", $.prototype.publish(\"title\", \"\", \"string\", \"Title\"), $.prototype.publish(\"titleDescription\", \"\", \"string\", \"Title Description\"), $.prototype.publish(\"titleColor\", \"black\", \"html-color\", \"Color of the title text\"), $.prototype.publish(\"titleClickColor\", \"blue\", \"html-color\", \"Color of the title text when clickable\"), $.prototype.publish(\"maxDiameter\", 128, \"number\", \"Max Diameter\"), $.prototype.publish(\"value\", 0, \"number\", \"Value\"), $.prototype.publish(\"valueDescription\", \"\", \"string\", \"Value Description\"), $.prototype.publish(\"showTick\", !1, \"boolean\", \"Show Tick\"), $.prototype.publish(\"tickValue\", 0, \"number\", \"Tick Value\"), $.prototype.publish(\"tickValueDescription\", \"\", \"string\", \"Tick Value Description\"), $.prototype.publish(\"tooltip\", \"\", \"string\", \"Tooltip\"), $.prototype.publish(\"colorRange\", [\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"green\",\n\t\"orange\",\n\t\"red\",\n\t\"red\"\n], \"array\", \"Array of colors for the filled gauge portion. The fill color will be relative to the gauge value.\"), $.prototype.publish(\"colorDomain\", [\n\t0,\n\t.1,\n\t.2,\n\t.3,\n\t.4,\n\t.5,\n\t.6,\n\t.7,\n\t.8,\n\t.9,\n\t1\n], \"array\", \"This array augments the mapping of the value to the fill colorRange.\"), $.prototype.publish(\"emptyColor\", \"lightgrey\", \"html-color\", \"Color of the empty portion of the gauge\"), $.prototype.publish(\"tickColor\", \"black\", \"html-color\", \"Color of the tick\");\n//#endregion\n//#region src/Pie.ts\nvar sortAscending = (e, t) => e[1] - t[1] > 0 ? 1 : -1, sortDescending = (e, t) => e[1] - t[1] > 0 ? -1 : 1, Pie = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\t_totalValue;\n\td3Pie;\n\td3Arc;\n\td3LabelArc;\n\t_labelPositions;\n\t_smallValueLabelHeight;\n\t_labelWidthLimit;\n\t_quadIdxArr;\n\t_minLabelTop = 0;\n\t_maxLabelBottom = 0;\n\t_seriesValueFormatter;\n\t_seriesPercentageFormatter;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this.d3Pie = pie_default(), this.d3Arc = arc_default$1(), this.d3LabelArc = arc_default$1(), this.tooltipTick_default(!1).tooltipOffset_default(0);\n\t}\n\tintersection(e, t) {\n\t\treturn this.intersectCircle(this.calcOuterRadius(), e, t);\n\t}\n\tcalcInnerRadius() {\n\t\treturn this.innerRadius_exists() ? this.calcOuterRadius() * this.innerRadius() / 100 : 0;\n\t}\n\tcalcOuterRadius() {\n\t\tlet e = this.textSize(this.data().map((e) => this.getLabelText({ data: e }, !1)), \"Verdana\", 12).width, t = this._size.width - (this.showLabels() ? e * 2 : 0) - 20, n = this._size.height - 36 - (this.showLabels() ? this._smallValueLabelHeight : 0), r = Math.min(t, n) / 2 - 2;\n\t\treturn t / 2 - 2 < this.minOuterRadius() ? this._labelWidthLimit = e - (this.minOuterRadius() - (t / 2 - 2)) : this._labelWidthLimit = e, r < this.minOuterRadius() ? this.minOuterRadius() : r;\n\t}\n\tcalcSmallValueLabelHeight() {\n\t\tlet e = this.data().reduce((e, t) => e + t[1], 0), t = 0;\n\t\treturn this.data().forEach((n) => {\n\t\t\tn[1] / e < .1 && t++;\n\t\t}), this.labelHeight() * t;\n\t}\n\tcalcTotalValue() {\n\t\treturn this.data().reduce((e, t) => e + t[1], 0);\n\t}\n\tcalcPadAngleRadians() {\n\t\tlet e = this.slicePadding();\n\t\treturn e > 0 ? Math.min(e, .05) : 0;\n\t}\n\tgetLabelText(e, t) {\n\t\tlet n, r = e.data[0];\n\t\tif (this._labelWidthLimit !== void 0 && t) {\n\t\t\tlet e = this.textSize(r, \"Verdana\", this.labelHeight()).width;\n\t\t\tthis._labelWidthLimit < e && (n = r.length * (this._labelWidthLimit / e) - 3, r = n < r.length ? r.slice(0, n) + \"...\" : r);\n\t\t}\n\t\tif (this.showSeriesValue() && (r += ` : ${this._seriesValueFormatter(e.data[1])}`), this.showSeriesPercentage()) {\n\t\t\tlet t = this._totalValue, n = this.dataMeta();\n\t\t\tn.sum !== void 0 && (t = n.sum);\n\t\t\tlet i = e.data[1] / t * 100;\n\t\t\tr += ` : ${this._seriesPercentageFormatter(i)}%`;\n\t\t}\n\t\treturn r;\n\t}\n\tselection(e) {\n\t\tif (!arguments.length) try {\n\t\t\treturn this._selection.selection2()[0]?.data;\n\t\t} catch {\n\t\t\treturn;\n\t\t}\n\t\tlet t = JSON.stringify(e);\n\t\tthis._selection.selection2((e) => t === JSON.stringify(e.data));\n\t}\n\tselectByLabel(e) {\n\t\tlet t = this.data().filter((t) => t[0] === e)[0];\n\t\tt && this.selection(t);\n\t}\n\t_slices;\n\t_labels;\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t).skipBringToTop(!0), this._slices = t.append(\"g\"), this._labels = t.append(\"g\");\n\t\tlet n = this;\n\t\tthis.tooltipHTML(function(e) {\n\t\t\tswitch (n.tooltipStyle()) {\n\t\t\t\tcase \"series-table\": return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tarr: n.columns().slice(1).map(function(t, r) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tlabel: t,\n\t\t\t\t\t\t\tcolor: n._palette(e.data[0]),\n\t\t\t\t\t\t\tvalue: e.data[r + 1]\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tdefault: return n.tooltipFormat({\n\t\t\t\t\tlabel: e.data[0],\n\t\t\t\t\tvalue: e.data[1]\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tthis.selectionGlow(!this.tabNavigation()), super.update(e, t);\n\t\tlet n = this;\n\t\tthis.updateD3Pie(), this._palette = this._palette.switch(this.paletteID()), this._seriesValueFormatter = w(this.seriesValueFormat()), this._seriesPercentageFormatter = w(this.seriesPercentageFormat()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._smallValueLabelHeight = this.calcSmallValueLabelHeight(), this._totalValue = this.calcTotalValue();\n\t\tlet r = this.calcOuterRadius(), i = Math.max(this.calcInnerRadius(), Math.min(r / 30, 6)), a = r + 12;\n\t\tthis.d3Arc.innerRadius(i).padRadius(r).outerRadius(r).padAngle(this.calcPadAngleRadians()), this._quadIdxArr = [\n\t\t\t[],\n\t\t\t[],\n\t\t\t[],\n\t\t\t[]\n\t\t];\n\t\tlet o = [...this.data()];\n\t\tswitch (this.sortDataByValue()) {\n\t\t\tcase \"ascending\":\n\t\t\t\to.sort(sortAscending);\n\t\t\t\tbreak;\n\t\t\tcase \"descending\":\n\t\t\t\to.sort(sortDescending);\n\t\t\t\tbreak;\n\t\t}\n\t\tlet s = this._slices.selectAll(\".arc\").data(this.d3Pie(o), (e) => e.data[0]);\n\t\tthis._labelPositions = [], s.enter().append(\"g\").attr(\"class\", (e, t) => \"arc series series-\" + this.cssTag(e.data[0])).attr(\"opacity\", 0).call(this._selection.enter.bind(this._selection)).on(\"click\", function(e) {\n\t\t\tn.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t}).on(\"keydown\", function(e, t) {\n\t\t\tlet r = g();\n\t\t\tn.tabNavigation() && (r.code === \"Space\" || r.key === \"Enter\") && (r.preventDefault(), n._selection.click(this));\n\t\t}).each(function(e, t) {\n\t\t\tz(this).append(\"path\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).on(\"mouseover\", arcTween(0, 0)).on(\"mouseout\", arcTween(-5, 150));\n\t\t}).merge(s).transition().attr(\"opacity\", 1).attr(\"tabindex\", n.tabNavigation() ? \"0\" : null).attr(\"role\", n.tabNavigation() ? \"button\" : null).attr(\"aria-label\", n.tabNavigation() ? (e) => `${e.data[0]}: ${e.data[1]}` : null).each(function(e, t) {\n\t\t\tlet i = n.getQuadrant(midAngle(e));\n\t\t\tn._quadIdxArr[i].push(t), e.outerRadius = r - 5, z(this).select(\"path\").transition().attr(\"d\", n.d3Arc).style(\"fill\", n.fillColor(e.data, n.columns()[1], e.data[1]));\n\t\t}), s.exit().transition().style(\"opacity\", 0).remove(), this.d3LabelArc.innerRadius(a).outerRadius(a);\n\t\tlet c = this._labels.selectAll(\"text\").data(this.showLabels() ? this.d3Pie(o) : [], (e) => e.data[0]), l = c.enter().append(\"text\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).attr(\"dy\", \".5em\").on(\"click\", function(e) {\n\t\t\tn._slices.selectAll(\"g\").filter(function(t) {\n\t\t\t\te.data === t.data && (n._selection.click(this), n.click(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this)));\n\t\t\t});\n\t\t}).on(\"dblclick\", function(e) {\n\t\t\tn._slices.selectAll(\"g\").filter(function(t) {\n\t\t\t\te.data === t.data && n.dblclick(n.rowToObj(e.data), n.columns()[1], n._selection.selected(this));\n\t\t\t});\n\t\t}).merge(c).text((e) => this.getLabelText(e, !0)).each(function(e, t) {\n\t\t\tlet r = n.d3LabelArc.centroid(e), i = midAngle(e);\n\t\t\tr[0] = a * (n.isLeftSide(i) ? 1 : -1), n._labelPositions.push({\n\t\t\t\ttop: r[1],\n\t\t\t\tbottom: r[1] + n.labelHeight()\n\t\t\t});\n\t\t});\n\t\tthis.showLabels() && (this.adjustForOverlap(), l.transition().style(\"font-size\", this.labelHeight() + \"px\").attr(\"transform\", (e, t) => {\n\t\t\tlet r = n.d3LabelArc.centroid(e);\n\t\t\treturn r[0] = a * (n.isLeftSide(midAngle(e)) ? 1 : -1), r[1] = n._labelPositions[t].top, \"translate(\" + r + \")\";\n\t\t}).style(\"text-anchor\", (e) => this.isLeftSide(midAngle(e)) ? \"start\" : \"end\")), c.exit().remove();\n\t\tlet u = this._labels.selectAll(\"polyline\").data(this.showLabels() ? this.d3Pie(o) : [], (e) => this.getLabelText(e, !0));\n\t\tu.enter().append(\"polyline\").merge(u).transition().attr(\"points\", function(e, t) {\n\t\t\tlet r = n.d3LabelArc.centroid(e), i = n.d3Arc.centroid(e), o = [...r];\n\t\t\treturn r[0] = a * (n.isLeftSide(midAngle(e)) ? 1 : -1), r[1] = n._labelPositions[t].top, [\n\t\t\t\ti,\n\t\t\t\to,\n\t\t\t\tr\n\t\t\t];\n\t\t}), u.exit().remove(), this.showLabels() && this.centerOnLabels();\n\t\tfunction midAngle(e) {\n\t\t\treturn e.startAngle + (e.endAngle - e.startAngle) / 2;\n\t\t}\n\t\tfunction arcTween(e, t) {\n\t\t\treturn function() {\n\t\t\t\tz(this).transition().delay(t).attrTween(\"d\", function(t) {\n\t\t\t\t\tlet i = E(t.outerRadius, r + e);\n\t\t\t\t\treturn function(e) {\n\t\t\t\t\t\treturn t.outerRadius = i(e), n.d3Arc(t);\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t};\n\t\t}\n\t}\n\tisLeftSide(e) {\n\t\treturn e = ie(e), e > Math.PI * 2 ? e : e < Math.PI && e > 0;\n\t}\n\tgetQuadrant(e) {\n\t\tlet t = 0, n = ie(e);\n\t\treturn t = n <= Math.PI * 1 && n >= Math.PI * .5 ? 3 : t, t = n <= Math.PI * .5 && n >= Math.PI * 0 ? 2 : t, t = n <= Math.PI * 0 && n >= Math.PI * -.5 ? 1 : t, t;\n\t}\n\tcenterOnLabels() {\n\t\tlet e = this.pos().y, t = e * 2, n = this.calcOuterRadius(), r = Math.min(this._minLabelTop, -n), i = Math.max(this._maxLabelBottom, n), a = t - (i - r), o = Math.abs(this._minLabelTop), s = 0;\n\t\ti > e ? (s = e - i + this.labelHeight() / 2, s -= a / 2) : r < 0 && o > e && (s = o - e + this.labelHeight() / 2, s += a / 2);\n\t\tlet c = this.pos();\n\t\tthis.pos({\n\t\t\ty: c.y + s,\n\t\t\tx: c.x\n\t\t});\n\t}\n\tadjustForOverlap() {\n\t\tlet e = this.labelHeight();\n\t\tthis._quadIdxArr.forEach((t, n) => {\n\t\t\tthis._quadIdxArr[n].sort((e, t) => {\n\t\t\t\tif (n === 1 || n === 2) return this._labelPositions[e].top > this._labelPositions[t].top ? -1 : 1;\n\t\t\t\tif (n === 0 || n === 3) return this._labelPositions[e].top > this._labelPositions[t].top ? 1 : -1;\n\t\t\t});\n\t\t\tlet r;\n\t\t\tthis._quadIdxArr[n].forEach((t, i) => {\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tif (n === 1 || n === 2) {\n\t\t\t\t\t\tif (r < this._labelPositions[t].bottom) {\n\t\t\t\t\t\t\tlet e = this._labelPositions[t].bottom - r;\n\t\t\t\t\t\t\tthis._labelPositions[t].top -= e, this._labelPositions[t].bottom -= e;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if ((n === 0 || n === 3) && r + e > this._labelPositions[t].top) {\n\t\t\t\t\t\tlet n = Math.abs(this._labelPositions[t].top) - Math.abs(r + e);\n\t\t\t\t\t\tthis._labelPositions[t].top -= n, this._labelPositions[t].bottom -= n;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tr = this._labelPositions[t].top;\n\t\t\t});\n\t\t}), this._minLabelTop = 0, this._maxLabelBottom = 0, this._quadIdxArr.forEach((e, t) => {\n\t\t\tthis._quadIdxArr[t].forEach((e, t) => {\n\t\t\t\tthis._minLabelTop > this._labelPositions[e].top && (this._minLabelTop = this._labelPositions[e].top), this._maxLabelBottom < this._labelPositions[e].bottom && (this._maxLabelBottom = this._labelPositions[e].bottom);\n\t\t\t});\n\t\t});\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tupdateD3Pie() {\n\t\tlet e = ie(re(this.startAngle()));\n\t\tswitch (this.sortDataByValue()) {\n\t\t\tcase \"ascending\":\n\t\t\t\tthis.d3Pie.sort(sortAscending);\n\t\t\t\tbreak;\n\t\t\tcase \"descending\":\n\t\t\t\tthis.d3Pie.sort(sortDescending);\n\t\t\t\tbreak;\n\t\t\tdefault: this.d3Pie.sort(null);\n\t\t}\n\t\tthis.d3Pie.padAngle(this.calcPadAngleRadians()).startAngle(e).endAngle(2 * Math.PI + e).value(function(e) {\n\t\t\treturn e[1];\n\t\t});\n\t}\n};\nPie.prototype._class += \" chart_Pie\", Pie.prototype.implements(n.prototype), Pie.prototype.implements(i.prototype), Pie.prototype.mixin(d.SimpleSelectionMixin), Pie.prototype.publish(\"showLabels\", !0, \"boolean\", \"If true, wedge labels will display\"), Pie.prototype.publish(\"showSeriesValue\", !1, \"boolean\", \"Append data series value next to label\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"seriesValueFormat\", \",.0f\", \"string\", \"Number format used for formatting series values\", null, { disable: (e) => !e.showSeriesValue() }), Pie.prototype.publish(\"showSeriesPercentage\", !1, \"boolean\", \"Append data series percentage next to label\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"seriesPercentageFormat\", \",.0f\", \"string\", \"Number format used for formatting series percentages\", null, { disable: (e) => !e.showSeriesPercentage() }), Pie.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Pie.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), Pie.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Pie.prototype.publish(\"innerRadius\", 0, \"number\", \"Sets inner pie hole radius as a percentage of the radius of the pie chart\", null, {\n\ttags: [\"Basic\"],\n\trange: {\n\t\tmin: 0,\n\t\tstep: 1,\n\t\tmax: 100\n\t}\n}), Pie.prototype.publish(\"minOuterRadius\", 20, \"number\", \"Minimum outer radius (pixels)\"), Pie.prototype.publish(\"startAngle\", 0, \"number\", \"Starting angle of the first (and largest) wedge (degrees)\"), Pie.prototype.publish(\"labelHeight\", 12, \"number\", \"Font size of labels (pixels)\", null, { disable: (e) => !e.showLabels() }), Pie.prototype.publish(\"slicePadding\", .01, \"number\", \"Padding between pie slices (converted to pixels)\", null, {\n\ttags: [\"Basic\"],\n\trange: {\n\t\tmin: 0,\n\t\tstep: .01,\n\t\tmax: .2\n\t}\n}), Pie.prototype.publish(\"sortDataByValue\", \"descending\", \"set\", \"Sort data by value\", [\n\t\"none\",\n\t\"ascending\",\n\t\"descending\"\n]), Pie.prototype.publish(\"tabNavigation\", !1, \"boolean\", \"Enable or disable tab navigation\");\n//#endregion\n//#region src/HalfPie.ts\nvar HalfPie = class extends Pie {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t);\n\t\tlet n = this._pos.x, r = this._pos.y;\n\t\tthis._drawStartPos === \"origin\" && this._target instanceof SVGElement && (n -= this._size.width / 2, r -= this._size.height / 2), r += this._size.height / 4, this._element.attr(\"transform\", \"translate(\" + n + \",\" + r + \")scale(\" + this._widgetScale + \")\");\n\t}\n\tupdateD3Pie() {\n\t\tsuper.updateD3Pie(), this.d3Pie.startAngle(-Math.PI / 2).endAngle(Math.PI / 2);\n\t}\n};\nHalfPie.prototype._class += \" chart_HalfPie\";\n//#endregion\n//#region src/Heat.ts\nvar Heat = class extends XYAxis {\n\t_domForeignObject;\n\t_domCanvas;\n\t_heat;\n\tconstructor() {\n\t\tsuper(), this.xAxisGuideLines_default(!0).yAxisGuideLines_default(!0);\n\t}\n\tradius(e) {\n\t\treturn this.radiusX(e), this.radiusY(e), this;\n\t}\n\tlayerEnter(e, t, n = 250) {\n\t\tsuper.layerEnter(e, t, n), this._domForeignObject = this.svg.insert(\"foreignObject\", `#${this.id() + \"_clippath\"}`), this._domCanvas = this._domForeignObject.append(\"xhtml:body\").style(\"margin\", \"0px\").style(\"padding\", \"0px\").style(\"background-color\", \"transparent\").append(\"canvas\"), this._heat = simpleheat(this._domCanvas.node());\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t), this._palette = this._palette.switch(this.paletteID());\n\t\tlet r = this.width() - this.margin.left - this.margin.right;\n\t\tr < 0 && (r = 0);\n\t\tlet i = this.height() - this.margin.top - this.margin.bottom;\n\t\ti < 0 && (i = 0), this._domForeignObject.attr(\"x\", this.margin.left).attr(\"y\", this.margin.top).attr(\"width\", r).attr(\"height\", i), this._domCanvas.attr(\"width\", r).attr(\"height\", i);\n\t\tlet a = e.orientation() === \"horizontal\" ? this.data().map((t) => [\n\t\t\te.dataPos(t[0]),\n\t\t\te.valuePos(t[1]),\n\t\t\tt[2]\n\t\t]) : this.data().map((t) => [\n\t\t\te.valuePos(t[1]),\n\t\t\te.dataPos(t[0]),\n\t\t\tt[2]\n\t\t]), o = this.maxWeight_exists() ? this.maxWeight() : k(a, (e) => e[2]);\n\t\tif (this.paletteID() !== \"default\") {\n\t\t\tlet e = {}, t = this.reversePalette();\n\t\t\tfor (let n = 0; n < 8; ++n) e[n / 8] = this._palette((t ? 8 - n : n) / 8, 0, 1);\n\t\t\tthis._heat.gradient(e);\n\t\t} else this._heat.gradient(this._heat.defaultGradient);\n\t\tthis._heat.resize();\n\t\tlet s = this.radiusAsPercent() ? this.radiusX() * r / 100 : this.radiusX(), c = this.radiusAsPercent() ? this.radiusY() * i / 100 : this.radiusY();\n\t\tthis._heat.clear().radius(s, c, this.blur()).max(o).data(a).draw(this.minOpacity());\n\t}\n};\nHeat.prototype._class += \" chart_Heat\", Heat.prototype._palette = c.rainbow(\"default\"), Heat.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Heat.prototype._palette.switch(), { tags: [\"Basic\"] }), Heat.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), Heat.prototype.publish(\"reversePalette\", !1, \"boolean\", \"Reverse Palette Colors\", null, { disable: (e) => e.paletteID() === \"default\" }), Heat.prototype.publish(\"radiusX\", 25, \"number\", \"Point X radius (25 by default)\"), Heat.prototype.publish(\"radiusY\", 25, \"number\", \"Point Y radius (25 by default)\"), Heat.prototype.publish(\"radiusAsPercent\", !1, \"boolean\", \"Calculate RadiusX + RadiusY as % of size\"), Heat.prototype.publish(\"blur\", 15, \"number\", \"Point blur radius (15 by default)\"), Heat.prototype.publish(\"maxWeight\", void 0, \"number\", \"Clamp max weight to value (optional), omitting uses max data point\", void 0, { optional: !0 }), Heat.prototype.publish(\"minOpacity\", .05, \"number\", \"Minimum point opacity (0.05 by default)\");\nfunction simpleheat(e) {\n\tif (!(this instanceof simpleheat)) return new simpleheat(e);\n\tthis._canvas = e = typeof e == \"string\" ? document.getElementById(e) : e, this._ctx = e.getContext(\"2d\"), this._width = e.width, this._height = e.height, this._max = 1, this._data = [];\n}\nsimpleheat.prototype = {\n\tdefaultRadius: 25,\n\tdefaultGradient: {\n\t\t.4: \"blue\",\n\t\t.6: \"cyan\",\n\t\t.7: \"lime\",\n\t\t.8: \"yellow\",\n\t\t1: \"red\"\n\t},\n\tdata: function(e) {\n\t\treturn this._data = e, this;\n\t},\n\tmax: function(e) {\n\t\treturn this._max = e, this;\n\t},\n\tadd: function(e) {\n\t\treturn this._data.push(e), this;\n\t},\n\tclear: function() {\n\t\treturn this._data = [], this;\n\t},\n\tradius: function(e, t, n) {\n\t\tn = n === void 0 ? 15 : n;\n\t\tlet r = this._ellipse = this._createCanvas(), i = r.getContext(\"2d\"), a = this._r = e + n, o = this._r = t + n;\n\t\treturn r.width = a * 2, r.height = o * 2, i.shadowOffsetX = i.shadowOffsetY = a * 2, i.shadowOffsetY = i.shadowOffsetY = o * 2, i.shadowBlur = n, i.shadowColor = \"black\", i.beginPath(), i.ellipse(-a, -o, e, t, 0, 0, Math.PI * 2, !0), i.closePath(), i.fill(), this;\n\t},\n\tresize: function() {\n\t\tthis._width = this._canvas.width, this._height = this._canvas.height;\n\t},\n\tgradient: function(e) {\n\t\tlet t = this._createCanvas(), n = t.getContext(\"2d\"), r = n.createLinearGradient(0, 0, 0, 256);\n\t\tt.width = 1, t.height = 256;\n\t\tfor (let t in e) r.addColorStop(+t, e[t]);\n\t\treturn n.fillStyle = r, n.fillRect(0, 0, 1, 256), this._grad = n.getImageData(0, 0, 1, 256).data, this;\n\t},\n\tdraw: function(e) {\n\t\tthis._ellipse || this.radius(this.defaultRadius, this.defaultRadius), this._grad || this.gradient(this.defaultGradient);\n\t\tlet t = this._ctx;\n\t\tt.clearRect(0, 0, this._width, this._height);\n\t\tfor (let n = 0, r = this._data.length, i; n < r; n++) i = this._data[n], i[2] < 0 ? i[2] = 0 : i[2] > this._max && (i[2] = this._max), t.globalAlpha = Math.max(i[2] / this._max, e === void 0 ? .05 : e), t.drawImage(this._ellipse, i[0] - this._r, i[1] - this._r);\n\t\tlet n = t.getImageData(0, 0, this._width, this._height);\n\t\treturn this._colorize(n.data, this._grad), t.putImageData(n, 0, 0), this;\n\t},\n\t_colorize: function(e, t) {\n\t\tfor (let n = 0, r = e.length, i; n < r; n += 4) i = e[n + 3] * 4, i && (e[n] = t[i], e[n + 1] = t[i + 1], e[n + 2] = t[i + 2]);\n\t},\n\t_createCanvas: function() {\n\t\treturn typeof document < \"u\" ? document.createElement(\"canvas\") : new this._canvas.constructor();\n\t}\n};\n//#endregion\n//#region ../../node_modules/d3-hexbin/src/hexbin.js\nvar Qt = Math.PI / 3, $t = [\n\t0,\n\tQt,\n\t2 * Qt,\n\t3 * Qt,\n\t4 * Qt,\n\t5 * Qt\n];\nfunction pointX(e) {\n\treturn e[0];\n}\nfunction pointY(e) {\n\treturn e[1];\n}\nfunction hexbin_default() {\n\tvar e = 0, t = 0, n = 1, r = 1, i = pointX, a = pointY, o, s, c;\n\tfunction hexbin(e) {\n\t\tvar t = {}, n = [], r, o = e.length;\n\t\tfor (r = 0; r < o; ++r) if (!(isNaN(u = +i.call(null, l = e[r], r, e)) || isNaN(d = +a.call(null, l, r, e)))) {\n\t\t\tvar l, u, d, f = Math.round(d /= c), p = Math.round(u = u / s - (f & 1) / 2), m = d - f;\n\t\t\tif (Math.abs(m) * 3 > 1) {\n\t\t\t\tvar h = u - p, g = p + (u < p ? -1 : 1) / 2, _ = f + (d < f ? -1 : 1), v = u - g, b = d - _;\n\t\t\t\th * h + m * m > v * v + b * b && (p = g + (f & 1 ? 1 : -1) / 2, f = _);\n\t\t\t}\n\t\t\tvar S = p + \"-\" + f, C = t[S];\n\t\t\tC ? C.push(l) : (n.push(C = t[S] = [l]), C.x = (p + (f & 1) / 2) * s, C.y = f * c);\n\t\t}\n\t\treturn n;\n\t}\n\tfunction hexagon(e) {\n\t\tvar t = 0, n = 0;\n\t\treturn $t.map(function(r) {\n\t\t\tvar i = Math.sin(r) * e, a = -Math.cos(r) * e, o = i - t, s = a - n;\n\t\t\treturn t = i, n = a, [o, s];\n\t\t});\n\t}\n\treturn hexbin.hexagon = function(e) {\n\t\treturn \"m\" + hexagon(e == null ? o : +e).join(\"l\") + \"z\";\n\t}, hexbin.centers = function() {\n\t\tfor (var i = [], a = Math.round(t / c), l = Math.round(e / s), u = a * c; u < r + o; u += c, ++a) for (var d = l * s + (a & 1) * s / 2; d < n + s / 2; d += s) i.push([d, u]);\n\t\treturn i;\n\t}, hexbin.mesh = function() {\n\t\tvar e = hexagon(o).slice(0, 4).join(\"l\");\n\t\treturn hexbin.centers().map(function(t) {\n\t\t\treturn \"M\" + t + \"m\" + e;\n\t\t}).join(\"\");\n\t}, hexbin.x = function(e) {\n\t\treturn arguments.length ? (i = e, hexbin) : i;\n\t}, hexbin.y = function(e) {\n\t\treturn arguments.length ? (a = e, hexbin) : a;\n\t}, hexbin.radius = function(e) {\n\t\treturn arguments.length ? (o = +e, s = o * 2 * Math.sin(Qt), c = o * 1.5, hexbin) : o;\n\t}, hexbin.size = function(i) {\n\t\treturn arguments.length ? (e = t = 0, n = +i[0], r = +i[1], hexbin) : [n - e, r - t];\n\t}, hexbin.extent = function(i) {\n\t\treturn arguments.length ? (e = +i[0][0], t = +i[0][1], n = +i[1][0], r = +i[1][1], hexbin) : [[e, t], [n, r]];\n\t}, hexbin.radius(1);\n}\n__name(hexbin_default, \"default\");\n//#endregion\n//#region src/HexBin.ts\nvar HexBin = class extends XYAxis {\n\tstatic __inputs = [{\n\t\tid: \"x\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"y\",\n\t\ttype: \"number\"\n\t}];\n\t_hexbin;\n\t_dataMinWeight;\n\t_dataMaxWeight;\n\tconstructor() {\n\t\tsuper(), t.call(this), this.tooltipValueFormat_default(\",.0f\"), i.call(this), this.tooltipHTML((e) => {\n\t\t\tlet t = C(e, (e) => e.label), n = C(e, (e) => e.value);\n\t\t\treturn this.tooltipFormat({\n\t\t\t\tseries: t[0] === t[1] ? t[0] : `${t[0]} -> ${t[1]}`,\n\t\t\t\tlabel: n[0] === n[1] ? n[0] : `${n[0]} -> ${n[1]}`,\n\t\t\t\tvalue: e.length\n\t\t\t});\n\t\t}), this._hexbin = hexbin_default().x((e) => e.x).y((e) => e.y), this.xAxisGuideLines_default(!1).yAxisGuideLines_default(!1).xAxisType_default(\"linear\");\n\t}\n\txPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.dataPos(t.label) : e.valuePos(t.value);\n\t}\n\tyPos(e, t) {\n\t\treturn e.orientation() === \"horizontal\" ? e.valuePos(t.value) : e.dataPos(t.label);\n\t}\n\tlayerUpdate(e, t, n = 250) {\n\t\tsuper.layerUpdate(e, t, n);\n\t\tlet r = this;\n\t\tthis._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._hexbin.extent([0, 0], [this.width(), this.height()]).radius(this.binSize());\n\t\tlet i = this.flattenData().map((t) => ({\n\t\t\tx: r.xPos(e, t),\n\t\t\ty: r.yPos(e, t),\n\t\t\tlabel: e.parseData(t.label),\n\t\t\tvalue: e.parseValue(t.value),\n\t\t\torigRow: t\n\t\t})), a = this._hexbin(i), o = A(a, function(e) {\n\t\t\treturn e.length;\n\t\t}), s = k(a, function(e) {\n\t\t\treturn e.length;\n\t\t});\n\t\tthis._dataMinWeight = o, this._dataMaxWeight = s;\n\t\tlet c = t.selectAll(\".hexagon\").data(a, function(e) {\n\t\t\treturn e.i + \"_\" + e.j;\n\t\t});\n\t\tc.enter().append(\"path\").attr(\"class\", \"hexagon\").call(e._selection.enter.bind(e._selection)).on(\"click\", function(t) {\n\t\t\tlet n = r.data();\n\t\t\tr.click(t.map((t) => e.rowToObj(n[t.origRow.rowIdx])), r.columns()[1], e._selection.selected(this));\n\t\t}).on(\"dblclick\", function(t) {\n\t\t\tlet n = r.data();\n\t\t\tr.dblclick(t.map((t) => e.rowToObj(n[t.origRow.rowIdx])), r.columns()[1], e._selection.selected(this));\n\t\t}).on(\"mouseout.tooltip\", r.tooltip.hide).on(\"mousemove.tooltip\", r.tooltip.show).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(0)\";\n\t\t}).merge(c).transition().duration(n).attr(\"d\", this._hexbin.hexagon()).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(1)\";\n\t\t}).style(\"fill\", function(e) {\n\t\t\treturn r._palette(e.length, o, s);\n\t\t}), c.exit().transition().duration(n).attr(\"transform\", function(e) {\n\t\t\treturn \"translate(\" + e.x + \",\" + e.y + \")scale(0)\";\n\t\t}).remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n\tclick(e, t, n) {}\n\tdblclick(e, t, n) {}\n};\nHexBin.prototype._class += \" chart_HexBin\", HexBin.prototype.implements(t.prototype), HexBin.prototype.implements(i.prototype), HexBin.prototype.publish(\"paletteID\", \"Blues\", \"set\", \"Color palette for this widget\", HexBin.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), HexBin.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), HexBin.prototype.publish(\"binSize\", 20, \"number\", \"Bin radius\", null, { range: {\n\tmin: 1,\n\tmax: 300,\n\tstep: 1\n} });\n//#endregion\n//#region src/Line.ts\nvar Line = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"linear\");\n\t}\n};\nLine.prototype._class += \" chart_Line\";\n//#endregion\n//#region src/QuarterPie.ts\nvar QuarterPie = class extends Pie {\n\tconstructor() {\n\t\tsuper();\n\t}\n\tpostUpdate(e, t) {\n\t\tsuper.postUpdate(e, t);\n\t\tlet n = this.orientation() === \"left\" ? 0 : this._size.width, r = this._size.height;\n\t\tthis._drawStartPos === \"origin\" && this._target instanceof SVGElement && (n -= this._size.width / 2, r -= this._size.height / 2), this._element.attr(\"transform\", \"translate(\" + n + \",\" + r + \")scale(\" + this._widgetScale + \")\");\n\t}\n\tupdateD3Pie() {\n\t\tsuper.updateD3Pie(), this.d3Pie.startAngle(this.orientation() === \"left\" ? 0 : -Math.PI / 2).endAngle(this.orientation() === \"left\" ? Math.PI / 2 : 0);\n\t}\n\tcalcOuterRadius() {\n\t\tlet e = this.textSize(this.data().map((e) => this.getLabelText({ data: e })), \"Verdana\", 12).width;\n\t\treturn Math.min(this._size.width - e - 10, this._size.height - 36) - 2;\n\t}\n};\nQuarterPie.prototype._class += \" chart_QuarterPie\", QuarterPie.prototype.publish(\"orientation\", \"left\", \"set\", \"Determines the placement and start/end angle.\", [\"left\", \"right\"]);\n//#endregion\n//#region src/QuartileCandlestick.ts\nvar QuartileCandlestick = class extends l {\n\t_g;\n\t_leftLine;\n\t_rightLine;\n\t_midLine;\n\t_midOuterRect;\n\t_midInnerRect1;\n\t_midInnerRect2;\n\t_q0text;\n\t_q1text;\n\t_q2text;\n\t_q3text;\n\t_q4text;\n\t_q0val;\n\t_q1val;\n\t_q2val;\n\t_q3val;\n\t_q4val;\n\tconstructor() {\n\t\tsuper();\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._g = t.append(\"g\"), this._leftLine = this._g.append(\"rect\"), this._rightLine = this._g.append(\"rect\"), this._midLine = this._g.append(\"rect\"), this._midOuterRect = this._g.append(\"rect\"), this._midInnerRect1 = this._g.append(\"rect\"), this._midInnerRect2 = this._g.append(\"rect\"), this._q0text = this._g.append(\"text\"), this._q1text = this._g.append(\"text\"), this._q2text = this._g.append(\"text\"), this._q3text = this._g.append(\"text\"), this._q4text = this._g.append(\"text\"), this._q0val = this._g.append(\"text\"), this._q1val = this._g.append(\"text\"), this._q2val = this._g.append(\"text\"), this._q3val = this._g.append(\"text\"), this._q4val = this._g.append(\"text\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = (this.orientation() === \"horizontal\" ? this.width() : this.height()) - this.lineWidth(), r = this.orientation() === \"horizontal\" ? this.height() : this.width(), i = P().domain([this.data()[0], this.data()[4]]).range([this.edgePadding(), n - this.edgePadding()]), a = this.candleWidth_exists() ? this.candleWidth() : r, o = this.lineWidth(), s = this.lineColor(), c = this.roundedCorners(), l = this.edgePadding(), u = i(this.data()[1]), d = i(this.data()[2]), f = i(this.data()[3]), p = -a / 2, m = a / 2, h = this.upperTextRotation(), g = this.lowerTextRotation(), _ = this.textPadding(), v = this.labelFontSize(), b = this.valueFontSize(), S = Math.max(v, b), C = n - l;\n\t\tif (S > 0) {\n\t\t\tfor (; u - l < S;) u += S;\n\t\t\tfor (; d - u < S;) d += S;\n\t\t\tfor (; f - d < S;) f += S;\n\t\t\tfor (; C - f < S;) f -= S;\n\t\t\tfor (; f - d < S;) d -= S;\n\t\t\tfor (; d - u < S;) u -= S;\n\t\t}\n\t\tlet w = -n / 2 - this.lineWidth() / 2, T = 0, E = 0, D = 1, O = \"start\", k = \"end\";\n\t\tthis.orientation() === \"vertical\" && (w = 0, T = n / 2 + this.lineWidth() / 2, E = -90, O = \"end\", k = \"start\", D = -1), this._g.style(\"shape-rendering\", \"crispEdges\").attr(\"transform\", `translate(${w},${T})rotate(${E})scale(1)`), this._leftLine.attr(\"fill\", s).attr(\"height\", a).attr(\"width\", o).attr(\"x\", l).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._rightLine.attr(\"class\", \"right-line\").attr(\"fill\", s).attr(\"height\", a).attr(\"width\", o).attr(\"x\", C).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._midLine.attr(\"fill\", s).attr(\"height\", o).attr(\"width\", C - l).attr(\"x\", l).attr(\"y\", -o / 2), this._midOuterRect.attr(\"fill\", s).attr(\"height\", a).attr(\"width\", f - u).attr(\"x\", u).attr(\"y\", p).attr(\"rx\", c).attr(\"ry\", c), this._midInnerRect1.attr(\"fill\", this.innerRectColor()).attr(\"height\", a - o * 2).attr(\"width\", d - (u + o * 2)).attr(\"x\", u + o).attr(\"y\", o - a / 2).attr(\"rx\", c * .618).attr(\"ry\", c * .618), this._midInnerRect2.attr(\"fill\", this.innerRectColor()).attr(\"height\", a - o * 2).attr(\"width\", f - d - o).attr(\"x\", d).attr(\"y\", o - a / 2).attr(\"rx\", c * .618).attr(\"ry\", c * .618), this._q0text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${l}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"hanging\").text(this.columns()[0]), this._q1text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${u}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[1]), this._q2text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${d}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[2]), this._q3text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${f}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"middle\").text(this.columns()[3]), this._q4text.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showLabels() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${C + o}, ${p - _})rotate(${h})scale(${D})`).attr(\"font-size\", v).attr(\"text-anchor\", O).attr(\"alignment-baseline\", \"baseline\").text(this.columns()[4]), this._q0val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${l}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"hanging\").text(this.data()[0]), this._q1val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${u}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[1]), this._q2val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${d}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[2]), this._q3val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${f}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"middle\").text(this.data()[3]), this._q4val.attr(\"height\", a).attr(\"width\", f - u).attr(\"display\", this.showValues() ? null : \"none\").attr(\"fill\", this.textColor()).attr(\"x\", 0).attr(\"y\", 0).attr(\"transform\", `translate(${C + o}, ${m + _})rotate(${g})scale(${D})`).attr(\"font-size\", b).attr(\"text-anchor\", k).attr(\"alignment-baseline\", \"baseline\").text(this.data()[4]);\n\t}\n};\nQuartileCandlestick.prototype._class += \" chart_QuartileCandlestick\", QuartileCandlestick.prototype.publish(\"textColor\", \"black\", \"html-color\", \"Color of label and value text\"), QuartileCandlestick.prototype.publish(\"showLabels\", !0, \"boolean\", \"If true, labels will be shown\"), QuartileCandlestick.prototype.publish(\"showValues\", !0, \"boolean\", \"If true, values will be shown\"), QuartileCandlestick.prototype.publish(\"orientation\", \"horizontal\", \"set\", \"Determines layout\", [\"horizontal\", \"vertical\"]), QuartileCandlestick.prototype.publish(\"valueFontSize\", 12, \"number\", \"Font size of value text (pixels)\"), QuartileCandlestick.prototype.publish(\"labelFontSize\", 12, \"number\", \"Font size of label text (pixels)\"), QuartileCandlestick.prototype.publish(\"roundedCorners\", 8, \"number\", \"Radius of rounded rect corners (pixels)\"), QuartileCandlestick.prototype.publish(\"lineWidth\", 4, \"number\", \"Width of lines (pixels)\"), QuartileCandlestick.prototype.publish(\"candleWidth\", null, \"number\", \"Height of outer rect (pixels)\", null, { optional: !0 }), QuartileCandlestick.prototype.publish(\"textPadding\", 8, \"number\", \"Padding between outer rect and text (pixels)\"), QuartileCandlestick.prototype.publish(\"edgePadding\", 30, \"number\", \"Padding between outer rect and left/right sides (pixels)\"), QuartileCandlestick.prototype.publish(\"lineColor\", \"#333\", \"html-color\", \"Color of outer rect and lines\"), QuartileCandlestick.prototype.publish(\"innerRectColor\", \"white\", \"html-color\", \"Color of the inner rects\"), QuartileCandlestick.prototype.publish(\"upperTextRotation\", -60, \"number\", \"Rotation of label text (degrees)\"), QuartileCandlestick.prototype.publish(\"lowerTextRotation\", -60, \"number\", \"Rotation of value text (degrees)\");\n//#endregion\n//#region src/Radar.ts\nvar Radar = class extends l {\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), d.SimpleSelectionMixin.call(this);\n\t}\n\tmapShape(e) {\n\t\tswitch (e) {\n\t\t\tcase \"rectangle\": return \"rect\";\n\t\t\tcase \"circle\": return \"circle\";\n\t\t\tcase \"cross\": return \"path\";\n\t\t\tdefault:\n\t\t}\n\t}\n\tsetPointAttributes(e, t, n) {\n\t\tlet r = this.mapShape(this.pointShape()), i = this;\n\t\tswitch (r) {\n\t\t\tcase \"rect\":\n\t\t\t\te.attr(\"width\", i.pointSize()).attr(\"height\", i.pointSize()).style(\"fill\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tcase \"circle\":\n\t\t\t\te.attr(\"r\", i.pointSize() / 2).attr(\"cx\", t).attr(\"cy\", n).style(\"fill\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tcase \"path\":\n\t\t\t\tlet r = i.pointSize() / 2;\n\t\t\t\te.attr(\"d\", function(e) {\n\t\t\t\t\treturn \"M\" + (t - r) + \" \" + (n - r) + \" L\" + (t + r) + \" \" + (n + r) + \" M\" + (t - r) + \" \" + (n + r) + \" L\" + (t + r) + \" \" + (n - r);\n\t\t\t\t}).style(\"stroke\", (e) => this.strokeColor(e.data, e.column, e.value));\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this.tooltipHTML((e) => this.tooltipFormat({\n\t\t\tlabel: e.label,\n\t\t\tseries: e.column,\n\t\t\tvalue: e.value\n\t\t}));\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._palette = this._palette.switch(this.paletteID());\n\t\tlet n = this, r = this.height(), i = this.width(), a = r / 2, o = i / 2, s = this.columns(), c = this.data(), l = this.flattenData(s, c).map((e, t) => (e.shape = this.mapShape(this.pointShape()), e.column = s[e.colIdx], e.row = c[t], e)), u = [], d = this.degrees2radians(360 / this.data().length), f = this.fontSize(), p = 0;\n\t\tl.filter((e) => e.colIdx === 1).forEach((e) => {\n\t\t\tlet t = super.textSize(e.label, `${this.fontFamily()}`, this.fontSize());\n\t\t\tp < t.width && (p = t.width);\n\t\t});\n\t\tlet m = Math.min(a - f, o - p), h = t.selectAll(\".label\").data(l.filter((e) => e.colIdx === 1)), g = Math.max.apply(n, l.map((e) => e.value));\n\t\th.enter().append(\"text\").attr(\"class\", \"label\").attr(\"text-anchor\", \"middle\").merge(h).attr(\"font-size\", this.fontSize()).attr(\"font-family\", this.fontFamily()).each(function(e, t) {\n\t\t\tlet r = n.polar2cartesian(m, t * d - Math.PI / 2);\n\t\t\tu.push(r.map((e) => e * n.labelPaddingRatio()));\n\t\t\tlet i = \"middle\", a = Math.round(r[0]);\n\t\t\ti = a > 0 ? \"start\" : i, i = a < 0 ? \"end\" : i, z(this).attr(\"text-anchor\", i).attr(\"x\", r[0]).attr(\"y\", r[1]);\n\t\t}).text((e) => e.label), h.exit().remove();\n\t\tlet _ = t.selectAll(\".domain\").data(l.filter((e) => e.colIdx === 1));\n\t\t_.enter().append(\"line\").classed(\"domain\", !0).style(\"stroke\", \"#000\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"1px\").merge(_).attr(\"x1\", 0).attr(\"y1\", 0).attr(\"x2\", (e, t) => u[t][0]).attr(\"y2\", (e, t) => u[t][1]), _.exit().remove();\n\t\tlet v = t.selectAll(\".value_guide\").data(this.valueGuideRatios());\n\t\tv.enter().append(\"polygon\").classed(\"value_guide\", !0).style(\"stroke\", \"grey\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"0.3px\").merge(v).each(function(e, t) {\n\t\t\tlet n = [];\n\t\t\tu.forEach((t, r) => {\n\t\t\t\tn.push([t[0] * e, t[1] * e]);\n\t\t\t}), z(this).attr(\"points\", n.join(\" \")).attr(\"stroke\", \"rgb(0, 0, 0)\").attr(\"stroke-opacity\", .75).attr(\"stroke-width\", .3).attr(\"fill-opacity\", 0);\n\t\t}), v.exit().remove();\n\t\tlet b = t.selectAll(\".value_guide_text\").data(this.valueGuideRatios());\n\t\tb.enter().append(\"text\").attr(\"class\", \"value_guide_text\").attr(\"text-anchor\", \"start\").attr(\"font-size\", this.fontSize()).attr(\"font-family\", this.fontFamily()).merge(b).attr(\"x\", 2).attr(\"y\", (e) => u[0][1] * e).text((e, t) => Math.round(e * g)), v.exit().remove();\n\t\tlet S = t.selectAll(\".area\").data(s.filter((e, t) => t > 0));\n\t\tS.enter().append(\"polygon\").attr(\"class\", \"area\").style(\"stroke-opacity\", \"0.75\").style(\"stroke-width\", \"0.3px\").merge(S).style(\"stroke\", (e) => this.strokeColor([], e, 0)).style(\"fill\", (e) => this.fillColor([], e, 0)).style(\"fill-opacity\", this.fillOpacity()).attr(\"points\", (e, t) => u.map((e, n) => {\n\t\t\tlet r = c[n][t + 1], i = r === 0 ? 0 : r / g;\n\t\t\treturn e[0] * i + \",\" + e[1] * i;\n\t\t}).join(\" \")), S.exit().remove();\n\t\tlet C = t.selectAll(\".point\").data(l);\n\t\tC.enter().append(\"g\").attr(\"class\", \"point\").on(\"mouseout.tooltip\", n.tooltip.hide).on(\"mousemove.tooltip\", n.tooltip.show).on(\"click\", function(e, t) {\n\t\t\tlet r = n.data()[e.rowIdx], i = n.rowToObj(r), a = n._selection.selected(this);\n\t\t\tn.click(i, n.columns()[e.colIdx], a);\n\t\t}).on(\"dblclick\", function(e, t) {\n\t\t\tn.dblclick(n.rowToObj(n.data()[e.rowIdx]), e.column, n._selection.selected(this));\n\t\t}).each(function(e) {\n\t\t\tlet t = z(this);\n\t\t\tt.append(\"circle\").attr(\"class\", \"pointSelection\").attr(\"r\", n.pointSize()).call(n._selection.enter.bind(n._selection)), t.append(n.mapShape(n.pointShape())).attr(\"class\", \"pointShape\");\n\t\t}).merge(C).each(function(e) {\n\t\t\tlet t = z(this), r = e.value === 0 ? 0 : e.value / g, i = u[e.rowIdx][0] * r, a = u[e.rowIdx][1] * r;\n\t\t\tt.select(\".pointSelection\").attr(\"cx\", i).attr(\"cy\", a);\n\t\t\tlet o = t.select(\".pointShape\").style(\"stroke\", n.strokeColor(e.row, e.column, e.value)).style(\"fill\", n.fillColor(e.row, e.column, e.value));\n\t\t\tn.setPointAttributes(o, i, a);\n\t\t}), C.exit().remove();\n\t}\n\tpolar2cartesian(e, t) {\n\t\treturn [e * Math.cos(t), e * Math.sin(t)];\n\t}\n\tcartesian2polar(e, t) {\n\t\treturn [Math.atan2(t, e), Math.sqrt(e * e + t * t)];\n\t}\n\tdegrees2radians(e) {\n\t\treturn e / 57.295779513;\n\t}\n\tradians2degrees(e) {\n\t\treturn e * 57.295779513;\n\t}\n\tpoint_in_polygon(e, t) {\n\t\tlet n = e[0], r = e[1], i = !1;\n\t\tfor (let e = 0, a = t.length - 1; e < t.length; a = e++) {\n\t\t\tlet o = t[e][0], s = t[e][1], c = t[a][0], l = t[a][1];\n\t\t\ts > r != l > r && n < (c - o) * (r - s) / (l - s) + o && (i = !i);\n\t\t}\n\t\treturn i;\n\t}\n};\nRadar.prototype._class += \" chart_Radar\", Radar.prototype.implements(r.prototype), Radar.prototype.implements(i.prototype), Radar.prototype.mixin(d.SimpleSelectionMixin), Radar.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", Radar.prototype._palette.switch()), Radar.prototype.publish(\"pointShape\", \"cross\", \"set\", \"pointShape\", [\n\t\"circle\",\n\t\"rectangle\",\n\t\"cross\"\n]), Radar.prototype.publish(\"pointSize\", 6, \"number\", \"Point Size\", null, { range: {\n\tmin: 1,\n\tstep: 1,\n\tmax: 200\n} }), Radar.prototype.publish(\"valueGuideRatios\", [\n\t.2,\n\t.4,\n\t.6,\n\t.8,\n\t1\n], \"array\", \"Array of values between 0 and 1 that are multiplied by the widget radius to produce guide lines\"), Radar.prototype.publish(\"fillOpacity\", .66, \"number\", \"Opacity of the data polygon(s)\"), Radar.prototype.publish(\"fontFamily\", \"\", \"string\", \"fontFamily\"), Radar.prototype.publish(\"fontSize\", 16, \"number\", \"fontSize\"), Radar.prototype.publish(\"labelPaddingRatio\", .9, \"number\", \"labelPaddingRatio\");\n//#endregion\n//#region src/RadialBar.ts\nvar RadialBar = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"any\"\n\t}, {\n\t\tid: \"values\",\n\t\ttype: \"number\"\n\t}];\n\t_domainScale = N();\n\t_valueScale = P();\n\t_d3Arc = arc_default$1().startAngle(0).endAngle((e) => this._valueScale(e[1]));\n\t_arcs;\n\t_axialAxis;\n\t_radialAxis;\n\tconstructor() {\n\t\tsuper(), r.call(this), i.call(this), d.SimpleSelectionMixin.call(this);\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this.tooltipHTML((e) => this.tooltipFormat({\n\t\t\tlabel: e[0],\n\t\t\tvalue: e[1]\n\t\t})), this._radialAxis = t.append(\"g\").attr(\"class\", \"r axis\"), this._axialAxis = t.append(\"g\").attr(\"class\", \"a axis\"), this._arcs = t.append(\"g\").attr(\"class\", \"data\");\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t);\n\t\tlet n = this, r = Math.max(this.valueDomainHigh_exists() ? this.valueDomainHigh() : 0, ...this.data().map((e) => e[1]));\n\t\tthis._valueScale.domain([0, r]).range([0, this.radians(this.valueMaxAngle())]);\n\t\tlet i = this._valueScale.ticks(this.tickCount()), a = this.textSize(i.map((e) => \"\" + e), \"Verdana\", 12).width, o = Math.min(this.width() - (10 + a) * 2, this.height() - 44) / 2, s = this.data().map((e) => e[0]);\n\t\tthis._domainScale.domain(s).range([0, o]).padding(this.domainPadding());\n\t\tlet c = this._domainScale.step() * this._domainScale.padding(), l = this._radialAxis.selectAll(\"circle\").data(s);\n\t\tl.enter().append(\"circle\").attr(\"fill\", \"transparent\").merge(l).attr(\"r\", (e) => this._domainScale(e) + this._domainScale.step() - c / 2), l.exit().remove();\n\t\tlet u = this._radialAxis.selectAll(\".arc-text\").data(s);\n\t\tu.enter().append(\"text\").attr(\"class\", \"arc-text\").attr(\"x\", -4).attr(\"alignment-baseline\", \"middle\").attr(\"text-anchor\", \"end\").merge(u).attr(\"y\", (e) => -this._domainScale(e) - this._domainScale.bandwidth() / 2).text((e) => e), u.exit().remove();\n\t\tlet d = this._axialAxis.selectAll(\"line\").data(i);\n\t\td.enter().append(\"line\").merge(d).attr(\"x2\", (e) => o * Math.cos(this._valueScale(e) - this.radians(90))).attr(\"y2\", (e) => o * Math.sin(this._valueScale(e) - this.radians(90))), d.exit().remove();\n\t\tlet f = this._axialAxis.selectAll(\"text\").data(i);\n\t\tf.enter().append(\"text\").style(\"dominant-baseline\", \"central\").merge(f).attr(\"x\", (e) => (o + 10) * Math.cos(this._valueScale(e) - this.radians(90))).attr(\"y\", (e) => (o + 10) * Math.sin(this._valueScale(e) - this.radians(90))).style(\"text-anchor\", (e) => {\n\t\t\tlet t = this.degrees(this._valueScale(e));\n\t\t\treturn t >= 0 && t <= 20 || t >= 160 && t <= 200 || t >= 340 && t <= 360 ? \"middle\" : t >= 180 && t <= 360 ? \"end\" : null;\n\t\t}).text((e) => e), f.exit().remove();\n\t\tlet p = this.columns().length > 1 ? this.columns()[1] : \"\";\n\t\tthis._d3Arc.innerRadius((e) => this._domainScale(e[0])).outerRadius((e) => this._domainScale(e[0]) + this._domainScale.bandwidth());\n\t\tlet m = this._arcs.selectAll(\"path\").data(this.data(), (e) => e[0]);\n\t\tm.enter().append(\"path\").attr(\"class\", \"arc\").call(this._selection.enter.bind(this._selection)).on(\"mouseout.tooltip\", this.tooltip.hide).on(\"mousemove.tooltip\", this.tooltip.show).on(\"click\", function(e, t) {\n\t\t\tn.click(n.rowToObj(e), p, n._selection.selected(this));\n\t\t}).on(\"dblclick\", function(e, t) {\n\t\t\tn.dblclick(n.rowToObj(e), p, n._selection.selected(this));\n\t\t}).merge(m).style(\"fill\", (e, t) => this.fillColor(e, e[0], e[1])).transition().delay((e, t) => t * this.transitionDelay()).duration(this.transitionDuration()).attrTween(\"d\", (e, t) => {\n\t\t\tlet n = E(e._current || 0, e[1]);\n\t\t\treturn e._current = e[1], (r) => this._d3Arc([e[0], n(r)], t);\n\t\t}), m.exit().remove();\n\t}\n\tdegrees(e) {\n\t\treturn e * 180 / Math.PI;\n\t}\n\tradians(e) {\n\t\treturn e * Math.PI / 180;\n\t}\n};\nRadialBar.prototype._class += \" chart_RadialBar\", RadialBar.prototype.implements(r.prototype), RadialBar.prototype.implements(i.prototype), RadialBar.prototype.mixin(d.SimpleSelectionMixin), RadialBar.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", RadialBar.prototype._palette.switch()), RadialBar.prototype.publish(\"tickCount\", 10, \"number\", \"Number of ticks to display\"), RadialBar.prototype.publish(\"domainPadding\", .25, \"number\", \"Padding between chart edge and container edge (0..1)\"), RadialBar.prototype.publish(\"valueMaxAngle\", 270, \"number\", \"Maximum angular length of a bar (degrees)\"), RadialBar.prototype.publish(\"valueDomainHigh\", null, \"number\", \"Value domain high\", void 0, { optional: !0 }), RadialBar.prototype.publish(\"transitionDelay\", 100, \"number\", \"Delay between the start of each row animation (ms)\"), RadialBar.prototype.publish(\"transitionDuration\", 750, \"number\", \"Duration of a row's animation (ms)\");\n//#endregion\n//#region src/StatChart.ts\nvar en = c.rainbow(\"Blues\"), tn = c.ordinal(\"Quartile\", [\n\ten(100, 0, 100),\n\ten(50, 0, 100),\n\ten(50, 0, 100),\n\ten(75, 0, 100)\n]);\ntn(\"Std. Dev.\"), tn(\"MinMax\"), tn(\"25%\"), tn(\"50%\");\nfunction myFormatter(e) {\n\tlet t = w(e);\n\treturn function(e) {\n\t\tlet n = (Math.round(e * 100) / 100).toString();\n\t\treturn n.length <= 4 ? n : t(e);\n\t};\n}\nvar StatChart = class extends s {\n\t_selectElement;\n\t_tickFormatter;\n\t_bellCurve = new Scatter().columns([\"\", \"Std. Dev.\"]).paletteID(\"Quartile\").interpolate_default(\"basis\").pointSize(0).xAxisType(\"linear\").xAxisOverlapMode(\"none\").xAxisTickFormat(\",\").yAxisHidden(!0).yAxisDomainLow(0).yAxisDomainHigh(110).yAxisGuideLines(!1);\n\t_candle = new QuartileCandlestick().columns([\n\t\t\"Min\",\n\t\t\"25%\",\n\t\t\"50%\",\n\t\t\"75%\",\n\t\t\"Max\"\n\t]).edgePadding(0).roundedCorners(1).lineWidth(1).upperTextRotation(-90).lowerTextRotation(-90).labelFontSize(0).valueFontSize(0).lineColor(en(90, 0, 100)).innerRectColor(en(10, 0, 100));\n\tconstructor() {\n\t\tsuper(), this.columns([\n\t\t\t\"Min\",\n\t\t\t\"25%\",\n\t\t\t\"50%\",\n\t\t\t\"75%\",\n\t\t\t\"Max\",\n\t\t\t\"Mean\",\n\t\t\t\"Std. Dev.\"\n\t\t]);\n\t}\n\tstdDev(e) {\n\t\treturn this.mean() + e * this.standardDeviation();\n\t}\n\tformatStdDev(e) {\n\t\treturn this._tickFormatter(this.stdDev(e));\n\t}\n\tquartile(e) {\n\t\treturn this.quartiles()[e];\n\t}\n\tformatQ(e) {\n\t\treturn this._tickFormatter(this.quartile(e));\n\t}\n\tdomain(e) {\n\t\tswitch (e) {\n\t\t\tcase \"25_75\": return [this.quartile(1), this.quartile(3)];\n\t\t\tcase \"normal\": return [this.stdDev(-4), this.stdDev(4)];\n\t\t\tdefault: return [this.quartile(0), this.quartile(4)];\n\t\t}\n\t}\n\tmin() {\n\t\treturn this.quartile(0);\n\t}\n\tmax() {\n\t\treturn this.quartile(4);\n\t}\n\tdata(e) {\n\t\tif (!arguments.length) return [[\n\t\t\t...this.quartiles(),\n\t\t\tthis.mean(),\n\t\t\tthis.standardDeviation()\n\t\t]];\n\t\tlet t = e[0];\n\t\treturn this.quartiles([\n\t\t\tt[0],\n\t\t\tt[1],\n\t\t\tt[2],\n\t\t\tt[3],\n\t\t\tt[4]\n\t\t]), this.mean(t[5]), this.standardDeviation(t[6]), this;\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._bellCurve.target(t.append(\"div\").node()), this._candle.target(t.append(\"div\").node()), this._selectElement = t.append(\"div\").style(\"position\", \"absolute\").style(\"top\", \"0px\").style(\"right\", \"0px\").append(\"select\").on(\"change\", () => {\n\t\t\tthis.view(this._selectElement.node().value), this.lazyRender();\n\t\t}), this._selectElement.append(\"option\").attr(\"value\", \"min_max\").text(\"Min / Max\"), this._selectElement.append(\"option\").attr(\"value\", \"25_75\").text(\"25% / 75%\"), this._selectElement.append(\"option\").attr(\"value\", \"normal\").text(\"Normal\");\n\t}\n\tbellTicks(e) {\n\t\tlet t;\n\t\tswitch (e) {\n\t\t\tcase \"25_75\":\n\t\t\t\tt = [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(1),\n\t\t\t\t\t\tvalue: this.quartile(1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(2),\n\t\t\t\t\t\tvalue: this.quartile(2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatQ(3),\n\t\t\t\t\t\tvalue: this.quartile(3)\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\tcase \"normal\":\n\t\t\t\tt = [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(-4),\n\t\t\t\t\t\tvalue: this.stdDev(-4)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-3σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-3)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-2σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"-1σ\",\n\t\t\t\t\t\tvalue: this.stdDev(-1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(0),\n\t\t\t\t\t\tvalue: this.stdDev(0)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+1σ\",\n\t\t\t\t\t\tvalue: this.stdDev(1)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+2σ\",\n\t\t\t\t\t\tvalue: this.stdDev(2)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"+3σ\",\n\t\t\t\t\t\tvalue: this.stdDev(3)\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: this.formatStdDev(4),\n\t\t\t\t\t\tvalue: this.stdDev(4)\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\tdefault: t = [\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(0),\n\t\t\t\t\tvalue: this.quartile(0)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(1),\n\t\t\t\t\tvalue: this.quartile(1)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(2),\n\t\t\t\t\tvalue: this.quartile(2)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(3),\n\t\t\t\t\tvalue: this.quartile(3)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: this.formatQ(4),\n\t\t\t\t\tvalue: this.quartile(4)\n\t\t\t\t}\n\t\t\t];\n\t\t}\n\t\tlet [n, r] = this.domain(this._selectElement.node().value);\n\t\treturn t.filter((e) => e.value >= n && e.value <= r).map((e) => ({\n\t\t\tlabel: e.label,\n\t\t\tvalue: e.value.toString()\n\t\t}));\n\t}\n\tupdateScatter() {\n\t\tlet e = this._selectElement.node().value, [t, n] = this.domain(e), r = (n - t) * (this.domainPadding() / 100);\n\t\tthis._bellCurve.xAxisDomainLow(t - r).xAxisDomainHigh(n + r).xAxisTicks(this.bellTicks(e)).data([\n\t\t\t[this.stdDev(-4), 0],\n\t\t\t[this.stdDev(-3), .3],\n\t\t\t[this.stdDev(-2), 5],\n\t\t\t[this.stdDev(-1), 68],\n\t\t\t[this.stdDev(0), 100],\n\t\t\t[this.stdDev(1), 68],\n\t\t\t[this.stdDev(2), 5],\n\t\t\t[this.stdDev(3), .3],\n\t\t\t[this.stdDev(4), 0]\n\t\t]).resize({\n\t\t\twidth: this.width(),\n\t\t\theight: this.height() - this.candleHeight()\n\t\t}).render();\n\t}\n\tupdateCandle() {\n\t\tlet e = this._bellCurve.dataPos(this.quartile(0)), t = this._bellCurve.dataPos(this.quartile(4)) - e;\n\t\tthis._candle.resize({\n\t\t\twidth: this.width(),\n\t\t\theight: this.candleHeight()\n\t\t}).pos({\n\t\t\tx: e + t / 2 + 2,\n\t\t\ty: this.candleHeight() / 2\n\t\t}).width(t).candleWidth(this.candleHeight()).data(this.quartiles()).render();\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._tickFormatter = myFormatter(this.tickFormat()), this._selectElement.node().value = this.view(), this.updateScatter(), this.updateCandle();\n\t}\n\texit(e, t) {\n\t\tthis._bellCurve.target(null), this._candle.target(null), this._selectElement.remove(), super.exit(e, t);\n\t}\n};\nStatChart.prototype._class += \" chart_StatChart\", StatChart.prototype.publish(\"view\", \"min_max\", \"set\", \"View\", [\n\t\"min_max\",\n\t\"25_75\",\n\t\"normal\"\n]), StatChart.prototype.publish(\"tickFormat\", \".2e\", \"string\", \"X-Axis Tick Format\"), StatChart.prototype.publish(\"candleHeight\", 20, \"number\", \"Height of candle widget (pixels)\"), StatChart.prototype.publish(\"domainPadding\", 10, \"number\", \"Domain value padding\"), StatChart.prototype.publish(\"mean\", .5, \"number\", \"Mean\"), StatChart.prototype.publish(\"standardDeviation\", .125, \"number\", \"Standard Deviation (σ)\"), StatChart.prototype.publish(\"quartiles\", [\n\t0,\n\t.25,\n\t.5,\n\t.75,\n\t1\n], \"object\", \"Quartiles (Min, 25%, 50%, 75%, Max)\");\n//#endregion\n//#region src/Step.ts\nvar Step = class extends Scatter {\n\tconstructor() {\n\t\tsuper(), this.interpolate_default(\"step\");\n\t}\n};\nStep.prototype._class += \" chart_Step\";\n//#endregion\n//#region src/Summary.ts\nvar nn = \"text\", rn = \"html\", Summary = class extends s {\n\t_playIntervalIdx = 0;\n\t_mainDiv;\n\t_headerDiv;\n\t_textDiv;\n\tconstructor() {\n\t\tsuper(), this._tag = \"div\", this._drawStartPos = \"center\", this.playInterval(this.playInterval());\n\t}\n\tlookupFieldIdx(e, t) {\n\t\tlet n = t;\n\t\tif (!(this[e + \"_exists\"]() && (n = this.columns().indexOf(this[e]()), n < 0))) return n;\n\t}\n\tlookupFieldText(e, t) {\n\t\treturn this[e + \"_exists\"]() ? this[e]() : t === void 0 ? \"\" : this.columns()[t] || \"\";\n\t}\n\tcurrentRow() {\n\t\treturn this.data()[this._playIntervalIdx];\n\t}\n\tsummaryData() {\n\t\tlet e;\n\t\tthis.hideLabel() || (e = this.lookupFieldIdx(\"labelColumn\", 0));\n\t\tlet t = this.lookupFieldIdx(\"iconColumn\"), n = this.lookupFieldIdx(\"valueColumn\", 1), r, i;\n\t\tthis.hideMore() || (r = this.lookupFieldIdx(\"moreIconColumn\"), i = this.lookupFieldIdx(\"moreTextColumn\"));\n\t\tlet a = this.lookupFieldIdx(\"colorFillColumn\"), o = this.lookupFieldIdx(\"colorStrokeColumn\");\n\t\treturn this.formattedData().map(function(s) {\n\t\t\treturn {\n\t\t\t\ticon: t === void 0 ? this.icon() : s[t],\n\t\t\t\tlabel: e === void 0 ? \"\" : s[e],\n\t\t\t\tvalue: s[n],\n\t\t\t\tmoreIcon: r === void 0 ? this.hideMore() ? \"\" : this.moreIcon() : s[r],\n\t\t\t\tmoreText: i === void 0 ? this.hideMore() ? \"\" : this.moreText() : s[i],\n\t\t\t\tfill: a === void 0 ? this.colorFill() : s[a],\n\t\t\t\tstroke: o === void 0 ? this.colorStroke() : s[o]\n\t\t\t};\n\t\t}, this);\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._mainDiv = t.append(\"div\");\n\t\tlet n = this;\n\t\tthis._headerDiv = this._mainDiv.append(\"h2\").on(\"click\", function() {\n\t\t\tn.click(n.rowToObj(n.currentRow()), n.lookupFieldText(\"valueColumn\", 1), !0);\n\t\t}).on(\"dblclick\", function() {\n\t\t\tn.dblclick(n.rowToObj(n.currentRow()), n.lookupFieldText(\"valueColumn\", 1), !0);\n\t\t}), this._textDiv = this._mainDiv.append(\"div\").attr(\"class\", \"text\").on(\"click\", function() {\n\t\t\tn.click(n.rowToObj(n.currentRow()), n.lookupFieldText(\"labelColumn\", 0), !0);\n\t\t}).on(\"dblclick\", function() {\n\t\t\tn.dblclick(n.rowToObj(n.currentRow()), n.lookupFieldText(\"labelColumn\", 0), !0);\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this.data().length;\n\t\tlet n = this.summaryData();\n\t\tthis._playIntervalIdx >= n.length && (this._playIntervalIdx = 0);\n\t\tlet r = this._playIntervalIdx < n.length ? n[this._playIntervalIdx] : [\"\", \"\"];\n\t\tt.style(\"width\", this.fixedSize() ? this.minWidth_exists() ? this.minWidth() + \"px\" : null : \"100%\").style(\"height\", this.fixedSize() ? this.minHeight_exists() ? this.minHeight() + \"px\" : null : \"100%\"), this._mainDiv.attr(\"class\", \"content bgIcon \" + r.icon).transition().style(\"background-color\", r.fill).style(\"color\", r.stroke).style(\"min-width\", this.minWidth_exists() ? this.minWidth() + \"px\" : null).style(\"min-height\", this.minHeight_exists() ? this.minHeight() + \"px\" : null).style(\"font-size\", this.iconFontSize() + \"px\"), this._headerDiv.transition().style(\"color\", r.stroke).style(\"font-size\", this.headerFontSize() + \"px\")[this.valueHTML() ? rn : nn](r.value), this._textDiv.style(\"font-size\", this.textFontSize() + \"px\")[this.labelHTML() ? rn : nn](r.label);\n\t\tlet i = this, a = this._mainDiv.selectAll(\".more\").data([r]), o = a.enter().append(\"div\").attr(\"class\", \"more\").on(\"click\", function(e) {\n\t\t\ti.click(i.rowToObj(i.currentRow()), i.lookupFieldText(\"moreTextColumn\") || \"more\", !0);\n\t\t}).each(function() {\n\t\t\tlet e = z(this);\n\t\t\te.append(\"i\"), e.append(\"span\");\n\t\t}).merge(a).style(\"display\", this.hideMoreWrapper() ? \"none\" : null).style(\"font-size\", this.moreFontSize() + \"px\").style(\"height\", this.moreWrapperHeight_exists() ? this.moreWrapperHeight() + \"px\" : null).transition().style(\"background-color\", M(r.fill).darker(.75).toString());\n\t\to.select(\"i\").attr(\"class\", function(e) {\n\t\t\treturn \"fa \" + e.moreIcon;\n\t\t}), this.moreTextHTML() ? o.select(\"span\").each(function(e) {\n\t\t\tthis.innerHTML = e.moreText;\n\t\t}) : o.select(\"span\").text((e) => e.moreText), a.exit().remove();\n\t}\n\texit(e, t) {\n\t\tsuper.exit(e, t);\n\t}\n};\nSummary.prototype._class += \" chart_Summary\", Summary.prototype.implements(n.prototype), Summary.prototype.publish(\"iconColumn\", null, \"set\", \"Select Icon Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"icon\", \"fa-briefcase\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.iconColumn() }), Summary.prototype.publish(\"headerFontSize\", null, \"number\", \"headerFontSize\"), Summary.prototype.publish(\"textFontSize\", null, \"number\", \"textFontSize\"), Summary.prototype.publish(\"moreFontSize\", null, \"number\", \"moreFontSize\"), Summary.prototype.publish(\"iconFontSize\", null, \"number\", \"iconFontSize\"), Summary.prototype.publish(\"hideLabel\", !1, \"boolean\", \"Hide label column\"), Summary.prototype.publish(\"labelColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideLabel()\n}), Summary.prototype.publish(\"labelHTML\", !1, \"boolean\", \"Allow HTML\", null, { disable: (e) => e.hideLabel() }), Summary.prototype.publish(\"valueColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"valueHTML\", !1, \"boolean\", \"Allow HTML\"), Summary.prototype.publish(\"hideMore\", !1, \"boolean\", \"Hide More Information\"), Summary.prototype.publish(\"hideMoreWrapper\", !1, \"boolean\", \"Hide More Information Wrapper\"), Summary.prototype.publish(\"moreWrapperHeight\", null, \"number\", \"Height of the 'more' text wrapper (pixels)\"), Summary.prototype.publish(\"moreIconColumn\", null, \"set\", \"Select More Icon Column\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideMore()\n}), Summary.prototype.publish(\"moreIcon\", \"fa-info-circle\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.hideMore() || e.moreIconColumn() }), Summary.prototype.publish(\"moreTextColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, {\n\toptional: !0,\n\tdisable: (e) => e.hideMore()\n}), Summary.prototype.publish(\"moreText\", \"More Info\", \"string\", \"More text\", null, { disable: (e) => e.hideMore() || e.moreTextColumn() }), Summary.prototype.publish(\"moreTextHTML\", !1, \"boolean\", \"Allow HTML\", null, { disable: (e) => e.hideMore() }), Summary.prototype.publish(\"colorFillColumn\", null, \"set\", \"Column for color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"colorFill\", \"#3498db\", \"html-color\", \"Fill Color\", null, { disable: (e) => e.colorFillColumn() }), Summary.prototype.publish(\"colorStrokeColumn\", null, \"set\", \"Column for color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), Summary.prototype.publish(\"colorStroke\", \"#ffffff\", \"html-color\", \"Fill Color\", null, { disable: (e) => e.colorStrokeColumn() }), Summary.prototype.publish(\"fixedSize\", !0, \"boolean\", \"Fix Size to Min Width/Height\"), Summary.prototype.publish(\"minWidth\", 225, \"number\", \"Minimum Width\"), Summary.prototype.publish(\"minHeight\", 150, \"number\", \"Minimum Height\"), Summary.prototype.publish(\"playInterval\", null, \"number\", \"Play Interval\", null, { optional: !0 });\nvar an = Summary.prototype.playInterval;\nSummary.prototype.playInterval = function(e) {\n\tlet t = an.apply(this, arguments);\n\tif (arguments.length) {\n\t\tthis._playIntervalHandle && clearInterval(this._playIntervalHandle);\n\t\tlet t = this;\n\t\te && (this._playIntervalHandle = setInterval(function() {\n\t\t\tt._playIntervalIdx++, t._renderCount && t.data().length && t.render();\n\t\t}, e));\n\t}\n\treturn t;\n};\n//#endregion\n//#region src/SummaryC.ts\nvar SummaryC = class extends a {\n\t_playIntervalIdx = 0;\n\tconstructor() {\n\t\tsuper(), n.call(this), this.playInterval(this.playInterval());\n\t}\n\tcurrentRow() {\n\t\treturn this.data()[this._playIntervalIdx];\n\t}\n\tenter(e, t) {\n\t\tsuper.enter.apply(this, arguments);\n\t\tlet { width: n, height: r } = this.size();\n\t\te.height = r, e.width = n;\n\t}\n\tupdate(e, t) {\n\t\tsuper.update.apply(this, arguments);\n\t\tlet n = this;\n\t\tthis._playIntervalIdx >= this.data().length && (this._playIntervalIdx = 0);\n\t\tlet r = this.size(), i = Math.min(r.width, r.height), a = this.fontSizeRatio(), o = this.columns().indexOf(this.labelColumn()), s = this.columns().indexOf(this.valueColumn()), c = this.columns().indexOf(this.colorFillColumn()), l = this.columns().indexOf(this.colorStrokeColumn()), u = this.columns().indexOf(this.iconColumn()), f = u === -1 ? this.icon() : this.currentRow()[u], p = o === -1 ? \"\" : this.currentRow()[o], m = s === -1 ? \"\" : this.currentRow()[s], h = c === -1 ? this.colorFill() : this.currentRow()[c], g = l === -1 ? this.colorStroke() : this.currentRow()[l], _ = r.height * (a - this.paddingSizeRatio()), v = r.height * (1 - a - this.paddingSizeRatio()), b = r.height * (this.iconSizeRatio() - this.paddingSizeRatio()), S = i * this.paddingSizeRatio(), C = e.getContext(\"2d\");\n\t\tC.clearRect(0, 0, r.width, r.height);\n\t\tlet w = n.fontFamily();\n\t\tC.fillStyle = h, C.fillRect(0, 0, r.width, r.height), C.globalAlpha = this.iconOpacity(), drawIcon(d.faChar(f), b, n.iconAnchor()), C.globalAlpha = this.valueOpacity(), _ = drawText(m, S, _, n.valueAnchor()), C.globalAlpha = this.labelOpacity(), drawText(p, _ + S, v, n.labelAnchor());\n\t\tfunction drawText(e, t, n, i) {\n\t\t\tC.textBaseline = \"top\", C.font = `${n}px ${w}`, C.fillStyle = g;\n\t\t\tlet a = C.measureText(e);\n\t\t\tif (a.width > r.width - S * 2) {\n\t\t\t\tlet t = (r.width - S * 2) / a.width;\n\t\t\t\tn *= t, C.font = `${n}px ${w}`, a = C.measureText(e);\n\t\t\t}\n\t\t\tlet o = getTextOffsetX(a.width, i);\n\t\t\treturn C.fillText(e, o, t), n;\n\t\t}\n\t\tfunction drawIcon(e, t, i) {\n\t\t\tif (e === void 0) return;\n\t\t\tC.textBaseline = n.iconBaseline(), C.font = `${t}px FontAwesome`, C.fillStyle = g;\n\t\t\tlet a = C.measureText(e);\n\t\t\ta.width > r.width - S * 2 && (C.font = `${t * ((r.width - S * 2) / a.width)}px FontAwesome`, a = C.measureText(e));\n\t\t\tlet o = getTextOffsetX(a.width, i), s = getTextOffsetY(n.iconBaseline());\n\t\t\tC.fillText(e, o, s);\n\t\t}\n\t\tfunction getTextOffsetX(e, t) {\n\t\t\tswitch (t) {\n\t\t\t\tcase \"start\": return S;\n\t\t\t\tcase \"middle\": return r.width / 2 - e / 2;\n\t\t\t\tcase \"end\": return r.width - e - S;\n\t\t\t}\n\t\t}\n\t\tfunction getTextOffsetY(e) {\n\t\t\tswitch (e) {\n\t\t\t\tcase \"top\": return S;\n\t\t\t\tcase \"middle\": return r.height / 2;\n\t\t\t\tcase \"bottom\": return r.height - S;\n\t\t\t}\n\t\t}\n\t}\n};\nSummaryC.prototype._class += \" chart_SummaryC\", SummaryC.prototype.implements(n.prototype), SummaryC.prototype.publish(\"iconBaseline\", \"bottom\", \"string\", \"Text baseline for the icon\", [\n\t\"top\",\n\t\"middle\",\n\t\"bottom\"\n]), SummaryC.prototype.publish(\"iconAnchor\", \"end\", \"set\", \"Anchors the icon either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"valueAnchor\", \"start\", \"set\", \"Anchors the value either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"labelAnchor\", \"start\", \"set\", \"Anchors the label either at the start, middle, or end of the summary\", [\n\t\"start\",\n\t\"middle\",\n\t\"end\"\n]), SummaryC.prototype.publish(\"iconColumn\", null, \"set\", \"Select Icon Column\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"icon\", \"fa-briefcase\", \"string\", \"FA Char icon class\", null, { disable: (e) => e.iconColumn() }), SummaryC.prototype.publish(\"fontFamily\", \"Arial\", \"string\", \"Font Family\"), SummaryC.prototype.publish(\"labelColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"valueColumn\", null, \"set\", \"Select display value\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorFillColumn\", null, \"set\", \"Column for background color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorFill\", \"#0097e6\", \"html-color\", \"Background Color\", null, { disable: (e) => e.colorFillColumn() }), SummaryC.prototype.publish(\"colorStrokeColumn\", null, \"set\", \"Column for font color\", function() {\n\treturn this.columns();\n}, { optional: !0 }), SummaryC.prototype.publish(\"colorStroke\", \"#2f3640\", \"html-color\", \"Font Color\", null, { disable: (e) => e.colorStrokeColumn() }), SummaryC.prototype.publish(\"fixedSize\", !0, \"boolean\", \"Fix Size to Min Width/Height\"), SummaryC.prototype.publish(\"minWidth\", 225, \"number\", \"Minimum Width\"), SummaryC.prototype.publish(\"minHeight\", 150, \"number\", \"Minimum Height\"), SummaryC.prototype.publish(\"playInterval\", null, \"number\", \"Play Interval\", null, { optional: !0 }), SummaryC.prototype.publish(\"fontSizeRatio\", .618, \"number\", \"Ratio between widget height and value font size\"), SummaryC.prototype.publish(\"valueOpacity\", 1, \"number\", \"Opacity of value text (0..1)\"), SummaryC.prototype.publish(\"labelOpacity\", .9, \"number\", \"Opacity of label text (0..1)\"), SummaryC.prototype.publish(\"iconOpacity\", .3, \"number\", \"Opacity of icon text (0..1)\"), SummaryC.prototype.publish(\"paddingSizeRatio\", .1, \"number\", \"Ratio of the smallest dimension for edge padding (0..1)\"), SummaryC.prototype.publish(\"iconSizeRatio\", .9, \"number\", \"Ratio of the height for icon size (0..1)\");\nvar on = SummaryC.prototype.playInterval;\nSummaryC.prototype.playInterval = function(e) {\n\tlet t = on.apply(this, arguments);\n\tif (arguments.length) {\n\t\tthis._playIntervalHandle && clearInterval(this._playIntervalHandle);\n\t\tlet t = this;\n\t\te && (this._playIntervalHandle = setInterval(function() {\n\t\t\tt._playIntervalIdx++, t._renderCount && t.data().length && t.render();\n\t\t}, e));\n\t}\n\treturn t;\n};\n//#endregion\n//#region src/D3Cloud.ts\nvar sn = Math.PI / 180, cn = 64, ln = 2048;\nfunction d3Cloud() {\n\tlet e = v(\"word\", \"end\"), t = {}, n = [256, 256], r = cloudText, i = cloudFont, a = cloudFontSize, o = cloudFontNormal, s = cloudFontNormal, c = cloudRotate, l = cloudPadding, u = [], d = archimedeanSpiral, f = Infinity, p = null, m = Math.random, h = cloudCanvas;\n\tt.canvas = function(e) {\n\t\treturn arguments.length ? (h = functor(e), t) : h;\n\t}, t.start = function() {\n\t\tlet d = getContext(h()), g = zeroArray((n[0] >> 5) * n[1]), _ = null, v = u.length, b = -1, S = [], C = u.map(function(e, t) {\n\t\t\treturn e.text = r.call(this, e, t), e.font = i.call(this, e, t), e.style = o.call(this, e, t), e.weight = s.call(this, e, t), e.rotate = c.call(this, e, t), e.size = ~~a.call(this, e, t), e.padding = l.call(this, e, t), e;\n\t\t}).sort(function(e, t) {\n\t\t\treturn t.size - e.size;\n\t\t});\n\t\treturn p && clearInterval(p), p = setInterval(step, 0), step(), t;\n\t\tfunction step() {\n\t\t\tlet r = Date.now();\n\t\t\tfor (; Date.now() - r < f && ++b < v && p;) {\n\t\t\t\tlet r = C[b];\n\t\t\t\tr.x = n[0] * (m() + .5) >> 1, r.y = n[1] * (m() + .5) >> 1, cloudSprite(d, r, C, b), r.hasText && place(g, r, _) && (S.push(r), e.call(\"word\", t, r), _ ? cloudBounds(_, r) : _ = [{\n\t\t\t\t\tx: r.x + r.x0,\n\t\t\t\t\ty: r.y + r.y0\n\t\t\t\t}, {\n\t\t\t\t\tx: r.x + r.x1,\n\t\t\t\t\ty: r.y + r.y1\n\t\t\t\t}], r.x -= n[0] >> 1, r.y -= n[1] >> 1);\n\t\t\t}\n\t\t\tb >= v && (t.stop(), e.call(\"end\", t, S, _));\n\t\t}\n\t}, t.stop = function() {\n\t\treturn p &&= (clearInterval(p), null), t;\n\t};\n\tfunction getContext(e) {\n\t\te.width = e.height = 1;\n\t\tlet t = Math.sqrt(e.getContext(\"2d\").getImageData(0, 0, 1, 1).data.length >> 2);\n\t\te.width = (cn << 5) / t, e.height = ln / t;\n\t\tlet n = e.getContext(\"2d\");\n\t\treturn n.fillStyle = n.strokeStyle = \"red\", n.textAlign = \"center\", {\n\t\t\tcontext: n,\n\t\t\tratio: t\n\t\t};\n\t}\n\tfunction place(e, t, r) {\n\t\tlet i = t.x, a = t.y, o = Math.sqrt(n[0] * n[0] + n[1] * n[1]), s = d(n), c = m() < .5 ? 1 : -1, l = -c, u, f, p;\n\t\tfor (; (u = s(l += c)) && (f = ~~u[0], p = ~~u[1], !(Math.min(Math.abs(f), Math.abs(p)) >= o));) if (t.x = i + f, t.y = a + p, !(t.x + t.x0 < 0 || t.y + t.y0 < 0 || t.x + t.x1 > n[0] || t.y + t.y1 > n[1]) && (!r || !cloudCollide(t, e, n[0])) && (!r || collideRects(t, r))) {\n\t\t\tlet r = t.sprite, i = t.width >> 5, a = n[0] >> 5, o = t.x - (i << 4), s = o & 127, c = 32 - s, l = t.y1 - t.y0, u = (t.y + t.y0) * a + (o >> 5), d;\n\t\t\tfor (let t = 0; t < l; t++) {\n\t\t\t\td = 0;\n\t\t\t\tfor (let n = 0; n <= i; n++) e[u + n] |= d << c | (n < i ? (d = r[t * i + n]) >>> s : 0);\n\t\t\t\tu += a;\n\t\t\t}\n\t\t\treturn delete t.sprite, !0;\n\t\t}\n\t\treturn !1;\n\t}\n\treturn t.timeInterval = function(e) {\n\t\treturn arguments.length ? (f = e ?? Infinity, t) : f;\n\t}, t.words = function(e) {\n\t\treturn arguments.length ? (u = e, t) : u;\n\t}, t.size = function(e) {\n\t\treturn arguments.length ? (n = [+e[0], +e[1]], t) : n;\n\t}, t.font = function(e) {\n\t\treturn arguments.length ? (i = functor(e), t) : i;\n\t}, t.fontStyle = function(e) {\n\t\treturn arguments.length ? (o = functor(e), t) : o;\n\t}, t.fontWeight = function(e) {\n\t\treturn arguments.length ? (s = functor(e), t) : s;\n\t}, t.rotate = function(e) {\n\t\treturn arguments.length ? (c = functor(e), t) : c;\n\t}, t.text = function(e) {\n\t\treturn arguments.length ? (r = functor(e), t) : r;\n\t}, t.spiral = function(e) {\n\t\treturn arguments.length ? (d = un[e] || e, t) : d;\n\t}, t.fontSize = function(e) {\n\t\treturn arguments.length ? (a = functor(e), t) : a;\n\t}, t.padding = function(e) {\n\t\treturn arguments.length ? (l = functor(e), t) : l;\n\t}, t.random = function(e) {\n\t\treturn arguments.length ? (m = e, t) : m;\n\t}, t.on = function() {\n\t\tlet n = e.on.apply(e, arguments);\n\t\treturn n === e ? t : n;\n\t}, t;\n}\nfunction cloudText(e) {\n\treturn e.text;\n}\nfunction cloudFont() {\n\treturn \"serif\";\n}\nfunction cloudFontNormal() {\n\treturn \"normal\";\n}\nfunction cloudFontSize(e) {\n\treturn Math.sqrt(e.value);\n}\nfunction cloudRotate() {\n\treturn (~~(Math.random() * 6) - 3) * 30;\n}\nfunction cloudPadding() {\n\treturn 1;\n}\nfunction cloudSprite(e, t, n, r) {\n\tif (t.sprite) return;\n\tlet i = e.context, a = e.ratio;\n\ti.clearRect(0, 0, (cn << 5) / a, ln / a);\n\tlet o = 0, s = 0, c = 0, l = n.length;\n\tfor (--r; ++r < l;) {\n\t\tt = n[r], i.save(), i.font = t.style + \" \" + t.weight + \" \" + ~~((t.size + 1) / a) + \"px \" + t.font;\n\t\tlet e = i.measureText(t.text + \"m\").width * a, l = t.size << 1;\n\t\tif (t.rotate) {\n\t\t\tlet n = Math.sin(t.rotate * sn), r = Math.cos(t.rotate * sn), i = e * r, a = e * n, o = l * r, s = l * n;\n\t\t\te = Math.max(Math.abs(i + s), Math.abs(i - s)) + 31 >> 5 << 5, l = ~~Math.max(Math.abs(a + o), Math.abs(a - o));\n\t\t} else e = e + 31 >> 5 << 5;\n\t\tif (l > c && (c = l), o + e >= cn << 5 && (o = 0, s += c, c = 0), s + l >= ln) break;\n\t\ti.translate((o + (e >> 1)) / a, (s + (l >> 1)) / a), t.rotate && i.rotate(t.rotate * sn), i.fillText(t.text, 0, 0), t.padding && (i.lineWidth = 2 * t.padding, i.strokeText(t.text, 0, 0)), i.restore(), t.width = e, t.height = l, t.xoff = o, t.yoff = s, t.x1 = e >> 1, t.y1 = l >> 1, t.x0 = -t.x1, t.y0 = -t.y1, t.hasText = !0, o += e;\n\t}\n\tlet u = i.getImageData(0, 0, (cn << 5) / a, ln / a).data, d = [];\n\tfor (; --r >= 0;) {\n\t\tif (t = n[r], !t.hasText) continue;\n\t\tlet e = t.width, i = e >> 5, a = t.y1 - t.y0;\n\t\tfor (let e = 0; e < a * i; e++) d[e] = 0;\n\t\tif (o = t.xoff, o == null) return;\n\t\ts = t.yoff;\n\t\tlet c = 0, l = -1;\n\t\tfor (let n = 0; n < a; n++) {\n\t\t\tfor (let t = 0; t < e; t++) {\n\t\t\t\tlet e = i * n + (t >> 5), r = u[(s + n) * (cn << 5) + (o + t) << 2] ? 1 << 31 - t % 32 : 0;\n\t\t\t\td[e] |= r, c |= r;\n\t\t\t}\n\t\t\tc ? l = n : (t.y0++, a--, n--, s++);\n\t\t}\n\t\tt.y1 = t.y0 + l, t.sprite = d.slice(0, (t.y1 - t.y0) * i);\n\t}\n}\nfunction cloudCollide(e, t, n) {\n\tn >>= 5;\n\tlet r = e.sprite, i = e.width >> 5, a = e.x - (i << 4), o = a & 127, s = 32 - o, c = e.y1 - e.y0, l = (e.y + e.y0) * n + (a >> 5), u;\n\tfor (let e = 0; e < c; e++) {\n\t\tu = 0;\n\t\tfor (let n = 0; n <= i; n++) if ((u << s | (n < i ? (u = r[e * i + n]) >>> o : 0)) & t[l + n]) return !0;\n\t\tl += n;\n\t}\n\treturn !1;\n}\nfunction cloudBounds(e, t) {\n\tlet n = e[0], r = e[1];\n\tt.x + t.x0 < n.x && (n.x = t.x + t.x0), t.y + t.y0 < n.y && (n.y = t.y + t.y0), t.x + t.x1 > r.x && (r.x = t.x + t.x1), t.y + t.y1 > r.y && (r.y = t.y + t.y1);\n}\nfunction collideRects(e, t) {\n\treturn e.x + e.x1 > t[0].x && e.x + e.x0 < t[1].x && e.y + e.y1 > t[0].y && e.y + e.y0 < t[1].y;\n}\nfunction archimedeanSpiral(e) {\n\tlet t = e[0] / e[1];\n\treturn function(e) {\n\t\treturn [t * (e *= .1) * Math.cos(e), e * Math.sin(e)];\n\t};\n}\nfunction rectangularSpiral(e) {\n\tlet t = 4 * e[0] / e[1], n = 0, r = 0;\n\treturn function(e) {\n\t\tlet i = e < 0 ? -1 : 1;\n\t\tswitch (Math.sqrt(1 + 4 * i * e) - i & 3) {\n\t\t\tcase 0:\n\t\t\t\tn += t;\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tr += 4;\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tn -= t;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tr -= 4;\n\t\t\t\tbreak;\n\t\t}\n\t\treturn [n, r];\n\t};\n}\nfunction zeroArray(e) {\n\tlet t = [], n = -1;\n\tfor (; ++n < e;) t[n] = 0;\n\treturn t;\n}\nfunction cloudCanvas() {\n\treturn document.createElement(\"canvas\");\n}\nfunction functor(e) {\n\treturn typeof e == \"function\" ? e : function() {\n\t\treturn e;\n\t};\n}\nvar un = {\n\tarchimedean: archimedeanSpiral,\n\trectangular: rectangularSpiral\n}, WordCloud = class extends l {\n\tstatic __inputs = [{\n\t\tid: \"label\",\n\t\ttype: \"string\"\n\t}, {\n\t\tid: \"value\",\n\t\ttype: \"number\"\n\t}];\n\t_prevOffsetX;\n\t_prevOffsetY;\n\t_prevZoom;\n\t_root;\n\t_canvas;\n\t_d3Cloud;\n\t_d3Zoom;\n\tconstructor() {\n\t\tsuper(), n.call(this), i.call(this), d.SimpleSelectionMixin.call(this), this._prevOffsetX = this.offsetX(), this._prevOffsetY = this.offsetY(), this._prevZoom = this.zoom();\n\t}\n\tcalcData() {\n\t\treturn this.data().map((e) => ({\n\t\t\t__viz_label: e[0],\n\t\t\t__viz_weight: e[1],\n\t\t\t__viz_row: e\n\t\t}));\n\t}\n\tenter(e, t) {\n\t\tsuper.enter(e, t), this._selection.widgetElement(t), this._root = t.append(\"g\"), this._canvas = document.createElement(\"canvas\");\n\t\tlet n = this;\n\t\tthis._d3Zoom = ne().scaleExtent([.1, 10]), this._d3Zoom.on(\"zoom\", function(e) {\n\t\t\tlet t = g();\n\t\t\tt && t.transform && n.zoomed(n._d3Zoom, [t.transform.x, t.transform.y], t.transform.k);\n\t\t}), t.call(this._d3Zoom), this.tooltipHTML(function(e) {\n\t\t\tlet t = n.columns(), r = t && t.length ? t[0] : \"Word\";\n\t\t\treturn n.tooltipFormat({\n\t\t\t\tlabel: e.__viz_label,\n\t\t\t\tseries: r,\n\t\t\t\tvalue: e.__viz_weight\n\t\t\t});\n\t\t});\n\t}\n\tupdate(e, t) {\n\t\tsuper.update(e, t), this._palette = this._palette.switch(this.paletteID()), this.useClonedPalette() && (this._palette = this._palette.cloneNotExists(this.paletteID() + \"_\" + this.id())), this._d3Cloud = d3Cloud().canvas(() => this._canvas), this.zoomed(this, [this.offsetX(), this.offsetY()], this.zoom());\n\t\tlet n = this.calcData(), r = this, i = C(n, function(e) {\n\t\t\treturn e.__viz_weight;\n\t\t}), a;\n\t\tswitch (this.scaleMode()) {\n\t\t\tcase \"log\":\n\t\t\t\ta = F;\n\t\t\t\tbreak;\n\t\t\tcase \"sqrt\":\n\t\t\t\ta = L;\n\t\t\t\tbreak;\n\t\t\tcase \"pow\":\n\t\t\t\ta = I;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ta = P;\n\t\t\t\tbreak;\n\t\t}\n\t\tlet o = a().domain(i).range([this.fontSizeFrom(), this.fontSizeTo()]), s = P().domain([0, r.angleCount() - 1]).range([r.angleFrom(), r.angleTo()]);\n\t\tthis._d3Cloud.stop().size([this.width(), this.height()]).words(n).font(this.fontFamily()).padding(this.padding()).spiral(this.spiral()).text(function(e) {\n\t\t\treturn e.__viz_label.trim();\n\t\t}).fontSize(function(e) {\n\t\t\treturn o(e.__viz_weight);\n\t\t}).rotate((e, t) => s(t % r.angleCount())).on(\"word\", (e) => {}).on(\"end\", draw).start();\n\t\tfunction draw(e, t) {\n\t\t\tlet n = r._root.selectAll(\"text\").data(e, function(e) {\n\t\t\t\treturn e.__viz_label ? e.__viz_label.toLowerCase() : \"\";\n\t\t\t});\n\t\t\tn.enter().append(\"text\").attr(\"text-anchor\", \"middle\").call(r._selection.enter.bind(r._selection)).text(function(e) {\n\t\t\t\treturn e.__viz_label;\n\t\t\t}).on(\"click\", function(e) {\n\t\t\t\tr.click(r.rowToObj(e.__viz_row), r.columns()[1], r._selection.selected(this));\n\t\t\t}).on(\"dblclick\", function(e) {\n\t\t\t\tr.dblclick(r.rowToObj(e.__viz_row), r.columns()[1], r._selection.selected(this));\n\t\t\t}).on(\"mouseout.tooltip\", r.tooltip.hide).on(\"mousemove.tooltip\", r.tooltip.show).style(\"opacity\", 1e-6).merge(n).style(\"font-size\", function(e) {\n\t\t\t\treturn o(e.__viz_weight) + \"px\";\n\t\t\t}).style(\"font-family\", r.fontFamily()).transition().duration(1e3).attr(\"transform\", function(e) {\n\t\t\t\treturn \"translate(\" + [e.x, e.y] + \")rotate(\" + e.rotate + \")\";\n\t\t\t}).style(\"fill\", function(e) {\n\t\t\t\treturn r._palette(e.__viz_label ? e.__viz_label.toLowerCase() : \"\");\n\t\t\t}).style(\"opacity\", 1), n.exit().transition().duration(1e3).style(\"opacity\", 1e-4).remove();\n\t\t}\n\t}\n\tzoomed(e, t, n) {\n\t\tif (t[0] !== this._prevOffsetX || t[1] !== this._prevOffsetY || n !== this._prevZoom) {\n\t\t\tswitch (this._root.attr(\"transform\", t), e) {\n\t\t\t\tcase this: break;\n\t\t\t\tcase this._d3Zoom:\n\t\t\t\t\tthis.offsetX(t[0]), this.offsetY(t[1]), this.zoom(n);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis._prevOffsetX = t[0], this._prevOffsetY = t[1], this._prevZoom = n;\n\t\t}\n\t}\n};\nWordCloud.prototype._class += \" chart_WordCloud\", WordCloud.prototype.implements(n.prototype), WordCloud.prototype.implements(i.prototype), WordCloud.prototype.mixin(d.SimpleSelectionMixin), WordCloud.prototype.publish(\"paletteID\", \"default\", \"set\", \"Color palette for this widget\", WordCloud.prototype._palette.switch(), { tags: [\"Basic\", \"Shared\"] }), WordCloud.prototype.publish(\"useClonedPalette\", !1, \"boolean\", \"Enable or disable using a cloned palette\", null, { tags: [\"Intermediate\", \"Shared\"] }), WordCloud.prototype.publish(\"fontFamily\", \"Impact\", \"string\", \"Font Name\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"fontSizeFrom\", 6, \"number\", \"Minimum font size (pixels)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"fontSizeTo\", 48, \"number\", \"Maximum font size (pixels)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleFrom\", -60, \"number\", \"Minimum angle (degrees)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleTo\", 60, \"number\", \"Maximum angle (degrees)\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"angleCount\", 5, \"number\", \"Number of different angles\", null, { tags: [\"Basic\"] }), WordCloud.prototype.publish(\"padding\", 0, \"number\", \"Padding between words (pixels)\", null, { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"scaleMode\", \"linear\", \"set\", \"Text scaling mode\", [\n\t\"linear\",\n\t\"log\",\n\t\"sqrt\",\n\t\"pow\"\n], { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"spiral\", \"archimedean\", \"set\", \"Text scaling mode\", [\"archimedean\", \"rectangular\"], { tags: [\"Intermediate\"] }), WordCloud.prototype.publish(\"offsetX\", 0, \"number\", \"X offset\", null, { tags: [\"Advanced\"] }), WordCloud.prototype.publish(\"offsetY\", 0, \"number\", \"Y offset\", null, { tags: [\"Advanced\"] }), WordCloud.prototype.publish(\"zoom\", 1, \"number\", \"Zoom\", null, { tags: [\"Advanced\"] });\n//#endregion\n//#region src/timeFormats.ts\nfunction multiScale24Hours() {\n\tlet e = V(\".%L\"), t = V(\":%S\"), n = V(\"%H:%M\"), r = V(\"%H:00\"), i = V(\"%b %d\"), a = V(\"%b\"), o = V(\"%Y\");\n\treturn (s) => s.getMilliseconds() === 0 ? s.getSeconds() === 0 ? s.getMinutes() === 0 ? s.getHours() === 0 ? s.getDate() === 1 ? s.getMonth() === 0 ? o(s) : a(s) : i(s) : r(s) : n(s) : t(s) : e(s);\n}\n//#endregion\nexport { Area, Axis, ce as BUILD_VERSION, Bar, Bubble, BubbleXY, Bullet, Column, Contour, Gantt, $ as Gauge, HalfPie, Heat, HexBin, Line, oe as PKG_NAME, se as PKG_VERSION, Pie, QuarterPie, QuartileCandlestick, Radar, RadialBar, Scatter, StatChart, Step, Summary, SummaryC, WordCloud, XYAxis, multiScale24Hours };\n\n//# sourceMappingURL=index.js.map\n(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.chart_Axis{fill:#000;font:10px sans-serif}.chart_Axis .axis .tick>text{font:10px sans-serif}.chart_Axis .axis path.domain,.chart_Axis .axis .tick line{fill:none;stroke:#000}.chart_Axis .guide path.domain{fill:none;stroke:none}.chart_Axis .guide .tick line{fill:none;stroke:#d3d3d3;opacity:.7}.chart_Axis .guide .tick.guide-0 line{stroke:#000;stroke-width:1px;stroke-dasharray:3 5}.chart_Axis line,.chart_Axis path{shape-rendering:crispedges}.chart_XYAxis .axis{fill:#000;font:10px sans-serif}.chart_XYAxis .tick>text{font:10px sans-serif}.chart_XYAxis .focus .chart_Axis.value .tick{visibility:hidden}.chart_XYAxis .axis path,.chart_XYAxis .axis line{fill:none;stroke:#000;shape-rendering:crispedges}.chart_XYAxis .region{opacity:.33}.chart_XYAxis .brush rect.background{z-index:-999}.chart_XYAxis .brush .selection{stroke:#4682b4;stroke-opacity:1;stroke-width:1px;fill:#4682b4;fill-opacity:.125;shape-rendering:crispedges}.chart_XYAxis .brush path.handle--custom{fill:#eee;stroke:#666}.chart_Scatter .pointShape,.chart_Scatter .line,.chart_Scatter .area{pointer-events:none}.chart_Scatter .point .pointSelection{fill:none;stroke:#0000;stroke-width:2px;pointer-events:all;transition:all .2s}.chart_Scatter .point .pointSelection.selected{stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Scatter .point .pointSelection:hover{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Scatter .point .pointSelection:focus{stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Scatter .point .pointSelection.selected:focus{stroke:#6f42c1!important}.chart_Scatter .point .pointSelection:focus-visible{outline:none}.chart_Scatter .point .pointSelection:active{outline:none!important}.chart_Column .columnRect{fill:#4682b4;cursor:pointer}.chart_Column .data.axis path{display:none}.chart_Column .columnRect{stroke:#0000;border-width:2px}.chart_Column .dataCell.selected .columnRect{transition:all .2s;stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Column .dataCell:hover .columnRect{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Column .dataCell:focus .columnRect{transition:all .2s;stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Column .dataCell.selected:focus .columnRect{stroke:#6f42c1!important}.chart_Column .dataCell:focus-visible{outline:none}.chart_Column .dataCell:active{outline:none!important}.chart_Bubble circle{cursor:pointer}.chart_Bubble .selected circle{stroke:red;stroke-width:1.5px}.chart_Bubble .common_FAChar{fill:#fff;pointer-events:none}.chart_Bubble .common_Text{pointer-events:none}.chart_Bullet .domain{opacity:0}.chart_Bullet .bullet{border:1px solid #0000;font:10px sans-serif}.chart_Bullet .bullet.selected{border-color:red}.chart_Bullet .bullet.over{border-color:orange}.chart_Bullet .bullet.selected.over{border-color:red}.chart_Bullet .bullet .marker{stroke:#000;stroke-width:2px}.chart_Bullet .bullet .tick line{stroke:#666;stroke-width:.5px}.chart_Bullet .bullet .range.s0{fill:#eee}.chart_Bullet .bullet .range.s1{fill:#ddd}.chart_Bullet .bullet .range.s2{fill:#ccc}.chart_Bullet .bullet .measure.s0{fill:#b0c4de}.chart_Bullet .bullet .measure.s1{fill:#4682b4}.chart_Bullet .bullet .title{font-size:14px;font-weight:700}.chart_Bullet .bullet .subtitle{fill:#999}.chart_Pie path,.chart_Pie>g>text{cursor:pointer}.chart_Pie .arc path{stroke:#0000;stroke-width:2px}.chart_Pie .arc.selected path{transition:all .2s;stroke:#dc3545!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Pie polyline{opacity:.3;stroke:#000;stroke-width:2px;fill:none}.chart_Pie .arc:hover path{stroke:#6c757d99;stroke-width:2px;filter:brightness(1.05)}.chart_Pie .arc:focus path{transition:all .2s;stroke:#007bff!important;stroke-width:3px!important;paint-order:fill stroke!important}.chart_Pie .arc.selected:focus path{stroke:#6f42c1!important}.chart_Pie .arc:focus-visible{outline:none}.chart_Pie .arc:active{outline:none!important}.chart_HexBin .hexagon{fill:none;stroke:#000;stroke-width:.5px}.chart_HexBin .hexagon.selected{stroke:red}.chart_Line .dataLine{fill:none;stroke:#4682b4;stroke-width:1.5px}.chart_Radar .pointShape,.chart_Radar .area{pointer-events:none}.chart_Radar .point .pointSelection{fill:none;stroke:none;pointer-events:all}.chart_Radar .point .pointSelection.selected{fill:none;stroke:red}.chart_RadialBar path.arc{opacity:.9;transition:opacity .5s}.chart_RadialBar path.arc.selected{stroke:red}.chart_RadialBar path.arc:hover{opacity:.7}.chart_RadialBar .axis line,.chart_RadialBar .axis circle{stroke:#ccc;stroke-width:1px}.chart_RadialBar .axis circle{fill:none}.chart_RadialBar .r.axis text{text-anchor:end}.chart_Summary{width:225px;height:150px;font-size:14px}.chart_Summary .content h2{margin-top:10px;margin-bottom:10px;margin-left:10px;font-size:3em;font-weight:700}.chart_Summary .bgIcon:before{opacity:.4;font-family:FontAwesome;font-size:5.5em;position:absolute;top:.5em;right:15px}.chart_Summary .bgIcon{position:relative}.chart_Summary .content{float:left;background-color:#efd752;width:100%;height:100%}.chart_Summary .content div{opacity:.8;margin-top:-1.1em;font-size:1.1em}.chart_Summary .content .text{padding-left:10px}.chart_Summary .content .more{width:100%;height:3em;line-height:3em;position:absolute;bottom:0}.chart_Summary .content .more i{padding-left:10px;padding-right:.5em}.other_Wordcloud text{cursor:pointer}/*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();","import { Palette } from \"@hpcc-js/common\";\nimport { Scope, Workunit, WsWorkunits } from \"@hpcc-js/comms\";\nimport { ReactTimelineSeries } from \"@hpcc-js/timeline\";\nimport { multiScale24Hours } from \"@hpcc-js/chart\";\nimport { hashSum, RecursivePartial } from \"@hpcc-js/util\";\n\nimport \"../src/WUGraph.css\";\n\nconst columns = [\"label\", \"start\", \"end\", \"icon\", \"color\", \"series\"];\n\nexport class WUTimeline extends ReactTimelineSeries {\n\n protected _palette = Palette.ordinal(\"default\");\n\n constructor() {\n super();\n this\n .columns(columns)\n .titleColumn(\"label\")\n .iconColumn(\"icon\")\n .colorColumn(\"color\")\n .seriesColumn(\"series\")\n .timePattern(\"%Y-%m-%dT%H:%M:%S.%LZ\")\n .tickFormatFunc(multiScale24Hours())\n .tooltipTimeFormat(\"%H:%M:%S.%L\")\n .tooltipHTML(d => {\n return d[columns.length].calcTooltip();\n })\n ;\n }\n\n private _prevHashSum;\n clear(): this {\n delete this._prevHashSum;\n return this;\n }\n fetchScopes() {\n const hash = hashSum({\n baseUrl: this.baseUrl(),\n wuid: this.wuid(),\n request: this.request()\n });\n if (this._prevHashSum !== hash) {\n this._prevHashSum = hash;\n const wu = Workunit.attach({ baseUrl: this.baseUrl() }, this.wuid());\n wu.fetchDetails(this.request()).then(scopes => {\n return scopes.filter(scope => scope.Id && scope.attr(\"WhenStarted\").RawValue).map((scope: Scope) => {\n const whenStarted = +scope.attr(\"WhenStarted\").RawValue / 1000;\n const timeElapsed = +scope.attr(\"TimeElapsed\").RawValue / 1000000;\n return [\n scope.Id,\n new Date(whenStarted).toISOString(),\n timeElapsed ? new Date(whenStarted + timeElapsed).toISOString() : undefined,\n null,\n this._palette(scope.ScopeType),\n scope.ScopeName.split(\"::\").join(\":\").split(\":\").slice(0, 1),\n scope\n ];\n });\n }).then(scopes => {\n this\n .data(scopes)\n .render()\n ;\n });\n }\n }\n\n enter(domNode, _element) {\n super.enter(domNode, _element);\n }\n\n update(domNode, element) {\n this.fetchScopes();\n super.update(domNode, element);\n }\n\n exit(domNode, element) {\n super.exit(domNode, element);\n }\n}\nWUTimeline.prototype._class += \" eclwatch_WUTimeline\";\n\nexport interface WUTimeline {\n baseUrl(): string;\n baseUrl(_: string): this;\n wuid(): string;\n wuid(_: string): this;\n request(): Partial<WsWorkunits.WUDetails>;\n request(_: RecursivePartial<WsWorkunits.WUDetails>): this;\n}\n\nWUTimeline.prototype.publish(\"baseUrl\", \"\", \"string\", \"HPCC Platform Base URL\");\nWUTimeline.prototype.publish(\"wuid\", \"\", \"string\", \"Workunit ID\");\nWUTimeline.prototype.publish(\"request\", {\n ScopeFilter: {\n MaxDepth: 3,\n ScopeTypes: [\"graph\", \"subgraph\"]\n },\n NestedFilter: {\n Depth: 0,\n ScopeTypes: []\n },\n PropertiesToReturn: {\n AllProperties: false,\n AllStatistics: true,\n AllHints: false,\n Properties: [\"WhenStarted\", \"TimeElapsed\"]\n },\n ScopeOptions: {\n IncludeId: true,\n IncludeScope: true,\n IncludeScopeType: true\n },\n PropertyOptions: {\n IncludeName: true,\n IncludeRawValue: true,\n IncludeFormatted: true,\n IncludeMeasure: true,\n IncludeCreator: false,\n IncludeCreatorType: false\n }\n}, \"object\", \"WUDetails Request\");\n"],"mappings":"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"}
|