@skyux/docs-tools 7.2.0 → 8.0.0
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/esm2020/docs-tools.module.mjs +5 -5
- package/esm2020/modules/anatomy/anatomy-item.component.mjs +4 -4
- package/esm2020/modules/anatomy/anatomy-thumbnail.component.mjs +4 -4
- package/esm2020/modules/anatomy/anatomy.component.mjs +4 -4
- package/esm2020/modules/anatomy/anatomy.module.mjs +5 -5
- package/esm2020/modules/code-examples/code-example.component.mjs +14 -14
- package/esm2020/modules/code-examples/code-examples-editor.service.mjs +4 -4
- package/esm2020/modules/code-examples/code-examples.component.mjs +10 -10
- package/esm2020/modules/code-examples/code-examples.module.mjs +5 -5
- package/esm2020/modules/demo/demo-control-panel-checkbox.component.mjs +13 -13
- package/esm2020/modules/demo/demo-control-panel-radio-group.component.mjs +4 -4
- package/esm2020/modules/demo/demo-control-panel-section.component.mjs +4 -4
- package/esm2020/modules/demo/demo-control-panel.component.mjs +4 -4
- package/esm2020/modules/demo/demo.component.mjs +4 -4
- package/esm2020/modules/demo/demo.module.mjs +5 -5
- package/esm2020/modules/demo-page/demo-page-dom-adapter.service.mjs +10 -10
- package/esm2020/modules/demo-page/demo-page-module-info.component.mjs +4 -4
- package/esm2020/modules/demo-page/demo-page-section.component.mjs +4 -4
- package/esm2020/modules/demo-page/demo-page-summary.component.mjs +4 -4
- package/esm2020/modules/demo-page/demo-page-title.service.mjs +4 -4
- package/esm2020/modules/demo-page/demo-page-type-definitions.component.mjs +4 -4
- package/esm2020/modules/demo-page/demo-page.component.mjs +30 -30
- package/esm2020/modules/demo-page/demo-page.module.mjs +5 -5
- package/esm2020/modules/design-guidelines/design-guideline-thumbnail.component.mjs +4 -4
- package/esm2020/modules/design-guidelines/design-guideline.component.mjs +4 -4
- package/esm2020/modules/design-guidelines/design-guidelines.component.mjs +4 -4
- package/esm2020/modules/design-guidelines/design-guidelines.module.mjs +5 -5
- package/esm2020/modules/heading-anchor/heading-anchor.component.mjs +4 -4
- package/esm2020/modules/heading-anchor/heading-anchor.module.mjs +5 -5
- package/esm2020/modules/markdown/markdown.module.mjs +5 -5
- package/esm2020/modules/markdown/markdown.pipe.mjs +4 -4
- package/esm2020/modules/module-info/module-info.component.mjs +14 -14
- package/esm2020/modules/module-info/module-info.module.mjs +5 -5
- package/esm2020/modules/safe-html/safe-html.component.mjs +4 -4
- package/esm2020/modules/safe-html/safe-html.module.mjs +5 -5
- package/esm2020/modules/shared/docs-tools-supportal.service.mjs +4 -4
- package/esm2020/modules/shared/sky-docs-tools-resources.module.mjs +5 -5
- package/esm2020/modules/source-code/source-code-provider.mjs +4 -4
- package/esm2020/modules/source-code/source-code.service.mjs +4 -4
- package/esm2020/modules/thumbnail/thumbnail.component.mjs +4 -4
- package/esm2020/modules/thumbnail/thumbnail.module.mjs +5 -5
- package/esm2020/modules/type-definitions/anchor-link.service.mjs +4 -4
- package/esm2020/modules/type-definitions/call-signature-definition.component.mjs +8 -8
- package/esm2020/modules/type-definitions/class-definition.component.mjs +4 -4
- package/esm2020/modules/type-definitions/directive-definition.component.mjs +4 -4
- package/esm2020/modules/type-definitions/enumeration-definition.component.mjs +4 -4
- package/esm2020/modules/type-definitions/interface-definition.component.mjs +7 -7
- package/esm2020/modules/type-definitions/method-definitions.component.mjs +12 -12
- package/esm2020/modules/type-definitions/pipe-definition.component.mjs +4 -4
- package/esm2020/modules/type-definitions/property-definitions.component.mjs +12 -12
- package/esm2020/modules/type-definitions/type-alias-definition.component.mjs +7 -7
- package/esm2020/modules/type-definitions/type-anchor-links.pipe.mjs +4 -4
- package/esm2020/modules/type-definitions/type-definitions-format.service.mjs +4 -4
- package/esm2020/modules/type-definitions/type-definitions-provider.mjs +4 -4
- package/esm2020/modules/type-definitions/type-definitions.module.mjs +5 -5
- package/esm2020/modules/type-definitions/type-definitions.service.mjs +4 -4
- package/esm2020/modules/type-definitions/typedoc-adapter.service.mjs +4 -4
- package/fesm2015/skyux-docs-tools.mjs +277 -277
- package/fesm2015/skyux-docs-tools.mjs.map +1 -1
- package/fesm2020/skyux-docs-tools.mjs +277 -277
- package/fesm2020/skyux-docs-tools.mjs.map +1 -1
- package/modules/anatomy/anatomy-item.component.d.ts +1 -1
- package/modules/anatomy/anatomy-thumbnail.component.d.ts +1 -1
- package/modules/anatomy/anatomy.component.d.ts +1 -1
- package/modules/code-examples/code-example-module-dependencies.d.ts +1 -1
- package/modules/code-examples/code-example.component.d.ts +1 -1
- package/modules/code-examples/code-examples.component.d.ts +1 -1
- package/modules/demo/demo-content-alignment.d.ts +1 -1
- package/modules/demo/demo-control-panel-checkbox.component.d.ts +1 -1
- package/modules/demo/demo-control-panel-radio-group.component.d.ts +1 -1
- package/modules/demo/demo-control-panel-section.component.d.ts +1 -1
- package/modules/demo/demo-control-panel.component.d.ts +1 -1
- package/modules/demo/demo.component.d.ts +1 -1
- package/modules/demo-page/demo-page-module-info.component.d.ts +1 -1
- package/modules/demo-page/demo-page-section.component.d.ts +1 -1
- package/modules/demo-page/demo-page-summary.component.d.ts +1 -1
- package/modules/demo-page/demo-page-type-definitions.component.d.ts +1 -1
- package/modules/demo-page/demo-page.component.d.ts +1 -1
- package/modules/design-guidelines/design-guideline-thumbnail.component.d.ts +1 -1
- package/modules/design-guidelines/design-guideline.component.d.ts +1 -1
- package/modules/design-guidelines/design-guidelines.component.d.ts +1 -1
- package/modules/heading-anchor/heading-anchor.component.d.ts +1 -1
- package/modules/module-info/module-info.component.d.ts +2 -2
- package/modules/safe-html/safe-html.component.d.ts +1 -1
- package/modules/thumbnail/thumbnail.component.d.ts +1 -1
- package/modules/type-definitions/anchor-link-service-format.d.ts +1 -1
- package/modules/type-definitions/call-signature-definition.component.d.ts +1 -1
- package/modules/type-definitions/class-definition.component.d.ts +1 -1
- package/modules/type-definitions/directive-definition.component.d.ts +1 -1
- package/modules/type-definitions/enumeration-definition.component.d.ts +1 -1
- package/modules/type-definitions/interface-definition.component.d.ts +1 -1
- package/modules/type-definitions/method-definitions.component.d.ts +1 -1
- package/modules/type-definitions/pipe-definition.component.d.ts +1 -1
- package/modules/type-definitions/property-definitions.component.d.ts +1 -1
- package/modules/type-definitions/type-alias-definition.component.d.ts +1 -1
- package/package.json +20 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-docs-tools.mjs","sources":["../../../projects/docs-tools/src/modules/anatomy/anatomy-item.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-item.component.html","../../../projects/docs-tools/src/modules/anatomy/anatomy.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy.component.html","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.component.ts","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.component.html","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.module.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-thumbnail.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-thumbnail.component.html","../../../projects/docs-tools/src/modules/anatomy/anatomy.module.ts","../../../projects/docs-tools/src/modules/shared/sky-docs-tools-resources.module.ts","../../../projects/docs-tools/src/modules/code-examples/code-example-theme.ts","../../../projects/docs-tools/src/modules/code-examples/code-example.component.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples-editor.service.ts","../../../projects/docs-tools/src/modules/source-code/source-code-provider.ts","../../../projects/docs-tools/src/modules/source-code/source-code.service.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples.component.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples.component.html","../../../projects/docs-tools/src/modules/code-examples/code-examples.module.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-checkbox.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-checkbox.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel-radio-group.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-radio-group.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel.component.html","../../../projects/docs-tools/src/modules/demo/demo.component.ts","../../../projects/docs-tools/src/modules/demo/demo.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel-section.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-section.component.html","../../../projects/docs-tools/src/modules/demo/demo.module.ts","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.component.ts","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.component.html","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.module.ts","../../../projects/docs-tools/src/modules/markdown/markdown.pipe.ts","../../../projects/docs-tools/src/modules/markdown/markdown.module.ts","../../../projects/docs-tools/src/modules/shared/docs-tools-options.ts","../../../projects/docs-tools/src/modules/module-info/module-info.component.ts","../../../projects/docs-tools/src/modules/module-info/module-info.component.html","../../../projects/docs-tools/src/modules/module-info/module-info.module.ts","../../../projects/docs-tools/src/modules/safe-html/safe-html.component.ts","../../../projects/docs-tools/src/modules/safe-html/safe-html.component.html","../../../projects/docs-tools/src/modules/safe-html/safe-html.module.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions-format.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions-provider.ts","../../../projects/docs-tools/src/modules/type-definitions/anchor-link.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-anchor-links.pipe.ts","../../../projects/docs-tools/src/modules/type-definitions/call-signature-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/call-signature-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/property-definitions.component.ts","../../../projects/docs-tools/src/modules/type-definitions/property-definitions.component.html","../../../projects/docs-tools/src/modules/type-definitions/directive-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/directive-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/enumeration-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/enumeration-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/interface-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/interface-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/method-definitions.component.ts","../../../projects/docs-tools/src/modules/type-definitions/method-definitions.component.html","../../../projects/docs-tools/src/modules/type-definitions/pipe-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/pipe-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/class-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/class-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/type-alias-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/type-alias-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/type-definitions.module.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-section.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-section.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-summary.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-summary.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-dom-adapter.service.ts","../../../projects/docs-tools/src/modules/shared/docs-tools-supportal.service.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-title.service.ts","../../../projects/docs-tools/src/modules/type-definitions/typedoc-adapter.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions.service.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-type-definitions.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-type-definitions.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-module-info.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page.module.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline-thumbnail.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline-thumbnail.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.module.ts","../../../projects/docs-tools/src/docs-tools.module.ts","../../../projects/docs-tools/src/skyux-docs-tools.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-anatomy-item',\n templateUrl: './anatomy-item.component.html',\n styleUrls: ['./anatomy-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyItemComponent {\n @Input()\n public isOptional: boolean = false;\n\n public marker: string;\n}\n","<div\n class=\"sky-docs-anatomy-item\"\n [ngClass]=\"{\n 'sky-docs-anatomy-item-optional': isOptional\n }\"\n>\n <div class=\"sky-docs-anatomy-item-marker\">\n {{ marker }}\n </div>\n <div class=\"sky-docs-anatomy-item-description\">\n <ng-content></ng-content>\n <span *ngIf=\"isOptional\" class=\"sky-deemphasized\"> (optional)</span>\n </div>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsAnatomyItemComponent } from './anatomy-item.component';\n\n@Component({\n selector: 'sky-docs-anatomy',\n templateUrl: './anatomy.component.html',\n styleUrls: ['./anatomy.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyComponent implements AfterContentInit {\n @Input()\n public imagePath: string;\n\n @ContentChildren(SkyDocsAnatomyItemComponent)\n private anatomyItems: QueryList<SkyDocsAnatomyItemComponent>;\n\n public ngAfterContentInit(): void {\n this.anatomyItems.forEach((item, i) => {\n item.marker = (i + 1).toString();\n });\n }\n}\n","<div class=\"sky-docs-anatomy\">\n <sky-row>\n <sky-column\n class=\"sky-docs-anatomy-items\"\n screenSmall=\"6\"\n screenMedium=\"5\"\n screenLarge=\"4\"\n >\n <ng-content select=\"sky-docs-anatomy-item\"></ng-content>\n </sky-column>\n <sky-column screenSmall=\"6\" screenMedium=\"7\" screenLarge=\"8\">\n <sky-image\n *ngIf=\"imagePath; else thumbnails\"\n [imageSource]=\"imagePath\"\n ></sky-image>\n </sky-column>\n </sky-row>\n</div>\n\n<ng-template #thumbnails>\n <ng-content select=\"sky-docs-anatomy-thumbnail\"></ng-content>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-thumbnail',\n templateUrl: './thumbnail.component.html',\n styleUrls: ['./thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public showBorder: boolean = false;\n\n @Input()\n public videoSource: string;\n}\n","<div class=\"sky-docs-thumbnail\">\n <sky-image\n *ngIf=\"imageSource\"\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [showBorder]=\"showBorder\"\n [showCaptionPrefix]=\"false\"\n ></sky-image>\n <div\n *ngIf=\"videoSource\"\n class=\"sky-docs-video\"\n [ngClass]=\"{\n 'sky-docs-video-border': showBorder\n }\"\n >\n <video controls>\n <source [attr.src]=\"videoSource\" type=\"video/mp4\" />\n </video>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyImageModule } from '@blackbaud/skyux-lib-media';\n\nimport { SkyDocsThumbnailComponent } from './thumbnail.component';\n\n@NgModule({\n imports: [CommonModule, SkyImageModule],\n exports: [SkyDocsThumbnailComponent],\n declarations: [SkyDocsThumbnailComponent],\n})\nexport class SkyDocsThumbnailModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-anatomy-thumbnail',\n templateUrl: './anatomy-thumbnail.component.html',\n styleUrls: ['./anatomy-thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public videoSource: string;\n\n @Input()\n public showBorder: boolean = false;\n}\n","<div class=\"sky-docs-anatomy-thumbnail\">\n <sky-docs-thumbnail\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [videoSource]=\"videoSource\"\n [showBorder]=\"showBorder\"\n ></sky-docs-thumbnail>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyImageModule } from '@blackbaud/skyux-lib-media';\n\nimport { SkyFluidGridModule } from '@skyux/layout';\n\nimport { SkyDocsAnatomyComponent } from './anatomy.component';\n\nimport { SkyDocsAnatomyItemComponent } from './anatomy-item.component';\nimport { SkyDocsThumbnailModule } from '../thumbnail/thumbnail.module';\nimport { SkyDocsAnatomyThumbnailComponent } from './anatomy-thumbnail.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyDocsThumbnailModule,\n SkyFluidGridModule,\n SkyImageModule,\n ],\n declarations: [\n SkyDocsAnatomyComponent,\n SkyDocsAnatomyItemComponent,\n SkyDocsAnatomyThumbnailComponent,\n ],\n exports: [\n SkyDocsAnatomyComponent,\n SkyDocsAnatomyItemComponent,\n SkyDocsAnatomyThumbnailComponent,\n ],\n})\nexport class SkyDocsAnatomyModule {}\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 modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n 'sky-docs-demo-heading': { message: 'Demo' },\n 'sky-docs-demo-toggle-button-on': { message: 'Show options' },\n 'sky-docs-demo-toggle-button-off': { message: 'Hide options' },\n 'sky-docs-code-example-launch-button-label': {\n message: 'Run in StackBlitz',\n },\n 'sky-docs-demo-control-panel-reset-button-label': { message: 'Reset' },\n },\n};\n\nexport class SkyDocsToolsResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDocsToolsResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDocsToolsResourcesModule {}\n","export enum SkyDocsCodeExampleTheme {\n Default = 'default',\n Modern = 'modern',\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnDestroy,\n Optional,\n} from '@angular/core';\n\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { Subject } from 'rxjs';\n\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDocsCodeExampleTheme } from './code-example-theme';\n\n/**\n * Renders a single code example.\n * @example\n * ```\n * <sky-docs-code-example\n * heading=\"My code example\"\n * sourceCodePath=\"src/app/public/plugin-resources/foobar\"\n * >\n * </sky-docs-code-example>\n * ```\n */\n@Component({\n selector: 'sky-docs-code-example',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCodeExampleComponent implements OnDestroy {\n /**\n * The heading to be used for the code example.\n * @required\n */\n @Input()\n public heading: string;\n\n /**\n * Specifies the local path to the code example's source code. The value is relative to the root directory.\n * @required\n */\n @Input()\n public sourceCodePath: string;\n\n /**\n * Specifies if the editor service should show the example in modern theme.\n * The value will be gleaned from `SkyThemeService` first, then fallback to 'default' if the service is not found.\n */\n @Input()\n public set theme(value: SkyDocsCodeExampleTheme) {\n this._theme = value;\n }\n\n public get theme(): SkyDocsCodeExampleTheme {\n return this._theme || SkyDocsCodeExampleTheme.Default;\n }\n\n private ngUnsubscribe = new Subject<void>();\n\n private _theme: SkyDocsCodeExampleTheme;\n\n constructor(@Optional() themeSvc?: SkyThemeService) {\n // Update theme property with SkyThemeService if it has not been set.\n if (!this._theme && themeSvc) {\n themeSvc.settingsChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n if (change.currentSettings.theme.name === 'modern') {\n this.theme = SkyDocsCodeExampleTheme.Modern;\n } else if (change.currentSettings.theme.name === 'default') {\n this.theme = SkyDocsCodeExampleTheme.Default;\n }\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport StackBlitzSDK from '@stackblitz/sdk';\n\nimport {\n OpenOptions as StackBlitzOpenOptions,\n Project as StackBlitzProject,\n} from '@stackblitz/sdk/typings/interfaces';\n\nimport { SkyDocsSourceCodeFile } from '../source-code/source-code-file';\n\nimport { SkyDocsCodeExampleModuleDependencies } from './code-example-module-dependencies';\n\nimport { SkyDocsCodeExampleTheme } from './code-example-theme';\n\nimport { SkyDocsCodeExample } from './code-example';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsCodeExamplesEditorService {\n public launchEditor(codeExample: SkyDocsCodeExample): void {\n const project = this.getPayload(codeExample);\n const options: StackBlitzOpenOptions = {};\n\n StackBlitzSDK.openProject(project, options);\n }\n\n private getPayload(codeExample: SkyDocsCodeExample): StackBlitzProject {\n const angularVersion = '^14.0.0';\n const skyuxVersion = '^7.0.0';\n\n const defaultDependencies: SkyDocsCodeExampleModuleDependencies = {\n '@angular/animations': angularVersion,\n '@angular/cdk': angularVersion,\n '@angular/common': angularVersion,\n '@angular/compiler': angularVersion,\n '@angular/core': angularVersion,\n '@angular/forms': angularVersion,\n '@angular/platform-browser': angularVersion,\n '@angular/platform-browser-dynamic': angularVersion,\n '@angular/router': angularVersion,\n '@skyux/animations': skyuxVersion,\n '@skyux/assets': skyuxVersion,\n '@skyux/config': skyuxVersion,\n '@skyux/core': skyuxVersion,\n '@skyux/errors': skyuxVersion,\n '@skyux/forms': skyuxVersion,\n '@skyux/http': skyuxVersion,\n '@skyux/i18n': skyuxVersion,\n '@skyux/indicators': skyuxVersion,\n '@skyux/layout': skyuxVersion,\n '@skyux/modals': skyuxVersion,\n '@skyux/popovers': skyuxVersion,\n '@skyux/router': skyuxVersion,\n '@skyux/theme': skyuxVersion,\n '@types/jasmine': '~4.0.3',\n // We must define Dragula deliberately so that StackBlitz runs NGCC against it.\n 'ng2-dragula': '2.1.1',\n rxjs: '^7',\n tslib: '^2.3.0',\n 'zone.js': '~0.11.4',\n };\n\n const mergedDependencies = Object.assign(\n {},\n defaultDependencies,\n codeExample.packageDependencies\n );\n\n // Ensure any @skyux dependencies list the correct version of SKY UX.\n // e.g. `\"@skyux/core\": \"*\"` --> `\"@skyux/core\": \"5.0.0\"`\n for (const packageName in mergedDependencies) {\n /*istanbul ignore else*/\n if (mergedDependencies.hasOwnProperty(packageName)) {\n const version = mergedDependencies[packageName];\n if (\n version === '*' &&\n /^(@blackbaud\\/skyux-lib-|@skyux)/.test(packageName)\n ) {\n mergedDependencies[packageName] = skyuxVersion;\n }\n }\n }\n\n const files = this.parseStackBlitzFiles(\n codeExample.sourceCode,\n mergedDependencies,\n codeExample.theme,\n codeExample.stylesheets\n );\n\n return {\n files,\n title: 'SKY UX Demo',\n description: 'SKY UX Demo',\n template: 'angular-cli',\n dependencies: mergedDependencies,\n settings: {\n compile: {\n clearConsole: false,\n },\n },\n };\n }\n\n private parseStackBlitzFiles(\n sourceCode: SkyDocsSourceCodeFile[],\n dependencies: SkyDocsCodeExampleModuleDependencies,\n theme: SkyDocsCodeExampleTheme,\n stylesheets: string[] = []\n ): {\n [path: string]: string;\n } {\n const srcPath = 'src/';\n const appPath = `${srcPath}app/`;\n\n const banner = `/**\n * This file is needed for the StackBlitz demo only.\n * It is automatically provided when using the Angular CLI.\n **/\n `;\n\n const moduleImportStatements: string[] = [\n `import {\\n NgModule\\n} from '@angular/core';`,\n `import {\\n FormsModule,\\n ReactiveFormsModule\\n} from '@angular/forms';`,\n `import {\\n BrowserAnimationsModule\\n} from '@angular/platform-browser/animations';`,\n `import {\\n RouterModule\\n} from '@angular/router';`,\n `import {\\n SkyAppLocaleProvider\\n} from '@skyux/i18n';`,\n `import {\\n SkyThemeService\\n} from '@skyux/theme';`,\n `import {\\n of as observableOf\\n} from 'rxjs';`,\n `import {\\n AppComponent\\n} from './app.component';`,\n ];\n\n const moduleImports: string[] = [\n 'BrowserAnimationsModule',\n 'FormsModule',\n 'ReactiveFormsModule',\n 'RouterModule.forRoot([])',\n ];\n\n const files: { [_: string]: string } = {};\n\n let appComponentTemplate = '';\n\n sourceCode.forEach((file) => {\n files[`${appPath}${file.fileName}`] = file.rawContents;\n\n // Setup module imports and component selectors.\n if (file.fileName.indexOf('.module.ts') > -1) {\n const moduleName = this.getModuleName(file.rawContents);\n const importPath = `./${this.getFilenameNoExtension(file.fileName)}`;\n\n const exportedComponent = this.getExportedComponent(file.rawContents);\n const componentSelector = this.getComponentSelector(\n exportedComponent,\n sourceCode\n );\n\n appComponentTemplate += `<${componentSelector}></${componentSelector}>`;\n\n moduleImports.push(moduleName);\n moduleImportStatements.push(\n `import {\\n ${moduleName}\\n} from '${importPath}';`\n );\n }\n });\n\n files[`${appPath}app.component.ts`] = `${banner}\nimport {\n Component,\n Renderer2\n} from '@angular/core';\n\nimport {\n SkyTheme,\n SkyThemeMode,\n SkyThemeService,\n SkyThemeSettings\n} from '@skyux/theme';\n\n@Component({\n selector: 'sky-demo-app',\n template: '${appComponentTemplate}'\n})\nexport class AppComponent {\n\n constructor(\n themeSvc: SkyThemeService,\n renderer: Renderer2\n ) {\n const themeSettings = new SkyThemeSettings(\n SkyTheme.presets['${\n theme === SkyDocsCodeExampleTheme.Modern ? 'modern' : 'default'\n }'],\n SkyThemeMode.presets.light\n );\n\n themeSvc.init(\n document.body,\n renderer,\n themeSettings\n );\n }\n\n}`;\n\n files[`${appPath}app.module.ts`] = `${moduleImportStatements.join('\\n\\n')}\n\n@NgModule({\n imports: [\n ${moduleImports.join(',\\n ')}\n ],\n declarations: [\n AppComponent\n ],\n bootstrap: [\n AppComponent\n ],\n providers: [\n SkyThemeService,\n {\n provide: SkyAppLocaleProvider,\n useValue: {\n getLocaleInfo: () => observableOf({\n locale: 'en-US'\n })\n }\n }\n ]\n})\nexport class AppModule { }\n`;\n\n files[`${srcPath}index.html`] = `<!--\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\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/5/assets/css/skyux-icons.min.css\" />\n\n<sky-demo-app>\n Loading...\n</sky-demo-app>`;\n\n files[`${srcPath}main.ts`] = `${banner}\nimport './polyfills';\n\nimport {\n platformBrowserDynamic\n} from '@angular/platform-browser-dynamic';\n\nimport {\n AppModule\n} from './app/app.module';\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n\n`;\n\n files[`${srcPath}polyfills.ts`] = `${banner}\nimport 'zone.js';\n`;\n\n files[`${srcPath}styles.scss`] = `@import '~@skyux/theme/css/sky';\n@import '~@skyux/theme/css/themes/modern/styles';\n\nbody {\n background-color: #fff;\n margin: 15px;\n}`;\n\n stylesheets.push('src/styles.scss');\n\n files['angular.json'] = `{\n \"projects\": {\n \"demo\": {\n \"architect\": {\n \"build\": {\n \"options\": {\n \"index\": \"src/index.html\",\n \"styles\": ${JSON.stringify(stylesheets)}\n }\n }\n }\n }\n }\n}`;\n\n files['package.json'] = JSON.stringify(\n {\n dependencies,\n },\n undefined,\n 2\n );\n\n files['tsconfig.json'] = `{\n \"compilerOptions\": {\n \"strict\": true,\n \"forceConsistentCasingInFileNames\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"target\": \"es2017\",\n \"module\": \"es2020\",\n \"moduleResolution\": \"node\",\n \"emitDecoratorMetadata\": true,\n \"experimentalDecorators\": true,\n \"importHelpers\": true,\n \"typeRoots\": [\"node_modules/@types\"],\n \"lib\": [\n \"es2020\",\n \"dom\"\n ]\n },\n \"angularCompilerOptions\": {\n \"fullTemplateTypeCheck\": true,\n \"strictInjectionParameters\": true,\n \"strictInputAccessModifiers\": true,\n \"strictTemplates\": true,\n \"enableIvy\": true\n }\n}`;\n\n return files;\n }\n\n private getModuleName(contents: string): string {\n return contents.split('export class ')[1].split(' {')[0];\n }\n\n private getFilenameNoExtension(fileName: string): string {\n const extension = fileName.split('.').pop();\n return fileName.replace(`.${extension}`, '');\n }\n\n private getExportedComponent(contents: string): string {\n const trimmed = contents.replace(/\\s/g, '');\n\n let fragment = trimmed.split('exports:[')[1];\n if (!fragment) {\n throw 'You must export a component from the code example module!';\n }\n\n fragment = fragment.split(']')[0];\n\n const components = fragment.split(',').filter((x) => x);\n\n if (components.length > 1) {\n throw (\n 'You may only export a single component from the code example module' +\n `(we found ${components.length}: ${components.join(', ')}).` +\n 'Is it possible to create a new code example with the extra components?'\n );\n }\n\n return components[0];\n }\n\n private getComponentSelector(\n componentClassName: string,\n sourceCode: SkyDocsSourceCodeFile[]\n ): string {\n const found = sourceCode.find((file) => {\n return file.rawContents.indexOf(`class ${componentClassName}`) > -1;\n });\n\n const trimmed = found.rawContents.replace(/\\s/g, '');\n\n return trimmed.split(`selector:'`)[1].split(`'`)[0];\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsSourceCodeProvider {\n public readonly sourceCode: any[];\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsSourceCodeFile } from './source-code-file';\n\nimport { SkyDocsSourceCodeProvider } from './source-code-provider';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsSourceCodeService {\n constructor(private sourceCodeProvider: SkyDocsSourceCodeProvider) {}\n\n public getSourceCode(path: string): SkyDocsSourceCodeFile[] {\n const sourceCode = this.sourceCodeProvider.sourceCode;\n if (!sourceCode || !sourceCode.length) {\n return [];\n }\n\n return sourceCode\n .filter((file) => file.filePath.indexOf(path) === 0)\n .map((file) => {\n // TODO: Remove decoding after migrating to Angular CLI. Code examples will not be encoded for SKY UX 5 libraries.\n // SKY UX 4 libraries will return rawContents encoded, while later libraries will\n // return rawContents decoded. Check if the contents need decoded before returning them.\n let decodedContents: string;\n try {\n decodedContents = decodeURIComponent(file.rawContents);\n if (decodedContents !== file.rawContents) {\n file.rawContents = decodedContents;\n }\n } catch (error) {\n // Pre-decoded contents may contain characters like '%' that would throw errors.\n // In these cases, pass along the original rawContents.\n }\n return file;\n });\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsSourceCodeService } from '../source-code/source-code.service';\n\nimport { SkyDocsCodeExamplesEditorService } from './code-examples-editor.service';\n\nimport { SkyDocsCodeExampleComponent } from './code-example.component';\n\nimport { SkyDocsCodeExampleModuleDependencies } from './code-example-module-dependencies';\n\nimport { SkyDocsCodeExample } from './code-example';\n\n/**\n * Wraps all code examples and handles their configuration and styles.\n * @example\n * ```\n * <sky-docs-code-examples\n * [packageDependencies]=\"{\n * \"foobar\": \"*\",\n * \"baz\": \"1.2.3\"\n * }\"\n * >\n * <sky-docs-code-example>\n * </sky-docs-code-example>\n * </sky-docs-code-examples>\n * ```\n */\n@Component({\n selector: 'sky-docs-code-examples',\n templateUrl: './code-examples.component.html',\n styleUrls: ['./code-examples.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCodeExamplesComponent implements AfterContentInit {\n /**\n * Any extra NPM package dependencies that are needed for the editor to run the code example.\n * @default {}\n */\n @Input()\n public set packageDependencies(value: SkyDocsCodeExampleModuleDependencies) {\n this._packageDependencies = value;\n }\n\n public get packageDependencies(): SkyDocsCodeExampleModuleDependencies {\n return this._packageDependencies || {};\n }\n\n @Input()\n public stylesheets: string[] = [];\n\n public codeExamples: SkyDocsCodeExample[] = [];\n\n @ContentChildren(SkyDocsCodeExampleComponent)\n private codeExampleComponents: QueryList<SkyDocsCodeExampleComponent>;\n\n private _packageDependencies: SkyDocsCodeExampleModuleDependencies;\n\n constructor(\n private editorService: SkyDocsCodeExamplesEditorService,\n private sourceCodeService: SkyDocsSourceCodeService\n ) {}\n\n public ngAfterContentInit(): void {\n this.codeExampleComponents.forEach((component) => {\n // Make sure the source code path ends in a slash, so that similarly named directories aren't included.\n let sourceCodePath = component.sourceCodePath;\n if (sourceCodePath.slice(-1) !== '/') {\n sourceCodePath += '/';\n }\n\n const sourceCode = this.sourceCodeService.getSourceCode(sourceCodePath);\n\n if (!sourceCode.length) {\n console.warn(\n `Source code not found at location \"${sourceCodePath}\" for \"${component.heading}\"!`\n );\n return;\n }\n\n this.codeExamples.push({\n heading: component.heading,\n packageDependencies: this.packageDependencies,\n sourceCode,\n stylesheets: this.stylesheets,\n theme: component.theme,\n });\n });\n }\n\n public launchEditor(codeExample: SkyDocsCodeExample): void {\n this.editorService.launchEditor(codeExample);\n }\n\n /**\n * Returns a string representing one of PrismJS's supported language types.\n * See: https://prismjs.com/#supported-languages\n */\n public parseCodeLanguageType(fileName: string): string {\n const extension = fileName.split('.').pop().toLowerCase();\n\n switch (extension) {\n case 'ts':\n return 'typescript';\n case 'html':\n return 'markup';\n default:\n return extension;\n }\n }\n}\n","<div *ngIf=\"codeExamples && codeExamples.length\" class=\"sky-docs-code-examples\">\n <sky-repeater\n *ngIf=\"codeExamples.length > 1; else singleCodeExample\"\n expandMode=\"multiple\"\n >\n <sky-repeater-item\n *ngFor=\"let codeExample of codeExamples\"\n [isExpanded]=\"false\"\n >\n <sky-repeater-item-title>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleHeaderTemplate;\n context: { $implicit: codeExample }\n \"\n >\n </ng-container>\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleTemplate;\n context: { $implicit: codeExample }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n</div>\n\n<ng-template>\n <ng-content select=\"sky-docs-code-example\"> </ng-content>\n</ng-template>\n\n<ng-template let-item #codeExampleTemplate>\n <div class=\"sky-docs-code-example-wrapper\">\n <sky-vertical-tabset *ngIf=\"item.sourceCode && item.sourceCode.length\">\n <sky-vertical-tab\n *ngFor=\"let file of item.sourceCode; let i = index\"\n [active]=\"i === 0\"\n [tabHeading]=\"file.fileName\"\n >\n <sky-code-block\n [code]=\"file.rawContents\"\n [languageType]=\"parseCodeLanguageType(file.fileName)\"\n >\n </sky-code-block>\n </sky-vertical-tab>\n </sky-vertical-tabset>\n </div>\n</ng-template>\n\n<ng-template #singleCodeExample>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleHeaderTemplate;\n context: { $implicit: codeExamples[0] }\n \"\n >\n </ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleTemplate;\n context: { $implicit: codeExamples[0] }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template let-codeExample #codeExampleHeaderTemplate>\n <div class=\"sky-docs-code-example-header\">\n <div class=\"sky-docs-code-example-header-title sky-emphasized\">\n {{ codeExample.heading }}\n </div>\n <div class=\"sky-docs-code-example-header-controls\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"launchEditor(codeExample); $event.stopPropagation()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n {{ 'sky-docs-code-example-launch-button-label' | skyLibResources }}\n </button>\n </div>\n </div>\n</ng-template>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyCodeBlockModule } from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyRepeaterModule } from '@skyux/lists';\n\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SkyDocsCodeExampleComponent } from './code-example.component';\n\nimport { SkyDocsCodeExamplesComponent } from './code-examples.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyCodeBlockModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyRepeaterModule,\n SkyVerticalTabsetModule,\n ],\n declarations: [SkyDocsCodeExampleComponent, SkyDocsCodeExamplesComponent],\n exports: [SkyDocsCodeExampleComponent, SkyDocsCodeExamplesComponent],\n})\nexport class SkyDocsCodeExamplesModule {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ReplaySubject } from 'rxjs';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\n/**\n * Renders a checkbox control within the control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel-checkbox\n * label=\"Show title\"\n * [checked]=\"true\"\n * [propertyName]=\"showTitle\"\n * >\n * </sky-docs-demo-control-panel-checkbox>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel-checkbox',\n templateUrl: './demo-control-panel-checkbox.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelCheckboxComponent\n implements OnInit, OnDestroy\n{\n /**\n * The checked status of the checkbox.\n * @default false\n */\n @Input()\n public set checked(value: boolean) {\n if (value !== undefined && this._checked === undefined) {\n this.initialState.checked = value;\n }\n\n this._checked = value;\n }\n\n public get checked(): boolean {\n return this._checked || false;\n }\n\n /**\n * Indicates whether to disable the checkbox.\n */\n @Input()\n public disabled: boolean = false;\n\n /**\n * The text label of the checkbox.\n * @required\n */\n @Input()\n public label: string;\n\n /**\n * The name of the component property that is affected by this control.\n * @required\n */\n @Input()\n public propertyName: string;\n\n public selectionChange = new ReplaySubject<SkyDocsDemoControlPanelChange>();\n\n private initialState: {\n checked?: boolean;\n } = {};\n\n private _checked: boolean;\n\n constructor(private changeDetector: ChangeDetectorRef) {}\n\n public ngOnInit(): void {\n setTimeout(() => {\n this.initialState.checked = this.checked;\n this.notifyChange();\n });\n }\n\n public ngOnDestroy(): void {\n this.selectionChange.complete();\n }\n\n public onModelChange(): void {\n this.notifyChange();\n }\n\n public resetState(): void {\n if (this.initialState.checked !== this.checked) {\n this.checked = !!this.initialState.checked;\n this.notifyChange();\n this.changeDetector.markForCheck();\n }\n }\n\n private notifyChange(): void {\n this.selectionChange.next({\n [this.propertyName]: this.checked,\n });\n }\n}\n","<sky-checkbox\n [disabled]=\"disabled\"\n [name]=\"propertyName\"\n [(ngModel)]=\"checked\"\n (change)=\"onModelChange()\"\n>\n <sky-checkbox-label>{{ label }}</sky-checkbox-label>\n</sky-checkbox>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n OnDestroy,\n} from '@angular/core';\n\nimport { ReplaySubject } from 'rxjs';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\nimport { SkyDocsDemoControlPanelRadioChoice } from './demo-control-panel-radio-choice';\n\n/**\n * Renders a radio control group.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel-radio-group\n * [choices]=\"[\n * { 'label': 'Red', value: '#f00' },\n * { 'label': 'Green', value: '#0f0' },\n * { 'label': 'Blue', value: '#00f' }\n * ]\"\n * heading=\"Choose a color\"\n * initialValue=\"Red\"\n * propertyName=\"color\"\n * >\n * </sky-docs-demo-control-panel-radio-group>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel-radio-group',\n templateUrl: './demo-control-panel-radio-group.component.html',\n styleUrls: ['./demo-control-panel-radio-group.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelRadioGroupComponent\n implements OnInit, OnDestroy\n{\n /**\n * The possible choices to be represented by radio controls.\n * @required\n */\n @Input()\n public choices: SkyDocsDemoControlPanelRadioChoice[];\n\n /**\n * Indicates whether to disable the radio group.\n */\n @Input()\n public disabled: boolean = false;\n\n /**\n * The heading text to appear above the radio group.\n */\n @Input()\n public heading: string;\n\n /**\n * The initial value of the radio group.\n */\n @Input()\n public initialValue: any;\n\n /**\n * The name of the component property that is affected by this radio group.\n * @required\n */\n @Input()\n public propertyName: string;\n\n /**\n * @internal\n */\n public selectionChange = new ReplaySubject<SkyDocsDemoControlPanelChange>();\n\n /**\n * @internal\n */\n public value: any;\n\n constructor(private changeDetector: ChangeDetectorRef) {}\n\n public ngOnInit(): void {\n this.value = this.cloneValue(this.initialValue);\n this.#notifyChange();\n }\n\n public ngOnDestroy(): void {\n this.selectionChange.complete();\n }\n\n public onModelChange(value: any): void {\n this.value = value;\n this.#notifyChange();\n }\n\n public resetValue(): void {\n this.value = this.cloneValue(this.initialValue);\n this.#notifyChange();\n this.changeDetector.markForCheck();\n }\n\n private cloneValue(value: any): any {\n if (typeof value === 'object') {\n return JSON.parse(JSON.stringify(value));\n }\n\n return value;\n }\n\n #notifyChange(): void {\n this.selectionChange.next({\n [this.propertyName]: this.value,\n });\n }\n}\n","<div class=\"sky-demo-control-panel-radio-group\">\n <strong *ngIf=\"heading\">{{ heading }}</strong>\n <sky-radio-group\n [disabled]=\"disabled\"\n [name]=\"propertyName\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n >\n <ul class=\"sky-list-unstyled\">\n <li *ngFor=\"let choice of choices\">\n <sky-radio [value]=\"choice.value\">\n <sky-radio-label>{{ choice.label }}</sky-radio-label>\n </sky-radio>\n </li>\n </ul>\n </sky-radio-group>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n OnDestroy,\n Output,\n QueryList,\n} from '@angular/core';\n\nimport { merge, Subject, Subscription } from 'rxjs';\n\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDocsDemoControlPanelCheckboxComponent } from './demo-control-panel-checkbox.component';\n\nimport { SkyDocsDemoControlPanelRadioGroupComponent } from './demo-control-panel-radio-group.component';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\n/**\n * Handles the appearance and configuration of the behavior demo control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel\n * (selectionChange)=\"onSelectionChange($event)\"\n * >\n * Control panel content here.\n * </sky-docs-demo-control-panel>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel',\n templateUrl: './demo-control-panel.component.html',\n styleUrls: ['./demo-control-panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelComponent\n implements OnDestroy, AfterContentInit\n{\n /**\n * Fires when the user clicks the reset button.\n */\n @Output()\n /*eslint-disable-next-line @angular-eslint/no-output-native */\n public reset = new EventEmitter<void>();\n\n /**\n * Fires when a user makes a selection from one of the controls in the panel.\n */\n @Output()\n public selectionChange = new EventEmitter<SkyDocsDemoControlPanelChange>();\n\n @ContentChildren(SkyDocsDemoControlPanelRadioGroupComponent, {\n descendants: true,\n })\n private radioGroups: QueryList<SkyDocsDemoControlPanelRadioGroupComponent>;\n\n @ContentChildren(SkyDocsDemoControlPanelCheckboxComponent, {\n descendants: true,\n })\n private checkboxes: QueryList<SkyDocsDemoControlPanelCheckboxComponent>;\n\n private eventListeners: Subscription;\n private ngUnsubscribe = new Subject<void>();\n\n public ngAfterContentInit(): void {\n this.addEventListeners();\n\n merge(this.checkboxes.changes, this.radioGroups.changes)\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.addEventListeners();\n });\n }\n\n public ngOnDestroy(): void {\n this.reset.complete();\n this.selectionChange.complete();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public onResetButtonClick(): void {\n this.radioGroups.forEach((radioGroup) => {\n radioGroup.resetValue();\n });\n\n this.checkboxes.forEach((checkbox) => {\n checkbox.resetState();\n });\n\n this.reset.emit();\n }\n\n private addEventListeners(): void {\n if (this.eventListeners) {\n this.eventListeners.unsubscribe();\n }\n\n this.eventListeners = merge(\n ...this.checkboxes.map((c) => c.selectionChange),\n ...this.radioGroups.map((c) => c.selectionChange)\n )\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n this.selectionChange.next(change);\n });\n }\n}\n","<div class=\"sky-docs-demo-control-panel\">\n <div class=\"sky-docs-demo-control-panel-row sky-rounded-corners\">\n <div\n class=\"sky-docs-demo-control-panel-column sky-docs-demo-control-panel-sections-column\"\n >\n <ng-content select=\"sky-docs-demo-control-panel-section\"></ng-content>\n </div>\n\n <div\n class=\"sky-docs-demo-control-panel-column sky-docs-demo-control-panel-button-column\"\n >\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.data-test-selector]=\"'sky-docs-demo-control-panel-reset-button'\"\n (click)=\"onResetButtonClick()\"\n >\n {{ 'sky-docs-demo-control-panel-reset-button-label' | skyLibResources }}\n </button>\n </div>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsDemoContentAlignment } from './demo-content-alignment';\n\nimport { SkyDocsDemoControlPanelComponent } from './demo-control-panel.component';\n\n/**\n * Wraps all behavior demo components and handles the configuration and appearance of the behavior demo.\n * @example\n * ```markup\n * <sky-docs-demo>\n * Demo content here.\n * </sky-docs-demo>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo',\n templateUrl: './demo.component.html',\n styleUrls: ['./demo.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoComponent {\n /**\n * Specifies the horizontal alignment of the demo contents.\n * @default 'left'\n */\n @Input()\n public set alignContents(value: SkyDocsDemoContentAlignment) {\n this._alignContents = value;\n }\n\n public get alignContents(): SkyDocsDemoContentAlignment {\n return this._alignContents || 'left';\n }\n\n /**\n * Custom heading text for the demo.\n */\n @Input()\n public heading: string;\n\n public get hasOptions(): boolean {\n return this.controlPanels && this.controlPanels.length > 0;\n }\n\n @ContentChildren(SkyDocsDemoControlPanelComponent, { read: ElementRef })\n private controlPanels: QueryList<SkyDocsDemoControlPanelComponent>;\n\n public get toggleOptionsButtonIcon(): string {\n return this.areOptionsVisible ? 'chevron-up' : 'chevron-down';\n }\n\n public areOptionsVisible = false;\n\n private _alignContents: SkyDocsDemoContentAlignment;\n\n public onToggleOptionsButtonClick(): void {\n this.areOptionsVisible = !this.areOptionsVisible;\n }\n}\n","<div class=\"sky-docs-demo\">\n <div aria-level=\"3\" class=\"sky-docs-demo-heading\" role=\"heading\">\n <span\n class=\"sky-section-heading\"\n [attr.data-test-selector]=\"'sky-docs-demo-heading-text'\"\n >\n {{ heading || ('sky-docs-demo-heading' | skyLibResources) }}\n </span>\n\n <div class=\"sky-docs-demo-control-panel-wrapper\">\n <div class=\"sky-docs-demo-control-panel-wrapper-header\">\n <button\n *ngIf=\"hasOptions\"\n class=\"sky-btn\"\n type=\"button\"\n [attr.data-test-selector]=\"'sky-docs-demo-heading-button'\"\n [ngClass]=\"{\n 'sky-docs-demo-heading-btn-open': areOptionsVisible\n }\"\n (click)=\"onToggleOptionsButtonClick()\"\n >\n <sky-icon [icon]=\"toggleOptionsButtonIcon\"></sky-icon>\n <ng-container *ngIf=\"areOptionsVisible\">\n {{ 'sky-docs-demo-toggle-button-off' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"!areOptionsVisible\">\n {{ 'sky-docs-demo-toggle-button-on' | skyLibResources }}\n </ng-container>\n </button>\n </div>\n <div class=\"sky-docs-demo-control-panel-wrapper-body\">\n <ng-container *ngIf=\"areOptionsVisible\">\n <ng-container *ngTemplateOutlet=\"controlPanels\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n\n <div\n class=\"sky-docs-demo-viewport\"\n [ngClass]=\"'sky-docs-demo-viewport-align-' + alignContents\"\n >\n <div class=\"sky-docs-demo-viewport-gutter\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<ng-template #controlPanels>\n <ng-content select=\"sky-docs-demo-control-panel\"></ng-content>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Renders a section within the control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel>\n * <sky-docs-demo-control-panel-section>\n * Section content here.\n * </sky-docs-demo-control-panel-section>\n * </sky-docs-demo-control-panel>\n * ```\n */\n\n@Component({\n selector: 'sky-docs-demo-control-panel-section',\n templateUrl: './demo-control-panel-section.component.html',\n styleUrls: ['./demo-control-panel-section.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelSectionComponent {}\n","<div class=\"sky-demo-control-panel-section\">\n <ng-content select=\"sky-docs-demo-control-panel-radio-group\"></ng-content>\n <ng-content select=\"sky-docs-demo-control-panel-checkbox\"></ng-content>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SkyDocsDemoComponent } from './demo.component';\n\nimport { SkyDocsDemoControlPanelCheckboxComponent } from './demo-control-panel-checkbox.component';\n\nimport { SkyDocsDemoControlPanelComponent } from './demo-control-panel.component';\n\nimport { SkyDocsDemoControlPanelRadioGroupComponent } from './demo-control-panel-radio-group.component';\n\nimport { SkyDocsDemoControlPanelSectionComponent } from './demo-control-panel-section.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SkyCheckboxModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyRadioModule,\n SkyThemeModule,\n ],\n declarations: [\n SkyDocsDemoComponent,\n SkyDocsDemoControlPanelCheckboxComponent,\n SkyDocsDemoControlPanelComponent,\n SkyDocsDemoControlPanelRadioGroupComponent,\n SkyDocsDemoControlPanelSectionComponent,\n ],\n exports: [\n SkyDocsDemoComponent,\n SkyDocsDemoControlPanelCheckboxComponent,\n SkyDocsDemoControlPanelComponent,\n SkyDocsDemoControlPanelRadioGroupComponent,\n SkyDocsDemoControlPanelSectionComponent,\n ],\n})\nexport class SkyDocsDemoModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-heading-anchor',\n templateUrl: './heading-anchor.component.html',\n styleUrls: ['./heading-anchor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsHeadingAnchorComponent {\n @Input()\n public anchorId: string;\n\n @Input()\n public headingLevel = '2';\n}\n","<div\n class=\"sky-docs-heading-anchor\"\n role=\"heading\"\n [ngClass]=\"'sky-docs-tools-heading-anchor-h' + headingLevel\"\n [attr.aria-level]=\"headingLevel\"\n [attr.id]=\"anchorId || null\"\n>\n <ng-content></ng-content>\n <a\n *ngIf=\"anchorId\"\n aria-hidden=\"true\"\n class=\"sky-docs-heading-anchor\"\n queryParamsHandling=\"merge\"\n [fragment]=\"anchorId\"\n [routerLink]=\"[]\"\n >\n <sky-icon class=\"sky-docs-heading-anchor-icon\" icon=\"link\"></sky-icon>\n </a>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { RouterModule } from '@angular/router';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n@NgModule({\n declarations: [SkyDocsHeadingAnchorComponent],\n imports: [CommonModule, RouterModule, SkyIconModule],\n exports: [SkyDocsHeadingAnchorComponent],\n})\nexport class SkyDocsHeadingAnchorModule {}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { marked } from 'marked';\n\n@Pipe({\n name: 'skyDocsMarkdown',\n})\nexport class SkyDocsMarkdownPipe implements PipeTransform {\n public transform(markdown: string): string {\n if (!markdown) {\n return '';\n }\n\n return marked(markdown);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsMarkdownPipe } from './markdown.pipe';\n\n@NgModule({\n declarations: [SkyDocsMarkdownPipe],\n providers: [SkyDocsMarkdownPipe],\n exports: [SkyDocsMarkdownPipe],\n})\nexport class SkyDocsMarkdownModule {}\n","export class SkyDocsToolsOptions {\n public gitRepoUrl: string;\n\n public packageName: string;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n Optional,\n} from '@angular/core';\n\nimport { SkyDocsToolsOptions } from '../shared/docs-tools-options';\n\ntype ExternalLink = { label: string; url: string };\n\n@Component({\n selector: 'sky-docs-module-info',\n templateUrl: './module-info.component.html',\n styleUrls: ['./module-info.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsModuleInfoComponent {\n @Input()\n public set gitRepoUrl(value: string | undefined) {\n this.gitRepoUrlOrDefault = value || this.#options?.gitRepoUrl;\n this.#updateExternalLinks();\n }\n\n @Input()\n public moduleName: string | undefined;\n\n @Input()\n public set packageName(value: string | undefined) {\n this.packageNameOrDefault = value || this.#options?.packageName;\n this.#updateInstallationCommand();\n this.#updateExternalLinks();\n }\n\n @Input()\n public set packageUrl(value: string | undefined) {\n this.#packageUrl = value;\n this.#updateExternalLinks();\n }\n\n public gitRepoUrlOrDefault: string | undefined;\n\n public packageNameOrDefault: string | undefined;\n\n public externalLinks: ExternalLink[] | undefined;\n\n public installationCommand: string | undefined;\n\n #options: SkyDocsToolsOptions | undefined;\n\n #packageUrl: string | undefined;\n\n constructor(@Optional() options?: SkyDocsToolsOptions) {\n if (options) {\n this.#options = options;\n this.gitRepoUrl = options.gitRepoUrl;\n this.packageName = options.packageName;\n }\n }\n\n #updateExternalLinks(): void {\n const externalLinks: ExternalLink[] = [];\n\n if (this.packageNameOrDefault) {\n externalLinks.push({\n url:\n this.#packageUrl ||\n `https://npmjs.org/package/${this.packageNameOrDefault}`,\n label: 'View in NPM',\n });\n }\n\n if (this.gitRepoUrlOrDefault) {\n externalLinks.push({\n url: this.gitRepoUrlOrDefault,\n label: 'View in GitHub',\n });\n }\n\n this.externalLinks = externalLinks;\n }\n\n #updateInstallationCommand(): void {\n this.installationCommand = this.packageNameOrDefault\n ? `npm install --save-exact ${this.packageNameOrDefault}`\n : '';\n }\n}\n","<div class=\"sky-docs-module-info\">\n <sky-description-list mode=\"vertical\">\n <sky-description-list-content>\n <sky-description-list-term> Defined in </sky-description-list-term>\n <sky-description-list-description>\n <sky-code class=\"sky-docs-module-info-module-name\">{{\n moduleName\n }}</sky-code>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"packageNameOrDefault\">\n <sky-description-list-term>NPM package</sky-description-list-term>\n <sky-description-list-description>\n <span class=\"sky-docs-module-info-package-name\"\n ><sky-code>{{ packageNameOrDefault }}</sky-code></span\n >\n <ng-container *ngFor=\"let externalLink of externalLinks; let i = index\">\n <a\n class=\"sky-docs-module-info-external-link\"\n [href]=\"externalLink.url\"\n >{{ externalLink.label }}</a\n >\n <span *ngIf=\"i < externalLinks.length - 1\"> | </span>\n </ng-container>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"installationCommand\">\n <sky-description-list-term>\n Installation\n <sky-help-inline\n class=\"sky-control-help\"\n [skyPopover]=\"installationCommandPopover\"\n skyPopoverPlacement=\"right\"\n >\n </sky-help-inline>\n </sky-description-list-term>\n <sky-description-list-description>\n <sky-popover #installationCommandPopover>\n To use this module, you must install peer dependencies along with its\n package. Also, after you install the package, you must add the module\n as an export in your SPA's main module to make exports available to\n your SPA.\n </sky-popover>\n <div class=\"sky-docs-module-info-installation-command\">\n <span\n class=\"sky-docs-module-info-installation-command-code\"\n #copyTarget\n >\n <sky-code>{{ installationCommand }}</sky-code>\n </span>\n <sky-copy-to-clipboard\n buttonText=\"Copy\"\n [copyTarget]=\"copyTarget\"\n ></sky-copy-to-clipboard>\n </div>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n\n <div class=\"sky-docs-module-info-additional-content\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyClipboardModule } from '@blackbaud/skyux-lib-clipboard';\n\nimport { SkyCodeModule } from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyHelpInlineModule } from '@skyux/indicators';\n\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\nimport { SkyPopoverModule } from '@skyux/popovers';\n\nimport { SkyDocsModuleInfoComponent } from './module-info.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyCodeModule,\n SkyClipboardModule,\n SkyDescriptionListModule,\n SkyHelpInlineModule,\n SkyPopoverModule,\n ],\n declarations: [SkyDocsModuleInfoComponent],\n exports: [SkyDocsModuleInfoComponent],\n})\nexport class SkyDocsModuleInfoModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'sky-docs-safe-html',\n templateUrl: './safe-html.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsSafeHtmlComponent {\n @Input()\n public innerHtml: string;\n\n constructor(private domSanitizer: DomSanitizer) {}\n\n public getTrustedHtml(content: string): SafeHtml {\n return this.domSanitizer.bypassSecurityTrustHtml(content);\n }\n}\n","<div class=\"sky-docs-safe-html\" [innerHtml]=\"getTrustedHtml(innerHtml)\"></div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyDocsSafeHtmlComponent } from './safe-html.component';\n\n@NgModule({\n declarations: [SkyDocsSafeHtmlComponent],\n imports: [CommonModule],\n exports: [SkyDocsSafeHtmlComponent],\n})\nexport class SkyDocsSafeHtmlModule {}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsParameterDefinition } from './parameter-definition';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinition } from './type-definition';\n\nimport { SkyDocsTypeParameterDefinition } from './type-parameter-definition';\n\nimport { SkyDocsInterfacePropertyDefinition } from './interface-property-definition';\n\ninterface GetFormattedTypeConfig {\n escapeSpecialCharacters: boolean;\n}\n\n/**\n * Formats type definitions into HTML-compatible strings.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsTypeDefinitionsFormatService {\n /**\n * Returns an HTML-formatted representation of the provided interface config.\n */\n public getInterfaceSourceCode(\n definition: SkyDocsInterfaceDefinition\n ): string {\n const typeParameters = this.getFormattedTypeParameters(\n definition.typeParameters\n );\n const config = {\n escapeSpecialCharacters: false,\n };\n\n let signature: string = `interface ${definition.name}${typeParameters} {`;\n signature += this.getFormattedInterfaceProperties(definition, config);\n signature += '\\n}';\n\n return signature;\n }\n\n /**\n * Returns an HTML-formatted representation of the provided method config.\n */\n public getMethodSourceCode(definition: SkyDocsClassMethodDefinition): string {\n const config = {\n escapeSpecialCharacters: false,\n };\n\n const typeArguments = this.getFormattedTypeArguments(\n definition.type,\n config\n );\n const callSignature = definition.type.callSignature;\n const returnType = this.getFormattedType(callSignature.returnType, config);\n\n let params: string = '';\n if (callSignature.parameters) {\n params += callSignature.parameters\n .map((p) => this.getFormattedParameterName(p, config))\n .join(', ');\n }\n\n return `public ${definition.isStatic ? 'static ' : ''}${\n definition.name\n }${typeArguments}(${params}): ${returnType}`;\n }\n\n /**\n * Returns an HTML-formatted representation of the provided type alias config.\n */\n public getTypeAliasSourceCode(\n definition: SkyDocsTypeAliasDefinition\n ): string {\n const config = {\n escapeSpecialCharacters: false,\n };\n\n const typeParameters = this.getFormattedTypeParameters(\n definition.typeParameters\n );\n\n let signature = `type ${definition.name}${typeParameters} = `;\n\n if (definition.type.callSignature) {\n signature += this.getFormattedCallSignature(\n definition.type.callSignature,\n {\n escapeSpecialCharacters: false,\n }\n );\n } else if (definition.type.indexSignature) {\n const indexSignature = definition.type.indexSignature;\n const type = this.getFormattedType(indexSignature.type, {\n escapeSpecialCharacters: false,\n });\n signature += `{\\n [${indexSignature.key.name}: string]: ${type};\\n}`;\n } else {\n /*istanbul ignore else */\n if (definition.type.type === 'union') {\n signature += this.getFormattedUnion(definition.type, config);\n }\n }\n\n return signature;\n }\n\n /**\n * Returns a formatted string representing a parameter's name and value. For example: `'foo: string'`.\n */\n public getFormattedParameterName(\n parameter: SkyDocsParameterDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n const optionalMarker = parameter.isOptional ? '?' : '';\n const parameterType = this.getFormattedType(parameter.type, config);\n\n let signature = `${parameter.name}${optionalMarker}: ${parameterType}`;\n if (config.escapeSpecialCharacters) {\n signature = this.escapeSpecialCharacters(signature);\n }\n\n return signature;\n }\n\n /**\n * Returns a formatted string representing a property (or method's) name and value. For example: `'public foo: string'`.\n */\n public getFormattedPropertyName(\n property: SkyDocsClassPropertyDefinition\n ): string {\n let signature = '';\n\n if (property.decorator?.name) {\n signature += `@${property.decorator.name}()<br>`;\n }\n\n const indexSignature = property.type?.indexSignature;\n let name: string;\n if (indexSignature) {\n name = `[${indexSignature.key.name}: ${this.getFormattedType(\n indexSignature.key.type\n )}]`;\n } else {\n name = property.name;\n }\n\n if (property.deprecationWarning !== undefined) {\n signature += `<strike>${name}</strike>`;\n } else {\n signature += name;\n }\n\n if (\n property.decorator?.name !== 'Output' &&\n property.isOptional &&\n !indexSignature\n ) {\n signature += '?';\n }\n\n if (indexSignature) {\n signature += `: ${this.getFormattedType(indexSignature.type)}`;\n } else if (property.type) {\n signature += `: ${this.getFormattedType(property.type)}`;\n }\n\n return signature;\n }\n\n /**\n * Returns an HTML-formatted method name to be used on the properties table.\n */\n public getFormattedMethodName(\n definition: SkyDocsClassMethodDefinition\n ): string {\n let formatted = '';\n\n if (definition.isStatic) {\n formatted += `${definition.parentName}.`;\n }\n\n if (definition.deprecationWarning !== undefined) {\n formatted = `<strike>${formatted}${definition.name}</strike>`;\n } else {\n formatted += definition.name;\n }\n\n return `${formatted}()`;\n }\n\n /**\n * Returns a formatted string representing the provided type.\n */\n public getFormattedType(\n type: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n let formatted = 'any';\n\n if (!type) {\n return formatted;\n }\n\n if (type.callSignature) {\n let formattedSignature = this.getFormattedCallSignature(\n type.callSignature,\n config\n );\n\n if (type.type === 'array') {\n formattedSignature = `(${formattedSignature})[]`;\n }\n return formattedSignature;\n }\n\n if (type.unionTypes) {\n return this.getFormattedUnion(type, config);\n }\n\n if (type.name !== null && type.name !== undefined) {\n formatted = `${type.name}`;\n }\n\n if (type.typeArguments) {\n formatted += this.getFormattedTypeArguments(type, config);\n }\n\n if (type.type === 'array') {\n formatted += '[]';\n }\n\n if (type.type === 'literal' && typeof type.name === 'string') {\n formatted = `'${formatted}'`;\n }\n\n if (type.typeLiteral) {\n const formattedTypeLiteral = this.getFormattedInterfaceProperties(\n type.typeLiteral,\n config\n )\n .replace(/\\n/g, ' ')\n .replace(/\\s\\s+/g, ' ');\n formatted = `{${formattedTypeLiteral} }`;\n }\n\n if (config.escapeSpecialCharacters) {\n return this.escapeSpecialCharacters(formatted);\n }\n\n return formatted;\n }\n\n public escapeSpecialCharacters(value: string): string {\n return value.replace(/</g, '<').replace(/>/g, '>');\n }\n\n private getFormattedCallSignature(\n callSignature: SkyDocsCallSignatureDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n const returnType = this.getFormattedType(callSignature.returnType, config);\n\n if (!callSignature.parameters) {\n return `() => ${returnType}`;\n }\n\n const formattedParams = callSignature.parameters\n .map((p) => this.getFormattedParameterName(p, config))\n .join(', ');\n\n return `(${formattedParams}) => ${returnType}`;\n }\n\n private getFormattedUnion(\n typeConfig: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig\n ): string {\n return typeConfig.unionTypes\n .map((t) => {\n return this.getFormattedType(t, config);\n })\n .join(' | ');\n }\n\n /**\n * Parse any type arguments e.g. `<T, F>`.\n */\n private getFormattedTypeArguments(\n typeConfig: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig\n ): string {\n if (!typeConfig.typeArguments) {\n return '';\n }\n\n const typeArguments = typeConfig.typeArguments.map((typeArgument) => {\n if (typeArgument.type === 'array') {\n return `${typeArgument.name}[]`;\n }\n\n if (typeArgument.unionTypes) {\n return this.getFormattedUnion(typeArgument, config);\n }\n\n return typeArgument.name;\n });\n\n return `<${typeArguments.join(', ')}>`;\n }\n\n private getFormattedTypeParameters(\n typeParameters: SkyDocsTypeParameterDefinition[]\n ): string {\n if (!typeParameters) {\n return '';\n }\n\n const formatted = typeParameters.map((typeParameter) => {\n let result = typeParameter.name;\n if (typeParameter.type && typeParameter.type.type === 'reference') {\n result += ` extends ${typeParameter.type.name}`;\n }\n\n return result;\n });\n\n return `<${formatted.join(', ')}>`;\n }\n\n private getFormattedInterfaceProperties(\n definition: {\n properties?: SkyDocsInterfacePropertyDefinition[];\n },\n config?: GetFormattedTypeConfig\n ): string {\n let signature: string = '';\n\n definition.properties.forEach((property) => {\n const indexSignature = property.type.indexSignature;\n const optionalIndicator =\n property.isOptional && !indexSignature ? '?' : '';\n const propertyType = this.getFormattedType(property.type, config);\n\n let name: string;\n if (indexSignature) {\n name = `[${indexSignature.key.name}: string]`;\n } else {\n name = property.name;\n }\n\n signature += `\\n ${name}${optionalIndicator}: ${propertyType};`;\n });\n\n return signature;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { TypeDocEntry } from './typedoc-types';\n\n@Injectable()\nexport class SkyDocsTypeDefinitionsProvider {\n public readonly anchorIds: { [_: string]: string };\n\n public readonly typeDefinitions: TypeDocEntry[];\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsAnchorLinkConfig } from './anchor-link-service-config';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\n/**\n * Finds any type name that is NOT surrounded by alpha-numeric (and '>', '<', '.') characters.\n * (This is to avoid matching types that share similar words, such as `Foo` and `FooUser`.)\n * Notes:\n * - If the type name is surrounded by angle brackets, then it has already been processed as a link.\n * - If the type name starts with a period '.', then it is a sub property of an enumeration, etc. and should not be processed as a link.\n * - If the type name ends with a period followed immediately by any word character, then it is a method or property (Foo.bar).\n * Only the type name should be processed as a link.\n */\nfunction createRegex(keyword: string): RegExp {\n return new RegExp(\n `(^|[^a-zA-Z0-9>.[/])(${keyword})(\\\\.\\\\w+)?(?=[^a-zA-Z0-9<]+|$)`,\n 'g'\n );\n}\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsAnchorLinkService {\n private anchorIds: { [_: string]: string };\n\n constructor(typeDefinitionsProvider: SkyDocsTypeDefinitionsProvider) {\n this.anchorIds = typeDefinitionsProvider.anchorIds;\n }\n\n /**\n * Formats known type names with `<code>` tags and wraps them with anchor tags, linking to the appropriate type.\n * If the content is already contained within a `<code>` tag, set `codeFormat = false` to prevent extra `<code>` tags from being added.\n */\n public applyTypeAnchorLinks(\n content: string,\n config?: SkyDocsAnchorLinkConfig\n ): string {\n if (!this.anchorIds || !content) {\n return content;\n }\n\n // Set default for code formatting.\n if (!config) {\n config = {\n applyCodeFormatting: true,\n };\n }\n\n content = this.removeDoubleSquareBrackets(content);\n\n Object.keys(this.anchorIds).forEach((typeName) => {\n content = this.removeBackticks(typeName, content);\n\n let matches: RegExpExecArray;\n let counter = 0;\n const max = 100;\n\n const regex = createRegex(typeName);\n\n do {\n matches = regex.exec(content);\n if (matches) {\n const anchorId = this.anchorIds[typeName];\n const anchorHtml =\n '<a class=\"sky-docs-anchor-link\" href=\"#' +\n anchorId +\n '\">' +\n typeName +\n '</a>';\n\n // Group 3 of the regex pattern captures type properties like Foo.bar.\n // If these are found, they do not need hyperlinked, but add them to the encapsulating code tag.\n const typeProperty = matches[3] ? matches[3] : '';\n\n let replacement;\n if (config.applyCodeFormatting) {\n replacement = '<code>' + anchorHtml + typeProperty + '</code>';\n } else {\n replacement = anchorHtml + typeProperty;\n }\n\n // Regex Positive lookbehinds aren't supported in IE11 and Safari, so we have to check if the match has a starting extra character\n // (usually whitespace \" Foo\"), and then modify the starting/ending indexes to account for the extra character.\n const isMatchExact =\n matches[0].substr(0, typeName.length) === typeName;\n const startIndex = isMatchExact ? matches.index : matches.index + 1;\n const endIndex = isMatchExact\n ? matches[0].length\n : matches[0].length - 1;\n let contentWithCodeTags =\n content.substr(0, startIndex) +\n replacement +\n content.substr(startIndex + endIndex);\n\n content = contentWithCodeTags;\n counter++;\n }\n } while (matches !== null && counter < max);\n });\n\n return content;\n }\n\n /**\n * For backwards compatibility, we need to remove any double brackets wrapped around types.\n * e.g., `[[SampleType]]`\n */\n private removeDoubleSquareBrackets(content: string): string {\n const match = content.match(/\\[\\[.*\\]\\]/);\n if (match) {\n const typeName = match[0].replace(/\\[\\[/g, '').replace(/\\]\\]/g, '');\n content = content.replace(match[0], typeName);\n }\n return content;\n }\n\n /**\n * Removes backtick characters around known types to prevent\n * the markdown pipe from wrapping them with code elements.\n */\n private removeBackticks(typeName: string, content: string): string {\n const regexp = new RegExp(`\\`(${typeName})\\``, 'g');\n return content.replace(regexp, typeName);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyDocsAnchorLinkConfig } from './anchor-link-service-config';\n\nimport { SkyDocsAnchorLinkService } from './anchor-link.service';\n\nimport { SkyDocsAnchorLinkServiceFormatType } from './anchor-link-service-format';\n\n/**\n * Adds same-page anchor tags around known TypeScript types.\n */\n@Pipe({\n name: 'skyDocsTypeAnchorLinks',\n pure: true,\n})\nexport class SkyDocsTypeAnchorLinksPipe implements PipeTransform {\n constructor(private anchorLinkService: SkyDocsAnchorLinkService) {}\n\n public transform(\n value: string,\n formatType?: SkyDocsAnchorLinkServiceFormatType\n ): string {\n const anchorLinkConfig: SkyDocsAnchorLinkConfig = {\n applyCodeFormatting: formatType !== 'no-code-tags',\n };\n return this.anchorLinkService.applyTypeAnchorLinks(value, anchorLinkConfig);\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface ParameterViewModel {\n defaultValue: string;\n description: string;\n formattedName: string;\n isOptional: boolean;\n}\n\n/**\n * \"Call signatures\" include methods, functions, and inline arrow functions.\n * This component is used to document both the return type and parameters of a given call signature.\n */\n@Component({\n selector: 'sky-docs-call-signature-definition',\n templateUrl: './call-signature-definition.component.html',\n styleUrls: ['./call-signature-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCallSignatureDefinitionComponent {\n @Input()\n public set config(value: SkyDocsCallSignatureDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsCallSignatureDefinition {\n return this._config;\n }\n\n public parameters: ParameterViewModel[];\n\n public returnTypeFormatted: string;\n\n private _config: SkyDocsCallSignatureDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.parameters = this.config?.parameters?.map((p) => {\n const vm: ParameterViewModel = {\n defaultValue: p.defaultValue,\n description: p.description,\n formattedName: this.formatService.getFormattedParameterName(p),\n isOptional: p.isOptional,\n };\n\n return vm;\n });\n\n this.returnTypeFormatted = this.formatService.getFormattedType(\n this.config?.returnType\n );\n }\n}\n","<div *ngIf=\"config\" class=\"sky-docs-call-signature-definition\">\n <ng-container *ngIf=\"parameters\">\n <h4 class=\"sky-docs-call-signature-definition-heading\">Parameters</h4>\n <table class=\"sky-docs-parameter-definitions\">\n <tbody>\n <tr *ngFor=\"let parameter of parameters\">\n <th class=\"sky-docs-parameter-definition-header\">\n <sky-code\n ><span\n [innerHtml]=\"\n parameter.formattedName\n | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span\n ></sky-code>\n </th>\n <td class=\"sky-docs-parameter-definition-body\">\n <div\n *ngIf=\"parameter.description\"\n class=\"sky-docs-parameter-definition-description\"\n >\n <sky-docs-safe-html\n *ngIf=\"parameter.description\"\n [innerHtml]=\"\n parameter.description\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n </div>\n <div\n *ngIf=\"parameter.isOptional\"\n class=\"sky-docs-parameter-definition-label-optional\"\n >\n Optional.\n <ng-container *ngIf=\"parameter.defaultValue\">\n Default is\n <sky-code\n ><span\n [innerHtml]=\"\n parameter.defaultValue\n | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span></sky-code\n >.\n </ng-container>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"returnTypeFormatted\">\n <h4 class=\"sky-docs-call-signature-definition-heading\">Returns</h4>\n\n <div class=\"sky-docs-call-signature-definition-return-type\">\n <sky-code\n ><span\n [innerHtml]=\"\n returnTypeFormatted | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span\n ></sky-code>\n </div>\n </ng-container>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface PropertyViewModel {\n callSignature: SkyDocsCallSignatureDefinition;\n defaultValue: string;\n deprecationWarning: string;\n description: string;\n formattedName: string;\n isOutput: boolean;\n isOptional: boolean;\n}\n\n@Component({\n selector: 'sky-docs-property-definitions',\n templateUrl: './property-definitions.component.html',\n styleUrls: ['./property-definitions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsPropertyDefinitionsComponent implements OnInit {\n @Input()\n public set config(value: { properties?: SkyDocsClassPropertyDefinition[] }) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): { properties?: SkyDocsClassPropertyDefinition[] } {\n return this._config || {};\n }\n\n @Input()\n public propertyType = 'Property';\n\n @Input()\n public showOptionalStatus: boolean = true;\n\n public deprecationWarningPrefix = `<span class=\"sky-text-warning\"></span>**Deprecated.** `;\n\n public isMobile: boolean = true;\n\n public properties: PropertyViewModel[] = [];\n\n private _config: {\n properties?: SkyDocsClassPropertyDefinition[];\n };\n\n constructor(\n private changeDetector: ChangeDetectorRef,\n private formatService: SkyDocsTypeDefinitionsFormatService,\n private mediaQueryService: SkyMediaQueryService\n ) {}\n\n public ngOnInit(): void {\n this.mediaQueryService.subscribe((breakpoints: SkyMediaBreakpoints) => {\n this.isMobile = breakpoints <= SkyMediaBreakpoints.sm;\n this.changeDetector.markForCheck();\n });\n }\n\n private updateView(): void {\n this.properties = this.config?.properties?.map((property) => {\n const vm: PropertyViewModel = {\n callSignature: property.type?.callSignature,\n defaultValue: this.formatService.escapeSpecialCharacters(\n property.defaultValue || ''\n ),\n deprecationWarning: property.deprecationWarning,\n description: property.description,\n formattedName: this.formatService.getFormattedPropertyName(property),\n isOutput: property.decorator?.name === 'Output',\n isOptional: property.isOptional,\n };\n\n return vm;\n });\n }\n}\n","<div *ngIf=\"properties\" class=\"sky-docs-property-definitions\">\n <table *ngIf=\"!isMobile; else mobileTemplate\" class=\"sky-docs-table\">\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n {{ propertyType }}\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let property of properties\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-property-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-property-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n\n <ng-template #mobileTemplate>\n <dl class=\"sky-docs-property-definition-list\">\n <div\n *ngFor=\"let property of properties\"\n class=\"sky-docs-property-definition-list-item\"\n >\n <dt class=\"sky-field-label\">{{ propertyType }}</dt>\n <dd class=\"sky-docs-property-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-property-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-property #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n property.formattedName | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-property #descriptionTemplate>\n <div\n *ngIf=\"!property.isOutput && !property.isOptional && showOptionalStatus\"\n class=\"sky-docs-property-definition-label sky-text-danger\"\n >\n Required.\n </div>\n\n <sky-docs-safe-html\n *ngIf=\"property.deprecationWarning !== undefined\"\n class=\"sky-docs-property-definitions-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + property.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"property.description\"\n class=\"sky-docs-property-definitions-description\"\n [innerHtml]=\"\n property.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <div\n *ngIf=\"!property.isOutput && property.isOptional && showOptionalStatus\"\n class=\"sky-docs-property-definition-label sky-docs-property-definition-label-optional\"\n >\n Optional.\n <ng-container *ngIf=\"property.defaultValue\"\n >Default is\n <sky-code\n ><span\n [innerHtml]=\"\n property.defaultValue | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span></sky-code\n >.</ng-container\n >\n </div>\n\n <sky-docs-call-signature-definition\n *ngIf=\"property.callSignature\"\n [config]=\"property.callSignature\"\n ></sky-docs-call-signature-definition>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsDirectiveDefinition } from './directive-definition';\n\n@Component({\n selector: 'sky-docs-directive-definition',\n templateUrl: './directive-definition.component.html',\n styleUrls: ['./directive-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDirectiveDefinitionComponent {\n @Input()\n public config: SkyDocsDirectiveDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-directive-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-directive-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <h4 class=\"sky-docs-directive-definition-h4\">Selector</h4>\n\n <p class=\"sky-docs-directive-selector\">\n <sky-code>{{ config.selector }}</sky-code>\n </p>\n\n <ng-container *ngIf=\"config.codeExample\">\n <h4 class=\"sky-docs-directive-definition-h4\">Example</h4>\n <sky-code-block\n class=\"sky-docs-code-block\"\n [code]=\"config.codeExample\"\n [hideHeader]=\"true\"\n [languageType]=\"config.codeExampleLanguage\"\n >\n </sky-code-block>\n </ng-container>\n\n <sky-docs-property-definitions\n *ngIf=\"config.inputProperties?.length\"\n propertyType=\"Input\"\n [config]=\"{\n properties: config.inputProperties\n }\"\n ></sky-docs-property-definitions>\n\n <sky-docs-property-definitions\n *ngIf=\"config.eventProperties?.length\"\n propertyType=\"Event\"\n [config]=\"{\n properties: config.eventProperties\n }\"\n ></sky-docs-property-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsEnumerationDefinition } from './enumeration-definition';\n\n@Component({\n selector: 'sky-docs-enumeration-definition',\n templateUrl: './enumeration-definition.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsEnumerationDefinitionComponent {\n @Input()\n public config: SkyDocsEnumerationDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-enumeration-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-enumeration-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-docs-property-definitions\n *ngIf=\"config.members\"\n propertyType=\"Member\"\n [config]=\"{ properties: config.members }\"\n [showOptionalStatus]=\"false\"\n ></sky-docs-property-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\n@Component({\n selector: 'sky-docs-interface-definition',\n templateUrl: './interface-definition.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsInterfaceDefinitionComponent {\n @Input()\n public set config(value: SkyDocsInterfaceDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsInterfaceDefinition {\n return this._config;\n }\n\n public sourceCode: string;\n\n private _config: SkyDocsInterfaceDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.sourceCode = this.config\n ? this.formatService.getInterfaceSourceCode(this.config)\n : undefined;\n }\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-interface-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-interface-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-property-definitions\n *ngIf=\"config.properties?.length\"\n [config]=\"{ properties: config.properties }\"\n [showOptionalStatus]=\"false\"\n ></sky-docs-property-definitions>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface MethodViewModel {\n callSignature: SkyDocsCallSignatureDefinition;\n codeExample: string;\n codeExampleLanguage: string;\n deprecationWarning: string;\n description: string;\n formattedName: string;\n sourceCode: string;\n isStatic: boolean;\n}\n\n@Component({\n selector: 'sky-docs-method-definitions',\n templateUrl: './method-definitions.component.html',\n styleUrls: ['./method-definitions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsMethodDefinitionsComponent implements OnInit {\n @Input()\n public set config(value: { methods?: SkyDocsClassMethodDefinition[] }) {\n this.#_config = value;\n this.updateView();\n }\n\n public get config(): { methods?: SkyDocsClassMethodDefinition[] } {\n return this.#_config || {};\n }\n\n public deprecationWarningPrefix = `<span class=\"sky-text-warning\"></span>**Deprecated.** `;\n\n public isMobile: boolean = true;\n\n public methods: MethodViewModel[];\n\n public staticMethods: MethodViewModel[];\n\n #_config: {\n methods?: SkyDocsClassMethodDefinition[];\n };\n\n #changeDetector: ChangeDetectorRef;\n #formatService: SkyDocsTypeDefinitionsFormatService;\n #mediaQueryService: SkyMediaQueryService;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n formatService: SkyDocsTypeDefinitionsFormatService,\n mediaQueryService: SkyMediaQueryService\n ) {\n this.#changeDetector = changeDetector;\n this.#formatService = formatService;\n this.#mediaQueryService = mediaQueryService;\n }\n\n public ngOnInit(): void {\n this.#mediaQueryService.subscribe((breakpoints: SkyMediaBreakpoints) => {\n this.isMobile = breakpoints <= SkyMediaBreakpoints.sm;\n this.#changeDetector.markForCheck();\n });\n }\n\n private updateView(): void {\n if (this.config.methods?.length > 0) {\n this.methods = [];\n this.staticMethods = [];\n for (let method of this.config.methods) {\n const vm: MethodViewModel = {\n callSignature: method.type.callSignature,\n codeExample: method.codeExample,\n codeExampleLanguage: method.codeExampleLanguage,\n deprecationWarning: method.deprecationWarning,\n description: method.description,\n formattedName: this.#formatService.getFormattedMethodName(method),\n sourceCode: this.#formatService.getMethodSourceCode(method),\n isStatic: method.isStatic,\n };\n\n if (vm.isStatic) {\n this.staticMethods.push(vm);\n } else {\n this.methods.push(vm);\n }\n }\n }\n }\n}\n","<div\n *ngIf=\"methods?.length > 0 || staticMethods?.length > 0\"\n class=\"sky-docs-method-definitions\"\n>\n <ng-container *ngIf=\"!isMobile; else mobileTemplate\">\n <table\n class=\"sky-docs-table sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Static methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of staticMethods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n <table\n class=\"sky-docs-table sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of methods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n </ng-container>\n\n <ng-template #mobileTemplate>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <div\n *ngFor=\"let method of staticMethods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Static methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <div\n *ngFor=\"let method of methods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-method #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n method.formattedName | skyDocsTypeAnchorLinks: 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-method #descriptionTemplate>\n <sky-docs-safe-html\n *ngIf=\"method.deprecationWarning !== undefined\"\n class=\"sky-docs-method-definition-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + method.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"method.description\"\n class=\"sky-docs-method-definition-description\"\n [innerHtml]=\"method.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"method.sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"method.sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"method.callSignature\"\n [config]=\"method.callSignature\"\n ></sky-docs-call-signature-definition>\n\n <ng-container *ngIf=\"method.codeExample\">\n <h4 class=\"sky-docs-method-definition-heading\">Example</h4>\n <sky-code-block\n *ngIf=\"method.codeExample\"\n class=\"sky-docs-code-block\"\n languageType=\"method.codeExampleLanguage\"\n [code]=\"method.codeExample\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n </ng-container>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsPipeDefinition } from './pipe-definition';\n\n@Component({\n selector: 'sky-docs-pipe-definition',\n templateUrl: './pipe-definition.component.html',\n styleUrls: ['./pipe-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsPipeDefinitionComponent {\n @Input()\n public config: SkyDocsPipeDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-pipe-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <ng-container *ngIf=\"config.codeExample\">\n <h4 class=\"sky-docs-pipe-definition-heading\">Example</h4>\n <sky-code-block\n class=\"sky-docs-code-block\"\n [code]=\"config.codeExample\"\n [hideHeader]=\"true\"\n [languageType]=\"config.codeExampleLanguage\"\n ></sky-code-block>\n </ng-container>\n\n <sky-docs-method-definitions\n *ngIf=\"config.transformMethod\"\n [config]=\"{\n methods: [config.transformMethod]\n }\"\n ></sky-docs-method-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsClassDefinition } from './class-definition';\n\n@Component({\n selector: 'sky-docs-class-definition',\n templateUrl: './class-definition.component.html',\n styleUrls: ['./class-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsClassDefinitionComponent {\n @Input()\n public config: SkyDocsClassDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-class-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-class-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <ng-container *ngIf=\"config.properties?.length\">\n <sky-docs-property-definitions\n [config]=\"{ properties: config.properties }\"\n ></sky-docs-property-definitions>\n </ng-container>\n\n <ng-container *ngIf=\"config.methods?.length\">\n <sky-docs-method-definitions\n [config]=\"{ methods: config.methods }\"\n ></sky-docs-method-definitions>\n </ng-container>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\n@Component({\n selector: 'sky-docs-type-alias-definition',\n templateUrl: './type-alias-definition.component.html',\n styleUrls: ['./type-alias-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsTypeAliasDefinitionComponent {\n @Input()\n public set config(value: SkyDocsTypeAliasDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsTypeAliasDefinition {\n return this._config;\n }\n\n public sourceCode: string;\n\n private _config: SkyDocsTypeAliasDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.sourceCode = this.config\n ? this.formatService.getTypeAliasSourceCode(this.config)\n : undefined;\n }\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-type-alias-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-type-alias-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"config.type.callSignature\"\n [config]=\"config.type.callSignature\"\n ></sky-docs-call-signature-definition>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { RouterModule } from '@angular/router';\n\nimport {\n SkyCodeBlockModule,\n SkyCodeModule,\n} from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyDefinitionListModule } from '@skyux/layout';\n\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsMarkdownModule } from '../markdown/markdown.module';\n\nimport { SkyDocsSafeHtmlModule } from '../safe-html/safe-html.module';\n\nimport { SkyDocsCallSignatureDefinitionComponent } from './call-signature-definition.component';\n\nimport { SkyDocsDirectiveDefinitionComponent } from './directive-definition.component';\n\nimport { SkyDocsEnumerationDefinitionComponent } from './enumeration-definition.component';\n\nimport { SkyDocsInterfaceDefinitionComponent } from './interface-definition.component';\n\nimport { SkyDocsMethodDefinitionsComponent } from './method-definitions.component';\n\nimport { SkyDocsPipeDefinitionComponent } from './pipe-definition.component';\n\nimport { SkyDocsPropertyDefinitionsComponent } from './property-definitions.component';\n\nimport { SkyDocsClassDefinitionComponent } from './class-definition.component';\n\nimport { SkyDocsTypeAliasDefinitionComponent } from './type-alias-definition.component';\n\nimport { SkyDocsTypeAnchorLinksPipe } from './type-anchor-links.pipe';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyCodeBlockModule,\n SkyCodeModule,\n SkyDefinitionListModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsMarkdownModule,\n SkyDocsSafeHtmlModule,\n SkyIconModule,\n ],\n declarations: [\n SkyDocsCallSignatureDefinitionComponent,\n SkyDocsClassDefinitionComponent,\n SkyDocsDirectiveDefinitionComponent,\n SkyDocsEnumerationDefinitionComponent,\n SkyDocsInterfaceDefinitionComponent,\n SkyDocsMethodDefinitionsComponent,\n SkyDocsPipeDefinitionComponent,\n SkyDocsPropertyDefinitionsComponent,\n SkyDocsTypeAliasDefinitionComponent,\n SkyDocsTypeAnchorLinksPipe,\n ],\n exports: [\n SkyDocsCallSignatureDefinitionComponent,\n SkyDocsClassDefinitionComponent,\n SkyDocsDirectiveDefinitionComponent,\n SkyDocsEnumerationDefinitionComponent,\n SkyDocsInterfaceDefinitionComponent,\n SkyDocsMethodDefinitionsComponent,\n SkyDocsPipeDefinitionComponent,\n SkyDocsPropertyDefinitionsComponent,\n SkyDocsTypeAliasDefinitionComponent,\n SkyDocsTypeAnchorLinksPipe,\n ],\n})\nexport class SkyDocsTypeDefinitionsModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n/**\n * Specifies a section of page content.\n * @example\n * ```\n * <sky-docs-demo-page-section\n * heading=\"Section heading\"\n * >\n * Section content here.\n * </sky-docs-demo-page-section>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page-section',\n templateUrl: './demo-page-section.component.html',\n styleUrls: ['./demo-page-section.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageSectionComponent {\n /**\n * The heading text to print above the section.\n */\n @Input()\n public heading: string;\n\n public get anchorId(): string {\n return `section-${this.getSanitizedName(this.heading)}`;\n }\n\n private getSanitizedName(value: string): string {\n if (!value) {\n return;\n }\n\n const sanitized = value\n .toLowerCase()\n\n // Remove special characters.\n .replace(\n /[\\_\\~\\`\\@\\!\\#\\$\\%\\^\\&\\*\\(\\)\\[\\]\\{\\}\\;\\:\\'\\/\\\\\\<\\>\\,\\.\\?\\=\\+\\|\"]/g,\n ''\n )\n\n // Replace space characters with a dash.\n .replace(/\\s/g, '-')\n\n // Remove any double-dashes.\n .replace(/--/g, '-');\n\n return sanitized;\n }\n}\n","<div class=\"sky-docs-demo-page-section sky-rounded-corners\">\n <div *ngIf=\"heading\" class=\"sky-docs-demo-page-section-header\">\n <sky-docs-heading-anchor headingLevel=\"2\" [anchorId]=\"anchorId\">\n {{ heading }}\n </sky-docs-heading-anchor>\n </div>\n <div class=\"sky-docs-demo-page-section-body\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * The page summary provides a section at the top of the page\n * to summarize what a user should expect to find or learn on the page.\n * @example\n * ```\n * <sky-docs-demo-page-summary>\n * Page summary here.\n * </sky-docs-demo-page-summary>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page-summary',\n templateUrl: './demo-page-summary.component.html',\n styleUrls: ['./demo-page-summary.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageSummaryComponent {}\n","<div class=\"sky-docs-demo-page-summary\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-design-guidelines',\n templateUrl: './design-guidelines.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelinesComponent {}\n","<div class=\"sky-docs-design-guidelines\">\n <ng-content></ng-content>\n</div>\n","import { Injectable, OnDestroy } from '@angular/core';\n\nimport { SkyAppWindowRef } from '@skyux/core';\n\nimport { Observable, Subject } from 'rxjs';\n\nimport { SkyDocsAnchorLink } from '../type-definitions/anchor-link';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsDemoPageDomAdapterService implements OnDestroy {\n private get anchorLinks(): NodeListOf<HTMLAnchorElement> {\n return document.querySelectorAll('a.sky-docs-anchor-link');\n }\n\n private get currentUrl(): string {\n return this.windowRef.nativeWindow.location.href.split('#')[0];\n }\n\n private _anchorLinkClick = new Subject<SkyDocsAnchorLink>();\n\n constructor(private windowRef: SkyAppWindowRef) {}\n\n public ngOnDestroy(): void {\n this.removeClickEventListeners();\n }\n\n public setupAnchorLinks(): void {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n const fragment = anchor.href.split('#')[1];\n const url = this.currentUrl;\n const href = `${url}#${fragment}`;\n anchor.href = href;\n }\n }\n\n public get anchorLinkClick(): Observable<SkyDocsAnchorLink> {\n if (this._anchorLinkClick.observers.length === 0) {\n this.addClickEventListeners();\n } else {\n this.removeClickEventListeners();\n }\n return this._anchorLinkClick;\n }\n\n public scrollToFragment(fragment: string): void {\n this.windowRef.nativeWindow.setTimeout(() => {\n const element = document.getElementById(fragment);\n if (element) {\n this.windowRef.nativeWindow.scrollTo(0, element.offsetTop);\n }\n }, 250);\n }\n\n private addClickEventListeners(): void {\n // Wait for a tick to allow all anchors to be written.\n this.windowRef.nativeWindow.setTimeout(() => {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n anchor.addEventListener('click', this.eventListener);\n }\n });\n }\n\n private removeClickEventListeners(): void {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n anchor.removeEventListener('click', this.eventListener);\n }\n }\n\n private eventListener = (e: Event) => {\n e.preventDefault();\n this._anchorLinkClick.next({\n href: (e.target as HTMLAnchorElement).href,\n });\n };\n}\n","import { Injectable } from '@angular/core';\n\nimport { HttpClient } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\n\nimport { map, share } from 'rxjs/operators';\n\nimport { SkyDocsComponentInfo } from './docs-tools-component-info';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsSupportalService {\n constructor(private http: HttpClient) {}\n\n public getComponentsInfo(): Observable<SkyDocsComponentInfo[]> {\n return this.http\n .get('https://sky-pusa01.app.blackbaud.net/skysp/v1/docs/components-info')\n .pipe(\n map((results: any) => results.components),\n share()\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { Title } from '@angular/platform-browser';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsDemoPageTitleService {\n constructor(private title: Title) {}\n\n public setTitle(...parts: string[]): void {\n let windowTitle = 'SKY UX';\n\n if (parts && parts.length > 0) {\n parts.push(windowTitle);\n windowTitle = parts.join(' - ');\n }\n\n this.title.setTitle(windowTitle);\n }\n}\n","import { Injectable, Optional } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassDefinition } from './class-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsCommentTags } from './comment-tags';\n\nimport { SkyDocsDirectiveDefinition } from './directive-definition';\n\nimport { SkyDocsEnumerationDefinition } from './enumeration-definition';\n\nimport { SkyDocsEnumerationMemberDefinition } from './enumeration-member-definition';\n\nimport { SkyDocsIndexSignatureDefinition } from './index-signature-definition';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsInterfacePropertyDefinition } from './interface-property-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsParameterDefinition } from './parameter-definition';\n\nimport { SkyDocsPipeDefinition } from './pipe-definition';\n\nimport { SkyDocsPropertyDecoratorDefinition } from './property-decorator';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinition } from './type-definition';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\nimport { SkyDocsTypeParameterDefinition } from './type-parameter-definition';\n\nimport {\n TypeDocComment,\n TypeDocEntry,\n TypeDocEntryChild,\n TypeDocParameter,\n TypeDocSignature,\n TypeDocType,\n TypeDocTypeParameter,\n} from './typedoc-types';\n\nimport orderBy from 'lodash.orderby';\n\n/**\n * Converts TypeDoc types into SKY UX docs-tools types, to be supplied to the various definitions components.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsTypeDocAdapterService {\n constructor(\n @Optional() private typeDefinitionsProvider?: SkyDocsTypeDefinitionsProvider\n ) {}\n\n public toClassDefinition(entry: TypeDocEntry): SkyDocsClassDefinition {\n const definition: SkyDocsClassDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const methods = this.getClassMethods(entry);\n if (methods.length) {\n definition.methods = methods;\n }\n\n const properties = this.getClassProperties(entry);\n if (properties.length) {\n definition.properties = properties;\n }\n\n return definition;\n }\n\n public toDirectiveDefinition(\n entry: TypeDocEntry\n ): SkyDocsDirectiveDefinition {\n const definition: SkyDocsDirectiveDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n selector: this.getSelector(entry),\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const properties = this.getClassProperties(entry);\n\n const eventProperties = properties.filter(\n (p) => p.decorator?.name === 'Output'\n );\n if (eventProperties.length) {\n definition.eventProperties = eventProperties;\n }\n\n const inputProperties = properties.filter(\n (p) => p.decorator?.name === 'Input'\n );\n if (inputProperties.length) {\n definition.inputProperties = inputProperties;\n }\n\n return definition;\n }\n\n public toEnumerationDefinition(\n entry: TypeDocEntry\n ): SkyDocsEnumerationDefinition {\n const members = this.getEnumerationMembers(entry);\n const definition: SkyDocsEnumerationDefinition = {\n anchorId: this.getAnchorId(entry),\n members,\n name: entry.name,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }\n\n public toInterfaceDefinition(\n entry: TypeDocEntry\n ): SkyDocsInterfaceDefinition {\n const properties = this.getInterfaceProperties(entry);\n const definition: SkyDocsInterfaceDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n properties,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n entry.typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n }\n\n public toPipeDefinition(entry: TypeDocEntry): SkyDocsPipeDefinition {\n const methods = this.getClassMethods(entry);\n const transformMethod = methods.find((m) => m.name === 'transform');\n const definition: SkyDocsPipeDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n transformMethod,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }\n\n public toTypeAliasDefinition(\n entry: TypeDocEntry\n ): SkyDocsTypeAliasDefinition {\n const definition: SkyDocsTypeAliasDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n type: this.getTypeDefinition({\n comment: entry.comment,\n type: entry.type,\n }),\n };\n\n const tags = this.getCommentTags(\n entry.type.declaration?.signatures\n ? entry.type.declaration.signatures[0].comment\n : entry.comment\n );\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n entry.typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n }\n\n private getSelector(entry: TypeDocEntry): string {\n const decoratorSource = entry.decorators[0].arguments.obj;\n return decoratorSource.indexOf('selector: `') > -1\n ? decoratorSource\n .split('selector: `')[1]\n .split('`')[0]\n .replace(/\\s\\s+/g, ' ')\n : decoratorSource.split(\"selector: '\")[1].split(\"'\")[0];\n }\n\n private getClassProperties(\n entry: TypeDocEntry\n ): SkyDocsClassPropertyDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n const definitions = entry.children\n .filter(\n (child) =>\n child.kindString === 'Property' || child.kindString === 'Accessor'\n )\n .map((child) => {\n let definition: SkyDocsClassPropertyDefinition = {\n isOptional: true,\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n };\n let defaultValue: string;\n\n /* Ensure we are properly capturing definitions which use a getter/setter. Final check is a sanity check */\n if (\n child.kindString === 'Accessor' &&\n !child.comment?.shortText &&\n (child.setSignature?.length > 0 || child.getSignature.length > 0)\n ) {\n const mainTags = this.getCommentTags(child.comment);\n\n this.applyCommentTagValues(definition, mainTags);\n\n if (child.getSignature?.length > 0) {\n const getTags = this.getCommentTags(child.getSignature[0].comment);\n\n definition.isOptional = !getTags.extras.required;\n\n this.applyCommentTagValues(definition, getTags);\n defaultValue = this.getDefaultValue(child, getTags);\n }\n\n if (child.setSignature?.length > 0) {\n const setTags = this.getCommentTags(child.setSignature[0].comment);\n\n this.applyCommentTagValues(definition, setTags);\n\n definition.isOptional =\n definition.isOptional && !setTags.extras.required;\n defaultValue = defaultValue || this.getDefaultValue(child, setTags);\n } else {\n definition.isOptional = !mainTags.extras.required;\n defaultValue = this.getDefaultValue(child, mainTags);\n }\n } else {\n let tags: SkyDocsCommentTags | undefined;\n if (\n child.kindString === 'Property' &&\n !child.comment?.shortText &&\n child.type.declaration?.signatures?.length > 0 &&\n child.type.declaration.signatures[0].comment\n ) {\n tags = this.getCommentTags(\n child.type.declaration.signatures[0].comment\n );\n\n definition.isOptional = !tags.extras.required;\n this.applyCommentTagValues(definition, tags);\n }\n\n tags = this.getCommentTags(child.comment);\n\n definition.isOptional =\n definition.isOptional && !tags.extras.required;\n\n this.applyCommentTagValues(definition, tags);\n\n defaultValue = this.getDefaultValue(child, tags);\n }\n\n if (defaultValue) {\n definition.defaultValue = defaultValue;\n }\n\n const decorator = this.getDecorator(child);\n if (decorator) {\n definition.decorator = decorator;\n }\n\n if (!definition.description) {\n const constructor = entry.children.find(\n (child) => child.kindString === 'Constructor'\n );\n if (constructor) {\n const signature = constructor.signatures.find(\n (signature) => signature.kindString === 'Constructor signature'\n );\n /* Sanity check */\n /* istanbul ignore else */\n if (signature) {\n const matchingParam = signature.parameters?.find(\n (parameter) => parameter.name === child.name\n );\n if (matchingParam) {\n const matchingParamTags = this.getCommentTags(\n matchingParam.comment\n );\n this.applyCommentTagValues(definition, matchingParamTags);\n }\n }\n }\n }\n\n return definition;\n });\n\n return orderBy(definitions, ['isOptional', 'name'], ['asc', 'asc']);\n }\n\n private getClassMethods(entry: TypeDocEntry): SkyDocsClassMethodDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n const methods = entry.children\n .filter(\n (child) =>\n child.kindString === 'Method' && /^ng/.test(child.name) === false\n )\n .map((child) => {\n const definition: SkyDocsClassMethodDefinition = {\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n isStatic: !!child.flags?.isStatic,\n parentName: entry.name,\n };\n\n // Comments for methods are stored in a different location.\n const comment = child.signatures[0].comment;\n const tags = this.getCommentTags(comment);\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n child.signatures[0].typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n });\n\n return orderBy(methods, ['name'], ['asc']);\n }\n\n private getInterfaceProperties(\n entry: TypeDocEntry\n ): SkyDocsInterfacePropertyDefinition[] {\n if (!entry.children && !entry.indexSignature) {\n return [];\n }\n\n const definitions =\n entry.children?.map((child) => {\n let tags: SkyDocsCommentTags | undefined;\n if (child.kindString === 'Method' && child.signatures.length > 0) {\n tags = this.getCommentTags(child.signatures[0].comment);\n } else {\n tags = this.getCommentTags(child.comment);\n }\n const definition: SkyDocsInterfacePropertyDefinition = {\n isOptional: tags.extras.required ? false : !!child.flags?.isOptional,\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n };\n\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }) || [];\n\n const sorted = orderBy(definitions, ['isOptional', 'name'], ['asc', 'asc']);\n\n // Add any index signatures, e.g. `[_: string]: any`\n if (entry.indexSignature) {\n const indexSignature = entry.indexSignature;\n const definition: SkyDocsInterfacePropertyDefinition = {\n isOptional: true,\n name: indexSignature.name,\n type: {\n indexSignature: this.getIndexSignatureDefinition(indexSignature),\n },\n };\n\n const tags = this.getCommentTags(indexSignature.comment);\n this.applyCommentTagValues(definition, tags);\n sorted.push(definition);\n }\n\n return sorted;\n }\n\n private getEnumerationMembers(\n entry: TypeDocEntry\n ): SkyDocsEnumerationMemberDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n return entry.children.map((child) => {\n const definition: SkyDocsEnumerationMemberDefinition = {\n name: child.name,\n };\n\n const tags = this.getCommentTags(child.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n });\n }\n\n private getTypeDefinition(child: TypeDocEntryChild): SkyDocsTypeDefinition {\n let definition: SkyDocsTypeDefinition;\n\n const kindString = child.kindString;\n switch (kindString) {\n case 'Accessor':\n if (child.setSignature) {\n return this.getTypeDefinition(child.setSignature[0].parameters[0]);\n }\n return this.getTypeDefinition(child.getSignature[0]);\n\n case 'Method':\n definition = {\n callSignature: this.getCallSignatureDefinition(\n child.signatures[0],\n this.getCommentTags(child.comment)\n ),\n name: child.signatures[0].name,\n };\n\n return definition;\n\n default:\n let name: string =\n child.type.name || child.type.elementType?.name || child.type.value;\n\n definition = {\n type: child.type.type,\n };\n\n if (name) {\n definition.name = name;\n }\n\n // Union?\n if (child.type.types) {\n definition.unionTypes = child.type.types.map((t) =>\n this.getTypeDefinition({ type: t })\n );\n }\n\n // Convert reflection types.\n if (\n child.type.type === 'reflection' ||\n child.type.elementType?.type === 'reflection'\n ) {\n const declaration =\n child.type.elementType?.type === 'reflection'\n ? child.type.elementType.declaration\n : child.type.declaration;\n /*istanbul ignore else */\n if (declaration) {\n if (declaration.signatures) {\n definition.callSignature = this.getCallSignatureDefinition(\n declaration.signatures[0],\n this.getCommentTags(child.comment)\n );\n } else if (declaration.indexSignature) {\n const indexSignature = declaration.indexSignature;\n definition.indexSignature =\n this.getIndexSignatureDefinition(indexSignature);\n } /* istanbul ignore else */ else if (declaration.children) {\n definition.typeLiteral = {\n properties: this.getInterfaceProperties({\n children: declaration.children,\n }),\n };\n }\n }\n }\n\n if (child.type.type === 'typeOperator') {\n definition.name = `${child.type.operator} ${child.type.target.name}`;\n }\n\n if (child.type.typeArguments) {\n definition.typeArguments = this.getTypeArgumentDefinitions(\n child.type\n );\n }\n\n return definition;\n }\n }\n\n private getParameterDefinitions(\n callSignature: TypeDocSignature,\n parentTags: SkyDocsCommentTags\n ): SkyDocsParameterDefinition[] {\n if (!callSignature.parameters) {\n return [];\n }\n\n const parameters: SkyDocsParameterDefinition[] =\n callSignature.parameters.map((p) => {\n const tags = this.getParameterCommentTags(p, parentTags);\n const defaultValue = this.getDefaultValue(p, tags);\n const typeArguments = this.getTypeArgumentDefinitions(p.type);\n\n const parameter: SkyDocsParameterDefinition = {\n isOptional: !!(defaultValue || !!p.flags?.isOptional),\n name: p.name,\n type: this.getTypeDefinition(p),\n };\n\n if (defaultValue !== undefined) {\n parameter.defaultValue = defaultValue;\n }\n\n if (tags.description) {\n parameter.description = tags.description;\n }\n\n if (typeArguments.length) {\n parameter.typeArguments = typeArguments;\n }\n\n return parameter;\n });\n return parameters;\n }\n\n private getTypeArgumentDefinitions(\n typeConfig: TypeDocType\n ): SkyDocsTypeDefinition[] {\n if (!typeConfig || !typeConfig.typeArguments) {\n return [];\n }\n\n return typeConfig.typeArguments.map((typeArgument) => {\n return this.getTypeDefinition({ type: typeArgument });\n });\n }\n\n private getCallSignatureDefinition(\n callSignature: TypeDocSignature,\n tags: SkyDocsCommentTags\n ): SkyDocsCallSignatureDefinition {\n const definition: SkyDocsCallSignatureDefinition = {\n returnType: this.getTypeDefinition(callSignature),\n };\n\n const parameters = this.getParameterDefinitions(callSignature, tags);\n if (parameters.length) {\n definition.parameters = parameters;\n }\n\n return definition;\n }\n\n private getIndexSignatureDefinition(\n signature: TypeDocSignature\n ): SkyDocsIndexSignatureDefinition {\n return {\n key: {\n name: signature.parameters[0].name,\n type: this.getTypeDefinition(signature.parameters[0]),\n },\n type: this.getTypeDefinition(signature),\n };\n }\n\n private getTypeParameterDefinitions(\n typeParameters: TypeDocTypeParameter[]\n ): SkyDocsTypeParameterDefinition[] {\n if (!typeParameters) {\n return [];\n }\n\n return typeParameters.map((typeParam) => {\n const definition: SkyDocsTypeParameterDefinition = {\n name: typeParam.name,\n };\n\n if (typeParam.type) {\n definition.type = this.getTypeDefinition({\n type: typeParam.type,\n });\n }\n\n return definition;\n });\n }\n\n private getCommentTags(comment: TypeDocComment): SkyDocsCommentTags {\n let codeExample: string;\n let codeExampleLanguage: string = 'markup';\n let deprecationWarning: string;\n let defaultValue: string;\n let description: string = '';\n\n let parameters: {\n name: string;\n description: string;\n }[];\n\n const extras: {\n [key: string]: any;\n } = {};\n\n if (comment) {\n if (comment.tags) {\n comment.tags.forEach((tag) => {\n switch (tag.tag) {\n case 'deprecated':\n deprecationWarning = tag.text.trim();\n break;\n\n case 'default':\n case 'defaultValue':\n defaultValue = tag.text.trim();\n break;\n\n case 'example':\n codeExample = tag.text.trim().split('```')[1].trim();\n const language = codeExample.split('\\n')[0];\n if (language === 'markup' || language === 'typescript') {\n codeExample = codeExample.slice(language.length).trim();\n codeExampleLanguage = language;\n }\n break;\n\n case 'param':\n parameters = parameters || [];\n parameters.push({\n name: tag.param,\n description: tag.text.trim(),\n });\n break;\n\n default:\n extras[tag.tag] = tag.text;\n break;\n }\n });\n }\n\n description = (comment.shortText || comment.text || '').trim();\n }\n\n return {\n codeExample,\n codeExampleLanguage,\n defaultValue,\n deprecationWarning,\n description,\n extras,\n parameters,\n };\n }\n\n /**\n * Parameter descriptions are derived from the parent's (function/method) comment.\n */\n private getParameterCommentTags(\n parameter: TypeDocParameter,\n parentTags: SkyDocsCommentTags\n ): SkyDocsCommentTags {\n const tags = this.getCommentTags(parameter.comment);\n const paramTags = parentTags.parameters;\n const tagParam = paramTags\n ? paramTags.find((param) => param.name === parameter.name)\n : undefined;\n\n if (!tagParam || !tagParam.description) {\n return tags;\n }\n\n return {\n ...tags,\n ...{\n description: tagParam.description,\n },\n };\n }\n\n /**\n * Applies comment tag (e.g. `@param`) values to the provided definition, if the value is defined.\n */\n private applyCommentTagValues(\n definition: {\n codeExample?: string;\n codeExampleLanguage?: string;\n deprecationWarning?: string;\n description?: string;\n },\n tags: SkyDocsCommentTags\n ): void {\n if (tags.codeExample) {\n definition.codeExample = tags.codeExample;\n definition.codeExampleLanguage = tags.codeExampleLanguage;\n }\n\n if (tags.deprecationWarning !== undefined) {\n definition.deprecationWarning = tags.deprecationWarning;\n }\n\n if (tags.description) {\n definition.description = tags.description;\n }\n }\n\n private getDecorator(\n child: TypeDocEntryChild\n ): SkyDocsPropertyDecoratorDefinition {\n const name =\n child.decorators && child.decorators[0] && child.decorators[0].name;\n if (name) {\n return { name };\n }\n }\n\n private getPropertyName(property: TypeDocEntryChild): string {\n const decorators = property.decorators && property.decorators[0];\n // Use the Input's bound property name, if found.\n // e.g. @Input('foobar')\n return decorators?.arguments?.bindingPropertyName\n ? decorators.arguments.bindingPropertyName.replace(/(\\'|\\\")/g, '')\n : property.name;\n }\n\n private getDefaultValue(\n child: TypeDocEntryChild,\n tags: SkyDocsCommentTags\n ): string | undefined {\n if (tags.defaultValue) {\n return tags.defaultValue;\n }\n\n // TypeDoc version 0.20.x stopped auto-generating initializers for the default value\n // (and replaced them with \"...\") due to the complicated logic it required.\n // See: https://github.com/TypeStrong/typedoc/issues/1552\n if (child.defaultValue === '...') {\n return;\n }\n\n return child.defaultValue;\n }\n\n private getAnchorId(entry: TypeDocEntry): string {\n return (\n entry.anchorId ||\n this.typeDefinitionsProvider?.anchorIds[entry.name] ||\n ''\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsTypeDefinitions } from './type-definitions';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\nimport { SkyDocsTypeDocAdapterService } from './typedoc-adapter.service';\n\n/**\n * Handles all type definitions that have been converted from the third-party documentation generator.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsTypeDefinitionsService {\n constructor(\n private typeDefinitionsProvider: SkyDocsTypeDefinitionsProvider,\n private adapter: SkyDocsTypeDocAdapterService\n ) {}\n\n /**\n * Returns type definitions from a specific source code location.\n * @param sourceCodePath The directory of the source code you wish to pull type definitions from,\n * relative to the application's root directory.\n */\n public getTypeDefinitions(\n sourceCodePath: string,\n additionalSourceCodePaths?: string[]\n ): SkyDocsTypeDefinitions {\n if (!sourceCodePath) {\n throw new Error('The `sourceCodePath` parameter is required');\n }\n\n const sourceCodePaths: string[] =\n additionalSourceCodePaths && additionalSourceCodePaths.length > 0\n ? [sourceCodePath].concat(additionalSourceCodePaths)\n : [sourceCodePath];\n\n sourceCodePaths.forEach((path) => {\n if (!path.endsWith('/') && !path.endsWith('.ts')) {\n throw new Error(\n 'Source code paths must end with a forward slash (`/`) or `.ts`.'\n );\n }\n });\n\n const allDefinitions = this.typeDefinitionsProvider.typeDefinitions;\n const types: SkyDocsTypeDefinitions = {\n classes: [],\n components: [],\n directives: [],\n enumerations: [],\n interfaces: [],\n pipes: [],\n services: [],\n typeAliases: [],\n };\n\n if (!allDefinitions) {\n console.warn(`No types were found for this project!`);\n return types;\n }\n\n sourceCodePaths.forEach((path) => {\n const requestedDir = path\n .replace(/src\\/app\\/public\\//, '')\n .replace(/^\\//, ''); // remove first slash.\n\n // Only process types that match the requested source code location.\n const typeDefinitions = allDefinitions.filter(\n (i) => i.sources && i.sources[0].fileName.match(requestedDir)\n );\n if (typeDefinitions.length === 0) {\n console.warn(\n `Type definitions were not found for location: ${requestedDir}`\n );\n }\n\n typeDefinitions.forEach((item) => {\n const decorator = item.decorators && item.decorators[0].name;\n const kindString = item.kindString;\n\n switch (decorator) {\n case 'Component':\n types.components.push(this.adapter.toDirectiveDefinition(item));\n break;\n case 'Directive':\n types.directives.push(this.adapter.toDirectiveDefinition(item));\n break;\n case 'Injectable':\n types.services.push(this.adapter.toClassDefinition(item));\n break;\n case 'NgModule':\n // Don't document modules.\n break;\n case 'Pipe':\n types.pipes.push(this.adapter.toPipeDefinition(item));\n break;\n default:\n /*tslint:disable-next-line:switch-default*/\n switch (kindString) {\n case 'Class':\n types.classes.push(this.adapter.toClassDefinition(item));\n break;\n case 'Interface':\n types.interfaces.push(this.adapter.toInterfaceDefinition(item));\n break;\n case 'Enumeration':\n types.enumerations.push(\n this.adapter.toEnumerationDefinition(item)\n );\n break;\n case 'Type alias':\n types.typeAliases.push(\n this.adapter.toTypeAliasDefinition(item)\n );\n break;\n }\n }\n });\n });\n\n return types;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsTypeDefinitions } from '../type-definitions/type-definitions';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-docs-demo-page-type-definitions',\n templateUrl: './demo-page-type-definitions.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageTypeDefinitionsComponent {\n @Input()\n public types: SkyDocsTypeDefinitions;\n}\n","<ng-template [ngIf]=\"types\">\n <sky-docs-demo-page-section\n *ngIf=\"types.components.length\"\n heading=\"Components\"\n >\n <sky-docs-directive-definition\n *ngFor=\"let config of types.components\"\n [config]=\"config\"\n ></sky-docs-directive-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.directives.length\"\n heading=\"Directives\"\n >\n <sky-docs-directive-definition\n *ngFor=\"let config of types.directives\"\n [config]=\"config\"\n ></sky-docs-directive-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.pipes.length\" heading=\"Pipes\">\n <sky-docs-pipe-definition\n *ngFor=\"let config of types.pipes\"\n [config]=\"config\"\n ></sky-docs-pipe-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.services.length\" heading=\"Services\">\n <sky-docs-class-definition\n *ngFor=\"let config of types.services\"\n [config]=\"config\"\n ></sky-docs-class-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.classes.length\" heading=\"Classes\">\n <sky-docs-class-definition\n *ngFor=\"let config of types.classes\"\n [config]=\"config\"\n ></sky-docs-class-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.interfaces.length\"\n heading=\"Interfaces\"\n >\n <sky-docs-interface-definition\n *ngFor=\"let config of types.interfaces\"\n [config]=\"config\"\n ></sky-docs-interface-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.enumerations.length\"\n heading=\"Enumerations\"\n >\n <sky-docs-enumeration-definition\n *ngFor=\"let config of types.enumerations\"\n [config]=\"config\"\n ></sky-docs-enumeration-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.typeAliases.length\"\n heading=\"Type aliases\"\n >\n <sky-docs-type-alias-definition\n *ngFor=\"let config of types.typeAliases\"\n [config]=\"config\"\n ></sky-docs-type-alias-definition>\n </sky-docs-demo-page-section>\n</ng-template>\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Input,\n OnInit,\n QueryList,\n} from '@angular/core';\n\nimport { ActivatedRoute, Router } from '@angular/router';\n\nimport { SkyAppConfig } from '@skyux/config';\n\nimport { StacheNavLink } from '@blackbaud/skyux-lib-stache';\n\nimport { SkyDocsCodeExamplesComponent } from '../code-examples/code-examples.component';\n\nimport { SkyDocsDesignGuidelinesComponent } from '../design-guidelines/design-guidelines.component';\n\nimport { SkyDocsSupportalService } from '../shared/docs-tools-supportal.service';\n\nimport { SkyDocsComponentInfo } from '../shared/docs-tools-component-info';\n\nimport { SkyDocsDemoPageDomAdapterService } from './demo-page-dom-adapter.service';\n\nimport { SkyDocsDemoPageTitleService } from './demo-page-title.service';\nimport { SkyDocsTypeDefinitionsService } from '../type-definitions/type-definitions.service';\nimport { SkyDocsTypeDefinitions } from '../type-definitions/type-definitions';\n\n/**\n * The demo page component wraps all documentation components and handles the configuration and layout of the page.\n * @example\n * ```\n * <sky-docs-demo-page\n * pageTitle=\"My demo page\"\n * >\n * Content here.\n * </sky-docs-demo-page>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page',\n templateUrl: './demo-page.component.html',\n styleUrls: ['./demo-page.component.scss'],\n providers: [SkyDocsDemoPageDomAdapterService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageComponent\n implements OnInit, AfterContentInit, AfterViewInit\n{\n /**\n * Specifies the local path to any other relevant source code. The values are relative to the root directory.\n */\n @Input()\n public set additionalSourceCodePaths(paths: string[] | undefined) {\n this.#_additionalSourceCodePaths = paths;\n this.#updateTypes();\n }\n\n public get additionalSourceCodePaths(): string[] | undefined {\n return this.#_additionalSourceCodePaths;\n }\n\n /**\n * Specifies the local path to any other relevant testing source code. The values are relative to the root directory.\n */\n @Input()\n public set additionalTestingSourceCodePaths(paths: string[] | undefined) {\n this.#_additionalTestingSourceCodePaths = paths;\n this.#updateTestingTypes();\n }\n\n public get additionalTestingSourceCodePaths(): string[] | undefined {\n return this.#_additionalTestingSourceCodePaths;\n }\n\n /**\n * Specifies the URL to the repo that stores the module's source code.\n * @required\n */\n @Input()\n public gitRepoUrl: string;\n\n /**\n * Specifies the TypeScript class name of the module. For example, `SkySampleModule`.\n * @required\n */\n @Input()\n public moduleName: string;\n\n /**\n * Specifies the local path to the module's source code. The value is relative to the root directory.\n */\n @Input()\n public set moduleSourceCodePath(path: string | undefined) {\n this.#_moduleSourceCodePath = path;\n this.testingSourceCodePath = path.replace('/modules/', '/testing/');\n this.#updateTypes();\n this.#updateTestingTypes();\n }\n\n public get moduleSourceCodePath(): string | undefined {\n return this.#_moduleSourceCodePath;\n }\n\n /**\n * Specifies the type definitions for the development tab.\n */\n public moduleTypeDefinitions: SkyDocsTypeDefinitions | undefined;\n\n /**\n * Specifies the local path to the testing source code. The value is relative to the root directory.\n */\n public testingSourceCodePath: string;\n\n /**\n * Specifies the type definitions for the testing tab.\n */\n public testingTypeDefinitions: SkyDocsTypeDefinitions | undefined;\n\n /**\n * Specifies the qualified name of the NPM package. For example, `@blackbaud/sample`.\n * @required\n */\n @Input()\n public packageName: string;\n\n /**\n * Specifies the URL to the NPM package.\n */\n @Input()\n public packageUrl: string;\n\n /**\n * Specifies the primary page heading.\n * @required\n */\n @Input()\n public pageTitle: string;\n\n /**\n * @internal\n */\n public enableCodeExamples = false;\n\n /**\n * @internal\n */\n public enableTestingTab = false;\n\n /**\n * @internal\n */\n public enableTabLayout = false;\n\n /**\n * @internal\n */\n public sidebarRoutes: StacheNavLink[];\n\n @ContentChild(SkyDocsDesignGuidelinesComponent)\n private designGuidelinesComponent: SkyDocsDesignGuidelinesComponent;\n\n @ContentChildren(SkyDocsCodeExamplesComponent)\n private codeExampleComponents: QueryList<SkyDocsCodeExamplesComponent>;\n\n #_additionalSourceCodePaths: string[] | undefined;\n #_additionalTestingSourceCodePaths: string[] | undefined;\n #_moduleSourceCodePath: string | undefined;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private changeDetector: ChangeDetectorRef,\n private router: Router,\n private skyAppConfig: SkyAppConfig,\n private domAdapter: SkyDocsDemoPageDomAdapterService,\n private supportalService: SkyDocsSupportalService,\n private titleService: SkyDocsDemoPageTitleService,\n private typeDefinitionService: SkyDocsTypeDefinitionsService\n ) {}\n\n public ngOnInit(): void {\n const currentHostUrl =\n this.skyAppConfig.skyux.host.url + '/' + this.skyAppConfig.skyux.name;\n this.updateTitle();\n\n this.supportalService\n .getComponentsInfo()\n .subscribe((results: SkyDocsComponentInfo[]) => {\n this.sidebarRoutes = [\n {\n name: 'Components',\n path: 'https://developer.blackbaud.com/skyux/components',\n children: results.map((component: SkyDocsComponentInfo) => ({\n name: component.name,\n path: this.getPath(component.url, currentHostUrl),\n })),\n },\n ];\n this.changeDetector.markForCheck();\n });\n }\n\n public ngAfterContentInit(): void {\n this.enableCodeExamples = this.codeExampleComponents.length > 0;\n this.enableTabLayout =\n !!this.designGuidelinesComponent || this.enableCodeExamples;\n }\n\n public ngAfterViewInit(): void {\n // Watch for route fragment to change and scroll to heading.\n this.activatedRoute.fragment.subscribe((fragment) => {\n this.domAdapter.scrollToFragment(fragment);\n });\n\n // Change the HREF attribute for all dynamic links when the query params change.\n // This will also generate the appropriate HREF if the user wants to open the link in a new window.\n this.activatedRoute.queryParams.subscribe(() => {\n this.domAdapter.setupAnchorLinks();\n });\n\n // When a dynamic link is clicked, use Angular's router so that everything works correctly.\n this.domAdapter.anchorLinkClick.subscribe((anchorLink: any) => {\n const fragment = anchorLink.href.split('#')[1];\n\n this.router.navigate([], {\n fragment,\n queryParamsHandling: 'merge',\n });\n\n if (this.activatedRoute.snapshot.fragment === fragment) {\n this.domAdapter.scrollToFragment(fragment);\n }\n });\n }\n\n private updateTitle(): void {\n /*istanbul ignore else*/\n if (this.pageTitle) {\n this.titleService.setTitle(this.pageTitle, 'Components');\n }\n }\n\n private getPath(url: string, currentHostUrl: string): string {\n // Replace host + SPA so Stache will mark active.\n // Strip URL params is url is local, as those will be preserved by stacheRouterLink.\n if (url.indexOf(currentHostUrl) > -1) {\n return url.replace(currentHostUrl, '').split('?')[0];\n } else {\n return url;\n }\n }\n\n #updateTypes(): void {\n this.moduleTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(\n this.moduleSourceCodePath,\n this.additionalSourceCodePaths\n );\n }\n\n #updateTestingTypes(): void {\n this.testingTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(\n this.testingSourceCodePath,\n this.additionalTestingSourceCodePaths\n );\n this.enableTestingTab = Object.values(this.testingTypeDefinitions).some(\n (value) => value && value.length > 0\n );\n }\n}\n","<div class=\"sky-docs-demo-page\">\n <stache\n layout=\"sidebar\"\n [pageTitle]=\"pageTitle\"\n [showBreadcrumbs]=\"false\"\n [showTableOfContents]=\"false\"\n [sidebarRoutes]=\"sidebarRoutes\"\n >\n <ng-content select=\"sky-docs-demo-page-summary\"></ng-content>\n\n <ng-content select=\"sky-docs-demo\"></ng-content>\n\n <div class=\"sky-docs-demo-page-main\">\n <sky-tabset *ngIf=\"enableTabLayout; else content\" permalinkId=\"docs\">\n <sky-tab tabHeading=\"Design\" *ngIf=\"!!designGuidelinesComponent\">\n <ng-content select=\"sky-docs-design-guidelines\"></ng-content>\n </sky-tab>\n\n <sky-tab tabHeading=\"Development\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </sky-tab>\n\n <sky-tab tabHeading=\"Testing\" *ngIf=\"enableTestingTab\">\n <sky-docs-demo-page-section heading=\"Test harnesses\">\n <p>\n SKY UX test harnesses are built upon Angular CDK component\n harnesses. For 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 </sky-docs-demo-page-section>\n <sky-docs-demo-page-type-definitions [types]=\"testingTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n </sky-tab>\n\n <sky-tab tabHeading=\"Code examples\" *ngIf=\"enableCodeExamples\">\n <ng-content select=\"sky-docs-code-examples\"></ng-content>\n </sky-tab>\n </sky-tabset>\n </div>\n </stache>\n</div>\n\n<ng-template #content>\n <sky-docs-demo-page-section *ngIf=\"moduleName\" heading=\"Installation\">\n <sky-docs-module-info\n [gitRepoUrl]=\"gitRepoUrl\"\n [moduleName]=\"moduleName\"\n [packageName]=\"packageName\"\n [packageUrl]=\"packageUrl\"\n >\n <ng-content select=\"sky-docs-demo-page-module-info\"></ng-content>\n </sky-docs-module-info>\n </sky-docs-demo-page-section>\n\n <ng-content></ng-content>\n\n <sky-docs-demo-page-type-definitions [types]=\"moduleTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n</ng-template>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-demo-page-module-info',\n template: '<ng-content></ng-content>',\n})\nexport class SkyDocsDemoPageModuleInfoComponent {}\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport {\n SkyCodeBlockModule,\n SkyCodeModule,\n} from '@blackbaud/skyux-lib-code-block';\n\nimport {\n StachePageSummaryModule,\n StacheWrapperModule,\n} from '@blackbaud/skyux-lib-stache';\n\nimport { RouterModule } from '@angular/router';\n\nimport { SkyTabsModule } from '@skyux/tabs';\n\nimport { SkyDocsDemoModule } from '../demo/demo.module';\n\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsMarkdownModule } from '../markdown/markdown.module';\n\nimport { SkyDocsModuleInfoModule } from '../module-info/module-info.module';\n\nimport { SkyDocsTypeDefinitionsModule } from '../type-definitions/type-definitions.module';\n\nimport { SkyDocsDemoPageSectionComponent } from './demo-page-section.component';\n\nimport { SkyDocsDemoPageSummaryComponent } from './demo-page-summary.component';\n\nimport { SkyDocsDemoPageComponent } from './demo-page.component';\n\nimport { SkyDocsDemoPageModuleInfoComponent } from './demo-page-module-info.component';\n\nimport { SkyDocsDemoPageTypeDefinitionsComponent } from './demo-page-type-definitions.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyCodeBlockModule,\n SkyCodeModule,\n SkyDocsDemoModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsMarkdownModule,\n SkyDocsModuleInfoModule,\n SkyDocsTypeDefinitionsModule,\n SkyTabsModule,\n StachePageSummaryModule,\n StacheWrapperModule,\n ],\n declarations: [\n SkyDocsDemoPageComponent,\n SkyDocsDemoPageModuleInfoComponent,\n SkyDocsDemoPageSectionComponent,\n SkyDocsDemoPageSummaryComponent,\n SkyDocsDemoPageTypeDefinitionsComponent,\n ],\n exports: [\n SkyDocsDemoPageComponent,\n SkyDocsDemoPageModuleInfoComponent,\n SkyDocsDemoPageSectionComponent,\n SkyDocsDemoPageSummaryComponent,\n SkyDocsDemoPageTypeDefinitionsComponent,\n ],\n})\nexport class SkyDocsDemoPageModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-design-guideline-thumbnail',\n templateUrl: './design-guideline-thumbnail.component.html',\n styleUrls: ['./design-guideline-thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelineThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public videoSource: string;\n\n @Input()\n public showBorder: boolean = false;\n}\n","<div class=\"sky-docs-design-guideline-thumbnail\">\n <sky-docs-thumbnail\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [videoSource]=\"videoSource\"\n [showBorder]=\"showBorder\"\n ></sky-docs-thumbnail>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsDesignGuidelineThumbnailComponent } from './design-guideline-thumbnail.component';\n\n@Component({\n selector: 'sky-docs-design-guideline',\n templateUrl: './design-guideline.component.html',\n styleUrls: ['./design-guideline.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelineComponent implements AfterContentInit {\n @Input()\n public heading: string;\n\n @Input()\n public headingStyle: 'default' | 'success' | 'danger' = 'default';\n\n public get classNames(): string {\n const classNames: string[] = [];\n\n classNames.push(`sky-text-${this.headingStyle}`);\n\n return classNames.join(' ');\n }\n\n public hasThumbnails = false;\n\n @ContentChildren(SkyDocsDesignGuidelineThumbnailComponent)\n private thumbnails: QueryList<SkyDocsDesignGuidelineThumbnailComponent>;\n\n public ngAfterContentInit(): void {\n this.hasThumbnails = !!this.thumbnails.length;\n }\n}\n","<div class=\"sky-docs-design-guideline\">\n <h3\n *ngIf=\"heading\"\n class=\"sky-docs-design-guideline-heading\"\n [ngClass]=\"classNames\"\n >\n {{ heading }}\n </h3>\n <sky-row *ngIf=\"hasThumbnails; else content\">\n <sky-column screenSmall=\"6\" screenMedium=\"5\" screenLarge=\"4\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </sky-column>\n <sky-column screenSmall=\"6\" screenMedium=\"7\" screenLarge=\"8\">\n <div class=\"sky-docs-design-guideline-thumbnails\">\n <ng-container *ngTemplateOutlet=\"thumbnails\"></ng-container>\n </div>\n </sky-column>\n </sky-row>\n</div>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #thumbnails>\n <ng-content select=\"sky-docs-design-guideline-thumbnail\"></ng-content>\n</ng-template>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyFluidGridModule } from '@skyux/layout';\n\nimport { SkyDocsThumbnailModule } from '../thumbnail/thumbnail.module';\n\nimport { SkyDocsDesignGuidelineComponent } from './design-guideline.component';\n\nimport { SkyDocsDesignGuidelinesComponent } from './design-guidelines.component';\n\nimport { SkyDocsDesignGuidelineThumbnailComponent } from './design-guideline-thumbnail.component';\n\n@NgModule({\n imports: [CommonModule, SkyDocsThumbnailModule, SkyFluidGridModule],\n declarations: [\n SkyDocsDesignGuidelineComponent,\n SkyDocsDesignGuidelineThumbnailComponent,\n SkyDocsDesignGuidelinesComponent,\n ],\n exports: [\n SkyDocsDesignGuidelineComponent,\n SkyDocsDesignGuidelineThumbnailComponent,\n SkyDocsDesignGuidelinesComponent,\n ],\n})\nexport class SkyDocsDesignGuidelinesModule {}\n","import { NgModule } from '@angular/core';\n\nimport { SkyAuthHttpClientModule } from '@skyux/http';\n\nimport { SkyDocsAnatomyModule } from './modules/anatomy/anatomy.module';\n\nimport { SkyDocsCodeExamplesModule } from './modules/code-examples/code-examples.module';\n\nimport { SkyDocsDemoModule } from './modules/demo/demo.module';\n\nimport { SkyDocsDemoPageModule } from './modules/demo-page/demo-page.module';\n\nimport { SkyDocsDesignGuidelinesModule } from './modules/design-guidelines/design-guidelines.module';\n\n/**\n * This module conveniently exports the most commonly used modules.\n */\n@NgModule({\n exports: [\n SkyAuthHttpClientModule, // Supports the supportal service calls using the `svcid` param.\n SkyDocsAnatomyModule,\n SkyDocsCodeExamplesModule,\n SkyDocsDemoModule,\n SkyDocsDemoPageModule,\n SkyDocsDesignGuidelinesModule,\n ],\n})\nexport class SkyDocsToolsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1.SkyDocsThumbnailComponent","i1","i1.SkyDocsSourceCodeProvider","i1.SkyDocsCodeExamplesEditorService","i2.SkyDocsSourceCodeService","i3","i5","i1.SkyDocsToolsOptions","i4","i6","i7","i1.SkyDocsTypeDefinitionsProvider","i1.SkyDocsAnchorLinkService","i1.SkyDocsTypeDefinitionsFormatService","i4.SkyDocsSafeHtmlComponent","i5.SkyDocsMarkdownPipe","i6.SkyDocsTypeAnchorLinksPipe","i5.SkyDocsSafeHtmlComponent","i6.SkyDocsCallSignatureDefinitionComponent","i7.SkyDocsMarkdownPipe","i8.SkyDocsTypeAnchorLinksPipe","i3.SkyDocsHeadingAnchorComponent","i5.SkyDocsPropertyDefinitionsComponent","i6.SkyDocsMarkdownPipe","i7.SkyDocsTypeAnchorLinksPipe","i2.SkyDocsHeadingAnchorComponent","i3.SkyDocsSafeHtmlComponent","i4.SkyDocsPropertyDefinitionsComponent","i4.SkyDocsHeadingAnchorComponent","i6.SkyDocsPropertyDefinitionsComponent","i5.SkyDocsMethodDefinitionsComponent","i4.SkyDocsMethodDefinitionsComponent","i2.SkyDocsTypeDocAdapterService","i2.SkyDocsClassDefinitionComponent","i3.SkyDocsDirectiveDefinitionComponent","i4.SkyDocsEnumerationDefinitionComponent","i5.SkyDocsInterfaceDefinitionComponent","i6.SkyDocsPipeDefinitionComponent","i7.SkyDocsTypeAliasDefinitionComponent","i8.SkyDocsDemoPageSectionComponent","i3.SkyDocsDemoPageDomAdapterService","i4.SkyDocsSupportalService","i5.SkyDocsDemoPageTitleService","i6.SkyDocsTypeDefinitionsService","i8.SkyDocsModuleInfoComponent","i9","i11.SkyDocsDemoPageSectionComponent","i12.SkyDocsDemoPageTypeDefinitionsComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-docs-tools.mjs","sources":["../../../projects/docs-tools/src/modules/anatomy/anatomy-item.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-item.component.html","../../../projects/docs-tools/src/modules/anatomy/anatomy.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy.component.html","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.component.ts","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.component.html","../../../projects/docs-tools/src/modules/thumbnail/thumbnail.module.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-thumbnail.component.ts","../../../projects/docs-tools/src/modules/anatomy/anatomy-thumbnail.component.html","../../../projects/docs-tools/src/modules/anatomy/anatomy.module.ts","../../../projects/docs-tools/src/modules/shared/sky-docs-tools-resources.module.ts","../../../projects/docs-tools/src/modules/code-examples/code-example-theme.ts","../../../projects/docs-tools/src/modules/code-examples/code-example.component.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples-editor.service.ts","../../../projects/docs-tools/src/modules/source-code/source-code-provider.ts","../../../projects/docs-tools/src/modules/source-code/source-code.service.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples.component.ts","../../../projects/docs-tools/src/modules/code-examples/code-examples.component.html","../../../projects/docs-tools/src/modules/code-examples/code-examples.module.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-checkbox.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-checkbox.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel-radio-group.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-radio-group.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel.component.html","../../../projects/docs-tools/src/modules/demo/demo.component.ts","../../../projects/docs-tools/src/modules/demo/demo.component.html","../../../projects/docs-tools/src/modules/demo/demo-control-panel-section.component.ts","../../../projects/docs-tools/src/modules/demo/demo-control-panel-section.component.html","../../../projects/docs-tools/src/modules/demo/demo.module.ts","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.component.ts","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.component.html","../../../projects/docs-tools/src/modules/heading-anchor/heading-anchor.module.ts","../../../projects/docs-tools/src/modules/markdown/markdown.pipe.ts","../../../projects/docs-tools/src/modules/markdown/markdown.module.ts","../../../projects/docs-tools/src/modules/shared/docs-tools-options.ts","../../../projects/docs-tools/src/modules/module-info/module-info.component.ts","../../../projects/docs-tools/src/modules/module-info/module-info.component.html","../../../projects/docs-tools/src/modules/module-info/module-info.module.ts","../../../projects/docs-tools/src/modules/safe-html/safe-html.component.ts","../../../projects/docs-tools/src/modules/safe-html/safe-html.component.html","../../../projects/docs-tools/src/modules/safe-html/safe-html.module.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions-format.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions-provider.ts","../../../projects/docs-tools/src/modules/type-definitions/anchor-link.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-anchor-links.pipe.ts","../../../projects/docs-tools/src/modules/type-definitions/call-signature-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/call-signature-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/property-definitions.component.ts","../../../projects/docs-tools/src/modules/type-definitions/property-definitions.component.html","../../../projects/docs-tools/src/modules/type-definitions/directive-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/directive-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/enumeration-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/enumeration-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/interface-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/interface-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/method-definitions.component.ts","../../../projects/docs-tools/src/modules/type-definitions/method-definitions.component.html","../../../projects/docs-tools/src/modules/type-definitions/pipe-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/pipe-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/class-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/class-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/type-alias-definition.component.ts","../../../projects/docs-tools/src/modules/type-definitions/type-alias-definition.component.html","../../../projects/docs-tools/src/modules/type-definitions/type-definitions.module.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-section.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-section.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-summary.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-summary.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-dom-adapter.service.ts","../../../projects/docs-tools/src/modules/shared/docs-tools-supportal.service.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-title.service.ts","../../../projects/docs-tools/src/modules/type-definitions/typedoc-adapter.service.ts","../../../projects/docs-tools/src/modules/type-definitions/type-definitions.service.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-type-definitions.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page-type-definitions.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page.component.html","../../../projects/docs-tools/src/modules/demo-page/demo-page-module-info.component.ts","../../../projects/docs-tools/src/modules/demo-page/demo-page.module.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline-thumbnail.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline-thumbnail.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline.component.ts","../../../projects/docs-tools/src/modules/design-guidelines/design-guideline.component.html","../../../projects/docs-tools/src/modules/design-guidelines/design-guidelines.module.ts","../../../projects/docs-tools/src/docs-tools.module.ts","../../../projects/docs-tools/src/skyux-docs-tools.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-anatomy-item',\n templateUrl: './anatomy-item.component.html',\n styleUrls: ['./anatomy-item.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyItemComponent {\n @Input()\n public isOptional: boolean = false;\n\n public marker: string;\n}\n","<div\n class=\"sky-docs-anatomy-item\"\n [ngClass]=\"{\n 'sky-docs-anatomy-item-optional': isOptional\n }\"\n>\n <div class=\"sky-docs-anatomy-item-marker\">\n {{ marker }}\n </div>\n <div class=\"sky-docs-anatomy-item-description\">\n <ng-content></ng-content>\n <span *ngIf=\"isOptional\" class=\"sky-deemphasized\"> (optional)</span>\n </div>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsAnatomyItemComponent } from './anatomy-item.component';\n\n@Component({\n selector: 'sky-docs-anatomy',\n templateUrl: './anatomy.component.html',\n styleUrls: ['./anatomy.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyComponent implements AfterContentInit {\n @Input()\n public imagePath: string;\n\n @ContentChildren(SkyDocsAnatomyItemComponent)\n private anatomyItems: QueryList<SkyDocsAnatomyItemComponent>;\n\n public ngAfterContentInit(): void {\n this.anatomyItems.forEach((item, i) => {\n item.marker = (i + 1).toString();\n });\n }\n}\n","<div class=\"sky-docs-anatomy\">\n <sky-row>\n <sky-column\n class=\"sky-docs-anatomy-items\"\n screenSmall=\"6\"\n screenMedium=\"5\"\n screenLarge=\"4\"\n >\n <ng-content select=\"sky-docs-anatomy-item\"></ng-content>\n </sky-column>\n <sky-column screenSmall=\"6\" screenMedium=\"7\" screenLarge=\"8\">\n <sky-image\n *ngIf=\"imagePath; else thumbnails\"\n [imageSource]=\"imagePath\"\n ></sky-image>\n </sky-column>\n </sky-row>\n</div>\n\n<ng-template #thumbnails>\n <ng-content select=\"sky-docs-anatomy-thumbnail\"></ng-content>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-thumbnail',\n templateUrl: './thumbnail.component.html',\n styleUrls: ['./thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public showBorder: boolean = false;\n\n @Input()\n public videoSource: string;\n}\n","<div class=\"sky-docs-thumbnail\">\n <sky-image\n *ngIf=\"imageSource\"\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [showBorder]=\"showBorder\"\n [showCaptionPrefix]=\"false\"\n ></sky-image>\n <div\n *ngIf=\"videoSource\"\n class=\"sky-docs-video\"\n [ngClass]=\"{\n 'sky-docs-video-border': showBorder\n }\"\n >\n <video controls>\n <source [attr.src]=\"videoSource\" type=\"video/mp4\" />\n </video>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyImageModule } from '@blackbaud/skyux-lib-media';\n\nimport { SkyDocsThumbnailComponent } from './thumbnail.component';\n\n@NgModule({\n imports: [CommonModule, SkyImageModule],\n exports: [SkyDocsThumbnailComponent],\n declarations: [SkyDocsThumbnailComponent],\n})\nexport class SkyDocsThumbnailModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-anatomy-thumbnail',\n templateUrl: './anatomy-thumbnail.component.html',\n styleUrls: ['./anatomy-thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsAnatomyThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public videoSource: string;\n\n @Input()\n public showBorder: boolean = false;\n}\n","<div class=\"sky-docs-anatomy-thumbnail\">\n <sky-docs-thumbnail\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [videoSource]=\"videoSource\"\n [showBorder]=\"showBorder\"\n ></sky-docs-thumbnail>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyImageModule } from '@blackbaud/skyux-lib-media';\n\nimport { SkyFluidGridModule } from '@skyux/layout';\n\nimport { SkyDocsAnatomyComponent } from './anatomy.component';\n\nimport { SkyDocsAnatomyItemComponent } from './anatomy-item.component';\nimport { SkyDocsThumbnailModule } from '../thumbnail/thumbnail.module';\nimport { SkyDocsAnatomyThumbnailComponent } from './anatomy-thumbnail.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyDocsThumbnailModule,\n SkyFluidGridModule,\n SkyImageModule,\n ],\n declarations: [\n SkyDocsAnatomyComponent,\n SkyDocsAnatomyItemComponent,\n SkyDocsAnatomyThumbnailComponent,\n ],\n exports: [\n SkyDocsAnatomyComponent,\n SkyDocsAnatomyItemComponent,\n SkyDocsAnatomyThumbnailComponent,\n ],\n})\nexport class SkyDocsAnatomyModule {}\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 modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\n\nimport { NgModule } from '@angular/core';\nimport {\n getLibStringForLocale,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SKY_LIB_RESOURCES_PROVIDERS,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n 'sky-docs-demo-heading': { message: 'Demo' },\n 'sky-docs-demo-toggle-button-on': { message: 'Show options' },\n 'sky-docs-demo-toggle-button-off': { message: 'Hide options' },\n 'sky-docs-code-example-launch-button-label': {\n message: 'Run in StackBlitz',\n },\n 'sky-docs-demo-control-panel-reset-button-label': { message: 'Reset' },\n },\n};\n\nexport class SkyDocsToolsResourcesProvider implements SkyLibResourcesProvider {\n public getString(localeInfo: SkyAppLocaleInfo, name: string): string {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyDocsToolsResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyDocsToolsResourcesModule {}\n","export enum SkyDocsCodeExampleTheme {\n Default = 'default',\n Modern = 'modern',\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnDestroy,\n Optional,\n} from '@angular/core';\n\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { Subject } from 'rxjs';\n\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDocsCodeExampleTheme } from './code-example-theme';\n\n/**\n * Renders a single code example.\n * @example\n * ```\n * <sky-docs-code-example\n * heading=\"My code example\"\n * sourceCodePath=\"src/app/public/plugin-resources/foobar\"\n * >\n * </sky-docs-code-example>\n * ```\n */\n@Component({\n selector: 'sky-docs-code-example',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCodeExampleComponent implements OnDestroy {\n /**\n * The heading to be used for the code example.\n * @required\n */\n @Input()\n public heading: string;\n\n /**\n * Specifies the local path to the code example's source code. The value is relative to the root directory.\n * @required\n */\n @Input()\n public sourceCodePath: string;\n\n /**\n * Specifies if the editor service should show the example in modern theme.\n * The value will be gleaned from `SkyThemeService` first, then fallback to 'default' if the service is not found.\n */\n @Input()\n public set theme(value: SkyDocsCodeExampleTheme) {\n this._theme = value;\n }\n\n public get theme(): SkyDocsCodeExampleTheme {\n return this._theme || SkyDocsCodeExampleTheme.Default;\n }\n\n private ngUnsubscribe = new Subject<void>();\n\n private _theme: SkyDocsCodeExampleTheme;\n\n constructor(@Optional() themeSvc?: SkyThemeService) {\n // Update theme property with SkyThemeService if it has not been set.\n if (!this._theme && themeSvc) {\n themeSvc.settingsChange\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n if (change.currentSettings.theme.name === 'modern') {\n this.theme = SkyDocsCodeExampleTheme.Modern;\n } else if (change.currentSettings.theme.name === 'default') {\n this.theme = SkyDocsCodeExampleTheme.Default;\n }\n });\n }\n }\n\n public ngOnDestroy(): void {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport StackBlitzSDK from '@stackblitz/sdk';\n\nimport {\n OpenOptions as StackBlitzOpenOptions,\n Project as StackBlitzProject,\n} from '@stackblitz/sdk/typings/interfaces';\n\nimport { SkyDocsSourceCodeFile } from '../source-code/source-code-file';\n\nimport { SkyDocsCodeExampleModuleDependencies } from './code-example-module-dependencies';\n\nimport { SkyDocsCodeExampleTheme } from './code-example-theme';\n\nimport { SkyDocsCodeExample } from './code-example';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsCodeExamplesEditorService {\n public launchEditor(codeExample: SkyDocsCodeExample): void {\n const project = this.getPayload(codeExample);\n const options: StackBlitzOpenOptions = {};\n\n StackBlitzSDK.openProject(project, options);\n }\n\n private getPayload(codeExample: SkyDocsCodeExample): StackBlitzProject {\n const angularVersion = '^14.0.0';\n const skyuxVersion = '^7.0.0';\n\n const defaultDependencies: SkyDocsCodeExampleModuleDependencies = {\n '@angular/animations': angularVersion,\n '@angular/cdk': angularVersion,\n '@angular/common': angularVersion,\n '@angular/compiler': angularVersion,\n '@angular/core': angularVersion,\n '@angular/forms': angularVersion,\n '@angular/platform-browser': angularVersion,\n '@angular/platform-browser-dynamic': angularVersion,\n '@angular/router': angularVersion,\n '@skyux/animations': skyuxVersion,\n '@skyux/assets': skyuxVersion,\n '@skyux/config': skyuxVersion,\n '@skyux/core': skyuxVersion,\n '@skyux/errors': skyuxVersion,\n '@skyux/forms': skyuxVersion,\n '@skyux/http': skyuxVersion,\n '@skyux/i18n': skyuxVersion,\n '@skyux/indicators': skyuxVersion,\n '@skyux/layout': skyuxVersion,\n '@skyux/modals': skyuxVersion,\n '@skyux/popovers': skyuxVersion,\n '@skyux/router': skyuxVersion,\n '@skyux/theme': skyuxVersion,\n '@types/jasmine': '~4.0.3',\n // We must define Dragula deliberately so that StackBlitz runs NGCC against it.\n 'ng2-dragula': '2.1.1',\n rxjs: '^7',\n tslib: '^2.3.0',\n 'zone.js': '~0.11.4',\n };\n\n const mergedDependencies = Object.assign(\n {},\n defaultDependencies,\n codeExample.packageDependencies\n );\n\n // Ensure any @skyux dependencies list the correct version of SKY UX.\n // e.g. `\"@skyux/core\": \"*\"` --> `\"@skyux/core\": \"5.0.0\"`\n for (const packageName in mergedDependencies) {\n /*istanbul ignore else*/\n if (mergedDependencies.hasOwnProperty(packageName)) {\n const version = mergedDependencies[packageName];\n if (\n version === '*' &&\n /^(@blackbaud\\/skyux-lib-|@skyux)/.test(packageName)\n ) {\n mergedDependencies[packageName] = skyuxVersion;\n }\n }\n }\n\n const files = this.parseStackBlitzFiles(\n codeExample.sourceCode,\n mergedDependencies,\n codeExample.theme,\n codeExample.stylesheets\n );\n\n return {\n files,\n title: 'SKY UX Demo',\n description: 'SKY UX Demo',\n template: 'angular-cli',\n dependencies: mergedDependencies,\n settings: {\n compile: {\n clearConsole: false,\n },\n },\n };\n }\n\n private parseStackBlitzFiles(\n sourceCode: SkyDocsSourceCodeFile[],\n dependencies: SkyDocsCodeExampleModuleDependencies,\n theme: SkyDocsCodeExampleTheme,\n stylesheets: string[] = []\n ): {\n [path: string]: string;\n } {\n const srcPath = 'src/';\n const appPath = `${srcPath}app/`;\n\n const banner = `/**\n * This file is needed for the StackBlitz demo only.\n * It is automatically provided when using the Angular CLI.\n **/\n `;\n\n const moduleImportStatements: string[] = [\n `import {\\n NgModule\\n} from '@angular/core';`,\n `import {\\n FormsModule,\\n ReactiveFormsModule\\n} from '@angular/forms';`,\n `import {\\n BrowserAnimationsModule\\n} from '@angular/platform-browser/animations';`,\n `import {\\n RouterModule\\n} from '@angular/router';`,\n `import {\\n SkyAppLocaleProvider\\n} from '@skyux/i18n';`,\n `import {\\n SkyThemeService\\n} from '@skyux/theme';`,\n `import {\\n of as observableOf\\n} from 'rxjs';`,\n `import {\\n AppComponent\\n} from './app.component';`,\n ];\n\n const moduleImports: string[] = [\n 'BrowserAnimationsModule',\n 'FormsModule',\n 'ReactiveFormsModule',\n 'RouterModule.forRoot([])',\n ];\n\n const files: { [_: string]: string } = {};\n\n let appComponentTemplate = '';\n\n sourceCode.forEach((file) => {\n files[`${appPath}${file.fileName}`] = file.rawContents;\n\n // Setup module imports and component selectors.\n if (file.fileName.indexOf('.module.ts') > -1) {\n const moduleName = this.getModuleName(file.rawContents);\n const importPath = `./${this.getFilenameNoExtension(file.fileName)}`;\n\n const exportedComponent = this.getExportedComponent(file.rawContents);\n const componentSelector = this.getComponentSelector(\n exportedComponent,\n sourceCode\n );\n\n appComponentTemplate += `<${componentSelector}></${componentSelector}>`;\n\n moduleImports.push(moduleName);\n moduleImportStatements.push(\n `import {\\n ${moduleName}\\n} from '${importPath}';`\n );\n }\n });\n\n files[`${appPath}app.component.ts`] = `${banner}\nimport {\n Component,\n Renderer2\n} from '@angular/core';\n\nimport {\n SkyTheme,\n SkyThemeMode,\n SkyThemeService,\n SkyThemeSettings\n} from '@skyux/theme';\n\n@Component({\n selector: 'sky-demo-app',\n template: '${appComponentTemplate}'\n})\nexport class AppComponent {\n\n constructor(\n themeSvc: SkyThemeService,\n renderer: Renderer2\n ) {\n const themeSettings = new SkyThemeSettings(\n SkyTheme.presets['${\n theme === SkyDocsCodeExampleTheme.Modern ? 'modern' : 'default'\n }'],\n SkyThemeMode.presets.light\n );\n\n themeSvc.init(\n document.body,\n renderer,\n themeSettings\n );\n }\n\n}`;\n\n files[`${appPath}app.module.ts`] = `${moduleImportStatements.join('\\n\\n')}\n\n@NgModule({\n imports: [\n ${moduleImports.join(',\\n ')}\n ],\n declarations: [\n AppComponent\n ],\n bootstrap: [\n AppComponent\n ],\n providers: [\n SkyThemeService,\n {\n provide: SkyAppLocaleProvider,\n useValue: {\n getLocaleInfo: () => observableOf({\n locale: 'en-US'\n })\n }\n }\n ]\n})\nexport class AppModule { }\n`;\n\n files[`${srcPath}index.html`] = `<!--\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\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/5/assets/css/skyux-icons.min.css\" />\n\n<sky-demo-app>\n Loading...\n</sky-demo-app>`;\n\n files[`${srcPath}main.ts`] = `${banner}\nimport './polyfills';\n\nimport {\n platformBrowserDynamic\n} from '@angular/platform-browser-dynamic';\n\nimport {\n AppModule\n} from './app/app.module';\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n\n`;\n\n files[`${srcPath}polyfills.ts`] = `${banner}\nimport 'zone.js';\n`;\n\n files[`${srcPath}styles.scss`] = `@import '~@skyux/theme/css/sky';\n@import '~@skyux/theme/css/themes/modern/styles';\n\nbody {\n background-color: #fff;\n margin: 15px;\n}`;\n\n stylesheets.push('src/styles.scss');\n\n files['angular.json'] = `{\n \"projects\": {\n \"demo\": {\n \"architect\": {\n \"build\": {\n \"options\": {\n \"index\": \"src/index.html\",\n \"styles\": ${JSON.stringify(stylesheets)}\n }\n }\n }\n }\n }\n}`;\n\n files['package.json'] = JSON.stringify(\n {\n dependencies,\n },\n undefined,\n 2\n );\n\n files['tsconfig.json'] = `{\n \"compilerOptions\": {\n \"strict\": true,\n \"forceConsistentCasingInFileNames\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"target\": \"es2017\",\n \"module\": \"es2020\",\n \"moduleResolution\": \"node\",\n \"emitDecoratorMetadata\": true,\n \"experimentalDecorators\": true,\n \"importHelpers\": true,\n \"typeRoots\": [\"node_modules/@types\"],\n \"lib\": [\n \"es2020\",\n \"dom\"\n ]\n },\n \"angularCompilerOptions\": {\n \"fullTemplateTypeCheck\": true,\n \"strictInjectionParameters\": true,\n \"strictInputAccessModifiers\": true,\n \"strictTemplates\": true,\n \"enableIvy\": true\n }\n}`;\n\n return files;\n }\n\n private getModuleName(contents: string): string {\n return contents.split('export class ')[1].split(' {')[0];\n }\n\n private getFilenameNoExtension(fileName: string): string {\n const extension = fileName.split('.').pop();\n return fileName.replace(`.${extension}`, '');\n }\n\n private getExportedComponent(contents: string): string {\n const trimmed = contents.replace(/\\s/g, '');\n\n let fragment = trimmed.split('exports:[')[1];\n if (!fragment) {\n throw 'You must export a component from the code example module!';\n }\n\n fragment = fragment.split(']')[0];\n\n const components = fragment.split(',').filter((x) => x);\n\n if (components.length > 1) {\n throw (\n 'You may only export a single component from the code example module' +\n `(we found ${components.length}: ${components.join(', ')}).` +\n 'Is it possible to create a new code example with the extra components?'\n );\n }\n\n return components[0];\n }\n\n private getComponentSelector(\n componentClassName: string,\n sourceCode: SkyDocsSourceCodeFile[]\n ): string {\n const found = sourceCode.find((file) => {\n return file.rawContents.indexOf(`class ${componentClassName}`) > -1;\n });\n\n const trimmed = found.rawContents.replace(/\\s/g, '');\n\n return trimmed.split(`selector:'`)[1].split(`'`)[0];\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsSourceCodeProvider {\n public readonly sourceCode: any[];\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsSourceCodeFile } from './source-code-file';\n\nimport { SkyDocsSourceCodeProvider } from './source-code-provider';\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsSourceCodeService {\n constructor(private sourceCodeProvider: SkyDocsSourceCodeProvider) {}\n\n public getSourceCode(path: string): SkyDocsSourceCodeFile[] {\n const sourceCode = this.sourceCodeProvider.sourceCode;\n if (!sourceCode || !sourceCode.length) {\n return [];\n }\n\n return sourceCode\n .filter((file) => file.filePath.indexOf(path) === 0)\n .map((file) => {\n // TODO: Remove decoding after migrating to Angular CLI. Code examples will not be encoded for SKY UX 5 libraries.\n // SKY UX 4 libraries will return rawContents encoded, while later libraries will\n // return rawContents decoded. Check if the contents need decoded before returning them.\n let decodedContents: string;\n try {\n decodedContents = decodeURIComponent(file.rawContents);\n if (decodedContents !== file.rawContents) {\n file.rawContents = decodedContents;\n }\n } catch (error) {\n // Pre-decoded contents may contain characters like '%' that would throw errors.\n // In these cases, pass along the original rawContents.\n }\n return file;\n });\n }\n}\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsSourceCodeService } from '../source-code/source-code.service';\n\nimport { SkyDocsCodeExamplesEditorService } from './code-examples-editor.service';\n\nimport { SkyDocsCodeExampleComponent } from './code-example.component';\n\nimport { SkyDocsCodeExampleModuleDependencies } from './code-example-module-dependencies';\n\nimport { SkyDocsCodeExample } from './code-example';\n\n/**\n * Wraps all code examples and handles their configuration and styles.\n * @example\n * ```\n * <sky-docs-code-examples\n * [packageDependencies]=\"{\n * \"foobar\": \"*\",\n * \"baz\": \"1.2.3\"\n * }\"\n * >\n * <sky-docs-code-example>\n * </sky-docs-code-example>\n * </sky-docs-code-examples>\n * ```\n */\n@Component({\n selector: 'sky-docs-code-examples',\n templateUrl: './code-examples.component.html',\n styleUrls: ['./code-examples.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCodeExamplesComponent implements AfterContentInit {\n /**\n * Any extra NPM package dependencies that are needed for the editor to run the code example.\n * @default {}\n */\n @Input()\n public set packageDependencies(value: SkyDocsCodeExampleModuleDependencies) {\n this._packageDependencies = value;\n }\n\n public get packageDependencies(): SkyDocsCodeExampleModuleDependencies {\n return this._packageDependencies || {};\n }\n\n @Input()\n public stylesheets: string[] = [];\n\n public codeExamples: SkyDocsCodeExample[] = [];\n\n @ContentChildren(SkyDocsCodeExampleComponent)\n private codeExampleComponents: QueryList<SkyDocsCodeExampleComponent>;\n\n private _packageDependencies: SkyDocsCodeExampleModuleDependencies;\n\n constructor(\n private editorService: SkyDocsCodeExamplesEditorService,\n private sourceCodeService: SkyDocsSourceCodeService\n ) {}\n\n public ngAfterContentInit(): void {\n this.codeExampleComponents.forEach((component) => {\n // Make sure the source code path ends in a slash, so that similarly named directories aren't included.\n let sourceCodePath = component.sourceCodePath;\n if (sourceCodePath.slice(-1) !== '/') {\n sourceCodePath += '/';\n }\n\n const sourceCode = this.sourceCodeService.getSourceCode(sourceCodePath);\n\n if (!sourceCode.length) {\n console.warn(\n `Source code not found at location \"${sourceCodePath}\" for \"${component.heading}\"!`\n );\n return;\n }\n\n this.codeExamples.push({\n heading: component.heading,\n packageDependencies: this.packageDependencies,\n sourceCode,\n stylesheets: this.stylesheets,\n theme: component.theme,\n });\n });\n }\n\n public launchEditor(codeExample: SkyDocsCodeExample): void {\n this.editorService.launchEditor(codeExample);\n }\n\n /**\n * Returns a string representing one of PrismJS's supported language types.\n * See: https://prismjs.com/#supported-languages\n */\n public parseCodeLanguageType(fileName: string): string {\n const extension = fileName.split('.').pop().toLowerCase();\n\n switch (extension) {\n case 'ts':\n return 'typescript';\n case 'html':\n return 'markup';\n default:\n return extension;\n }\n }\n}\n","<div *ngIf=\"codeExamples && codeExamples.length\" class=\"sky-docs-code-examples\">\n <sky-repeater\n *ngIf=\"codeExamples.length > 1; else singleCodeExample\"\n expandMode=\"multiple\"\n >\n <sky-repeater-item\n *ngFor=\"let codeExample of codeExamples\"\n [isExpanded]=\"false\"\n >\n <sky-repeater-item-title>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleHeaderTemplate;\n context: { $implicit: codeExample }\n \"\n >\n </ng-container>\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleTemplate;\n context: { $implicit: codeExample }\n \"\n >\n </ng-container>\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n</div>\n\n<ng-template>\n <ng-content select=\"sky-docs-code-example\"> </ng-content>\n</ng-template>\n\n<ng-template let-item #codeExampleTemplate>\n <div class=\"sky-docs-code-example-wrapper\">\n <sky-vertical-tabset *ngIf=\"item.sourceCode && item.sourceCode.length\">\n <sky-vertical-tab\n *ngFor=\"let file of item.sourceCode; let i = index\"\n [active]=\"i === 0\"\n [tabHeading]=\"file.fileName\"\n >\n <sky-code-block\n [code]=\"file.rawContents\"\n [languageType]=\"parseCodeLanguageType(file.fileName)\"\n >\n </sky-code-block>\n </sky-vertical-tab>\n </sky-vertical-tabset>\n </div>\n</ng-template>\n\n<ng-template #singleCodeExample>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleHeaderTemplate;\n context: { $implicit: codeExamples[0] }\n \"\n >\n </ng-container>\n <ng-container\n *ngTemplateOutlet=\"\n codeExampleTemplate;\n context: { $implicit: codeExamples[0] }\n \"\n >\n </ng-container>\n</ng-template>\n\n<ng-template let-codeExample #codeExampleHeaderTemplate>\n <div class=\"sky-docs-code-example-header\">\n <div class=\"sky-docs-code-example-header-title sky-emphasized\">\n {{ codeExample.heading }}\n </div>\n <div class=\"sky-docs-code-example-header-controls\">\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n (click)=\"launchEditor(codeExample); $event.stopPropagation()\"\n >\n <sky-icon icon=\"pencil\"></sky-icon>\n {{ 'sky-docs-code-example-launch-button-label' | skyLibResources }}\n </button>\n </div>\n </div>\n</ng-template>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyCodeBlockModule } from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyRepeaterModule } from '@skyux/lists';\n\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SkyDocsCodeExampleComponent } from './code-example.component';\n\nimport { SkyDocsCodeExamplesComponent } from './code-examples.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyCodeBlockModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyRepeaterModule,\n SkyVerticalTabsetModule,\n ],\n declarations: [SkyDocsCodeExampleComponent, SkyDocsCodeExamplesComponent],\n exports: [SkyDocsCodeExampleComponent, SkyDocsCodeExamplesComponent],\n})\nexport class SkyDocsCodeExamplesModule {}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnDestroy,\n OnInit,\n} from '@angular/core';\n\nimport { ReplaySubject } from 'rxjs';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\n/**\n * Renders a checkbox control within the control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel-checkbox\n * label=\"Show title\"\n * [checked]=\"true\"\n * [propertyName]=\"showTitle\"\n * >\n * </sky-docs-demo-control-panel-checkbox>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel-checkbox',\n templateUrl: './demo-control-panel-checkbox.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelCheckboxComponent\n implements OnInit, OnDestroy\n{\n /**\n * The checked status of the checkbox.\n * @default false\n */\n @Input()\n public set checked(value: boolean) {\n if (value !== undefined && this._checked === undefined) {\n this.initialState.checked = value;\n }\n\n this._checked = value;\n }\n\n public get checked(): boolean {\n return this._checked || false;\n }\n\n /**\n * Indicates whether to disable the checkbox.\n */\n @Input()\n public disabled: boolean = false;\n\n /**\n * The text label of the checkbox.\n * @required\n */\n @Input()\n public label: string;\n\n /**\n * The name of the component property that is affected by this control.\n * @required\n */\n @Input()\n public propertyName: string;\n\n public selectionChange = new ReplaySubject<SkyDocsDemoControlPanelChange>();\n\n private initialState: {\n checked?: boolean;\n } = {};\n\n private _checked: boolean;\n\n constructor(private changeDetector: ChangeDetectorRef) {}\n\n public ngOnInit(): void {\n setTimeout(() => {\n this.initialState.checked = this.checked;\n this.notifyChange();\n });\n }\n\n public ngOnDestroy(): void {\n this.selectionChange.complete();\n }\n\n public onModelChange(): void {\n this.notifyChange();\n }\n\n public resetState(): void {\n if (this.initialState.checked !== this.checked) {\n this.checked = !!this.initialState.checked;\n this.notifyChange();\n this.changeDetector.markForCheck();\n }\n }\n\n private notifyChange(): void {\n this.selectionChange.next({\n [this.propertyName]: this.checked,\n });\n }\n}\n","<sky-checkbox\n [disabled]=\"disabled\"\n [name]=\"propertyName\"\n [(ngModel)]=\"checked\"\n (change)=\"onModelChange()\"\n>\n <sky-checkbox-label>{{ label }}</sky-checkbox-label>\n</sky-checkbox>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n OnDestroy,\n} from '@angular/core';\n\nimport { ReplaySubject } from 'rxjs';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\nimport { SkyDocsDemoControlPanelRadioChoice } from './demo-control-panel-radio-choice';\n\n/**\n * Renders a radio control group.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel-radio-group\n * [choices]=\"[\n * { 'label': 'Red', value: '#f00' },\n * { 'label': 'Green', value: '#0f0' },\n * { 'label': 'Blue', value: '#00f' }\n * ]\"\n * heading=\"Choose a color\"\n * initialValue=\"Red\"\n * propertyName=\"color\"\n * >\n * </sky-docs-demo-control-panel-radio-group>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel-radio-group',\n templateUrl: './demo-control-panel-radio-group.component.html',\n styleUrls: ['./demo-control-panel-radio-group.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelRadioGroupComponent\n implements OnInit, OnDestroy\n{\n /**\n * The possible choices to be represented by radio controls.\n * @required\n */\n @Input()\n public choices: SkyDocsDemoControlPanelRadioChoice[];\n\n /**\n * Indicates whether to disable the radio group.\n */\n @Input()\n public disabled: boolean = false;\n\n /**\n * The heading text to appear above the radio group.\n */\n @Input()\n public heading: string;\n\n /**\n * The initial value of the radio group.\n */\n @Input()\n public initialValue: any;\n\n /**\n * The name of the component property that is affected by this radio group.\n * @required\n */\n @Input()\n public propertyName: string;\n\n /**\n * @internal\n */\n public selectionChange = new ReplaySubject<SkyDocsDemoControlPanelChange>();\n\n /**\n * @internal\n */\n public value: any;\n\n constructor(private changeDetector: ChangeDetectorRef) {}\n\n public ngOnInit(): void {\n this.value = this.cloneValue(this.initialValue);\n this.#notifyChange();\n }\n\n public ngOnDestroy(): void {\n this.selectionChange.complete();\n }\n\n public onModelChange(value: any): void {\n this.value = value;\n this.#notifyChange();\n }\n\n public resetValue(): void {\n this.value = this.cloneValue(this.initialValue);\n this.#notifyChange();\n this.changeDetector.markForCheck();\n }\n\n private cloneValue(value: any): any {\n if (typeof value === 'object') {\n return JSON.parse(JSON.stringify(value));\n }\n\n return value;\n }\n\n #notifyChange(): void {\n this.selectionChange.next({\n [this.propertyName]: this.value,\n });\n }\n}\n","<div class=\"sky-demo-control-panel-radio-group\">\n <strong *ngIf=\"heading\">{{ heading }}</strong>\n <sky-radio-group\n [disabled]=\"disabled\"\n [name]=\"propertyName\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n >\n <ul class=\"sky-list-unstyled\">\n <li *ngFor=\"let choice of choices\">\n <sky-radio [value]=\"choice.value\">\n <sky-radio-label>{{ choice.label }}</sky-radio-label>\n </sky-radio>\n </li>\n </ul>\n </sky-radio-group>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n OnDestroy,\n Output,\n QueryList,\n} from '@angular/core';\n\nimport { merge, Subject, Subscription } from 'rxjs';\n\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyDocsDemoControlPanelCheckboxComponent } from './demo-control-panel-checkbox.component';\n\nimport { SkyDocsDemoControlPanelRadioGroupComponent } from './demo-control-panel-radio-group.component';\n\nimport { SkyDocsDemoControlPanelChange } from './demo-control-panel-change';\n\n/**\n * Handles the appearance and configuration of the behavior demo control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel\n * (selectionChange)=\"onSelectionChange($event)\"\n * >\n * Control panel content here.\n * </sky-docs-demo-control-panel>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-control-panel',\n templateUrl: './demo-control-panel.component.html',\n styleUrls: ['./demo-control-panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelComponent\n implements OnDestroy, AfterContentInit\n{\n /**\n * Fires when the user clicks the reset button.\n */\n @Output()\n /*eslint-disable-next-line @angular-eslint/no-output-native */\n public reset = new EventEmitter<void>();\n\n /**\n * Fires when a user makes a selection from one of the controls in the panel.\n */\n @Output()\n public selectionChange = new EventEmitter<SkyDocsDemoControlPanelChange>();\n\n @ContentChildren(SkyDocsDemoControlPanelRadioGroupComponent, {\n descendants: true,\n })\n private radioGroups: QueryList<SkyDocsDemoControlPanelRadioGroupComponent>;\n\n @ContentChildren(SkyDocsDemoControlPanelCheckboxComponent, {\n descendants: true,\n })\n private checkboxes: QueryList<SkyDocsDemoControlPanelCheckboxComponent>;\n\n private eventListeners: Subscription;\n private ngUnsubscribe = new Subject<void>();\n\n public ngAfterContentInit(): void {\n this.addEventListeners();\n\n merge(this.checkboxes.changes, this.radioGroups.changes)\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.addEventListeners();\n });\n }\n\n public ngOnDestroy(): void {\n this.reset.complete();\n this.selectionChange.complete();\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n public onResetButtonClick(): void {\n this.radioGroups.forEach((radioGroup) => {\n radioGroup.resetValue();\n });\n\n this.checkboxes.forEach((checkbox) => {\n checkbox.resetState();\n });\n\n this.reset.emit();\n }\n\n private addEventListeners(): void {\n if (this.eventListeners) {\n this.eventListeners.unsubscribe();\n }\n\n this.eventListeners = merge(\n ...this.checkboxes.map((c) => c.selectionChange),\n ...this.radioGroups.map((c) => c.selectionChange)\n )\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((change) => {\n this.selectionChange.next(change);\n });\n }\n}\n","<div class=\"sky-docs-demo-control-panel\">\n <div class=\"sky-docs-demo-control-panel-row sky-rounded-corners\">\n <div\n class=\"sky-docs-demo-control-panel-column sky-docs-demo-control-panel-sections-column\"\n >\n <ng-content select=\"sky-docs-demo-control-panel-section\"></ng-content>\n </div>\n\n <div\n class=\"sky-docs-demo-control-panel-column sky-docs-demo-control-panel-button-column\"\n >\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.data-test-selector]=\"'sky-docs-demo-control-panel-reset-button'\"\n (click)=\"onResetButtonClick()\"\n >\n {{ 'sky-docs-demo-control-panel-reset-button-label' | skyLibResources }}\n </button>\n </div>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsDemoContentAlignment } from './demo-content-alignment';\n\nimport { SkyDocsDemoControlPanelComponent } from './demo-control-panel.component';\n\n/**\n * Wraps all behavior demo components and handles the configuration and appearance of the behavior demo.\n * @example\n * ```markup\n * <sky-docs-demo>\n * Demo content here.\n * </sky-docs-demo>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo',\n templateUrl: './demo.component.html',\n styleUrls: ['./demo.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoComponent {\n /**\n * Specifies the horizontal alignment of the demo contents.\n * @default 'left'\n */\n @Input()\n public set alignContents(value: SkyDocsDemoContentAlignment) {\n this._alignContents = value;\n }\n\n public get alignContents(): SkyDocsDemoContentAlignment {\n return this._alignContents || 'left';\n }\n\n /**\n * Custom heading text for the demo.\n */\n @Input()\n public heading: string;\n\n public get hasOptions(): boolean {\n return this.controlPanels && this.controlPanels.length > 0;\n }\n\n @ContentChildren(SkyDocsDemoControlPanelComponent, { read: ElementRef })\n private controlPanels: QueryList<SkyDocsDemoControlPanelComponent>;\n\n public get toggleOptionsButtonIcon(): string {\n return this.areOptionsVisible ? 'chevron-up' : 'chevron-down';\n }\n\n public areOptionsVisible = false;\n\n private _alignContents: SkyDocsDemoContentAlignment;\n\n public onToggleOptionsButtonClick(): void {\n this.areOptionsVisible = !this.areOptionsVisible;\n }\n}\n","<div class=\"sky-docs-demo\">\n <div aria-level=\"3\" class=\"sky-docs-demo-heading\" role=\"heading\">\n <span\n class=\"sky-section-heading\"\n [attr.data-test-selector]=\"'sky-docs-demo-heading-text'\"\n >\n {{ heading || ('sky-docs-demo-heading' | skyLibResources) }}\n </span>\n\n <div class=\"sky-docs-demo-control-panel-wrapper\">\n <div class=\"sky-docs-demo-control-panel-wrapper-header\">\n <button\n *ngIf=\"hasOptions\"\n class=\"sky-btn\"\n type=\"button\"\n [attr.data-test-selector]=\"'sky-docs-demo-heading-button'\"\n [ngClass]=\"{\n 'sky-docs-demo-heading-btn-open': areOptionsVisible\n }\"\n (click)=\"onToggleOptionsButtonClick()\"\n >\n <sky-icon [icon]=\"toggleOptionsButtonIcon\"></sky-icon>\n <ng-container *ngIf=\"areOptionsVisible\">\n {{ 'sky-docs-demo-toggle-button-off' | skyLibResources }}\n </ng-container>\n <ng-container *ngIf=\"!areOptionsVisible\">\n {{ 'sky-docs-demo-toggle-button-on' | skyLibResources }}\n </ng-container>\n </button>\n </div>\n <div class=\"sky-docs-demo-control-panel-wrapper-body\">\n <ng-container *ngIf=\"areOptionsVisible\">\n <ng-container *ngTemplateOutlet=\"controlPanels\"></ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n\n <div\n class=\"sky-docs-demo-viewport\"\n [ngClass]=\"'sky-docs-demo-viewport-align-' + alignContents\"\n >\n <div class=\"sky-docs-demo-viewport-gutter\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<ng-template #controlPanels>\n <ng-content select=\"sky-docs-demo-control-panel\"></ng-content>\n</ng-template>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Renders a section within the control panel.\n * @example\n * ```markup\n * <sky-docs-demo-control-panel>\n * <sky-docs-demo-control-panel-section>\n * Section content here.\n * </sky-docs-demo-control-panel-section>\n * </sky-docs-demo-control-panel>\n * ```\n */\n\n@Component({\n selector: 'sky-docs-demo-control-panel-section',\n templateUrl: './demo-control-panel-section.component.html',\n styleUrls: ['./demo-control-panel-section.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoControlPanelSectionComponent {}\n","<div class=\"sky-demo-control-panel-section\">\n <ng-content select=\"sky-docs-demo-control-panel-radio-group\"></ng-content>\n <ng-content select=\"sky-docs-demo-control-panel-checkbox\"></ng-content>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { FormsModule } from '@angular/forms';\n\nimport { SkyCheckboxModule, SkyRadioModule } from '@skyux/forms';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SkyDocsDemoComponent } from './demo.component';\n\nimport { SkyDocsDemoControlPanelCheckboxComponent } from './demo-control-panel-checkbox.component';\n\nimport { SkyDocsDemoControlPanelComponent } from './demo-control-panel.component';\n\nimport { SkyDocsDemoControlPanelRadioGroupComponent } from './demo-control-panel-radio-group.component';\n\nimport { SkyDocsDemoControlPanelSectionComponent } from './demo-control-panel-section.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SkyCheckboxModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyRadioModule,\n SkyThemeModule,\n ],\n declarations: [\n SkyDocsDemoComponent,\n SkyDocsDemoControlPanelCheckboxComponent,\n SkyDocsDemoControlPanelComponent,\n SkyDocsDemoControlPanelRadioGroupComponent,\n SkyDocsDemoControlPanelSectionComponent,\n ],\n exports: [\n SkyDocsDemoComponent,\n SkyDocsDemoControlPanelCheckboxComponent,\n SkyDocsDemoControlPanelComponent,\n SkyDocsDemoControlPanelRadioGroupComponent,\n SkyDocsDemoControlPanelSectionComponent,\n ],\n})\nexport class SkyDocsDemoModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-heading-anchor',\n templateUrl: './heading-anchor.component.html',\n styleUrls: ['./heading-anchor.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsHeadingAnchorComponent {\n @Input()\n public anchorId: string;\n\n @Input()\n public headingLevel = '2';\n}\n","<div\n class=\"sky-docs-heading-anchor\"\n role=\"heading\"\n [ngClass]=\"'sky-docs-tools-heading-anchor-h' + headingLevel\"\n [attr.aria-level]=\"headingLevel\"\n [attr.id]=\"anchorId || null\"\n>\n <ng-content></ng-content>\n <a\n *ngIf=\"anchorId\"\n aria-hidden=\"true\"\n class=\"sky-docs-heading-anchor\"\n queryParamsHandling=\"merge\"\n [fragment]=\"anchorId\"\n [routerLink]=\"[]\"\n >\n <sky-icon class=\"sky-docs-heading-anchor-icon\" icon=\"link\"></sky-icon>\n </a>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { RouterModule } from '@angular/router';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n@NgModule({\n declarations: [SkyDocsHeadingAnchorComponent],\n imports: [CommonModule, RouterModule, SkyIconModule],\n exports: [SkyDocsHeadingAnchorComponent],\n})\nexport class SkyDocsHeadingAnchorModule {}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { marked } from 'marked';\n\n@Pipe({\n name: 'skyDocsMarkdown',\n})\nexport class SkyDocsMarkdownPipe implements PipeTransform {\n public transform(markdown: string): string {\n if (!markdown) {\n return '';\n }\n\n return marked(markdown);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsMarkdownPipe } from './markdown.pipe';\n\n@NgModule({\n declarations: [SkyDocsMarkdownPipe],\n providers: [SkyDocsMarkdownPipe],\n exports: [SkyDocsMarkdownPipe],\n})\nexport class SkyDocsMarkdownModule {}\n","export class SkyDocsToolsOptions {\n public gitRepoUrl: string;\n\n public packageName: string;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n Optional,\n} from '@angular/core';\n\nimport { SkyDocsToolsOptions } from '../shared/docs-tools-options';\n\ntype ExternalLink = { label: string; url: string };\n\n@Component({\n selector: 'sky-docs-module-info',\n templateUrl: './module-info.component.html',\n styleUrls: ['./module-info.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsModuleInfoComponent {\n @Input()\n public set gitRepoUrl(value: string | undefined) {\n this.gitRepoUrlOrDefault = value || this.#options?.gitRepoUrl;\n this.#updateExternalLinks();\n }\n\n @Input()\n public moduleName: string | undefined;\n\n @Input()\n public set packageName(value: string | undefined) {\n this.packageNameOrDefault = value || this.#options?.packageName;\n this.#updateInstallationCommand();\n this.#updateExternalLinks();\n }\n\n @Input()\n public set packageUrl(value: string | undefined) {\n this.#packageUrl = value;\n this.#updateExternalLinks();\n }\n\n public gitRepoUrlOrDefault: string | undefined;\n\n public packageNameOrDefault: string | undefined;\n\n public externalLinks: ExternalLink[] | undefined;\n\n public installationCommand: string | undefined;\n\n #options: SkyDocsToolsOptions | undefined;\n\n #packageUrl: string | undefined;\n\n constructor(@Optional() options?: SkyDocsToolsOptions) {\n if (options) {\n this.#options = options;\n this.gitRepoUrl = options.gitRepoUrl;\n this.packageName = options.packageName;\n }\n }\n\n #updateExternalLinks(): void {\n const externalLinks: ExternalLink[] = [];\n\n if (this.packageNameOrDefault) {\n externalLinks.push({\n url:\n this.#packageUrl ||\n `https://npmjs.org/package/${this.packageNameOrDefault}`,\n label: 'View in NPM',\n });\n }\n\n if (this.gitRepoUrlOrDefault) {\n externalLinks.push({\n url: this.gitRepoUrlOrDefault,\n label: 'View in GitHub',\n });\n }\n\n this.externalLinks = externalLinks;\n }\n\n #updateInstallationCommand(): void {\n this.installationCommand = this.packageNameOrDefault\n ? `npm install --save-exact ${this.packageNameOrDefault}`\n : '';\n }\n}\n","<div class=\"sky-docs-module-info\">\n <sky-description-list mode=\"vertical\">\n <sky-description-list-content>\n <sky-description-list-term> Defined in </sky-description-list-term>\n <sky-description-list-description>\n <sky-code class=\"sky-docs-module-info-module-name\">{{\n moduleName\n }}</sky-code>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"packageNameOrDefault\">\n <sky-description-list-term>NPM package</sky-description-list-term>\n <sky-description-list-description>\n <span class=\"sky-docs-module-info-package-name\"\n ><sky-code>{{ packageNameOrDefault }}</sky-code></span\n >\n <ng-container *ngFor=\"let externalLink of externalLinks; let i = index\">\n <a\n class=\"sky-docs-module-info-external-link\"\n [href]=\"externalLink.url\"\n >{{ externalLink.label }}</a\n >\n <span *ngIf=\"i < externalLinks.length - 1\"> | </span>\n </ng-container>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"installationCommand\">\n <sky-description-list-term>\n Installation\n <sky-help-inline\n class=\"sky-control-help\"\n [skyPopover]=\"installationCommandPopover\"\n skyPopoverPlacement=\"right\"\n >\n </sky-help-inline>\n </sky-description-list-term>\n <sky-description-list-description>\n <sky-popover #installationCommandPopover>\n To use this module, you must install peer dependencies along with its\n package. Also, after you install the package, you must add the module\n as an export in your SPA's main module to make exports available to\n your SPA.\n </sky-popover>\n <div class=\"sky-docs-module-info-installation-command\">\n <span\n class=\"sky-docs-module-info-installation-command-code\"\n #copyTarget\n >\n <sky-code>{{ installationCommand }}</sky-code>\n </span>\n <sky-copy-to-clipboard\n buttonText=\"Copy\"\n [copyTarget]=\"copyTarget\"\n ></sky-copy-to-clipboard>\n </div>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n\n <div class=\"sky-docs-module-info-additional-content\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyClipboardModule } from '@blackbaud/skyux-lib-clipboard';\n\nimport { SkyCodeModule } from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyHelpInlineModule } from '@skyux/indicators';\n\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\nimport { SkyPopoverModule } from '@skyux/popovers';\n\nimport { SkyDocsModuleInfoComponent } from './module-info.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyCodeModule,\n SkyClipboardModule,\n SkyDescriptionListModule,\n SkyHelpInlineModule,\n SkyPopoverModule,\n ],\n declarations: [SkyDocsModuleInfoComponent],\n exports: [SkyDocsModuleInfoComponent],\n})\nexport class SkyDocsModuleInfoModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\n@Component({\n selector: 'sky-docs-safe-html',\n templateUrl: './safe-html.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsSafeHtmlComponent {\n @Input()\n public innerHtml: string;\n\n constructor(private domSanitizer: DomSanitizer) {}\n\n public getTrustedHtml(content: string): SafeHtml {\n return this.domSanitizer.bypassSecurityTrustHtml(content);\n }\n}\n","<div class=\"sky-docs-safe-html\" [innerHtml]=\"getTrustedHtml(innerHtml)\"></div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyDocsSafeHtmlComponent } from './safe-html.component';\n\n@NgModule({\n declarations: [SkyDocsSafeHtmlComponent],\n imports: [CommonModule],\n exports: [SkyDocsSafeHtmlComponent],\n})\nexport class SkyDocsSafeHtmlModule {}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsParameterDefinition } from './parameter-definition';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinition } from './type-definition';\n\nimport { SkyDocsTypeParameterDefinition } from './type-parameter-definition';\n\nimport { SkyDocsInterfacePropertyDefinition } from './interface-property-definition';\n\ninterface GetFormattedTypeConfig {\n escapeSpecialCharacters: boolean;\n}\n\n/**\n * Formats type definitions into HTML-compatible strings.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsTypeDefinitionsFormatService {\n /**\n * Returns an HTML-formatted representation of the provided interface config.\n */\n public getInterfaceSourceCode(\n definition: SkyDocsInterfaceDefinition\n ): string {\n const typeParameters = this.getFormattedTypeParameters(\n definition.typeParameters\n );\n const config = {\n escapeSpecialCharacters: false,\n };\n\n let signature: string = `interface ${definition.name}${typeParameters} {`;\n signature += this.getFormattedInterfaceProperties(definition, config);\n signature += '\\n}';\n\n return signature;\n }\n\n /**\n * Returns an HTML-formatted representation of the provided method config.\n */\n public getMethodSourceCode(definition: SkyDocsClassMethodDefinition): string {\n const config = {\n escapeSpecialCharacters: false,\n };\n\n const typeArguments = this.getFormattedTypeArguments(\n definition.type,\n config\n );\n const callSignature = definition.type.callSignature;\n const returnType = this.getFormattedType(callSignature.returnType, config);\n\n let params: string = '';\n if (callSignature.parameters) {\n params += callSignature.parameters\n .map((p) => this.getFormattedParameterName(p, config))\n .join(', ');\n }\n\n return `public ${definition.isStatic ? 'static ' : ''}${\n definition.name\n }${typeArguments}(${params}): ${returnType}`;\n }\n\n /**\n * Returns an HTML-formatted representation of the provided type alias config.\n */\n public getTypeAliasSourceCode(\n definition: SkyDocsTypeAliasDefinition\n ): string {\n const config = {\n escapeSpecialCharacters: false,\n };\n\n const typeParameters = this.getFormattedTypeParameters(\n definition.typeParameters\n );\n\n let signature = `type ${definition.name}${typeParameters} = `;\n\n if (definition.type.callSignature) {\n signature += this.getFormattedCallSignature(\n definition.type.callSignature,\n {\n escapeSpecialCharacters: false,\n }\n );\n } else if (definition.type.indexSignature) {\n const indexSignature = definition.type.indexSignature;\n const type = this.getFormattedType(indexSignature.type, {\n escapeSpecialCharacters: false,\n });\n signature += `{\\n [${indexSignature.key.name}: string]: ${type};\\n}`;\n } else {\n /*istanbul ignore else */\n if (definition.type.type === 'union') {\n signature += this.getFormattedUnion(definition.type, config);\n }\n }\n\n return signature;\n }\n\n /**\n * Returns a formatted string representing a parameter's name and value. For example: `'foo: string'`.\n */\n public getFormattedParameterName(\n parameter: SkyDocsParameterDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n const optionalMarker = parameter.isOptional ? '?' : '';\n const parameterType = this.getFormattedType(parameter.type, config);\n\n let signature = `${parameter.name}${optionalMarker}: ${parameterType}`;\n if (config.escapeSpecialCharacters) {\n signature = this.escapeSpecialCharacters(signature);\n }\n\n return signature;\n }\n\n /**\n * Returns a formatted string representing a property (or method's) name and value. For example: `'public foo: string'`.\n */\n public getFormattedPropertyName(\n property: SkyDocsClassPropertyDefinition\n ): string {\n let signature = '';\n\n if (property.decorator?.name) {\n signature += `@${property.decorator.name}()<br>`;\n }\n\n const indexSignature = property.type?.indexSignature;\n let name: string;\n if (indexSignature) {\n name = `[${indexSignature.key.name}: ${this.getFormattedType(\n indexSignature.key.type\n )}]`;\n } else {\n name = property.name;\n }\n\n if (property.deprecationWarning !== undefined) {\n signature += `<strike>${name}</strike>`;\n } else {\n signature += name;\n }\n\n if (\n property.decorator?.name !== 'Output' &&\n property.isOptional &&\n !indexSignature\n ) {\n signature += '?';\n }\n\n if (indexSignature) {\n signature += `: ${this.getFormattedType(indexSignature.type)}`;\n } else if (property.type) {\n signature += `: ${this.getFormattedType(property.type)}`;\n }\n\n return signature;\n }\n\n /**\n * Returns an HTML-formatted method name to be used on the properties table.\n */\n public getFormattedMethodName(\n definition: SkyDocsClassMethodDefinition\n ): string {\n let formatted = '';\n\n if (definition.isStatic) {\n formatted += `${definition.parentName}.`;\n }\n\n if (definition.deprecationWarning !== undefined) {\n formatted = `<strike>${formatted}${definition.name}</strike>`;\n } else {\n formatted += definition.name;\n }\n\n return `${formatted}()`;\n }\n\n /**\n * Returns a formatted string representing the provided type.\n */\n public getFormattedType(\n type: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n let formatted = 'any';\n\n if (!type) {\n return formatted;\n }\n\n if (type.callSignature) {\n let formattedSignature = this.getFormattedCallSignature(\n type.callSignature,\n config\n );\n\n if (type.type === 'array') {\n formattedSignature = `(${formattedSignature})[]`;\n }\n return formattedSignature;\n }\n\n if (type.unionTypes) {\n return this.getFormattedUnion(type, config);\n }\n\n if (type.name !== null && type.name !== undefined) {\n formatted = `${type.name}`;\n }\n\n if (type.typeArguments) {\n formatted += this.getFormattedTypeArguments(type, config);\n }\n\n if (type.type === 'array') {\n formatted += '[]';\n }\n\n if (type.type === 'literal' && typeof type.name === 'string') {\n formatted = `'${formatted}'`;\n }\n\n if (type.typeLiteral) {\n const formattedTypeLiteral = this.getFormattedInterfaceProperties(\n type.typeLiteral,\n config\n )\n .replace(/\\n/g, ' ')\n .replace(/\\s\\s+/g, ' ');\n formatted = `{${formattedTypeLiteral} }`;\n }\n\n if (config.escapeSpecialCharacters) {\n return this.escapeSpecialCharacters(formatted);\n }\n\n return formatted;\n }\n\n public escapeSpecialCharacters(value: string): string {\n return value.replace(/</g, '<').replace(/>/g, '>');\n }\n\n private getFormattedCallSignature(\n callSignature: SkyDocsCallSignatureDefinition,\n config: GetFormattedTypeConfig = {\n escapeSpecialCharacters: true,\n }\n ): string {\n const returnType = this.getFormattedType(callSignature.returnType, config);\n\n if (!callSignature.parameters) {\n return `() => ${returnType}`;\n }\n\n const formattedParams = callSignature.parameters\n .map((p) => this.getFormattedParameterName(p, config))\n .join(', ');\n\n return `(${formattedParams}) => ${returnType}`;\n }\n\n private getFormattedUnion(\n typeConfig: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig\n ): string {\n return typeConfig.unionTypes\n .map((t) => {\n return this.getFormattedType(t, config);\n })\n .join(' | ');\n }\n\n /**\n * Parse any type arguments e.g. `<T, F>`.\n */\n private getFormattedTypeArguments(\n typeConfig: SkyDocsTypeDefinition,\n config: GetFormattedTypeConfig\n ): string {\n if (!typeConfig.typeArguments) {\n return '';\n }\n\n const typeArguments = typeConfig.typeArguments.map((typeArgument) => {\n if (typeArgument.type === 'array') {\n return `${typeArgument.name}[]`;\n }\n\n if (typeArgument.unionTypes) {\n return this.getFormattedUnion(typeArgument, config);\n }\n\n return typeArgument.name;\n });\n\n return `<${typeArguments.join(', ')}>`;\n }\n\n private getFormattedTypeParameters(\n typeParameters: SkyDocsTypeParameterDefinition[]\n ): string {\n if (!typeParameters) {\n return '';\n }\n\n const formatted = typeParameters.map((typeParameter) => {\n let result = typeParameter.name;\n if (typeParameter.type && typeParameter.type.type === 'reference') {\n result += ` extends ${typeParameter.type.name}`;\n }\n\n return result;\n });\n\n return `<${formatted.join(', ')}>`;\n }\n\n private getFormattedInterfaceProperties(\n definition: {\n properties?: SkyDocsInterfacePropertyDefinition[];\n },\n config?: GetFormattedTypeConfig\n ): string {\n let signature: string = '';\n\n definition.properties.forEach((property) => {\n const indexSignature = property.type.indexSignature;\n const optionalIndicator =\n property.isOptional && !indexSignature ? '?' : '';\n const propertyType = this.getFormattedType(property.type, config);\n\n let name: string;\n if (indexSignature) {\n name = `[${indexSignature.key.name}: string]`;\n } else {\n name = property.name;\n }\n\n signature += `\\n ${name}${optionalIndicator}: ${propertyType};`;\n });\n\n return signature;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { TypeDocEntry } from './typedoc-types';\n\n@Injectable()\nexport class SkyDocsTypeDefinitionsProvider {\n public readonly anchorIds: { [_: string]: string };\n\n public readonly typeDefinitions: TypeDocEntry[];\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsAnchorLinkConfig } from './anchor-link-service-config';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\n/**\n * Finds any type name that is NOT surrounded by alpha-numeric (and '>', '<', '.') characters.\n * (This is to avoid matching types that share similar words, such as `Foo` and `FooUser`.)\n * Notes:\n * - If the type name is surrounded by angle brackets, then it has already been processed as a link.\n * - If the type name starts with a period '.', then it is a sub property of an enumeration, etc. and should not be processed as a link.\n * - If the type name ends with a period followed immediately by any word character, then it is a method or property (Foo.bar).\n * Only the type name should be processed as a link.\n */\nfunction createRegex(keyword: string): RegExp {\n return new RegExp(\n `(^|[^a-zA-Z0-9>.[/])(${keyword})(\\\\.\\\\w+)?(?=[^a-zA-Z0-9<]+|$)`,\n 'g'\n );\n}\n\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsAnchorLinkService {\n private anchorIds: { [_: string]: string };\n\n constructor(typeDefinitionsProvider: SkyDocsTypeDefinitionsProvider) {\n this.anchorIds = typeDefinitionsProvider.anchorIds;\n }\n\n /**\n * Formats known type names with `<code>` tags and wraps them with anchor tags, linking to the appropriate type.\n * If the content is already contained within a `<code>` tag, set `codeFormat = false` to prevent extra `<code>` tags from being added.\n */\n public applyTypeAnchorLinks(\n content: string,\n config?: SkyDocsAnchorLinkConfig\n ): string {\n if (!this.anchorIds || !content) {\n return content;\n }\n\n // Set default for code formatting.\n if (!config) {\n config = {\n applyCodeFormatting: true,\n };\n }\n\n content = this.removeDoubleSquareBrackets(content);\n\n Object.keys(this.anchorIds).forEach((typeName) => {\n content = this.removeBackticks(typeName, content);\n\n let matches: RegExpExecArray;\n let counter = 0;\n const max = 100;\n\n const regex = createRegex(typeName);\n\n do {\n matches = regex.exec(content);\n if (matches) {\n const anchorId = this.anchorIds[typeName];\n const anchorHtml =\n '<a class=\"sky-docs-anchor-link\" href=\"#' +\n anchorId +\n '\">' +\n typeName +\n '</a>';\n\n // Group 3 of the regex pattern captures type properties like Foo.bar.\n // If these are found, they do not need hyperlinked, but add them to the encapsulating code tag.\n const typeProperty = matches[3] ? matches[3] : '';\n\n let replacement;\n if (config.applyCodeFormatting) {\n replacement = '<code>' + anchorHtml + typeProperty + '</code>';\n } else {\n replacement = anchorHtml + typeProperty;\n }\n\n // Regex Positive lookbehinds aren't supported in IE11 and Safari, so we have to check if the match has a starting extra character\n // (usually whitespace \" Foo\"), and then modify the starting/ending indexes to account for the extra character.\n const isMatchExact =\n matches[0].substr(0, typeName.length) === typeName;\n const startIndex = isMatchExact ? matches.index : matches.index + 1;\n const endIndex = isMatchExact\n ? matches[0].length\n : matches[0].length - 1;\n let contentWithCodeTags =\n content.substr(0, startIndex) +\n replacement +\n content.substr(startIndex + endIndex);\n\n content = contentWithCodeTags;\n counter++;\n }\n } while (matches !== null && counter < max);\n });\n\n return content;\n }\n\n /**\n * For backwards compatibility, we need to remove any double brackets wrapped around types.\n * e.g., `[[SampleType]]`\n */\n private removeDoubleSquareBrackets(content: string): string {\n const match = content.match(/\\[\\[.*\\]\\]/);\n if (match) {\n const typeName = match[0].replace(/\\[\\[/g, '').replace(/\\]\\]/g, '');\n content = content.replace(match[0], typeName);\n }\n return content;\n }\n\n /**\n * Removes backtick characters around known types to prevent\n * the markdown pipe from wrapping them with code elements.\n */\n private removeBackticks(typeName: string, content: string): string {\n const regexp = new RegExp(`\\`(${typeName})\\``, 'g');\n return content.replace(regexp, typeName);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { SkyDocsAnchorLinkConfig } from './anchor-link-service-config';\n\nimport { SkyDocsAnchorLinkService } from './anchor-link.service';\n\nimport { SkyDocsAnchorLinkServiceFormatType } from './anchor-link-service-format';\n\n/**\n * Adds same-page anchor tags around known TypeScript types.\n */\n@Pipe({\n name: 'skyDocsTypeAnchorLinks',\n pure: true,\n})\nexport class SkyDocsTypeAnchorLinksPipe implements PipeTransform {\n constructor(private anchorLinkService: SkyDocsAnchorLinkService) {}\n\n public transform(\n value: string,\n formatType?: SkyDocsAnchorLinkServiceFormatType\n ): string {\n const anchorLinkConfig: SkyDocsAnchorLinkConfig = {\n applyCodeFormatting: formatType !== 'no-code-tags',\n };\n return this.anchorLinkService.applyTypeAnchorLinks(value, anchorLinkConfig);\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface ParameterViewModel {\n defaultValue: string;\n description: string;\n formattedName: string;\n isOptional: boolean;\n}\n\n/**\n * \"Call signatures\" include methods, functions, and inline arrow functions.\n * This component is used to document both the return type and parameters of a given call signature.\n */\n@Component({\n selector: 'sky-docs-call-signature-definition',\n templateUrl: './call-signature-definition.component.html',\n styleUrls: ['./call-signature-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsCallSignatureDefinitionComponent {\n @Input()\n public set config(value: SkyDocsCallSignatureDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsCallSignatureDefinition {\n return this._config;\n }\n\n public parameters: ParameterViewModel[];\n\n public returnTypeFormatted: string;\n\n private _config: SkyDocsCallSignatureDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.parameters = this.config?.parameters?.map((p) => {\n const vm: ParameterViewModel = {\n defaultValue: p.defaultValue,\n description: p.description,\n formattedName: this.formatService.getFormattedParameterName(p),\n isOptional: p.isOptional,\n };\n\n return vm;\n });\n\n this.returnTypeFormatted = this.formatService.getFormattedType(\n this.config?.returnType\n );\n }\n}\n","<div *ngIf=\"config\" class=\"sky-docs-call-signature-definition\">\n <ng-container *ngIf=\"parameters\">\n <h4 class=\"sky-docs-call-signature-definition-heading\">Parameters</h4>\n <table class=\"sky-docs-parameter-definitions\">\n <tbody>\n <tr *ngFor=\"let parameter of parameters\">\n <th class=\"sky-docs-parameter-definition-header\">\n <sky-code\n ><span\n [innerHtml]=\"\n parameter.formattedName\n | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n </th>\n <td class=\"sky-docs-parameter-definition-body\">\n <div\n *ngIf=\"parameter.description\"\n class=\"sky-docs-parameter-definition-description\"\n >\n <sky-docs-safe-html\n *ngIf=\"parameter.description\"\n [innerHtml]=\"\n parameter.description\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n </div>\n <div\n *ngIf=\"parameter.isOptional\"\n class=\"sky-docs-parameter-definition-label-optional\"\n >\n Optional.\n <ng-container *ngIf=\"parameter.defaultValue\">\n Default is\n <sky-code\n ><span\n [innerHtml]=\"\n parameter.defaultValue\n | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span></sky-code\n >.\n </ng-container>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n </ng-container>\n\n <ng-container *ngIf=\"returnTypeFormatted\">\n <h4 class=\"sky-docs-call-signature-definition-heading\">Returns</h4>\n\n <div class=\"sky-docs-call-signature-definition-return-type\">\n <sky-code\n ><span\n [innerHtml]=\"\n returnTypeFormatted | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n </div>\n </ng-container>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface PropertyViewModel {\n callSignature: SkyDocsCallSignatureDefinition;\n defaultValue: string;\n deprecationWarning: string;\n description: string;\n formattedName: string;\n isOutput: boolean;\n isOptional: boolean;\n}\n\n@Component({\n selector: 'sky-docs-property-definitions',\n templateUrl: './property-definitions.component.html',\n styleUrls: ['./property-definitions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsPropertyDefinitionsComponent implements OnInit {\n @Input()\n public set config(value: { properties?: SkyDocsClassPropertyDefinition[] }) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): { properties?: SkyDocsClassPropertyDefinition[] } {\n return this._config || {};\n }\n\n @Input()\n public propertyType = 'Property';\n\n @Input()\n public showOptionalStatus: boolean = true;\n\n public deprecationWarningPrefix = `<span class=\"sky-text-warning\"></span>**Deprecated.** `;\n\n public isMobile: boolean = true;\n\n public properties: PropertyViewModel[] = [];\n\n private _config: {\n properties?: SkyDocsClassPropertyDefinition[];\n };\n\n constructor(\n private changeDetector: ChangeDetectorRef,\n private formatService: SkyDocsTypeDefinitionsFormatService,\n private mediaQueryService: SkyMediaQueryService\n ) {}\n\n public ngOnInit(): void {\n this.mediaQueryService.subscribe((breakpoints: SkyMediaBreakpoints) => {\n this.isMobile = breakpoints <= SkyMediaBreakpoints.sm;\n this.changeDetector.markForCheck();\n });\n }\n\n private updateView(): void {\n this.properties = this.config?.properties?.map((property) => {\n const vm: PropertyViewModel = {\n callSignature: property.type?.callSignature,\n defaultValue: this.formatService.escapeSpecialCharacters(\n property.defaultValue || ''\n ),\n deprecationWarning: property.deprecationWarning,\n description: property.description,\n formattedName: this.formatService.getFormattedPropertyName(property),\n isOutput: property.decorator?.name === 'Output',\n isOptional: property.isOptional,\n };\n\n return vm;\n });\n }\n}\n","<div *ngIf=\"properties\" class=\"sky-docs-property-definitions\">\n <table *ngIf=\"!isMobile; else mobileTemplate\" class=\"sky-docs-table\">\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n {{ propertyType }}\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let property of properties\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-property-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-property-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n\n <ng-template #mobileTemplate>\n <dl class=\"sky-docs-property-definition-list\">\n <div\n *ngFor=\"let property of properties\"\n class=\"sky-docs-property-definition-list-item\"\n >\n <dt class=\"sky-field-label\">{{ propertyType }}</dt>\n <dd class=\"sky-docs-property-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-property-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: property }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-property #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n property.formattedName | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-property #descriptionTemplate>\n <div\n *ngIf=\"!property.isOutput && !property.isOptional && showOptionalStatus\"\n class=\"sky-docs-property-definition-label sky-text-danger\"\n >\n Required.\n </div>\n\n <sky-docs-safe-html\n *ngIf=\"property.deprecationWarning !== undefined\"\n class=\"sky-docs-property-definitions-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + property.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"property.description\"\n class=\"sky-docs-property-definitions-description\"\n [innerHtml]=\"\n property.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <div\n *ngIf=\"!property.isOutput && property.isOptional && showOptionalStatus\"\n class=\"sky-docs-property-definition-label sky-docs-property-definition-label-optional\"\n >\n Optional.\n <ng-container *ngIf=\"property.defaultValue\"\n >Default is\n <sky-code\n ><span\n [innerHtml]=\"\n property.defaultValue | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span></sky-code\n >.</ng-container\n >\n </div>\n\n <sky-docs-call-signature-definition\n *ngIf=\"property.callSignature\"\n [config]=\"property.callSignature\"\n ></sky-docs-call-signature-definition>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsDirectiveDefinition } from './directive-definition';\n\n@Component({\n selector: 'sky-docs-directive-definition',\n templateUrl: './directive-definition.component.html',\n styleUrls: ['./directive-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDirectiveDefinitionComponent {\n @Input()\n public config: SkyDocsDirectiveDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-directive-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-directive-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <h4 class=\"sky-docs-directive-definition-h4\">Selector</h4>\n\n <p class=\"sky-docs-directive-selector\">\n <sky-code>{{ config.selector }}</sky-code>\n </p>\n\n <ng-container *ngIf=\"config.codeExample\">\n <h4 class=\"sky-docs-directive-definition-h4\">Example</h4>\n <sky-code-block\n class=\"sky-docs-code-block\"\n [code]=\"config.codeExample\"\n [hideHeader]=\"true\"\n [languageType]=\"config.codeExampleLanguage\"\n >\n </sky-code-block>\n </ng-container>\n\n <sky-docs-property-definitions\n *ngIf=\"config.inputProperties?.length\"\n propertyType=\"Input\"\n [config]=\"{\n properties: config.inputProperties\n }\"\n ></sky-docs-property-definitions>\n\n <sky-docs-property-definitions\n *ngIf=\"config.eventProperties?.length\"\n propertyType=\"Event\"\n [config]=\"{\n properties: config.eventProperties\n }\"\n ></sky-docs-property-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsEnumerationDefinition } from './enumeration-definition';\n\n@Component({\n selector: 'sky-docs-enumeration-definition',\n templateUrl: './enumeration-definition.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsEnumerationDefinitionComponent {\n @Input()\n public config: SkyDocsEnumerationDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-enumeration-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-enumeration-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-docs-property-definitions\n *ngIf=\"config.members\"\n propertyType=\"Member\"\n [config]=\"{ properties: config.members }\"\n [showOptionalStatus]=\"false\"\n ></sky-docs-property-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\n@Component({\n selector: 'sky-docs-interface-definition',\n templateUrl: './interface-definition.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsInterfaceDefinitionComponent {\n @Input()\n public set config(value: SkyDocsInterfaceDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsInterfaceDefinition {\n return this._config;\n }\n\n public sourceCode: string;\n\n private _config: SkyDocsInterfaceDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.sourceCode = this.config\n ? this.formatService.getInterfaceSourceCode(this.config)\n : undefined;\n }\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-interface-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-interface-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-property-definitions\n *ngIf=\"config.properties?.length\"\n [config]=\"{ properties: config.properties }\"\n [showOptionalStatus]=\"false\"\n ></sky-docs-property-definitions>\n</div>\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit,\n} from '@angular/core';\n\nimport { SkyMediaBreakpoints, SkyMediaQueryService } from '@skyux/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\ninterface MethodViewModel {\n callSignature: SkyDocsCallSignatureDefinition;\n codeExample: string;\n codeExampleLanguage: string;\n deprecationWarning: string;\n description: string;\n formattedName: string;\n sourceCode: string;\n isStatic: boolean;\n}\n\n@Component({\n selector: 'sky-docs-method-definitions',\n templateUrl: './method-definitions.component.html',\n styleUrls: ['./method-definitions.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsMethodDefinitionsComponent implements OnInit {\n @Input()\n public set config(value: { methods?: SkyDocsClassMethodDefinition[] }) {\n this.#_config = value;\n this.updateView();\n }\n\n public get config(): { methods?: SkyDocsClassMethodDefinition[] } {\n return this.#_config || {};\n }\n\n public deprecationWarningPrefix = `<span class=\"sky-text-warning\"></span>**Deprecated.** `;\n\n public isMobile: boolean = true;\n\n public methods: MethodViewModel[];\n\n public staticMethods: MethodViewModel[];\n\n #_config: {\n methods?: SkyDocsClassMethodDefinition[];\n };\n\n #changeDetector: ChangeDetectorRef;\n #formatService: SkyDocsTypeDefinitionsFormatService;\n #mediaQueryService: SkyMediaQueryService;\n\n constructor(\n changeDetector: ChangeDetectorRef,\n formatService: SkyDocsTypeDefinitionsFormatService,\n mediaQueryService: SkyMediaQueryService\n ) {\n this.#changeDetector = changeDetector;\n this.#formatService = formatService;\n this.#mediaQueryService = mediaQueryService;\n }\n\n public ngOnInit(): void {\n this.#mediaQueryService.subscribe((breakpoints: SkyMediaBreakpoints) => {\n this.isMobile = breakpoints <= SkyMediaBreakpoints.sm;\n this.#changeDetector.markForCheck();\n });\n }\n\n private updateView(): void {\n if (this.config.methods?.length > 0) {\n this.methods = [];\n this.staticMethods = [];\n for (let method of this.config.methods) {\n const vm: MethodViewModel = {\n callSignature: method.type.callSignature,\n codeExample: method.codeExample,\n codeExampleLanguage: method.codeExampleLanguage,\n deprecationWarning: method.deprecationWarning,\n description: method.description,\n formattedName: this.#formatService.getFormattedMethodName(method),\n sourceCode: this.#formatService.getMethodSourceCode(method),\n isStatic: method.isStatic,\n };\n\n if (vm.isStatic) {\n this.staticMethods.push(vm);\n } else {\n this.methods.push(vm);\n }\n }\n }\n }\n}\n","<div\n *ngIf=\"methods?.length > 0 || staticMethods?.length > 0\"\n class=\"sky-docs-method-definitions\"\n>\n <ng-container *ngIf=\"!isMobile; else mobileTemplate\">\n <table\n class=\"sky-docs-table sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Static methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of staticMethods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n <table\n class=\"sky-docs-table sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of methods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n </ng-container>\n\n <ng-template #mobileTemplate>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <div\n *ngFor=\"let method of staticMethods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Static methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <div\n *ngFor=\"let method of methods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-method #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n method.formattedName | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-method #descriptionTemplate>\n <sky-docs-safe-html\n *ngIf=\"method.deprecationWarning !== undefined\"\n class=\"sky-docs-method-definition-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + method.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"method.description\"\n class=\"sky-docs-method-definition-description\"\n [innerHtml]=\"method.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"method.sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"method.sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"method.callSignature\"\n [config]=\"method.callSignature\"\n ></sky-docs-call-signature-definition>\n\n <ng-container *ngIf=\"method.codeExample\">\n <h4 class=\"sky-docs-method-definition-heading\">Example</h4>\n <sky-code-block\n *ngIf=\"method.codeExample\"\n class=\"sky-docs-code-block\"\n languageType=\"method.codeExampleLanguage\"\n [code]=\"method.codeExample\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n </ng-container>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsPipeDefinition } from './pipe-definition';\n\n@Component({\n selector: 'sky-docs-pipe-definition',\n templateUrl: './pipe-definition.component.html',\n styleUrls: ['./pipe-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsPipeDefinitionComponent {\n @Input()\n public config: SkyDocsPipeDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-pipe-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <ng-container *ngIf=\"config.codeExample\">\n <h4 class=\"sky-docs-pipe-definition-heading\">Example</h4>\n <sky-code-block\n class=\"sky-docs-code-block\"\n [code]=\"config.codeExample\"\n [hideHeader]=\"true\"\n [languageType]=\"config.codeExampleLanguage\"\n ></sky-code-block>\n </ng-container>\n\n <sky-docs-method-definitions\n *ngIf=\"config.transformMethod\"\n [config]=\"{\n methods: [config.transformMethod]\n }\"\n ></sky-docs-method-definitions>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsClassDefinition } from './class-definition';\n\n@Component({\n selector: 'sky-docs-class-definition',\n templateUrl: './class-definition.component.html',\n styleUrls: ['./class-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsClassDefinitionComponent {\n @Input()\n public config: SkyDocsClassDefinition;\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-class-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-class-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <ng-container *ngIf=\"config.properties?.length\">\n <sky-docs-property-definitions\n [config]=\"{ properties: config.properties }\"\n ></sky-docs-property-definitions>\n </ng-container>\n\n <ng-container *ngIf=\"config.methods?.length\">\n <sky-docs-method-definitions\n [config]=\"{ methods: config.methods }\"\n ></sky-docs-method-definitions>\n </ng-container>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinitionsFormatService } from './type-definitions-format.service';\n\n@Component({\n selector: 'sky-docs-type-alias-definition',\n templateUrl: './type-alias-definition.component.html',\n styleUrls: ['./type-alias-definition.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsTypeAliasDefinitionComponent {\n @Input()\n public set config(value: SkyDocsTypeAliasDefinition) {\n this._config = value;\n this.updateView();\n }\n\n public get config(): SkyDocsTypeAliasDefinition {\n return this._config;\n }\n\n public sourceCode: string;\n\n private _config: SkyDocsTypeAliasDefinition;\n\n constructor(private formatService: SkyDocsTypeDefinitionsFormatService) {}\n\n private updateView(): void {\n this.sourceCode = this.config\n ? this.formatService.getTypeAliasSourceCode(this.config)\n : undefined;\n }\n}\n","<div\n *ngIf=\"config\"\n class=\"sky-docs-type-alias-definition sky-docs-type-definition-wrapper\"\n>\n <sky-docs-heading-anchor headingLevel=\"3\" [anchorId]=\"config.anchorId\">\n {{ config.name }}\n </sky-docs-heading-anchor>\n\n <sky-docs-safe-html\n *ngIf=\"config.description\"\n class=\"sky-docs-type-alias-definition-description\"\n [innerHtml]=\"config.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"config.type.callSignature\"\n [config]=\"config.type.callSignature\"\n ></sky-docs-call-signature-definition>\n</div>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { RouterModule } from '@angular/router';\n\nimport {\n SkyCodeBlockModule,\n SkyCodeModule,\n} from '@blackbaud/skyux-lib-code-block';\n\nimport { SkyIconModule } from '@skyux/indicators';\n\nimport { SkyDefinitionListModule } from '@skyux/layout';\n\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsMarkdownModule } from '../markdown/markdown.module';\n\nimport { SkyDocsSafeHtmlModule } from '../safe-html/safe-html.module';\n\nimport { SkyDocsCallSignatureDefinitionComponent } from './call-signature-definition.component';\n\nimport { SkyDocsDirectiveDefinitionComponent } from './directive-definition.component';\n\nimport { SkyDocsEnumerationDefinitionComponent } from './enumeration-definition.component';\n\nimport { SkyDocsInterfaceDefinitionComponent } from './interface-definition.component';\n\nimport { SkyDocsMethodDefinitionsComponent } from './method-definitions.component';\n\nimport { SkyDocsPipeDefinitionComponent } from './pipe-definition.component';\n\nimport { SkyDocsPropertyDefinitionsComponent } from './property-definitions.component';\n\nimport { SkyDocsClassDefinitionComponent } from './class-definition.component';\n\nimport { SkyDocsTypeAliasDefinitionComponent } from './type-alias-definition.component';\n\nimport { SkyDocsTypeAnchorLinksPipe } from './type-anchor-links.pipe';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyCodeBlockModule,\n SkyCodeModule,\n SkyDefinitionListModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsMarkdownModule,\n SkyDocsSafeHtmlModule,\n SkyIconModule,\n ],\n declarations: [\n SkyDocsCallSignatureDefinitionComponent,\n SkyDocsClassDefinitionComponent,\n SkyDocsDirectiveDefinitionComponent,\n SkyDocsEnumerationDefinitionComponent,\n SkyDocsInterfaceDefinitionComponent,\n SkyDocsMethodDefinitionsComponent,\n SkyDocsPipeDefinitionComponent,\n SkyDocsPropertyDefinitionsComponent,\n SkyDocsTypeAliasDefinitionComponent,\n SkyDocsTypeAnchorLinksPipe,\n ],\n exports: [\n SkyDocsCallSignatureDefinitionComponent,\n SkyDocsClassDefinitionComponent,\n SkyDocsDirectiveDefinitionComponent,\n SkyDocsEnumerationDefinitionComponent,\n SkyDocsInterfaceDefinitionComponent,\n SkyDocsMethodDefinitionsComponent,\n SkyDocsPipeDefinitionComponent,\n SkyDocsPropertyDefinitionsComponent,\n SkyDocsTypeAliasDefinitionComponent,\n SkyDocsTypeAnchorLinksPipe,\n ],\n})\nexport class SkyDocsTypeDefinitionsModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n/**\n * Specifies a section of page content.\n * @example\n * ```\n * <sky-docs-demo-page-section\n * heading=\"Section heading\"\n * >\n * Section content here.\n * </sky-docs-demo-page-section>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page-section',\n templateUrl: './demo-page-section.component.html',\n styleUrls: ['./demo-page-section.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageSectionComponent {\n /**\n * The heading text to print above the section.\n */\n @Input()\n public heading: string;\n\n public get anchorId(): string {\n return `section-${this.getSanitizedName(this.heading)}`;\n }\n\n private getSanitizedName(value: string): string {\n if (!value) {\n return;\n }\n\n const sanitized = value\n .toLowerCase()\n\n // Remove special characters.\n .replace(\n /[\\_\\~\\`\\@\\!\\#\\$\\%\\^\\&\\*\\(\\)\\[\\]\\{\\}\\;\\:\\'\\/\\\\\\<\\>\\,\\.\\?\\=\\+\\|\"]/g,\n ''\n )\n\n // Replace space characters with a dash.\n .replace(/\\s/g, '-')\n\n // Remove any double-dashes.\n .replace(/--/g, '-');\n\n return sanitized;\n }\n}\n","<div class=\"sky-docs-demo-page-section sky-rounded-corners\">\n <div *ngIf=\"heading\" class=\"sky-docs-demo-page-section-header\">\n <sky-docs-heading-anchor headingLevel=\"2\" [anchorId]=\"anchorId\">\n {{ heading }}\n </sky-docs-heading-anchor>\n </div>\n <div class=\"sky-docs-demo-page-section-body\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * The page summary provides a section at the top of the page\n * to summarize what a user should expect to find or learn on the page.\n * @example\n * ```\n * <sky-docs-demo-page-summary>\n * Page summary here.\n * </sky-docs-demo-page-summary>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page-summary',\n templateUrl: './demo-page-summary.component.html',\n styleUrls: ['./demo-page-summary.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageSummaryComponent {}\n","<div class=\"sky-docs-demo-page-summary\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-design-guidelines',\n templateUrl: './design-guidelines.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelinesComponent {}\n","<div class=\"sky-docs-design-guidelines\">\n <ng-content></ng-content>\n</div>\n","import { Injectable, OnDestroy } from '@angular/core';\n\nimport { SkyAppWindowRef } from '@skyux/core';\n\nimport { Observable, Subject } from 'rxjs';\n\nimport { SkyDocsAnchorLink } from '../type-definitions/anchor-link';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsDemoPageDomAdapterService implements OnDestroy {\n private get anchorLinks(): NodeListOf<HTMLAnchorElement> {\n return document.querySelectorAll('a.sky-docs-anchor-link');\n }\n\n private get currentUrl(): string {\n return this.windowRef.nativeWindow.location.href.split('#')[0];\n }\n\n private _anchorLinkClick = new Subject<SkyDocsAnchorLink>();\n\n constructor(private windowRef: SkyAppWindowRef) {}\n\n public ngOnDestroy(): void {\n this.removeClickEventListeners();\n }\n\n public setupAnchorLinks(): void {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n const fragment = anchor.href.split('#')[1];\n const url = this.currentUrl;\n const href = `${url}#${fragment}`;\n anchor.href = href;\n }\n }\n\n public get anchorLinkClick(): Observable<SkyDocsAnchorLink> {\n if (this._anchorLinkClick.observers.length === 0) {\n this.addClickEventListeners();\n } else {\n this.removeClickEventListeners();\n }\n return this._anchorLinkClick;\n }\n\n public scrollToFragment(fragment: string): void {\n this.windowRef.nativeWindow.setTimeout(() => {\n const element = document.getElementById(fragment);\n if (element) {\n this.windowRef.nativeWindow.scrollTo(0, element.offsetTop);\n }\n }, 250);\n }\n\n private addClickEventListeners(): void {\n // Wait for a tick to allow all anchors to be written.\n this.windowRef.nativeWindow.setTimeout(() => {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n anchor.addEventListener('click', this.eventListener);\n }\n });\n }\n\n private removeClickEventListeners(): void {\n for (let index = 0; index < this.anchorLinks.length; index++) {\n const anchor = this.anchorLinks[index];\n anchor.removeEventListener('click', this.eventListener);\n }\n }\n\n private eventListener = (e: Event) => {\n e.preventDefault();\n this._anchorLinkClick.next({\n href: (e.target as HTMLAnchorElement).href,\n });\n };\n}\n","import { Injectable } from '@angular/core';\n\nimport { HttpClient } from '@angular/common/http';\n\nimport { Observable } from 'rxjs';\n\nimport { map, share } from 'rxjs/operators';\n\nimport { SkyDocsComponentInfo } from './docs-tools-component-info';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsSupportalService {\n constructor(private http: HttpClient) {}\n\n public getComponentsInfo(): Observable<SkyDocsComponentInfo[]> {\n return this.http\n .get('https://sky-pusa01.app.blackbaud.net/skysp/v1/docs/components-info')\n .pipe(\n map((results: any) => results.components),\n share()\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { Title } from '@angular/platform-browser';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsDemoPageTitleService {\n constructor(private title: Title) {}\n\n public setTitle(...parts: string[]): void {\n let windowTitle = 'SKY UX';\n\n if (parts && parts.length > 0) {\n parts.push(windowTitle);\n windowTitle = parts.join(' - ');\n }\n\n this.title.setTitle(windowTitle);\n }\n}\n","import { Injectable, Optional } from '@angular/core';\n\nimport { SkyDocsCallSignatureDefinition } from './call-signature-definition';\n\nimport { SkyDocsClassDefinition } from './class-definition';\n\nimport { SkyDocsClassPropertyDefinition } from './property-definition';\n\nimport { SkyDocsCommentTags } from './comment-tags';\n\nimport { SkyDocsDirectiveDefinition } from './directive-definition';\n\nimport { SkyDocsEnumerationDefinition } from './enumeration-definition';\n\nimport { SkyDocsEnumerationMemberDefinition } from './enumeration-member-definition';\n\nimport { SkyDocsIndexSignatureDefinition } from './index-signature-definition';\n\nimport { SkyDocsInterfaceDefinition } from './interface-definition';\n\nimport { SkyDocsInterfacePropertyDefinition } from './interface-property-definition';\n\nimport { SkyDocsClassMethodDefinition } from './method-definition';\n\nimport { SkyDocsParameterDefinition } from './parameter-definition';\n\nimport { SkyDocsPipeDefinition } from './pipe-definition';\n\nimport { SkyDocsPropertyDecoratorDefinition } from './property-decorator';\n\nimport { SkyDocsTypeAliasDefinition } from './type-alias-definition';\n\nimport { SkyDocsTypeDefinition } from './type-definition';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\nimport { SkyDocsTypeParameterDefinition } from './type-parameter-definition';\n\nimport {\n TypeDocComment,\n TypeDocEntry,\n TypeDocEntryChild,\n TypeDocParameter,\n TypeDocSignature,\n TypeDocType,\n TypeDocTypeParameter,\n} from './typedoc-types';\n\nimport orderBy from 'lodash.orderby';\n\n/**\n * Converts TypeDoc types into SKY UX docs-tools types, to be supplied to the various definitions components.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsTypeDocAdapterService {\n constructor(\n @Optional() private typeDefinitionsProvider?: SkyDocsTypeDefinitionsProvider\n ) {}\n\n public toClassDefinition(entry: TypeDocEntry): SkyDocsClassDefinition {\n const definition: SkyDocsClassDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const methods = this.getClassMethods(entry);\n if (methods.length) {\n definition.methods = methods;\n }\n\n const properties = this.getClassProperties(entry);\n if (properties.length) {\n definition.properties = properties;\n }\n\n return definition;\n }\n\n public toDirectiveDefinition(\n entry: TypeDocEntry\n ): SkyDocsDirectiveDefinition {\n const definition: SkyDocsDirectiveDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n selector: this.getSelector(entry),\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const properties = this.getClassProperties(entry);\n\n const eventProperties = properties.filter(\n (p) => p.decorator?.name === 'Output'\n );\n if (eventProperties.length) {\n definition.eventProperties = eventProperties;\n }\n\n const inputProperties = properties.filter(\n (p) => p.decorator?.name === 'Input'\n );\n if (inputProperties.length) {\n definition.inputProperties = inputProperties;\n }\n\n return definition;\n }\n\n public toEnumerationDefinition(\n entry: TypeDocEntry\n ): SkyDocsEnumerationDefinition {\n const members = this.getEnumerationMembers(entry);\n const definition: SkyDocsEnumerationDefinition = {\n anchorId: this.getAnchorId(entry),\n members,\n name: entry.name,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }\n\n public toInterfaceDefinition(\n entry: TypeDocEntry\n ): SkyDocsInterfaceDefinition {\n const properties = this.getInterfaceProperties(entry);\n const definition: SkyDocsInterfaceDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n properties,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n entry.typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n }\n\n public toPipeDefinition(entry: TypeDocEntry): SkyDocsPipeDefinition {\n const methods = this.getClassMethods(entry);\n const transformMethod = methods.find((m) => m.name === 'transform');\n const definition: SkyDocsPipeDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n transformMethod,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }\n\n public toTypeAliasDefinition(\n entry: TypeDocEntry\n ): SkyDocsTypeAliasDefinition {\n const definition: SkyDocsTypeAliasDefinition = {\n anchorId: this.getAnchorId(entry),\n name: entry.name,\n type: this.getTypeDefinition({\n comment: entry.comment,\n type: entry.type,\n }),\n };\n\n const tags = this.getCommentTags(\n entry.type.declaration?.signatures\n ? entry.type.declaration.signatures[0].comment\n : entry.comment\n );\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n entry.typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n }\n\n private getSelector(entry: TypeDocEntry): string {\n const decoratorSource = entry.decorators[0].arguments.obj;\n return decoratorSource.indexOf('selector: `') > -1\n ? decoratorSource\n .split('selector: `')[1]\n .split('`')[0]\n .replace(/\\s\\s+/g, ' ')\n : decoratorSource.split(\"selector: '\")[1].split(\"'\")[0];\n }\n\n private getClassProperties(\n entry: TypeDocEntry\n ): SkyDocsClassPropertyDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n const definitions = entry.children\n .filter(\n (child) =>\n child.kindString === 'Property' || child.kindString === 'Accessor'\n )\n .map((child) => {\n let definition: SkyDocsClassPropertyDefinition = {\n isOptional: true,\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n };\n let defaultValue: string;\n\n /* Ensure we are properly capturing definitions which use a getter/setter. Final check is a sanity check */\n if (\n child.kindString === 'Accessor' &&\n !child.comment?.shortText &&\n (child.setSignature?.length > 0 || child.getSignature.length > 0)\n ) {\n const mainTags = this.getCommentTags(child.comment);\n\n this.applyCommentTagValues(definition, mainTags);\n\n if (child.getSignature?.length > 0) {\n const getTags = this.getCommentTags(child.getSignature[0].comment);\n\n definition.isOptional = !getTags.extras.required;\n\n this.applyCommentTagValues(definition, getTags);\n defaultValue = this.getDefaultValue(child, getTags);\n }\n\n if (child.setSignature?.length > 0) {\n const setTags = this.getCommentTags(child.setSignature[0].comment);\n\n this.applyCommentTagValues(definition, setTags);\n\n definition.isOptional =\n definition.isOptional && !setTags.extras.required;\n defaultValue = defaultValue || this.getDefaultValue(child, setTags);\n } else {\n definition.isOptional = !mainTags.extras.required;\n defaultValue = this.getDefaultValue(child, mainTags);\n }\n } else {\n let tags: SkyDocsCommentTags | undefined;\n if (\n child.kindString === 'Property' &&\n !child.comment?.shortText &&\n child.type.declaration?.signatures?.length > 0 &&\n child.type.declaration.signatures[0].comment\n ) {\n tags = this.getCommentTags(\n child.type.declaration.signatures[0].comment\n );\n\n definition.isOptional = !tags.extras.required;\n this.applyCommentTagValues(definition, tags);\n }\n\n tags = this.getCommentTags(child.comment);\n\n definition.isOptional =\n definition.isOptional && !tags.extras.required;\n\n this.applyCommentTagValues(definition, tags);\n\n defaultValue = this.getDefaultValue(child, tags);\n }\n\n if (defaultValue) {\n definition.defaultValue = defaultValue;\n }\n\n const decorator = this.getDecorator(child);\n if (decorator) {\n definition.decorator = decorator;\n }\n\n if (!definition.description) {\n const constructor = entry.children.find(\n (child) => child.kindString === 'Constructor'\n );\n if (constructor) {\n const signature = constructor.signatures.find(\n (signature) => signature.kindString === 'Constructor signature'\n );\n /* Sanity check */\n /* istanbul ignore else */\n if (signature) {\n const matchingParam = signature.parameters?.find(\n (parameter) => parameter.name === child.name\n );\n if (matchingParam) {\n const matchingParamTags = this.getCommentTags(\n matchingParam.comment\n );\n this.applyCommentTagValues(definition, matchingParamTags);\n }\n }\n }\n }\n\n return definition;\n });\n\n return orderBy(definitions, ['isOptional', 'name'], ['asc', 'asc']);\n }\n\n private getClassMethods(entry: TypeDocEntry): SkyDocsClassMethodDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n const methods = entry.children\n .filter(\n (child) =>\n child.kindString === 'Method' && /^ng/.test(child.name) === false\n )\n .map((child) => {\n const definition: SkyDocsClassMethodDefinition = {\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n isStatic: !!child.flags?.isStatic,\n parentName: entry.name,\n };\n\n // Comments for methods are stored in a different location.\n const comment = child.signatures[0].comment;\n const tags = this.getCommentTags(comment);\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n child.signatures[0].typeParameter\n );\n if (typeParameters.length) {\n definition.typeParameters = typeParameters;\n }\n\n return definition;\n });\n\n return orderBy(methods, ['name'], ['asc']);\n }\n\n private getInterfaceProperties(\n entry: TypeDocEntry\n ): SkyDocsInterfacePropertyDefinition[] {\n if (!entry.children && !entry.indexSignature) {\n return [];\n }\n\n const definitions =\n entry.children?.map((child) => {\n let tags: SkyDocsCommentTags | undefined;\n if (child.kindString === 'Method' && child.signatures.length > 0) {\n tags = this.getCommentTags(child.signatures[0].comment);\n } else {\n tags = this.getCommentTags(child.comment);\n }\n const definition: SkyDocsInterfacePropertyDefinition = {\n isOptional: tags.extras.required ? false : !!child.flags?.isOptional,\n name: this.getPropertyName(child),\n type: this.getTypeDefinition(child),\n };\n\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n }) || [];\n\n const sorted = orderBy(definitions, ['isOptional', 'name'], ['asc', 'asc']);\n\n // Add any index signatures, e.g. `[_: string]: any`\n if (entry.indexSignature) {\n const indexSignature = entry.indexSignature;\n const definition: SkyDocsInterfacePropertyDefinition = {\n isOptional: true,\n name: indexSignature.name,\n type: {\n indexSignature: this.getIndexSignatureDefinition(indexSignature),\n },\n };\n\n const tags = this.getCommentTags(indexSignature.comment);\n this.applyCommentTagValues(definition, tags);\n sorted.push(definition);\n }\n\n return sorted;\n }\n\n private getEnumerationMembers(\n entry: TypeDocEntry\n ): SkyDocsEnumerationMemberDefinition[] {\n if (!entry.children) {\n return [];\n }\n\n return entry.children.map((child) => {\n const definition: SkyDocsEnumerationMemberDefinition = {\n name: child.name,\n };\n\n const tags = this.getCommentTags(child.comment);\n this.applyCommentTagValues(definition, tags);\n\n return definition;\n });\n }\n\n private getTypeDefinition(child: TypeDocEntryChild): SkyDocsTypeDefinition {\n let definition: SkyDocsTypeDefinition;\n\n const kindString = child.kindString;\n switch (kindString) {\n case 'Accessor':\n if (child.setSignature) {\n return this.getTypeDefinition(child.setSignature[0].parameters[0]);\n }\n return this.getTypeDefinition(child.getSignature[0]);\n\n case 'Method':\n definition = {\n callSignature: this.getCallSignatureDefinition(\n child.signatures[0],\n this.getCommentTags(child.comment)\n ),\n name: child.signatures[0].name,\n };\n\n return definition;\n\n default:\n let name: string =\n child.type.name || child.type.elementType?.name || child.type.value;\n\n definition = {\n type: child.type.type,\n };\n\n if (name) {\n definition.name = name;\n }\n\n // Union?\n if (child.type.types) {\n definition.unionTypes = child.type.types.map((t) =>\n this.getTypeDefinition({ type: t })\n );\n }\n\n // Convert reflection types.\n if (\n child.type.type === 'reflection' ||\n child.type.elementType?.type === 'reflection'\n ) {\n const declaration =\n child.type.elementType?.type === 'reflection'\n ? child.type.elementType.declaration\n : child.type.declaration;\n /*istanbul ignore else */\n if (declaration) {\n if (declaration.signatures) {\n definition.callSignature = this.getCallSignatureDefinition(\n declaration.signatures[0],\n this.getCommentTags(child.comment)\n );\n } else if (declaration.indexSignature) {\n const indexSignature = declaration.indexSignature;\n definition.indexSignature =\n this.getIndexSignatureDefinition(indexSignature);\n } /* istanbul ignore else */ else if (declaration.children) {\n definition.typeLiteral = {\n properties: this.getInterfaceProperties({\n children: declaration.children,\n }),\n };\n }\n }\n }\n\n if (child.type.type === 'typeOperator') {\n definition.name = `${child.type.operator} ${child.type.target.name}`;\n }\n\n if (child.type.typeArguments) {\n definition.typeArguments = this.getTypeArgumentDefinitions(\n child.type\n );\n }\n\n return definition;\n }\n }\n\n private getParameterDefinitions(\n callSignature: TypeDocSignature,\n parentTags: SkyDocsCommentTags\n ): SkyDocsParameterDefinition[] {\n if (!callSignature.parameters) {\n return [];\n }\n\n const parameters: SkyDocsParameterDefinition[] =\n callSignature.parameters.map((p) => {\n const tags = this.getParameterCommentTags(p, parentTags);\n const defaultValue = this.getDefaultValue(p, tags);\n const typeArguments = this.getTypeArgumentDefinitions(p.type);\n\n const parameter: SkyDocsParameterDefinition = {\n isOptional: !!(defaultValue || !!p.flags?.isOptional),\n name: p.name,\n type: this.getTypeDefinition(p),\n };\n\n if (defaultValue !== undefined) {\n parameter.defaultValue = defaultValue;\n }\n\n if (tags.description) {\n parameter.description = tags.description;\n }\n\n if (typeArguments.length) {\n parameter.typeArguments = typeArguments;\n }\n\n return parameter;\n });\n return parameters;\n }\n\n private getTypeArgumentDefinitions(\n typeConfig: TypeDocType\n ): SkyDocsTypeDefinition[] {\n if (!typeConfig || !typeConfig.typeArguments) {\n return [];\n }\n\n return typeConfig.typeArguments.map((typeArgument) => {\n return this.getTypeDefinition({ type: typeArgument });\n });\n }\n\n private getCallSignatureDefinition(\n callSignature: TypeDocSignature,\n tags: SkyDocsCommentTags\n ): SkyDocsCallSignatureDefinition {\n const definition: SkyDocsCallSignatureDefinition = {\n returnType: this.getTypeDefinition(callSignature),\n };\n\n const parameters = this.getParameterDefinitions(callSignature, tags);\n if (parameters.length) {\n definition.parameters = parameters;\n }\n\n return definition;\n }\n\n private getIndexSignatureDefinition(\n signature: TypeDocSignature\n ): SkyDocsIndexSignatureDefinition {\n return {\n key: {\n name: signature.parameters[0].name,\n type: this.getTypeDefinition(signature.parameters[0]),\n },\n type: this.getTypeDefinition(signature),\n };\n }\n\n private getTypeParameterDefinitions(\n typeParameters: TypeDocTypeParameter[]\n ): SkyDocsTypeParameterDefinition[] {\n if (!typeParameters) {\n return [];\n }\n\n return typeParameters.map((typeParam) => {\n const definition: SkyDocsTypeParameterDefinition = {\n name: typeParam.name,\n };\n\n if (typeParam.type) {\n definition.type = this.getTypeDefinition({\n type: typeParam.type,\n });\n }\n\n return definition;\n });\n }\n\n private getCommentTags(comment: TypeDocComment): SkyDocsCommentTags {\n let codeExample: string;\n let codeExampleLanguage: string = 'markup';\n let deprecationWarning: string;\n let defaultValue: string;\n let description: string = '';\n\n let parameters: {\n name: string;\n description: string;\n }[];\n\n const extras: {\n [key: string]: any;\n } = {};\n\n if (comment) {\n if (comment.tags) {\n comment.tags.forEach((tag) => {\n switch (tag.tag) {\n case 'deprecated':\n deprecationWarning = tag.text.trim();\n break;\n\n case 'default':\n case 'defaultValue':\n defaultValue = tag.text.trim();\n break;\n\n case 'example':\n codeExample = tag.text.trim().split('```')[1].trim();\n const language = codeExample.split('\\n')[0];\n if (language === 'markup' || language === 'typescript') {\n codeExample = codeExample.slice(language.length).trim();\n codeExampleLanguage = language;\n }\n break;\n\n case 'param':\n parameters = parameters || [];\n parameters.push({\n name: tag.param,\n description: tag.text.trim(),\n });\n break;\n\n default:\n extras[tag.tag] = tag.text;\n break;\n }\n });\n }\n\n description = (comment.shortText || comment.text || '').trim();\n }\n\n return {\n codeExample,\n codeExampleLanguage,\n defaultValue,\n deprecationWarning,\n description,\n extras,\n parameters,\n };\n }\n\n /**\n * Parameter descriptions are derived from the parent's (function/method) comment.\n */\n private getParameterCommentTags(\n parameter: TypeDocParameter,\n parentTags: SkyDocsCommentTags\n ): SkyDocsCommentTags {\n const tags = this.getCommentTags(parameter.comment);\n const paramTags = parentTags.parameters;\n const tagParam = paramTags\n ? paramTags.find((param) => param.name === parameter.name)\n : undefined;\n\n if (!tagParam || !tagParam.description) {\n return tags;\n }\n\n return {\n ...tags,\n ...{\n description: tagParam.description,\n },\n };\n }\n\n /**\n * Applies comment tag (e.g. `@param`) values to the provided definition, if the value is defined.\n */\n private applyCommentTagValues(\n definition: {\n codeExample?: string;\n codeExampleLanguage?: string;\n deprecationWarning?: string;\n description?: string;\n },\n tags: SkyDocsCommentTags\n ): void {\n if (tags.codeExample) {\n definition.codeExample = tags.codeExample;\n definition.codeExampleLanguage = tags.codeExampleLanguage;\n }\n\n if (tags.deprecationWarning !== undefined) {\n definition.deprecationWarning = tags.deprecationWarning;\n }\n\n if (tags.description) {\n definition.description = tags.description;\n }\n }\n\n private getDecorator(\n child: TypeDocEntryChild\n ): SkyDocsPropertyDecoratorDefinition {\n const name =\n child.decorators && child.decorators[0] && child.decorators[0].name;\n if (name) {\n return { name };\n }\n }\n\n private getPropertyName(property: TypeDocEntryChild): string {\n const decorators = property.decorators && property.decorators[0];\n // Use the Input's bound property name, if found.\n // e.g. @Input('foobar')\n return decorators?.arguments?.bindingPropertyName\n ? decorators.arguments.bindingPropertyName.replace(/(\\'|\\\")/g, '')\n : property.name;\n }\n\n private getDefaultValue(\n child: TypeDocEntryChild,\n tags: SkyDocsCommentTags\n ): string | undefined {\n if (tags.defaultValue) {\n return tags.defaultValue;\n }\n\n // TypeDoc version 0.20.x stopped auto-generating initializers for the default value\n // (and replaced them with \"...\") due to the complicated logic it required.\n // See: https://github.com/TypeStrong/typedoc/issues/1552\n if (child.defaultValue === '...') {\n return;\n }\n\n return child.defaultValue;\n }\n\n private getAnchorId(entry: TypeDocEntry): string {\n return (\n entry.anchorId ||\n this.typeDefinitionsProvider?.anchorIds[entry.name] ||\n ''\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyDocsTypeDefinitions } from './type-definitions';\n\nimport { SkyDocsTypeDefinitionsProvider } from './type-definitions-provider';\n\nimport { SkyDocsTypeDocAdapterService } from './typedoc-adapter.service';\n\n/**\n * Handles all type definitions that have been converted from the third-party documentation generator.\n */\n@Injectable({\n providedIn: 'any',\n})\nexport class SkyDocsTypeDefinitionsService {\n constructor(\n private typeDefinitionsProvider: SkyDocsTypeDefinitionsProvider,\n private adapter: SkyDocsTypeDocAdapterService\n ) {}\n\n /**\n * Returns type definitions from a specific source code location.\n * @param sourceCodePath The directory of the source code you wish to pull type definitions from,\n * relative to the application's root directory.\n */\n public getTypeDefinitions(\n sourceCodePath: string,\n additionalSourceCodePaths?: string[]\n ): SkyDocsTypeDefinitions {\n if (!sourceCodePath) {\n throw new Error('The `sourceCodePath` parameter is required');\n }\n\n const sourceCodePaths: string[] =\n additionalSourceCodePaths && additionalSourceCodePaths.length > 0\n ? [sourceCodePath].concat(additionalSourceCodePaths)\n : [sourceCodePath];\n\n sourceCodePaths.forEach((path) => {\n if (!path.endsWith('/') && !path.endsWith('.ts')) {\n throw new Error(\n 'Source code paths must end with a forward slash (`/`) or `.ts`.'\n );\n }\n });\n\n const allDefinitions = this.typeDefinitionsProvider.typeDefinitions;\n const types: SkyDocsTypeDefinitions = {\n classes: [],\n components: [],\n directives: [],\n enumerations: [],\n interfaces: [],\n pipes: [],\n services: [],\n typeAliases: [],\n };\n\n if (!allDefinitions) {\n console.warn(`No types were found for this project!`);\n return types;\n }\n\n sourceCodePaths.forEach((path) => {\n const requestedDir = path\n .replace(/src\\/app\\/public\\//, '')\n .replace(/^\\//, ''); // remove first slash.\n\n // Only process types that match the requested source code location.\n const typeDefinitions = allDefinitions.filter(\n (i) => i.sources && i.sources[0].fileName.match(requestedDir)\n );\n if (typeDefinitions.length === 0) {\n console.warn(\n `Type definitions were not found for location: ${requestedDir}`\n );\n }\n\n typeDefinitions.forEach((item) => {\n const decorator = item.decorators && item.decorators[0].name;\n const kindString = item.kindString;\n\n switch (decorator) {\n case 'Component':\n types.components.push(this.adapter.toDirectiveDefinition(item));\n break;\n case 'Directive':\n types.directives.push(this.adapter.toDirectiveDefinition(item));\n break;\n case 'Injectable':\n types.services.push(this.adapter.toClassDefinition(item));\n break;\n case 'NgModule':\n // Don't document modules.\n break;\n case 'Pipe':\n types.pipes.push(this.adapter.toPipeDefinition(item));\n break;\n default:\n /*tslint:disable-next-line:switch-default*/\n switch (kindString) {\n case 'Class':\n types.classes.push(this.adapter.toClassDefinition(item));\n break;\n case 'Interface':\n types.interfaces.push(this.adapter.toInterfaceDefinition(item));\n break;\n case 'Enumeration':\n types.enumerations.push(\n this.adapter.toEnumerationDefinition(item)\n );\n break;\n case 'Type alias':\n types.typeAliases.push(\n this.adapter.toTypeAliasDefinition(item)\n );\n break;\n }\n }\n });\n });\n\n return types;\n }\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyDocsTypeDefinitions } from '../type-definitions/type-definitions';\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-docs-demo-page-type-definitions',\n templateUrl: './demo-page-type-definitions.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageTypeDefinitionsComponent {\n @Input()\n public types: SkyDocsTypeDefinitions;\n}\n","<ng-template [ngIf]=\"types\">\n <sky-docs-demo-page-section\n *ngIf=\"types.components.length\"\n heading=\"Components\"\n >\n <sky-docs-directive-definition\n *ngFor=\"let config of types.components\"\n [config]=\"config\"\n ></sky-docs-directive-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.directives.length\"\n heading=\"Directives\"\n >\n <sky-docs-directive-definition\n *ngFor=\"let config of types.directives\"\n [config]=\"config\"\n ></sky-docs-directive-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.pipes.length\" heading=\"Pipes\">\n <sky-docs-pipe-definition\n *ngFor=\"let config of types.pipes\"\n [config]=\"config\"\n ></sky-docs-pipe-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.services.length\" heading=\"Services\">\n <sky-docs-class-definition\n *ngFor=\"let config of types.services\"\n [config]=\"config\"\n ></sky-docs-class-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section *ngIf=\"types.classes.length\" heading=\"Classes\">\n <sky-docs-class-definition\n *ngFor=\"let config of types.classes\"\n [config]=\"config\"\n ></sky-docs-class-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.interfaces.length\"\n heading=\"Interfaces\"\n >\n <sky-docs-interface-definition\n *ngFor=\"let config of types.interfaces\"\n [config]=\"config\"\n ></sky-docs-interface-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.enumerations.length\"\n heading=\"Enumerations\"\n >\n <sky-docs-enumeration-definition\n *ngFor=\"let config of types.enumerations\"\n [config]=\"config\"\n ></sky-docs-enumeration-definition>\n </sky-docs-demo-page-section>\n\n <sky-docs-demo-page-section\n *ngIf=\"types.typeAliases.length\"\n heading=\"Type aliases\"\n >\n <sky-docs-type-alias-definition\n *ngFor=\"let config of types.typeAliases\"\n [config]=\"config\"\n ></sky-docs-type-alias-definition>\n </sky-docs-demo-page-section>\n</ng-template>\n","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Input,\n OnInit,\n QueryList,\n} from '@angular/core';\n\nimport { ActivatedRoute, Router } from '@angular/router';\n\nimport { SkyAppConfig } from '@skyux/config';\n\nimport { StacheNavLink } from '@blackbaud/skyux-lib-stache';\n\nimport { SkyDocsCodeExamplesComponent } from '../code-examples/code-examples.component';\n\nimport { SkyDocsDesignGuidelinesComponent } from '../design-guidelines/design-guidelines.component';\n\nimport { SkyDocsSupportalService } from '../shared/docs-tools-supportal.service';\n\nimport { SkyDocsComponentInfo } from '../shared/docs-tools-component-info';\n\nimport { SkyDocsDemoPageDomAdapterService } from './demo-page-dom-adapter.service';\n\nimport { SkyDocsDemoPageTitleService } from './demo-page-title.service';\nimport { SkyDocsTypeDefinitionsService } from '../type-definitions/type-definitions.service';\nimport { SkyDocsTypeDefinitions } from '../type-definitions/type-definitions';\n\n/**\n * The demo page component wraps all documentation components and handles the configuration and layout of the page.\n * @example\n * ```\n * <sky-docs-demo-page\n * pageTitle=\"My demo page\"\n * >\n * Content here.\n * </sky-docs-demo-page>\n * ```\n */\n@Component({\n selector: 'sky-docs-demo-page',\n templateUrl: './demo-page.component.html',\n styleUrls: ['./demo-page.component.scss'],\n providers: [SkyDocsDemoPageDomAdapterService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoPageComponent\n implements OnInit, AfterContentInit, AfterViewInit\n{\n /**\n * Specifies the local path to any other relevant source code. The values are relative to the root directory.\n */\n @Input()\n public set additionalSourceCodePaths(paths: string[] | undefined) {\n this.#_additionalSourceCodePaths = paths;\n this.#updateTypes();\n }\n\n public get additionalSourceCodePaths(): string[] | undefined {\n return this.#_additionalSourceCodePaths;\n }\n\n /**\n * Specifies the local path to any other relevant testing source code. The values are relative to the root directory.\n */\n @Input()\n public set additionalTestingSourceCodePaths(paths: string[] | undefined) {\n this.#_additionalTestingSourceCodePaths = paths;\n this.#updateTestingTypes();\n }\n\n public get additionalTestingSourceCodePaths(): string[] | undefined {\n return this.#_additionalTestingSourceCodePaths;\n }\n\n /**\n * Specifies the URL to the repo that stores the module's source code.\n * @required\n */\n @Input()\n public gitRepoUrl: string;\n\n /**\n * Specifies the TypeScript class name of the module. For example, `SkySampleModule`.\n * @required\n */\n @Input()\n public moduleName: string;\n\n /**\n * Specifies the local path to the module's source code. The value is relative to the root directory.\n */\n @Input()\n public set moduleSourceCodePath(path: string | undefined) {\n this.#_moduleSourceCodePath = path;\n this.testingSourceCodePath = path.replace('/modules/', '/testing/');\n this.#updateTypes();\n this.#updateTestingTypes();\n }\n\n public get moduleSourceCodePath(): string | undefined {\n return this.#_moduleSourceCodePath;\n }\n\n /**\n * Specifies the type definitions for the development tab.\n */\n public moduleTypeDefinitions: SkyDocsTypeDefinitions | undefined;\n\n /**\n * Specifies the local path to the testing source code. The value is relative to the root directory.\n */\n public testingSourceCodePath: string;\n\n /**\n * Specifies the type definitions for the testing tab.\n */\n public testingTypeDefinitions: SkyDocsTypeDefinitions | undefined;\n\n /**\n * Specifies the qualified name of the NPM package. For example, `@blackbaud/sample`.\n * @required\n */\n @Input()\n public packageName: string;\n\n /**\n * Specifies the URL to the NPM package.\n */\n @Input()\n public packageUrl: string;\n\n /**\n * Specifies the primary page heading.\n * @required\n */\n @Input()\n public pageTitle: string;\n\n /**\n * @internal\n */\n public enableCodeExamples = false;\n\n /**\n * @internal\n */\n public enableTestingTab = false;\n\n /**\n * @internal\n */\n public enableTabLayout = false;\n\n /**\n * @internal\n */\n public sidebarRoutes: StacheNavLink[];\n\n @ContentChild(SkyDocsDesignGuidelinesComponent)\n private designGuidelinesComponent: SkyDocsDesignGuidelinesComponent;\n\n @ContentChildren(SkyDocsCodeExamplesComponent)\n private codeExampleComponents: QueryList<SkyDocsCodeExamplesComponent>;\n\n #_additionalSourceCodePaths: string[] | undefined;\n #_additionalTestingSourceCodePaths: string[] | undefined;\n #_moduleSourceCodePath: string | undefined;\n\n constructor(\n private activatedRoute: ActivatedRoute,\n private changeDetector: ChangeDetectorRef,\n private router: Router,\n private skyAppConfig: SkyAppConfig,\n private domAdapter: SkyDocsDemoPageDomAdapterService,\n private supportalService: SkyDocsSupportalService,\n private titleService: SkyDocsDemoPageTitleService,\n private typeDefinitionService: SkyDocsTypeDefinitionsService\n ) {}\n\n public ngOnInit(): void {\n const currentHostUrl =\n this.skyAppConfig.skyux.host.url + '/' + this.skyAppConfig.skyux.name;\n this.updateTitle();\n\n this.supportalService\n .getComponentsInfo()\n .subscribe((results: SkyDocsComponentInfo[]) => {\n this.sidebarRoutes = [\n {\n name: 'Components',\n path: 'https://developer.blackbaud.com/skyux/components',\n children: results.map((component: SkyDocsComponentInfo) => ({\n name: component.name,\n path: this.getPath(component.url, currentHostUrl),\n })),\n },\n ];\n this.changeDetector.markForCheck();\n });\n }\n\n public ngAfterContentInit(): void {\n this.enableCodeExamples = this.codeExampleComponents.length > 0;\n this.enableTabLayout =\n !!this.designGuidelinesComponent || this.enableCodeExamples;\n }\n\n public ngAfterViewInit(): void {\n // Watch for route fragment to change and scroll to heading.\n this.activatedRoute.fragment.subscribe((fragment) => {\n this.domAdapter.scrollToFragment(fragment);\n });\n\n // Change the HREF attribute for all dynamic links when the query params change.\n // This will also generate the appropriate HREF if the user wants to open the link in a new window.\n this.activatedRoute.queryParams.subscribe(() => {\n this.domAdapter.setupAnchorLinks();\n });\n\n // When a dynamic link is clicked, use Angular's router so that everything works correctly.\n this.domAdapter.anchorLinkClick.subscribe((anchorLink: any) => {\n const fragment = anchorLink.href.split('#')[1];\n\n this.router.navigate([], {\n fragment,\n queryParamsHandling: 'merge',\n });\n\n if (this.activatedRoute.snapshot.fragment === fragment) {\n this.domAdapter.scrollToFragment(fragment);\n }\n });\n }\n\n private updateTitle(): void {\n /*istanbul ignore else*/\n if (this.pageTitle) {\n this.titleService.setTitle(this.pageTitle, 'Components');\n }\n }\n\n private getPath(url: string, currentHostUrl: string): string {\n // Replace host + SPA so Stache will mark active.\n // Strip URL params is url is local, as those will be preserved by stacheRouterLink.\n if (url.indexOf(currentHostUrl) > -1) {\n return url.replace(currentHostUrl, '').split('?')[0];\n } else {\n return url;\n }\n }\n\n #updateTypes(): void {\n this.moduleTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(\n this.moduleSourceCodePath,\n this.additionalSourceCodePaths\n );\n }\n\n #updateTestingTypes(): void {\n this.testingTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(\n this.testingSourceCodePath,\n this.additionalTestingSourceCodePaths\n );\n this.enableTestingTab = Object.values(this.testingTypeDefinitions).some(\n (value) => value && value.length > 0\n );\n }\n}\n","<div class=\"sky-docs-demo-page\">\n <stache\n layout=\"sidebar\"\n [pageTitle]=\"pageTitle\"\n [showBreadcrumbs]=\"false\"\n [showTableOfContents]=\"false\"\n [sidebarRoutes]=\"sidebarRoutes\"\n >\n <ng-content select=\"sky-docs-demo-page-summary\"></ng-content>\n\n <ng-content select=\"sky-docs-demo\"></ng-content>\n\n <div class=\"sky-docs-demo-page-main\">\n <sky-tabset *ngIf=\"enableTabLayout; else content\" permalinkId=\"docs\">\n <sky-tab tabHeading=\"Design\" *ngIf=\"!!designGuidelinesComponent\">\n <ng-content select=\"sky-docs-design-guidelines\"></ng-content>\n </sky-tab>\n\n <sky-tab tabHeading=\"Development\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </sky-tab>\n\n <sky-tab tabHeading=\"Testing\" *ngIf=\"enableTestingTab\">\n <sky-docs-demo-page-section heading=\"Test harnesses\">\n <p>\n SKY UX test harnesses are built upon Angular CDK component\n harnesses. For 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 </sky-docs-demo-page-section>\n <sky-docs-demo-page-type-definitions [types]=\"testingTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n </sky-tab>\n\n <sky-tab tabHeading=\"Code examples\" *ngIf=\"enableCodeExamples\">\n <ng-content select=\"sky-docs-code-examples\"></ng-content>\n </sky-tab>\n </sky-tabset>\n </div>\n </stache>\n</div>\n\n<ng-template #content>\n <sky-docs-demo-page-section *ngIf=\"moduleName\" heading=\"Installation\">\n <sky-docs-module-info\n [gitRepoUrl]=\"gitRepoUrl\"\n [moduleName]=\"moduleName\"\n [packageName]=\"packageName\"\n [packageUrl]=\"packageUrl\"\n >\n <ng-content select=\"sky-docs-demo-page-module-info\"></ng-content>\n </sky-docs-module-info>\n </sky-docs-demo-page-section>\n\n <ng-content></ng-content>\n\n <sky-docs-demo-page-type-definitions [types]=\"moduleTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n</ng-template>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-demo-page-module-info',\n template: '<ng-content></ng-content>',\n})\nexport class SkyDocsDemoPageModuleInfoComponent {}\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport {\n SkyCodeBlockModule,\n SkyCodeModule,\n} from '@blackbaud/skyux-lib-code-block';\n\nimport {\n StachePageSummaryModule,\n StacheWrapperModule,\n} from '@blackbaud/skyux-lib-stache';\n\nimport { RouterModule } from '@angular/router';\n\nimport { SkyTabsModule } from '@skyux/tabs';\n\nimport { SkyDocsDemoModule } from '../demo/demo.module';\n\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsMarkdownModule } from '../markdown/markdown.module';\n\nimport { SkyDocsModuleInfoModule } from '../module-info/module-info.module';\n\nimport { SkyDocsTypeDefinitionsModule } from '../type-definitions/type-definitions.module';\n\nimport { SkyDocsDemoPageSectionComponent } from './demo-page-section.component';\n\nimport { SkyDocsDemoPageSummaryComponent } from './demo-page-summary.component';\n\nimport { SkyDocsDemoPageComponent } from './demo-page.component';\n\nimport { SkyDocsDemoPageModuleInfoComponent } from './demo-page-module-info.component';\n\nimport { SkyDocsDemoPageTypeDefinitionsComponent } from './demo-page-type-definitions.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyCodeBlockModule,\n SkyCodeModule,\n SkyDocsDemoModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsMarkdownModule,\n SkyDocsModuleInfoModule,\n SkyDocsTypeDefinitionsModule,\n SkyTabsModule,\n StachePageSummaryModule,\n StacheWrapperModule,\n ],\n declarations: [\n SkyDocsDemoPageComponent,\n SkyDocsDemoPageModuleInfoComponent,\n SkyDocsDemoPageSectionComponent,\n SkyDocsDemoPageSummaryComponent,\n SkyDocsDemoPageTypeDefinitionsComponent,\n ],\n exports: [\n SkyDocsDemoPageComponent,\n SkyDocsDemoPageModuleInfoComponent,\n SkyDocsDemoPageSectionComponent,\n SkyDocsDemoPageSummaryComponent,\n SkyDocsDemoPageTypeDefinitionsComponent,\n ],\n})\nexport class SkyDocsDemoPageModule {}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'sky-docs-design-guideline-thumbnail',\n templateUrl: './design-guideline-thumbnail.component.html',\n styleUrls: ['./design-guideline-thumbnail.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelineThumbnailComponent {\n @Input()\n public caption: string;\n\n @Input()\n public captionType: string;\n\n @Input()\n public imageAlt: string;\n\n @Input()\n public imageSource: string;\n\n @Input()\n public videoSource: string;\n\n @Input()\n public showBorder: boolean = false;\n}\n","<div class=\"sky-docs-design-guideline-thumbnail\">\n <sky-docs-thumbnail\n [caption]=\"caption\"\n [captionType]=\"captionType\"\n [imageAlt]=\"imageAlt\"\n [imageSource]=\"imageSource\"\n [videoSource]=\"videoSource\"\n [showBorder]=\"showBorder\"\n ></sky-docs-thumbnail>\n</div>\n","import {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n QueryList,\n} from '@angular/core';\n\nimport { SkyDocsDesignGuidelineThumbnailComponent } from './design-guideline-thumbnail.component';\n\n@Component({\n selector: 'sky-docs-design-guideline',\n templateUrl: './design-guideline.component.html',\n styleUrls: ['./design-guideline.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDesignGuidelineComponent implements AfterContentInit {\n @Input()\n public heading: string;\n\n @Input()\n public headingStyle: 'default' | 'success' | 'danger' = 'default';\n\n public get classNames(): string {\n const classNames: string[] = [];\n\n classNames.push(`sky-text-${this.headingStyle}`);\n\n return classNames.join(' ');\n }\n\n public hasThumbnails = false;\n\n @ContentChildren(SkyDocsDesignGuidelineThumbnailComponent)\n private thumbnails: QueryList<SkyDocsDesignGuidelineThumbnailComponent>;\n\n public ngAfterContentInit(): void {\n this.hasThumbnails = !!this.thumbnails.length;\n }\n}\n","<div class=\"sky-docs-design-guideline\">\n <h3\n *ngIf=\"heading\"\n class=\"sky-docs-design-guideline-heading\"\n [ngClass]=\"classNames\"\n >\n {{ heading }}\n </h3>\n <sky-row *ngIf=\"hasThumbnails; else content\">\n <sky-column screenSmall=\"6\" screenMedium=\"5\" screenLarge=\"4\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </sky-column>\n <sky-column screenSmall=\"6\" screenMedium=\"7\" screenLarge=\"8\">\n <div class=\"sky-docs-design-guideline-thumbnails\">\n <ng-container *ngTemplateOutlet=\"thumbnails\"></ng-container>\n </div>\n </sky-column>\n </sky-row>\n</div>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #thumbnails>\n <ng-content select=\"sky-docs-design-guideline-thumbnail\"></ng-content>\n</ng-template>\n","import { CommonModule } from '@angular/common';\n\nimport { NgModule } from '@angular/core';\n\nimport { SkyFluidGridModule } from '@skyux/layout';\n\nimport { SkyDocsThumbnailModule } from '../thumbnail/thumbnail.module';\n\nimport { SkyDocsDesignGuidelineComponent } from './design-guideline.component';\n\nimport { SkyDocsDesignGuidelinesComponent } from './design-guidelines.component';\n\nimport { SkyDocsDesignGuidelineThumbnailComponent } from './design-guideline-thumbnail.component';\n\n@NgModule({\n imports: [CommonModule, SkyDocsThumbnailModule, SkyFluidGridModule],\n declarations: [\n SkyDocsDesignGuidelineComponent,\n SkyDocsDesignGuidelineThumbnailComponent,\n SkyDocsDesignGuidelinesComponent,\n ],\n exports: [\n SkyDocsDesignGuidelineComponent,\n SkyDocsDesignGuidelineThumbnailComponent,\n SkyDocsDesignGuidelinesComponent,\n ],\n})\nexport class SkyDocsDesignGuidelinesModule {}\n","import { NgModule } from '@angular/core';\n\nimport { SkyAuthHttpClientModule } from '@skyux/http';\n\nimport { SkyDocsAnatomyModule } from './modules/anatomy/anatomy.module';\n\nimport { SkyDocsCodeExamplesModule } from './modules/code-examples/code-examples.module';\n\nimport { SkyDocsDemoModule } from './modules/demo/demo.module';\n\nimport { SkyDocsDemoPageModule } from './modules/demo-page/demo-page.module';\n\nimport { SkyDocsDesignGuidelinesModule } from './modules/design-guidelines/design-guidelines.module';\n\n/**\n * This module conveniently exports the most commonly used modules.\n */\n@NgModule({\n exports: [\n SkyAuthHttpClientModule, // Supports the supportal service calls using the `svcid` param.\n SkyDocsAnatomyModule,\n SkyDocsCodeExamplesModule,\n SkyDocsDemoModule,\n SkyDocsDemoPageModule,\n SkyDocsDesignGuidelinesModule,\n ],\n})\nexport class SkyDocsToolsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1.SkyDocsThumbnailComponent","i1","i1.SkyDocsSourceCodeProvider","i1.SkyDocsCodeExamplesEditorService","i2.SkyDocsSourceCodeService","i3","i5","i1.SkyDocsToolsOptions","i4","i6","i7","i1.SkyDocsTypeDefinitionsProvider","i1.SkyDocsAnchorLinkService","i1.SkyDocsTypeDefinitionsFormatService","i4.SkyDocsSafeHtmlComponent","i5.SkyDocsMarkdownPipe","i6.SkyDocsTypeAnchorLinksPipe","i5.SkyDocsSafeHtmlComponent","i6.SkyDocsCallSignatureDefinitionComponent","i7.SkyDocsMarkdownPipe","i8.SkyDocsTypeAnchorLinksPipe","i3.SkyDocsHeadingAnchorComponent","i5.SkyDocsPropertyDefinitionsComponent","i6.SkyDocsMarkdownPipe","i7.SkyDocsTypeAnchorLinksPipe","i2.SkyDocsHeadingAnchorComponent","i3.SkyDocsSafeHtmlComponent","i4.SkyDocsPropertyDefinitionsComponent","i4.SkyDocsHeadingAnchorComponent","i6.SkyDocsPropertyDefinitionsComponent","i5.SkyDocsMethodDefinitionsComponent","i4.SkyDocsMethodDefinitionsComponent","i2.SkyDocsTypeDocAdapterService","i2.SkyDocsClassDefinitionComponent","i3.SkyDocsDirectiveDefinitionComponent","i4.SkyDocsEnumerationDefinitionComponent","i5.SkyDocsInterfaceDefinitionComponent","i6.SkyDocsPipeDefinitionComponent","i7.SkyDocsTypeAliasDefinitionComponent","i8.SkyDocsDemoPageSectionComponent","i3.SkyDocsDemoPageDomAdapterService","i4.SkyDocsSupportalService","i5.SkyDocsDemoPageTitleService","i6.SkyDocsTypeDefinitionsService","i8.SkyDocsModuleInfoComponent","i9","i11.SkyDocsDemoPageSectionComponent","i12.SkyDocsDemoPageTypeDefinitionsComponent"],"mappings":"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"}
|