@skyux/docs-tools 11.2.1 → 12.0.0-alpha.10
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/README.md +4 -132
- package/css/styles.css +35 -0
- package/fesm2022/skyux-docs-tools.mjs +1617 -3171
- package/fesm2022/skyux-docs-tools.mjs.map +1 -1
- package/index.d.ts +32 -5
- package/lib/modules/category-tag/category-color.d.ts +6 -0
- package/lib/modules/category-tag/category-tag.component.d.ts +10 -0
- package/lib/modules/category-tag/category-tag.module.d.ts +10 -0
- package/lib/modules/clipboard/clipboard-button.directive.d.ts +12 -0
- package/lib/modules/clipboard/clipboard.module.d.ts +10 -0
- package/lib/modules/clipboard/clipboard.service.d.ts +15 -0
- package/lib/modules/code-example-viewer/code-example-viewer.component.d.ts +23 -0
- package/lib/modules/code-example-viewer/code-example-viewer.module.d.ts +10 -0
- package/lib/modules/code-example-viewer/stackblitz-launch-config.d.ts +10 -0
- package/lib/modules/code-example-viewer/stackblitz.service.d.ts +11 -0
- package/lib/modules/code-highlight/code-highlight-language.d.ts +12 -0
- package/lib/modules/code-highlight/code-highlight.pipe.d.ts +12 -0
- package/lib/modules/code-highlight/code-highlight.service.d.ts +11 -0
- package/lib/modules/code-snippet/code-snippet-toolbar.component.d.ts +9 -0
- package/lib/modules/code-snippet/code-snippet-wrapper.component.d.ts +12 -0
- package/lib/modules/code-snippet/code-snippet.component.d.ts +16 -0
- package/lib/modules/code-snippet/code-snippet.module.d.ts +11 -0
- package/lib/modules/heading-anchor/heading-anchor-heading-level.d.ts +4 -0
- package/lib/modules/heading-anchor/heading-anchor-heading-text-format.d.ts +4 -0
- package/lib/modules/heading-anchor/heading-anchor-link.d.ts +12 -0
- package/lib/modules/heading-anchor/heading-anchor.component.d.ts +24 -0
- package/{modules → lib/modules}/heading-anchor/heading-anchor.module.d.ts +4 -4
- package/lib/modules/heading-anchor/heading-anchor.service.d.ts +16 -0
- package/{modules → lib/modules}/shared/sky-docs-tools-resources.module.d.ts +0 -4
- package/lib/modules/showcase/code-example-types/code-example-types-token.d.ts +9 -0
- package/lib/modules/showcase/code-example-types/code-example-types.pipe.d.ts +11 -0
- package/lib/modules/showcase/code-example-types/provide-code-example-types.d.ts +14 -0
- package/lib/modules/showcase/showcase-area-development.component.d.ts +11 -0
- package/lib/modules/showcase/showcase-area-examples.component.d.ts +11 -0
- package/lib/modules/showcase/showcase-area-overview.component.d.ts +9 -0
- package/lib/modules/showcase/showcase-area-testing.component.d.ts +11 -0
- package/lib/modules/showcase/showcase-host.service.d.ts +15 -0
- package/lib/modules/showcase/showcase.component.d.ts +19 -0
- package/lib/modules/showcase/showcase.module.d.ts +14 -0
- package/lib/modules/table-of-contents/table-of-contents-links.d.ts +7 -0
- package/lib/modules/table-of-contents/table-of-contents-page.component.d.ts +15 -0
- package/lib/modules/table-of-contents/table-of-contents.component.d.ts +11 -0
- package/lib/modules/table-of-contents/table-of-contents.module.d.ts +11 -0
- package/lib/modules/type-definition/box.component.d.ts +12 -0
- package/lib/modules/type-definition/deprecation-reason.component.d.ts +9 -0
- package/lib/modules/type-definition/description.component.d.ts +10 -0
- package/lib/modules/type-definition/pipes/default-value.pipe.d.ts +11 -0
- package/lib/modules/type-definition/pipes/enum-signature.pipe.d.ts +11 -0
- package/lib/modules/type-definition/pipes/escape-html.pipe.d.ts +10 -0
- package/lib/modules/type-definition/pipes/function-signature.pipe.d.ts +12 -0
- package/lib/modules/type-definition/pipes/interface-signature.pipe.d.ts +11 -0
- package/{modules/markdown → lib/modules/type-definition/pipes}/markdown.pipe.d.ts +5 -2
- package/lib/modules/type-definition/pipes/method-name.pipe.d.ts +12 -0
- package/lib/modules/type-definition/pipes/parameter-name.pipe.d.ts +11 -0
- package/lib/modules/type-definition/pipes/property-name.pipe.d.ts +12 -0
- package/lib/modules/type-definition/pipes/type-alias-signature.pipe.d.ts +11 -0
- package/lib/modules/type-definition/pipes/type-anchor-links.pipe.d.ts +14 -0
- package/lib/modules/type-definition/pipes/type-definition-kind-to-category-color.pipe.d.ts +12 -0
- package/lib/modules/type-definition/pipes/type-definition-kind-to-label.pipe.d.ts +11 -0
- package/lib/modules/type-definition/property-definition.d.ts +5 -0
- package/lib/modules/type-definition/type-anchor-ids.service.d.ts +14 -0
- package/lib/modules/type-definition/type-definition.component.d.ts +19 -0
- package/lib/modules/type-definition/type-definition.module.d.ts +10 -0
- package/package.json +39 -28
- package/LICENSE +0 -21
- package/css/docs-tools.css +0 -70
- package/docs-tools.module.d.ts +0 -14
- package/esm2022/docs-tools.module.mjs +0 -36
- package/esm2022/modules/anatomy/anatomy-item.component.mjs +0 -17
- package/esm2022/modules/anatomy/anatomy-thumbnail.component.mjs +0 -27
- package/esm2022/modules/anatomy/anatomy.component.mjs +0 -25
- package/esm2022/modules/anatomy/anatomy.module.mjs +0 -46
- package/esm2022/modules/code-examples/code-example-module-dependencies.mjs +0 -2
- package/esm2022/modules/code-examples/code-example-theme.mjs +0 -6
- package/esm2022/modules/code-examples/code-example.component.mjs +0 -68
- package/esm2022/modules/code-examples/code-example.mjs +0 -2
- package/esm2022/modules/code-examples/code-examples-editor.service.mjs +0 -368
- package/esm2022/modules/code-examples/code-examples.component.mjs +0 -98
- package/esm2022/modules/code-examples/code-examples.module.mjs +0 -41
- package/esm2022/modules/demo/demo-content-alignment.mjs +0 -2
- package/esm2022/modules/demo/demo-control-panel-change.mjs +0 -2
- package/esm2022/modules/demo/demo-control-panel-checkbox.component.mjs +0 -84
- package/esm2022/modules/demo/demo-control-panel-radio-choice.mjs +0 -2
- package/esm2022/modules/demo/demo-control-panel-radio-group.component.mjs +0 -80
- package/esm2022/modules/demo/demo-control-panel-section.component.mjs +0 -22
- package/esm2022/modules/demo/demo-control-panel.component.mjs +0 -85
- package/esm2022/modules/demo/demo-custom-control-panel.component.mjs +0 -20
- package/esm2022/modules/demo/demo.component.mjs +0 -58
- package/esm2022/modules/demo/demo.module.mjs +0 -72
- package/esm2022/modules/demo-page/demo-page-dom-adapter.service.mjs +0 -75
- package/esm2022/modules/demo-page/demo-page-module-info.component.mjs +0 -14
- package/esm2022/modules/demo-page/demo-page-section.component.mjs +0 -43
- package/esm2022/modules/demo-page/demo-page-summary.component.mjs +0 -21
- package/esm2022/modules/demo-page/demo-page-title.service.mjs +0 -28
- package/esm2022/modules/demo-page/demo-page-type-definitions.component.mjs +0 -24
- package/esm2022/modules/demo-page/demo-page.component.mjs +0 -190
- package/esm2022/modules/demo-page/demo-page.module.mjs +0 -94
- package/esm2022/modules/design-guidelines/design-guideline-thumbnail.component.mjs +0 -27
- package/esm2022/modules/design-guidelines/design-guideline.component.mjs +0 -33
- package/esm2022/modules/design-guidelines/design-guidelines.component.mjs +0 -11
- package/esm2022/modules/design-guidelines/design-guidelines.module.mjs +0 -34
- package/esm2022/modules/heading-anchor/heading-anchor.component.mjs +0 -21
- package/esm2022/modules/heading-anchor/heading-anchor.module.mjs +0 -20
- package/esm2022/modules/markdown/markdown.module.mjs +0 -17
- package/esm2022/modules/markdown/markdown.pipe.mjs +0 -20
- package/esm2022/modules/module-info/module-info.component.mjs +0 -72
- package/esm2022/modules/module-info/module-info.module.mjs +0 -40
- package/esm2022/modules/safe-html/safe-html.component.mjs +0 -20
- package/esm2022/modules/safe-html/safe-html.module.mjs +0 -18
- package/esm2022/modules/shared/docs-tools-component-info.mjs +0 -2
- package/esm2022/modules/shared/docs-tools-options.mjs +0 -3
- package/esm2022/modules/shared/docs-tools-site-options.mjs +0 -3
- package/esm2022/modules/shared/docs-tools-supportal.service.mjs +0 -23
- package/esm2022/modules/shared/sky-docs-tools-resources.module.mjs +0 -55
- package/esm2022/modules/source-code/source-code-file.mjs +0 -2
- package/esm2022/modules/source-code/source-code-provider.mjs +0 -13
- package/esm2022/modules/source-code/source-code.service.mjs +0 -42
- package/esm2022/modules/thumbnail/thumbnail.component.mjs +0 -28
- package/esm2022/modules/thumbnail/thumbnail.module.mjs +0 -19
- package/esm2022/modules/type-definitions/anchor-link-service-config.mjs +0 -2
- package/esm2022/modules/type-definitions/anchor-link-service-format.mjs +0 -2
- package/esm2022/modules/type-definitions/anchor-link.mjs +0 -2
- package/esm2022/modules/type-definitions/anchor-link.service.mjs +0 -106
- package/esm2022/modules/type-definitions/call-signature-definition.component.mjs +0 -45
- package/esm2022/modules/type-definitions/call-signature-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/class-definition.component.mjs +0 -20
- package/esm2022/modules/type-definitions/class-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/comment-tags.mjs +0 -2
- package/esm2022/modules/type-definitions/directive-definition.component.mjs +0 -20
- package/esm2022/modules/type-definitions/directive-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/entry-child-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/entry-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/enumeration-definition.component.mjs +0 -19
- package/esm2022/modules/type-definitions/enumeration-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/enumeration-member-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/index-signature-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/interface-definition.component.mjs +0 -36
- package/esm2022/modules/type-definitions/interface-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/interface-property-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/method-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/method-definitions.component.mjs +0 -72
- package/esm2022/modules/type-definitions/parameter-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/pipe-definition.component.mjs +0 -20
- package/esm2022/modules/type-definitions/pipe-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/preview-feature-indicator.component.mjs +0 -13
- package/esm2022/modules/type-definitions/property-decorator.mjs +0 -2
- package/esm2022/modules/type-definitions/property-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/property-definitions.component.mjs +0 -66
- package/esm2022/modules/type-definitions/type-alias-definition.component.mjs +0 -37
- package/esm2022/modules/type-definitions/type-alias-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/type-anchor-links.pipe.mjs +0 -27
- package/esm2022/modules/type-definitions/type-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/type-definitions-format.service.mjs +0 -254
- package/esm2022/modules/type-definitions/type-definitions-provider.mjs +0 -10
- package/esm2022/modules/type-definitions/type-definitions.mjs +0 -2
- package/esm2022/modules/type-definitions/type-definitions.module.mjs +0 -108
- package/esm2022/modules/type-definitions/type-definitions.service.mjs +0 -122
- package/esm2022/modules/type-definitions/type-parameter-definition.mjs +0 -2
- package/esm2022/modules/type-definitions/typedoc-adapter.service.mjs +0 -614
- package/esm2022/modules/type-definitions/typedoc-types.mjs +0 -32
- package/esm2022/public-api.mjs +0 -69
- package/esm2022/skyux-docs-tools.mjs +0 -5
- package/modules/anatomy/anatomy-item.component.d.ts +0 -7
- package/modules/anatomy/anatomy-thumbnail.component.d.ts +0 -11
- package/modules/anatomy/anatomy.component.d.ts +0 -9
- package/modules/anatomy/anatomy.module.d.ts +0 -13
- package/modules/code-examples/code-example-module-dependencies.d.ts +0 -6
- package/modules/code-examples/code-example-theme.d.ts +0 -4
- package/modules/code-examples/code-example.component.d.ts +0 -39
- package/modules/code-examples/code-example.d.ts +0 -13
- package/modules/code-examples/code-examples-editor.service.d.ts +0 -18
- package/modules/code-examples/code-examples.component.d.ts +0 -45
- package/modules/code-examples/code-examples.module.d.ts +0 -14
- package/modules/demo/demo-content-alignment.d.ts +0 -1
- package/modules/demo/demo-control-panel-change.d.ts +0 -9
- package/modules/demo/demo-control-panel-checkbox.component.d.ts +0 -63
- package/modules/demo/demo-control-panel-radio-choice.d.ts +0 -13
- package/modules/demo/demo-control-panel-radio-group.component.d.ts +0 -64
- package/modules/demo/demo-control-panel-section.component.d.ts +0 -16
- package/modules/demo/demo-control-panel.component.d.ts +0 -34
- package/modules/demo/demo-custom-control-panel.component.d.ts +0 -9
- package/modules/demo/demo.component.d.ts +0 -32
- package/modules/demo/demo.module.d.ts +0 -18
- package/modules/demo-page/demo-page-dom-adapter.service.d.ts +0 -24
- package/modules/demo-page/demo-page-module-info.component.d.ts +0 -5
- package/modules/demo-page/demo-page-section.component.d.ts +0 -22
- package/modules/demo-page/demo-page-summary.component.d.ts +0 -15
- package/modules/demo-page/demo-page-title.service.d.ts +0 -12
- package/modules/demo-page/demo-page-type-definitions.component.d.ts +0 -10
- package/modules/demo-page/demo-page.component.d.ts +0 -112
- package/modules/demo-page/demo-page.module.d.ts +0 -23
- package/modules/design-guidelines/design-guideline-thumbnail.component.d.ts +0 -11
- package/modules/design-guidelines/design-guideline.component.d.ts +0 -12
- package/modules/design-guidelines/design-guidelines.component.d.ts +0 -5
- package/modules/design-guidelines/design-guidelines.module.d.ts +0 -12
- package/modules/heading-anchor/heading-anchor.component.d.ts +0 -7
- package/modules/markdown/markdown.module.d.ts +0 -7
- package/modules/module-info/module-info.component.d.ts +0 -21
- package/modules/module-info/module-info.module.d.ts +0 -13
- package/modules/safe-html/safe-html.component.d.ts +0 -10
- package/modules/safe-html/safe-html.module.d.ts +0 -8
- package/modules/shared/docs-tools-component-info.d.ts +0 -13
- package/modules/shared/docs-tools-options.d.ts +0 -4
- package/modules/shared/docs-tools-site-options.d.ts +0 -3
- package/modules/shared/docs-tools-supportal.service.d.ts +0 -11
- package/modules/source-code/source-code-file.d.ts +0 -5
- package/modules/source-code/source-code-provider.d.ts +0 -6
- package/modules/source-code/source-code.service.d.ts +0 -10
- package/modules/thumbnail/thumbnail.component.d.ts +0 -11
- package/modules/thumbnail/thumbnail.module.d.ts +0 -9
- package/modules/type-definitions/anchor-link-service-config.d.ts +0 -6
- package/modules/type-definitions/anchor-link-service-format.d.ts +0 -4
- package/modules/type-definitions/anchor-link.d.ts +0 -3
- package/modules/type-definitions/anchor-link.service.d.ts +0 -24
- package/modules/type-definitions/call-signature-definition.component.d.ts +0 -26
- package/modules/type-definitions/call-signature-definition.d.ts +0 -9
- package/modules/type-definitions/class-definition.component.d.ts +0 -7
- package/modules/type-definitions/class-definition.d.ts +0 -11
- package/modules/type-definitions/comment-tags.d.ts +0 -14
- package/modules/type-definitions/directive-definition.component.d.ts +0 -7
- package/modules/type-definitions/directive-definition.d.ts +0 -11
- package/modules/type-definitions/entry-child-definition.d.ts +0 -13
- package/modules/type-definitions/entry-definition.d.ts +0 -12
- package/modules/type-definitions/enumeration-definition.component.d.ts +0 -7
- package/modules/type-definitions/enumeration-definition.d.ts +0 -9
- package/modules/type-definitions/enumeration-member-definition.d.ts +0 -11
- package/modules/type-definitions/index-signature-definition.d.ts +0 -11
- package/modules/type-definitions/interface-definition.component.d.ts +0 -14
- package/modules/type-definitions/interface-definition.d.ts +0 -11
- package/modules/type-definitions/interface-property-definition.d.ts +0 -8
- package/modules/type-definitions/method-definition.d.ts +0 -11
- package/modules/type-definitions/method-definitions.component.d.ts +0 -36
- package/modules/type-definitions/parameter-definition.d.ts +0 -12
- package/modules/type-definitions/pipe-definition.component.d.ts +0 -7
- package/modules/type-definitions/pipe-definition.d.ts +0 -8
- package/modules/type-definitions/preview-feature-indicator.component.d.ts +0 -5
- package/modules/type-definitions/property-decorator.d.ts +0 -6
- package/modules/type-definitions/property-definition.d.ts +0 -11
- package/modules/type-definitions/property-definitions.component.d.ts +0 -39
- package/modules/type-definitions/type-alias-definition.component.d.ts +0 -14
- package/modules/type-definitions/type-alias-definition.d.ts +0 -11
- package/modules/type-definitions/type-anchor-links.pipe.d.ts +0 -14
- package/modules/type-definitions/type-definition.d.ts +0 -36
- package/modules/type-definitions/type-definitions-format.service.d.ts +0 -55
- package/modules/type-definitions/type-definitions-provider.d.ts +0 -10
- package/modules/type-definitions/type-definitions.d.ts +0 -20
- package/modules/type-definitions/type-definitions.module.d.ts +0 -26
- package/modules/type-definitions/type-definitions.service.d.ts +0 -20
- package/modules/type-definitions/type-parameter-definition.d.ts +0 -8
- package/modules/type-definitions/typedoc-adapter.service.d.ts +0 -49
- package/modules/type-definitions/typedoc-types.d.ts +0 -142
- package/public-api.d.ts +0 -66
|
@@ -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-custom-control-panel.component.ts","../../../projects/docs-tools/src/modules/demo/demo-custom-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/preview-feature-indicator.component.ts","../../../projects/docs-tools/src/modules/type-definitions/preview-feature-indicator.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-site-options.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-types.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","/* istanbul ignore file */\n\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n SkyLibResourcesService,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<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\nSkyLibResourcesService.addResources(RESOURCES);\n\nexport class SkyDocsToolsResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string,\n ): string | undefined {\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 { VERSION as ANGULAR_VERSION, Injectable } from '@angular/core';\nimport { VERSION as SKY_UX_VERSION } from '@skyux/core';\nimport { VERSION as SKY_UX_ICONS_VERSION } from '@skyux/icons';\nimport StackBlitzSDK from '@stackblitz/sdk';\nimport {\n OpenOptions as StackBlitzOpenOptions,\n Project as StackBlitzProject,\n} from '@stackblitz/sdk';\n\nimport { SkyDocsSourceCodeFile } from '../source-code/source-code-file';\n\nimport { SkyDocsCodeExample } from './code-example';\nimport { SkyDocsCodeExampleModuleDependencies } from './code-example-module-dependencies';\nimport { SkyDocsCodeExampleTheme } from './code-example-theme';\n\ntype StackblitzTemplate = 'angular-cli' | 'node';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsCodeExamplesEditorService {\n public launchEditor(\n codeExample: SkyDocsCodeExample,\n template: StackblitzTemplate = 'angular-cli',\n ): void {\n const project = this.#getPayload(codeExample, template);\n const openFile: string[] = [];\n if (project.files['src/app/demo.component.html']) {\n openFile.push('src/app/demo.component.html');\n } else if (project.files['src/app/demo.component.ts']) {\n openFile.push('src/app/demo.component.ts');\n }\n const options: StackBlitzOpenOptions = {\n openFile,\n };\n\n StackBlitzSDK.openProject(project, options);\n }\n\n #getPayload(\n codeExample: SkyDocsCodeExample,\n template: StackblitzTemplate,\n ): StackBlitzProject {\n const angularVersion = `^${ANGULAR_VERSION.major}`;\n const skyuxVersion = `^${SKY_UX_VERSION.full}`;\n\n const defaultDependencies: SkyDocsCodeExampleModuleDependencies = {\n '@angular-devkit/build-angular': angularVersion,\n '@angular/animations': angularVersion,\n '@angular/cdk': angularVersion,\n '@angular/cli': angularVersion,\n '@angular/common': angularVersion,\n '@angular/compiler': angularVersion,\n '@angular/compiler-cli': 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/help-inline': skyuxVersion,\n '@skyux/i18n': skyuxVersion,\n '@skyux/icon': skyuxVersion,\n '@skyux/indicators': skyuxVersion,\n '@skyux/layout': skyuxVersion,\n '@skyux/modals': skyuxVersion,\n '@skyux/packages': skyuxVersion,\n '@skyux/popovers': skyuxVersion,\n '@skyux/router': skyuxVersion,\n '@skyux/theme': skyuxVersion,\n '@types/jasmine': '~5.1.4',\n 'ng2-dragula': '5.1.0',\n rxjs: '^7',\n tslib: '^2.6.2',\n typescript: '~5.5.3',\n 'zone.js': '~0.14.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 overrides =\n template === 'node'\n ? {\n 'ng2-dragula@5.1.0': {\n '@angular/animations': '>=16.0.0 <19.0.0',\n '@angular/core': '>=16.0.0 <19.0.0',\n '@angular/common': '>=16.0.0 <19.0.0',\n },\n }\n : undefined;\n\n const files = this.parseStackBlitzFiles(\n codeExample.sourceCode,\n mergedDependencies,\n overrides,\n {\n target: template === 'node' ? 'ES2022' : 'ES2015',\n },\n codeExample.theme,\n codeExample.stylesheets,\n );\n\n return {\n files,\n title: 'SKY UX Demo',\n description: 'SKY UX Demo',\n template,\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 overrides: object | undefined,\n compilerOptions: object,\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 { FormsModule, ReactiveFormsModule } from '@angular/forms';`,\n ];\n\n const moduleImports: string[] = ['FormsModule', 'ReactiveFormsModule'];\n\n const files: { [_: string]: string } = {\n '.stackblitzrc': JSON.stringify(\n {\n env: {\n NG_BUILD_PARALLEL_TS: '0',\n NODE_ENV: 'development',\n },\n },\n undefined,\n 2,\n ),\n };\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 { ${moduleName} } from '${importPath}';`,\n );\n }\n\n // Standalone entry components are named demo.component.ts.\n if (file.fileName === 'demo.component.ts') {\n const componentName = 'DemoComponent';\n const componentSelector = 'app-demo';\n const importPath = `./${this.getFilenameNoExtension(file.fileName)}`;\n\n appComponentTemplate += `<${componentSelector} />`;\n\n moduleImports.push(componentName);\n moduleImportStatements.push(\n `import { ${componentName} } from '${importPath}';`,\n );\n }\n });\n\n files[`${appPath}app.component.ts`] = `${banner}\nimport { Component, Injectable } from '@angular/core';\nimport { SkyHelpOpenArgs, SkyHelpService, SkyHelpUpdateArgs } from '@skyux/core';\n${moduleImportStatements.join('\\n\\n')}\n\n@Injectable()\n/*\n This mocked \\`SkyHelpService\\` is needed for Stackbliz demos only.\n To properly implement help service see: https://docs.blackbaud.com/bb-help-docs/\n*/\nexport class StackblitzOnlyCodeExamplesHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n if (args) {\n console.log('help key: ' + args.helpKey);\n }\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n if ('helpKey' in args) {\n console.log('help key update: ' + args.helpKey);\n }\n\n if ('pageDefaultHelpKey' in args) {\n console.log('page default help key update: ' + args.pageDefaultHelpKey);\n }\n }\n}\n\n@Component({\n selector: 'sky-demo-app',\n template: '${appComponentTemplate}',\n standalone: true,\n imports: [\n ${moduleImports.join(',\\n ')},\n ],\n providers: [\n {provide: SkyHelpService, useClass: StackblitzOnlyCodeExamplesHelpService}\n ]\n})\nexport class AppComponent {}\n`;\n\n files[`${srcPath}index.html`] = `<!doctype html>\n<html lang=\"en\">\n<head>\n <meta charset=\"utf-8\">\n <title>Sky UX Demo</title>\n <base href=\"/\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n <!--\n The CSS links are needed for the StackBlitz demo only.\n This is a workaround for a known bug that prevents external imports in CSS.\n https://github.com/stackblitz/core/issues/133\n -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\" crossorigin=\"anonymous\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/${SKY_UX_ICONS_VERSION.full}/assets/css/skyux-icons.min.css\" crossorigin=\"anonymous\">\n</head>\n<body>\n <sky-demo-app>\n Loading...\n </sky-demo-app>\n</body>\n</html>\n`;\n\n files[`${srcPath}main.ts`] = `${banner}\nimport 'zone.js';\nimport '@skyux/packages/polyfills';\n\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimations } from '@angular/platform-browser/animations';\nimport { provideRouter } from '@angular/router';\nimport { provideInitialTheme } from '@skyux/theme';\n\nimport { AppComponent } from './app/app.component';\n\nvoid bootstrapApplication(AppComponent, {\n providers: [\n provideAnimations(),\n provideInitialTheme('${theme}'),\n provideRouter([]),\n ],\n})\n .catch((err) => console.error(err));\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\n stylesheets.push('src/styles.scss');\n\n files['angular.json'] = JSON.stringify(\n {\n $schema: './node_modules/@angular/cli/lib/config/schema.json',\n version: 1,\n projects: {\n demo: {\n projectType: 'application',\n root: '',\n sourceRoot: 'src',\n prefix: 'app',\n architect: {\n build: {\n builder: '@angular-devkit/build-angular:application',\n options: {\n index: 'src/index.html',\n browser: 'src/main.ts',\n outputPath: 'dist/demo',\n tsConfig: 'tsconfig.app.json',\n inlineStyleLanguage: 'scss',\n styles: stylesheets,\n },\n configurations: {\n development: {\n optimization: false,\n extractLicenses: false,\n sourceMap: true,\n },\n },\n defaultConfiguration: 'development',\n },\n serve: {\n builder: '@angular-devkit/build-angular:dev-server',\n configurations: {\n development: {\n buildTarget: 'demo:build:development',\n },\n },\n defaultConfiguration: 'development',\n },\n },\n },\n },\n },\n undefined,\n 2,\n );\n\n files['package.json'] = JSON.stringify(\n {\n name: 'skyux-spa-demo',\n version: '0.0.0',\n dependencies,\n scripts: {\n start: 'ng serve',\n build: 'ng build',\n },\n ...(overrides ? { overrides } : {}),\n },\n undefined,\n 2,\n );\n\n files['tsconfig.app.json'] = JSON.stringify(\n {\n extends: './tsconfig.json',\n compilerOptions: {\n outDir: './out-tsc/app',\n types: [],\n },\n files: ['src/main.ts'],\n include: ['src/**/*.d.ts'],\n },\n undefined,\n 2,\n );\n\n files['tsconfig.json'] = JSON.stringify(\n {\n compileOnSave: false,\n compilerOptions: {\n strict: true,\n forceConsistentCasingInFileNames: true,\n noImplicitOverride: true,\n noPropertyAccessFromIndexSignature: true,\n noImplicitReturns: true,\n noFallthroughCasesInSwitch: true,\n sourceMap: true,\n declaration: false,\n downlevelIteration: true,\n esModuleInterop: true,\n experimentalDecorators: true,\n moduleResolution: 'node',\n importHelpers: true,\n typeRoots: ['node_modules/@types'],\n target: 'ES2015',\n module: 'ES2022',\n useDefineForClassFields: false,\n lib: ['ES2022', 'dom'],\n ...compilerOptions,\n },\n angularCompilerOptions: {\n fullTemplateTypeCheck: true,\n enableI18nLegacyMessageIdFormat: false,\n strictInjectionParameters: true,\n strictInputAccessModifiers: true,\n strictTemplates: true,\n },\n },\n undefined,\n 2,\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: 'root',\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(\n codeExample: SkyDocsCodeExample,\n event: MouseEvent,\n ): void {\n event.stopPropagation();\n this.editorService.launchEditor(\n codeExample,\n event.metaKey || event.ctrlKey ? 'node' : 'angular-cli',\n );\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)\"\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/icon';\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 TemplateRef,\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 content of the help popover. When specified, a [help inline](https://developer.blackbaud.com/skyux/components/help-inline)\n * button is added to the control panel checkbox label. The help inline button displays a [popover](https://developer.blackbaud.com/skyux/components/popover)\n * when clicked using the specified content and optional title.\n * @preview\n */\n @Input()\n public helpPopoverContent: string | TemplateRef<unknown> | undefined;\n\n /**\n * The title of the help popover. This property only applies when `helpPopoverContent` is\n * also specified.\n * @preview\n */\n @Input()\n public helpPopoverTitle: string | undefined;\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 [labelText]=\"label\"\n [helpPopoverContent]=\"helpPopoverContent\"\n [helpPopoverTitle]=\"helpPopoverTitle\"\n [name]=\"propertyName\"\n [(ngModel)]=\"checked\"\n (change)=\"onModelChange()\"\n/>\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 <sky-radio-group\n [disabled]=\"disabled\"\n [headingText]=\"heading\"\n [headingStyle]=\"4\"\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 { ChangeDetectionStrategy, Component, HostBinding } from '@angular/core';\n\n/**\n * Renders a custom control panel in the \"Show options\" dropdown above the demo.\n */\n@Component({\n selector: 'sky-docs-demo-custom-control-panel',\n templateUrl: './demo-custom-control-panel.component.html',\n styleUrl: './demo-custom-control-panel.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyDocsDemoCustomControlPanelComponent {\n @HostBinding('class')\n protected readonly classes = 'sky-rounded-corners';\n}\n","<ng-content />\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';\nimport { SkyDocsDemoCustomControlPanelComponent } from './demo-custom-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 (\n (this.controlPanels && this.controlPanels.length > 0) ||\n (this.customControlPanels && this.customControlPanels.length > 0)\n );\n }\n\n @ContentChildren(SkyDocsDemoControlPanelComponent, { read: ElementRef })\n private controlPanels: QueryList<SkyDocsDemoControlPanelComponent>;\n\n @ContentChildren(SkyDocsDemoCustomControlPanelComponent, { read: ElementRef })\n private customControlPanels: QueryList<SkyDocsDemoCustomControlPanelComponent>;\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 *ngTemplateOutlet=\"customControlPanels\"></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\" />\n</ng-template>\n\n<ng-template #customControlPanels>\n <ng-content select=\"sky-docs-demo-custom-control-panel\" />\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/icon';\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';\nimport { SkyDocsDemoCustomControlPanelComponent } from './demo-custom-control-panel.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 SkyDocsDemoCustomControlPanelComponent,\n ],\n exports: [\n SkyDocsDemoComponent,\n SkyDocsDemoControlPanelCheckboxComponent,\n SkyDocsDemoControlPanelComponent,\n SkyDocsDemoControlPanelRadioGroupComponent,\n SkyDocsDemoControlPanelSectionComponent,\n SkyDocsDemoCustomControlPanelComponent,\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/icon';\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 class=\"sky-margin-stacked-lg\" mode=\"vertical\">\n <sky-description-list-content *ngIf=\"moduleName\">\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 *ngIf=\"moduleName\"\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/help-inline';\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 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 (\n type.name === 'InputSignal' &&\n type.package === '@angular/core' &&\n type.typeArguments?.length\n ) {\n type = type.typeArguments[0];\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 ): 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 { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\n@Component({\n selector: 'sky-docs-preview-feature-indicator',\n templateUrl: './preview-feature-indicator.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [SkyStatusIndicatorModule],\n})\nexport class SkyDocsPreviewIndicatorComponent {}\n","<sky-status-indicator indicatorType=\"warning\" descriptionType=\"warning\"\n >Preview. This feature may not be fully represented in the design\n documentation, the demo, or code examples.</sky-status-indicator\n>\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 isPreview: 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 isPreview: property.isPreview,\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 <thead>\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 </thead>\n <tbody>\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 </tbody>\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\"\n >\n <sky-status-indicator indicatorType=\"danger\" descriptionType=\"danger\"\n >Required.</sky-status-indicator\n >\n </div>\n <div\n *ngIf=\"property.isPreview\"\n class=\"sky-docs-property-definition-preview-warning sky-docs-property-definition-label\"\n >\n <sky-docs-preview-feature-indicator></sky-docs-preview-feature-indicator>\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 isPreview: 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 isPreview: method.isPreview,\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 <div\n *ngIf=\"method.isPreview\"\n class=\"sky-docs-method-definition-preview-warning sky-docs-property-definition-label\"\n >\n <sky-docs-preview-feature-indicator></sky-docs-preview-feature-indicator>\n </div>\n\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 <div\n *ngIf=\"config.isPreview\"\n class=\"sky-docs-type-alias-preview-warning sky-docs-property-definition-label\"\n >\n <sky-docs-preview-feature-indicator></sky-docs-preview-feature-indicator>\n </div>\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/icon';\nimport { SkyStatusIndicatorModule } 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';\nimport { SkyDocsPreviewIndicatorComponent } from './preview-feature-indicator.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyCodeBlockModule,\n SkyCodeModule,\n SkyDefinitionListModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsMarkdownModule,\n SkyDocsPreviewIndicatorComponent,\n SkyDocsSafeHtmlModule,\n SkyIconModule,\n SkyStatusIndicatorModule,\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","export class SkyDocsToolsSiteOptions {\n public previewFeaturesUrl: string;\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","export interface TypeDocComment {\n summary?: { kind: string; text: string }[];\n\n blockTags?: {\n param?: string;\n content?: { kind: string; text: string }[];\n tag:\n | '@default'\n | '@defaultValue'\n | '@deprecated'\n | '@example'\n | '@param'\n | '@preview'\n | '@required';\n }[];\n}\n\nexport interface TypeDocSource {\n fileName: string;\n}\n\nexport interface TypeDocSignature {\n comment?: TypeDocComment;\n\n kind?:\n | TypeDocKind.CallSignature\n | TypeDocKind.ConstructorSignature\n | TypeDocKind.IndexSignature;\n\n name: string;\n\n parameters?: TypeDocParameter[];\n\n returnType?: TypeDocType;\n\n type?: TypeDocType;\n\n typeParameters?: TypeDocTypeParameter[];\n}\n\nexport interface TypeDocTypeParameter {\n name: string;\n kind: TypeDocKind.TypeParameter;\n type?: TypeDocType;\n}\n\nexport interface TypeDocType {\n constraint?: {\n name: string;\n };\n\n callSignature?: TypeDocSignature;\n\n declaration?: {\n children?: TypeDocEntryChild[];\n indexSignature?: TypeDocSignature;\n signatures?: TypeDocSignature[];\n };\n\n elementType?: TypeDocType;\n\n name?: string;\n\n operator?: 'keyof';\n\n target?: {\n name: string;\n };\n\n type?:\n | 'array'\n | 'intrinsic'\n | 'literal'\n | 'reference'\n | 'reflection'\n | 'typeParameter'\n | 'typeOperator'\n | 'union'\n | 'unknown';\n\n typeArguments?: TypeDocType[];\n\n types?: TypeDocType[];\n\n value?: string;\n\n package?: string;\n}\n\nexport interface TypeDocParameter {\n comment?: TypeDocComment;\n\n defaultValue?: string;\n\n kind: TypeDocKind.Parameter;\n\n name: string;\n\n type: TypeDocType;\n\n flags?: {\n isOptional?: boolean;\n };\n}\n\nexport interface TypeDocEntryChild {\n comment?: TypeDocComment;\n\n decorators?: {\n arguments?: {\n bindingPropertyName?: string;\n };\n name: 'Input' | 'Output';\n type: TypeDocType;\n }[];\n\n defaultValue?: string;\n\n flags?: {\n isOptional?: boolean;\n isStatic?: boolean;\n };\n\n kind?:\n | TypeDocKind.Accessor\n | TypeDocKind.CallSignature\n | TypeDocKind.Constructor\n | TypeDocKind.ConstructorSignature\n | TypeDocKind.IndexSignature\n | TypeDocKind.EnumMember\n | TypeDocKind.Parameter\n | TypeDocKind.Property\n | TypeDocKind.Method;\n\n getSignature?: {\n comment: TypeDocComment;\n name: string;\n type: TypeDocType;\n };\n\n name?: string;\n\n setSignature?: {\n comment: TypeDocComment;\n name: string;\n parameters?: TypeDocParameter[];\n type: TypeDocType;\n };\n\n signatures?: TypeDocSignature[];\n\n sources?: TypeDocSource[];\n\n type?: TypeDocType;\n}\n\nexport interface TypeDocEntry {\n anchorId?: string;\n\n children?: TypeDocEntryChild[];\n\n comment?: TypeDocComment;\n\n decorators?: {\n arguments?: {\n obj?: string;\n };\n name: 'Component' | 'Directive' | 'Injectable' | 'NgModule' | 'Pipe';\n type: TypeDocType;\n }[];\n\n kind?:\n | TypeDocKind.Class\n | TypeDocKind.Enum\n | TypeDocKind.Interface\n | TypeDocKind.Reference\n | TypeDocKind.TypeAlias;\n\n indexSignature?: TypeDocSignature;\n\n name?: string;\n\n sources?: TypeDocSource[];\n\n type?: TypeDocType;\n\n typeParameters?: TypeDocTypeParameter[];\n}\n\n/**\n * This enum comes from:\n * https://github.com/TypeStrong/typedoc/blob/v0.25.13/src/lib/models/reflections/kind.ts\n * The enum is up to date as of version `0.25.13`.\n */\nexport enum TypeDocKind {\n Project = 0x1,\n Module = 0x2,\n Namespace = 0x4,\n Enum = 0x8,\n EnumMember = 0x10,\n Variable = 0x20,\n Function = 0x40,\n Class = 0x80,\n Interface = 0x100,\n Constructor = 0x200,\n Property = 0x400,\n Method = 0x800,\n CallSignature = 0x1000,\n IndexSignature = 0x2000,\n ConstructorSignature = 0x4000,\n Parameter = 0x8000,\n TypeLiteral = 0x10000,\n TypeParameter = 0x20000,\n Accessor = 0x40000,\n GetSignature = 0x80000,\n SetSignature = 0x100000,\n TypeAlias = 0x200000,\n Reference = 0x400000,\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 TypeDocKind,\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()\n 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 hasPreviewFeatures: false,\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 definition.hasPreviewFeatures =\n !!definition.methods?.some((method) => method.isPreview) ||\n !!definition.properties?.some((property) => property.isPreview);\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 hasPreviewFeatures: false,\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((p) => this.#isInputProperty(p));\n if (inputProperties.length) {\n definition.inputProperties = inputProperties;\n }\n\n definition.hasPreviewFeatures =\n !!definition.inputProperties?.some((property) => property.isPreview) ||\n !!definition.eventProperties?.some((property) => property.isPreview);\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 hasPreviewFeatures: !!members.find((member) => member.isPreview),\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 hasPreviewFeatures: !!properties.find((member) => member.isPreview),\n properties,\n };\n\n const tags = this.getCommentTags(entry.comment);\n this.applyCommentTagValues(definition, tags);\n\n const typeParameters = this.getTypeParameterDefinitions(\n entry.typeParameters,\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 isPreview: false,\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.typeParameters,\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 // We only want properties (both with or without a getter/setter)\n child.kind === TypeDocKind.Property ||\n child.kind === TypeDocKind.Accessor,\n )\n .filter(\n (child) =>\n // We only want accessors that don't have a setter if they are not inputs\n child.kind !== TypeDocKind.Accessor ||\n child.setSignature ||\n this.getDecorator(child)?.name !== 'Input',\n )\n .map((child) => {\n let definition: SkyDocsClassPropertyDefinition = {\n isOptional: true,\n isPreview: false,\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.kind === TypeDocKind.Accessor &&\n !child.comment?.summary\n ?.map((item) => item.text)\n .join('')\n .trim() &&\n (child.setSignature || child.getSignature)\n ) {\n const mainTags = this.getCommentTags(child.comment);\n\n this.applyCommentTagValues(definition, mainTags);\n\n if (child.getSignature) {\n const getTags = this.getCommentTags(child.getSignature.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) {\n const setTags = this.getCommentTags(child.setSignature.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.kind === TypeDocKind.Property &&\n !child.comment?.summary\n ?.map((item) => item.text)\n .join('')\n .trim() &&\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.kind === TypeDocKind.Constructor,\n );\n if (constructor) {\n const signature = constructor.signatures.find(\n (signature) =>\n signature.kind === TypeDocKind.ConstructorSignature,\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.kind === TypeDocKind.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 isPreview: false,\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].typeParameters,\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.kind === TypeDocKind.Method && child.signatures.length > 0) {\n tags = this.getCommentTags(child.signatures[0].comment);\n } else if (\n child.type.type === 'reflection' &&\n child.type?.declaration?.signatures?.length > 0\n ) {\n tags = this.getCommentTags(\n child.type.declaration.signatures[0].comment,\n );\n } else {\n tags = this.getCommentTags(child.comment);\n }\n const definition: SkyDocsInterfacePropertyDefinition = {\n isOptional: tags.extras.required ? false : !!child.flags?.isOptional,\n isPreview: false,\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 isPreview: false,\n name: indexSignature.name,\n type: {\n indexSignature: this.getIndexSignatureDefinition(indexSignature),\n },\n };\n\n // New versions of typedoc do not seem to add the comment for index signatures - the else statement is a default based on the only index signature we had in September 2023 (SkySelectField).\n if (indexSignature.comment) {\n const tags = this.getCommentTags(indexSignature.comment);\n this.applyCommentTagValues(definition, tags);\n } else {\n definition.description = 'All other properties for an item.';\n }\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 isPreview: false,\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 kind = child.kind;\n switch (kind) {\n case TypeDocKind.Accessor:\n if (child.setSignature) {\n return this.getTypeDefinition(child.setSignature.parameters[0]);\n }\n return this.getTypeDefinition(child.getSignature);\n\n case TypeDocKind.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 if (child.type.package) {\n definition.package = child.type.package;\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.blockTags) {\n comment.blockTags.forEach((tag) => {\n switch (tag.tag) {\n case '@deprecated':\n deprecationWarning = tag.content\n .map((item) => item.text)\n .join('')\n .trim();\n break;\n\n case '@default':\n case '@defaultValue':\n defaultValue = tag.content\n .map((item) => item.text)\n .join('')\n .trim();\n\n if (tag.content[0].kind === 'code') {\n defaultValue = defaultValue.split('```')[1].trim();\n\n const defaultLanguage = defaultValue.split('\\n')[0];\n if (\n defaultLanguage === 'markup' ||\n defaultLanguage === 'typescript' ||\n defaultLanguage === 'ts'\n ) {\n defaultValue = defaultValue\n .slice(defaultLanguage.length)\n .trim();\n }\n }\n break;\n\n case '@example':\n codeExample = tag.content\n .map((item) => item.text)\n .join('')\n .trim()\n .split('```')[1]\n .trim();\n const exampleLanguage = codeExample.split('\\n')[0];\n if (\n exampleLanguage === 'markup' ||\n exampleLanguage === 'typescript' ||\n exampleLanguage === 'ts'\n ) {\n codeExample = codeExample.slice(exampleLanguage.length).trim();\n codeExampleLanguage = exampleLanguage;\n }\n break;\n\n case '@param':\n parameters = parameters || [];\n parameters.push({\n name: tag.param,\n description: tag.content\n .map((item) => item.text)\n .join('')\n .trim(),\n });\n break;\n case '@preview':\n extras['preview'] = true;\n break;\n case '@required':\n extras['required'] = true;\n break;\n /* istanbul ignore next */\n default:\n break;\n }\n });\n }\n\n description = comment.summary\n ?.map((item) => item.text)\n .join('')\n .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 isPreview?: boolean;\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 if (tags.extras?.preview) {\n definition.isPreview = tags.extras?.preview;\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 #isInputProperty(property: SkyDocsClassPropertyDefinition): boolean {\n return (\n property.decorator?.name === 'Input' ||\n (property.type.name === 'InputSignal' &&\n property.type.package === '@angular/core')\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';\nimport { TypeDocKind } from './typedoc-types';\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 hasPreviewFeatures: false,\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 kind = item.kind;\n\n switch (decorator) {\n case 'Component':\n const componentType = this.adapter.toDirectiveDefinition(item);\n types.components.push(componentType);\n types.hasPreviewFeatures ||= componentType.hasPreviewFeatures;\n break;\n case 'Directive':\n const directiveType = this.adapter.toDirectiveDefinition(item);\n types.directives.push(directiveType);\n types.hasPreviewFeatures ||= directiveType.hasPreviewFeatures;\n break;\n case 'Injectable':\n const serviceType = this.adapter.toClassDefinition(item);\n types.services.push(serviceType);\n types.hasPreviewFeatures ||= serviceType.hasPreviewFeatures;\n break;\n case 'NgModule':\n // Don't document modules.\n break;\n case 'Pipe':\n const pipeType = this.adapter.toPipeDefinition(item);\n types.pipes.push(pipeType);\n types.hasPreviewFeatures ||= pipeType.transformMethod.isPreview;\n break;\n default:\n /*tslint:disable-next-line:switch-default*/\n switch (kind) {\n case TypeDocKind.Class:\n const classType = this.adapter.toClassDefinition(item);\n types.classes.push(classType);\n types.hasPreviewFeatures ||= classType.hasPreviewFeatures;\n break;\n case TypeDocKind.Interface:\n const interfaceType = this.adapter.toInterfaceDefinition(item);\n types.interfaces.push(interfaceType);\n types.hasPreviewFeatures ||= interfaceType.hasPreviewFeatures;\n break;\n case TypeDocKind.Enum:\n const enumType = this.adapter.toEnumerationDefinition(item);\n types.enumerations.push(enumType);\n types.hasPreviewFeatures ||= enumType.hasPreviewFeatures;\n break;\n case TypeDocKind.Reference:\n case TypeDocKind.TypeAlias:\n const typeAliasType = this.adapter.toTypeAliasDefinition(item);\n types.typeAliases.push(typeAliasType);\n types.hasPreviewFeatures ||= !!typeAliasType.isPreview;\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 inject,\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';\nimport { SkyDocsToolsSiteOptions } from '../shared/docs-tools-site-options';\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 */\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 protected hasPreviewFeatures = false;\n\n @ContentChild(SkyDocsDesignGuidelinesComponent)\n protected designGuidelinesComponent: SkyDocsDesignGuidelinesComponent;\n\n @ContentChildren(SkyDocsCodeExamplesComponent)\n private codeExampleComponents: QueryList<SkyDocsCodeExamplesComponent>;\n\n protected readonly siteOptions: SkyDocsToolsSiteOptions | undefined = inject(\n SkyDocsToolsSiteOptions,\n { optional: true },\n );\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 <sky-alert\n *ngIf=\"\n moduleTypeDefinitions?.hasPreviewFeatures ||\n testingTypeDefinitions?.hasPreviewFeatures\n \"\n class=\"sky-docs-demo-page-preview-alert sky-margin-stacked-lg\"\n >This component currently has preview features available that may not be\n fully represented in the design documentation, the demo, or code examples.\n <ng-container *ngIf=\"siteOptions?.previewFeaturesUrl\"\n >Learn more about this work\n <a [skyAppLink]=\"siteOptions?.previewFeaturesUrl\"\n >here.</a\n ></ng-container\n ></sky-alert\n >\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\n *ngIf=\"moduleName || packageName\"\n heading=\"Installation\"\n >\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';\nimport { SkyAlertModule } from '@skyux/indicators';\nimport { SkyAppLinkModule } from '@skyux/router';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyAlertModule,\n SkyAppLinkModule,\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 { 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 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","ANGULAR_VERSION","SKY_UX_VERSION","SKY_UX_ICONS_VERSION","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.SkyDocsPreviewIndicatorComponent","i6.SkyDocsSafeHtmlComponent","i8.SkyDocsCallSignatureDefinitionComponent","i9.SkyDocsMarkdownPipe","i10.SkyDocsTypeAnchorLinksPipe","i3.SkyDocsHeadingAnchorComponent","i5.SkyDocsPropertyDefinitionsComponent","i6.SkyDocsMarkdownPipe","i7.SkyDocsTypeAnchorLinksPipe","i2.SkyDocsHeadingAnchorComponent","i3.SkyDocsSafeHtmlComponent","i4.SkyDocsPropertyDefinitionsComponent","i4.SkyDocsHeadingAnchorComponent","i5.SkyDocsSafeHtmlComponent","i6.SkyDocsPropertyDefinitionsComponent","i7.SkyDocsMarkdownPipe","i8.SkyDocsTypeAnchorLinksPipe","i7.SkyDocsCallSignatureDefinitionComponent","i8.SkyDocsMarkdownPipe","i9.SkyDocsTypeAnchorLinksPipe","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","i10.SkyDocsModuleInfoComponent","i11","i13.SkyDocsDemoPageSectionComponent","i14.SkyDocsDemoPageTypeDefinitionsComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-docs-tools.mjs","sources":["../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/category-tag/category-tag.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard-button.directive.ts","../../../../../libs/components/docs-tools/src/lib/modules/clipboard/clipboard.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight-language.ts","../../../../../libs/components/docs-tools/src/lib/modules/shared/sky-docs-tools-resources.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-toolbar.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet-wrapper.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-snippet/code-snippet.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/stackblitz.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.component.html","../../../../../libs/components/docs-tools/src/lib/modules/code-example-viewer/code-example-viewer.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/code-highlight/code-highlight.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.component.html","../../../../../libs/components/docs-tools/src/lib/modules/heading-anchor/heading-anchor.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types-token.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/provide-code-example-types.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents-page.component.html","../../../../../libs/components/docs-tools/src/lib/modules/table-of-contents/table-of-contents.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/box.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/markdown.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-anchor-ids.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-anchor-links.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/deprecation-reason.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/escape-html.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/description.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/default-value.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/enum-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/parameter-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/function-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/interface-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/method-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/property-name.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-alias-signature.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-category-color.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/pipes/type-definition-kind-to-label.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.component.html","../../../../../libs/components/docs-tools/src/lib/modules/type-definition/type-definition.module.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-host.service.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-development.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/code-example-types/code-example-types.pipe.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-examples.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-overview.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase-area-testing.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.ts","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.component.html","../../../../../libs/components/docs-tools/src/lib/modules/showcase/showcase.module.ts","../../../../../libs/components/docs-tools/src/skyux-docs-tools.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport type { SkyDocsCategoryColor } from './category-color';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-rounded-corners',\n '[class]': '\"sky-docs-category-tag-color-\" + color()',\n },\n selector: 'sky-docs-category-tag',\n styleUrl: './category-tag.component.scss',\n template: '<ng-content />',\n})\nexport class SkyDocsCategoryTagComponent {\n public readonly color = input.required<SkyDocsCategoryColor>();\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCategoryTagComponent } from './category-tag.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCategoryTagComponent],\n exports: [SkyDocsCategoryTagComponent],\n})\nexport class SkyDocsCategoryTagModule {}\n","import { Injectable, inject } from '@angular/core';\nimport { SkyAppWindowRef } from '@skyux/core';\nimport { SkyToastService } from '@skyux/toast';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyDocsClipboardService {\n readonly #toastSvc = inject(SkyToastService);\n readonly #windowRef = inject(SkyAppWindowRef);\n\n /**\n * Saves an element's text content to the system clipboard.\n * @param el The element whose text should be copied.\n * @param successMessage The message to display after the action is successful.\n */\n public copyTextContent(el: HTMLElement, successMessage: string): void {\n const text = el.textContent?.trim() ?? '';\n\n this.#windowRef.nativeWindow.navigator.clipboard.writeText(text);\n\n this.#toastSvc.openMessage(successMessage, { autoClose: true });\n }\n}\n","import { Directive, inject, input } from '@angular/core';\n\nimport { SkyDocsClipboardService } from './clipboard.service';\n\n/**\n * @internal\n */\n@Directive({\n host: {\n '(click)': 'onClick()',\n },\n selector: '[skyDocsClipboardButton]',\n})\nexport class SkyDocsClipboardButtonDirective {\n readonly #clipboardSvc = inject(SkyDocsClipboardService);\n\n public readonly clipboardTarget = input.required<HTMLElement>();\n public readonly copySuccessMessage = input.required<string>();\n\n protected onClick(): void {\n const el = this.clipboardTarget();\n\n if (el) {\n this.#clipboardSvc.copyTextContent(el, this.copySuccessMessage());\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsClipboardButtonDirective } from './clipboard-button.directive';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsClipboardButtonDirective],\n exports: [SkyDocsClipboardButtonDirective],\n})\nexport class SkyDocsClipboardModule {}\n","/**\n * @internal\n */\nexport const SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES = [\n 'html',\n 'markup',\n 'javascript',\n 'js',\n 'css',\n 'scss',\n 'typescript',\n 'ts',\n] as const;\n\n/**\n * @internal\n */\nexport type SkyDocsCodeHighlightLanguage =\n (typeof SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES)[number];\n\n/**\n * @internal\n */\nexport function assertCodeHighlightLanguage(\n value: string | undefined,\n): asserts value is SkyDocsCodeHighlightLanguage {\n if (\n !SKY_DOCS_CODE_HIGHLIGHT_LANGUAGES.includes(\n value as SkyDocsCodeHighlightLanguage,\n )\n ) {\n throw new Error(`Value \"${value}\" is not a supported language type.`);\n }\n}\n","/* istanbul ignore file */\n/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-docs-tools' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesService,\n} from '@skyux/i18n';\n\nconst RESOURCES: Record<string, SkyLibResources> = {\n 'EN-US': {\n sky_docs_code_snippet_copy_to_clipboard_button_label: { message: 'Copy' },\n sky_docs_code_snippet_copy_to_clipboard_success_message: {\n message: 'Code copied',\n },\n sky_docs_code_example_viewer_demo_hidden_message: {\n message: 'Open this code example in StackBlitz to view the demo.',\n },\n sky_docs_code_example_viewer_demo_stack_blitz_button: {\n message: 'Edit in StackBlitz',\n },\n sky_docs_code_example_viewer_hide_code_button_label: {\n message: 'Hide code',\n },\n sky_docs_code_example_viewer_show_code_button_label: {\n message: 'Show code',\n },\n },\n};\n\nSkyLibResourcesService.addResources(RESOURCES);\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n})\nexport class SkyDocsToolsResourcesModule {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-margin-stacked-lg',\n },\n imports: [SkyDocsClipboardModule, SkyIconModule, SkyDocsToolsResourcesModule],\n selector: 'sky-docs-code-snippet-toolbar',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n [clipboardTarget]=\"codeRef()\"\n [copySuccessMessage]=\"\n 'sky_docs_code_snippet_copy_to_clipboard_success_message'\n | skyLibResources\n \"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n {{\n 'sky_docs_code_snippet_copy_to_clipboard_button_label' | skyLibResources\n }}\n </button>\n `,\n})\nexport class SkyDocsCodeSnippetToolbarComponent {\n public readonly codeRef = input.required<HTMLElement>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Used to wrap a content child `code` element.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet:not([code])',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><ng-content select=\"code\" /></pre>\n `,\n})\nexport class SkyDocsCodeSnippetWrapperComponent {\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Injectable } from '@angular/core';\n\nimport highlight from 'highlight.js/lib/core';\nimport hlCss from 'highlight.js/lib/languages/css';\nimport hlJavaScript from 'highlight.js/lib/languages/javascript';\nimport hlScss from 'highlight.js/lib/languages/scss';\nimport hlTypeScript from 'highlight.js/lib/languages/typescript';\nimport hlXml from 'highlight.js/lib/languages/xml';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsCodeHighlightService {\n constructor() {\n highlight.registerLanguage('html', hlXml);\n highlight.registerLanguage('markup', hlXml);\n highlight.registerLanguage('js', hlJavaScript);\n highlight.registerLanguage('javascript', hlJavaScript);\n highlight.registerLanguage('css', hlCss);\n highlight.registerLanguage('scss', hlScss);\n highlight.registerLanguage('ts', hlTypeScript);\n highlight.registerLanguage('typescript', hlTypeScript);\n }\n\n public highlight(\n code: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n const highlighted = highlight.highlight(code, {\n language,\n });\n\n return highlighted.value;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n inject,\n input,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { type SkyDocsCodeHighlightLanguage } from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeHighlightService } from '../code-highlight/code-highlight.service';\n\nimport { SkyDocsCodeSnippetToolbarComponent } from './code-snippet-toolbar.component';\n\n/**\n * Highlights the provided code.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-lg]': 'stacked()',\n '[class.sky-elevation-0-bordered]': 'bordered()',\n '[class.sky-padding-even-xl]': 'bordered()',\n '[class.sky-rounded-corners]': 'bordered()',\n },\n imports: [SkyDocsCodeSnippetToolbarComponent],\n selector: 'sky-docs-code-snippet[code]',\n styleUrls: [\n './code-snippet.component.scss',\n './themes/vscode-modern-light.scss',\n ],\n template: `\n @if (!hideToolbar()) {\n <sky-docs-code-snippet-toolbar [codeRef]=\"codeRef\" />\n }\n <pre #codeRef><code [innerHTML]=\"highlighted()\"></code></pre>\n `,\n})\nexport class SkyDocsCodeSnippetComponent {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n readonly #sanitizer = inject(DomSanitizer);\n\n public readonly code = input.required<string>();\n public readonly language = input.required<SkyDocsCodeHighlightLanguage>();\n\n public readonly bordered = input(false, { transform: booleanAttribute });\n public readonly hideToolbar = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected highlighted = computed(() => {\n const code = this.code();\n const language = this.language();\n const highlighted = this.#highlightSvc.highlight(code, language);\n\n return this.#sanitizer.bypassSecurityTrustHtml(highlighted);\n });\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCodeSnippetWrapperComponent } from './code-snippet-wrapper.component';\nimport { SkyDocsCodeSnippetComponent } from './code-snippet.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n exports: [SkyDocsCodeSnippetComponent, SkyDocsCodeSnippetWrapperComponent],\n})\nexport class SkyDocsCodeSnippetModule {}\n","import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { SkyAppAssetsService } from '@skyux/assets';\nimport stackblitz from '@stackblitz/sdk';\n\nimport { firstValueFrom } from 'rxjs';\n\nimport type { SkyDocsStackBlitzLaunchConfig } from './stackblitz-launch-config';\n\n/**\n * Files to be read from the host SPA's \"src/assets/stack-blitz\" directory.\n */\nconst TEMPLATE_FILES = ['package.json', 'package-lock.json'];\n\n/**\n * @internal\n */\n@Injectable({ providedIn: 'root' })\nexport class SkyDocsStackBlitzService {\n readonly #http = inject(HttpClient, { optional: true });\n readonly #assetsSvc = inject(SkyAppAssetsService, { optional: true });\n\n public async launch(config: SkyDocsStackBlitzLaunchConfig): Promise<void> {\n const files: Record<string, string> = {};\n\n for (const [file, contents] of Object.entries(config.files)) {\n files[`src/example/${file}`] = contents;\n }\n\n for (const file of TEMPLATE_FILES) {\n let contents = await this.#fetchTemplateFileContents(file);\n\n if (contents === undefined && !file.endsWith('.template')) {\n contents = await this.#fetchTemplateFileContents(`${file}.template`);\n }\n\n if (contents === undefined) {\n throw new Error(`Failed to read StackBlitz template file: ${file}`);\n }\n\n files[file.replace(/\\.template$/, '')] = contents;\n }\n\n const bootstrapImportPath = `./example/${config.primaryFile.replace(/\\.ts$/, '')}`;\n\n files['.stackblitzrc'] = `{\n \"installDependencies\": true,\n \"startCommand\": \"ng serve\"\n}\n`;\n\n files['angular.json'] = `{\n \"$schema\": \"./node_modules/@angular/cli/lib/config/schema.json\",\n \"version\": 1,\n \"cli\": {\n \"analytics\": false\n },\n \"newProjectRoot\": \"projects\",\n \"projects\": {\n \"example-app\": {\n \"projectType\": \"application\",\n \"schematics\": {\n \"@schematics/angular:component\": {\n \"style\": \"scss\"\n },\n \"@schematics/angular:application\": {\n \"strict\": true\n }\n },\n \"root\": \"\",\n \"sourceRoot\": \"src\",\n \"prefix\": \"app\",\n \"architect\": {\n \"build\": {\n \"builder\": \"@angular-devkit/build-angular:browser\",\n \"options\": {\n \"outputPath\": \"dist/example-app\",\n \"index\": \"src/index.html\",\n \"main\": \"src/main.ts\",\n \"polyfills\": [\"zone.js\"],\n \"tsConfig\": \"tsconfig.app.json\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"styles\": [\"src/styles.scss\"],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"scripts\": []\n },\n \"configurations\": {\n \"production\": {\n \"budgets\": [\n {\n \"type\": \"initial\",\n \"maximumWarning\": \"500kb\",\n \"maximumError\": \"1mb\"\n },\n {\n \"type\": \"anyComponentStyle\",\n \"maximumWarning\": \"2kb\",\n \"maximumError\": \"4kb\"\n }\n ],\n \"fileReplacements\": [\n {\n \"replace\": \"src/environments/environment.ts\",\n \"with\": \"src/environments/environment.prod.ts\"\n }\n ],\n \"outputHashing\": \"all\"\n },\n \"development\": {\n \"buildOptimizer\": false,\n \"optimization\": false,\n \"vendorChunk\": true,\n \"extractLicenses\": false,\n \"sourceMap\": true,\n \"namedChunks\": true\n }\n },\n \"defaultConfiguration\": \"production\"\n },\n \"serve\": {\n \"builder\": \"@angular-devkit/build-angular:dev-server\",\n \"configurations\": {\n \"production\": {\n \"buildTarget\": \"example-app:build:production\"\n },\n \"development\": {\n \"buildTarget\": \"example-app:build:development\"\n }\n },\n \"defaultConfiguration\": \"development\"\n },\n \"extract-i18n\": {\n \"builder\": \"@angular-devkit/build-angular:extract-i18n\",\n \"options\": {\n \"buildTarget\": \"example-app:build\"\n }\n },\n \"test\": {\n \"builder\": \"@angular-devkit/build-angular:karma\",\n \"options\": {\n \"main\": \"src/test.ts\",\n \"polyfills\": [\"zone.js\", \"zone.js/testing\"],\n \"tsConfig\": \"tsconfig.spec.json\",\n \"karmaConfig\": \"karma.conf.js\",\n \"inlineStyleLanguage\": \"scss\",\n \"assets\": [\"src/assets\"],\n \"stylePreprocessorOptions\": {\n \"includePaths\": [\"node_modules/\"]\n },\n \"styles\": [\"src/styles.scss\"],\n \"scripts\": []\n }\n }\n }\n }\n }\n}\n`;\n\n files['karma.conf.js'] =\n `// Karma configuration file, see link for more information\n// https://karma-runner.github.io/1.0/config/configuration-file.html\n\nmodule.exports = function (config) {\n config.set({\n basePath: '',\n frameworks: ['jasmine', '@angular-devkit/build-angular'],\n plugins: [\n require('karma-jasmine'),\n require('karma-chrome-launcher'),\n require('karma-jasmine-html-reporter'),\n require('karma-coverage'),\n require('@angular-devkit/build-angular/plugins/karma'),\n ],\n client: {\n jasmine: {\n // you can add configuration options for Jasmine here\n // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html\n // for example, you can disable the random execution with \\`random: false\\`\n // or set a specific seed with \\`seed: 4321\\`\n },\n clearContext: false, // leave Jasmine Spec Runner output visible in browser\n },\n jasmineHtmlReporter: {\n suppressAll: true, // removes the duplicated traces\n },\n coverageReporter: {\n dir: require('path').join(__dirname, './coverage/example-app'),\n subdir: '.',\n reporters: [{ type: 'html' }, { type: 'text-summary' }],\n },\n reporters: ['progress', 'kjhtml'],\n port: 9876,\n colors: true,\n logLevel: config.LOG_INFO,\n autoWatch: true,\n browsers: ['Chrome'],\n singleRun: false,\n restartOnFileChange: true,\n });\n};\n`;\n\n files['tsconfig.app.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/app\",\n \"types\": []\n },\n \"files\": [\"src/main.ts\"],\n \"include\": [\"src/**/*.d.ts\"]\n}\n`;\n\n files['tsconfig.json'] = `{\n \"compileOnSave\": false,\n \"compilerOptions\": {\n \"outDir\": \"./dist/out-tsc\",\n \"strict\": true,\n \"noImplicitOverride\": true,\n \"noPropertyAccessFromIndexSignature\": true,\n \"noImplicitReturns\": true,\n \"noFallthroughCasesInSwitch\": true,\n \"skipLibCheck\": true,\n \"isolatedModules\": true,\n \"esModuleInterop\": true,\n \"experimentalDecorators\": true,\n \"moduleResolution\": \"bundler\",\n \"importHelpers\": true,\n \"target\": \"ES2022\",\n \"module\": \"ES2022\"\n },\n \"angularCompilerOptions\": {\n \"enableI18nLegacyMessageIdFormat\": false,\n \"strictInjectionParameters\": true,\n \"strictInputAccessModifiers\": true,\n \"strictTemplates\": true\n }\n}\n`;\n\n files['tsconfig.spec.json'] = `{\n \"extends\": \"./tsconfig.json\",\n \"compilerOptions\": {\n \"outDir\": \"./out-tsc/spec\",\n \"types\": [\"jasmine\"]\n },\n \"files\": [\"src/test.ts\"],\n \"include\": [\"src/**/*.spec.ts\", \"src/**/*.d.ts\"]\n}\n`;\n\n files['src/help.service.ts'] = `import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\n@Injectable()\nexport class ExampleHelpService extends SkyHelpService {\n public override openHelp(args?: SkyHelpOpenArgs): void {\n console.log(\\`Help opened with key '\\${args?.helpKey}'.\\`);\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n /* */\n }\n}\n`;\n\n files['src/index.html'] = `<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <title>${config.title}</title>\n <base href=\"/\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <!--\n The CSS links are needed for the StackBlitz demo only.\n This is a workaround for a known bug that prevents external imports in CSS.\n https://github.com/stackblitz/core/issues/133\n -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\" crossorigin=\"anonymous\">\n <link rel=\"stylesheet\" type=\"text/css\" href=\"https://sky.blackbaudcdn.net/static/skyux-icons/7.10.0/assets/css/skyux-icons.min.css\" crossorigin=\"anonymous\">\n </head>\n <body>\n <${config.componentSelector}></${config.componentSelector}>\n </body>\n</html>\n`;\n\n files['src/main.ts'] =\n `import { provideHttpClient } from '@angular/common/http';\nimport {\n EnvironmentProviders,\n makeEnvironmentProviders,\n} from '@angular/core';\nimport { bootstrapApplication } from '@angular/platform-browser';\nimport { provideAnimations } from '@angular/platform-browser/animations';\nimport { SkyHelpService } from '@skyux/core';\nimport { provideInitialTheme } from '@skyux/theme';\nimport { ${config.componentName} } from '${bootstrapImportPath}';\n\nimport { ExampleHelpService } from './help.service';\n\n/**\n * The help service must be provided for components that set the\n * \\`helpKey\\` attribute. For more information, review the global help\n * documentation.\n * @see https://developer.blackbaud.com/skyux/learn/develop/global-help\n */\nfunction provideExampleHelpService(): EnvironmentProviders {\n return makeEnvironmentProviders([\n { provide: SkyHelpService, useClass: ExampleHelpService },\n ]);\n}\n\nbootstrapApplication(${config.componentName}, {\n providers: [\n provideAnimations(),\n provideInitialTheme('modern'),\n provideHttpClient(),\n provideExampleHelpService(),\n ],\n}).catch((err) => console.error(err));\n`;\n\n files['src/styles.scss'] = `@import url('@skyux/theme/css/sky');\n@import url('@skyux/theme/css/themes/modern/styles');\n`;\n\n files['src/test.ts'] =\n `// This file is required by karma.conf.js and loads recursively all the .spec and framework files\n\nimport 'zone.js/testing';\nimport {getTestBed} from '@angular/core/testing';\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting,\n} from '@angular/platform-browser-dynamic/testing';\n\n// First, initialize the Angular testing environment.\ngetTestBed().initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting());\n\n// Then we find all the tests.\nconst context = (import.meta as any).webpackContext('./', {\n recursive: true,\n regExp: /\\\\.spec\\\\.ts$/,\n});\n\n// And load the modules.\ncontext.keys().map(context);\n`;\n\n stackblitz.openProject(\n {\n title: config.title,\n files,\n template: 'node',\n },\n { openFile: config.primaryFile },\n );\n }\n\n async #fetchTemplateFileContents(file: string): Promise<string | undefined> {\n const filePath = `assets/stack-blitz/${file}`;\n const url = this.#assetsSvc?.getUrl(filePath) ?? filePath;\n\n if (!this.#http) {\n return undefined;\n }\n\n return await firstValueFrom(\n this.#http.get(url, { responseType: 'text' }),\n ).catch(() => {\n return undefined;\n });\n }\n}\n","import { KeyValuePipe, NgComponentOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Type,\n booleanAttribute,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { SkyIdModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyBoxModule } from '@skyux/layout';\nimport { SkyVerticalTabsetModule } from '@skyux/tabs';\n\nimport {\n type SkyDocsCodeHighlightLanguage,\n assertCodeHighlightLanguage,\n} from '../code-highlight/code-highlight-language';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsToolsResourcesModule } from '../shared/sky-docs-tools-resources.module';\n\nimport { SkyDocsStackBlitzService } from './stackblitz.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [\n KeyValuePipe,\n NgComponentOutlet,\n SkyBoxModule,\n SkyDocsCodeSnippetModule,\n SkyDocsToolsResourcesModule,\n SkyIconModule,\n SkyIdModule,\n SkyVerticalTabsetModule,\n ],\n selector: 'sky-docs-code-example-viewer',\n styleUrl: './code-example-viewer.component.scss',\n templateUrl: './code-example-viewer.component.html',\n})\nexport class SkyDocsCodeExampleViewerComponent {\n readonly #stackblitzSvc = inject(SkyDocsStackBlitzService);\n\n public readonly componentName = input.required<string>();\n public readonly componentSelector = input.required<string>();\n public readonly componentType = input.required<Type<unknown>>();\n public readonly files = input.required<Record<string, string>>();\n public readonly headingText = input.required<string>();\n public readonly primaryFile = input.required<string>();\n\n public readonly demoHidden = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly isCodeVisible = signal(false);\n\n protected getCodeLanguage(fileName: string): SkyDocsCodeHighlightLanguage {\n const extension = fileName.split('.').pop();\n assertCodeHighlightLanguage(extension);\n return extension;\n }\n\n protected launchStackBlitz(): void {\n void this.#stackblitzSvc.launch({\n componentName: this.componentName(),\n componentSelector: this.componentSelector(),\n files: this.files(),\n primaryFile: this.primaryFile(),\n title: this.headingText(),\n });\n }\n\n protected toggleCodeVisibility(): void {\n const isCodeVisible = this.isCodeVisible();\n this.isCodeVisible.set(!isCodeVisible);\n }\n}\n","<sky-box headingLevel=\"3\" headingStyle=\"3\" [headingText]=\"headingText()\">\n <sky-box-controls>\n <button\n class=\"sky-btn sky-btn-default\"\n data-sky-id=\"stackblitz-btn\"\n type=\"button\"\n (click)=\"launchStackBlitz()\"\n >\n <sky-icon iconName=\"edit\" />\n {{\n 'sky_docs_code_example_viewer_demo_stack_blitz_button' | skyLibResources\n }}\n </button>\n </sky-box-controls>\n\n <sky-box-content>\n <div\n class=\"sky-docs-code-example-viewer-demo sky-padding-even-md sky-margin-stacked-lg\"\n >\n @if (!demoHidden()) {\n <ng-template [ngComponentOutlet]=\"componentType()\" />\n } @else {\n {{\n 'sky_docs_code_example_viewer_demo_hidden_message' | skyLibResources\n }}\n }\n </div>\n\n <div class=\"sky-margin-stacked-sm\">\n <button\n class=\"sky-btn sky-btn-link\"\n data-sky-id=\"toggle-code-visibility-btn\"\n type=\"button\"\n [attr.aria-controls]=\"codeRef.id\"\n [attr.aria-expanded]=\"isCodeVisible()\"\n (click)=\"toggleCodeVisibility()\"\n >\n <sky-icon\n [iconName]=\"isCodeVisible() ? 'chevron-down' : 'chevron-right'\"\n />\n {{\n isCodeVisible()\n ? ('sky_docs_code_example_viewer_hide_code_button_label'\n | skyLibResources)\n : ('sky_docs_code_example_viewer_show_code_button_label'\n | skyLibResources)\n }}\n </button>\n </div>\n\n <sky-vertical-tabset #codeRef=\"skyId\" skyId [hidden]=\"!isCodeVisible()\">\n @for (obj of files() | keyvalue; track obj.key) {\n <sky-vertical-tab\n [active]=\"obj.key === primaryFile()\"\n [tabHeading]=\"obj.key\"\n >\n <sky-docs-code-snippet\n [code]=\"obj.value\"\n [language]=\"getCodeLanguage(obj.key)\"\n />\n </sky-vertical-tab>\n }\n </sky-vertical-tabset>\n </sky-box-content>\n</sky-box>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsCodeExampleViewerComponent } from './code-example-viewer.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsCodeExampleViewerComponent],\n exports: [SkyDocsCodeExampleViewerComponent],\n})\nexport class SkyDocsCodeExampleViewerModule {}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\n\nimport { SkyDocsCodeHighlightLanguage } from './code-highlight-language';\nimport { SkyDocsCodeHighlightService } from './code-highlight.service';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeHighlight',\n})\nexport class SkyDocsCodeHighlightPipe implements PipeTransform {\n readonly #highlightSvc = inject(SkyDocsCodeHighlightService);\n\n public transform(\n value: string,\n language: SkyDocsCodeHighlightLanguage,\n ): string {\n return this.#highlightSvc.highlight(value, language);\n }\n}\n","import { Injectable, OnDestroy } from '@angular/core';\n\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorLink } from './heading-anchor-link';\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsHeadingAnchorService implements OnDestroy {\n #anchors: SkyDocsHeadingAnchorComponent[] = [];\n readonly #anchorsChange = new BehaviorSubject<SkyDocsHeadingAnchorLink[]>([]);\n\n public readonly anchorsChange = this.#anchorsChange.asObservable();\n\n public ngOnDestroy(): void {\n this.#anchors = [];\n this.#anchorsChange.complete();\n }\n\n public register(anchor: SkyDocsHeadingAnchorComponent): void {\n if (!this.#anchors.includes(anchor)) {\n this.#anchors.push(anchor);\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n public unregister(anchor: SkyDocsHeadingAnchorComponent): void {\n if (this.#anchors.includes(anchor)) {\n this.#anchors.splice(this.#anchors.indexOf(anchor));\n this.#anchorsChange.next(this.#getLinks());\n }\n }\n\n #getLinks(): SkyDocsHeadingAnchorLink[] {\n const els = document.querySelectorAll('sky-docs-heading-anchor');\n const anchorsSorted: SkyDocsHeadingAnchorComponent[] = [];\n\n // Since heading anchors can be registered at any point in the lifecycle\n // of the app, we need to sort the links by their location in the DOM,\n // rather than the order at which they were registered.\n for (const el of els) {\n this.#anchors.forEach((anchor) => {\n if (anchor.equals(el)) {\n anchorsSorted.push(anchor);\n }\n });\n }\n\n return anchorsSorted.map((a) => {\n return {\n anchorId: a.anchorId(),\n categoryColor: a.categoryColor(),\n categoryTemplate: a.categoryTemplate(),\n categoryText: a.categoryText(),\n text: a.headingText(),\n } satisfies SkyDocsHeadingAnchorLink;\n });\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n OnDestroy,\n TemplateRef,\n booleanAttribute,\n inject,\n input,\n numberAttribute,\n} from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { SkyTrimModule } from '@skyux/core';\nimport { SkyIconModule } from '@skyux/icon';\n\nimport { SkyDocsCategoryColor } from '../category-tag/category-color';\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsHeadingAnchorHeadingLevel } from './heading-anchor-heading-level';\nimport { SkyDocsHeadingAnchorHeadingTextFormat } from './heading-anchor-heading-text-format';\nimport { SkyDocsHeadingAnchorService } from './heading-anchor.service';\n\nconst DEFAULT_HEADING_LEVEL: SkyDocsHeadingAnchorHeadingLevel = 2;\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.id]': 'anchorId()',\n },\n imports: [\n NgTemplateOutlet,\n RouterLink,\n SkyDocsCategoryTagModule,\n SkyIconModule,\n SkyTrimModule,\n ],\n selector: 'sky-docs-heading-anchor',\n styleUrl: './heading-anchor.component.scss',\n templateUrl: './heading-anchor.component.html',\n})\nexport class SkyDocsHeadingAnchorComponent implements AfterViewInit, OnDestroy {\n readonly #elementRef = inject(ElementRef);\n readonly #anchorSvc = inject(SkyDocsHeadingAnchorService, { optional: true });\n\n public readonly anchorId = input.required<string>();\n public readonly headingText = input.required<string>();\n public readonly headingTextFormat =\n input<SkyDocsHeadingAnchorHeadingTextFormat>('normal');\n\n public readonly categoryColor = input<SkyDocsCategoryColor | undefined>();\n public readonly categoryTemplate = input<TemplateRef<unknown> | undefined>();\n public readonly categoryText = input<string | undefined>();\n\n public equals(el: Element): boolean {\n return this.#elementRef.nativeElement === el;\n }\n\n public readonly headingLevel = input(DEFAULT_HEADING_LEVEL, {\n transform: (value) => {\n const numValue = numberAttribute(value);\n\n if (numValue > 0 && numValue < 7) {\n return numValue as SkyDocsHeadingAnchorHeadingLevel;\n }\n\n return DEFAULT_HEADING_LEVEL;\n },\n });\n\n public readonly strikethrough = input(false, { transform: booleanAttribute });\n\n public ngAfterViewInit(): void {\n this.#anchorSvc?.register(this);\n }\n\n public ngOnDestroy(): void {\n this.#anchorSvc?.unregister(this);\n }\n}\n","@switch (headingLevel()) {\n @case (1) {\n <h1 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h1>\n }\n @case (2) {\n <h2 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h2>\n }\n @case (3) {\n <h3 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h3>\n }\n @case (4) {\n <h4 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h4>\n }\n @case (5) {\n <h5 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h5>\n }\n @case (6) {\n <h6 class=\"sky-docs-heading-anchor-heading\">\n <ng-container [ngTemplateOutlet]=\"headingTextRef\" />\n </h6>\n }\n}\n\n@if (categoryColor(); as categoryColor) {\n <sky-docs-category-tag [color]=\"categoryColor\">\n @if (categoryTemplate(); as categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"categoryTemplate\" />\n } @else {\n {{ categoryText() }}\n }\n </sky-docs-category-tag>\n}\n\n<ng-content />\n\n<ng-template #headingTextRef>\n <a\n class=\"sky-docs-heading-anchor-link\"\n queryParamsHandling=\"merge\"\n [fragment]=\"anchorId()\"\n [routerLink]=\"[]\"\n >\n <sky-icon iconName=\"link\" />\n <span class=\"sky-screen-reader-only\"\n >Link for section titled {{ headingText() }}</span\n >\n </a>\n <span skyTrim [class.sky-docs-text-strikethrough]=\"strikethrough()\">\n @if (headingTextFormat() === 'code') {\n <code>{{ headingText() }}</code>\n } @else {\n {{ headingText() }}\n }\n </span>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorComponent } from './heading-anchor.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsHeadingAnchorComponent],\n exports: [SkyDocsHeadingAnchorComponent],\n})\nexport class SkyDocsHeadingAnchorModule {}\n","import { InjectionToken, Type } from '@angular/core';\n\n/**\n * @internal\n */\nexport type SkyDocsCodeExampleComponentTypes = Record<string, Type<unknown>>;\n\n/**\n * @internal\n */\nexport const SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES =\n new InjectionToken<SkyDocsCodeExampleComponentTypes>(\n 'SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES',\n );\n","import { EnvironmentProviders, makeEnvironmentProviders } from '@angular/core';\n\nimport {\n SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n type SkyDocsCodeExampleComponentTypes,\n} from './code-example-types-token';\n\n/**\n * Provides code example declarations (e.g., Type<unknown>) to be used by the\n * code example viewer to dynamically create each code example component.\n * @example\n * ```\n * import * as examples from '@skyux/code-examples';\n *\n * provideSkyDocsCodeExampleTypes(examples);\n * ```\n * @internal\n */\nexport function provideSkyDocsCodeExampleTypes(\n examples: SkyDocsCodeExampleComponentTypes,\n): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES,\n useValue: examples,\n },\n ]);\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgTemplateOutlet, RouterLink, SkyDocsCategoryTagModule],\n selector: 'sky-docs-toc',\n styleUrl: './table-of-contents.component.scss',\n templateUrl: './table-of-contents.component.html',\n})\nexport class SkyDocsTableOfContentsComponent {\n public readonly headingText = input.required<string>();\n public readonly links = input.required<SkyDocsTableOfContentsLink[]>();\n}\n","<h3 class=\"sky-docs-toc-heading\">{{ headingText() }}</h3>\n<nav [attr.aria-label]=\"'Table of contents for ' + headingText()\">\n @for (link of links(); track link.anchorId) {\n <a\n class=\"sky-docs-toc-link sky-margin-stacked-sm\"\n queryParamsHandling=\"merge\"\n [class.sky-docs-toc-link-active]=\"link.active\"\n [fragment]=\"link.anchorId\"\n [routerLink]=\"[]\"\n >\n <span class=\"sky-docs-toc-link-text\">{{ link.text }}</span>\n @if (link.categoryColor) {\n <sky-docs-category-tag\n class=\"sky-docs-toc-link-category sky-font-body-sm\"\n [color]=\"link.categoryColor\"\n >\n @if (link.categoryTemplate) {\n <ng-container [ngTemplateOutlet]=\"link.categoryTemplate\" />\n } @else {\n {{ link.categoryText }}\n }\n </sky-docs-category-tag>\n }\n </a>\n }\n</nav>\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n computed,\n inject,\n input,\n signal,\n} from '@angular/core';\nimport { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';\nimport { SkyMediaQueryService, SkyScrollableHostService } from '@skyux/core';\n\nimport { debounceTime, distinctUntilChanged, fromEvent, map } from 'rxjs';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsTableOfContentsLink } from './table-of-contents-links';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.sky-docs-toc-page-with-links]': 'links().length > 0',\n },\n imports: [SkyDocsTableOfContentsComponent],\n selector: 'sky-docs-toc-page',\n styleUrl: './table-of-contents-page.component.scss',\n templateUrl: './table-of-contents-page.component.html',\n})\nexport class SkyDocsTableOfContentsPageComponent implements AfterViewInit {\n readonly #anchors = toSignal(\n inject(SkyDocsHeadingAnchorService).anchorsChange,\n );\n\n readonly #destroyRef = inject(DestroyRef);\n readonly #elementRef = inject(ElementRef);\n readonly #scrollableHostSvc = inject(SkyScrollableHostService);\n\n public readonly menuHeadingText = input.required<string>();\n\n readonly #activeAnchorIdOnScroll = signal<string | undefined>(undefined);\n #scrollOffset = 0;\n\n protected readonly breakpoint = toSignal(\n inject(SkyMediaQueryService).breakpointChange,\n );\n\n protected readonly links = computed<SkyDocsTableOfContentsLink[]>(() => {\n if (this.breakpoint() === 'xs') {\n return [];\n }\n\n const anchors = this.#anchors();\n const activeAnchorId = this.#activeAnchorIdOnScroll();\n\n return (\n anchors?.map((anchor) => {\n const link = anchor as SkyDocsTableOfContentsLink;\n link.active = link.anchorId === activeAnchorId;\n return link;\n }) ?? []\n );\n });\n\n public ngAfterViewInit(): void {\n const scrollEl = this.#scrollableHostSvc.getScrollableHost(\n this.#elementRef,\n );\n\n this.#scrollOffset = this.#getScrollOffset(scrollEl);\n\n fromEvent(scrollEl, 'scroll')\n .pipe(\n debounceTime(10),\n map(() => this.#getActiveLink()),\n distinctUntilChanged(),\n takeUntilDestroyed(this.#destroyRef),\n )\n .subscribe((activeLink) => {\n this.#activeAnchorIdOnScroll.set(activeLink);\n });\n }\n\n /**\n * A link is considered active if the page is scrolled past the anchor without\n * also being scrolled passed the next link.\n */\n #getActiveLink(): string | undefined {\n const anchors = this.#anchors();\n\n if (anchors) {\n for (let i = 0; i < anchors.length; i++) {\n const anchor = anchors[i];\n const nextAnchor = anchors[i + 1];\n\n const rect = document\n .getElementById(anchor.anchorId)\n ?.getBoundingClientRect();\n\n const nextRect = document\n .getElementById(nextAnchor?.anchorId)\n ?.getBoundingClientRect();\n\n if (\n rect &&\n Math.round(rect.top - this.#scrollOffset) <= 0 &&\n (nextRect === undefined ||\n Math.round(nextRect.top - this.#scrollOffset) > 0)\n ) {\n return anchor.anchorId;\n }\n }\n }\n\n return undefined;\n }\n\n #getScrollOffset(scrollEl: HTMLElement | Window): number {\n return scrollEl instanceof HTMLElement\n ? scrollEl.getBoundingClientRect().top\n : 0;\n }\n}\n","@if (links().length > 0) {\n <div class=\"sky-docs-toc-menu\">\n <sky-docs-toc [headingText]=\"menuHeadingText()\" [links]=\"links()\" />\n </div>\n}\n<div class=\"sky-docs-toc-body\">\n <ng-content />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTableOfContentsPageComponent } from './table-of-contents-page.component';\nimport { SkyDocsTableOfContentsComponent } from './table-of-contents.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsTableOfContentsComponent,\n SkyDocsTableOfContentsPageComponent,\n ],\n exports: [SkyDocsTableOfContentsPageComponent],\n})\nexport class SkyDocsTableOfContentsModule {}\n","import {\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-elevation-0-bordered sky-rounded-corners',\n '[class.sky-margin-stacked-xl]': 'stacked()',\n },\n imports: [SkyDocsCategoryTagModule],\n selector: 'sky-docs-type-definition-box',\n styles: `\n :host {\n display: block;\n overflow: hidden;\n }\n\n .sky-docs-type-definition-box-header {\n background-color: var(--sky-background-color-info-light);\n display: flex;\n align-items: center;\n gap: 10px;\n }\n\n .sky-docs-type-definition-box-heading {\n margin: 0;\n font-weight: normal;\n word-break: break-all;\n }\n `,\n template: `\n <div\n class=\"sky-docs-type-definition-box-header sky-border-bottom-dark sky-padding-even-xl\"\n >\n <h4 class=\"sky-docs-type-definition-box-heading\">\n <code\n [class.sky-docs-text-strikethrough]=\"deprecated()\"\n [innerHTML]=\"headingText()\"\n ></code>\n </h4>\n @if (required()) {\n <sky-docs-category-tag color=\"red\">Required</sky-docs-category-tag>\n }\n </div>\n <div class=\"sky-docs-type-definition-box-body sky-padding-even-xl\">\n <ng-content />\n </div>\n `,\n})\nexport class SkyDocsTypeDefinitionBoxComponent {\n public readonly headingText = input.required<string>();\n\n public readonly deprecated = input(false, { transform: booleanAttribute });\n public readonly required = input(false, { transform: booleanAttribute });\n public readonly stacked = input(false, { transform: booleanAttribute });\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { Tokens, marked } from 'marked';\n\nconst renderer = {\n codespan(token: Tokens.Codespan): string {\n return `<code class=\"sky-docs-codespan\">${token.text}</code>`;\n },\n};\n\nmarked.use({\n renderer,\n});\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMarkdown',\n})\nexport class SkyDocsMarkdownPipe implements PipeTransform {\n public transform(\n value: string,\n parserStyle: 'block' | 'inline' = 'inline',\n ): string {\n return parserStyle === 'inline'\n ? (marked.parseInline(value) as string)\n : (marked.parse(value) as string);\n }\n}\n","import { Injectable } from '@angular/core';\n\n/**\n * Registers known type symbols with their corresponding anchor IDs.\n * @internal\n */\n@Injectable()\nexport class SkyDocsTypeDefinitionAnchorIdsService {\n #anchorIds = new Map<string, string>();\n\n public updateAnchorIds(anchorIds: { [token: string]: string }): void {\n this.#anchorIds = new Map(Object.entries(anchorIds));\n }\n\n public getAnchorId(typeName: string): string | undefined {\n return this.#anchorIds.get(typeName);\n }\n}\n","import {\n ChangeDetectorRef,\n DestroyRef,\n Pipe,\n PipeTransform,\n inject,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute, Params } from '@angular/router';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-anchor-ids.service';\n\nconst NOT_WORD_REGEXP = /\\w+/g;\n\n/**\n * For the given string, finds known tokens and wraps them in an anchor linking to the respective element ID.\n * @internal\n */\n@Pipe({\n name: 'skyTypeAnchorLinks',\n pure: false,\n})\nexport class SkyTypeAnchorLinksPipe implements PipeTransform {\n readonly #activatedRoute = inject(ActivatedRoute);\n readonly #anchorSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #changeDetector = inject(ChangeDetectorRef);\n readonly #destroyRef = inject(DestroyRef);\n\n readonly #cache: Record<string, string> = {};\n readonly #currentRoute = this.#activatedRoute.snapshot.url.toString();\n\n public transform(value: string, options?: { ignore: string[] }): string {\n const typeWrappedWithAnchor = value?.replace(\n NOT_WORD_REGEXP,\n (maybeType) => {\n if (options?.ignore.includes(maybeType)) {\n return maybeType;\n }\n\n const anchorId = this.#anchorSvc.getAnchorId(maybeType);\n\n if (anchorId) {\n if (!(value in this.#cache)) {\n this.#activatedRoute.queryParams\n .pipe(takeUntilDestroyed(this.#destroyRef))\n .subscribe((queryParams) => {\n const href = this.#getHref(anchorId, queryParams);\n\n this.#cache[value] =\n `<a class=\"sky-docs-codespan-anchor\" href=\"${href}\">${maybeType}</a>`;\n\n this.#changeDetector.markForCheck();\n });\n }\n\n return this.#cache[value];\n }\n\n return maybeType;\n },\n );\n\n if (typeWrappedWithAnchor !== value) {\n return typeWrappedWithAnchor;\n }\n\n return value;\n }\n\n #getHref(anchorId: string, queryParams: Params): string {\n const params = Object.entries(queryParams)\n .map(([k, v]) => `${k}=${v}`)\n .join('&');\n\n return `${this.#currentRoute}${params.length > 0 ? `?${params}` : ''}#${anchorId}`;\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-deprecation-reason',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <p>\n <sky-status-indicator descriptionType=\"warning\" indicatorType=\"warning\">\n <strong class=\"sky-font-emphasized\">Deprecated. </strong\n ><span\n [innerHTML]=\"message() | skyDocsMarkdown | skyTypeAnchorLinks\"\n ></span>\n </sky-status-indicator>\n </p>\n `,\n})\nexport class SkyDocsDeprecationReasonComponent {\n public readonly message = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEscapeHtml',\n})\nexport class SkyDocsEscapeHtmlPipe implements PipeTransform {\n public transform(value: string): string {\n return value.replaceAll('<', '<').replaceAll('>', '>');\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { SkyStatusIndicatorModule } from '@skyux/indicators';\n\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsMarkdownPipe } from './pipes/markdown.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n SkyDocsEscapeHtmlPipe,\n SkyDocsMarkdownPipe,\n SkyStatusIndicatorModule,\n SkyTypeAnchorLinksPipe,\n ],\n selector: 'sky-docs-type-definition-description',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <div\n [innerHTML]=\"\n description()\n | skyDocsEscapeHtml\n | skyDocsMarkdown: 'block'\n | skyTypeAnchorLinks: { ignore: [definitionName()] }\n \"\n ></div>\n `,\n})\nexport class SkyDocsTypeDefinitionDescriptionComponent {\n public readonly definitionName = input.required<string>();\n public readonly description = input.required<string>();\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestChildDefinition,\n type SkyManifestClassPropertyDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyDefaultValue',\n})\nexport class SkyDocsPropertyTypeDefinitionDefaultValuePipe\n implements PipeTransform\n{\n public transform(prop: SkyManifestChildDefinition): string | undefined {\n return (prop as SkyManifestClassPropertyDefinition)?.defaultValue;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestEnumerationDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsEnumerationSignature',\n})\nexport class SkyDocsEnumerationSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestEnumerationDefinition;\n\n return `enum ${def.name} {\n ${def.children?.map((c) => `${c.name} = ${c.type},`).join('\\n ')}\n}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParameterDefinition } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsParameterName',\n})\nexport class SkyDocsParameterNamePipe implements PipeTransform {\n public transform(parameter: SkyManifestParameterDefinition): string {\n return `${parameter.name}${parameter.defaultValue ? ` = ${parameter.defaultValue}` : `${parameter.isOptional ? '?' : ''}: ${parameter.type}`}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestDocumentationTypeDefinition,\n SkyManifestFunctionDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsFunctionSignature',\n})\nexport class SkyDocsFunctionSignaturePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(definition: SkyManifestDocumentationTypeDefinition): string {\n const def = definition as unknown as SkyManifestFunctionDefinition;\n\n return (\n `${def.type.startsWith('Promise') ? 'async ' : ''}function ${def.name}(` +\n (def.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${def.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n SkyManifestInterfaceDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsInterfaceSignature',\n})\nexport class SkyDocsInterfaceSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestInterfaceDefinition;\n\n if (def.children) {\n return `interface ${def.name} {\n ${def.children\n ?.map((c) => {\n return `${c.name}${c.isOptional ? '?' : ''}: ${c.type};`;\n })\n .join('\\n ')}\n}`;\n }\n\n return `interface ${def.name} {}`;\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport {\n SkyManifestClassMethodDefinition,\n SkyManifestParentDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsParameterNamePipe } from './parameter-name.pipe';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsMethodName',\n})\nexport class SkyDocsMethodNamePipe implements PipeTransform {\n readonly #paramPipe = inject(SkyDocsParameterNamePipe);\n\n public transform(\n method: SkyManifestClassMethodDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n let name = '';\n\n if (method.isStatic) {\n name = `${parent.name}.${method.name}`;\n } else {\n name = `${method.name}`;\n }\n\n return (\n name +\n '(' +\n (method.parameters?.map((p) => this.#paramPipe.transform(p)).join(', ') ??\n '') +\n `): ${method.type}`\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { type SkyManifestParentDefinition } from '@skyux/manifest';\n\nimport { PropertyDefinition } from '../property-definition';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsPropertyName',\n})\nexport class SkyDocsPropertyNamePipe implements PipeTransform {\n public transform(\n property: PropertyDefinition,\n parent: SkyManifestParentDefinition,\n ): string {\n switch (property.kind) {\n case 'enum-member': {\n return `${parent.name}.${property.name}`;\n }\n\n case 'interface-property': {\n return `${property.name}?: ${property.type}`;\n }\n\n default: {\n return `${property.name}: ${property.type}`;\n }\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n type SkyManifestParentDefinition,\n type SkyManifestTypeAliasDefinition,\n} from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsTypeAliasSignature',\n})\nexport class SkyDocsTypeAliasSignaturePipe implements PipeTransform {\n public transform(definition: SkyManifestParentDefinition): string {\n const def = definition as SkyManifestTypeAliasDefinition;\n\n return `type ${def.name} = ${def.type}`;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\nimport { SkyDocsCategoryColor } from '../../category-tag/category-color';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsDefinitionKindToCategoryColor',\n})\nexport class SkyDocsTypeDefinitionKindToCategoryColorPipe\n implements PipeTransform\n{\n public transform(\n value: SkyManifestParentDefinitionKind,\n ): SkyDocsCategoryColor {\n switch (value) {\n case 'module':\n return 'purple';\n\n case 'component':\n return 'orange';\n\n case 'directive':\n return 'yellow';\n\n case 'service':\n return 'teal';\n\n case 'pipe':\n case 'class':\n case 'function':\n return 'blue';\n\n default:\n return 'light-blue';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { SkyManifestParentDefinitionKind } from '@skyux/manifest';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyTypeDefinitionKindToLabel',\n})\nexport class SkyDocsTypeDefinitionKindToLabelPipe implements PipeTransform {\n public transform(kind: SkyManifestParentDefinitionKind): string {\n switch (kind) {\n case 'type-alias':\n return 'Type alias';\n\n default:\n return kind.charAt(0).toLocaleUpperCase() + kind.slice(1);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n input,\n} from '@angular/core';\nimport {\n SkyManifestChildDefinitionKind,\n SkyManifestClassMethodDefinition,\n SkyManifestDirectiveInputDefinition,\n SkyManifestDirectiveOutputDefinition,\n type SkyManifestDocumentationTypeDefinition,\n SkyManifestParameterDefinition,\n isDirectiveDefinition,\n isFunctionDefinition,\n isPipeDefinition,\n} from '@skyux/manifest';\n\nimport { SkyDocsCategoryTagModule } from '../category-tag/category-tag.module';\nimport { SkyDocsCodeHighlightPipe } from '../code-highlight/code-highlight.pipe';\nimport { SkyDocsCodeSnippetModule } from '../code-snippet/code-snippet.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\n\nimport { SkyDocsTypeDefinitionBoxComponent } from './box.component';\nimport { SkyDocsDeprecationReasonComponent } from './deprecation-reason.component';\nimport { SkyDocsTypeDefinitionDescriptionComponent } from './description.component';\nimport { SkyDocsPropertyTypeDefinitionDefaultValuePipe } from './pipes/default-value.pipe';\nimport { SkyDocsEnumerationSignaturePipe } from './pipes/enum-signature.pipe';\nimport { SkyDocsEscapeHtmlPipe } from './pipes/escape-html.pipe';\nimport { SkyDocsFunctionSignaturePipe } from './pipes/function-signature.pipe';\nimport { SkyDocsInterfaceSignaturePipe } from './pipes/interface-signature.pipe';\nimport { SkyDocsMethodNamePipe } from './pipes/method-name.pipe';\nimport { SkyDocsParameterNamePipe } from './pipes/parameter-name.pipe';\nimport { SkyDocsPropertyNamePipe } from './pipes/property-name.pipe';\nimport { SkyDocsTypeAliasSignaturePipe } from './pipes/type-alias-signature.pipe';\nimport { SkyTypeAnchorLinksPipe } from './pipes/type-anchor-links.pipe';\nimport { SkyDocsTypeDefinitionKindToCategoryColorPipe } from './pipes/type-definition-kind-to-category-color.pipe';\nimport { SkyDocsTypeDefinitionKindToLabelPipe } from './pipes/type-definition-kind-to-label.pipe';\nimport { PropertyDefinition } from './property-definition';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class.sky-margin-stacked-xxl]': 'stacked()',\n },\n imports: [\n SkyDocsCategoryTagModule,\n SkyDocsCodeHighlightPipe,\n SkyDocsCodeSnippetModule,\n SkyDocsDeprecationReasonComponent,\n SkyDocsEnumerationSignaturePipe,\n SkyDocsHeadingAnchorModule,\n SkyDocsFunctionSignaturePipe,\n SkyDocsInterfaceSignaturePipe,\n SkyDocsMethodNamePipe,\n SkyDocsParameterNamePipe,\n SkyDocsPropertyNamePipe,\n SkyDocsPropertyTypeDefinitionDefaultValuePipe,\n SkyDocsTypeAliasSignaturePipe,\n SkyDocsTypeDefinitionBoxComponent,\n SkyDocsTypeDefinitionDescriptionComponent,\n SkyDocsTypeDefinitionKindToCategoryColorPipe,\n SkyDocsTypeDefinitionKindToLabelPipe,\n SkyDocsEscapeHtmlPipe,\n SkyTypeAnchorLinksPipe,\n ],\n providers: [SkyDocsParameterNamePipe],\n selector: 'sky-docs-type-definition',\n styleUrl: './type-definition.component.scss',\n templateUrl: './type-definition.component.html',\n})\nexport class SkyDocsTypeDefinitionComponent {\n public readonly definition =\n input.required<SkyManifestDocumentationTypeDefinition>();\n\n public readonly stacked = input(false, { transform: booleanAttribute });\n\n protected readonly inputs = computed<\n SkyManifestDirectiveInputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const inputs = def.children?.filter((c) => c.kind === 'directive-input') as\n | SkyManifestDirectiveInputDefinition[]\n | undefined;\n\n return inputs && inputs.length > 0\n ? inputs\n // Sort alphabetically by name.\n .sort((a, b) => {\n if (a.name < b.name) {\n return -1;\n }\n if (a.name > b.name) {\n return 1;\n }\n return 0;\n })\n // List \"required\" inputs first.\n .sort((a, b) => {\n if (a.isRequired && !b.isRequired) {\n return -1;\n }\n\n if (!a.isRequired && b.isRequired) {\n return 1;\n }\n\n return 0;\n })\n : undefined;\n });\n\n protected readonly methods = computed<\n SkyManifestClassMethodDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return def.children?.filter((c) => c.kind === 'class-method') as\n | SkyManifestClassMethodDefinition[]\n | undefined;\n });\n\n protected readonly outputs = computed<\n SkyManifestDirectiveOutputDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n const outputs = def.children?.filter(\n (c) => c.kind === 'directive-output',\n ) as SkyManifestDirectiveOutputDefinition[] | undefined;\n\n return outputs && outputs.length > 0 ? outputs : undefined;\n });\n\n protected readonly parameters = computed<\n SkyManifestParameterDefinition[] | undefined\n >(() => {\n const def = this.definition();\n\n return isFunctionDefinition(def) ? def.parameters : undefined;\n });\n\n protected readonly pipeName = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isPipeDefinition(def) ? def.templateBindingName : undefined;\n });\n\n protected readonly properties = computed<PropertyDefinition[] | undefined>(\n () => {\n const def = this.definition();\n\n const ignore: SkyManifestChildDefinitionKind[] = [\n 'class-method',\n 'directive-input',\n 'directive-output',\n ];\n\n const properties = def.children?.filter(\n (c) => !ignore.includes(c.kind),\n ) as PropertyDefinition[] | undefined;\n\n return properties && properties.length > 0 ? properties : undefined;\n },\n );\n\n protected readonly selector = computed<string | undefined>(() => {\n const def = this.definition();\n\n return isDirectiveDefinition(def) ? def.selector : undefined;\n });\n}\n","@if (definition(); as def) {\n <sky-docs-heading-anchor\n class=\"sky-margin-stacked-lg\"\n headingLevel=\"2\"\n [anchorId]=\"def.anchorId\"\n [categoryColor]=\"def.kind | skyDocsDefinitionKindToCategoryColor\"\n [categoryTemplate]=\"categoryTemplate\"\n [headingText]=\"def.name\"\n [strikethrough]=\"def.isDeprecated\"\n >\n <ng-template #categoryTemplate>\n <span class=\"sky-screen-reader-only\">Type: </span>\n {{ def.kind | skyTypeDefinitionKindToLabel }}\n </ng-template>\n @if (def.isPreview) {\n <sky-docs-category-tag color=\"teal\"> Preview </sky-docs-category-tag>\n }\n </sky-docs-heading-anchor>\n @if (def.kind === 'module' || def.name.endsWith('Harness')) {\n <p>\n <code class=\"sky-docs-codespan\"\n >import {{ '{' }} {{ def.name }} {{ '}' }} from '{{\n def.packageName\n }}';</code\n >\n </p>\n }\n @if (selector(); as selector) {\n <p>\n Selector: <code class=\"sky-docs-codespan\">{{ selector }}</code>\n </p>\n }\n @if (pipeName(); as pipeName) {\n <p>\n Pipe name: <code class=\"sky-docs-codespan\">{{ pipeName }}</code>\n </p>\n }\n @if (def.deprecationReason) {\n <sky-docs-deprecation-reason [message]=\"def.deprecationReason\" />\n }\n @if (def.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"def.name\"\n [description]=\"def.description\"\n />\n }\n @if (def.codeExample) {\n <h3>Example</h3>\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n [code]=\"def.codeExample\"\n [language]=\"def.codeExampleLanguage ?? 'html'\"\n />\n }\n @switch (def.kind) {\n @case ('function') {\n <sky-docs-code-snippet\n bordered\n class=\"sky-margin-stacked-lg\"\n hideToolbar\n language=\"ts\"\n [code]=\"\n def\n | skyDocsFunctionSignature\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n />\n @let parametersValue = parameters();\n @if (parametersValue && parametersValue.length > 0) {\n <h3>Parameters</h3>\n @for (parameter of parametersValue; track parameter.name) {\n <h4 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n parameter\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h4>\n @if (parameter.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"parameter.name\"\n [description]=\"parameter.description\"\n />\n }\n }\n }\n }\n @case ('type-alias') {\n <sky-docs-code-snippet bordered hideToolbar stacked>\n <code\n [innerHTML]=\"\n def\n | skyDocsTypeAliasSignature\n | skyDocsCodeHighlight: 'typescript'\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n ></code>\n </sky-docs-code-snippet>\n }\n @default {\n @if (def.kind === 'interface') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsInterfaceSignature\"\n />\n }\n @if (def.kind === 'enumeration') {\n <sky-docs-code-snippet\n bordered\n hideToolbar\n language=\"ts\"\n stacked\n [code]=\"def | skyDocsEnumerationSignature\"\n />\n }\n @if (inputs(); as inputs) {\n <h3>Inputs</h3>\n @for (input of inputs; track input.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"input.isDeprecated\"\n [required]=\"input.isRequired\"\n [headingText]=\"\n input\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (input.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"input.deprecationReason\"\n />\n }\n @if (input.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"input.name\"\n [description]=\"input.description\"\n />\n }\n @let defaultValue = input | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (outputs(); as outputs) {\n <h3>Outputs</h3>\n @for (output of outputs; track output.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"output.isDeprecated\"\n [headingText]=\"\n output\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (output.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"output.deprecationReason\"\n />\n }\n @if (output.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"output.name\"\n [description]=\"output.description\"\n />\n }\n </sky-docs-type-definition-box>\n }\n }\n @if (properties(); as properties) {\n <h3>Properties</h3>\n @for (property of properties; track property.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"property.isDeprecated\"\n [headingText]=\"\n property\n | skyDocsPropertyName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (property.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"property.deprecationReason\"\n />\n }\n @if (property.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"property.name\"\n [description]=\"property.description\"\n />\n }\n @let defaultValue = property | skyDocsPropertyDefaultValue;\n @if (defaultValue) {\n <p>\n Default:\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n defaultValue | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n }\n </sky-docs-type-definition-box>\n }\n }\n @let methodsValue = methods();\n @if (methodsValue && methodsValue.length > 0) {\n <h3>Methods</h3>\n @for (method of methodsValue; track method.name; let last = $last) {\n <sky-docs-type-definition-box\n [stacked]=\"!last\"\n [deprecated]=\"method.isDeprecated\"\n [headingText]=\"\n method\n | skyDocsMethodName: def\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks: { ignore: [def.name] }\n \"\n >\n @if (method.deprecationReason) {\n <sky-docs-deprecation-reason\n class=\"sky-margin-stacked-sm\"\n [message]=\"method.deprecationReason\"\n />\n }\n @if (method.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"method.name\"\n [description]=\"method.description\"\n />\n }\n @if (method.parameters) {\n <h4>Parameters</h4>\n @for (param of method.parameters; track param.name) {\n <h5 class=\"sky-font-body-default\">\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n param\n | skyDocsParameterName\n | skyDocsEscapeHtml\n | skyTypeAnchorLinks\n \"\n ></code>\n </h5>\n @if (param.description) {\n <sky-docs-type-definition-description\n [definitionName]=\"param.name\"\n [description]=\"param.description\"\n />\n }\n }\n }\n <h4>Returns</h4>\n <p>\n <code\n class=\"sky-docs-codespan\"\n [innerHTML]=\"\n method.type | skyDocsEscapeHtml | skyTypeAnchorLinks\n \"\n ></code>\n </p>\n </sky-docs-type-definition-box>\n }\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsTypeDefinitionComponent } from './type-definition.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [SkyDocsTypeDefinitionComponent],\n exports: [SkyDocsTypeDefinitionComponent],\n})\nexport class SkyDocsTypeDefinitionModule {}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { type SkyManifestDocumentationGroup } from '@skyux/manifest';\n\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyDocsShowcaseHostService implements OnDestroy {\n public get documentationGroup(): Observable<\n SkyManifestDocumentationGroup | undefined\n > {\n return this.#documentationGroupObs;\n }\n\n readonly #documentationGroup = new BehaviorSubject<\n SkyManifestDocumentationGroup | undefined\n >(undefined);\n\n readonly #documentationGroupObs = this.#documentationGroup.asObservable();\n\n public ngOnDestroy(): void {\n this.#documentationGroup.complete();\n }\n\n public updateGroup(group: SkyManifestDocumentationGroup): void {\n this.#documentationGroup.next(group);\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { SkyIconModule } from '@skyux/icon';\nimport { SkyDescriptionListModule } from '@skyux/layout';\n\nimport { SkyDocsClipboardModule } from '../clipboard/clipboard.module';\nimport { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Development\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-padding-even-xl',\n },\n imports: [\n SkyDescriptionListModule,\n SkyDocsClipboardModule,\n SkyDocsHeadingAnchorModule,\n SkyDocsTableOfContentsModule,\n SkyDocsTypeDefinitionModule,\n SkyIconModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-development',\n styles: `\n :host {\n display: block;\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-development.component.html',\n})\nexport class SkyDocsShowcaseAreaDevelopmentComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Development\">\n @if (documentationGroup()?.packageInfo; as packageInfo) {\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <sky-docs-heading-anchor\n anchorId=\"installation\"\n class=\"sky-margin-stacked-lg\"\n headingText=\"Installation\"\n />\n <sky-description-list>\n <sky-description-list-content>\n <sky-description-list-term> NPM package </sky-description-list-term>\n <sky-description-list-description>\n <code class=\"sky-docs-codespan sky-margin-inline-sm\">{{\n packageInfo.packageName\n }}</code>\n <a [attr.href]=\"packageInfo.registryUrl\">View in NPM</a\n ><span> | </span\n ><a [attr.href]=\"packageInfo.repoUrl\">View in GitHub</a>\n </sky-description-list-description>\n </sky-description-list-content>\n <sky-description-list-content\n helpPopoverContent=\"To use this module, you must install peer dependencies along with its package. Also, after you install the package, you must add the module as an export in your SPA's main module to make exports available to your SPA.\"\n >\n <sky-description-list-term>\n Install with NPM\n </sky-description-list-term>\n <sky-description-list-description>\n <code\n #installationRef\n class=\"sky-docs-codespan sky-margin-inline-sm sky-margin-stacked-sm\"\n >\n npm install --save-exact {{ packageInfo.packageName }}\n </code>\n <button\n class=\"sky-btn sky-btn-default\"\n type=\"button\"\n skyDocsClipboardButton\n copySuccessMessage=\"Command copied\"\n [clipboardTarget]=\"installationRef\"\n >\n <sky-icon iconName=\"clipboard-multiple\" />\n Copy\n </button>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n </div>\n }\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <ng-content />\n </div>\n @if (documentationGroup()?.publicApi; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { Pipe, PipeTransform, Type, inject } from '@angular/core';\n\nimport { SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES } from './code-example-types-token';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyDocsCodeExampleNameToComponentType',\n})\nexport class SkyDocsCodeExampleNameToComponentTypePipe\n implements PipeTransform\n{\n readonly #examples = inject(SKY_DOCS_CODE_EXAMPLE_COMPONENT_TYPES);\n\n public transform(componentName: string): Type<unknown> {\n return this.#examples[componentName];\n }\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsCodeExampleViewerModule } from '../code-example-viewer/code-example-viewer.module';\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\n\nimport { SkyDocsCodeExampleNameToComponentTypePipe } from './code-example-types/code-example-types.pipe';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Examples\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-padding-even-xl',\n },\n imports: [\n SkyDocsCodeExampleNameToComponentTypePipe,\n SkyDocsCodeExampleViewerModule,\n ],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-examples',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './showcase-area-examples.component.html',\n})\nexport class SkyDocsShowcaseAreaExamplesComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","@if (documentationGroup()?.codeExamples; as codeExamples) {\n @for (\n example of codeExamples;\n track example.componentName;\n let last = $last\n ) {\n <sky-docs-code-example-viewer\n [componentName]=\"example.componentName\"\n [componentSelector]=\"example.selector\"\n [componentType]=\"\n example.componentName | skyDocsCodeExampleNameToComponentType\n \"\n [demoHidden]=\"!!example.demoHidden\"\n [files]=\"example.files\"\n [headingText]=\"example.title || 'Example'\"\n [primaryFile]=\"example.primaryFile\"\n [stacked]=\"!last\"\n />\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\n\n/**\n * Content for the \"Overview\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-padding-even-xl',\n },\n imports: [SkyDocsTableOfContentsModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-overview',\n styles: `\n :host {\n display: block;\n }\n `,\n template: `\n <sky-docs-toc-page menuHeadingText=\"Overview\">\n <ng-content />\n </sky-docs-toc-page>\n `,\n})\nexport class SkyDocsShowcaseAreaOverviewComponent {}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\nimport { SkyDocsHeadingAnchorService } from '../heading-anchor/heading-anchor.service';\nimport { SkyDocsTableOfContentsModule } from '../table-of-contents/table-of-contents.module';\nimport { SkyDocsTypeDefinitionModule } from '../type-definition/type-definition.module';\n\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * Content for the \"Testing\" tab.\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'sky-padding-even-xl',\n },\n imports: [SkyDocsTableOfContentsModule, SkyDocsTypeDefinitionModule],\n providers: [SkyDocsHeadingAnchorService],\n selector: 'sky-docs-showcase-area-testing',\n styles: `\n :host {\n display: block;\n }\n\n .sky-docs-showcase-section {\n padding-bottom: var(--sky-padding-even-xl);\n\n &:empty {\n display: none;\n }\n }\n `,\n templateUrl: './showcase-area-testing.component.html',\n})\nexport class SkyDocsShowcaseAreaTestingComponent {\n readonly #hostSvc = inject(SkyDocsShowcaseHostService);\n\n protected readonly documentationGroup = toSignal(\n this.#hostSvc.documentationGroup,\n );\n}\n","<sky-docs-toc-page menuHeadingText=\"Testing\">\n <div\n class=\"sky-docs-showcase-section sky-margin-stacked-xxl sky-border-bottom-row\"\n >\n <ng-content />\n </div>\n @if (documentationGroup()?.testing; as definitions) {\n @for (\n definition of definitions;\n track definition.docsId;\n let last = $last\n ) {\n <sky-docs-type-definition [definition]=\"definition\" [stacked]=\"!last\" />\n }\n }\n</sky-docs-toc-page>\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n input,\n} from '@angular/core';\nimport { getDocumentationGroup } from '@skyux/manifest';\nimport { SkyTabsModule } from '@skyux/tabs';\n\nimport { SkyDocsTypeDefinitionAnchorIdsService } from '../type-definition/type-anchor-ids.service';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseHostService } from './showcase-host.service';\n\n/**\n * @internal\n */\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaTestingComponent,\n SkyTabsModule,\n ],\n providers: [\n SkyDocsTypeDefinitionAnchorIdsService,\n SkyDocsShowcaseHostService,\n ],\n selector: 'sky-docs-showcase',\n styles: `\n :host {\n display: block;\n }\n `,\n templateUrl: './showcase.component.html',\n})\nexport class SkyDocsShowcaseComponent {\n readonly #anchorIdsSvc = inject(SkyDocsTypeDefinitionAnchorIdsService);\n readonly #showcaseHostSvc = inject(SkyDocsShowcaseHostService);\n\n public readonly groupName = input.required<string>();\n public readonly packageName = input.required<string>();\n\n protected docsGroup = computed(() => {\n const groupName = this.groupName();\n const packageName = this.packageName();\n\n return getDocumentationGroup(packageName, groupName);\n });\n\n protected readonly developmentContent = contentChild(\n SkyDocsShowcaseAreaDevelopmentComponent,\n );\n\n protected readonly overviewContent = contentChild(\n SkyDocsShowcaseAreaOverviewComponent,\n );\n\n protected readonly testingContent = contentChild(\n SkyDocsShowcaseAreaTestingComponent,\n );\n\n constructor() {\n effect(() => {\n const docsGroup = this.docsGroup();\n const anchorIds: Record<string, string> = {};\n\n docsGroup.publicApi.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n docsGroup.testing.forEach((def) => {\n anchorIds[def.name] = def.anchorId;\n });\n\n this.#anchorIdsSvc.updateAnchorIds(anchorIds);\n this.#showcaseHostSvc.updateGroup(docsGroup);\n });\n }\n}\n","<sky-tabset permalinkId=\"docs\">\n @if (overviewContent()) {\n <sky-tab tabHeading=\"Design\">\n <ng-container [ngTemplateOutlet]=\"overviewContentRef\" />\n </sky-tab>\n }\n @if (docsGroup().publicApi.length > 0 || developmentContent()) {\n <sky-tab tabHeading=\"Development\">\n @if (developmentContent()) {\n <ng-container [ngTemplateOutlet]=\"developmentContentRef\" />\n } @else {\n <sky-docs-showcase-area-development />\n }\n </sky-tab>\n }\n @if (docsGroup().testing.length > 0 || testingContent()) {\n <sky-tab tabHeading=\"Testing\">\n @if (testingContent()) {\n <ng-container [ngTemplateOutlet]=\"testingContentRef\" />\n } @else {\n <sky-docs-showcase-area-testing />\n }\n </sky-tab>\n }\n @if (docsGroup().codeExamples.length > 0) {\n <sky-tab tabHeading=\"Examples\">\n <sky-docs-showcase-area-examples />\n </sky-tab>\n }\n</sky-tabset>\n<ng-template #overviewContentRef>\n <ng-content select=\"sky-docs-showcase-area-overview\" />\n</ng-template>\n<ng-template #developmentContentRef>\n <ng-content select=\"sky-docs-showcase-area-development\" />\n</ng-template>\n<ng-template #testingContentRef>\n <ng-content select=\"sky-docs-showcase-area-testing\" />\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { SkyDocsShowcaseAreaDevelopmentComponent } from './showcase-area-development.component';\nimport { SkyDocsShowcaseAreaExamplesComponent } from './showcase-area-examples.component';\nimport { SkyDocsShowcaseAreaOverviewComponent } from './showcase-area-overview.component';\nimport { SkyDocsShowcaseAreaTestingComponent } from './showcase-area-testing.component';\nimport { SkyDocsShowcaseComponent } from './showcase.component';\n\n/**\n * @internal\n */\n@NgModule({\n imports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaExamplesComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n exports: [\n SkyDocsShowcaseComponent,\n SkyDocsShowcaseAreaDevelopmentComponent,\n SkyDocsShowcaseAreaOverviewComponent,\n SkyDocsShowcaseAreaTestingComponent,\n ],\n})\nexport class SkyDocsShowcaseModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyDocsClipboardButtonDirective","i4","i1.SkyDocsCategoryTagComponent","i3","i1","i3.SkyDocsHeadingAnchorComponent","i4.SkyDocsTableOfContentsPageComponent","i6","i1.SkyDocsCodeExampleViewerComponent","i1.SkyDocsTableOfContentsPageComponent","i2.SkyDocsTypeDefinitionComponent"],"mappings":"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"}
|