@skyux/docs-tools 15.0.0-alpha.0 → 15.0.0-alpha.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/fesm2022/skyux-docs-tools.mjs +161 -187
- package/fesm2022/skyux-docs-tools.mjs.map +1 -1
- package/package.json +16 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-docs-tools.mjs","sources":["../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard-button.directive.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-route.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight-language.ts","../../../../../libs/components/docs-tools/src/lib/modules/shared/sky-docs-tools-resources.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-toolbar.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-wrapper.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/stackblitz.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.html","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/help.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.html","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types-token.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/provide-code-example-types.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/box.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/markdown.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-anchor-ids.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-anchor-links.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/deprecation-reason.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/escape-html.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/description.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/default-value.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/enum-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/parameter-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/function-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/interface-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/method-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/property-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-alias-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-category-color.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-label.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.html","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-host.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-highlight.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-overview.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.module.ts","../../../../../libs/components/docs-tools/src/skyux-docs-tools.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport type { SkyDocsCategoryColor } from './category-color';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-rounded-corners',\n '[class]': '\"sky-docs-category-tag-color-\" + color()',\n },\n selector: 'sky-docs-category-tag',\n styleUrl: './category-tag.component.scss',\n template: '<ng-content />',\n})\nexport class SkyDocsCategoryTagComponent {\n public readonly color = input.required<SkyDocsCategoryColor>();\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCategoryTagComponent } from './category-tag.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCategoryTagComponent],\n exports: [SkyDocsCategoryTagComponent],\n})\nexport class SkyDocsCategoryTagModule {}\n","import { Injectable, inject } from '@angular/core';\nimport { SkyAppWindowRef } from '@skyux/core';\nimport { SkyToastService } from '@skyux/toast';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsClipboardService {\n readonly #toastSvc = inject(SkyToastService);\n readonly #windowRef = inject(SkyAppWindowRef);\n\n /**\n * Saves an element's text content to the system clipboard.\n * @param el The element whose text should be copied.\n * @param successMessage The message to display after the action is successful.\n */\n public copyTextContent(el: HTMLElement, successMessage: string): void {\n const text = el.textContent?.trim() ?? '';\n\n this.#windowRef.nativeWindow.navigator.clipboard.writeText(text);\n\n this.#toastSvc.openMessage(successMessage, { autoClose: true });\n }\n}\n","import { Directive, inject, input } from '@angular/core';\n\nimport { SkyDocsClipboardService } from './clipboard.service';\n\n/**\n * @internal\n */\n@Directive({\n host: {\n '(click)': 'onClick()',\n },\n selector: '[skyDocsClipboardButton]',\n})\nexport class SkyDocsClipboardButtonDirective {\n readonly #clipboardSvc = inject(SkyDocsClipboardService);\n\n public readonly clipboardTarget = input.required<HTMLElement>();\n public readonly copySuccessMessage = input.required<string>();\n\n protected onClick(): void {\n const el = this.clipboardTarget();\n\n if (el) {\n this.#clipboardSvc.copyTextContent(el, this.copySuccessMessage());\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsClipboardButtonDirective } from './clipboard-button.directive';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsClipboardButtonDirective],\n exports: [SkyDocsClipboardButtonDirective],\n})\nexport class SkyDocsClipboardModule {}\n","import { InjectionToken } from '@angular/core';\n\nexport const SKY_DOCS_CODE_EXAMPLE_ROUTE = new InjectionToken<string>(\n 'SKY_DOCS_CODE_EXAMPLE_ROUTE',\n);\n","/**\n * @internal\n */\nexport const SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES = [\n 'html',\n 'markup',\n 'javascript',\n 'js',\n 'css',\n 'scss',\n 'typescript',\n 'ts',\n] as const;\n\n/**\n * @internal\n */\nexport type SkyDocsCodeHighlightLanguage =\n (typeof SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES)[number];\n\n/**\n * @internal\n */\nexport function assertCodeHighlightLanguage(\n value: string | undefined,\n): asserts value is SkyDocsCodeHighlightLanguage {\n if (\n !SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES.includes(\n value as SkyDocsCodeHighlightLanguage,\n )\n ) {\n throw new Error(`Value \"${value}\" is not a supported language type.`);\n }\n}\n","/* istanbul ignore file */\n\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n sky_docs_code_snippet_copy_to_clipboard_button_label: { message: 'Copy' },\n sky_docs_code_snippet_copy_to_clipboard_success_message: {\n message: 'Code copied',\n },\n sky_docs_code_example_viewer_demo_hidden_message: {\n message: 'Open this code example in StackBlitz to view the demo.',\n },\n sky_docs_code_example_viewer_demo_stack_blitz_button: {\n message: 'Edit in StackBlitz',\n },\n sky_docs_code_example_viewer_hide_code_button_label: {\n message: 'Hide code',\n },\n sky_docs_code_example_viewer_show_code_button_label: {\n message: 'Show code',\n },\n },\n 'FR-CA': {\n sky_docs_code_snippet_copy_to_clipboard_button_label: { message: 'Copier' },\n sky_docs_code_snippet_copy_to_clipboard_success_message: {\n message: 'Code copié',\n },\n sky_docs_code_example_viewer_demo_hidden_message: {\n message: 'Ouvrez cet exemple de code dans StackBlitz pour voir la démo.',\n },\n sky_docs_code_example_viewer_demo_stack_blitz_button: {\n message: 'Modifier dans StackBlitz',\n },\n sky_docs_code_example_viewer_hide_code_button_label: {\n message: 'Masquer le code',\n },\n sky_docs_code_example_viewer_show_code_button_label: {\n message: 'Afficher le code',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyDocsToolsResourcesModule {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-margin-stacked-lg',\n },\n imports: [SkyDocsClipboardModule, SkyIconModule, SkyDocsToolsResourcesModule],\n selector: 'sky-docs-code-snippet-toolbar',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n [clipboardTarget]=\"codeRef()\"\n [copySuccessMessage]=\"\n 'sky_docs_code_snippet_copy_to_clipboard_success_message'\n | skyLibResources\n \"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n {{\n 'sky_docs_code_snippet_copy_to_clipboard_button_label' | skyLibResources\n }}\n </button>\n `,\n})\nexport class SkyDocsCodeSnippetToolbarComponent {\n public readonly codeRef = input.required<HTMLElement>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Used to wrap a content child `code` element.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet:not([code])',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><ng-content select=\"code\" /></pre>\n `,\n})\nexport class SkyDocsCodeSnippetWrapperComponent {\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Injectable } from '@angular/core';\n\nimport highlight from 'highlight.js/lib/core';\nimport hlCss from 'highlight.js/lib/languages/css';\nimport hlJavaScript from 'highlight.js/lib/languages/javascript';\nimport hlScss from 'highlight.js/lib/languages/scss';\nimport hlTypeScript from 'highlight.js/lib/languages/typescript';\nimport hlXml from 'highlight.js/lib/languages/xml';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsCodeHighlightService {\n constructor() {\n highlight.registerLanguage('html', hlXml);\n highlight.registerLanguage('markup', hlXml);\n highlight.registerLanguage('js', hlJavaScript);\n highlight.registerLanguage('javascript', hlJavaScript);\n highlight.registerLanguage('css', hlCss);\n highlight.registerLanguage('scss', hlScss);\n highlight.registerLanguage('ts', hlTypeScript);\n highlight.registerLanguage('typescript', hlTypeScript);\n }\n\n public highlight(\n code: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n const highlighted = highlight.highlight(code, {\n language,\n });\n\n return highlighted.value;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n inject,\n input,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { type SkyDocsCodeHighlightLanguage } from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeHighlightService } from '../code-highlight/code-highlight.service';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Highlights the provided code.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet[code]',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><code [innerHTML]=\"highlighted()\"></code></pre>\n `,\n})\nexport class SkyDocsCodeSnippetComponent {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n readonly #sanitizer = inject(DomSanitizer);\n\n public readonly code = input.required<string>();\n public readonly language = input.required<SkyDocsCodeHighlightLanguage>();\n\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected highlighted = computed(() => {\n const code = this.code();\n const language = this.language();\n const highlighted = this.#highlightSvc.highlight(code, language);\n\n return this.#sanitizer.bypassSecurityTrustHtml(highlighted);\n });\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCodeSnippetWrapperComponent } from './code-snippet-wrapper.component';\nimport { SkyDocsCodeSnippetComponent } from './code-snippet.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n exports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n})\nexport class SkyDocsCodeSnippetModule {}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { SkyAppAssetsService } from '@skyux/assets';\nimport stackblitz from '@stackblitz/sdk';\n\nimport { firstValueFrom } from 'rxjs';\n\nimport type { SkyDocsStackBlitzLaunchConfig } from './stackblitz-launch-config';\n\n/**\n * Files to be read from the host SPA's \"src/assets/stack-blitz\" directory.\n */\nconst TEMPLATE_FILES = ['package.json', 'package-lock.json'];\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsStackBlitzService {\n readonly #http = inject(HttpClient, { optional: true });\n readonly #assetsSvc = inject(SkyAppAssetsService, { optional: true });\n\n public async launch(config: SkyDocsStackBlitzLaunchConfig): Promise<void> {\n const files: Record<string, string> = {};\n\n for (const [file, contents] of Object.entries(config.files)) {\n files[`src/example/${file}`] = contents;\n }\n\n for (const file of TEMPLATE_FILES) {\n let contents = await this.#fetchTemplateFileContents(file);\n\n if (contents === undefined && !file.endsWith('.template')) {\n contents = await this.#fetchTemplateFileContents(`${file}.template`);\n }\n\n if (contents === undefined) {\n throw new Error(`Failed to read StackBlitz template file: ${file}`);\n }\n\n files[file.replace(/\\.template$/, '')] = contents;\n }\n\n const bootstrapImportPath = `./example/${config.primaryFile.replace(/\\.ts$/, '')}`;\n\n files['.stackblitzrc'] = `{\n \"installDependencies\": true,\n \"startCommand\": \"ng serve\"\n}\n`;\n\n files['angular.json'] = `{\n \"$schema\": \"./node_modules/@angular/cli/lib/config/schema.json\",\n \"version\": 1,\n \"cli\": {\n \"analytics\": false\n },\n \"newProjectRoot\": \"projects\",\n \"projects\": {\n \"example-app\": {\n \"projectType\": \"application\",\n \"schematics\": {\n \"@schematics/angular:component\": {\n \"style\": \"scss\"\n },\n \"@schematics/angular:application\": {\n \"strict\": true\n }\n },\n \"root\": \"\",\n \"sourceRoot\": \"src\",\n \"prefix\": \"app\",\n \"architect\": {\n \"build\": {\n \"builder\": \"@angular/build:browser\",\n \"options\": {\n \"outputPath\": \"dist/example-app\",\n \"index\": \"src/index.html\",\n \"main\": \"src/main.ts\",\n \"polyfills\": [\"zone.js\"],\n \"tsConfig\": \"tsconfig.app.json\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"styles\": [\n \"@skyux/theme/css/sky.css\",\n \"@skyux/theme/css/themes/modern/styles.css\",\n \"@skyux/ag-grid/css/sky-ag-grid.css\",\n \"src/styles.scss\"\n ],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"scripts\": []\n },\n \"configurations\": {\n \"production\": {\n \"budgets\": [\n {\n \"type\": \"initial\",\n \"maximumWarning\": \"500kb\",\n \"maximumError\": \"1mb\"\n },\n {\n \"type\": \"anyComponentStyle\",\n \"maximumWarning\": \"2kb\",\n \"maximumError\": \"4kb\"\n }\n ],\n \"fileReplacements\": [\n {\n \"replace\": \"src/environments/environment.ts\",\n \"with\": \"src/environments/environment.prod.ts\"\n }\n ],\n \"outputHashing\": \"all\"\n },\n \"development\": {\n \"buildOptimizer\": false,\n \"optimization\": false,\n \"vendorChunk\": true,\n \"extractLicenses\": false,\n \"sourceMap\": true,\n \"namedChunks\": true\n }\n },\n \"defaultConfiguration\": \"production\"\n },\n \"serve\": {\n \"builder\": \"@angular/build:dev-server\",\n \"configurations\": {\n \"production\": {\n \"buildTarget\": \"example-app:build:production\"\n },\n \"development\": {\n \"buildTarget\": \"example-app:build:development\"\n }\n },\n \"defaultConfiguration\": \"development\"\n },\n \"extract-i18n\": {\n \"builder\": \"@angular/build:extract-i18n\",\n \"options\": {\n \"buildTarget\": \"example-app:build\"\n }\n },\n \"test\": {\n \"builder\": \"@angular/build:karma\",\n \"options\": {\n \"main\": \"src/test.ts\",\n \"polyfills\": [\n \"zone.js\",\n \"zone.js/testing\"\n ],\n \"tsConfig\": \"tsconfig.spec.json\",\n \"karmaConfig\": \"karma.conf.js\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"styles\": [\n \"@skyux/theme/css/sky.css\",\n \"@skyux/theme/css/themes/modern/styles.css\",\n \"@skyux/ag-grid/css/sky-ag-grid.css\",\n \"src/styles.scss\"\n ],\n \"scripts\": []\n }\n }\n }\n }\n }\n}\n`;\n\n files['karma.conf.js'] =\n `// Karma configuration file, see link for more information\n// https://karma-runner.github.io/1.0/config/configuration-file.html\n\nmodule.exports = function (config) {\n config.set({\n basePath: '',\n frameworks: ['jasmine'],\n plugins: [\n require('karma-jasmine'),\n require('karma-chrome-launcher'),\n require('karma-jasmine-html-reporter'),\n require('karma-coverage')\n ],\n client: {\n jasmine: {\n // you can add configuration options for Jasmine here\n // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html\n // for example, you can disable the random execution with \\`random: false\\`\n // or set a specific seed with \\`seed: 4321\\`\n },\n clearContext: false, // leave Jasmine Spec Runner output visible in browser\n },\n jasmineHtmlReporter: {\n suppressAll: true, // removes the duplicated traces\n },\n coverageReporter: {\n dir: require('path').join(__dirname, './coverage/example-app'),\n subdir: '.',\n reporters: [{ type: 'html' }, { type: 'text-summary' }],\n },\n reporters: ['progress', 'kjhtml'],\n port: 9876,\n colors: true,\n logLevel: config.LOG_INFO,\n autoWatch: true,\n browsers: ['Chrome'],\n singleRun: false,\n restartOnFileChange: true,\n });\n};\n`;\n\n files['tsconfig.app.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/app\",\n \"types\": []\n },\n \"files\": [\"src/main.ts\"],\n \"include\": [\"src/**/*.d.ts\"]\n}\n`;\n\n files['tsconfig.json'] = `{\n \"compileOnSave\": false,\n \"compilerOptions\": {\n \"outDir\": \"./dist/out-tsc\",\n \"strict\": true,\n \"noImplicitOverride\": true,\n \"noPropertyAccessFromIndexSignature\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n \"isolatedModules\": true,\n \"esModuleInterop\": true,\n \"experimentalDecorators\": true,\n \"moduleResolution\": \"bundler\",\n \"importHelpers\": true,\n \"target\": \"ES2022\",\n \"module\": \"ES2022\"\n },\n \"angularCompilerOptions\": {\n \"enableI18nLegacyMessageIdFormat\": false,\n \"strictInjectionParameters\": true,\n \"strictInputAccessModifiers\": true,\n \"strictTemplates\": true\n }\n}\n`;\n\n files['tsconfig.spec.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/spec\",\n \"types\": [\"jasmine\"]\n },\n \"files\": [\"src/test.ts\"],\n \"include\": [\"src/**/*.spec.ts\", \"src/**/*.d.ts\"]\n}\n`;\n\n files['src/help.service.ts'] = `import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n@Injectable()\nexport class ExampleHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n console.log(\\`Help opened with key '\\${args?.helpKey}'.\\`);\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n /* */\n }\n}\n`;\n\n files['src/index.html'] = `<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <title>${config.title}</title>\n <base href=\"/\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <!--\n The CSS links are needed for the StackBlitz demo only.\n This is a workaround for a known bug that prevents external imports in CSS.\n https://github.com/stackblitz/core/issues/133\n -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\" crossorigin=\"anonymous\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/9/assets/css/skyux-icons.min.css\" crossorigin=\"anonymous\">\n </head>\n <body>\n <${config.componentSelector}></${config.componentSelector}>\n </body>\n</html>\n`;\n\n files['src/main.ts'] =\n `import { provideHttpClient } from '@angular/common/http';\nimport {\n EnvironmentProviders,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { SkyHelpService } from '@skyux/core';\nimport { provideInitialTheme } from '@skyux/theme';\nimport { provideRouter } from '@angular/router';\nimport { ${config.componentName} } from '${bootstrapImportPath}';\n\nimport { ExampleHelpService } from './help.service';\n\n/**\n * The help service must be provided for components that set the\n * \\`helpKey\\` attribute. For more information, review the global help\n * documentation.\n * @see https://developer.blackbaud.com/skyux/learn/develop/global-help\n */\nfunction provideExampleHelpService(): EnvironmentProviders {\n return makeEnvironmentProviders([\n { provide: SkyHelpService, useClass: ExampleHelpService },\n ]);\n}\n\nbootstrapApplication(${config.componentName}, {\n providers: [\n provideInitialTheme('modern'),\n provideHttpClient(),\n provideExampleHelpService(),\n provideRouter([]),\n ],\n}).catch((err) => console.error(err));\n`;\n\n files['src/styles.scss'] = '';\n\n files['src/test.ts'] =\n `// This file is required by karma.conf.js and loads recursively all the .spec and framework files\n\nimport 'zone.js/testing';\nimport {getTestBed} from '@angular/core/testing';\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting,\n} from '@angular/platform-browser-dynamic/testing';\n\n// First, initialize the Angular testing environment.\ngetTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());\n\n// Then we find all the tests.\nconst context = (import.meta as any).webpackContext('./', {\n recursive: true,\n regExp: /\\\\.spec\\\\.ts$/,\n});\n\n// And load the modules.\ncontext.keys().map(context);\n`;\n\n stackblitz.openProject(\n {\n title: config.title,\n files,\n template: 'node',\n },\n { openFile: config.primaryFile },\n );\n }\n\n async #fetchTemplateFileContents(file: string): Promise<string | undefined> {\n const filePath = `stack-blitz/${file}`;\n const url = this.#assetsSvc?.getUrl(filePath) ?? `assets/${filePath}`;\n\n /* istanbul ignore if: safety check */\n if (!this.#http) {\n return undefined;\n }\n\n return await firstValueFrom(\n this.#http.get(url, { responseType: 'text' }),\n ).catch(() => {\n return undefined;\n });\n }\n}\n","import { KeyValuePipe, NgComponentOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Type,\n booleanAttribute,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport {\n type SkyDocsCodeHighlightLanguage,\n assertCodeHighlightLanguage,\n} from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SKY_DOCS_CODE_EXAMPLE_ROUTE } from './code-example-route';\nimport { SkyDocsStackBlitzService } from './stackblitz.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [\n KeyValuePipe,\n NgComponentOutlet,\n SkyBoxModule,\n SkyDocsCodeSnippetModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyIdModule,\n SkyVerticalTabsetModule,\n RouterLink,\n ],\n selector: 'sky-docs-code-example-viewer',\n styleUrl: './code-example-viewer.component.scss',\n templateUrl: './code-example-viewer.component.html',\n})\nexport class SkyDocsCodeExampleViewerComponent {\n readonly #stackblitzSvc = inject(SkyDocsStackBlitzService);\n\n public readonly componentName = input.required<string>();\n public readonly componentSelector = input.required<string>();\n public readonly componentType = input<Type<unknown> | undefined>();\n public readonly files = input.required<Record<string, string>>();\n public readonly headingText = input.required<string>();\n public readonly primaryFile = input.required<string>();\n\n public readonly demoHidden = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly isCodeVisible = signal(false);\n protected readonly codeExampleRoute = inject(SKY_DOCS_CODE_EXAMPLE_ROUTE, {\n optional: true,\n });\n\n protected getCodeLanguage(fileName: string): SkyDocsCodeHighlightLanguage {\n const extension = fileName.split('.').pop();\n assertCodeHighlightLanguage(extension);\n return extension;\n }\n\n protected launchStackBlitz(): void {\n void this.#stackblitzSvc.launch({\n componentName: this.componentName(),\n componentSelector: this.componentSelector(),\n files: this.files(),\n primaryFile: this.primaryFile(),\n title: this.headingText(),\n });\n }\n\n protected toggleCodeVisibility(): void {\n const isCodeVisible = this.isCodeVisible();\n this.isCodeVisible.set(!isCodeVisible);\n }\n}\n","<sky-box headingLevel=\"3\" headingStyle=\"3\" [headingText]=\"headingText()\">\n <sky-box-controls>\n @if (codeExampleRoute) {\n <a\n class=\"sky-padding-horizontal-xl\"\n [routerLink]=\"[codeExampleRoute, componentName()]\"\n >\n Open in full page\n <sky-icon iconName=\"open\" />\n </a>\n }\n <button\n class=\"sky-btn sky-btn-default\"\n data-sky-id=\"stackblitz-btn\"\n type=\"button\"\n (click)=\"launchStackBlitz()\"\n >\n <sky-icon iconName=\"edit\" />\n {{\n 'sky_docs_code_example_viewer_demo_stack_blitz_button' | skyLibResources\n }}\n </button>\n </sky-box-controls>\n\n <sky-box-content>\n <div\n class=\"sky-docs-code-example-viewer-demo sky-padding-even-md sky-margin-stacked-lg\"\n >\n @let component = componentType();\n @if (!demoHidden() && component) {\n <ng-template [ngComponentOutlet]=\"component\" />\n } @else {\n {{\n 'sky_docs_code_example_viewer_demo_hidden_message' | skyLibResources\n }}\n }\n </div>\n\n <div class=\"sky-margin-stacked-sm\">\n <button\n class=\"sky-btn sky-btn-link\"\n data-sky-id=\"toggle-code-visibility-btn\"\n type=\"button\"\n [attr.aria-controls]=\"codeRef.id\"\n [attr.aria-expanded]=\"isCodeVisible()\"\n (click)=\"toggleCodeVisibility()\"\n >\n <sky-icon\n [iconName]=\"isCodeVisible() ? 'chevron-down' : 'chevron-right'\"\n />\n {{\n isCodeVisible()\n ? ('sky_docs_code_example_viewer_hide_code_button_label'\n | skyLibResources)\n : ('sky_docs_code_example_viewer_show_code_button_label'\n | skyLibResources)\n }}\n </button>\n </div>\n\n <sky-vertical-tabset #codeRef=\"skyId\" skyId [hidden]=\"!isCodeVisible()\">\n @for (obj of files() | keyvalue; track obj.key) {\n <sky-vertical-tab\n [active]=\"obj.key === primaryFile()\"\n [tabHeading]=\"obj.key\"\n >\n <sky-docs-code-snippet\n [code]=\"obj.value\"\n [language]=\"getCodeLanguage(obj.key)\"\n />\n </sky-vertical-tab>\n }\n </sky-vertical-tabset>\n </sky-box-content>\n</sky-box>\n","import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class ExampleHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n console.log(`Help opened with key '${args?.helpKey}'.`);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n /* */\n }\n}\n","import {\n EnvironmentProviders,\n NgModule,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyDocsCodeExampleViewerComponent } from './code-example-viewer.component';\nimport { ExampleHelpService } from './help.service';\n\n/**\n * Provide a mock help service for the code example viewer so that examples\n * with help keys work properly. (StackBlitz pulls in its own version of the\n * help service; this is needed for this live demos on the docs site.)\n */\nfunction provideExampleHelpService(): EnvironmentProviders {\n return makeEnvironmentProviders([\n { provide: SkyHelpService, useClass: ExampleHelpService },\n ]);\n}\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeExampleViewerComponent],\n exports: [SkyDocsCodeExampleViewerComponent],\n providers: [provideExampleHelpService()],\n})\nexport class SkyDocsCodeExampleViewerModule {}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\nimport { SkyDocsCodeHighlightService } from './code-highlight.service';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeHighlight',\n})\nexport class SkyDocsCodeHighlightPipe implements PipeTransform {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n\n public transform(\n value: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n return this.#highlightSvc.highlight(value, language);\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorLink } from './heading-anchor-link';\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsHeadingAnchorService implements OnDestroy {\n #anchors: SkyDocsHeadingAnchorComponent[] = [];\n readonly #anchorsChange = new BehaviorSubject<SkyDocsHeadingAnchorLink[]>([]);\n\n public readonly anchorsChange = this.#anchorsChange.asObservable();\n\n public ngOnDestroy(): void {\n this.#anchors = [];\n this.#anchorsChange.complete();\n }\n\n public register(anchor: SkyDocsHeadingAnchorComponent): void {\n if (!this.#anchors.includes(anchor)) {\n this.#anchors.push(anchor);\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n public unregister(anchor: SkyDocsHeadingAnchorComponent): void {\n if (this.#anchors.includes(anchor)) {\n this.#anchors.splice(this.#anchors.indexOf(anchor));\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n #getLinks(): SkyDocsHeadingAnchorLink[] {\n const els = document.querySelectorAll('sky-docs-heading-anchor');\n const anchorsSorted: SkyDocsHeadingAnchorComponent[] = [];\n\n // Since heading anchors can be registered at any point in the lifecycle\n // of the app, we need to sort the links by their location in the DOM,\n // rather than the order at which they were registered.\n for (const el of els) {\n this.#anchors.forEach((anchor) => {\n if (anchor.equals(el)) {\n anchorsSorted.push(anchor);\n }\n });\n }\n\n return anchorsSorted.map((a) => {\n return {\n anchorId: a.anchorId(),\n categoryColor: a.categoryColor(),\n categoryTemplate: a.categoryTemplate(),\n categoryText: a.categoryText(),\n text: a.headingText(),\n } satisfies SkyDocsHeadingAnchorLink;\n });\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n TemplateRef,\n booleanAttribute,\n inject,\n input,\n numberAttribute,\n} from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsCategoryColor } from '../category-tag/category-color';\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsHeadingAnchorHeadingLevel } from './heading-anchor-heading-level';\nimport { SkyDocsHeadingAnchorHeadingTextFormat } from './heading-anchor-heading-text-format';\nimport { SkyDocsHeadingAnchorService } from './heading-anchor.service';\n\nconst DEFAULT_HEADING_LEVEL: SkyDocsHeadingAnchorHeadingLevel = 2;\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n RouterLink,\n SkyDocsCategoryTagModule,\n SkyIconModule,\n SkyTrimModule,\n ],\n selector: 'sky-docs-heading-anchor',\n styleUrl: './heading-anchor.component.scss',\n templateUrl: './heading-anchor.component.html',\n})\nexport class SkyDocsHeadingAnchorComponent implements AfterViewInit, OnDestroy {\n readonly #elementRef = inject(ElementRef);\n readonly #anchorSvc = inject(SkyDocsHeadingAnchorService, { optional: true });\n\n public readonly anchorId = input.required<string>();\n public readonly headingText = input.required<string>();\n public readonly headingTextFormat =\n input<SkyDocsHeadingAnchorHeadingTextFormat>('normal');\n\n public readonly categoryColor = input<SkyDocsCategoryColor | undefined>();\n public readonly categoryTemplate = input<TemplateRef<unknown> | undefined>();\n public readonly categoryText = input<string | undefined>();\n\n public equals(el: Element): boolean {\n return this.#elementRef.nativeElement === el;\n }\n\n public readonly headingLevel = input(DEFAULT_HEADING_LEVEL, {\n transform: (value) => {\n const numValue = numberAttribute(value);\n\n if (numValue > 0 && numValue < 7) {\n return numValue as SkyDocsHeadingAnchorHeadingLevel;\n }\n\n return DEFAULT_HEADING_LEVEL;\n },\n });\n\n public readonly strikethrough = input(false, { transform: booleanAttribute });\n\n public ngAfterViewInit(): void {\n this.#anchorSvc?.register(this);\n }\n\n public ngOnDestroy(): void {\n this.#anchorSvc?.unregister(this);\n }\n}\n","@switch (headingLevel()) {\n @case (1) {\n <h1 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h1>\n }\n @case (2) {\n <h2 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h2>\n }\n @case (3) {\n <h3 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h3>\n }\n @case (4) {\n <h4 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h4>\n }\n @case (5) {\n <h5 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h5>\n }\n @case (6) {\n <h6 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h6>\n }\n}\n\n@if (categoryColor(); as categoryColor) {\n <sky-docs-category-tag [color]=\"categoryColor\">\n @if (categoryTemplate(); as categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"categoryTemplate\" />\n } @else {\n {{ categoryText() }}\n }\n </sky-docs-category-tag>\n}\n\n<ng-content />\n\n<ng-template #headingTextRef>\n <span class=\"sky-docs-heading-anchor-position\" [attr.id]=\"anchorId()\"></span>\n <a\n class=\"sky-docs-heading-anchor-link\"\n queryParamsHandling=\"merge\"\n [fragment]=\"anchorId()\"\n [routerLink]=\"[]\"\n >\n <sky-icon iconName=\"link\" />\n <span class=\"sky-screen-reader-only\"\n >Link for section titled {{ headingText() }}</span\n >\n </a>\n <span skyTrim [class.sky-docs-text-strikethrough]=\"strikethrough()\">\n @if (headingTextFormat() === 'code') {\n <code>{{ headingText() }}</code>\n } @else {\n {{ headingText() }}\n }\n </span>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsHeadingAnchorComponent],\n exports: [SkyDocsHeadingAnchorComponent],\n})\nexport class SkyDocsHeadingAnchorModule {}\n","import { InjectionToken, Type } from '@angular/core';\n\n/**\n * @internal\n */\nexport type SkyDocsCodeExampleComponentTypes = Record<string, Type<unknown>>;\n\n/**\n * @internal\n */\nexport const SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES =\n new InjectionToken<SkyDocsCodeExampleComponentTypes>(\n 'SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES',\n );\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport {\n SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n type SkyDocsCodeExampleComponentTypes,\n} from './code-example-types-token';\n\n/**\n * Provides code example declarations (e.g., Type<unknown>) to be used by the\n * code example viewer to dynamically create each code example component.\n * @example\n * ```\n * import * as examples from '@skyux/code-examples';\n *\n * provideSkyDocsCodeExampleTypes(examples);\n * ```\n * @internal\n */\nexport function provideSkyDocsCodeExampleTypes(\n examples: SkyDocsCodeExampleComponentTypes,\n): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n useValue: examples,\n },\n ]);\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgTemplateOutlet, RouterLink, SkyDocsCategoryTagModule],\n selector: 'sky-docs-toc',\n styleUrl: './table-of-contents.component.scss',\n templateUrl: './table-of-contents.component.html',\n})\nexport class SkyDocsTableOfContentsComponent {\n public readonly headingText = input.required<string>();\n public readonly links = input.required<SkyDocsTableOfContentsLink[]>();\n}\n","<h3 class=\"sky-docs-toc-heading\">{{ headingText() }}</h3>\n<nav [attr.aria-label]=\"'Table of contents for ' + headingText()\">\n @for (link of links(); track link.anchorId) {\n <a\n class=\"sky-docs-toc-link sky-margin-stacked-sm\"\n queryParamsHandling=\"merge\"\n [class.sky-docs-toc-link-active]=\"link.active\"\n [fragment]=\"link.anchorId\"\n [routerLink]=\"[]\"\n >\n <span class=\"sky-docs-toc-link-text\">{{ link.text }}</span>\n @if (link.categoryColor) {\n <sky-docs-category-tag\n class=\"sky-docs-toc-link-category sky-font-body-sm\"\n [color]=\"link.categoryColor\"\n >\n @if (link.categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"link.categoryTemplate\" />\n } @else {\n {{ link.categoryText }}\n }\n </sky-docs-category-tag>\n }\n </a>\n }\n</nav>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DOCUMENT,\n DestroyRef,\n ElementRef,\n computed,\n effect,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\nimport { SkyMediaQueryService, SkyScrollableHostService } from '@skyux/core';\n\nimport { debounceTime, distinctUntilChanged, fromEvent, map, take } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-docs-toc-page-with-links]': 'links().length > 0',\n },\n imports: [SkyDocsTableOfContentsComponent],\n selector: 'sky-docs-toc-page',\n styleUrl: './table-of-contents-page.component.scss',\n templateUrl: './table-of-contents-page.component.html',\n})\nexport class SkyDocsTableOfContentsPageComponent implements AfterViewInit {\n readonly #anchors = toSignal(\n inject(SkyDocsHeadingAnchorService).anchorsChange,\n );\n\n readonly #destroyRef = inject(DestroyRef);\n readonly #elementRef = inject(ElementRef);\n readonly #scrollableHostSvc = inject(SkyScrollableHostService);\n\n public readonly menuHeadingText = input.required<string>();\n\n readonly #activeAnchorIdOnScroll = signal<string | undefined>(undefined);\n #scrollOffset = 0;\n\n protected readonly breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n\n protected readonly links = computed<SkyDocsTableOfContentsLink[]>(() => {\n if (this.breakpoint() === 'xs') {\n return [];\n }\n\n const anchors = this.#anchors();\n const activeAnchorId = this.#activeAnchorIdOnScroll();\n\n return (\n anchors?.map((anchor) => {\n const link = anchor as SkyDocsTableOfContentsLink;\n link.active = link.anchorId === activeAnchorId;\n return link;\n }) ?? []\n );\n });\n\n readonly #routeFragment = toSignal(\n inject(ActivatedRoute).fragment.pipe(take(1)),\n );\n readonly #doc = inject(DOCUMENT);\n\n #delayedScroll: ReturnType<typeof setTimeout> | undefined;\n\n constructor() {\n effect(() => {\n const fragment = this.#routeFragment();\n const anchors = this.#anchors();\n if (fragment && anchors?.some((anchor) => anchor.anchorId === fragment)) {\n this.#delayedScroll = setTimeout(() =>\n this.#doc.getElementById(fragment)?.scrollIntoView(),\n );\n }\n });\n }\n\n public ngAfterViewInit(): void {\n const scrollEl = this.#scrollableHostSvc.getScrollableHost(\n this.#elementRef,\n );\n\n this.#scrollOffset = this.#getScrollOffset(scrollEl);\n\n fromEvent(scrollEl, 'scroll')\n .pipe(\n debounceTime(10),\n map(() => this.#getActiveLink()),\n distinctUntilChanged(),\n takeUntilDestroyed(this.#destroyRef),\n )\n .subscribe((activeLink) => {\n clearTimeout(this.#delayedScroll);\n this.#activeAnchorIdOnScroll.set(activeLink);\n });\n }\n\n /**\n * A link is considered active if the page is scrolled past the anchor without\n * also being scrolled passed the next link.\n */\n #getActiveLink(): string | undefined {\n const anchors = this.#anchors();\n\n if (anchors) {\n for (let i = 0; i < anchors.length; i++) {\n const anchor = anchors[i];\n const nextAnchor = anchors[i + 1];\n\n const rect = document\n .getElementById(anchor.anchorId)\n ?.getBoundingClientRect();\n\n const nextRect = document\n .getElementById(nextAnchor?.anchorId)\n ?.getBoundingClientRect();\n\n if (\n rect &&\n Math.round(rect.top - this.#scrollOffset) <= 0 &&\n (nextRect === undefined ||\n Math.round(nextRect.top - this.#scrollOffset) > 0)\n ) {\n return anchor.anchorId;\n }\n }\n }\n\n return undefined;\n }\n\n #getScrollOffset(scrollEl: HTMLElement | Window): number {\n return scrollEl instanceof HTMLElement\n ? scrollEl.getBoundingClientRect().top\n : 0;\n }\n}\n","@if (links().length > 0) {\n <div class=\"sky-docs-toc-menu\">\n <sky-docs-toc [headingText]=\"menuHeadingText()\" [links]=\"links()\" />\n </div>\n}\n<div class=\"sky-docs-toc-body\">\n <ng-content />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTableOfContentsPageComponent } from './table-of-contents-page.component';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsTableOfContentsComponent,\n SkyDocsTableOfContentsPageComponent,\n ],\n exports: [SkyDocsTableOfContentsPageComponent],\n})\nexport class SkyDocsTableOfContentsModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-elevation-0-bordered sky-rounded-corners',\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [SkyDocsCategoryTagModule],\n selector: 'sky-docs-type-definition-box',\n styles: `\n :host {\n display: block;\n overflow: hidden;\n }\n\n .sky-docs-type-definition-box-header {\n background-color: var(--sky-background-color-info-light);\n display: flex;\n align-items: center;\n gap: 10px;\n }\n\n .sky-docs-type-definition-box-heading {\n margin: 0;\n font-weight: normal;\n word-break: break-all;\n }\n `,\n template: `\n <div\n class=\"sky-docs-type-definition-box-header sky-border-bottom-dark sky-padding-even-xl\"\n >\n <h4 class=\"sky-docs-type-definition-box-heading\">\n <code\n [class.sky-docs-text-strikethrough]=\"deprecated()\"\n [innerHTML]=\"headingText()\"\n ></code>\n </h4>\n @if (required()) {\n <sky-docs-category-tag color=\"red\">Required</sky-docs-category-tag>\n }\n </div>\n <div class=\"sky-docs-type-definition-box-body sky-padding-even-xl\">\n <ng-content />\n </div>\n `,\n})\nexport class SkyDocsTypeDefinitionBoxComponent {\n public readonly headingText = input.required<string>();\n\n public readonly deprecated = input(false, { transform: booleanAttribute });\n public readonly required = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { Tokens, marked } from 'marked';\n\nconst renderer = {\n codespan(token: Tokens.Codespan): string {\n return `<code class=\"sky-docs-codespan\">${token.text}</code>`;\n },\n};\n\nmarked.use({\n renderer,\n});\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMarkdown',\n})\nexport class SkyDocsMarkdownPipe implements PipeTransform {\n public transform(\n value: string,\n parserStyle: 'block' | 'inline' = 'inline',\n ): string {\n return parserStyle === 'inline'\n ? (marked.parseInline(value) as string)\n : (marked.parse(value) as string);\n }\n}\n","import { Injectable } from '@angular/core';\n\n/**\n * Registers known type symbols with their corresponding anchor IDs.\n * @internal\n */\n@Injectable()\nexport class SkyDocsTypeDefinitionAnchorIdsService {\n #anchorIds = new Map<string, string>();\n\n /**\n * @param anchorIds A collection of anchorIds, keyed by the definition's name.\n */\n public updateAnchorIds(anchorIds: Record<string, string>): void {\n this.#anchorIds = new Map(Object.entries(anchorIds));\n }\n\n public getAnchorId(typeName: string): string | undefined {\n return this.#anchorIds.get(typeName);\n }\n}\n","import {\n ChangeDetectorRef,\n DestroyRef,\n Pipe,\n PipeTransform,\n inject,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\nimport { SkyAppWindowRef, SkyLogService } from '@skyux/core';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-anchor-ids.service';\n\nconst WORD_REGEXP = /\\w+/g;\n\n/**\n * For the given string, finds known tokens and wraps them in an anchor linking to the respective element ID.\n * @internal\n */\n@Pipe({\n name: 'skyTypeAnchorLinks',\n pure: false,\n})\nexport class SkyTypeAnchorLinksPipe implements PipeTransform {\n readonly #activatedRoute = inject(ActivatedRoute);\n readonly #anchorSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #destroyRef = inject(DestroyRef);\n readonly #logSvc = inject(SkyLogService);\n readonly #windowRef = inject(SkyAppWindowRef);\n\n readonly #cache: Record<string, { type: string; anchorEl: string }> = {};\n\n constructor() {\n this.#activatedRoute.queryParams\n .pipe(takeUntilDestroyed(this.#destroyRef))\n .subscribe(() => {\n this.#refreshCache();\n this.#changeDetector.markForCheck();\n });\n }\n\n public transform(value: string, options?: { ignore: string[] }): string {\n const typeWrappedWithAnchor = value?.replace(WORD_REGEXP, (maybeType) => {\n if (options?.ignore.includes(maybeType)) {\n return maybeType;\n }\n\n const anchorId = this.#anchorSvc.getAnchorId(maybeType);\n\n if (anchorId) {\n if (!(anchorId in this.#cache)) {\n this.#saveToCache(anchorId, maybeType);\n }\n\n return this.#cache[anchorId].anchorEl;\n } else if (\n // Log error if the found type starts with \"Sky\" but its anchorId is\n // unregistered. This usually means the type was not included in the\n // `docsIds` array for this documentation group.\n maybeType.startsWith('Sky')\n ) {\n this.#logSvc.error(\n 'The following type is referenced on the page but its docsId is not included in this documentation group. ' +\n `(parsing: \"${value}\")\\n` +\n `[[ ${maybeType} ]]`,\n );\n }\n\n return maybeType;\n });\n\n if (typeWrappedWithAnchor !== value) {\n return typeWrappedWithAnchor;\n }\n\n return value;\n }\n\n #refreshCache(): void {\n for (const anchorId in this.#cache) {\n this.#saveToCache(anchorId, this.#cache[anchorId].type);\n }\n }\n\n #saveToCache(anchorId: string, typeName: string): void {\n const href =\n this.#windowRef.nativeWindow.location.href.split('#')[0] + `#${anchorId}`;\n\n this.#cache[anchorId] = {\n type: typeName,\n anchorEl: `<a class=\"sky-docs-codespan-anchor\" href=\"${href}\">${typeName}</a>`,\n };\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-deprecation-reason',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <p>\n <sky-status-indicator descriptionType=\"warning\" indicatorType=\"warning\">\n <strong class=\"sky-font-emphasized\">Deprecated. </strong\n ><span\n [innerHTML]=\"message() | skyDocsMarkdown | skyTypeAnchorLinks\"\n ></span>\n </sky-status-indicator>\n </p>\n `,\n})\nexport class SkyDocsDeprecationReasonComponent {\n public readonly message = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEscapeHtml',\n})\nexport class SkyDocsEscapeHtmlPipe implements PipeTransform {\n public transform(value: string): string {\n return value.replaceAll('<', '<').replaceAll('>', '>');\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsEscapeHtmlPipe,\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-type-definition-description',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <div\n [innerHTML]=\"\n description()\n | skyDocsEscapeHtml\n | skyDocsMarkdown: 'block'\n | skyTypeAnchorLinks: { ignore: [definitionName()] }\n \"\n ></div>\n `,\n})\nexport class SkyDocsTypeDefinitionDescriptionComponent {\n public readonly definitionName = input.required<string>();\n public readonly description = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestChildDefinition,\n type SkyManifestClassPropertyDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyDefaultValue',\n})\nexport class SkyDocsPropertyTypeDefinitionDefaultValuePipe implements PipeTransform {\n public transform(prop: SkyManifestChildDefinition): string | undefined {\n return (prop as SkyManifestClassPropertyDefinition)?.defaultValue;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestEnumerationDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEnumerationSignature',\n})\nexport class SkyDocsEnumerationSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestEnumerationDefinition;\n\n return `enum ${def.name} {\n ${def.children?.map((c) => `${c.name} = ${c.type},`).join('\\n ')}\n}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParameterDefinition } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsParameterName',\n})\nexport class SkyDocsParameterNamePipe implements PipeTransform {\n public transform(parameter: SkyManifestParameterDefinition): string {\n return `${parameter.name}${parameter.defaultValue ? ` = ${parameter.defaultValue}` : `${parameter.isOptional ? '?' : ''}: ${parameter.type}`}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestDocumentationTypeDefinition,\n SkyManifestFunctionDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsFunctionSignature',\n})\nexport class SkyDocsFunctionSignaturePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(definition: SkyManifestDocumentationTypeDefinition): string {\n const def = definition as unknown as SkyManifestFunctionDefinition;\n\n return (\n `${def.type.startsWith('Promise') ? 'async ' : ''}function ${def.name}(` +\n (def.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${def.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestInterfaceDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsInterfaceSignature',\n})\nexport class SkyDocsInterfaceSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestInterfaceDefinition;\n\n if (def.children) {\n return `interface ${def.name} {\n ${def.children\n ?.map((c) => {\n return `${c.name}${c.isOptional ? '?' : ''}: ${c.type};`;\n })\n .join('\\n ')}\n}`;\n }\n\n return `interface ${def.name} {}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestClassMethodDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMethodName',\n})\nexport class SkyDocsMethodNamePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(\n method: SkyManifestClassMethodDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n let name = '';\n\n if (method.isStatic) {\n name = `${parent.name}.${method.name}`;\n } else {\n name = `${method.name}`;\n }\n\n return (\n name +\n '(' +\n (method.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${method.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestClassPropertyDefinition,\n type SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\nimport { PropertyDefinition } from '../property-definition';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyName',\n})\nexport class SkyDocsPropertyNamePipe implements PipeTransform {\n public transform(\n property: PropertyDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n switch (property.kind) {\n case 'enum-member': {\n return `${parent.name}.${property.name}`;\n }\n\n case 'interface-property': {\n return `${property.name}${property.isOptional ? '?' : ''}: ${property.type}`;\n }\n\n default: {\n return `${(property as SkyManifestClassPropertyDefinition).isStatic ? 'static ' : ''}${property.name}: ${property.type}`;\n }\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestParentDefinition,\n type SkyManifestTypeAliasDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsTypeAliasSignature',\n})\nexport class SkyDocsTypeAliasSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestTypeAliasDefinition;\n\n return `type ${def.name} = ${def.type}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\nimport { SkyDocsCategoryColor } from '../../category-tag/category-color';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsDefinitionKindToCategoryColor',\n})\nexport class SkyDocsTypeDefinitionKindToCategoryColorPipe implements PipeTransform {\n public transform(\n value: SkyManifestParentDefinitionKind,\n ): SkyDocsCategoryColor {\n switch (value) {\n case 'module':\n return 'purple';\n\n case 'component':\n return 'orange';\n\n case 'directive':\n return 'yellow';\n\n case 'service':\n return 'teal';\n\n case 'pipe':\n case 'class':\n case 'function':\n return 'blue';\n\n default:\n return 'light-blue';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyTypeDefinitionKindToLabel',\n})\nexport class SkyDocsTypeDefinitionKindToLabelPipe implements PipeTransform {\n public transform(kind: SkyManifestParentDefinitionKind): string {\n switch (kind) {\n case 'type-alias':\n return 'Type alias';\n\n default:\n return kind.charAt(0).toLocaleUpperCase() + kind.slice(1);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n input,\n} from '@angular/core';\nimport {\n SkyManifestChildDefinitionKind,\n SkyManifestClassMethodDefinition,\n SkyManifestDirectiveInputDefinition,\n SkyManifestDirectiveOutputDefinition,\n type SkyManifestDocumentationTypeDefinition,\n SkyManifestParameterDefinition,\n isDirectiveDefinition,\n isFunctionDefinition,\n isPipeDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\nimport { SkyDocsCodeHighlightPipe } from '../code-highlight/code-highlight.pipe';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsTypeDefinitionBoxComponent } from './box.component';\nimport { SkyDocsDeprecationReasonComponent } from './deprecation-reason.component';\nimport { SkyDocsTypeDefinitionDescriptionComponent } from './description.component';\nimport { SkyDocsPropertyTypeDefinitionDefaultValuePipe } from './pipes/default-value.pipe';\nimport { SkyDocsEnumerationSignaturePipe } from './pipes/enum-signature.pipe';\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsFunctionSignaturePipe } from './pipes/function-signature.pipe';\nimport { SkyDocsInterfaceSignaturePipe } from './pipes/interface-signature.pipe';\nimport { SkyDocsMethodNamePipe } from './pipes/method-name.pipe';\nimport { SkyDocsParameterNamePipe } from './pipes/parameter-name.pipe';\nimport { SkyDocsPropertyNamePipe } from './pipes/property-name.pipe';\nimport { SkyDocsTypeAliasSignaturePipe } from './pipes/type-alias-signature.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\nimport { SkyDocsTypeDefinitionKindToCategoryColorPipe } from './pipes/type-definition-kind-to-category-color.pipe';\nimport { SkyDocsTypeDefinitionKindToLabelPipe } from './pipes/type-definition-kind-to-label.pipe';\nimport { PropertyDefinition } from './property-definition';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-xxl]': 'stacked()',\n },\n imports: [\n SkyDocsCategoryTagModule,\n SkyDocsCodeHighlightPipe,\n SkyDocsCodeSnippetModule,\n SkyDocsDeprecationReasonComponent,\n SkyDocsEnumerationSignaturePipe,\n SkyDocsHeadingAnchorModule,\n SkyDocsFunctionSignaturePipe,\n SkyDocsInterfaceSignaturePipe,\n SkyDocsMethodNamePipe,\n SkyDocsParameterNamePipe,\n SkyDocsPropertyNamePipe,\n SkyDocsPropertyTypeDefinitionDefaultValuePipe,\n SkyDocsTypeAliasSignaturePipe,\n SkyDocsTypeDefinitionBoxComponent,\n SkyDocsTypeDefinitionDescriptionComponent,\n SkyDocsTypeDefinitionKindToCategoryColorPipe,\n SkyDocsTypeDefinitionKindToLabelPipe,\n SkyDocsEscapeHtmlPipe,\n SkyTypeAnchorLinksPipe,\n ],\n providers: [SkyDocsParameterNamePipe],\n selector: 'sky-docs-type-definition',\n styleUrl: './type-definition.component.scss',\n templateUrl: './type-definition.component.html',\n})\nexport class SkyDocsTypeDefinitionComponent {\n public readonly definition =\n input.required<SkyManifestDocumentationTypeDefinition>();\n\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly inputs = computed<\n SkyManifestDirectiveInputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const inputs = def.children?.filter((c) => c.kind === 'directive-input') as\n | SkyManifestDirectiveInputDefinition[]\n | undefined;\n\n return inputs && inputs.length > 0\n ? inputs\n // Sort alphabetically by name.\n .sort((a, b) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n })\n // List \"required\" inputs first.\n .sort((a, b) => {\n if (a.isRequired && !b.isRequired) {\n return -1;\n }\n\n if (!a.isRequired && b.isRequired) {\n return 1;\n }\n\n return 0;\n })\n : undefined;\n });\n\n protected readonly methods = computed<\n SkyManifestClassMethodDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return def.children?.filter((c) => c.kind === 'class-method') as\n | SkyManifestClassMethodDefinition[]\n | undefined;\n });\n\n protected readonly outputs = computed<\n SkyManifestDirectiveOutputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const outputs = def.children?.filter(\n (c) => c.kind === 'directive-output',\n ) as SkyManifestDirectiveOutputDefinition[] | undefined;\n\n return outputs && outputs.length > 0 ? outputs : undefined;\n });\n\n protected readonly parameters = computed<\n SkyManifestParameterDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return isFunctionDefinition(def) ? def.parameters : undefined;\n });\n\n protected readonly pipeName = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isPipeDefinition(def) ? def.templateBindingName : undefined;\n });\n\n protected readonly properties = computed<PropertyDefinition[] | undefined>(\n () => {\n const def = this.definition();\n\n const ignore: SkyManifestChildDefinitionKind[] = [\n 'class-method',\n 'directive-input',\n 'directive-output',\n ];\n\n const properties = def.children?.filter(\n (c) => !ignore.includes(c.kind),\n ) as PropertyDefinition[] | undefined;\n\n return properties && properties.length > 0 ? properties : undefined;\n },\n );\n\n protected readonly selector = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isDirectiveDefinition(def) ? def.selector : undefined;\n });\n}\n","@if (definition(); as def) {\n <sky-docs-heading-anchor\n class=\"sky-margin-stacked-lg\"\n headingLevel=\"2\"\n [anchorId]=\"def.anchorId\"\n [categoryColor]=\"def.kind | skyDocsDefinitionKindToCategoryColor\"\n [categoryTemplate]=\"categoryTemplate\"\n [headingText]=\"def.name\"\n [strikethrough]=\"def.isDeprecated\"\n >\n <ng-template #categoryTemplate>\n <span class=\"sky-screen-reader-only\">Type: </span>\n {{ def.kind | skyTypeDefinitionKindToLabel }}\n </ng-template>\n @if (def.isPreview) {\n <sky-docs-category-tag color=\"teal\"> Preview </sky-docs-category-tag>\n }\n </sky-docs-heading-anchor>\n @if (def.kind === 'module' || def.name.endsWith('Harness')) {\n <p>\n <code class=\"sky-docs-codespan\"\n >import {{ '{' }} {{ def.name }} {{ '}' }} from '{{\n def.packageName\n }}';</code\n >\n </p>\n }\n @if (selector(); as selector) {\n <p>\n Selector: <code class=\"sky-docs-codespan\">{{ selector }}</code>\n </p>\n }\n @if (pipeName(); as pipeName) {\n <p>\n Pipe name: <code class=\"sky-docs-codespan\">{{ pipeName }}</code>\n </p>\n }\n @if (def.deprecationReason) {\n <sky-docs-deprecation-reason [message]=\"def.deprecationReason\" />\n }\n @if (def.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"def.name\"\n [description]=\"def.description\"\n />\n }\n @if (def.codeExample) {\n <h3>Example</h3>\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n [code]=\"def.codeExample\"\n [language]=\"def.codeExampleLanguage ?? 'html'\"\n />\n }\n @switch (def.kind) {\n @case ('function') {\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n language=\"ts\"\n [code]=\"\n def\n | skyDocsFunctionSignature\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n />\n @let parametersValue = parameters();\n @if (parametersValue && parametersValue.length > 0) {\n <h3>Parameters</h3>\n @for (parameter of parametersValue; track parameter.name) {\n <h4 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n parameter\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h4>\n @if (parameter.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"parameter.name\"\n [description]=\"parameter.description\"\n />\n }\n }\n }\n }\n @case ('type-alias') {\n <sky-docs-code-snippet bordered hideToolbar stacked>\n <code\n [innerHTML]=\"\n def\n | skyDocsTypeAliasSignature\n | skyDocsCodeHighlight: 'typescript'\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n ></code>\n </sky-docs-code-snippet>\n }\n @default {\n @if (def.kind === 'interface') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsInterfaceSignature\"\n />\n }\n @if (def.kind === 'enumeration') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsEnumerationSignature\"\n />\n }\n @if (inputs(); as inputs) {\n <h3>Inputs</h3>\n @for (input of inputs; track input.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"input.isDeprecated\"\n [required]=\"input.isRequired\"\n [headingText]=\"\n input\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (input.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"input.deprecationReason\"\n />\n }\n @if (input.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"input.name\"\n [description]=\"input.description\"\n />\n }\n @let defaultValue = input | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (outputs(); as outputs) {\n <h3>Outputs</h3>\n @for (output of outputs; track output.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"output.isDeprecated\"\n [headingText]=\"\n output\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (output.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"output.deprecationReason\"\n />\n }\n @if (output.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"output.name\"\n [description]=\"output.description\"\n />\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (properties(); as properties) {\n <h3>Properties</h3>\n @for (property of properties; track property.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"property.isDeprecated\"\n [headingText]=\"\n property\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (property.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"property.deprecationReason\"\n />\n }\n @if (property.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"property.name\"\n [description]=\"property.description\"\n />\n }\n @let defaultValue = property | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @let methodsValue = methods();\n @if (methodsValue && methodsValue.length > 0) {\n <h3>Methods</h3>\n @for (method of methodsValue; track method.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"method.isDeprecated\"\n [headingText]=\"\n method\n | skyDocsMethodName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (method.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"method.deprecationReason\"\n />\n }\n @if (method.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"method.name\"\n [description]=\"method.description\"\n />\n }\n @if (method.parameters) {\n <h4>Parameters</h4>\n @for (param of method.parameters; track param.name) {\n <h5 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n param\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h5>\n @if (param.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"param.name\"\n [description]=\"param.description\"\n />\n }\n }\n }\n <h4>Returns</h4>\n <p>\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n method.type | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n </sky-docs-type-definition-box>\n }\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTypeDefinitionComponent } from './type-definition.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsTypeDefinitionComponent],\n exports: [SkyDocsTypeDefinitionComponent],\n})\nexport class SkyDocsTypeDefinitionModule {}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { type SkyManifestDocumentationGroup } from '@skyux/manifest';\n\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsShowcaseHostService implements OnDestroy {\n public get documentationGroup(): Observable<\n SkyManifestDocumentationGroup | undefined\n > {\n return this.#documentationGroupObs;\n }\n\n readonly #documentationGroup = new BehaviorSubject<\n SkyManifestDocumentationGroup | undefined\n >(undefined);\n\n readonly #documentationGroupObs = this.#documentationGroup.asObservable();\n\n public ngOnDestroy(): void {\n this.#documentationGroup.complete();\n }\n\n public updateGroup(group: SkyManifestDocumentationGroup | undefined): void {\n this.#documentationGroup.next(group);\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Development\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDescriptionListModule,\n SkyDocsClipboardModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsTableOfContentsModule,\n SkyDocsTypeDefinitionModule,\n SkyIconModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-development',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-development.component.html',\n})\nexport class SkyDocsShowcaseAreaDevelopmentComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Development\">\n @if (documentationGroup()?.packageInfo; as packageInfo) {\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <sky-docs-heading-anchor\n anchorId=\"installation\"\n class=\"sky-margin-stacked-lg\"\n headingText=\"Installation\"\n />\n <sky-description-list>\n <sky-description-list-content>\n <sky-description-list-term> NPM package </sky-description-list-term>\n <sky-description-list-description>\n <code class=\"sky-docs-codespan sky-margin-inline-sm\">{{\n packageInfo.packageName\n }}</code>\n <a [attr.href]=\"packageInfo.registryUrl\">View in NPM</a\n ><span> | </span\n ><a [attr.href]=\"packageInfo.repoUrl\">View in GitHub</a>\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content\n helpPopoverContent=\"To use this module, you must install peer dependencies along with its package. Also, after you install the package, you must add the module as an export in your SPA's main module to make exports available to your SPA.\"\n >\n <sky-description-list-term>\n Install with NPM\n </sky-description-list-term>\n <sky-description-list-description>\n <code\n #installationRef\n class=\"sky-docs-codespan sky-margin-inline-sm sky-margin-stacked-sm\"\n >\n npm install --save-exact {{ packageInfo.packageName }}\n </code>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n copySuccessMessage=\"Command copied\"\n [clipboardTarget]=\"installationRef\"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n Copy\n </button>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n </div>\n }\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <ng-content />\n </div>\n @if (documentationGroup()?.publicApi; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { Pipe, PipeTransform, Type, inject } from '@angular/core';\n\nimport { SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES } from './code-example-types-token';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeExampleNameToComponentType',\n})\nexport class SkyDocsCodeExampleNameToComponentTypePipe implements PipeTransform {\n readonly #examples = inject(SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES);\n\n public transform(componentName: string): Type<unknown> {\n return this.#examples[componentName];\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsCodeExampleViewerModule } from '../code-example-viewer/code-example-viewer.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsCodeExampleNameToComponentTypePipe } from './code-example-types/code-example-types.pipe';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Examples\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsCodeExampleNameToComponentTypePipe,\n SkyDocsCodeExampleViewerModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-examples',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n templateUrl: './showcase-area-examples.component.html',\n})\nexport class SkyDocsShowcaseAreaExamplesComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","@if (documentationGroup()?.codeExamples; as codeExamples) {\n @for (\n example of codeExamples;\n track example.componentName;\n let last = $last\n ) {\n <sky-docs-code-example-viewer\n [componentName]=\"example.componentName\"\n [componentSelector]=\"example.selector\"\n [componentType]=\"\n example.componentName | skyDocsCodeExampleNameToComponentType\n \"\n [demoHidden]=\"!!example.demoHidden\"\n [files]=\"example.files\"\n [headingText]=\"example.title || 'Example'\"\n [primaryFile]=\"example.primaryFile\"\n [stacked]=\"!last\"\n />\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\n\n/**\n * Content for the \"Highlight\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-highlight',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n template: `<ng-content />`,\n})\nexport class SkyDocsShowcaseAreaHighlightComponent {\n public headingText = input.required<string>();\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\n\n/**\n * Content for the \"Overview\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-overview',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n template: `\n <sky-docs-toc-page menuHeadingText=\"Overview\">\n <ng-content />\n </sky-docs-toc-page>\n `,\n})\nexport class SkyDocsShowcaseAreaOverviewComponent {}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Testing\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule, SkyDocsTypeDefinitionModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-testing',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-testing.component.html',\n})\nexport class SkyDocsShowcaseAreaTestingComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Testing\">\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <p class=\"sky-margin-stacked-xl\">\n SKY UX test harnesses are built upon Angular CDK component harnesses. For\n more information see the\n <a href=\"https://material.angular.io/cdk/test-harnesses/overview\"\n >Angular CDK component harness documentation</a\n >.\n </p>\n <ng-content />\n </div>\n @if (documentationGroup()?.testing; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n input,\n} from '@angular/core';\nimport { getDocumentationGroup } from '@skyux/manifest';\nimport { SkyTabsModule } from '@skyux/tabs';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-definition/type-anchor-ids.service';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaHighlightComponent } from './showcase-area-highlight.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaTestingComponent,\n SkyTabsModule,\n ],\n providers: [\n SkyDocsTypeDefinitionAnchorIdsService,\n SkyDocsShowcaseHostService,\n ],\n selector: 'sky-docs-showcase',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './showcase.component.html',\n})\nexport class SkyDocsShowcaseComponent {\n readonly #anchorIdsSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #showcaseHostSvc = inject(SkyDocsShowcaseHostService);\n\n public readonly groupName = input.required<string>();\n public readonly packageName = input.required<string>();\n\n protected docsGroup = computed(() => {\n const groupName = this.groupName();\n const packageName = this.packageName();\n\n try {\n const group = getDocumentationGroup(packageName, groupName);\n return group;\n } catch {\n return;\n }\n });\n\n protected readonly developmentContent = contentChild(\n SkyDocsShowcaseAreaDevelopmentComponent,\n );\n\n protected readonly highlightContent = contentChild(\n SkyDocsShowcaseAreaHighlightComponent,\n );\n\n protected readonly overviewContent = contentChild(\n SkyDocsShowcaseAreaOverviewComponent,\n );\n\n protected readonly testingContent = contentChild(\n SkyDocsShowcaseAreaTestingComponent,\n );\n\n constructor() {\n effect(() => {\n const docsGroup = this.docsGroup();\n const anchorIds: Record<string, string> = {};\n\n docsGroup?.publicApi.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n docsGroup?.testing.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n this.#anchorIdsSvc.updateAnchorIds(anchorIds);\n this.#showcaseHostSvc.updateGroup(docsGroup);\n });\n }\n}\n","@let group = docsGroup();\n<sky-tabset permalinkId=\"docs\">\n @if (highlightContent()) {\n <sky-tab [tabHeading]=\"highlightContent()?.headingText()\">\n <ng-container [ngTemplateOutlet]=\"highlightContentRef\" />\n </sky-tab>\n }\n @if (overviewContent()) {\n <sky-tab tabHeading=\"Design\">\n <ng-container [ngTemplateOutlet]=\"overviewContentRef\" />\n </sky-tab>\n }\n @if ((group && group.publicApi.length > 0) || developmentContent()) {\n <sky-tab tabHeading=\"Development\">\n @if (developmentContent()) {\n <ng-container [ngTemplateOutlet]=\"developmentContentRef\" />\n } @else {\n <sky-docs-showcase-area-development />\n }\n </sky-tab>\n }\n @if ((group && group.testing.length > 0) || testingContent()) {\n <sky-tab tabHeading=\"Testing\">\n @if (testingContent()) {\n <ng-container [ngTemplateOutlet]=\"testingContentRef\" />\n } @else {\n <sky-docs-showcase-area-testing />\n }\n </sky-tab>\n }\n @if (group && group.codeExamples.length > 0) {\n <sky-tab tabHeading=\"Examples\">\n @defer (on viewport) {\n <sky-docs-showcase-area-examples />\n } @placeholder {\n <p>Loading...</p>\n }\n </sky-tab>\n }\n</sky-tabset>\n<ng-template #highlightContentRef>\n <ng-content select=\"sky-docs-showcase-area-highlight\" />\n</ng-template>\n<ng-template #overviewContentRef>\n <ng-content select=\"sky-docs-showcase-area-overview\" />\n</ng-template>\n<ng-template #developmentContentRef>\n <ng-content select=\"sky-docs-showcase-area-development\" />\n</ng-template>\n<ng-template #testingContentRef>\n <ng-content select=\"sky-docs-showcase-area-testing\" />\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaHighlightComponent } from './showcase-area-highlight.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseComponent } from './showcase.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaHighlightComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n exports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaHighlightComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n})\nexport class SkyDocsShowcaseModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDocsClipboardButtonDirective","i2.SkyDocsCodeSnippetComponent","i6","i1.SkyDocsCategoryTagComponent","i3","i1","i3.SkyDocsCodeSnippetWrapperComponent","i4.SkyDocsHeadingAnchorComponent","i3.SkyDocsHeadingAnchorComponent","i4.SkyDocsTableOfContentsPageComponent","i1.SkyDocsCodeExampleViewerComponent","i1.SkyDocsTableOfContentsPageComponent","i2.SkyDocsTypeDefinitionComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-docs-tools.mjs","sources":["../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard-button.directive.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-route.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight-language.ts","../../../../../libs/components/docs-tools/src/lib/modules/shared/sky-docs-tools-resources.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-toolbar.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-wrapper.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/stackblitz.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.html","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/help.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.html","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types-token.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/provide-code-example-types.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/box.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/markdown.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-anchor-ids.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-anchor-links.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/deprecation-reason.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/escape-html.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/description.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/default-value.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/enum-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/parameter-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/function-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/interface-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/method-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/property-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-alias-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-category-color.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-label.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.html","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-host.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-highlight.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-overview.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.module.ts","../../../../../libs/components/docs-tools/src/skyux-docs-tools.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport type { SkyDocsCategoryColor } from './category-color';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-rounded-corners',\n '[class]': '\"sky-docs-category-tag-color-\" + color()',\n },\n selector: 'sky-docs-category-tag',\n styleUrl: './category-tag.component.scss',\n template: '<ng-content />',\n})\nexport class SkyDocsCategoryTagComponent {\n public readonly color = input.required<SkyDocsCategoryColor>();\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCategoryTagComponent } from './category-tag.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCategoryTagComponent],\n exports: [SkyDocsCategoryTagComponent],\n})\nexport class SkyDocsCategoryTagModule {}\n","import { Injectable, inject } from '@angular/core';\nimport { SkyAppWindowRef } from '@skyux/core';\nimport { SkyToastService } from '@skyux/toast';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsClipboardService {\n readonly #toastSvc = inject(SkyToastService);\n readonly #windowRef = inject(SkyAppWindowRef);\n\n /**\n * Saves an element's text content to the system clipboard.\n * @param el The element whose text should be copied.\n * @param successMessage The message to display after the action is successful.\n */\n public copyTextContent(el: HTMLElement, successMessage: string): void {\n const text = el.textContent?.trim() ?? '';\n\n this.#windowRef.nativeWindow.navigator.clipboard.writeText(text);\n\n this.#toastSvc.openMessage(successMessage, { autoClose: true });\n }\n}\n","import { Directive, inject, input } from '@angular/core';\n\nimport { SkyDocsClipboardService } from './clipboard.service';\n\n/**\n * @internal\n */\n@Directive({\n host: {\n '(click)': 'onClick()',\n },\n selector: '[skyDocsClipboardButton]',\n})\nexport class SkyDocsClipboardButtonDirective {\n readonly #clipboardSvc = inject(SkyDocsClipboardService);\n\n public readonly clipboardTarget = input.required<HTMLElement>();\n public readonly copySuccessMessage = input.required<string>();\n\n protected onClick(): void {\n const el = this.clipboardTarget();\n\n if (el) {\n this.#clipboardSvc.copyTextContent(el, this.copySuccessMessage());\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsClipboardButtonDirective } from './clipboard-button.directive';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsClipboardButtonDirective],\n exports: [SkyDocsClipboardButtonDirective],\n})\nexport class SkyDocsClipboardModule {}\n","import { InjectionToken } from '@angular/core';\n\nexport const SKY_DOCS_CODE_EXAMPLE_ROUTE = new InjectionToken<string>(\n 'SKY_DOCS_CODE_EXAMPLE_ROUTE',\n);\n","/**\n * @internal\n */\nexport const SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES = [\n 'html',\n 'markup',\n 'javascript',\n 'js',\n 'css',\n 'scss',\n 'typescript',\n 'ts',\n] as const;\n\n/**\n * @internal\n */\nexport type SkyDocsCodeHighlightLanguage =\n (typeof SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES)[number];\n\n/**\n * @internal\n */\nexport function assertCodeHighlightLanguage(\n value: string | undefined,\n): asserts value is SkyDocsCodeHighlightLanguage {\n if (\n !SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES.includes(\n value as SkyDocsCodeHighlightLanguage,\n )\n ) {\n throw new Error(`Value \"${value}\" is not a supported language type.`);\n }\n}\n","/* istanbul ignore file */\n\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n sky_docs_code_snippet_copy_to_clipboard_button_label: { message: 'Copy' },\n sky_docs_code_snippet_copy_to_clipboard_success_message: {\n message: 'Code copied',\n },\n sky_docs_code_example_viewer_demo_hidden_message: {\n message: 'Open this code example in StackBlitz to view the demo.',\n },\n sky_docs_code_example_viewer_demo_stack_blitz_button: {\n message: 'Edit in StackBlitz',\n },\n sky_docs_code_example_viewer_hide_code_button_label: {\n message: 'Hide code',\n },\n sky_docs_code_example_viewer_show_code_button_label: {\n message: 'Show code',\n },\n },\n 'FR-CA': {\n sky_docs_code_snippet_copy_to_clipboard_button_label: { message: 'Copier' },\n sky_docs_code_snippet_copy_to_clipboard_success_message: {\n message: 'Code copié',\n },\n sky_docs_code_example_viewer_demo_hidden_message: {\n message: 'Ouvrez cet exemple de code dans StackBlitz pour voir la démo.',\n },\n sky_docs_code_example_viewer_demo_stack_blitz_button: {\n message: 'Modifier dans StackBlitz',\n },\n sky_docs_code_example_viewer_hide_code_button_label: {\n message: 'Masquer le code',\n },\n sky_docs_code_example_viewer_show_code_button_label: {\n message: 'Afficher le code',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyDocsToolsResourcesModule {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-margin-stacked-lg',\n },\n imports: [SkyDocsClipboardModule, SkyIconModule, SkyDocsToolsResourcesModule],\n selector: 'sky-docs-code-snippet-toolbar',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n [clipboardTarget]=\"codeRef()\"\n [copySuccessMessage]=\"\n 'sky_docs_code_snippet_copy_to_clipboard_success_message'\n | skyLibResources\n \"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n {{\n 'sky_docs_code_snippet_copy_to_clipboard_button_label' | skyLibResources\n }}\n </button>\n `,\n})\nexport class SkyDocsCodeSnippetToolbarComponent {\n public readonly codeRef = input.required<HTMLElement>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Used to wrap a content child `code` element.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet:not([code])',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><ng-content select=\"code\" /></pre>\n `,\n})\nexport class SkyDocsCodeSnippetWrapperComponent {\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Injectable } from '@angular/core';\n\nimport highlight from 'highlight.js/lib/core';\nimport hlCss from 'highlight.js/lib/languages/css';\nimport hlJavaScript from 'highlight.js/lib/languages/javascript';\nimport hlScss from 'highlight.js/lib/languages/scss';\nimport hlTypeScript from 'highlight.js/lib/languages/typescript';\nimport hlXml from 'highlight.js/lib/languages/xml';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsCodeHighlightService {\n constructor() {\n highlight.registerLanguage('html', hlXml);\n highlight.registerLanguage('markup', hlXml);\n highlight.registerLanguage('js', hlJavaScript);\n highlight.registerLanguage('javascript', hlJavaScript);\n highlight.registerLanguage('css', hlCss);\n highlight.registerLanguage('scss', hlScss);\n highlight.registerLanguage('ts', hlTypeScript);\n highlight.registerLanguage('typescript', hlTypeScript);\n }\n\n public highlight(\n code: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n const highlighted = highlight.highlight(code, {\n language,\n });\n\n return highlighted.value;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n inject,\n input,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { type SkyDocsCodeHighlightLanguage } from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeHighlightService } from '../code-highlight/code-highlight.service';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Highlights the provided code.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet[code]',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><code [innerHTML]=\"highlighted()\"></code></pre>\n `,\n})\nexport class SkyDocsCodeSnippetComponent {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n readonly #sanitizer = inject(DomSanitizer);\n\n public readonly code = input.required<string>();\n public readonly language = input.required<SkyDocsCodeHighlightLanguage>();\n\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected highlighted = computed(() => {\n const code = this.code();\n const language = this.language();\n const highlighted = this.#highlightSvc.highlight(code, language);\n\n return this.#sanitizer.bypassSecurityTrustHtml(highlighted);\n });\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCodeSnippetWrapperComponent } from './code-snippet-wrapper.component';\nimport { SkyDocsCodeSnippetComponent } from './code-snippet.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n exports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n})\nexport class SkyDocsCodeSnippetModule {}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { SkyAppAssetsService } from '@skyux/assets';\nimport stackblitz from '@stackblitz/sdk';\n\nimport { firstValueFrom } from 'rxjs';\n\nimport type { SkyDocsStackBlitzLaunchConfig } from './stackblitz-launch-config';\n\n/**\n * Files to be read from the host SPA's \"src/assets/stack-blitz\" directory.\n */\nconst TEMPLATE_FILES = ['package.json', 'package-lock.json'];\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsStackBlitzService {\n readonly #http = inject(HttpClient, { optional: true });\n readonly #assetsSvc = inject(SkyAppAssetsService, { optional: true });\n\n public async launch(config: SkyDocsStackBlitzLaunchConfig): Promise<void> {\n const files: Record<string, string> = {};\n\n for (const [file, contents] of Object.entries(config.files)) {\n files[`src/example/${file}`] = contents;\n }\n\n for (const file of TEMPLATE_FILES) {\n let contents = await this.#fetchTemplateFileContents(file);\n\n if (contents === undefined && !file.endsWith('.template')) {\n contents = await this.#fetchTemplateFileContents(`${file}.template`);\n }\n\n if (contents === undefined) {\n throw new Error(`Failed to read StackBlitz template file: ${file}`);\n }\n\n files[file.replace(/\\.template$/, '')] = contents;\n }\n\n const bootstrapImportPath = `./example/${config.primaryFile.replace(/\\.ts$/, '')}`;\n\n files['.stackblitzrc'] = `{\n \"installDependencies\": true,\n \"startCommand\": \"ng serve\"\n}\n`;\n\n files['angular.json'] = `{\n \"$schema\": \"./node_modules/@angular/cli/lib/config/schema.json\",\n \"version\": 1,\n \"cli\": {\n \"analytics\": false\n },\n \"newProjectRoot\": \"projects\",\n \"projects\": {\n \"example-app\": {\n \"projectType\": \"application\",\n \"schematics\": {\n \"@schematics/angular:component\": {\n \"style\": \"scss\"\n },\n \"@schematics/angular:application\": {\n \"strict\": true\n }\n },\n \"root\": \"\",\n \"sourceRoot\": \"src\",\n \"prefix\": \"app\",\n \"architect\": {\n \"build\": {\n \"builder\": \"@angular/build:application\",\n \"options\": {\n \"outputPath\": \"dist/example-app\",\n \"index\": \"src/index.html\",\n \"browser\": \"src/main.ts\",\n \"polyfills\": [\"zone.js\"],\n \"tsConfig\": \"tsconfig.app.json\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"styles\": [\n \"@skyux/theme/css/sky.css\",\n \"@skyux/theme/css/themes/modern/styles.css\",\n \"@skyux/ag-grid/css/sky-ag-grid.css\",\n \"src/styles.scss\"\n ],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"scripts\": []\n },\n \"configurations\": {\n \"production\": {\n \"budgets\": [\n {\n \"type\": \"initial\",\n \"maximumWarning\": \"500kb\",\n \"maximumError\": \"1mb\"\n },\n {\n \"type\": \"anyComponentStyle\",\n \"maximumWarning\": \"2kb\",\n \"maximumError\": \"4kb\"\n }\n ],\n \"fileReplacements\": [\n {\n \"replace\": \"src/environments/environment.ts\",\n \"with\": \"src/environments/environment.prod.ts\"\n }\n ],\n \"outputHashing\": \"all\"\n },\n \"development\": {\n \"optimization\": false,\n \"extractLicenses\": false,\n \"sourceMap\": true,\n \"namedChunks\": true\n }\n },\n \"defaultConfiguration\": \"production\"\n },\n \"serve\": {\n \"builder\": \"@angular/build:dev-server\",\n \"configurations\": {\n \"production\": {\n \"buildTarget\": \"example-app:build:production\"\n },\n \"development\": {\n \"buildTarget\": \"example-app:build:development\"\n }\n },\n \"defaultConfiguration\": \"development\"\n },\n \"extract-i18n\": {\n \"builder\": \"@angular/build:extract-i18n\",\n \"options\": {\n \"buildTarget\": \"example-app:build\"\n }\n },\n \"test\": {\n \"builder\": \"@angular/build:karma\",\n \"options\": {\n \"polyfills\": [\n \"zone.js\",\n \"zone.js/testing\"\n ],\n \"tsConfig\": \"tsconfig.spec.json\",\n \"karmaConfig\": \"karma.conf.js\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"styles\": [\n \"@skyux/theme/css/sky.css\",\n \"@skyux/theme/css/themes/modern/styles.css\",\n \"@skyux/ag-grid/css/sky-ag-grid.css\",\n \"src/styles.scss\"\n ],\n \"scripts\": []\n }\n }\n }\n }\n }\n}\n`;\n\n files['karma.conf.js'] =\n `// Karma configuration file, see link for more information\n// https://karma-runner.github.io/1.0/config/configuration-file.html\n\nmodule.exports = function (config) {\n config.set({\n basePath: '',\n frameworks: ['jasmine'],\n plugins: [\n require('karma-jasmine'),\n require('karma-chrome-launcher'),\n require('karma-jasmine-html-reporter'),\n require('karma-coverage')\n ],\n client: {\n jasmine: {\n // you can add configuration options for Jasmine here\n // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html\n // for example, you can disable the random execution with \\`random: false\\`\n // or set a specific seed with \\`seed: 4321\\`\n },\n clearContext: false, // leave Jasmine Spec Runner output visible in browser\n },\n jasmineHtmlReporter: {\n suppressAll: true, // removes the duplicated traces\n },\n coverageReporter: {\n dir: require('path').join(__dirname, './coverage/example-app'),\n subdir: '.',\n reporters: [{ type: 'html' }, { type: 'text-summary' }],\n },\n reporters: ['progress', 'kjhtml'],\n port: 9876,\n colors: true,\n logLevel: config.LOG_INFO,\n autoWatch: true,\n browsers: ['Chrome'],\n singleRun: false,\n restartOnFileChange: true,\n });\n};\n`;\n\n files['tsconfig.app.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/app\",\n \"types\": []\n },\n \"files\": [\"src/main.ts\"],\n \"include\": [\"src/**/*.d.ts\"]\n}\n`;\n\n files['tsconfig.json'] = `{\n \"compileOnSave\": false,\n \"compilerOptions\": {\n \"outDir\": \"./dist/out-tsc\",\n \"strict\": true,\n \"noImplicitOverride\": true,\n \"noPropertyAccessFromIndexSignature\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n \"isolatedModules\": true,\n \"esModuleInterop\": true,\n \"experimentalDecorators\": true,\n \"moduleResolution\": \"bundler\",\n \"importHelpers\": true,\n \"target\": \"ES2022\",\n \"module\": \"ES2022\"\n },\n \"angularCompilerOptions\": {\n \"enableI18nLegacyMessageIdFormat\": false,\n \"strictInjectionParameters\": true,\n \"strictInputAccessModifiers\": true,\n \"strictTemplates\": true\n }\n}\n`;\n\n files['tsconfig.spec.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/spec\",\n \"types\": [\"jasmine\"]\n },\n \"include\": [\"src/**/*.spec.ts\", \"src/**/*.d.ts\"]\n}\n`;\n\n files['src/help.service.ts'] = `import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n@Injectable()\nexport class ExampleHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n console.log(\\`Help opened with key '\\${args?.helpKey}'.\\`);\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n /* */\n }\n}\n`;\n\n files['src/index.html'] = `<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <title>${config.title}</title>\n <base href=\"/\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <!--\n The CSS links are needed for the StackBlitz demo only.\n This is a workaround for a known bug that prevents external imports in CSS.\n https://github.com/stackblitz/core/issues/133\n -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\" crossorigin=\"anonymous\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/9/assets/css/skyux-icons.min.css\" crossorigin=\"anonymous\">\n </head>\n <body>\n <${config.componentSelector}></${config.componentSelector}>\n </body>\n</html>\n`;\n\n files['src/main.ts'] =\n `import { provideHttpClient } from '@angular/common/http';\nimport {\n EnvironmentProviders,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { SkyHelpService } from '@skyux/core';\nimport { provideInitialTheme } from '@skyux/theme';\nimport { provideRouter } from '@angular/router';\nimport { ${config.componentName} } from '${bootstrapImportPath}';\n\nimport { ExampleHelpService } from './help.service';\n\n/**\n * The help service must be provided for components that set the\n * \\`helpKey\\` attribute. For more information, review the global help\n * documentation.\n * @see https://developer.blackbaud.com/skyux/learn/develop/global-help\n */\nfunction provideExampleHelpService(): EnvironmentProviders {\n return makeEnvironmentProviders([\n { provide: SkyHelpService, useClass: ExampleHelpService },\n ]);\n}\n\nbootstrapApplication(${config.componentName}, {\n providers: [\n provideInitialTheme('modern'),\n provideHttpClient(),\n provideExampleHelpService(),\n provideRouter([]),\n ],\n}).catch((err) => console.error(err));\n`;\n\n files['src/styles.scss'] = '';\n\n stackblitz.openProject(\n {\n title: config.title,\n files,\n template: 'node',\n },\n { openFile: config.primaryFile },\n );\n }\n\n async #fetchTemplateFileContents(file: string): Promise<string | undefined> {\n const filePath = `stack-blitz/${file}`;\n const url = this.#assetsSvc?.getUrl(filePath) ?? `assets/${filePath}`;\n\n /* istanbul ignore if: safety check */\n if (!this.#http) {\n return undefined;\n }\n\n return await firstValueFrom(\n this.#http.get(url, { responseType: 'text' }),\n ).catch(() => {\n return undefined;\n });\n }\n}\n","import { KeyValuePipe, NgComponentOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Type,\n booleanAttribute,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport {\n type SkyDocsCodeHighlightLanguage,\n assertCodeHighlightLanguage,\n} from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SKY_DOCS_CODE_EXAMPLE_ROUTE } from './code-example-route';\nimport { SkyDocsStackBlitzService } from './stackblitz.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [\n KeyValuePipe,\n NgComponentOutlet,\n SkyBoxModule,\n SkyDocsCodeSnippetModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyIdModule,\n SkyVerticalTabsetModule,\n RouterLink,\n ],\n selector: 'sky-docs-code-example-viewer',\n styleUrl: './code-example-viewer.component.scss',\n templateUrl: './code-example-viewer.component.html',\n})\nexport class SkyDocsCodeExampleViewerComponent {\n readonly #stackblitzSvc = inject(SkyDocsStackBlitzService);\n\n public readonly componentName = input.required<string>();\n public readonly componentSelector = input.required<string>();\n public readonly componentType = input<Type<unknown> | undefined>();\n public readonly files = input.required<Record<string, string>>();\n public readonly headingText = input.required<string>();\n public readonly primaryFile = input.required<string>();\n\n public readonly demoHidden = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly isCodeVisible = signal(false);\n protected readonly codeExampleRoute = inject(SKY_DOCS_CODE_EXAMPLE_ROUTE, {\n optional: true,\n });\n\n protected getCodeLanguage(fileName: string): SkyDocsCodeHighlightLanguage {\n const extension = fileName.split('.').pop();\n assertCodeHighlightLanguage(extension);\n return extension;\n }\n\n protected launchStackBlitz(): void {\n void this.#stackblitzSvc.launch({\n componentName: this.componentName(),\n componentSelector: this.componentSelector(),\n files: this.files(),\n primaryFile: this.primaryFile(),\n title: this.headingText(),\n });\n }\n\n protected toggleCodeVisibility(): void {\n const isCodeVisible = this.isCodeVisible();\n this.isCodeVisible.set(!isCodeVisible);\n }\n}\n","<sky-box headingLevel=\"3\" headingStyle=\"3\" [headingText]=\"headingText()\">\n <sky-box-controls>\n @if (codeExampleRoute) {\n <a\n class=\"sky-padding-horizontal-xl\"\n [routerLink]=\"[codeExampleRoute, componentName()]\"\n >\n Open in full page\n <sky-icon iconName=\"open\" />\n </a>\n }\n <button\n class=\"sky-btn sky-btn-default\"\n data-sky-id=\"stackblitz-btn\"\n type=\"button\"\n (click)=\"launchStackBlitz()\"\n >\n <sky-icon iconName=\"edit\" />\n {{\n 'sky_docs_code_example_viewer_demo_stack_blitz_button' | skyLibResources\n }}\n </button>\n </sky-box-controls>\n\n <sky-box-content>\n <div\n class=\"sky-docs-code-example-viewer-demo sky-padding-even-md sky-margin-stacked-lg\"\n >\n @let component = componentType();\n @if (!demoHidden() && component) {\n <ng-template [ngComponentOutlet]=\"component\" />\n } @else {\n {{\n 'sky_docs_code_example_viewer_demo_hidden_message' | skyLibResources\n }}\n }\n </div>\n\n <div class=\"sky-margin-stacked-sm\">\n <button\n class=\"sky-btn sky-btn-link\"\n data-sky-id=\"toggle-code-visibility-btn\"\n type=\"button\"\n [attr.aria-controls]=\"codeRef.id\"\n [attr.aria-expanded]=\"isCodeVisible()\"\n (click)=\"toggleCodeVisibility()\"\n >\n <sky-icon\n [iconName]=\"isCodeVisible() ? 'chevron-down' : 'chevron-right'\"\n />\n {{\n isCodeVisible()\n ? ('sky_docs_code_example_viewer_hide_code_button_label'\n | skyLibResources)\n : ('sky_docs_code_example_viewer_show_code_button_label'\n | skyLibResources)\n }}\n </button>\n </div>\n\n <sky-vertical-tabset #codeRef=\"skyId\" skyId [hidden]=\"!isCodeVisible()\">\n @for (obj of files() | keyvalue; track obj.key) {\n <sky-vertical-tab\n [active]=\"obj.key === primaryFile()\"\n [tabHeading]=\"obj.key\"\n >\n <sky-docs-code-snippet\n [code]=\"obj.value\"\n [language]=\"getCodeLanguage(obj.key)\"\n />\n </sky-vertical-tab>\n }\n </sky-vertical-tabset>\n </sky-box-content>\n</sky-box>\n","import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class ExampleHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n console.log(`Help opened with key '${args?.helpKey}'.`);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n /* */\n }\n}\n","import {\n EnvironmentProviders,\n NgModule,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyDocsCodeExampleViewerComponent } from './code-example-viewer.component';\nimport { ExampleHelpService } from './help.service';\n\n/**\n * Provide a mock help service for the code example viewer so that examples\n * with help keys work properly. (StackBlitz pulls in its own version of the\n * help service; this is needed for this live demos on the docs site.)\n */\nfunction provideExampleHelpService(): EnvironmentProviders {\n return makeEnvironmentProviders([\n { provide: SkyHelpService, useClass: ExampleHelpService },\n ]);\n}\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeExampleViewerComponent],\n exports: [SkyDocsCodeExampleViewerComponent],\n providers: [provideExampleHelpService()],\n})\nexport class SkyDocsCodeExampleViewerModule {}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\nimport { SkyDocsCodeHighlightService } from './code-highlight.service';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeHighlight',\n})\nexport class SkyDocsCodeHighlightPipe implements PipeTransform {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n\n public transform(\n value: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n return this.#highlightSvc.highlight(value, language);\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorLink } from './heading-anchor-link';\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsHeadingAnchorService implements OnDestroy {\n #anchors: SkyDocsHeadingAnchorComponent[] = [];\n readonly #anchorsChange = new BehaviorSubject<SkyDocsHeadingAnchorLink[]>([]);\n\n public readonly anchorsChange = this.#anchorsChange.asObservable();\n\n public ngOnDestroy(): void {\n this.#anchors = [];\n this.#anchorsChange.complete();\n }\n\n public register(anchor: SkyDocsHeadingAnchorComponent): void {\n if (!this.#anchors.includes(anchor)) {\n this.#anchors.push(anchor);\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n public unregister(anchor: SkyDocsHeadingAnchorComponent): void {\n if (this.#anchors.includes(anchor)) {\n this.#anchors.splice(this.#anchors.indexOf(anchor));\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n #getLinks(): SkyDocsHeadingAnchorLink[] {\n const els = document.querySelectorAll('sky-docs-heading-anchor');\n const anchorsSorted: SkyDocsHeadingAnchorComponent[] = [];\n\n // Since heading anchors can be registered at any point in the lifecycle\n // of the app, we need to sort the links by their location in the DOM,\n // rather than the order at which they were registered.\n for (const el of els) {\n this.#anchors.forEach((anchor) => {\n if (anchor.equals(el)) {\n anchorsSorted.push(anchor);\n }\n });\n }\n\n return anchorsSorted.map((a) => {\n return {\n anchorId: a.anchorId(),\n categoryColor: a.categoryColor(),\n categoryTemplate: a.categoryTemplate(),\n categoryText: a.categoryText(),\n text: a.headingText(),\n } satisfies SkyDocsHeadingAnchorLink;\n });\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n TemplateRef,\n booleanAttribute,\n inject,\n input,\n numberAttribute,\n} from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsCategoryColor } from '../category-tag/category-color';\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsHeadingAnchorHeadingLevel } from './heading-anchor-heading-level';\nimport { SkyDocsHeadingAnchorHeadingTextFormat } from './heading-anchor-heading-text-format';\nimport { SkyDocsHeadingAnchorService } from './heading-anchor.service';\n\nconst DEFAULT_HEADING_LEVEL: SkyDocsHeadingAnchorHeadingLevel = 2;\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n RouterLink,\n SkyDocsCategoryTagModule,\n SkyIconModule,\n SkyTrimModule,\n ],\n selector: 'sky-docs-heading-anchor',\n styleUrl: './heading-anchor.component.scss',\n templateUrl: './heading-anchor.component.html',\n})\nexport class SkyDocsHeadingAnchorComponent implements AfterViewInit, OnDestroy {\n readonly #elementRef = inject(ElementRef);\n readonly #anchorSvc = inject(SkyDocsHeadingAnchorService, { optional: true });\n\n public readonly anchorId = input.required<string>();\n public readonly headingText = input.required<string>();\n public readonly headingTextFormat =\n input<SkyDocsHeadingAnchorHeadingTextFormat>('normal');\n\n public readonly categoryColor = input<SkyDocsCategoryColor | undefined>();\n public readonly categoryTemplate = input<TemplateRef<unknown> | undefined>();\n public readonly categoryText = input<string | undefined>();\n\n public equals(el: Element): boolean {\n return this.#elementRef.nativeElement === el;\n }\n\n public readonly headingLevel = input(DEFAULT_HEADING_LEVEL, {\n transform: (value) => {\n const numValue = numberAttribute(value);\n\n if (numValue > 0 && numValue < 7) {\n return numValue as SkyDocsHeadingAnchorHeadingLevel;\n }\n\n return DEFAULT_HEADING_LEVEL;\n },\n });\n\n public readonly strikethrough = input(false, { transform: booleanAttribute });\n\n public ngAfterViewInit(): void {\n this.#anchorSvc?.register(this);\n }\n\n public ngOnDestroy(): void {\n this.#anchorSvc?.unregister(this);\n }\n}\n","@switch (headingLevel()) {\n @case (1) {\n <h1 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h1>\n }\n @case (2) {\n <h2 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h2>\n }\n @case (3) {\n <h3 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h3>\n }\n @case (4) {\n <h4 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h4>\n }\n @case (5) {\n <h5 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h5>\n }\n @case (6) {\n <h6 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h6>\n }\n}\n\n@if (categoryColor(); as categoryColor) {\n <sky-docs-category-tag [color]=\"categoryColor\">\n @if (categoryTemplate(); as categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"categoryTemplate\" />\n } @else {\n {{ categoryText() }}\n }\n </sky-docs-category-tag>\n}\n\n<ng-content />\n\n<ng-template #headingTextRef>\n <span class=\"sky-docs-heading-anchor-position\" [attr.id]=\"anchorId()\"></span>\n <a\n class=\"sky-docs-heading-anchor-link\"\n queryParamsHandling=\"merge\"\n [fragment]=\"anchorId()\"\n [routerLink]=\"[]\"\n >\n <sky-icon iconName=\"link\" />\n <span class=\"sky-screen-reader-only\"\n >Link for section titled {{ headingText() }}</span\n >\n </a>\n <span skyTrim [class.sky-docs-text-strikethrough]=\"strikethrough()\">\n @if (headingTextFormat() === 'code') {\n <code>{{ headingText() }}</code>\n } @else {\n {{ headingText() }}\n }\n </span>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsHeadingAnchorComponent],\n exports: [SkyDocsHeadingAnchorComponent],\n})\nexport class SkyDocsHeadingAnchorModule {}\n","import { InjectionToken, Type } from '@angular/core';\n\n/**\n * @internal\n */\nexport type SkyDocsCodeExampleComponentTypes = Record<string, Type<unknown>>;\n\n/**\n * @internal\n */\nexport const SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES =\n new InjectionToken<SkyDocsCodeExampleComponentTypes>(\n 'SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES',\n );\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport {\n SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n type SkyDocsCodeExampleComponentTypes,\n} from './code-example-types-token';\n\n/**\n * Provides code example declarations (e.g., Type<unknown>) to be used by the\n * code example viewer to dynamically create each code example component.\n * @example\n * ```\n * import * as examples from '@skyux/code-examples';\n *\n * provideSkyDocsCodeExampleTypes(examples);\n * ```\n * @internal\n */\nexport function provideSkyDocsCodeExampleTypes(\n examples: SkyDocsCodeExampleComponentTypes,\n): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n useValue: examples,\n },\n ]);\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgTemplateOutlet, RouterLink, SkyDocsCategoryTagModule],\n selector: 'sky-docs-toc',\n styleUrl: './table-of-contents.component.scss',\n templateUrl: './table-of-contents.component.html',\n})\nexport class SkyDocsTableOfContentsComponent {\n public readonly headingText = input.required<string>();\n public readonly links = input.required<SkyDocsTableOfContentsLink[]>();\n}\n","<h3 class=\"sky-docs-toc-heading\">{{ headingText() }}</h3>\n<nav [attr.aria-label]=\"'Table of contents for ' + headingText()\">\n @for (link of links(); track link.anchorId) {\n <a\n class=\"sky-docs-toc-link sky-margin-stacked-sm\"\n queryParamsHandling=\"merge\"\n [class.sky-docs-toc-link-active]=\"link.active\"\n [fragment]=\"link.anchorId\"\n [routerLink]=\"[]\"\n >\n <span class=\"sky-docs-toc-link-text\">{{ link.text }}</span>\n @if (link.categoryColor) {\n <sky-docs-category-tag\n class=\"sky-docs-toc-link-category sky-font-body-sm\"\n [color]=\"link.categoryColor\"\n >\n @if (link.categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"link.categoryTemplate\" />\n } @else {\n {{ link.categoryText }}\n }\n </sky-docs-category-tag>\n }\n </a>\n }\n</nav>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DOCUMENT,\n DestroyRef,\n ElementRef,\n computed,\n effect,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\nimport { SkyMediaQueryService, SkyScrollableHostService } from '@skyux/core';\n\nimport { debounceTime, distinctUntilChanged, fromEvent, map, take } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-docs-toc-page-with-links]': 'links().length > 0',\n },\n imports: [SkyDocsTableOfContentsComponent],\n selector: 'sky-docs-toc-page',\n styleUrl: './table-of-contents-page.component.scss',\n templateUrl: './table-of-contents-page.component.html',\n})\nexport class SkyDocsTableOfContentsPageComponent implements AfterViewInit {\n readonly #anchors = toSignal(\n inject(SkyDocsHeadingAnchorService).anchorsChange,\n );\n\n readonly #destroyRef = inject(DestroyRef);\n readonly #elementRef = inject(ElementRef);\n readonly #scrollableHostSvc = inject(SkyScrollableHostService);\n\n public readonly menuHeadingText = input.required<string>();\n\n readonly #activeAnchorIdOnScroll = signal<string | undefined>(undefined);\n #scrollOffset = 0;\n\n protected readonly breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n\n protected readonly links = computed<SkyDocsTableOfContentsLink[]>(() => {\n if (this.breakpoint() === 'xs') {\n return [];\n }\n\n const anchors = this.#anchors();\n const activeAnchorId = this.#activeAnchorIdOnScroll();\n\n return (\n anchors?.map((anchor) => {\n const link = anchor as SkyDocsTableOfContentsLink;\n link.active = link.anchorId === activeAnchorId;\n return link;\n }) ?? []\n );\n });\n\n readonly #routeFragment = toSignal(\n inject(ActivatedRoute).fragment.pipe(take(1)),\n );\n readonly #doc = inject(DOCUMENT);\n\n #delayedScroll: ReturnType<typeof setTimeout> | undefined;\n\n constructor() {\n effect(() => {\n const fragment = this.#routeFragment();\n const anchors = this.#anchors();\n if (fragment && anchors?.some((anchor) => anchor.anchorId === fragment)) {\n this.#delayedScroll = setTimeout(() =>\n this.#doc.getElementById(fragment)?.scrollIntoView(),\n );\n }\n });\n }\n\n public ngAfterViewInit(): void {\n const scrollEl = this.#scrollableHostSvc.getScrollableHost(\n this.#elementRef,\n );\n\n this.#scrollOffset = this.#getScrollOffset(scrollEl);\n\n fromEvent(scrollEl, 'scroll')\n .pipe(\n debounceTime(10),\n map(() => this.#getActiveLink()),\n distinctUntilChanged(),\n takeUntilDestroyed(this.#destroyRef),\n )\n .subscribe((activeLink) => {\n clearTimeout(this.#delayedScroll);\n this.#activeAnchorIdOnScroll.set(activeLink);\n });\n }\n\n /**\n * A link is considered active if the page is scrolled past the anchor without\n * also being scrolled passed the next link.\n */\n #getActiveLink(): string | undefined {\n const anchors = this.#anchors();\n\n if (anchors) {\n for (let i = 0; i < anchors.length; i++) {\n const anchor = anchors[i];\n const nextAnchor = anchors[i + 1];\n\n const rect = document\n .getElementById(anchor.anchorId)\n ?.getBoundingClientRect();\n\n const nextRect = document\n .getElementById(nextAnchor?.anchorId)\n ?.getBoundingClientRect();\n\n if (\n rect &&\n Math.round(rect.top - this.#scrollOffset) <= 0 &&\n (nextRect === undefined ||\n Math.round(nextRect.top - this.#scrollOffset) > 0)\n ) {\n return anchor.anchorId;\n }\n }\n }\n\n return undefined;\n }\n\n #getScrollOffset(scrollEl: HTMLElement | Window): number {\n return scrollEl instanceof HTMLElement\n ? scrollEl.getBoundingClientRect().top\n : 0;\n }\n}\n","@if (links().length > 0) {\n <div class=\"sky-docs-toc-menu\">\n <sky-docs-toc [headingText]=\"menuHeadingText()\" [links]=\"links()\" />\n </div>\n}\n<div class=\"sky-docs-toc-body\">\n <ng-content />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTableOfContentsPageComponent } from './table-of-contents-page.component';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsTableOfContentsComponent,\n SkyDocsTableOfContentsPageComponent,\n ],\n exports: [SkyDocsTableOfContentsPageComponent],\n})\nexport class SkyDocsTableOfContentsModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-elevation-0-bordered sky-rounded-corners',\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [SkyDocsCategoryTagModule],\n selector: 'sky-docs-type-definition-box',\n styles: `\n :host {\n display: block;\n overflow: hidden;\n }\n\n .sky-docs-type-definition-box-header {\n background-color: var(--sky-background-color-info-light);\n display: flex;\n align-items: center;\n gap: 10px;\n }\n\n .sky-docs-type-definition-box-heading {\n margin: 0;\n font-weight: normal;\n word-break: break-all;\n }\n `,\n template: `\n <div\n class=\"sky-docs-type-definition-box-header sky-border-bottom-dark sky-padding-even-xl\"\n >\n <h4 class=\"sky-docs-type-definition-box-heading\">\n <code\n [class.sky-docs-text-strikethrough]=\"deprecated()\"\n [innerHTML]=\"headingText()\"\n ></code>\n </h4>\n @if (required()) {\n <sky-docs-category-tag color=\"red\">Required</sky-docs-category-tag>\n }\n </div>\n <div class=\"sky-docs-type-definition-box-body sky-padding-even-xl\">\n <ng-content />\n </div>\n `,\n})\nexport class SkyDocsTypeDefinitionBoxComponent {\n public readonly headingText = input.required<string>();\n\n public readonly deprecated = input(false, { transform: booleanAttribute });\n public readonly required = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { Tokens, marked } from 'marked';\n\nconst renderer = {\n codespan(token: Tokens.Codespan): string {\n return `<code class=\"sky-docs-codespan\">${token.text}</code>`;\n },\n};\n\nmarked.use({\n renderer,\n});\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMarkdown',\n})\nexport class SkyDocsMarkdownPipe implements PipeTransform {\n public transform(\n value: string,\n parserStyle: 'block' | 'inline' = 'inline',\n ): string {\n return parserStyle === 'inline'\n ? (marked.parseInline(value) as string)\n : (marked.parse(value) as string);\n }\n}\n","import { Injectable } from '@angular/core';\n\n/**\n * Registers known type symbols with their corresponding anchor IDs.\n * @internal\n */\n@Injectable()\nexport class SkyDocsTypeDefinitionAnchorIdsService {\n #anchorIds = new Map<string, string>();\n\n /**\n * @param anchorIds A collection of anchorIds, keyed by the definition's name.\n */\n public updateAnchorIds(anchorIds: Record<string, string>): void {\n this.#anchorIds = new Map(Object.entries(anchorIds));\n }\n\n public getAnchorId(typeName: string): string | undefined {\n return this.#anchorIds.get(typeName);\n }\n}\n","import {\n ChangeDetectorRef,\n DestroyRef,\n Pipe,\n PipeTransform,\n inject,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute } from '@angular/router';\nimport { SkyAppWindowRef, SkyLogService } from '@skyux/core';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-anchor-ids.service';\n\nconst WORD_REGEXP = /\\w+/g;\n\n/**\n * For the given string, finds known tokens and wraps them in an anchor linking to the respective element ID.\n * @internal\n */\n@Pipe({\n name: 'skyTypeAnchorLinks',\n pure: false,\n})\nexport class SkyTypeAnchorLinksPipe implements PipeTransform {\n readonly #activatedRoute = inject(ActivatedRoute);\n readonly #anchorSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #destroyRef = inject(DestroyRef);\n readonly #logSvc = inject(SkyLogService);\n readonly #windowRef = inject(SkyAppWindowRef);\n\n readonly #cache: Record<string, { type: string; anchorEl: string }> = {};\n\n constructor() {\n this.#activatedRoute.queryParams\n .pipe(takeUntilDestroyed(this.#destroyRef))\n .subscribe(() => {\n this.#refreshCache();\n this.#changeDetector.markForCheck();\n });\n }\n\n public transform(value: string, options?: { ignore: string[] }): string {\n const typeWrappedWithAnchor = value?.replace(WORD_REGEXP, (maybeType) => {\n if (options?.ignore.includes(maybeType)) {\n return maybeType;\n }\n\n const anchorId = this.#anchorSvc.getAnchorId(maybeType);\n\n if (anchorId) {\n if (!(anchorId in this.#cache)) {\n this.#saveToCache(anchorId, maybeType);\n }\n\n return this.#cache[anchorId].anchorEl;\n } else if (\n // Log error if the found type starts with \"Sky\" but its anchorId is\n // unregistered. This usually means the type was not included in the\n // `docsIds` array for this documentation group.\n maybeType.startsWith('Sky')\n ) {\n this.#logSvc.error(\n 'The following type is referenced on the page but its docsId is not included in this documentation group. ' +\n `(parsing: \"${value}\")\\n` +\n `[[ ${maybeType} ]]`,\n );\n }\n\n return maybeType;\n });\n\n if (typeWrappedWithAnchor !== value) {\n return typeWrappedWithAnchor;\n }\n\n return value;\n }\n\n #refreshCache(): void {\n for (const anchorId in this.#cache) {\n this.#saveToCache(anchorId, this.#cache[anchorId].type);\n }\n }\n\n #saveToCache(anchorId: string, typeName: string): void {\n const href =\n this.#windowRef.nativeWindow.location.href.split('#')[0] + `#${anchorId}`;\n\n this.#cache[anchorId] = {\n type: typeName,\n anchorEl: `<a class=\"sky-docs-codespan-anchor\" href=\"${href}\">${typeName}</a>`,\n };\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-deprecation-reason',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <p>\n <sky-status-indicator descriptionType=\"warning\" indicatorType=\"warning\">\n <strong class=\"sky-font-emphasized\">Deprecated. </strong\n ><span\n [innerHTML]=\"message() | skyDocsMarkdown | skyTypeAnchorLinks\"\n ></span>\n </sky-status-indicator>\n </p>\n `,\n})\nexport class SkyDocsDeprecationReasonComponent {\n public readonly message = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEscapeHtml',\n})\nexport class SkyDocsEscapeHtmlPipe implements PipeTransform {\n public transform(value: string): string {\n return value.replaceAll('<', '<').replaceAll('>', '>');\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsEscapeHtmlPipe,\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-type-definition-description',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <div\n [innerHTML]=\"\n description()\n | skyDocsEscapeHtml\n | skyDocsMarkdown: 'block'\n | skyTypeAnchorLinks: { ignore: [definitionName()] }\n \"\n ></div>\n `,\n})\nexport class SkyDocsTypeDefinitionDescriptionComponent {\n public readonly definitionName = input.required<string>();\n public readonly description = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestChildDefinition,\n type SkyManifestClassPropertyDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyDefaultValue',\n})\nexport class SkyDocsPropertyTypeDefinitionDefaultValuePipe implements PipeTransform {\n public transform(prop: SkyManifestChildDefinition): string | undefined {\n return (prop as SkyManifestClassPropertyDefinition)?.defaultValue;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestEnumerationDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEnumerationSignature',\n})\nexport class SkyDocsEnumerationSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestEnumerationDefinition;\n\n return `enum ${def.name} {\n ${def.children?.map((c) => `${c.name} = ${c.type},`).join('\\n ')}\n}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParameterDefinition } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsParameterName',\n})\nexport class SkyDocsParameterNamePipe implements PipeTransform {\n public transform(parameter: SkyManifestParameterDefinition): string {\n return `${parameter.name}${parameter.defaultValue ? ` = ${parameter.defaultValue}` : `${parameter.isOptional ? '?' : ''}: ${parameter.type}`}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestDocumentationTypeDefinition,\n SkyManifestFunctionDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsFunctionSignature',\n})\nexport class SkyDocsFunctionSignaturePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(definition: SkyManifestDocumentationTypeDefinition): string {\n const def = definition as unknown as SkyManifestFunctionDefinition;\n\n return (\n `${def.type.startsWith('Promise') ? 'async ' : ''}function ${def.name}(` +\n (def.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${def.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestInterfaceDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsInterfaceSignature',\n})\nexport class SkyDocsInterfaceSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestInterfaceDefinition;\n\n if (def.children) {\n return `interface ${def.name} {\n ${def.children\n ?.map((c) => {\n return `${c.name}${c.isOptional ? '?' : ''}: ${c.type};`;\n })\n .join('\\n ')}\n}`;\n }\n\n return `interface ${def.name} {}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestClassMethodDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMethodName',\n})\nexport class SkyDocsMethodNamePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(\n method: SkyManifestClassMethodDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n let name = '';\n\n if (method.isStatic) {\n name = `${parent.name}.${method.name}`;\n } else {\n name = `${method.name}`;\n }\n\n return (\n name +\n '(' +\n (method.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${method.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestClassPropertyDefinition,\n type SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\nimport { PropertyDefinition } from '../property-definition';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyName',\n})\nexport class SkyDocsPropertyNamePipe implements PipeTransform {\n public transform(\n property: PropertyDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n switch (property.kind) {\n case 'enum-member': {\n return `${parent.name}.${property.name}`;\n }\n\n case 'interface-property': {\n return `${property.name}${property.isOptional ? '?' : ''}: ${property.type}`;\n }\n\n default: {\n return `${(property as SkyManifestClassPropertyDefinition).isStatic ? 'static ' : ''}${property.name}: ${property.type}`;\n }\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestParentDefinition,\n type SkyManifestTypeAliasDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsTypeAliasSignature',\n})\nexport class SkyDocsTypeAliasSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestTypeAliasDefinition;\n\n return `type ${def.name} = ${def.type}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\nimport { SkyDocsCategoryColor } from '../../category-tag/category-color';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsDefinitionKindToCategoryColor',\n})\nexport class SkyDocsTypeDefinitionKindToCategoryColorPipe implements PipeTransform {\n public transform(\n value: SkyManifestParentDefinitionKind,\n ): SkyDocsCategoryColor {\n switch (value) {\n case 'module':\n return 'purple';\n\n case 'component':\n return 'orange';\n\n case 'directive':\n return 'yellow';\n\n case 'service':\n return 'teal';\n\n case 'pipe':\n case 'class':\n case 'function':\n return 'blue';\n\n default:\n return 'light-blue';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyTypeDefinitionKindToLabel',\n})\nexport class SkyDocsTypeDefinitionKindToLabelPipe implements PipeTransform {\n public transform(kind: SkyManifestParentDefinitionKind): string {\n switch (kind) {\n case 'type-alias':\n return 'Type alias';\n\n default:\n return kind.charAt(0).toLocaleUpperCase() + kind.slice(1);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n input,\n} from '@angular/core';\nimport {\n SkyManifestChildDefinitionKind,\n SkyManifestClassMethodDefinition,\n SkyManifestDirectiveInputDefinition,\n SkyManifestDirectiveOutputDefinition,\n type SkyManifestDocumentationTypeDefinition,\n SkyManifestParameterDefinition,\n isDirectiveDefinition,\n isFunctionDefinition,\n isPipeDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\nimport { SkyDocsCodeHighlightPipe } from '../code-highlight/code-highlight.pipe';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsTypeDefinitionBoxComponent } from './box.component';\nimport { SkyDocsDeprecationReasonComponent } from './deprecation-reason.component';\nimport { SkyDocsTypeDefinitionDescriptionComponent } from './description.component';\nimport { SkyDocsPropertyTypeDefinitionDefaultValuePipe } from './pipes/default-value.pipe';\nimport { SkyDocsEnumerationSignaturePipe } from './pipes/enum-signature.pipe';\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsFunctionSignaturePipe } from './pipes/function-signature.pipe';\nimport { SkyDocsInterfaceSignaturePipe } from './pipes/interface-signature.pipe';\nimport { SkyDocsMethodNamePipe } from './pipes/method-name.pipe';\nimport { SkyDocsParameterNamePipe } from './pipes/parameter-name.pipe';\nimport { SkyDocsPropertyNamePipe } from './pipes/property-name.pipe';\nimport { SkyDocsTypeAliasSignaturePipe } from './pipes/type-alias-signature.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\nimport { SkyDocsTypeDefinitionKindToCategoryColorPipe } from './pipes/type-definition-kind-to-category-color.pipe';\nimport { SkyDocsTypeDefinitionKindToLabelPipe } from './pipes/type-definition-kind-to-label.pipe';\nimport { PropertyDefinition } from './property-definition';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-xxl]': 'stacked()',\n },\n imports: [\n SkyDocsCategoryTagModule,\n SkyDocsCodeHighlightPipe,\n SkyDocsCodeSnippetModule,\n SkyDocsDeprecationReasonComponent,\n SkyDocsEnumerationSignaturePipe,\n SkyDocsHeadingAnchorModule,\n SkyDocsFunctionSignaturePipe,\n SkyDocsInterfaceSignaturePipe,\n SkyDocsMethodNamePipe,\n SkyDocsParameterNamePipe,\n SkyDocsPropertyNamePipe,\n SkyDocsPropertyTypeDefinitionDefaultValuePipe,\n SkyDocsTypeAliasSignaturePipe,\n SkyDocsTypeDefinitionBoxComponent,\n SkyDocsTypeDefinitionDescriptionComponent,\n SkyDocsTypeDefinitionKindToCategoryColorPipe,\n SkyDocsTypeDefinitionKindToLabelPipe,\n SkyDocsEscapeHtmlPipe,\n SkyTypeAnchorLinksPipe,\n ],\n providers: [SkyDocsParameterNamePipe],\n selector: 'sky-docs-type-definition',\n styleUrl: './type-definition.component.scss',\n templateUrl: './type-definition.component.html',\n})\nexport class SkyDocsTypeDefinitionComponent {\n public readonly definition =\n input.required<SkyManifestDocumentationTypeDefinition>();\n\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly inputs = computed<\n SkyManifestDirectiveInputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const inputs = def.children?.filter((c) => c.kind === 'directive-input') as\n SkyManifestDirectiveInputDefinition[] | undefined;\n\n return inputs && inputs.length > 0\n ? inputs\n // Sort alphabetically by name.\n .sort((a, b) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n })\n // List \"required\" inputs first.\n .sort((a, b) => {\n if (a.isRequired && !b.isRequired) {\n return -1;\n }\n\n if (!a.isRequired && b.isRequired) {\n return 1;\n }\n\n return 0;\n })\n : undefined;\n });\n\n protected readonly methods = computed<\n SkyManifestClassMethodDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return def.children?.filter((c) => c.kind === 'class-method') as\n SkyManifestClassMethodDefinition[] | undefined;\n });\n\n protected readonly outputs = computed<\n SkyManifestDirectiveOutputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const outputs = def.children?.filter(\n (c) => c.kind === 'directive-output',\n ) as SkyManifestDirectiveOutputDefinition[] | undefined;\n\n return outputs && outputs.length > 0 ? outputs : undefined;\n });\n\n protected readonly parameters = computed<\n SkyManifestParameterDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return isFunctionDefinition(def) ? def.parameters : undefined;\n });\n\n protected readonly pipeName = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isPipeDefinition(def) ? def.templateBindingName : undefined;\n });\n\n protected readonly properties = computed<PropertyDefinition[] | undefined>(\n () => {\n const def = this.definition();\n\n const ignore: SkyManifestChildDefinitionKind[] = [\n 'class-method',\n 'directive-input',\n 'directive-output',\n ];\n\n const properties = def.children?.filter(\n (c) => !ignore.includes(c.kind),\n ) as PropertyDefinition[] | undefined;\n\n return properties && properties.length > 0 ? properties : undefined;\n },\n );\n\n protected readonly selector = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isDirectiveDefinition(def) ? def.selector : undefined;\n });\n}\n","@if (definition(); as def) {\n <sky-docs-heading-anchor\n class=\"sky-margin-stacked-lg\"\n headingLevel=\"2\"\n [anchorId]=\"def.anchorId\"\n [categoryColor]=\"def.kind | skyDocsDefinitionKindToCategoryColor\"\n [categoryTemplate]=\"categoryTemplate\"\n [headingText]=\"def.name\"\n [strikethrough]=\"def.isDeprecated\"\n >\n <ng-template #categoryTemplate>\n <span class=\"sky-screen-reader-only\">Type: </span>\n {{ def.kind | skyTypeDefinitionKindToLabel }}\n </ng-template>\n @if (def.isPreview) {\n <sky-docs-category-tag color=\"teal\"> Preview </sky-docs-category-tag>\n }\n </sky-docs-heading-anchor>\n @if (def.kind === 'module' || def.name.endsWith('Harness')) {\n <p>\n <code class=\"sky-docs-codespan\"\n >import {{ '{' }} {{ def.name }} {{ '}' }} from '{{\n def.packageName\n }}';</code\n >\n </p>\n }\n @if (selector(); as selector) {\n <p>\n Selector: <code class=\"sky-docs-codespan\">{{ selector }}</code>\n </p>\n }\n @if (pipeName(); as pipeName) {\n <p>\n Pipe name: <code class=\"sky-docs-codespan\">{{ pipeName }}</code>\n </p>\n }\n @if (def.deprecationReason) {\n <sky-docs-deprecation-reason [message]=\"def.deprecationReason\" />\n }\n @if (def.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"def.name\"\n [description]=\"def.description\"\n />\n }\n @if (def.codeExample) {\n <h3>Example</h3>\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n [code]=\"def.codeExample\"\n [language]=\"def.codeExampleLanguage ?? 'html'\"\n />\n }\n @switch (def.kind) {\n @case ('function') {\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n language=\"ts\"\n [code]=\"\n def\n | skyDocsFunctionSignature\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n />\n @let parametersValue = parameters();\n @if (parametersValue && parametersValue.length > 0) {\n <h3>Parameters</h3>\n @for (parameter of parametersValue; track parameter.name) {\n <h4 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n parameter\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h4>\n @if (parameter.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"parameter.name\"\n [description]=\"parameter.description\"\n />\n }\n }\n }\n }\n @case ('type-alias') {\n <sky-docs-code-snippet bordered hideToolbar stacked>\n <code\n [innerHTML]=\"\n def\n | skyDocsTypeAliasSignature\n | skyDocsCodeHighlight: 'typescript'\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n ></code>\n </sky-docs-code-snippet>\n }\n @default {\n @if (def.kind === 'interface') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsInterfaceSignature\"\n />\n }\n @if (def.kind === 'enumeration') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsEnumerationSignature\"\n />\n }\n @if (inputs(); as inputs) {\n <h3>Inputs</h3>\n @for (input of inputs; track input.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"input.isDeprecated\"\n [required]=\"input.isRequired\"\n [headingText]=\"\n input\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (input.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"input.deprecationReason\"\n />\n }\n @if (input.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"input.name\"\n [description]=\"input.description\"\n />\n }\n @let defaultValue = input | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (outputs(); as outputs) {\n <h3>Outputs</h3>\n @for (output of outputs; track output.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"output.isDeprecated\"\n [headingText]=\"\n output\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (output.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"output.deprecationReason\"\n />\n }\n @if (output.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"output.name\"\n [description]=\"output.description\"\n />\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (properties(); as properties) {\n <h3>Properties</h3>\n @for (property of properties; track property.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"property.isDeprecated\"\n [headingText]=\"\n property\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (property.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"property.deprecationReason\"\n />\n }\n @if (property.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"property.name\"\n [description]=\"property.description\"\n />\n }\n @let defaultValue = property | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @let methodsValue = methods();\n @if (methodsValue && methodsValue.length > 0) {\n <h3>Methods</h3>\n @for (method of methodsValue; track method.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"method.isDeprecated\"\n [headingText]=\"\n method\n | skyDocsMethodName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (method.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"method.deprecationReason\"\n />\n }\n @if (method.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"method.name\"\n [description]=\"method.description\"\n />\n }\n @if (method.parameters) {\n <h4>Parameters</h4>\n @for (param of method.parameters; track param.name) {\n <h5 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n param\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h5>\n @if (param.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"param.name\"\n [description]=\"param.description\"\n />\n }\n }\n }\n <h4>Returns</h4>\n <p>\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n method.type | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n </sky-docs-type-definition-box>\n }\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTypeDefinitionComponent } from './type-definition.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsTypeDefinitionComponent],\n exports: [SkyDocsTypeDefinitionComponent],\n})\nexport class SkyDocsTypeDefinitionModule {}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { type SkyManifestDocumentationGroup } from '@skyux/manifest';\n\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsShowcaseHostService implements OnDestroy {\n public get documentationGroup(): Observable<\n SkyManifestDocumentationGroup | undefined\n > {\n return this.#documentationGroupObs;\n }\n\n readonly #documentationGroup = new BehaviorSubject<\n SkyManifestDocumentationGroup | undefined\n >(undefined);\n\n readonly #documentationGroupObs = this.#documentationGroup.asObservable();\n\n public ngOnDestroy(): void {\n this.#documentationGroup.complete();\n }\n\n public updateGroup(group: SkyManifestDocumentationGroup | undefined): void {\n this.#documentationGroup.next(group);\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Development\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDescriptionListModule,\n SkyDocsClipboardModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsTableOfContentsModule,\n SkyDocsTypeDefinitionModule,\n SkyIconModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-development',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-development.component.html',\n})\nexport class SkyDocsShowcaseAreaDevelopmentComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Development\">\n @if (documentationGroup()?.packageInfo; as packageInfo) {\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <sky-docs-heading-anchor\n anchorId=\"installation\"\n class=\"sky-margin-stacked-lg\"\n headingText=\"Installation\"\n />\n <sky-description-list>\n <sky-description-list-content>\n <sky-description-list-term> NPM package </sky-description-list-term>\n <sky-description-list-description>\n <code class=\"sky-docs-codespan sky-margin-inline-sm\">{{\n packageInfo.packageName\n }}</code>\n <a [attr.href]=\"packageInfo.registryUrl\">View in NPM</a\n ><span> | </span\n ><a [attr.href]=\"packageInfo.repoUrl\">View in GitHub</a>\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content\n helpPopoverContent=\"To use this module, you must install peer dependencies along with its package. Also, after you install the package, you must add the module as an export in your SPA's main module to make exports available to your SPA.\"\n >\n <sky-description-list-term>\n Install with NPM\n </sky-description-list-term>\n <sky-description-list-description>\n <code\n #installationRef\n class=\"sky-docs-codespan sky-margin-inline-sm sky-margin-stacked-sm\"\n >\n npm install --save-exact {{ packageInfo.packageName }}\n </code>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n copySuccessMessage=\"Command copied\"\n [clipboardTarget]=\"installationRef\"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n Copy\n </button>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n </div>\n }\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <ng-content />\n </div>\n @if (documentationGroup()?.publicApi; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { Pipe, PipeTransform, Type, inject } from '@angular/core';\n\nimport { SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES } from './code-example-types-token';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeExampleNameToComponentType',\n})\nexport class SkyDocsCodeExampleNameToComponentTypePipe implements PipeTransform {\n readonly #examples = inject(SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES);\n\n public transform(componentName: string): Type<unknown> {\n return this.#examples[componentName];\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsCodeExampleViewerModule } from '../code-example-viewer/code-example-viewer.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsCodeExampleNameToComponentTypePipe } from './code-example-types/code-example-types.pipe';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Examples\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsCodeExampleNameToComponentTypePipe,\n SkyDocsCodeExampleViewerModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-examples',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n templateUrl: './showcase-area-examples.component.html',\n})\nexport class SkyDocsShowcaseAreaExamplesComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","@if (documentationGroup()?.codeExamples; as codeExamples) {\n @for (\n example of codeExamples;\n track example.componentName;\n let last = $last\n ) {\n <sky-docs-code-example-viewer\n [componentName]=\"example.componentName\"\n [componentSelector]=\"example.selector\"\n [componentType]=\"\n example.componentName | skyDocsCodeExampleNameToComponentType\n \"\n [demoHidden]=\"!!example.demoHidden\"\n [files]=\"example.files\"\n [headingText]=\"example.title || 'Example'\"\n [primaryFile]=\"example.primaryFile\"\n [stacked]=\"!last\"\n />\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\n\n/**\n * Content for the \"Highlight\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-highlight',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n template: `<ng-content />`,\n})\nexport class SkyDocsShowcaseAreaHighlightComponent {\n public headingText = input.required<string>();\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\n\n/**\n * Content for the \"Overview\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-overview',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n `,\n template: `\n <sky-docs-toc-page menuHeadingText=\"Overview\">\n <ng-content />\n </sky-docs-toc-page>\n `,\n})\nexport class SkyDocsShowcaseAreaOverviewComponent {}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Testing\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [SkyDocsTableOfContentsModule, SkyDocsTypeDefinitionModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-testing',\n styles: `\n :host {\n display: block;\n padding-top: var(--sky-padding-even-xl);\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-testing.component.html',\n})\nexport class SkyDocsShowcaseAreaTestingComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Testing\">\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <p class=\"sky-margin-stacked-xl\">\n SKY UX test harnesses are built upon Angular CDK component harnesses. For\n more information see the\n <a href=\"https://material.angular.io/cdk/test-harnesses/overview\"\n >Angular CDK component harness documentation</a\n >.\n </p>\n <ng-content />\n </div>\n @if (documentationGroup()?.testing; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n input,\n} from '@angular/core';\nimport { getDocumentationGroup } from '@skyux/manifest';\nimport { SkyTabsModule } from '@skyux/tabs';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-definition/type-anchor-ids.service';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaHighlightComponent } from './showcase-area-highlight.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaTestingComponent,\n SkyTabsModule,\n ],\n providers: [\n SkyDocsTypeDefinitionAnchorIdsService,\n SkyDocsShowcaseHostService,\n ],\n selector: 'sky-docs-showcase',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './showcase.component.html',\n})\nexport class SkyDocsShowcaseComponent {\n readonly #anchorIdsSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #showcaseHostSvc = inject(SkyDocsShowcaseHostService);\n\n public readonly groupName = input.required<string>();\n public readonly packageName = input.required<string>();\n\n protected docsGroup = computed(() => {\n const groupName = this.groupName();\n const packageName = this.packageName();\n\n try {\n const group = getDocumentationGroup(packageName, groupName);\n return group;\n } catch {\n return;\n }\n });\n\n protected readonly developmentContent = contentChild(\n SkyDocsShowcaseAreaDevelopmentComponent,\n );\n\n protected readonly highlightContent = contentChild(\n SkyDocsShowcaseAreaHighlightComponent,\n );\n\n protected readonly overviewContent = contentChild(\n SkyDocsShowcaseAreaOverviewComponent,\n );\n\n protected readonly testingContent = contentChild(\n SkyDocsShowcaseAreaTestingComponent,\n );\n\n constructor() {\n effect(() => {\n const docsGroup = this.docsGroup();\n const anchorIds: Record<string, string> = {};\n\n docsGroup?.publicApi.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n docsGroup?.testing.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n this.#anchorIdsSvc.updateAnchorIds(anchorIds);\n this.#showcaseHostSvc.updateGroup(docsGroup);\n });\n }\n}\n","@let group = docsGroup();\n<sky-tabset permalinkId=\"docs\">\n @if (highlightContent()) {\n <sky-tab [tabHeading]=\"highlightContent()?.headingText()\">\n <ng-container [ngTemplateOutlet]=\"highlightContentRef\" />\n </sky-tab>\n }\n @if (overviewContent()) {\n <sky-tab tabHeading=\"Design\">\n <ng-container [ngTemplateOutlet]=\"overviewContentRef\" />\n </sky-tab>\n }\n @if ((group && group.publicApi.length > 0) || developmentContent()) {\n <sky-tab tabHeading=\"Development\">\n @if (developmentContent()) {\n <ng-container [ngTemplateOutlet]=\"developmentContentRef\" />\n } @else {\n <sky-docs-showcase-area-development />\n }\n </sky-tab>\n }\n @if ((group && group.testing.length > 0) || testingContent()) {\n <sky-tab tabHeading=\"Testing\">\n @if (testingContent()) {\n <ng-container [ngTemplateOutlet]=\"testingContentRef\" />\n } @else {\n <sky-docs-showcase-area-testing />\n }\n </sky-tab>\n }\n @if (group && group.codeExamples.length > 0) {\n <sky-tab tabHeading=\"Examples\">\n @defer (on viewport) {\n <sky-docs-showcase-area-examples />\n } @placeholder {\n <p>Loading...</p>\n }\n </sky-tab>\n }\n</sky-tabset>\n<ng-template #highlightContentRef>\n <ng-content select=\"sky-docs-showcase-area-highlight\" />\n</ng-template>\n<ng-template #overviewContentRef>\n <ng-content select=\"sky-docs-showcase-area-overview\" />\n</ng-template>\n<ng-template #developmentContentRef>\n <ng-content select=\"sky-docs-showcase-area-development\" />\n</ng-template>\n<ng-template #testingContentRef>\n <ng-content select=\"sky-docs-showcase-area-testing\" />\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaHighlightComponent } from './showcase-area-highlight.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseComponent } from './showcase.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaHighlightComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n exports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaHighlightComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n})\nexport class SkyDocsShowcaseModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDocsClipboardButtonDirective","i2.SkyDocsCodeSnippetComponent","i6","i1.SkyDocsCategoryTagComponent","i3","i1","i3.SkyDocsCodeSnippetWrapperComponent","i4.SkyDocsHeadingAnchorComponent","i3.SkyDocsHeadingAnchorComponent","i4.SkyDocsTableOfContentsPageComponent","i1.SkyDocsCodeExampleViewerComponent","i1.SkyDocsTableOfContentsPageComponent","i2.SkyDocsTypeDefinitionComponent"],"mappings":"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"}
|