@covalent/highlight 10.4.0-beta.3 → 11.0.0-beta.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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, Input, Output, ViewChild, HostListener, SecurityContext, NgModule } from '@angular/core';
2
+ import { EventEmitter, Component, HostListener, ViewChild, Output, Input, SecurityContext, NgModule } from '@angular/core';
3
3
  import * as i1$1 from '@angular/platform-browser';
4
4
  import { MatTooltip } from '@angular/material/tooltip';
5
5
  import * as i1 from '@angular/common';
@@ -1 +1 @@
1
- {"version":3,"file":"covalent-highlight.mjs","sources":["../../../../libs/angular-highlight/src/lib/copy-code-button/copy-code-button.component.html","../../../../libs/angular-highlight/src/lib/copy-code-button/copy-code-button.component.ts","../../../../libs/angular-highlight/src/lib/highlight.component.html","../../../../libs/angular-highlight/src/lib/highlight.component.ts","../../../../libs/angular-highlight/src/lib/highlight.module.ts","../../../../libs/angular-highlight/src/covalent-highlight.ts"],"sourcesContent":["<mat-button-toggle-group\n multiple\n class=\"raw-and-copy-buttons\"\n *ngIf=\"toggleRawButton; else button\"\n>\n <mat-button-toggle (click)=\"toggleRawClicked()\" #rawButton>{{\n rawToggleText\n }}</mat-button-toggle>\n <mat-button-toggle\n [cdkCopyToClipboard]=\"copiedContent\"\n [matTooltip]=\"copyTooltip\"\n #tooltip=\"matTooltip\"\n #copyButton\n (click)=\"copyClicked()\"\n (cdkCopyToClipboardCopied)=\"textCopied($event)\"\n >\n <mat-icon width>content_copy</mat-icon>\n </mat-button-toggle>\n</mat-button-toggle-group>\n\n<ng-template #button>\n <button\n mat-icon-button\n [cdkCopyToClipboard]=\"copiedContent\"\n class=\"copy-button\"\n [matTooltip]=\"copyTooltip\"\n #tooltip=\"matTooltip\"\n (cdkCopyToClipboardCopied)=\"textCopied($event)\"\n >\n <mat-icon role=\"img\">content_copy</mat-icon>\n </button>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport {\n Component,\n Input,\n ViewChild,\n HostListener,\n EventEmitter,\n Output,\n} from '@angular/core';\nimport { MatButtonToggle, MatButtonToggleGroup } from '@angular/material/button-toggle';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { ClipboardModule } from '@angular/cdk/clipboard';\n\nexport interface ICopyCodeTooltips {\n copy?: string;\n copied?: string;\n}\n\nexport interface IRawToggleLabels {\n viewRaw?: string;\n viewCode?: string;\n}\n\n@Component({\n selector: 'td-copy-code-button',\n templateUrl: './copy-code-button.component.html',\n styleUrls: ['./copy-code-button.component.scss'],\n imports: [CommonModule, MatButtonToggle, MatButtonToggleGroup, MatIcon, MatTooltip, ClipboardModule],\n})\nexport class TdCopyCodeButtonComponent {\n // private _copyCodeTooltips: ICopyCodeTooltips = {};\n @Input() copiedContent!: string;\n @Input() copyCodeToClipboard = false;\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n\n @Input() toggleRawButton = false;\n @Input() rawToggleLabels?: IRawToggleLabels = {};\n\n rawToggle = false;\n\n @Output() toggleRaw = new EventEmitter<boolean>();\n\n @ViewChild('copyButton') copyButton!: MatButtonToggle;\n @ViewChild('rawButton') rawButton!: MatButtonToggle;\n\n get copyTooltip(): string {\n return (this.copyCodeTooltips && this.copyCodeTooltips.copy) || 'Copy';\n }\n\n get copiedTooltip(): string {\n return (this.copyCodeTooltips && this.copyCodeTooltips.copied) || 'Copied';\n }\n\n get rawToggleText(): string {\n if (this.rawToggle) {\n return this.rawToggleLabels?.viewCode || 'View code';\n } else {\n return this.rawToggleLabels?.viewRaw || 'Raw';\n }\n }\n\n @ViewChild('tooltip') tooltip!: MatTooltip;\n\n textCopied(event: boolean): void {\n if (event) {\n this.tooltip.hide();\n this.tooltip.message = this.copiedTooltip;\n this.tooltip.show();\n }\n }\n @HostListener('mouseleave')\n initializeTooltip(): void {\n setTimeout(() => {\n this.tooltip.message = this.copyTooltip;\n }, 200);\n }\n\n toggleRawClicked(): void {\n this.rawToggle = !this.rawToggle;\n this.toggleRaw.emit();\n this.rawButton.checked = false;\n }\n\n copyClicked(): void {\n this.copyButton.checked = false;\n }\n}\n","<div>\n <div #highlightComponent>\n <ng-content></ng-content>\n </div>\n\n <div #copyComponent *ngIf=\"copyCodeToClipboard\">\n <td-copy-code-button\n [toggleRawButton]=\"toggleRawButton\"\n [rawToggleLabels]=\"rawToggleLabels\"\n (toggleRaw)=\"toggleRawClicked()\"\n [copiedContent]=\"copyContent\"\n [copyCodeToClipboard]=\"copyCodeToClipboard\"\n [copyCodeTooltips]=\"copyCodeTooltips\"\n ></td-copy-code-button>\n </div>\n</div>\n","import {\n Component,\n AfterViewInit,\n ElementRef,\n Input,\n Output,\n EventEmitter,\n Renderer2,\n SecurityContext,\n ViewChild,\n ChangeDetectorRef,\n AfterViewChecked,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport {\n ICopyCodeTooltips,\n IRawToggleLabels,\n TdCopyCodeButtonComponent,\n} from './copy-code-button/copy-code-button.component';\n\nimport hljs, { HighlightResult } from 'highlight.js';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'td-highlight',\n styleUrls: ['./highlight.component.scss'],\n templateUrl: './highlight.component.html',\n imports: [CommonModule, TdCopyCodeButtonComponent],\n})\nexport class TdHighlightComponent implements AfterViewInit, AfterViewChecked {\n private _initialized = false;\n\n private _content!: string;\n private _lang = 'typescript';\n\n private _showRaw = false;\n\n /**\n * content?: string\n *\n * Code content to be parsed as highlighted html.\n * Used to load data dynamically.\n *\n * e.g. `.html`, `.ts` , etc.\n */\n @Input()\n set content(content: string) {\n this._content = content;\n if (this._initialized) {\n this._loadContent(this._content);\n }\n }\n\n /**\n * copyCodeToClipboard?: boolean\n *\n * Display copy button on code snippets to copy code to clipboard.\n */\n @Input() copyCodeToClipboard? = false;\n\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n @Input() copyCodeTooltips?: ICopyCodeTooltips = {};\n\n /**\n * toggleRawButton?: boolean\n *\n * Display button to toggle raw code.\n */\n @Input() toggleRawButton = false;\n\n /**\n * rawToggleLabels?: IRawToggleLabels\n *\n * Labels for raw toggle button.\n */\n @Input() rawToggleLabels?: IRawToggleLabels = {};\n\n /**\n * lang?: string\n *\n * Language of the code content to be parsed as highlighted html.\n * Defaults to `typescript`\n *\n * e.g. `typescript`, `html` , etc.\n */\n\n @Input()\n set codeLang(lang: string) {\n this.setLanguage(lang);\n }\n /** @deprecated - removed completely @4.0.0 */\n @Input()\n set lang(lang: string) {\n // tslint:disable-next-line: no-console\n console.warn(\n 'DEPRECATION WARNING: switch to codeLang attribute as lang attribute is deprecated.'\n );\n this.setLanguage(lang);\n }\n\n copyContent!: string;\n\n /**\n * contentReady?: function\n * Event emitted after the highlight content rendering is finished.\n */\n @Output() contentReady: EventEmitter<void> = new EventEmitter<void>();\n @ViewChild('highlightComponent') highlightComp!: ElementRef;\n @ViewChild('copyComponent') copyComp!: ElementRef;\n\n @ViewChild('tooltip') tooltip!: MatTooltip;\n\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n private _domSanitizer: DomSanitizer,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngAfterViewChecked(): void {\n this.cdr.detectChanges();\n }\n\n ngAfterViewInit(): void {\n if (!this._content) {\n this._content =\n (<HTMLElement>this.highlightComp.nativeElement).textContent || '';\n }\n this._loadContent(this._content);\n\n this._initialized = true;\n }\n\n setLanguage(lang: string): void {\n if (!lang) {\n throw new Error(\n 'Error: language attribute must be defined in TdHighlightComponent.'\n );\n }\n this._lang = lang;\n if (this._initialized) {\n this._loadContent(this._content);\n }\n }\n\n toggleRawClicked(): void {\n this._showRaw = !this._showRaw;\n this._elementRef.nativeElement.querySelector('pre').style.display = this\n ._showRaw\n ? 'none'\n : 'block';\n this._elementRef.nativeElement.querySelector('.raw').style.display = this\n ._showRaw\n ? 'block'\n : 'none';\n }\n\n /**\n * General method to parse a string of code into HTML Elements and load them into the container\n */\n private _loadContent(code: string | null): void {\n if (code && code.trim().length > 0) {\n // Clean container\n this._renderer.setProperty(\n this._elementRef.nativeElement,\n 'innerHTML',\n ''\n );\n\n this._elementFromString(code);\n\n if (this.copyCodeToClipboard) {\n this._renderer.appendChild(\n this._elementRef.nativeElement,\n this.copyComp.nativeElement\n );\n }\n }\n this.contentReady.emit();\n }\n\n private _elementFromString(codeStr: string): void {\n // Renderer2 doesnt have a parsing method, so we have to sanitize and use [innerHTML]\n // to parse the string into DOM element for now.\n const preElement: HTMLPreElement = this._renderer.createElement('pre');\n this._renderer.appendChild(this._elementRef.nativeElement, preElement);\n const codeElement: HTMLElement = this._renderer.createElement('code');\n this._renderer.appendChild(preElement, codeElement);\n // Set .highlight class into <code> element\n this._renderer.addClass(codeElement, 'highlight');\n\n const highlightedCode = this._render(codeStr);\n\n codeElement.innerHTML =\n this._domSanitizer.sanitize(SecurityContext.HTML, highlightedCode) ?? '';\n\n if (this.toggleRawButton) {\n const divElement: HTMLDivElement = this._renderer.createElement('div');\n divElement.className = 'raw';\n this._renderer.appendChild(this._elementRef.nativeElement, divElement);\n divElement.innerHTML =\n this._domSanitizer.sanitize(SecurityContext.HTML, codeStr) ?? '';\n this._renderer.setStyle(divElement, 'display', 'none');\n }\n }\n\n private _render(contents: string): string {\n // Trim leading and trailing newlines\n contents = contents\n .replace(/^(\\s|\\t)*\\n+/g, '')\n .replace(/(\\s|\\t)*\\n+(\\s|\\t)*$/g, '');\n // Split markup by line characters\n let lines: string[] = contents.split('\\n');\n\n // check how much indentation is used by the first actual code line\n const firstLineWhitespaceMatch = lines[0].match(/^(\\s|\\t)*/);\n const firstLineWhitespace = firstLineWhitespaceMatch\n ? firstLineWhitespaceMatch[0]\n : null;\n\n // Remove all indentation spaces so code can be parsed correctly\n const startingWhitespaceRegex = new RegExp('^' + firstLineWhitespace);\n lines = lines.map(function (line: string): string {\n return line\n .replace('=\"\"', '') // remove empty values\n .replace(startingWhitespaceRegex, '')\n .replace(/\\s+$/, ''); // remove trailing white spaces\n });\n\n const codeToParse: string = lines\n .join('\\n')\n .replace(/\\{ \\{/gi, '{{')\n .replace(/\\} \\}/gi, '}}')\n .replace(/&lt;/gi, '<')\n .replace(/&gt;/gi, '>'); // replace with < and > to render HTML in Angular\n this.copyContent = codeToParse;\n // Parse code with highlight.js depending on language\n const highlightedCode: HighlightResult = hljs.highlight(codeToParse, {\n language: this._lang,\n ignoreIllegals: true,\n });\n highlightedCode.value = highlightedCode.value\n .replace(/=<span class=\"hljs-value\">\"\"<\\/span>/gi, '')\n .replace('<head>', '')\n .replace('<head/>', '');\n return highlightedCode.value;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { TdHighlightComponent } from './highlight.component';\nimport { TdCopyCodeButtonComponent } from './copy-code-button/copy-code-button.component';\n\n/**\n * @deprecated This module is deprecated and will be removed in future versions.\n * Please migrate to using standalone components as soon as possible.\n */\n@NgModule({\n imports: [TdHighlightComponent, TdCopyCodeButtonComponent],\n exports: [TdHighlightComponent],\n})\nexport class CovalentHighlightModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"covalent-highlight.mjs","sources":["../tmp-esm2022/lib/copy-code-button/copy-code-button.component.js","../tmp-esm2022/lib/highlight.component.js","../tmp-esm2022/lib/highlight.module.js","../tmp-esm2022/covalent-highlight.js"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input, ViewChild, HostListener, EventEmitter, Output, } from '@angular/core';\nimport { MatButtonToggle, MatButtonToggleGroup } from '@angular/material/button-toggle';\nimport { MatIcon } from '@angular/material/icon';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { ClipboardModule } from '@angular/cdk/clipboard';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@angular/cdk/clipboard\";\nconst _c0 = [\"copyButton\"];\nconst _c1 = [\"rawButton\"];\nconst _c2 = [\"tooltip\"];\nfunction TdCopyCodeButtonComponent_mat_button_toggle_group_0_Template(rf, ctx) { if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"mat-button-toggle-group\", 5)(1, \"mat-button-toggle\", 6, 1);\n i0.ɵɵlistener(\"click\", function TdCopyCodeButtonComponent_mat_button_toggle_group_0_Template_mat_button_toggle_click_1_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleRawClicked()); });\n i0.ɵɵtext(3);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"mat-button-toggle\", 7, 2);\n i0.ɵɵlistener(\"click\", function TdCopyCodeButtonComponent_mat_button_toggle_group_0_Template_mat_button_toggle_click_4_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.copyClicked()); })(\"cdkCopyToClipboardCopied\", function TdCopyCodeButtonComponent_mat_button_toggle_group_0_Template_mat_button_toggle_cdkCopyToClipboardCopied_4_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.textCopied($event)); });\n i0.ɵɵelementStart(7, \"mat-icon\", 8);\n i0.ɵɵtext(8, \"content_copy\");\n i0.ɵɵelementEnd()()();\n} if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance(3);\n i0.ɵɵtextInterpolate(ctx_r1.rawToggleText);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"cdkCopyToClipboard\", ctx_r1.copiedContent)(\"matTooltip\", ctx_r1.copyTooltip);\n} }\nfunction TdCopyCodeButtonComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {\n const _r3 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"button\", 9, 3);\n i0.ɵɵlistener(\"cdkCopyToClipboardCopied\", function TdCopyCodeButtonComponent_ng_template_1_Template_button_cdkCopyToClipboardCopied_0_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.textCopied($event)); });\n i0.ɵɵelementStart(2, \"mat-icon\", 10);\n i0.ɵɵtext(3, \"content_copy\");\n i0.ɵɵelementEnd()();\n} if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"cdkCopyToClipboard\", ctx_r1.copiedContent)(\"matTooltip\", ctx_r1.copyTooltip);\n} }\nexport class TdCopyCodeButtonComponent {\n // private _copyCodeTooltips: ICopyCodeTooltips = {};\n copiedContent;\n copyCodeToClipboard = false;\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n copyCodeTooltips = {};\n toggleRawButton = false;\n rawToggleLabels = {};\n rawToggle = false;\n toggleRaw = new EventEmitter();\n copyButton;\n rawButton;\n get copyTooltip() {\n return (this.copyCodeTooltips && this.copyCodeTooltips.copy) || 'Copy';\n }\n get copiedTooltip() {\n return (this.copyCodeTooltips && this.copyCodeTooltips.copied) || 'Copied';\n }\n get rawToggleText() {\n if (this.rawToggle) {\n return this.rawToggleLabels?.viewCode || 'View code';\n }\n else {\n return this.rawToggleLabels?.viewRaw || 'Raw';\n }\n }\n tooltip;\n textCopied(event) {\n if (event) {\n this.tooltip.hide();\n this.tooltip.message = this.copiedTooltip;\n this.tooltip.show();\n }\n }\n initializeTooltip() {\n setTimeout(() => {\n this.tooltip.message = this.copyTooltip;\n }, 200);\n }\n toggleRawClicked() {\n this.rawToggle = !this.rawToggle;\n this.toggleRaw.emit();\n this.rawButton.checked = false;\n }\n copyClicked() {\n this.copyButton.checked = false;\n }\n static ɵfac = function TdCopyCodeButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TdCopyCodeButtonComponent)(); };\n static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TdCopyCodeButtonComponent, selectors: [[\"td-copy-code-button\"]], viewQuery: function TdCopyCodeButtonComponent_Query(rf, ctx) { if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n i0.ɵɵviewQuery(_c1, 5);\n i0.ɵɵviewQuery(_c2, 5);\n } if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.copyButton = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.rawButton = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tooltip = _t.first);\n } }, hostBindings: function TdCopyCodeButtonComponent_HostBindings(rf, ctx) { if (rf & 1) {\n i0.ɵɵlistener(\"mouseleave\", function TdCopyCodeButtonComponent_mouseleave_HostBindingHandler() { return ctx.initializeTooltip(); });\n } }, inputs: { copiedContent: \"copiedContent\", copyCodeToClipboard: \"copyCodeToClipboard\", copyCodeTooltips: \"copyCodeTooltips\", toggleRawButton: \"toggleRawButton\", rawToggleLabels: \"rawToggleLabels\" }, outputs: { toggleRaw: \"toggleRaw\" }, decls: 3, vars: 2, consts: [[\"button\", \"\"], [\"rawButton\", \"\"], [\"tooltip\", \"matTooltip\", \"copyButton\", \"\"], [\"tooltip\", \"matTooltip\"], [\"multiple\", \"\", \"class\", \"raw-and-copy-buttons\", 4, \"ngIf\", \"ngIfElse\"], [\"multiple\", \"\", 1, \"raw-and-copy-buttons\"], [3, \"click\"], [3, \"click\", \"cdkCopyToClipboardCopied\", \"cdkCopyToClipboard\", \"matTooltip\"], [\"width\", \"\"], [\"mat-icon-button\", \"\", 1, \"copy-button\", 3, \"cdkCopyToClipboardCopied\", \"cdkCopyToClipboard\", \"matTooltip\"], [\"role\", \"img\"]], template: function TdCopyCodeButtonComponent_Template(rf, ctx) { if (rf & 1) {\n i0.ɵɵtemplate(0, TdCopyCodeButtonComponent_mat_button_toggle_group_0_Template, 9, 3, \"mat-button-toggle-group\", 4)(1, TdCopyCodeButtonComponent_ng_template_1_Template, 4, 2, \"ng-template\", null, 0, i0.ɵɵtemplateRefExtractor);\n } if (rf & 2) {\n const button_r4 = i0.ɵɵreference(2);\n i0.ɵɵproperty(\"ngIf\", ctx.toggleRawButton)(\"ngIfElse\", button_r4);\n } }, dependencies: [CommonModule, i1.NgIf, MatButtonToggle, MatButtonToggleGroup, MatIcon, MatTooltip, ClipboardModule, i2.CdkCopyToClipboard], styles: [\"mat-button-toggle-group.raw-and-copy-buttons[_ngcontent-%COMP%]{margin-top:-8px;margin-right:-8px;margin-left:8px}mat-button-toggle-group.raw-and-copy-buttons[_ngcontent-%COMP%] .mat-button-toggle-label-content{font-size:12px;line-height:28px}mat-button-toggle-group.raw-and-copy-buttons[_ngcontent-%COMP%] .mat-button-toggle-label-content mat-icon{width:16px;height:16px;font-size:16px}\"] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(TdCopyCodeButtonComponent, [{\n type: Component,\n args: [{ selector: 'td-copy-code-button', imports: [CommonModule, MatButtonToggle, MatButtonToggleGroup, MatIcon, MatTooltip, ClipboardModule], template: \"<mat-button-toggle-group\\n multiple\\n class=\\\"raw-and-copy-buttons\\\"\\n *ngIf=\\\"toggleRawButton; else button\\\"\\n>\\n <mat-button-toggle (click)=\\\"toggleRawClicked()\\\" #rawButton>{{\\n rawToggleText\\n }}</mat-button-toggle>\\n <mat-button-toggle\\n [cdkCopyToClipboard]=\\\"copiedContent\\\"\\n [matTooltip]=\\\"copyTooltip\\\"\\n #tooltip=\\\"matTooltip\\\"\\n #copyButton\\n (click)=\\\"copyClicked()\\\"\\n (cdkCopyToClipboardCopied)=\\\"textCopied($event)\\\"\\n >\\n <mat-icon width>content_copy</mat-icon>\\n </mat-button-toggle>\\n</mat-button-toggle-group>\\n\\n<ng-template #button>\\n <button\\n mat-icon-button\\n [cdkCopyToClipboard]=\\\"copiedContent\\\"\\n class=\\\"copy-button\\\"\\n [matTooltip]=\\\"copyTooltip\\\"\\n #tooltip=\\\"matTooltip\\\"\\n (cdkCopyToClipboardCopied)=\\\"textCopied($event)\\\"\\n >\\n <mat-icon role=\\\"img\\\">content_copy</mat-icon>\\n </button>\\n</ng-template>\\n\", styles: [\"mat-button-toggle-group.raw-and-copy-buttons{margin-top:-8px;margin-right:-8px;margin-left:8px}mat-button-toggle-group.raw-and-copy-buttons ::ng-deep .mat-button-toggle-label-content{font-size:12px;line-height:28px}mat-button-toggle-group.raw-and-copy-buttons ::ng-deep .mat-button-toggle-label-content mat-icon{width:16px;height:16px;font-size:16px}\\n\"] }]\n }], null, { copiedContent: [{\n type: Input\n }], copyCodeToClipboard: [{\n type: Input\n }], copyCodeTooltips: [{\n type: Input\n }], toggleRawButton: [{\n type: Input\n }], rawToggleLabels: [{\n type: Input\n }], toggleRaw: [{\n type: Output\n }], copyButton: [{\n type: ViewChild,\n args: ['copyButton']\n }], rawButton: [{\n type: ViewChild,\n args: ['rawButton']\n }], tooltip: [{\n type: ViewChild,\n args: ['tooltip']\n }], initializeTooltip: [{\n type: HostListener,\n args: ['mouseleave']\n }] }); })();\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassDebugInfo(TdCopyCodeButtonComponent, { className: \"TdCopyCodeButtonComponent\", filePath: \"lib/copy-code-button/copy-code-button.component.ts\", lineNumber: 31 }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1jb2RlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItaGlnaGxpZ2h0L3NyYy9saWIvY29weS1jb2RlLWJ1dHRvbi9jb3B5LWNvZGUtYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1oaWdobGlnaHQvc3JjL2xpYi9jb3B5LWNvZGUtYnV0dG9uL2NvcHktY29kZS1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7OztJQ1B2RCxBQUxGLGtEQUlDLDhCQUM0RDtJQUF4QyxvTkFBUyx5QkFBa0IsS0FBQztJQUFZLFlBRXpEO0lBQUEsaUJBQW9CO0lBQ3RCLCtDQU9DO0lBREMsQUFEQSxvTkFBUyxvQkFBYSxLQUFDLG1QQUNLLHlCQUFrQixLQUFDO0lBRS9DLG1DQUFnQjtJQUFBLDRCQUFZO0lBRWhDLEFBREUsQUFEOEIsaUJBQVcsRUFDckIsRUFDSTs7O0lBYm1DLGVBRXpEO0lBRnlELDBDQUV6RDtJQUVBLGNBQW9DO0lBQ3BDLEFBREEseURBQW9DLGtDQUNWOzs7O0lBVzVCLG9DQU9DO0lBREMseU9BQTRC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QUFTO21CQUFDLFlBQVk7WUFDQyxTQUFTO2tCQUFoQyxTQUFTO21CQUFDLFdBQVc7WUFrQkEsT0FBTztrQkFBNUIsU0FBUzttQkFBQyxTQUFTO1lBVXBCLGlCQUFpQjtrQkFEaEIsWUFBWTttQkFBQyxZQUFZOztrRkE5Q2YseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFZpZXdDaGlsZCxcbiAgSG9zdExpc3RlbmVyLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGUsIE1hdEJ1dHRvblRvZ2dsZUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUb29sdGlwIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBDbGlwYm9hcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvY2xpcGJvYXJkJztcblxuZXhwb3J0IGludGVyZmFjZSBJQ29weUNvZGVUb29sdGlwcyB7XG4gIGNvcHk/OiBzdHJpbmc7XG4gIGNvcGllZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUmF3VG9nZ2xlTGFiZWxzIHtcbiAgdmlld1Jhdz86IHN0cmluZztcbiAgdmlld0NvZGU/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RkLWNvcHktY29kZS1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vY29weS1jb2RlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvcHktY29kZS1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uVG9nZ2xlLCBNYXRCdXR0b25Ub2dnbGVHcm91cCwgTWF0SWNvbiwgTWF0VG9vbHRpcCwgQ2xpcGJvYXJkTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgVGRDb3B5Q29kZUJ1dHRvbkNvbXBvbmVudCB7XG4gIC8vIHByaXZhdGUgX2NvcHlDb2RlVG9vbHRpcHM6IElDb3B5Q29kZVRvb2x0aXBzID0ge307XG4gIEBJbnB1dCgpIGNvcGllZENvbnRlbnQhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNvcHlDb2RlVG9DbGlwYm9hcmQgPSBmYWxzZTtcbiAgLyoqXG4gICAqIGNvcHlDb2RlVG9vbHRpcHM/OiBJQ29weUNvZGVUb29sdGlwc1xuICAgKlxuICAgKiBUb29sdGlwcyBmb3IgY29weSBidXR0b24gdG8gY29weSBhbmQgdXBvbiBjb3B5aW5nLlxuICAgKi9cbiAgQElucHV0KCkgY29weUNvZGVUb29sdGlwcz86IElDb3B5Q29kZVRvb2x0aXBzID0ge307XG5cbiAgQElucHV0KCkgdG9nZ2xlUmF3QnV0dG9uID0gZmFsc2U7XG4gIEBJbnB1dCgpIHJhd1RvZ2dsZUxhYmVscz86IElSYXdUb2dnbGVMYWJlbHMgPSB7fTtcblxuICByYXdUb2dnbGUgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgdG9nZ2xlUmF3ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvcHlCdXR0b24nKSBjb3B5QnV0dG9uITogTWF0QnV0dG9uVG9nZ2xlO1xuICBAVmlld0NoaWxkKCdyYXdCdXR0b24nKSByYXdCdXR0b24hOiBNYXRCdXR0b25Ub2dnbGU7XG5cbiAgZ2V0IGNvcHlUb29sdGlwKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICh0aGlzLmNvcHlDb2RlVG9vbHRpcHMgJiYgdGhpcy5jb3B5Q29kZVRvb2x0aXBzLmNvcHkpIHx8ICdDb3B5JztcbiAgfVxuXG4gIGdldCBjb3BpZWRUb29sdGlwKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICh0aGlzLmNvcHlDb2RlVG9vbHRpcHMgJiYgdGhpcy5jb3B5Q29kZVRvb2x0aXBzLmNvcGllZCkgfHwgJ0NvcGllZCc7XG4gIH1cblxuICBnZXQgcmF3VG9nZ2xlVGV4dCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnJhd1RvZ2dsZSkge1xuICAgICAgcmV0dXJuIHRoaXMucmF3VG9nZ2xlTGFiZWxzPy52aWV3Q29kZSB8fCAnVmlldyBjb2RlJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMucmF3VG9nZ2xlTGFiZWxzPy52aWV3UmF3IHx8ICdSYXcnO1xuICAgIH1cbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXAnKSB0b29sdGlwITogTWF0VG9vbHRpcDtcblxuICB0ZXh0Q29waWVkKGV2ZW50OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICB0aGlzLnRvb2x0aXAuaGlkZSgpO1xuICAgICAgdGhpcy50b29sdGlwLm1lc3NhZ2UgPSB0aGlzLmNvcGllZFRvb2x0aXA7XG4gICAgICB0aGlzLnRvb2x0aXAuc2hvdygpO1xuICAgIH1cbiAgfVxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgaW5pdGlhbGl6ZVRvb2x0aXAoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnRvb2x0aXAubWVzc2FnZSA9IHRoaXMuY29weVRvb2x0aXA7XG4gICAgfSwgMjAwKTtcbiAgfVxuXG4gIHRvZ2dsZVJhd0NsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5yYXdUb2dnbGUgPSAhdGhpcy5yYXdUb2dnbGU7XG4gICAgdGhpcy50b2dnbGVSYXcuZW1pdCgpO1xuICAgIHRoaXMucmF3QnV0dG9uLmNoZWNrZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGNvcHlDbGlja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY29weUJ1dHRvbi5jaGVja2VkID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICBtdWx0aXBsZVxuICBjbGFzcz1cInJhdy1hbmQtY29weS1idXR0b25zXCJcbiAgKm5nSWY9XCJ0b2dnbGVSYXdCdXR0b247IGVsc2UgYnV0dG9uXCJcbj5cbiAgPG1hdC1idXR0b24tdG9nZ2xlIChjbGljayk9XCJ0b2dnbGVSYXdDbGlja2VkKClcIiAjcmF3QnV0dG9uPnt7XG4gICAgcmF3VG9nZ2xlVGV4dFxuICB9fTwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gIDxtYXQtYnV0dG9uLXRvZ2dsZVxuICAgIFtjZGtDb3B5VG9DbGlwYm9hcmRdPVwiY29waWVkQ29udGVudFwiXG4gICAgW21hdFRvb2x0aXBdPVwiY29weVRvb2x0aXBcIlxuICAgICN0b29sdGlwPVwibWF0VG9vbHRpcFwiXG4gICAgI2NvcHlCdXR0b25cbiAgICAoY2xpY2spPVwiY29weUNsaWNrZWQoKVwiXG4gICAgKGNka0NvcHlUb0NsaXBib2FyZENvcGllZCk9XCJ0ZXh0Q29waWVkKCRldmVudClcIlxuICA+XG4gICAgPG1hdC1pY29uIHdpZHRoPmNvbnRlbnRfY29weTwvbWF0LWljb24+XG4gIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG48L21hdC1idXR0b24tdG9nZ2xlLWdyb3VwPlxuXG48bmctdGVtcGxhdGUgI2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgIG1hdC1pY29uLWJ1dHRvblxuICAgIFtjZGtDb3B5VG9DbGlwYm9hcmRdPVwiY29waWVkQ29udGVudFwiXG4gICAgY2xhc3M9XCJjb3B5LWJ1dHRvblwiXG4gICAgW21hdFRvb2x0aXBdPVwiY29weVRvb2x0aXBcIlxuICAgICN0b29sdGlwPVwibWF0VG9vbHRpcFwiXG4gICAgKGNka0NvcHlUb0NsaXBib2FyZENvcGllZCk9XCJ0ZXh0Q29waWVkKCRldmVudClcIlxuICA+XG4gICAgPG1hdC1pY29uIHJvbGU9XCJpbWdcIj5jb250ZW50X2NvcHk8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=","import { Component, ElementRef, Input, Output, EventEmitter, Renderer2, SecurityContext, ViewChild, ChangeDetectorRef, } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { MatTooltip } from '@angular/material/tooltip';\nimport { TdCopyCodeButtonComponent, } from './copy-code-button/copy-code-button.component';\nimport hljs from 'highlight.js';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/platform-browser\";\nimport * as i2 from \"@angular/common\";\nconst _c0 = [\"highlightComponent\"];\nconst _c1 = [\"copyComponent\"];\nconst _c2 = [\"tooltip\"];\nconst _c3 = [\"*\"];\nfunction TdHighlightComponent_div_4_Template(rf, ctx) { if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", null, 1)(2, \"td-copy-code-button\", 3);\n i0.ɵɵlistener(\"toggleRaw\", function TdHighlightComponent_div_4_Template_td_copy_code_button_toggleRaw_2_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleRawClicked()); });\n i0.ɵɵelementEnd()();\n} if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"toggleRawButton\", ctx_r1.toggleRawButton)(\"rawToggleLabels\", ctx_r1.rawToggleLabels)(\"copiedContent\", ctx_r1.copyContent)(\"copyCodeToClipboard\", ctx_r1.copyCodeToClipboard)(\"copyCodeTooltips\", ctx_r1.copyCodeTooltips);\n} }\nexport class TdHighlightComponent {\n _renderer;\n _elementRef;\n _domSanitizer;\n cdr;\n _initialized = false;\n _content;\n _lang = 'typescript';\n _showRaw = false;\n /**\n * content?: string\n *\n * Code content to be parsed as highlighted html.\n * Used to load data dynamically.\n *\n * e.g. `.html`, `.ts` , etc.\n */\n set content(content) {\n this._content = content;\n if (this._initialized) {\n this._loadContent(this._content);\n }\n }\n /**\n * copyCodeToClipboard?: boolean\n *\n * Display copy button on code snippets to copy code to clipboard.\n */\n copyCodeToClipboard = false;\n /**\n * copyCodeTooltips?: ICopyCodeTooltips\n *\n * Tooltips for copy button to copy and upon copying.\n */\n copyCodeTooltips = {};\n /**\n * toggleRawButton?: boolean\n *\n * Display button to toggle raw code.\n */\n toggleRawButton = false;\n /**\n * rawToggleLabels?: IRawToggleLabels\n *\n * Labels for raw toggle button.\n */\n rawToggleLabels = {};\n /**\n * lang?: string\n *\n * Language of the code content to be parsed as highlighted html.\n * Defaults to `typescript`\n *\n * e.g. `typescript`, `html` , etc.\n */\n set codeLang(lang) {\n this.setLanguage(lang);\n }\n /** @deprecated - removed completely @4.0.0 */\n set lang(lang) {\n // tslint:disable-next-line: no-console\n console.warn('DEPRECATION WARNING: switch to codeLang attribute as lang attribute is deprecated.');\n this.setLanguage(lang);\n }\n copyContent;\n /**\n * contentReady?: function\n * Event emitted after the highlight content rendering is finished.\n */\n contentReady = new EventEmitter();\n highlightComp;\n copyComp;\n tooltip;\n constructor(_renderer, _elementRef, _domSanitizer, cdr) {\n this._renderer = _renderer;\n this._elementRef = _elementRef;\n this._domSanitizer = _domSanitizer;\n this.cdr = cdr;\n }\n ngAfterViewChecked() {\n this.cdr.detectChanges();\n }\n ngAfterViewInit() {\n if (!this._content) {\n this._content =\n this.highlightComp.nativeElement.textContent || '';\n }\n this._loadContent(this._content);\n this._initialized = true;\n }\n setLanguage(lang) {\n if (!lang) {\n throw new Error('Error: language attribute must be defined in TdHighlightComponent.');\n }\n this._lang = lang;\n if (this._initialized) {\n this._loadContent(this._content);\n }\n }\n toggleRawClicked() {\n this._showRaw = !this._showRaw;\n this._elementRef.nativeElement.querySelector('pre').style.display = this\n ._showRaw\n ? 'none'\n : 'block';\n this._elementRef.nativeElement.querySelector('.raw').style.display = this\n ._showRaw\n ? 'block'\n : 'none';\n }\n /**\n * General method to parse a string of code into HTML Elements and load them into the container\n */\n _loadContent(code) {\n if (code && code.trim().length > 0) {\n // Clean container\n this._renderer.setProperty(this._elementRef.nativeElement, 'innerHTML', '');\n this._elementFromString(code);\n if (this.copyCodeToClipboard) {\n this._renderer.appendChild(this._elementRef.nativeElement, this.copyComp.nativeElement);\n }\n }\n this.contentReady.emit();\n }\n _elementFromString(codeStr) {\n // Renderer2 doesnt have a parsing method, so we have to sanitize and use [innerHTML]\n // to parse the string into DOM element for now.\n const preElement = this._renderer.createElement('pre');\n this._renderer.appendChild(this._elementRef.nativeElement, preElement);\n const codeElement = this._renderer.createElement('code');\n this._renderer.appendChild(preElement, codeElement);\n // Set .highlight class into <code> element\n this._renderer.addClass(codeElement, 'highlight');\n const highlightedCode = this._render(codeStr);\n codeElement.innerHTML =\n this._domSanitizer.sanitize(SecurityContext.HTML, highlightedCode) ?? '';\n if (this.toggleRawButton) {\n const divElement = this._renderer.createElement('div');\n divElement.className = 'raw';\n this._renderer.appendChild(this._elementRef.nativeElement, divElement);\n divElement.innerHTML =\n this._domSanitizer.sanitize(SecurityContext.HTML, codeStr) ?? '';\n this._renderer.setStyle(divElement, 'display', 'none');\n }\n }\n _render(contents) {\n // Trim leading and trailing newlines\n contents = contents\n .replace(/^(\\s|\\t)*\\n+/g, '')\n .replace(/(\\s|\\t)*\\n+(\\s|\\t)*$/g, '');\n // Split markup by line characters\n let lines = contents.split('\\n');\n // check how much indentation is used by the first actual code line\n const firstLineWhitespaceMatch = lines[0].match(/^(\\s|\\t)*/);\n const firstLineWhitespace = firstLineWhitespaceMatch\n ? firstLineWhitespaceMatch[0]\n : null;\n // Remove all indentation spaces so code can be parsed correctly\n const startingWhitespaceRegex = new RegExp('^' + firstLineWhitespace);\n lines = lines.map(function (line) {\n return line\n .replace('=\"\"', '') // remove empty values\n .replace(startingWhitespaceRegex, '')\n .replace(/\\s+$/, ''); // remove trailing white spaces\n });\n const codeToParse = lines\n .join('\\n')\n .replace(/\\{ \\{/gi, '{{')\n .replace(/\\} \\}/gi, '}}')\n .replace(/&lt;/gi, '<')\n .replace(/&gt;/gi, '>'); // replace with < and > to render HTML in Angular\n this.copyContent = codeToParse;\n // Parse code with highlight.js depending on language\n const highlightedCode = hljs.highlight(codeToParse, {\n language: this._lang,\n ignoreIllegals: true,\n });\n highlightedCode.value = highlightedCode.value\n .replace(/=<span class=\"hljs-value\">\"\"<\\/span>/gi, '')\n .replace('<head>', '')\n .replace('<head/>', '');\n return highlightedCode.value;\n }\n static ɵfac = function TdHighlightComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TdHighlightComponent)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.DomSanitizer), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };\n static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TdHighlightComponent, selectors: [[\"td-highlight\"]], viewQuery: function TdHighlightComponent_Query(rf, ctx) { if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n i0.ɵɵviewQuery(_c1, 5);\n i0.ɵɵviewQuery(_c2, 5);\n } if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.highlightComp = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.copyComp = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tooltip = _t.first);\n } }, inputs: { content: \"content\", copyCodeToClipboard: \"copyCodeToClipboard\", copyCodeTooltips: \"copyCodeTooltips\", toggleRawButton: \"toggleRawButton\", rawToggleLabels: \"rawToggleLabels\", codeLang: \"codeLang\", lang: \"lang\" }, outputs: { contentReady: \"contentReady\" }, ngContentSelectors: _c3, decls: 5, vars: 1, consts: [[\"highlightComponent\", \"\"], [\"copyComponent\", \"\"], [4, \"ngIf\"], [3, \"toggleRaw\", \"toggleRawButton\", \"rawToggleLabels\", \"copiedContent\", \"copyCodeToClipboard\", \"copyCodeTooltips\"]], template: function TdHighlightComponent_Template(rf, ctx) { if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵelementStart(0, \"div\")(1, \"div\", null, 0);\n i0.ɵɵprojection(3);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(4, TdHighlightComponent_div_4_Template, 3, 5, \"div\", 2);\n i0.ɵɵelementEnd();\n } if (rf & 2) {\n i0.ɵɵadvance(4);\n i0.ɵɵproperty(\"ngIf\", ctx.copyCodeToClipboard);\n } }, dependencies: [CommonModule, i2.NgIf, TdCopyCodeButtonComponent], styles: [\"[_nghost-%COMP%] {overflow-x:auto;padding:16px;display:flex;position:relative}[_nghost-%COMP%] pre, [_nghost-%COMP%] code{font-family:Menlo,Monaco,Andale Mono,lucida console,Courier New,monospace}[_nghost-%COMP%] pre{display:block;overflow-x:auto;padding:0;margin:0;background:transparent;font-family:Menlo,Monaco,Andale Mono,lucida console,Courier New,monospace;line-height:1.45;tab-size:2;-webkit-font-smoothing:auto;-webkit-text-size-adjust:none;text-size-adjust:none;position:relative;border-radius:2px;font-size:.8rem;width:100%}[_nghost-%COMP%] code{margin:0;padding:0;overflow-wrap:break-word;white-space:pre-wrap}[_nghost-%COMP%] div.raw{flex-grow:1}[_nghost-%COMP%] .highlight{display:block;overflow-wrap:break-word;margin:0;font-family:Menlo;font-size:12px;font-weight:400;line-height:20px}[_nghost-%COMP%] .copy-button{border:none;background:inherit;margin-top:-8px;margin-right:-8px}\"] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(TdHighlightComponent, [{\n type: Component,\n args: [{ selector: 'td-highlight', imports: [CommonModule, TdCopyCodeButtonComponent], template: \"<div>\\n <div #highlightComponent>\\n <ng-content></ng-content>\\n </div>\\n\\n <div #copyComponent *ngIf=\\\"copyCodeToClipboard\\\">\\n <td-copy-code-button\\n [toggleRawButton]=\\\"toggleRawButton\\\"\\n [rawToggleLabels]=\\\"rawToggleLabels\\\"\\n (toggleRaw)=\\\"toggleRawClicked()\\\"\\n [copiedContent]=\\\"copyContent\\\"\\n [copyCodeToClipboard]=\\\"copyCodeToClipboard\\\"\\n [copyCodeTooltips]=\\\"copyCodeTooltips\\\"\\n ></td-copy-code-button>\\n </div>\\n</div>\\n\", styles: [\":host ::ng-deep{overflow-x:auto;padding:16px;display:flex;position:relative}:host ::ng-deep pre,:host ::ng-deep code{font-family:Menlo,Monaco,Andale Mono,lucida console,Courier New,monospace}:host ::ng-deep pre{display:block;overflow-x:auto;padding:0;margin:0;background:transparent;font-family:Menlo,Monaco,Andale Mono,lucida console,Courier New,monospace;line-height:1.45;tab-size:2;-webkit-font-smoothing:auto;-webkit-text-size-adjust:none;text-size-adjust:none;position:relative;border-radius:2px;font-size:.8rem;width:100%}:host ::ng-deep code{margin:0;padding:0;overflow-wrap:break-word;white-space:pre-wrap}:host ::ng-deep div.raw{flex-grow:1}:host ::ng-deep .highlight{display:block;overflow-wrap:break-word;margin:0;font-family:Menlo;font-size:12px;font-weight:400;line-height:20px}:host ::ng-deep .copy-button{border:none;background:inherit;margin-top:-8px;margin-right:-8px}\\n\"] }]\n }], () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.DomSanitizer }, { type: i0.ChangeDetectorRef }], { content: [{\n type: Input\n }], copyCodeToClipboard: [{\n type: Input\n }], copyCodeTooltips: [{\n type: Input\n }], toggleRawButton: [{\n type: Input\n }], rawToggleLabels: [{\n type: Input\n }], codeLang: [{\n type: Input\n }], lang: [{\n type: Input\n }], contentReady: [{\n type: Output\n }], highlightComp: [{\n type: ViewChild,\n args: ['highlightComponent']\n }], copyComp: [{\n type: ViewChild,\n args: ['copyComponent']\n }], tooltip: [{\n type: ViewChild,\n args: ['tooltip']\n }] }); })();\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassDebugInfo(TdHighlightComponent, { className: \"TdHighlightComponent\", filePath: \"lib/highlight.component.ts\", lineNumber: 31 }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1oaWdobGlnaHQvc3JjL2xpYi9oaWdobGlnaHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWhpZ2hsaWdodC9zcmMvbGliL2hpZ2hsaWdodC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFVBQVUsRUFDVixLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFDVCxpQkFBaUIsR0FFbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBR0wseUJBQXlCLEdBQzFCLE1BQU0sK0NBQStDLENBQUM7QUFFdkQsT0FBTyxJQUF5QixNQUFNLGNBQWMsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7SUNoQjNDLEFBREYsb0NBQWdELDZCQVE3QztJQUpDLHFNQUFhLHlCQUFrQixLQUFDO0lBS3BDLEFBREcsaUJBQXNCLEVBQ25COzs7SUFQRixlQUFtQztJQUtuQyxBQURBLEFBREEsQUFGQSxBQURBLHdEQUFtQywyQ0FDQSxxQ0FFTixtREFDYyw2Q0FDTjs7QURrQjNDLE1BQU0sT0FBTyxvQkFBb0I7SUF3RnJCO0lBQ0E7SUFDQTtJQUNBO0lBMUZGLFlBQVksR0FBRyxLQUFLLENBQUM7SUFFckIsUUFBUSxDQUFVO0lBQ2xCLEtBQUssR0FBRyxZQUFZLENBQUM7SUFFckIsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUV6Qjs7Ozs7OztPQU9HO0lBQ0gsSUFDSSxPQUFPLENBQUMs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a0JBQXlCO1lBQzNCLGlCQUFNO1lBRU4scUVBQWdEO1lBVWxELGlCQUFNOztZQVZpQixlQUF5QjtZQUF6Qiw4Q0FBeUI7NEJEdUJwQyxZQUFZLFdBQUUseUJBQXlCOztpRkFFdEMsb0JBQW9CO2NBTmhDLFNBQVM7MkJBQ0UsY0FBYyxXQUdmLENBQUMsWUFBWSxFQUFFLHlCQUF5QixDQUFDOzhIQW1COUMsT0FBTztrQkFEVixLQUFLO1lBYUcsbUJBQW1CO2tCQUEzQixLQUFLO1lBT0csZ0JBQWdCO2tCQUF4QixLQUFLO1lBT0csZUFBZTtrQkFBdkIsS0FBSztZQU9HLGVBQWU7a0JBQXZCLEtBQUs7WUFZRixRQUFRO2tCQURYLEtBQUs7WUFNRixJQUFJO2tCQURQLEtBQUs7WUFlSSxZQUFZO2tCQUFyQixNQUFNO1lBQzBCLGFBQWE7a0JBQTdDLFNBQVM7bUJBQUMsb0JBQW9CO1lBQ0gsUUFBUTtrQkFBbkMsU0FBUzttQkFBQyxlQUFlO1lBRUosT0FBTztrQkFBNUIsU0FBUzttQkFBQyxTQUFTOztrRkFyRlQsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBBZnRlclZpZXdJbml0LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIFJlbmRlcmVyMixcbiAgU2VjdXJpdHlDb250ZXh0LFxuICBWaWV3Q2hpbGQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBBZnRlclZpZXdDaGVja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgTWF0VG9vbHRpcCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHtcbiAgSUNvcHlDb2RlVG9vbHRpcHMsXG4gIElSYXdUb2dnbGVMYWJlbHMsXG4gIFRkQ29weUNvZGVCdXR0b25Db21wb25lbnQsXG59IGZyb20gJy4vY29weS1jb2RlLWJ1dHRvbi9jb3B5LWNvZGUtYnV0dG9uLmNvbXBvbmVudCc7XG5cbmltcG9ydCBobGpzLCB7IEhpZ2hsaWdodFJlc3VsdCB9IGZyb20gJ2hpZ2hsaWdodC5qcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZC1oaWdobGlnaHQnLFxuICBzdHlsZVVybHM6IFsnLi9oaWdobGlnaHQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2hpZ2hsaWdodC5jb21wb25lbnQuaHRtbCcsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRkQ29weUNvZGVCdXR0b25Db21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUZEhpZ2hsaWdodENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIEFmdGVyVmlld0NoZWNrZWQge1xuICBwcml2YXRlIF9pbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2NvbnRlbnQhOiBzdHJpbmc7XG4gIHByaXZhdGUgX2xhbmcgPSAndHlwZXNjcmlwdCc7XG5cbiAgcHJpdmF0ZSBfc2hvd1JhdyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBjb250ZW50Pzogc3RyaW5nXG4gICAqXG4gICAqIENvZGUgY29udGVudCB0byBiZSBwYXJzZWQgYXMgaGlnaGxpZ2h0ZWQgaHRtbC5cbiAgICogVXNlZCB0byBsb2FkIGRhdGEgZHluYW1pY2FsbHkuXG4gICAqXG4gICAqIGUuZy4gYC5odG1sYCwgYC50c2AgLCBldGMuXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgY29udGVudChjb250ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb250ZW50ID0gY29udGVudDtcbiAgICBpZiAodGhpcy5faW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuX2xvYWRDb250ZW50KHRoaXMuX2NvbnRlbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBjb3B5Q29kZVRvQ2xpcGJvYXJkPzogYm9vbGVhblxuICAgKlxuICAgKiBEaXNwbGF5IGNvcHkgYnV0dG9uIG9uIGNvZGUgc25pcHBldHMgdG8gY29weSBjb2RlIHRvIGNsaXBib2FyZC5cbiAgICovXG4gIEBJbnB1dCgpIGNvcHlDb2RlVG9DbGlwYm9hcmQ/ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIGNvcHlDb2RlVG9vbHRpcHM/OiBJQ29weUNvZGVUb29sdGlwc1xuICAgKlxuICAgKiBUb29sdGlwcyBmb3IgY29weSBidXR0b24gdG8gY29weSBhbmQgdXBvbiBjb3B5aW5nLlxuICAgKi9cbiAgQElucHV0KCkgY29weUNvZGVUb29sdGlwcz86IElDb3B5Q29kZVRvb2x0aXBzID0ge307XG5cbiAgLyoqXG4gICAqIHRvZ2dsZVJhd0J1dHRvbj86IGJvb2xlYW5cbiAgICpcbiAgICogRGlzcGxheSBidXR0b24gdG8gdG9nZ2xlIHJhdyBjb2RlLlxuICAgKi9cbiAgQElucHV0KCkgdG9nZ2xlUmF3QnV0dG9uID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIHJhd1RvZ2dsZUxhYmVscz86IElSYXdUb2dnbGVMYWJlbHNcbiAgICpcbiAgICogTGFiZWxzIGZvciByYXcgdG9nZ2xlIGJ1dHRvbi5cbiAgICovXG4gIEBJbnB1dCgpIHJhd1RvZ2dsZUxhYmVscz86IElSYXdUb2dnbGVMYWJlbHMgPSB7fTtcblxuICAvKipcbiAgICogbGFuZz86IHN0cmluZ1xuICAgKlxuICAgKiBMYW5ndWFnZSBvZiB0aGUgY29kZSBjb250ZW50IHRvIGJlIHBhcnNlZCBhcyBoaWdobGlnaHRlZCBodG1sLlxuICAgKiBEZWZhdWx0cyB0byBgdHlwZXNjcmlwdGBcbiAgICpcbiAgICogZS5nLiBgdHlwZXNjcmlwdGAsIGBodG1sYCAsIGV0Yy5cbiAgICovXG5cbiAgQElucHV0KClcbiAgc2V0IGNvZGVMYW5nKGxhbmc6IHN0cmluZykge1xuICAgIHRoaXMuc2V0TGFuZ3VhZ2UobGFuZyk7XG4gIH1cbiAgLyoqIEBkZXByZWNhdGVkIC0gcmVtb3ZlZCBjb21wbGV0ZWx5IEA0LjAuMCAqL1xuICBASW5wdXQoKVxuICBzZXQgbGFuZyhsYW5nOiBzdHJpbmcpIHtcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnREVQUkVDQVRJT04gV0FSTklORzogc3dpdGNoIHRvIGNvZGVMYW5nIGF0dHJpYnV0ZSBhcyBsYW5nIGF0dHJpYnV0ZSBpcyBkZXByZWNhdGVkLidcbiAgICApO1xuICAgIHRoaXMuc2V0TGFuZ3VhZ2UobGFuZyk7XG4gIH1cblxuICBjb3B5Q29udGVudCE6IHN0cmluZztcblxuICAvKipcbiAgICogY29udGVudFJlYWR5PzogZnVuY3Rpb25cbiAgICogRXZlbnQgZW1pdHRlZCBhZnRlciB0aGUgaGlnaGxpZ2h0IGNvbnRlbnQgcmVuZGVyaW5nIGlzIGZpbmlzaGVkLlxuICAgKi9cbiAgQE91dHB1dCgpIGNvbnRlbnRSZWFkeTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAVmlld0NoaWxkKCdoaWdobGlnaHRDb21wb25lbnQnKSBoaWdobGlnaHRDb21wITogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnY29weUNvbXBvbmVudCcpIGNvcHlDb21wITogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCd0b29sdGlwJykgdG9vbHRpcCE6IE1hdFRvb2x0aXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX2RvbVNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbnRlbnQpIHtcbiAgICAgIHRoaXMuX2NvbnRlbnQgPVxuICAgICAgICAoPEhUTUxFbGVtZW50PnRoaXMuaGlnaGxpZ2h0Q29tcC5uYXRpdmVFbGVtZW50KS50ZXh0Q29udGVudCB8fCAnJztcbiAgICB9XG4gICAgdGhpcy5fbG9hZENvbnRlbnQodGhpcy5fY29udGVudCk7XG5cbiAgICB0aGlzLl9pbml0aWFsaXplZCA9IHRydWU7XG4gIH1cblxuICBzZXRMYW5ndWFnZShsYW5nOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIWxhbmcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Vycm9yOiBsYW5ndWFnZSBhdHRyaWJ1dGUgbXVzdCBiZSBkZWZpbmVkIGluIFRkSGlnaGxpZ2h0Q29tcG9uZW50LidcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMuX2xhbmcgPSBsYW5nO1xuICAgIGlmICh0aGlzLl9pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fbG9hZENvbnRlbnQodGhpcy5fY29udGVudCk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlUmF3Q2xpY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9zaG93UmF3ID0gIXRoaXMuX3Nob3dSYXc7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJ3ByZScpLnN0eWxlLmRpc3BsYXkgPSB0aGlzXG4gICAgICAuX3Nob3dSYXdcbiAgICAgID8gJ25vbmUnXG4gICAgICA6ICdibG9jayc7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5yYXcnKS5zdHlsZS5kaXNwbGF5ID0gdGhpc1xuICAgICAgLl9zaG93UmF3XG4gICAgICA/ICdibG9jaydcbiAgICAgIDogJ25vbmUnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYWwgbWV0aG9kIHRvIHBhcnNlIGEgc3RyaW5nIG9mIGNvZGUgaW50byBIVE1MIEVsZW1lbnRzIGFuZCBsb2FkIHRoZW0gaW50byB0aGUgY29udGFpbmVyXG4gICAqL1xuICBwcml2YXRlIF9sb2FkQ29udGVudChjb2RlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKGNvZGUgJiYgY29kZS50cmltKCkubGVuZ3RoID4gMCkge1xuICAgICAgLy8gQ2xlYW4gY29udGFpbmVyXG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAnaW5uZXJIVE1MJyxcbiAgICAgICAgJydcbiAgICAgICk7XG5cbiAgICAgIHRoaXMuX2VsZW1lbnRGcm9tU3RyaW5nKGNvZGUpO1xuXG4gICAgICBpZiAodGhpcy5jb3B5Q29kZVRvQ2xpcGJvYXJkKSB7XG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKFxuICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICB0aGlzLmNvcHlDb21wLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5jb250ZW50UmVhZHkuZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZWxlbWVudEZyb21TdHJpbmcoY29kZVN0cjogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gUmVuZGVyZXIyIGRvZXNudCBoYXZlIGEgcGFyc2luZyBtZXRob2QsIHNvIHdlIGhhdmUgdG8gc2FuaXRpemUgYW5kIHVzZSBbaW5uZXJIVE1MXVxuICAgIC8vIHRvIHBhcnNlIHRoZSBzdHJpbmcgaW50byBET00gZWxlbWVudCBmb3Igbm93LlxuICAgIGNvbnN0IHByZUVsZW1lbnQ6IEhUTUxQcmVFbGVtZW50ID0gdGhpcy5fcmVuZGVyZXIuY3JlYXRlRWxlbWVudCgncHJlJyk7XG4gICAgdGhpcy5fcmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBwcmVFbGVtZW50KTtcbiAgICBjb25zdCBjb2RlRWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLl9yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdjb2RlJyk7XG4gICAgdGhpcy5fcmVuZGVyZXIuYXBwZW5kQ2hpbGQocHJlRWxlbWVudCwgY29kZUVsZW1lbnQpO1xuICAgIC8vIFNldCAuaGlnaGxpZ2h0IGNsYXNzIGludG8gPGNvZGU+IGVsZW1lbnRcbiAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyhjb2RlRWxlbWVudCwgJ2hpZ2hsaWdodCcpO1xuXG4gICAgY29uc3QgaGlnaGxpZ2h0ZWRDb2RlID0gdGhpcy5fcmVuZGVyKGNvZGVTdHIpO1xuXG4gICAgY29kZUVsZW1lbnQuaW5uZXJIVE1MID1cbiAgICAgIHRoaXMuX2RvbVNhbml0aXplci5zYW5pdGl6ZShTZWN1cml0eUNvbnRleHQuSFRNTCwgaGlnaGxpZ2h0ZWRDb2RlKSA/PyAnJztcblxuICAgIGlmICh0aGlzLnRvZ2dsZVJhd0J1dHRvbikge1xuICAgICAgY29uc3QgZGl2RWxlbWVudDogSFRNTERpdkVsZW1lbnQgPSB0aGlzLl9yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIGRpdkVsZW1lbnQuY2xhc3NOYW1lID0gJ3Jhdyc7XG4gICAgICB0aGlzLl9yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGRpdkVsZW1lbnQpO1xuICAgICAgZGl2RWxlbWVudC5pbm5lckhUTUwgPVxuICAgICAgICB0aGlzLl9kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIGNvZGVTdHIpID8/ICcnO1xuICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoZGl2RWxlbWVudCwgJ2Rpc3BsYXknLCAnbm9uZScpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlcihjb250ZW50czogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAvLyBUcmltIGxlYWRpbmcgYW5kIHRyYWlsaW5nIG5ld2xpbmVzXG4gICAgY29udGVudHMgPSBjb250ZW50c1xuICAgICAgLnJlcGxhY2UoL14oXFxzfFxcdCkqXFxuKy9nLCAnJylcbiAgICAgIC5yZXBsYWNlKC8oXFxzfFxcdCkqXFxuKyhcXHN8XFx0KSokL2csICcnKTtcbiAgICAvLyBTcGxpdCBtYXJrdXAgYnkgbGluZSBjaGFyYWN0ZXJzXG4gICAgbGV0IGxpbmVzOiBzdHJpbmdbXSA9IGNvbnRlbnRzLnNwbGl0KCdcXG4nKTtcblxuICAgIC8vIGNoZWNrIGhvdyBtdWNoIGluZGVudGF0aW9uIGlzIHVzZWQgYnkgdGhlIGZpcnN0IGFjdHVhbCBjb2RlIGxpbmVcbiAgICBjb25zdCBmaXJzdExpbmVXaGl0ZXNwYWNlTWF0Y2ggPSBsaW5lc1swXS5tYXRjaCgvXihcXHN8XFx0KSovKTtcbiAgICBjb25zdCBmaXJzdExpbmVXaGl0ZXNwYWNlID0gZmlyc3RMaW5lV2hpdGVzcGFjZU1hdGNoXG4gICAgICA/IGZpcnN0TGluZVdoaXRlc3BhY2VNYXRjaFswXVxuICAgICAgOiBudWxsO1xuXG4gICAgLy8gUmVtb3ZlIGFsbCBpbmRlbnRhdGlvbiBzcGFjZXMgc28gY29kZSBjYW4gYmUgcGFyc2VkIGNvcnJlY3RseVxuICAgIGNvbnN0IHN0YXJ0aW5nV2hpdGVzcGFjZVJlZ2V4ID0gbmV3IFJlZ0V4cCgnXicgKyBmaXJzdExpbmVXaGl0ZXNwYWNlKTtcbiAgICBsaW5lcyA9IGxpbmVzLm1hcChmdW5jdGlvbiAobGluZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBsaW5lXG4gICAgICAgIC5yZXBsYWNlKCc9XCJcIicsICcnKSAvLyByZW1vdmUgZW1wdHkgdmFsdWVzXG4gICAgICAgIC5yZXBsYWNlKHN0YXJ0aW5nV2hpdGVzcGFjZVJlZ2V4LCAnJylcbiAgICAgICAgLnJlcGxhY2UoL1xccyskLywgJycpOyAvLyByZW1vdmUgdHJhaWxpbmcgd2hpdGUgc3BhY2VzXG4gICAgfSk7XG5cbiAgICBjb25zdCBjb2RlVG9QYXJzZTogc3RyaW5nID0gbGluZXNcbiAgICAgIC5qb2luKCdcXG4nKVxuICAgICAgLnJlcGxhY2UoL1xceyBcXHsvZ2ksICd7eycpXG4gICAgICAucmVwbGFjZSgvXFx9IFxcfS9naSwgJ319JylcbiAgICAgIC5yZXBsYWNlKC8mbHQ7L2dpLCAnPCcpXG4gICAgICAucmVwbGFjZSgvJmd0Oy9naSwgJz4nKTsgLy8gcmVwbGFjZSB3aXRoIDwgYW5kID4gdG8gcmVuZGVyIEhUTUwgaW4gQW5ndWxhclxuICAgIHRoaXMuY29weUNvbnRlbnQgPSBjb2RlVG9QYXJzZTtcbiAgICAvLyBQYXJzZSBjb2RlIHdpdGggaGlnaGxpZ2h0LmpzIGRlcGVuZGluZyBvbiBsYW5ndWFnZVxuICAgIGNvbnN0IGhpZ2hsaWdodGVkQ29kZTogSGlnaGxpZ2h0UmVzdWx0ID0gaGxqcy5oaWdobGlnaHQoY29kZVRvUGFyc2UsIHtcbiAgICAgIGxhbmd1YWdlOiB0aGlzLl9sYW5nLFxuICAgICAgaWdub3JlSWxsZWdhbHM6IHRydWUsXG4gICAgfSk7XG4gICAgaGlnaGxpZ2h0ZWRDb2RlLnZhbHVlID0gaGlnaGxpZ2h0ZWRDb2RlLnZhbHVlXG4gICAgICAucmVwbGFjZSgvPTxzcGFuIGNsYXNzPVwiaGxqcy12YWx1ZVwiPlwiXCI8XFwvc3Bhbj4vZ2ksICcnKVxuICAgICAgLnJlcGxhY2UoJzxoZWFkPicsICcnKVxuICAgICAgLnJlcGxhY2UoJzxoZWFkLz4nLCAnJyk7XG4gICAgcmV0dXJuIGhpZ2hsaWdodGVkQ29kZS52YWx1ZTtcbiAgfVxufVxuIiwiPGRpdj5cbiAgPGRpdiAjaGlnaGxpZ2h0Q29tcG9uZW50PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9kaXY+XG5cbiAgPGRpdiAjY29weUNvbXBvbmVudCAqbmdJZj1cImNvcHlDb2RlVG9DbGlwYm9hcmRcIj5cbiAgICA8dGQtY29weS1jb2RlLWJ1dHRvblxuICAgICAgW3RvZ2dsZVJhd0J1dHRvbl09XCJ0b2dnbGVSYXdCdXR0b25cIlxuICAgICAgW3Jhd1RvZ2dsZUxhYmVsc109XCJyYXdUb2dnbGVMYWJlbHNcIlxuICAgICAgKHRvZ2dsZVJhdyk9XCJ0b2dnbGVSYXdDbGlja2VkKClcIlxuICAgICAgW2NvcGllZENvbnRlbnRdPVwiY29weUNvbnRlbnRcIlxuICAgICAgW2NvcHlDb2RlVG9DbGlwYm9hcmRdPVwiY29weUNvZGVUb0NsaXBib2FyZFwiXG4gICAgICBbY29weUNvZGVUb29sdGlwc109XCJjb3B5Q29kZVRvb2x0aXBzXCJcbiAgICA+PC90ZC1jb3B5LWNvZGUtYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { NgModule } from '@angular/core';\nimport { TdHighlightComponent } from './highlight.component';\nimport { TdCopyCodeButtonComponent } from './copy-code-button/copy-code-button.component';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated This module is deprecated and will be removed in future versions.\n * Please migrate to using standalone components as soon as possible.\n */\nexport class CovalentHighlightModule {\n static ɵfac = function CovalentHighlightModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentHighlightModule)(); };\n static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: CovalentHighlightModule });\n static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [TdHighlightComponent, TdCopyCodeButtonComponent] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentHighlightModule, [{\n type: NgModule,\n args: [{\n imports: [TdHighlightComponent, TdCopyCodeButtonComponent],\n exports: [TdHighlightComponent],\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && i0.ɵɵsetNgModuleScope(CovalentHighlightModule, { imports: [TdHighlightComponent, TdCopyCodeButtonComponent], exports: [TdHighlightComponent] }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1oaWdobGlnaHQvc3JjL2xpYi9oaWdobGlnaHQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0NBQStDLENBQUM7O0FBRTFGOzs7R0FHRztBQUtILE1BQU0sT0FBTyx1QkFBdUI7aUhBQXZCLHVCQUF1Qjs0REFBdkIsdUJBQXVCO2dFQUh4QixvQkFBb0IsRUFBRSx5QkFBeUI7O2lGQUc5Qyx1QkFBdUI7Y0FKbkMsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLHlCQUF5QixDQUFDO2dCQUMxRCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzthQUNoQzs7d0ZBQ1ksdUJBQXVCLGNBSHhCLG9CQUFvQixFQUFFLHlCQUF5QixhQUMvQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGRIaWdobGlnaHRDb21wb25lbnQgfSBmcm9tICcuL2hpZ2hsaWdodC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGRDb3B5Q29kZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vY29weS1jb2RlLWJ1dHRvbi9jb3B5LWNvZGUtYnV0dG9uLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVGhpcyBtb2R1bGUgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGZ1dHVyZSB2ZXJzaW9ucy5cbiAqIFBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nIHN0YW5kYWxvbmUgY29tcG9uZW50cyBhcyBzb29uIGFzIHBvc3NpYmxlLlxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbVGRIaWdobGlnaHRDb21wb25lbnQsIFRkQ29weUNvZGVCdXR0b25Db21wb25lbnRdLFxuICBleHBvcnRzOiBbVGRIaWdobGlnaHRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudEhpZ2hsaWdodE1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public_api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY292YWxlbnQtaGlnaGxpZ2h0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWhpZ2hsaWdodC9zcmMvY292YWxlbnQtaGlnaGxpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0="],"names":["_c0","_c1","_c2","i1","i2"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,130 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, AfterViewInit, AfterViewChecked, ElementRef, Renderer2, ChangeDetectorRef } from '@angular/core';
3
+ import { DomSanitizer } from '@angular/platform-browser';
4
+ import { MatTooltip } from '@angular/material/tooltip';
5
+ import { MatButtonToggle } from '@angular/material/button-toggle';
6
+
7
+ interface ICopyCodeTooltips {
8
+ copy?: string;
9
+ copied?: string;
10
+ }
11
+ interface IRawToggleLabels {
12
+ viewRaw?: string;
13
+ viewCode?: string;
14
+ }
15
+ declare class TdCopyCodeButtonComponent {
16
+ copiedContent: string;
17
+ copyCodeToClipboard: boolean;
18
+ /**
19
+ * copyCodeTooltips?: ICopyCodeTooltips
20
+ *
21
+ * Tooltips for copy button to copy and upon copying.
22
+ */
23
+ copyCodeTooltips?: ICopyCodeTooltips;
24
+ toggleRawButton: boolean;
25
+ rawToggleLabels?: IRawToggleLabels;
26
+ rawToggle: boolean;
27
+ toggleRaw: EventEmitter<boolean>;
28
+ copyButton: MatButtonToggle;
29
+ rawButton: MatButtonToggle;
30
+ get copyTooltip(): string;
31
+ get copiedTooltip(): string;
32
+ get rawToggleText(): string;
33
+ tooltip: MatTooltip;
34
+ textCopied(event: boolean): void;
35
+ initializeTooltip(): void;
36
+ toggleRawClicked(): void;
37
+ copyClicked(): void;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<TdCopyCodeButtonComponent, never>;
39
+ static ɵcmp: i0.ɵɵComponentDeclaration<TdCopyCodeButtonComponent, "td-copy-code-button", never, { "copiedContent": { "alias": "copiedContent"; "required": false; }; "copyCodeToClipboard": { "alias": "copyCodeToClipboard"; "required": false; }; "copyCodeTooltips": { "alias": "copyCodeTooltips"; "required": false; }; "toggleRawButton": { "alias": "toggleRawButton"; "required": false; }; "rawToggleLabels": { "alias": "rawToggleLabels"; "required": false; }; }, { "toggleRaw": "toggleRaw"; }, never, never, true, never>;
40
+ }
41
+
42
+ declare class TdHighlightComponent implements AfterViewInit, AfterViewChecked {
43
+ private _renderer;
44
+ private _elementRef;
45
+ private _domSanitizer;
46
+ private cdr;
47
+ private _initialized;
48
+ private _content;
49
+ private _lang;
50
+ private _showRaw;
51
+ /**
52
+ * content?: string
53
+ *
54
+ * Code content to be parsed as highlighted html.
55
+ * Used to load data dynamically.
56
+ *
57
+ * e.g. `.html`, `.ts` , etc.
58
+ */
59
+ set content(content: string);
60
+ /**
61
+ * copyCodeToClipboard?: boolean
62
+ *
63
+ * Display copy button on code snippets to copy code to clipboard.
64
+ */
65
+ copyCodeToClipboard?: boolean | undefined;
66
+ /**
67
+ * copyCodeTooltips?: ICopyCodeTooltips
68
+ *
69
+ * Tooltips for copy button to copy and upon copying.
70
+ */
71
+ copyCodeTooltips?: ICopyCodeTooltips;
72
+ /**
73
+ * toggleRawButton?: boolean
74
+ *
75
+ * Display button to toggle raw code.
76
+ */
77
+ toggleRawButton: boolean;
78
+ /**
79
+ * rawToggleLabels?: IRawToggleLabels
80
+ *
81
+ * Labels for raw toggle button.
82
+ */
83
+ rawToggleLabels?: IRawToggleLabels;
84
+ /**
85
+ * lang?: string
86
+ *
87
+ * Language of the code content to be parsed as highlighted html.
88
+ * Defaults to `typescript`
89
+ *
90
+ * e.g. `typescript`, `html` , etc.
91
+ */
92
+ set codeLang(lang: string);
93
+ /** @deprecated - removed completely @4.0.0 */
94
+ set lang(lang: string);
95
+ copyContent: string;
96
+ /**
97
+ * contentReady?: function
98
+ * Event emitted after the highlight content rendering is finished.
99
+ */
100
+ contentReady: EventEmitter<void>;
101
+ highlightComp: ElementRef;
102
+ copyComp: ElementRef;
103
+ tooltip: MatTooltip;
104
+ constructor(_renderer: Renderer2, _elementRef: ElementRef, _domSanitizer: DomSanitizer, cdr: ChangeDetectorRef);
105
+ ngAfterViewChecked(): void;
106
+ ngAfterViewInit(): void;
107
+ setLanguage(lang: string): void;
108
+ toggleRawClicked(): void;
109
+ /**
110
+ * General method to parse a string of code into HTML Elements and load them into the container
111
+ */
112
+ private _loadContent;
113
+ private _elementFromString;
114
+ private _render;
115
+ static ɵfac: i0.ɵɵFactoryDeclaration<TdHighlightComponent, never>;
116
+ static ɵcmp: i0.ɵɵComponentDeclaration<TdHighlightComponent, "td-highlight", never, { "content": { "alias": "content"; "required": false; }; "copyCodeToClipboard": { "alias": "copyCodeToClipboard"; "required": false; }; "copyCodeTooltips": { "alias": "copyCodeTooltips"; "required": false; }; "toggleRawButton": { "alias": "toggleRawButton"; "required": false; }; "rawToggleLabels": { "alias": "rawToggleLabels"; "required": false; }; "codeLang": { "alias": "codeLang"; "required": false; }; "lang": { "alias": "lang"; "required": false; }; }, { "contentReady": "contentReady"; }, never, ["*"], true, never>;
117
+ }
118
+
1
119
  /**
2
- * Generated bundle index. Do not edit.
120
+ * @deprecated This module is deprecated and will be removed in future versions.
121
+ * Please migrate to using standalone components as soon as possible.
3
122
  */
4
- /// <amd-module name="@covalent/highlight" />
5
- export * from './public_api';
123
+ declare class CovalentHighlightModule {
124
+ static ɵfac: i0.ɵɵFactoryDeclaration<CovalentHighlightModule, never>;
125
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CovalentHighlightModule, never, [typeof TdHighlightComponent, typeof TdCopyCodeButtonComponent], [typeof TdHighlightComponent]>;
126
+ static ɵinj: i0.ɵɵInjectorDeclaration<CovalentHighlightModule>;
127
+ }
128
+
129
+ export { CovalentHighlightModule, TdCopyCodeButtonComponent, TdHighlightComponent };
130
+ export type { ICopyCodeTooltips, IRawToggleLabels };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@covalent/highlight",
3
- "version": "10.4.0-beta.3",
3
+ "version": "11.0.0-beta.2",
4
4
  "description": "Teradata UI Platform Highlight Module",
5
5
  "keywords": [
6
6
  "angular",
@@ -20,11 +20,11 @@
20
20
  "author": "Teradata UX",
21
21
  "peerDependencies": {
22
22
  "highlight.js": "^11.9.0",
23
- "@angular/common": "19.x.x",
24
- "@angular/core": "19.x.x",
25
- "@angular/platform-browser": "19.x.x",
26
- "@angular/cdk": "19.x.x",
27
- "@angular/material": "19.x.x"
23
+ "@angular/common": "20.x.x",
24
+ "@angular/core": "20.x.x",
25
+ "@angular/platform-browser": "20.x.x",
26
+ "@angular/cdk": "20.x.x",
27
+ "@angular/material": "20.x.x"
28
28
  },
29
29
  "dependencies": {
30
30
  "tslib": "^2.8.1"
@@ -45,6 +45,6 @@
45
45
  "typings": "index.d.ts",
46
46
  "sideEffects": false,
47
47
  "scripts": {
48
- "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by Ivy in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with Ivy partial compilation mode, before attempting to publish.\\n')\" && exit 1"
48
+ "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with partial compilation mode, before attempting to publish.\\n')\" && exit 1"
49
49
  }
50
50
  }
@@ -1,38 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { MatButtonToggle } from '@angular/material/button-toggle';
3
- import { MatTooltip } from '@angular/material/tooltip';
4
- import * as i0 from "@angular/core";
5
- export interface ICopyCodeTooltips {
6
- copy?: string;
7
- copied?: string;
8
- }
9
- export interface IRawToggleLabels {
10
- viewRaw?: string;
11
- viewCode?: string;
12
- }
13
- export declare class TdCopyCodeButtonComponent {
14
- copiedContent: string;
15
- copyCodeToClipboard: boolean;
16
- /**
17
- * copyCodeTooltips?: ICopyCodeTooltips
18
- *
19
- * Tooltips for copy button to copy and upon copying.
20
- */
21
- copyCodeTooltips?: ICopyCodeTooltips;
22
- toggleRawButton: boolean;
23
- rawToggleLabels?: IRawToggleLabels;
24
- rawToggle: boolean;
25
- toggleRaw: EventEmitter<boolean>;
26
- copyButton: MatButtonToggle;
27
- rawButton: MatButtonToggle;
28
- get copyTooltip(): string;
29
- get copiedTooltip(): string;
30
- get rawToggleText(): string;
31
- tooltip: MatTooltip;
32
- textCopied(event: boolean): void;
33
- initializeTooltip(): void;
34
- toggleRawClicked(): void;
35
- copyClicked(): void;
36
- static ɵfac: i0.ɵɵFactoryDeclaration<TdCopyCodeButtonComponent, never>;
37
- static ɵcmp: i0.ɵɵComponentDeclaration<TdCopyCodeButtonComponent, "td-copy-code-button", never, { "copiedContent": { "alias": "copiedContent"; "required": false; }; "copyCodeToClipboard": { "alias": "copyCodeToClipboard"; "required": false; }; "copyCodeTooltips": { "alias": "copyCodeTooltips"; "required": false; }; "toggleRawButton": { "alias": "toggleRawButton"; "required": false; }; "rawToggleLabels": { "alias": "rawToggleLabels"; "required": false; }; }, { "toggleRaw": "toggleRaw"; }, never, never, true, never>;
38
- }
@@ -1,81 +0,0 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, Renderer2, ChangeDetectorRef, AfterViewChecked } from '@angular/core';
2
- import { DomSanitizer } from '@angular/platform-browser';
3
- import { MatTooltip } from '@angular/material/tooltip';
4
- import { ICopyCodeTooltips, IRawToggleLabels } from './copy-code-button/copy-code-button.component';
5
- import * as i0 from "@angular/core";
6
- export declare class TdHighlightComponent implements AfterViewInit, AfterViewChecked {
7
- private _renderer;
8
- private _elementRef;
9
- private _domSanitizer;
10
- private cdr;
11
- private _initialized;
12
- private _content;
13
- private _lang;
14
- private _showRaw;
15
- /**
16
- * content?: string
17
- *
18
- * Code content to be parsed as highlighted html.
19
- * Used to load data dynamically.
20
- *
21
- * e.g. `.html`, `.ts` , etc.
22
- */
23
- set content(content: string);
24
- /**
25
- * copyCodeToClipboard?: boolean
26
- *
27
- * Display copy button on code snippets to copy code to clipboard.
28
- */
29
- copyCodeToClipboard?: boolean | undefined;
30
- /**
31
- * copyCodeTooltips?: ICopyCodeTooltips
32
- *
33
- * Tooltips for copy button to copy and upon copying.
34
- */
35
- copyCodeTooltips?: ICopyCodeTooltips;
36
- /**
37
- * toggleRawButton?: boolean
38
- *
39
- * Display button to toggle raw code.
40
- */
41
- toggleRawButton: boolean;
42
- /**
43
- * rawToggleLabels?: IRawToggleLabels
44
- *
45
- * Labels for raw toggle button.
46
- */
47
- rawToggleLabels?: IRawToggleLabels;
48
- /**
49
- * lang?: string
50
- *
51
- * Language of the code content to be parsed as highlighted html.
52
- * Defaults to `typescript`
53
- *
54
- * e.g. `typescript`, `html` , etc.
55
- */
56
- set codeLang(lang: string);
57
- /** @deprecated - removed completely @4.0.0 */
58
- set lang(lang: string);
59
- copyContent: string;
60
- /**
61
- * contentReady?: function
62
- * Event emitted after the highlight content rendering is finished.
63
- */
64
- contentReady: EventEmitter<void>;
65
- highlightComp: ElementRef;
66
- copyComp: ElementRef;
67
- tooltip: MatTooltip;
68
- constructor(_renderer: Renderer2, _elementRef: ElementRef, _domSanitizer: DomSanitizer, cdr: ChangeDetectorRef);
69
- ngAfterViewChecked(): void;
70
- ngAfterViewInit(): void;
71
- setLanguage(lang: string): void;
72
- toggleRawClicked(): void;
73
- /**
74
- * General method to parse a string of code into HTML Elements and load them into the container
75
- */
76
- private _loadContent;
77
- private _elementFromString;
78
- private _render;
79
- static ɵfac: i0.ɵɵFactoryDeclaration<TdHighlightComponent, never>;
80
- static ɵcmp: i0.ɵɵComponentDeclaration<TdHighlightComponent, "td-highlight", never, { "content": { "alias": "content"; "required": false; }; "copyCodeToClipboard": { "alias": "copyCodeToClipboard"; "required": false; }; "copyCodeTooltips": { "alias": "copyCodeTooltips"; "required": false; }; "toggleRawButton": { "alias": "toggleRawButton"; "required": false; }; "rawToggleLabels": { "alias": "rawToggleLabels"; "required": false; }; "codeLang": { "alias": "codeLang"; "required": false; }; "lang": { "alias": "lang"; "required": false; }; }, { "contentReady": "contentReady"; }, never, ["*"], true, never>;
81
- }
@@ -1,12 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./highlight.component";
3
- import * as i2 from "./copy-code-button/copy-code-button.component";
4
- /**
5
- * @deprecated This module is deprecated and will be removed in future versions.
6
- * Please migrate to using standalone components as soon as possible.
7
- */
8
- export declare class CovalentHighlightModule {
9
- static ɵfac: i0.ɵɵFactoryDeclaration<CovalentHighlightModule, never>;
10
- static ɵmod: i0.ɵɵNgModuleDeclaration<CovalentHighlightModule, never, [typeof i1.TdHighlightComponent, typeof i2.TdCopyCodeButtonComponent], [typeof i1.TdHighlightComponent]>;
11
- static ɵinj: i0.ɵɵInjectorDeclaration<CovalentHighlightModule>;
12
- }
package/public_api.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export * from './lib/highlight.component';
2
- export * from './lib/highlight.module';
3
- export * from './lib/copy-code-button/copy-code-button.component';