@skyux/docs-tools 8.0.2 → 9.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/{esm2020 → esm2022}/docs-tools.module.mjs +15 -15
  2. package/{esm2020 → esm2022}/modules/anatomy/anatomy-item.component.mjs +4 -4
  3. package/{esm2020 → esm2022}/modules/anatomy/anatomy-thumbnail.component.mjs +4 -4
  4. package/{esm2020 → esm2022}/modules/anatomy/anatomy.component.mjs +4 -4
  5. package/{esm2020 → esm2022}/modules/anatomy/anatomy.module.mjs +15 -15
  6. package/{esm2020 → esm2022}/modules/code-examples/code-example.component.mjs +4 -4
  7. package/esm2022/modules/code-examples/code-examples-editor.service.mjs +312 -0
  8. package/{esm2020 → esm2022}/modules/code-examples/code-examples.component.mjs +4 -4
  9. package/{esm2020 → esm2022}/modules/code-examples/code-examples.module.mjs +15 -15
  10. package/{esm2020 → esm2022}/modules/demo/demo-control-panel-checkbox.component.mjs +4 -4
  11. package/esm2022/modules/demo/demo-control-panel-radio-group.component.mjs +80 -0
  12. package/{esm2020 → esm2022}/modules/demo/demo-control-panel-section.component.mjs +4 -4
  13. package/{esm2020 → esm2022}/modules/demo/demo-control-panel.component.mjs +4 -4
  14. package/{esm2020 → esm2022}/modules/demo/demo.component.mjs +4 -4
  15. package/{esm2020 → esm2022}/modules/demo/demo.module.mjs +25 -25
  16. package/{esm2020 → esm2022}/modules/demo-page/demo-page-dom-adapter.service.mjs +4 -4
  17. package/{esm2020 → esm2022}/modules/demo-page/demo-page-module-info.component.mjs +4 -4
  18. package/{esm2020 → esm2022}/modules/demo-page/demo-page-section.component.mjs +4 -4
  19. package/{esm2020 → esm2022}/modules/demo-page/demo-page-summary.component.mjs +4 -4
  20. package/{esm2020 → esm2022}/modules/demo-page/demo-page-title.service.mjs +4 -4
  21. package/{esm2020 → esm2022}/modules/demo-page/demo-page-type-definitions.component.mjs +4 -4
  22. package/esm2022/modules/demo-page/demo-page.component.mjs +185 -0
  23. package/{esm2020 → esm2022}/modules/demo-page/demo-page.module.mjs +35 -35
  24. package/{esm2020 → esm2022}/modules/design-guidelines/design-guideline-thumbnail.component.mjs +4 -4
  25. package/{esm2020 → esm2022}/modules/design-guidelines/design-guideline.component.mjs +4 -4
  26. package/{esm2020 → esm2022}/modules/design-guidelines/design-guidelines.component.mjs +4 -4
  27. package/{esm2020 → esm2022}/modules/design-guidelines/design-guidelines.module.mjs +9 -9
  28. package/{esm2020 → esm2022}/modules/heading-anchor/heading-anchor.component.mjs +4 -4
  29. package/{esm2020 → esm2022}/modules/heading-anchor/heading-anchor.module.mjs +5 -5
  30. package/{esm2020 → esm2022}/modules/markdown/markdown.module.mjs +5 -5
  31. package/{esm2020 → esm2022}/modules/markdown/markdown.pipe.mjs +4 -4
  32. package/esm2022/modules/module-info/module-info.component.mjs +72 -0
  33. package/{esm2020 → esm2022}/modules/module-info/module-info.module.mjs +15 -15
  34. package/{esm2020 → esm2022}/modules/safe-html/safe-html.component.mjs +4 -4
  35. package/{esm2020 → esm2022}/modules/safe-html/safe-html.module.mjs +5 -5
  36. package/{esm2020 → esm2022}/modules/shared/docs-tools-supportal.service.mjs +4 -4
  37. package/esm2022/modules/shared/sky-docs-tools-resources.module.mjs +53 -0
  38. package/{esm2020 → esm2022}/modules/source-code/source-code-provider.mjs +4 -4
  39. package/{esm2020 → esm2022}/modules/source-code/source-code.service.mjs +4 -4
  40. package/{esm2020 → esm2022}/modules/thumbnail/thumbnail.component.mjs +4 -4
  41. package/{esm2020 → esm2022}/modules/thumbnail/thumbnail.module.mjs +5 -5
  42. package/{esm2020 → esm2022}/modules/type-definitions/anchor-link.service.mjs +4 -4
  43. package/{esm2020 → esm2022}/modules/type-definitions/call-signature-definition.component.mjs +4 -4
  44. package/{esm2020 → esm2022}/modules/type-definitions/class-definition.component.mjs +4 -4
  45. package/{esm2020 → esm2022}/modules/type-definitions/directive-definition.component.mjs +4 -4
  46. package/{esm2020 → esm2022}/modules/type-definitions/enumeration-definition.component.mjs +4 -4
  47. package/{esm2020 → esm2022}/modules/type-definitions/interface-definition.component.mjs +4 -4
  48. package/esm2022/modules/type-definitions/method-definitions.component.mjs +70 -0
  49. package/{esm2020 → esm2022}/modules/type-definitions/pipe-definition.component.mjs +4 -4
  50. package/{esm2020 → esm2022}/modules/type-definitions/property-definitions.component.mjs +4 -4
  51. package/{esm2020 → esm2022}/modules/type-definitions/type-alias-definition.component.mjs +4 -4
  52. package/{esm2020 → esm2022}/modules/type-definitions/type-anchor-links.pipe.mjs +4 -4
  53. package/{esm2020 → esm2022}/modules/type-definitions/type-definitions-format.service.mjs +4 -4
  54. package/{esm2020 → esm2022}/modules/type-definitions/type-definitions-provider.mjs +4 -4
  55. package/{esm2020 → esm2022}/modules/type-definitions/type-definitions.module.mjs +39 -39
  56. package/{esm2020 → esm2022}/modules/type-definitions/type-definitions.service.mjs +4 -4
  57. package/{esm2020 → esm2022}/modules/type-definitions/typedoc-adapter.service.mjs +4 -4
  58. package/{fesm2020 → fesm2022}/skyux-docs-tools.mjs +405 -462
  59. package/fesm2022/skyux-docs-tools.mjs.map +1 -0
  60. package/modules/anatomy/anatomy-item.component.d.ts +1 -1
  61. package/modules/anatomy/anatomy-thumbnail.component.d.ts +1 -1
  62. package/modules/anatomy/anatomy.component.d.ts +1 -1
  63. package/modules/code-examples/code-example.component.d.ts +1 -1
  64. package/modules/code-examples/code-examples.component.d.ts +1 -1
  65. package/modules/demo/demo-control-panel-checkbox.component.d.ts +1 -1
  66. package/modules/demo/demo-control-panel-radio-group.component.d.ts +1 -1
  67. package/modules/demo/demo.component.d.ts +1 -1
  68. package/modules/demo-page/demo-page-section.component.d.ts +1 -1
  69. package/modules/demo-page/demo-page-type-definitions.component.d.ts +1 -1
  70. package/modules/demo-page/demo-page.component.d.ts +1 -1
  71. package/modules/design-guidelines/design-guideline-thumbnail.component.d.ts +1 -1
  72. package/modules/design-guidelines/design-guideline.component.d.ts +1 -1
  73. package/modules/heading-anchor/heading-anchor.component.d.ts +1 -1
  74. package/modules/module-info/module-info.component.d.ts +1 -1
  75. package/modules/safe-html/safe-html.component.d.ts +1 -1
  76. package/modules/thumbnail/thumbnail.component.d.ts +1 -1
  77. package/modules/type-definitions/call-signature-definition.component.d.ts +1 -1
  78. package/modules/type-definitions/class-definition.component.d.ts +1 -1
  79. package/modules/type-definitions/directive-definition.component.d.ts +1 -1
  80. package/modules/type-definitions/enumeration-definition.component.d.ts +1 -1
  81. package/modules/type-definitions/interface-definition.component.d.ts +1 -1
  82. package/modules/type-definitions/method-definitions.component.d.ts +1 -1
  83. package/modules/type-definitions/pipe-definition.component.d.ts +1 -1
  84. package/modules/type-definitions/property-definitions.component.d.ts +1 -1
  85. package/modules/type-definitions/type-alias-definition.component.d.ts +1 -1
  86. package/package.json +24 -30
  87. package/esm2020/modules/code-examples/code-examples-editor.service.mjs +0 -362
  88. package/esm2020/modules/demo/demo-control-panel-radio-group.component.mjs +0 -83
  89. package/esm2020/modules/demo-page/demo-page.component.mjs +0 -187
  90. package/esm2020/modules/module-info/module-info.component.mjs +0 -74
  91. package/esm2020/modules/shared/sky-docs-tools-resources.module.mjs +0 -53
  92. package/esm2020/modules/type-definitions/method-definitions.component.mjs +0 -73
  93. package/fesm2015/skyux-docs-tools.mjs +0 -3275
  94. package/fesm2015/skyux-docs-tools.mjs.map +0 -1
  95. package/fesm2020/skyux-docs-tools.mjs.map +0 -1
  96. /package/{esm2020 → esm2022}/modules/code-examples/code-example-module-dependencies.mjs +0 -0
  97. /package/{esm2020 → esm2022}/modules/code-examples/code-example-theme.mjs +0 -0
  98. /package/{esm2020 → esm2022}/modules/code-examples/code-example.mjs +0 -0
  99. /package/{esm2020 → esm2022}/modules/demo/demo-content-alignment.mjs +0 -0
  100. /package/{esm2020 → esm2022}/modules/demo/demo-control-panel-change.mjs +0 -0
  101. /package/{esm2020 → esm2022}/modules/demo/demo-control-panel-radio-choice.mjs +0 -0
  102. /package/{esm2020 → esm2022}/modules/shared/docs-tools-component-info.mjs +0 -0
  103. /package/{esm2020 → esm2022}/modules/shared/docs-tools-options.mjs +0 -0
  104. /package/{esm2020 → esm2022}/modules/source-code/source-code-file.mjs +0 -0
  105. /package/{esm2020 → esm2022}/modules/type-definitions/anchor-link-service-config.mjs +0 -0
  106. /package/{esm2020 → esm2022}/modules/type-definitions/anchor-link-service-format.mjs +0 -0
  107. /package/{esm2020 → esm2022}/modules/type-definitions/anchor-link.mjs +0 -0
  108. /package/{esm2020 → esm2022}/modules/type-definitions/call-signature-definition.mjs +0 -0
  109. /package/{esm2020 → esm2022}/modules/type-definitions/class-definition.mjs +0 -0
  110. /package/{esm2020 → esm2022}/modules/type-definitions/comment-tags.mjs +0 -0
  111. /package/{esm2020 → esm2022}/modules/type-definitions/directive-definition.mjs +0 -0
  112. /package/{esm2020 → esm2022}/modules/type-definitions/entry-child-definition.mjs +0 -0
  113. /package/{esm2020 → esm2022}/modules/type-definitions/entry-definition.mjs +0 -0
  114. /package/{esm2020 → esm2022}/modules/type-definitions/enumeration-definition.mjs +0 -0
  115. /package/{esm2020 → esm2022}/modules/type-definitions/enumeration-member-definition.mjs +0 -0
  116. /package/{esm2020 → esm2022}/modules/type-definitions/index-signature-definition.mjs +0 -0
  117. /package/{esm2020 → esm2022}/modules/type-definitions/interface-definition.mjs +0 -0
  118. /package/{esm2020 → esm2022}/modules/type-definitions/interface-property-definition.mjs +0 -0
  119. /package/{esm2020 → esm2022}/modules/type-definitions/method-definition.mjs +0 -0
  120. /package/{esm2020 → esm2022}/modules/type-definitions/parameter-definition.mjs +0 -0
  121. /package/{esm2020 → esm2022}/modules/type-definitions/pipe-definition.mjs +0 -0
  122. /package/{esm2020 → esm2022}/modules/type-definitions/property-decorator.mjs +0 -0
  123. /package/{esm2020 → esm2022}/modules/type-definitions/property-definition.mjs +0 -0
  124. /package/{esm2020 → esm2022}/modules/type-definitions/type-alias-definition.mjs +0 -0
  125. /package/{esm2020 → esm2022}/modules/type-definitions/type-definition.mjs +0 -0
  126. /package/{esm2020 → esm2022}/modules/type-definitions/type-definitions.mjs +0 -0
  127. /package/{esm2020 → esm2022}/modules/type-definitions/type-parameter-definition.mjs +0 -0
  128. /package/{esm2020 → esm2022}/modules/type-definitions/typedoc-types.mjs +0 -0
  129. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  130. /package/{esm2020 → esm2022}/skyux-docs-tools.mjs +0 -0
@@ -1,187 +0,0 @@
1
- var _SkyDocsDemoPageComponent_instances, _SkyDocsDemoPageComponent__additionalSourceCodePaths, _SkyDocsDemoPageComponent__additionalTestingSourceCodePaths, _SkyDocsDemoPageComponent__moduleSourceCodePath, _SkyDocsDemoPageComponent_updateTypes, _SkyDocsDemoPageComponent_updateTestingTypes;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, ContentChild, ContentChildren, Input, } from '@angular/core';
4
- import { SkyDocsCodeExamplesComponent } from '../code-examples/code-examples.component';
5
- import { SkyDocsDesignGuidelinesComponent } from '../design-guidelines/design-guidelines.component';
6
- import { SkyDocsDemoPageDomAdapterService } from './demo-page-dom-adapter.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/router";
9
- import * as i2 from "@skyux/config";
10
- import * as i3 from "./demo-page-dom-adapter.service";
11
- import * as i4 from "../shared/docs-tools-supportal.service";
12
- import * as i5 from "./demo-page-title.service";
13
- import * as i6 from "../type-definitions/type-definitions.service";
14
- import * as i7 from "@angular/common";
15
- import * as i8 from "../module-info/module-info.component";
16
- import * as i9 from "@skyux/tabs";
17
- import * as i10 from "@blackbaud/skyux-lib-stache";
18
- import * as i11 from "./demo-page-section.component";
19
- import * as i12 from "./demo-page-type-definitions.component";
20
- /**
21
- * The demo page component wraps all documentation components and handles the configuration and layout of the page.
22
- * @example
23
- * ```
24
- * <sky-docs-demo-page
25
- * pageTitle="My demo page"
26
- * >
27
- * Content here.
28
- * </sky-docs-demo-page>
29
- * ```
30
- */
31
- export class SkyDocsDemoPageComponent {
32
- /**
33
- * Specifies the local path to any other relevant source code. The values are relative to the root directory.
34
- */
35
- set additionalSourceCodePaths(paths) {
36
- __classPrivateFieldSet(this, _SkyDocsDemoPageComponent__additionalSourceCodePaths, paths, "f");
37
- __classPrivateFieldGet(this, _SkyDocsDemoPageComponent_instances, "m", _SkyDocsDemoPageComponent_updateTypes).call(this);
38
- }
39
- get additionalSourceCodePaths() {
40
- return __classPrivateFieldGet(this, _SkyDocsDemoPageComponent__additionalSourceCodePaths, "f");
41
- }
42
- /**
43
- * Specifies the local path to any other relevant testing source code. The values are relative to the root directory.
44
- */
45
- set additionalTestingSourceCodePaths(paths) {
46
- __classPrivateFieldSet(this, _SkyDocsDemoPageComponent__additionalTestingSourceCodePaths, paths, "f");
47
- __classPrivateFieldGet(this, _SkyDocsDemoPageComponent_instances, "m", _SkyDocsDemoPageComponent_updateTestingTypes).call(this);
48
- }
49
- get additionalTestingSourceCodePaths() {
50
- return __classPrivateFieldGet(this, _SkyDocsDemoPageComponent__additionalTestingSourceCodePaths, "f");
51
- }
52
- /**
53
- * Specifies the local path to the module's source code. The value is relative to the root directory.
54
- */
55
- set moduleSourceCodePath(path) {
56
- __classPrivateFieldSet(this, _SkyDocsDemoPageComponent__moduleSourceCodePath, path, "f");
57
- this.testingSourceCodePath = path.replace('/modules/', '/testing/');
58
- __classPrivateFieldGet(this, _SkyDocsDemoPageComponent_instances, "m", _SkyDocsDemoPageComponent_updateTypes).call(this);
59
- __classPrivateFieldGet(this, _SkyDocsDemoPageComponent_instances, "m", _SkyDocsDemoPageComponent_updateTestingTypes).call(this);
60
- }
61
- get moduleSourceCodePath() {
62
- return __classPrivateFieldGet(this, _SkyDocsDemoPageComponent__moduleSourceCodePath, "f");
63
- }
64
- constructor(activatedRoute, changeDetector, router, skyAppConfig, domAdapter, supportalService, titleService, typeDefinitionService) {
65
- this.activatedRoute = activatedRoute;
66
- this.changeDetector = changeDetector;
67
- this.router = router;
68
- this.skyAppConfig = skyAppConfig;
69
- this.domAdapter = domAdapter;
70
- this.supportalService = supportalService;
71
- this.titleService = titleService;
72
- this.typeDefinitionService = typeDefinitionService;
73
- _SkyDocsDemoPageComponent_instances.add(this);
74
- /**
75
- * @internal
76
- */
77
- this.enableCodeExamples = false;
78
- /**
79
- * @internal
80
- */
81
- this.enableTestingTab = false;
82
- /**
83
- * @internal
84
- */
85
- this.enableTabLayout = false;
86
- _SkyDocsDemoPageComponent__additionalSourceCodePaths.set(this, void 0);
87
- _SkyDocsDemoPageComponent__additionalTestingSourceCodePaths.set(this, void 0);
88
- _SkyDocsDemoPageComponent__moduleSourceCodePath.set(this, void 0);
89
- }
90
- ngOnInit() {
91
- const currentHostUrl = this.skyAppConfig.skyux.host.url + '/' + this.skyAppConfig.skyux.name;
92
- this.updateTitle();
93
- this.supportalService
94
- .getComponentsInfo()
95
- .subscribe((results) => {
96
- this.sidebarRoutes = [
97
- {
98
- name: 'Components',
99
- path: 'https://developer.blackbaud.com/skyux/components',
100
- children: results.map((component) => ({
101
- name: component.name,
102
- path: this.getPath(component.url, currentHostUrl),
103
- })),
104
- },
105
- ];
106
- this.changeDetector.markForCheck();
107
- });
108
- }
109
- ngAfterContentInit() {
110
- this.enableCodeExamples = this.codeExampleComponents.length > 0;
111
- this.enableTabLayout =
112
- !!this.designGuidelinesComponent || this.enableCodeExamples;
113
- }
114
- ngAfterViewInit() {
115
- // Watch for route fragment to change and scroll to heading.
116
- this.activatedRoute.fragment.subscribe((fragment) => {
117
- this.domAdapter.scrollToFragment(fragment);
118
- });
119
- // Change the HREF attribute for all dynamic links when the query params change.
120
- // This will also generate the appropriate HREF if the user wants to open the link in a new window.
121
- this.activatedRoute.queryParams.subscribe(() => {
122
- this.domAdapter.setupAnchorLinks();
123
- });
124
- // When a dynamic link is clicked, use Angular's router so that everything works correctly.
125
- this.domAdapter.anchorLinkClick.subscribe((anchorLink) => {
126
- const fragment = anchorLink.href.split('#')[1];
127
- this.router.navigate([], {
128
- fragment,
129
- queryParamsHandling: 'merge',
130
- });
131
- if (this.activatedRoute.snapshot.fragment === fragment) {
132
- this.domAdapter.scrollToFragment(fragment);
133
- }
134
- });
135
- }
136
- updateTitle() {
137
- /*istanbul ignore else*/
138
- if (this.pageTitle) {
139
- this.titleService.setTitle(this.pageTitle, 'Components');
140
- }
141
- }
142
- getPath(url, currentHostUrl) {
143
- // Replace host + SPA so Stache will mark active.
144
- // Strip URL params is url is local, as those will be preserved by stacheRouterLink.
145
- if (url.indexOf(currentHostUrl) > -1) {
146
- return url.replace(currentHostUrl, '').split('?')[0];
147
- }
148
- else {
149
- return url;
150
- }
151
- }
152
- }
153
- _SkyDocsDemoPageComponent__additionalSourceCodePaths = new WeakMap(), _SkyDocsDemoPageComponent__additionalTestingSourceCodePaths = new WeakMap(), _SkyDocsDemoPageComponent__moduleSourceCodePath = new WeakMap(), _SkyDocsDemoPageComponent_instances = new WeakSet(), _SkyDocsDemoPageComponent_updateTypes = function _SkyDocsDemoPageComponent_updateTypes() {
154
- this.moduleTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(this.moduleSourceCodePath, this.additionalSourceCodePaths);
155
- }, _SkyDocsDemoPageComponent_updateTestingTypes = function _SkyDocsDemoPageComponent_updateTestingTypes() {
156
- this.testingTypeDefinitions = this.typeDefinitionService.getTypeDefinitions(this.testingSourceCodePath, this.additionalTestingSourceCodePaths);
157
- this.enableTestingTab = Object.values(this.testingTypeDefinitions).some((value) => value && value.length > 0);
158
- };
159
- SkyDocsDemoPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsDemoPageComponent, deps: [{ token: i1.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i1.Router }, { token: i2.SkyAppConfig }, { token: i3.SkyDocsDemoPageDomAdapterService }, { token: i4.SkyDocsSupportalService }, { token: i5.SkyDocsDemoPageTitleService }, { token: i6.SkyDocsTypeDefinitionsService }], target: i0.ɵɵFactoryTarget.Component });
160
- SkyDocsDemoPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDocsDemoPageComponent, selector: "sky-docs-demo-page", inputs: { additionalSourceCodePaths: "additionalSourceCodePaths", additionalTestingSourceCodePaths: "additionalTestingSourceCodePaths", gitRepoUrl: "gitRepoUrl", moduleName: "moduleName", moduleSourceCodePath: "moduleSourceCodePath", packageName: "packageName", packageUrl: "packageUrl", pageTitle: "pageTitle" }, providers: [SkyDocsDemoPageDomAdapterService], queries: [{ propertyName: "designGuidelinesComponent", first: true, predicate: SkyDocsDesignGuidelinesComponent, descendants: true }, { propertyName: "codeExampleComponents", predicate: SkyDocsCodeExamplesComponent }], ngImport: i0, template: "<div class=\"sky-docs-demo-page\">\n <stache\n layout=\"sidebar\"\n [pageTitle]=\"pageTitle\"\n [showBreadcrumbs]=\"false\"\n [showTableOfContents]=\"false\"\n [sidebarRoutes]=\"sidebarRoutes\"\n >\n <ng-content select=\"sky-docs-demo-page-summary\"></ng-content>\n\n <ng-content select=\"sky-docs-demo\"></ng-content>\n\n <div class=\"sky-docs-demo-page-main\">\n <sky-tabset *ngIf=\"enableTabLayout; else content\" permalinkId=\"docs\">\n <sky-tab tabHeading=\"Design\" *ngIf=\"!!designGuidelinesComponent\">\n <ng-content select=\"sky-docs-design-guidelines\"></ng-content>\n </sky-tab>\n\n <sky-tab tabHeading=\"Development\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </sky-tab>\n\n <sky-tab tabHeading=\"Testing\" *ngIf=\"enableTestingTab\">\n <sky-docs-demo-page-section heading=\"Test harnesses\">\n <p>\n SKY UX test harnesses are built upon Angular CDK component\n harnesses. For more information see the\n <a href=\"https://material.angular.io/cdk/test-harnesses/overview\"\n >Angular CDK component harness documentation</a\n >.\n </p>\n </sky-docs-demo-page-section>\n <sky-docs-demo-page-type-definitions [types]=\"testingTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n </sky-tab>\n\n <sky-tab tabHeading=\"Code examples\" *ngIf=\"enableCodeExamples\">\n <ng-content select=\"sky-docs-code-examples\"></ng-content>\n </sky-tab>\n </sky-tabset>\n </div>\n </stache>\n</div>\n\n<ng-template #content>\n <sky-docs-demo-page-section *ngIf=\"moduleName\" heading=\"Installation\">\n <sky-docs-module-info\n [gitRepoUrl]=\"gitRepoUrl\"\n [moduleName]=\"moduleName\"\n [packageName]=\"packageName\"\n [packageUrl]=\"packageUrl\"\n >\n <ng-content select=\"sky-docs-demo-page-module-info\"></ng-content>\n </sky-docs-module-info>\n </sky-docs-demo-page-section>\n\n <ng-content></ng-content>\n\n <sky-docs-demo-page-type-definitions [types]=\"moduleTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n</ng-template>\n", styles: [".sky-docs-demo-page ::ng-deep p{margin:15px 0}.sky-docs-demo-page ::ng-deep .stache-max-width-container{max-width:none;margin:0}.sky-docs-demo-page ::ng-deep .sky-docs-code-block{margin:15px 0;display:block}.sky-docs-demo-page ::ng-deep .sky-docs-code-block .sky-code-block{font-size:13.5px}.sky-docs-demo-page ::ng-deep .sky-docs-code-block .sky-code-output{margin:-2px 0 0;padding:0 0 0 15px;background:transparent;border:0}.sky-docs-demo-page ::ng-deep .sky-definition-list{margin:0}.sky-docs-demo-page ::ng-deep .sky-definition-list .sky-docs-code-block{margin:0}.sky-docs-demo-page ::ng-deep .sky-docs-type-definition-wrapper{margin-bottom:40px}.sky-docs-demo-page-main{padding:30px 0}.sky-docs-demo-page-main table{margin-top:15px;margin-bottom:15px}.sky-docs-demo-page-main ::ng-deep .sky-tabset{margin-left:-45px;margin-right:-45px;padding-left:45px;padding-right:45px}\n"], dependencies: [{ kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i8.SkyDocsModuleInfoComponent, selector: "sky-docs-module-info", inputs: ["gitRepoUrl", "moduleName", "packageName", "packageUrl"] }, { kind: "component", type: i9.λ1, selector: "sky-tab", inputs: ["active", "disabled", "permalinkValue", "tabHeaderCount", "tabHeading", "tabIndex"], outputs: ["close"] }, { kind: "component", type: i9.λ2, selector: "sky-tabset", inputs: ["active", "ariaLabel", "ariaLabelledBy", "permalinkId", "tabStyle"], outputs: ["activeChange", "newTab", "openTab", "tabIndexesChange"] }, { kind: "component", type: i10.λ30, selector: "stache", inputs: ["pageTitle", "windowTitle", "navTitle", "layout", "sidebarRoutes", "breadcrumbsRoutes", "showBreadcrumbs", "showEditButton", "showFooter", "showTableOfContents", "showBackToTop", "showInNav", "inPageRoutes"] }, { kind: "component", type: i11.SkyDocsDemoPageSectionComponent, selector: "sky-docs-demo-page-section", inputs: ["heading"] }, { kind: "component", type: i12.SkyDocsDemoPageTypeDefinitionsComponent, selector: "sky-docs-demo-page-type-definitions", inputs: ["types"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsDemoPageComponent, decorators: [{
162
- type: Component,
163
- args: [{ selector: 'sky-docs-demo-page', providers: [SkyDocsDemoPageDomAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-docs-demo-page\">\n <stache\n layout=\"sidebar\"\n [pageTitle]=\"pageTitle\"\n [showBreadcrumbs]=\"false\"\n [showTableOfContents]=\"false\"\n [sidebarRoutes]=\"sidebarRoutes\"\n >\n <ng-content select=\"sky-docs-demo-page-summary\"></ng-content>\n\n <ng-content select=\"sky-docs-demo\"></ng-content>\n\n <div class=\"sky-docs-demo-page-main\">\n <sky-tabset *ngIf=\"enableTabLayout; else content\" permalinkId=\"docs\">\n <sky-tab tabHeading=\"Design\" *ngIf=\"!!designGuidelinesComponent\">\n <ng-content select=\"sky-docs-design-guidelines\"></ng-content>\n </sky-tab>\n\n <sky-tab tabHeading=\"Development\">\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </sky-tab>\n\n <sky-tab tabHeading=\"Testing\" *ngIf=\"enableTestingTab\">\n <sky-docs-demo-page-section heading=\"Test harnesses\">\n <p>\n SKY UX test harnesses are built upon Angular CDK component\n harnesses. For more information see the\n <a href=\"https://material.angular.io/cdk/test-harnesses/overview\"\n >Angular CDK component harness documentation</a\n >.\n </p>\n </sky-docs-demo-page-section>\n <sky-docs-demo-page-type-definitions [types]=\"testingTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n </sky-tab>\n\n <sky-tab tabHeading=\"Code examples\" *ngIf=\"enableCodeExamples\">\n <ng-content select=\"sky-docs-code-examples\"></ng-content>\n </sky-tab>\n </sky-tabset>\n </div>\n </stache>\n</div>\n\n<ng-template #content>\n <sky-docs-demo-page-section *ngIf=\"moduleName\" heading=\"Installation\">\n <sky-docs-module-info\n [gitRepoUrl]=\"gitRepoUrl\"\n [moduleName]=\"moduleName\"\n [packageName]=\"packageName\"\n [packageUrl]=\"packageUrl\"\n >\n <ng-content select=\"sky-docs-demo-page-module-info\"></ng-content>\n </sky-docs-module-info>\n </sky-docs-demo-page-section>\n\n <ng-content></ng-content>\n\n <sky-docs-demo-page-type-definitions [types]=\"moduleTypeDefinitions\">\n </sky-docs-demo-page-type-definitions>\n</ng-template>\n", styles: [".sky-docs-demo-page ::ng-deep p{margin:15px 0}.sky-docs-demo-page ::ng-deep .stache-max-width-container{max-width:none;margin:0}.sky-docs-demo-page ::ng-deep .sky-docs-code-block{margin:15px 0;display:block}.sky-docs-demo-page ::ng-deep .sky-docs-code-block .sky-code-block{font-size:13.5px}.sky-docs-demo-page ::ng-deep .sky-docs-code-block .sky-code-output{margin:-2px 0 0;padding:0 0 0 15px;background:transparent;border:0}.sky-docs-demo-page ::ng-deep .sky-definition-list{margin:0}.sky-docs-demo-page ::ng-deep .sky-definition-list .sky-docs-code-block{margin:0}.sky-docs-demo-page ::ng-deep .sky-docs-type-definition-wrapper{margin-bottom:40px}.sky-docs-demo-page-main{padding:30px 0}.sky-docs-demo-page-main table{margin-top:15px;margin-bottom:15px}.sky-docs-demo-page-main ::ng-deep .sky-tabset{margin-left:-45px;margin-right:-45px;padding-left:45px;padding-right:45px}\n"] }]
164
- }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i1.Router }, { type: i2.SkyAppConfig }, { type: i3.SkyDocsDemoPageDomAdapterService }, { type: i4.SkyDocsSupportalService }, { type: i5.SkyDocsDemoPageTitleService }, { type: i6.SkyDocsTypeDefinitionsService }]; }, propDecorators: { additionalSourceCodePaths: [{
165
- type: Input
166
- }], additionalTestingSourceCodePaths: [{
167
- type: Input
168
- }], gitRepoUrl: [{
169
- type: Input
170
- }], moduleName: [{
171
- type: Input
172
- }], moduleSourceCodePath: [{
173
- type: Input
174
- }], packageName: [{
175
- type: Input
176
- }], packageUrl: [{
177
- type: Input
178
- }], pageTitle: [{
179
- type: Input
180
- }], designGuidelinesComponent: [{
181
- type: ContentChild,
182
- args: [SkyDocsDesignGuidelinesComponent]
183
- }], codeExampleComponents: [{
184
- type: ContentChildren,
185
- args: [SkyDocsCodeExamplesComponent]
186
- }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVtby1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvZGVtby1wYWdlL2RlbW8tcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kb2NzLXRvb2xzL3NyYy9tb2R1bGVzL2RlbW8tcGFnZS9kZW1vLXBhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBR0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQztBQVF2QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUV4RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQU1wRyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFNbkY7Ozs7Ozs7Ozs7R0FVRztBQVFILE1BQU0sT0FBTyx3QkFBd0I7SUFHbkM7O09BRUc7SUFDSCxJQUNXLHlCQUF5QixDQUFDLEtBQTJCO1FBQzlELHVCQUFBLElBQUksd0RBQStCLEtBQUssTUFBQSxDQUFDO1FBQ3pDLHVCQUFBLElBQUksa0ZBQWEsTUFBakIsSUFBSSxDQUFlLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVcseUJBQXlCO1FBQ2xDLE9BQU8sdUJBQUEsSUFBSSw0REFBNEIsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNXLGdDQUFnQyxDQUFDLEtBQTJCO1FBQ3JFLHVCQUFBLElBQUksK0RBQXNDLEtBQUssTUFBQSxDQUFDO1FBQ2hELHVCQUFBLElBQUkseUZBQW9CLE1BQXhCLElBQUksQ0FBc0IsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxnQ0FBZ0M7UUFDekMsT0FBTyx1QkFB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IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgU2t5QXBwQ29uZmlnIH0gZnJvbSAnQHNreXV4L2NvbmZpZyc7XG5cbmltcG9ydCB7IFN0YWNoZU5hdkxpbmsgfSBmcm9tICdAYmxhY2tiYXVkL3NreXV4LWxpYi1zdGFjaGUnO1xuXG5pbXBvcnQgeyBTa3lEb2NzQ29kZUV4YW1wbGVzQ29tcG9uZW50IH0gZnJvbSAnLi4vY29kZS1leGFtcGxlcy9jb2RlLWV4YW1wbGVzLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFNreURvY3NEZXNpZ25HdWlkZWxpbmVzQ29tcG9uZW50IH0gZnJvbSAnLi4vZGVzaWduLWd1aWRlbGluZXMvZGVzaWduLWd1aWRlbGluZXMuY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc1N1cHBvcnRhbFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvZG9jcy10b29scy1zdXBwb3J0YWwuc2VydmljZSc7XG5cbmltcG9ydCB7IFNreURvY3NDb21wb25lbnRJbmZvIH0gZnJvbSAnLi4vc2hhcmVkL2RvY3MtdG9vbHMtY29tcG9uZW50LWluZm8nO1xuXG5pbXBvcnQgeyBTa3lEb2NzRGVtb1BhZ2VEb21BZGFwdGVyU2VydmljZSB9IGZyb20gJy4vZGVtby1wYWdlLWRvbS1hZGFwdGVyLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lEb2NzRGVtb1BhZ2VUaXRsZVNlcnZpY2UgfSBmcm9tICcuL2RlbW8tcGFnZS10aXRsZS5zZXJ2aWNlJztcbmltcG9ydCB7IFNreURvY3NUeXBlRGVmaW5pdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vdHlwZS1kZWZpbml0aW9ucy90eXBlLWRlZmluaXRpb25zLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5RG9jc1R5cGVEZWZpbml0aW9ucyB9IGZyb20gJy4uL3R5cGUtZGVmaW5pdGlvbnMvdHlwZS1kZWZpbml0aW9ucyc7XG5cbi8qKlxuICogVGhlIGRlbW8gcGFnZSBjb21wb25lbnQgd3JhcHMgYWxsIGRvY3VtZW50YXRpb24gY29tcG9uZW50cyBhbmQgaGFuZGxlcyB0aGUgY29uZmlndXJhdGlvbiBhbmQgbGF5b3V0IG9mIHRoZSBwYWdlLlxuICogQGV4YW1wbGVcbiAqIGBgYFxuICogPHNreS1kb2NzLWRlbW8tcGFnZVxuICogICBwYWdlVGl0bGU9XCJNeSBkZW1vIHBhZ2VcIlxuICogPlxuICogICBDb250ZW50IGhlcmUuXG4gKiA8L3NreS1kb2NzLWRlbW8tcGFnZT5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZG9jcy1kZW1vLXBhZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVtby1wYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGVtby1wYWdlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1NreURvY3NEZW1vUGFnZURvbUFkYXB0ZXJTZXJ2aWNlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY3NEZW1vUGFnZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdFxue1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBsb2NhbCBwYXRoIHRvIGFueSBvdGhlciByZWxldmFudCBzb3VyY2UgY29kZS4gVGhlIHZhbHVlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzKHBhdGhzOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19hZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzID0gcGF0aHM7XG4gICAgdGhpcy4jdXBkYXRlVHlwZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWRkaXRpb25hbFNvdXJjZUNvZGVQYXRocygpOiBzdHJpbmdbXSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19hZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbG9jYWwgcGF0aCB0byBhbnkgb3RoZXIgcmVsZXZhbnQgdGVzdGluZyBzb3VyY2UgY29kZS4gVGhlIHZhbHVlcyBhcmUgcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhZGRpdGlvbmFsVGVzdGluZ1NvdXJjZUNvZGVQYXRocyhwYXRoczogc3RyaW5nW10gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfYWRkaXRpb25hbFRlc3RpbmdTb3VyY2VDb2RlUGF0aHMgPSBwYXRocztcbiAgICB0aGlzLiN1cGRhdGVUZXN0aW5nVHlwZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWRkaXRpb25hbFRlc3RpbmdTb3VyY2VDb2RlUGF0aHMoKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfYWRkaXRpb25hbFRlc3RpbmdTb3VyY2VDb2RlUGF0aHM7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBVUkwgdG8gdGhlIHJlcG8gdGhhdCBzdG9yZXMgdGhlIG1vZHVsZSdzIHNvdXJjZSBjb2RlLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnaXRSZXBvVXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgVHlwZVNjcmlwdCBjbGFzcyBuYW1lIG9mIHRoZSBtb2R1bGUuIEZvciBleGFtcGxlLCBgU2t5U2FtcGxlTW9kdWxlYC5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbW9kdWxlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGxvY2FsIHBhdGggdG8gdGhlIG1vZHVsZSdzIHNvdXJjZSBjb2RlLiBUaGUgdmFsdWUgaXMgcmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBtb2R1bGVTb3VyY2VDb2RlUGF0aChwYXRoOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfbW9kdWxlU291cmNlQ29kZVBhdGggPSBwYXRoO1xuICAgIHRoaXMudGVzdGluZ1NvdXJjZUNvZGVQYXRoID0gcGF0aC5yZXBsYWNlKCcvbW9kdWxlcy8nLCAnL3Rlc3RpbmcvJyk7XG4gICAgdGhpcy4jdXBkYXRlVHlwZXMoKTtcbiAgICB0aGlzLiN1cGRhdGVUZXN0aW5nVHlwZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbW9kdWxlU291cmNlQ29kZVBhdGgoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX21vZHVsZVNvdXJjZUNvZGVQYXRoO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdHlwZSBkZWZpbml0aW9ucyBmb3IgdGhlIGRldmVsb3BtZW50IHRhYi5cbiAgICovXG4gIHB1YmxpYyBtb2R1bGVUeXBlRGVmaW5pdGlvbnM6IFNreURvY3NUeXBlRGVmaW5pdGlvbnMgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbG9jYWwgcGF0aCB0byB0aGUgdGVzdGluZyBzb3VyY2UgY29kZS4gVGhlIHZhbHVlIGlzIHJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeS5cbiAgICovXG4gIHB1YmxpYyB0ZXN0aW5nU291cmNlQ29kZVBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIGRlZmluaXRpb25zIGZvciB0aGUgdGVzdGluZyB0YWIuXG4gICAqL1xuICBwdWJsaWMgdGVzdGluZ1R5cGVEZWZpbml0aW9uczogU2t5RG9jc1R5cGVEZWZpbml0aW9ucyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBxdWFsaWZpZWQgbmFtZSBvZiB0aGUgTlBNIHBhY2thZ2UuIEZvciBleGFtcGxlLCBgQGJsYWNrYmF1ZC9zYW1wbGVgLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWNrYWdlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIFVSTCB0byB0aGUgTlBNIHBhY2thZ2UuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFja2FnZVVybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHByaW1hcnkgcGFnZSBoZWFkaW5nLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwYWdlVGl0bGU6IHN0cmluZztcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlQ29kZUV4YW1wbGVzID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGVuYWJsZVRlc3RpbmdUYWIgPSBmYWxzZTtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlVGFiTGF5b3V0ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNpZGViYXJSb3V0ZXM6IFN0YWNoZU5hdkxpbmtbXTtcblxuICBAQ29udGVudENoaWxkKFNreURvY3NEZXNpZ25HdWlkZWxpbmVzQ29tcG9uZW50KVxuICBwcml2YXRlIGRlc2lnbkd1aWRlbGluZXNDb21wb25lbnQ6IFNreURvY3NEZXNpZ25HdWlkZWxpbmVzQ29tcG9uZW50O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oU2t5RG9jc0NvZGVFeGFtcGxlc0NvbXBvbmVudClcbiAgcHJpdmF0ZSBjb2RlRXhhbXBsZUNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxTa3lEb2NzQ29kZUV4YW1wbGVzQ29tcG9uZW50PjtcblxuICAjX2FkZGl0aW9uYWxTb3VyY2VDb2RlUGF0aHM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICAjX2FkZGl0aW9uYWxUZXN0aW5nU291cmNlQ29kZVBhdGhzOiBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgI19tb2R1bGVTb3VyY2VDb2RlUGF0aDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBza3lBcHBDb25maWc6IFNreUFwcENvbmZpZyxcbiAgICBwcml2YXRlIGRvbUFkYXB0ZXI6IFNreURvY3NEZW1vUGFnZURvbUFkYXB0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3VwcG9ydGFsU2VydmljZTogU2t5RG9jc1N1cHBvcnRhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0aXRsZVNlcnZpY2U6IFNreURvY3NEZW1vUGFnZVRpdGxlU2VydmljZSxcbiAgICBwcml2YXRlIHR5cGVEZWZpbml0aW9uU2VydmljZTogU2t5RG9jc1R5cGVEZWZpbml0aW9uc1NlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50SG9zdFVybCA9XG4gICAgICB0aGlzLnNreUFwcENvbmZpZy5za3l1eC5ob3N0LnVybCArICcvJyArIHRoaXMuc2t5QXBwQ29uZmlnLnNreXV4Lm5hbWU7XG4gICAgdGhpcy51cGRhdGVUaXRsZSgpO1xuXG4gICAgdGhpcy5zdXBwb3J0YWxTZXJ2aWNlXG4gICAgICAuZ2V0Q29tcG9uZW50c0luZm8oKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0czogU2t5RG9jc0NvbXBvbmVudEluZm9bXSkgPT4ge1xuICAgICAgICB0aGlzLnNpZGViYXJSb3V0ZXMgPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0NvbXBvbmVudHMnLFxuICAgICAgICAgICAgcGF0aDogJ2h0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cycsXG4gICAgICAgICAgICBjaGlsZHJlbjogcmVzdWx0cy5tYXAoKGNvbXBvbmVudDogU2t5RG9jc0NvbXBvbmVudEluZm8pID0+ICh7XG4gICAgICAgICAgICAgIG5hbWU6IGNvbXBvbmVudC5uYW1lLFxuICAgICAgICAgICAgICBwYXRoOiB0aGlzLmdldFBhdGgoY29tcG9uZW50LnVybCwgY3VycmVudEhvc3RVcmwpLFxuICAgICAgICAgICAgfSkpLFxuICAgICAgICAgIH0sXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lbmFibGVDb2RlRXhhbXBsZXMgPSB0aGlzLmNvZGVFeGFtcGxlQ29tcG9uZW50cy5sZW5ndGggPiAwO1xuICAgIHRoaXMuZW5hYmxlVGFiTGF5b3V0ID1cbiAgICAgICEhdGhpcy5kZXNpZ25HdWlkZWxpbmVzQ29tcG9uZW50IHx8IHRoaXMuZW5hYmxlQ29kZUV4YW1wbGVzO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBXYXRjaCBmb3Igcm91dGUgZnJhZ21lbnQgdG8gY2hhbmdlIGFuZCBzY3JvbGwgdG8gaGVhZGluZy5cbiAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLmZyYWdtZW50LnN1YnNjcmliZSgoZnJhZ21lbnQpID0+IHtcbiAgICAgIHRoaXMuZG9tQWRhcHRlci5zY3JvbGxUb0ZyYWdtZW50KGZyYWdtZW50KTtcbiAgICB9KTtcblxuICAgIC8vIENoYW5nZSB0aGUgSFJFRiBhdHRyaWJ1dGUgZm9yIGFsbCBkeW5hbWljIGxpbmtzIHdoZW4gdGhlIHF1ZXJ5IHBhcmFtcyBjaGFuZ2UuXG4gICAgLy8gVGhpcyB3aWxsIGFsc28gZ2VuZXJhdGUgdGhlIGFwcHJvcHJpYXRlIEhSRUYgaWYgdGhlIHVzZXIgd2FudHMgdG8gb3BlbiB0aGUgbGluayBpbiBhIG5ldyB3aW5kb3cuXG4gICAgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5kb21BZGFwdGVyLnNldHVwQW5jaG9yTGlua3MoKTtcbiAgICB9KTtcblxuICAgIC8vIFdoZW4gYSBkeW5hbWljIGxpbmsgaXMgY2xpY2tlZCwgdXNlIEFuZ3VsYXIncyByb3V0ZXIgc28gdGhhdCBldmVyeXRoaW5nIHdvcmtzIGNvcnJlY3RseS5cbiAgICB0aGlzLmRvbUFkYXB0ZXIuYW5jaG9yTGlua0NsaWNrLnN1YnNjcmliZSgoYW5jaG9yTGluazogYW55KSA9PiB7XG4gICAgICBjb25zdCBmcmFnbWVudCA9IGFuY2hvckxpbmsuaHJlZi5zcGxpdCgnIycpWzFdO1xuXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgICBmcmFnbWVudCxcbiAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAodGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5mcmFnbWVudCA9PT0gZnJhZ21lbnQpIHtcbiAgICAgICAgdGhpcy5kb21BZGFwdGVyLnNjcm9sbFRvRnJhZ21lbnQoZnJhZ21lbnQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVUaXRsZSgpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlKi9cbiAgICBpZiAodGhpcy5wYWdlVGl0bGUpIHtcbiAgICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKHRoaXMucGFnZVRpdGxlLCAnQ29tcG9uZW50cycpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF0aCh1cmw6IHN0cmluZywgY3VycmVudEhvc3RVcmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgLy8gUmVwbGFjZSBob3N0ICsgU1BBIHNvIFN0YWNoZSB3aWxsIG1hcmsgYWN0aXZlLlxuICAgIC8vIFN0cmlwIFVSTCBwYXJhbXMgaXMgdXJsIGlzIGxvY2FsLCBhcyB0aG9zZSB3aWxsIGJlIHByZXNlcnZlZCBieSBzdGFjaGVSb3V0ZXJMaW5rLlxuICAgIGlmICh1cmwuaW5kZXhPZihjdXJyZW50SG9zdFVybCkgPiAtMSkge1xuICAgICAgcmV0dXJuIHVybC5yZXBsYWNlKGN1cnJlbnRIb3N0VXJsLCAnJykuc3BsaXQoJz8nKVswXTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVybDtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlVHlwZXMoKTogdm9pZCB7XG4gICAgdGhpcy5tb2R1bGVUeXBlRGVmaW5pdGlvbnMgPSB0aGlzLnR5cGVEZWZpbml0aW9uU2VydmljZS5nZXRUeXBlRGVmaW5pdGlvbnMoXG4gICAgICB0aGlzLm1vZHVsZVNvdXJjZUNvZGVQYXRoLFxuICAgICAgdGhpcy5hZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzXG4gICAgKTtcbiAgfVxuXG4gICN1cGRhdGVUZXN0aW5nVHlwZXMoKTogdm9pZCB7XG4gICAgdGhpcy50ZXN0aW5nVHlwZURlZmluaXRpb25zID0gdGhpcy50eXBlRGVmaW5pdGlvblNlcnZpY2UuZ2V0VHlwZURlZmluaXRpb25zKFxuICAgICAgdGhpcy50ZXN0aW5nU291cmNlQ29kZVBhdGgsXG4gICAgICB0aGlzLmFkZGl0aW9uYWxUZXN0aW5nU291cmNlQ29kZVBhdGhzXG4gICAgKTtcbiAgICB0aGlzLmVuYWJsZVRlc3RpbmdUYWIgPSBPYmplY3QudmFsdWVzKHRoaXMudGVzdGluZ1R5cGVEZWZpbml0aW9ucykuc29tZShcbiAgICAgICh2YWx1ZSkgPT4gdmFsdWUgJiYgdmFsdWUubGVuZ3RoID4gMFxuICAgICk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZG9jcy1kZW1vLXBhZ2VcIj5cbiAgPHN0YWNoZVxuICAgIGxheW91dD1cInNpZGViYXJcIlxuICAgIFtwYWdlVGl0bGVdPVwicGFnZVRpdGxlXCJcbiAgICBbc2hvd0JyZWFkY3J1bWJzXT1cImZhbHNlXCJcbiAgICBbc2hvd1RhYmxlT2ZDb250ZW50c109XCJmYWxzZVwiXG4gICAgW3NpZGViYXJSb3V0ZXNdPVwic2lkZWJhclJvdXRlc1wiXG4gID5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZG9jcy1kZW1vLXBhZ2Utc3VtbWFyeVwiPjwvbmctY29udGVudD5cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kb2NzLWRlbW9cIj48L25nLWNvbnRlbnQ+XG5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LWRvY3MtZGVtby1wYWdlLW1haW5cIj5cbiAgICAgIDxza3ktdGFic2V0ICpuZ0lmPVwiZW5hYmxlVGFiTGF5b3V0OyBlbHNlIGNvbnRlbnRcIiBwZXJtYWxpbmtJZD1cImRvY3NcIj5cbiAgICAgICAgPHNreS10YWIgdGFiSGVhZGluZz1cIkRlc2lnblwiICpuZ0lmPVwiISFkZXNpZ25HdWlkZWxpbmVzQ29tcG9uZW50XCI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRvY3MtZGVzaWduLWd1aWRlbGluZXNcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvc2t5LXRhYj5cblxuICAgICAgICA8c2t5LXRhYiB0YWJIZWFkaW5nPVwiRGV2ZWxvcG1lbnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9za3ktdGFiPlxuXG4gICAgICAgIDxza3ktdGFiIHRhYkhlYWRpbmc9XCJUZXN0aW5nXCIgKm5nSWY9XCJlbmFibGVUZXN0aW5nVGFiXCI+XG4gICAgICAgICAgPHNreS1kb2NzLWRlbW8tcGFnZS1zZWN0aW9uIGhlYWRpbmc9XCJUZXN0IGhhcm5lc3Nlc1wiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIFNLWSBVWCB0ZXN0IGhhcm5lc3NlcyBhcmUgYnVpbHQgdXBvbiBBbmd1bGFyIENESyBjb21wb25lbnRcbiAgICAgICAgICAgICAgaGFybmVzc2VzLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBzZWUgdGhlXG4gICAgICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL21hdGVyaWFsLmFuZ3VsYXIuaW8vY2RrL3Rlc3QtaGFybmVzc2VzL292ZXJ2aWV3XCJcbiAgICAgICAgICAgICAgICA+QW5ndWxhciBDREsgY29tcG9uZW50IGhhcm5lc3MgZG9jdW1lbnRhdGlvbjwvYVxuICAgICAgICAgICAgICA+LlxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgIDwvc2t5LWRvY3MtZGVtby1wYWdlLXNlY3Rpb24+XG4gICAgICAgICAgPHNreS1kb2NzLWRlbW8tcGFnZS10eXBlLWRlZmluaXRpb25zIFt0eXBlc109XCJ0ZXN0aW5nVHlwZURlZmluaXRpb25zXCI+XG4gICAgICAgICAgPC9za3ktZG9jcy1kZW1vLXBhZ2UtdHlwZS1kZWZpbml0aW9ucz5cbiAgICAgICAgPC9za3ktdGFiPlxuXG4gICAgICAgIDxza3ktdGFiIHRhYkhlYWRpbmc9XCJDb2RlIGV4YW1wbGVzXCIgKm5nSWY9XCJlbmFibGVDb2RlRXhhbXBsZXNcIj5cbiAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZG9jcy1jb2RlLWV4YW1wbGVzXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8L3NreS10YWI+XG4gICAgICA8L3NreS10YWJzZXQ+XG4gICAgPC9kaXY+XG4gIDwvc3RhY2hlPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPHNreS1kb2NzLWRlbW8tcGFnZS1zZWN0aW9uICpuZ0lmPVwibW9kdWxlTmFtZVwiIGhlYWRpbmc9XCJJbnN0YWxsYXRpb25cIj5cbiAgICA8c2t5LWRvY3MtbW9kdWxlLWluZm9cbiAgICAgIFtnaXRSZXBvVXJsXT1cImdpdFJlcG9VcmxcIlxuICAgICAgW21vZHVsZU5hbWVdPVwibW9kdWxlTmFtZVwiXG4gICAgICBbcGFja2FnZU5hbWVdPVwicGFja2FnZU5hbWVcIlxuICAgICAgW3BhY2thZ2VVcmxdPVwicGFja2FnZVVybFwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRvY3MtZGVtby1wYWdlLW1vZHVsZS1pbmZvXCI+PC9uZy1jb250ZW50PlxuICAgIDwvc2t5LWRvY3MtbW9kdWxlLWluZm8+XG4gIDwvc2t5LWRvY3MtZGVtby1wYWdlLXNlY3Rpb24+XG5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gIDxza3ktZG9jcy1kZW1vLXBhZ2UtdHlwZS1kZWZpbml0aW9ucyBbdHlwZXNdPVwibW9kdWxlVHlwZURlZmluaXRpb25zXCI+XG4gIDwvc2t5LWRvY3MtZGVtby1wYWdlLXR5cGUtZGVmaW5pdGlvbnM+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,74 +0,0 @@
1
- var _SkyDocsModuleInfoComponent_instances, _SkyDocsModuleInfoComponent_options, _SkyDocsModuleInfoComponent_packageUrl, _SkyDocsModuleInfoComponent_updateExternalLinks, _SkyDocsModuleInfoComponent_updateInstallationCommand;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, Input, Optional, } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../shared/docs-tools-options";
6
- import * as i2 from "@angular/common";
7
- import * as i3 from "@blackbaud/skyux-lib-code-block";
8
- import * as i4 from "@blackbaud/skyux-lib-clipboard";
9
- import * as i5 from "@skyux/layout";
10
- import * as i6 from "@skyux/indicators";
11
- import * as i7 from "@skyux/popovers";
12
- export class SkyDocsModuleInfoComponent {
13
- set gitRepoUrl(value) {
14
- this.gitRepoUrlOrDefault = value || __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_options, "f")?.gitRepoUrl;
15
- __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_instances, "m", _SkyDocsModuleInfoComponent_updateExternalLinks).call(this);
16
- }
17
- set packageName(value) {
18
- this.packageNameOrDefault = value || __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_options, "f")?.packageName;
19
- __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_instances, "m", _SkyDocsModuleInfoComponent_updateInstallationCommand).call(this);
20
- __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_instances, "m", _SkyDocsModuleInfoComponent_updateExternalLinks).call(this);
21
- }
22
- set packageUrl(value) {
23
- __classPrivateFieldSet(this, _SkyDocsModuleInfoComponent_packageUrl, value, "f");
24
- __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_instances, "m", _SkyDocsModuleInfoComponent_updateExternalLinks).call(this);
25
- }
26
- constructor(options) {
27
- _SkyDocsModuleInfoComponent_instances.add(this);
28
- _SkyDocsModuleInfoComponent_options.set(this, void 0);
29
- _SkyDocsModuleInfoComponent_packageUrl.set(this, void 0);
30
- if (options) {
31
- __classPrivateFieldSet(this, _SkyDocsModuleInfoComponent_options, options, "f");
32
- this.gitRepoUrl = options.gitRepoUrl;
33
- this.packageName = options.packageName;
34
- }
35
- }
36
- }
37
- _SkyDocsModuleInfoComponent_options = new WeakMap(), _SkyDocsModuleInfoComponent_packageUrl = new WeakMap(), _SkyDocsModuleInfoComponent_instances = new WeakSet(), _SkyDocsModuleInfoComponent_updateExternalLinks = function _SkyDocsModuleInfoComponent_updateExternalLinks() {
38
- const externalLinks = [];
39
- if (this.packageNameOrDefault) {
40
- externalLinks.push({
41
- url: __classPrivateFieldGet(this, _SkyDocsModuleInfoComponent_packageUrl, "f") ||
42
- `https://npmjs.org/package/${this.packageNameOrDefault}`,
43
- label: 'View in NPM',
44
- });
45
- }
46
- if (this.gitRepoUrlOrDefault) {
47
- externalLinks.push({
48
- url: this.gitRepoUrlOrDefault,
49
- label: 'View in GitHub',
50
- });
51
- }
52
- this.externalLinks = externalLinks;
53
- }, _SkyDocsModuleInfoComponent_updateInstallationCommand = function _SkyDocsModuleInfoComponent_updateInstallationCommand() {
54
- this.installationCommand = this.packageNameOrDefault
55
- ? `npm install --save-exact ${this.packageNameOrDefault}`
56
- : '';
57
- };
58
- SkyDocsModuleInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsModuleInfoComponent, deps: [{ token: i1.SkyDocsToolsOptions, optional: true }], target: i0.ɵɵFactoryTarget.Component });
59
- SkyDocsModuleInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDocsModuleInfoComponent, selector: "sky-docs-module-info", inputs: { gitRepoUrl: "gitRepoUrl", moduleName: "moduleName", packageName: "packageName", packageUrl: "packageUrl" }, ngImport: i0, template: "<div class=\"sky-docs-module-info\">\n <sky-description-list mode=\"vertical\">\n <sky-description-list-content>\n <sky-description-list-term> Defined in </sky-description-list-term>\n <sky-description-list-description>\n <sky-code class=\"sky-docs-module-info-module-name\">{{\n moduleName\n }}</sky-code>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"packageNameOrDefault\">\n <sky-description-list-term>NPM package</sky-description-list-term>\n <sky-description-list-description>\n <span class=\"sky-docs-module-info-package-name\"\n ><sky-code>{{ packageNameOrDefault }}</sky-code></span\n >\n <ng-container *ngFor=\"let externalLink of externalLinks; let i = index\">\n <a\n class=\"sky-docs-module-info-external-link\"\n [href]=\"externalLink.url\"\n >{{ externalLink.label }}</a\n >\n <span *ngIf=\"i < externalLinks.length - 1\"> | </span>\n </ng-container>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"installationCommand\">\n <sky-description-list-term>\n Installation\n <sky-help-inline\n class=\"sky-control-help\"\n [skyPopover]=\"installationCommandPopover\"\n skyPopoverPlacement=\"right\"\n >\n </sky-help-inline>\n </sky-description-list-term>\n <sky-description-list-description>\n <sky-popover #installationCommandPopover>\n To use this module, you must install peer dependencies along with its\n package. Also, after you install the package, you must add the module\n as an export in your SPA's main module to make exports available to\n your SPA.\n </sky-popover>\n <div class=\"sky-docs-module-info-installation-command\">\n <span\n class=\"sky-docs-module-info-installation-command-code\"\n #copyTarget\n >\n <sky-code>{{ installationCommand }}</sky-code>\n </span>\n <sky-copy-to-clipboard\n buttonText=\"Copy\"\n [copyTarget]=\"copyTarget\"\n ></sky-copy-to-clipboard>\n </div>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n\n <div class=\"sky-docs-module-info-additional-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [".sky-docs-module-info-installation-command{display:flex}.sky-docs-module-info-installation-command-code,.sky-docs-module-info-package-name{margin-right:10px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.λ1, selector: "sky-code" }, { kind: "component", type: i4.λ1, selector: "sky-copy-to-clipboard", inputs: ["ariaLabel", "ariaLabelledBy", "copyTarget", "buttonText", "buttonClickedText", "title"] }, { kind: "component", type: i5.λ18, selector: "sky-description-list", inputs: ["defaultDescription", "listItemWidth", "mode"] }, { kind: "component", type: i5.λ21, selector: "sky-description-list-content" }, { kind: "component", type: i5.λ19, selector: "sky-description-list-term" }, { kind: "component", type: i5.λ20, selector: "sky-description-list-description" }, { kind: "component", type: i6.λ3, selector: "sky-help-inline", inputs: ["ariaControls", "ariaExpanded", "ariaLabel"], outputs: ["actionClick"] }, { kind: "component", type: i7.λ6, selector: "sky-popover", inputs: ["alignment", "dismissOnBlur", "placement", "popoverTitle", "popoverType"], outputs: ["popoverClosed", "popoverOpened"] }, { kind: "directive", type: i7.λ7, selector: "[skyPopover]", inputs: ["skyPopover", "skyPopoverAlignment", "skyPopoverMessageStream", "skyPopoverPlacement", "skyPopoverTrigger"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsModuleInfoComponent, decorators: [{
61
- type: Component,
62
- args: [{ selector: 'sky-docs-module-info', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-docs-module-info\">\n <sky-description-list mode=\"vertical\">\n <sky-description-list-content>\n <sky-description-list-term> Defined in </sky-description-list-term>\n <sky-description-list-description>\n <sky-code class=\"sky-docs-module-info-module-name\">{{\n moduleName\n }}</sky-code>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"packageNameOrDefault\">\n <sky-description-list-term>NPM package</sky-description-list-term>\n <sky-description-list-description>\n <span class=\"sky-docs-module-info-package-name\"\n ><sky-code>{{ packageNameOrDefault }}</sky-code></span\n >\n <ng-container *ngFor=\"let externalLink of externalLinks; let i = index\">\n <a\n class=\"sky-docs-module-info-external-link\"\n [href]=\"externalLink.url\"\n >{{ externalLink.label }}</a\n >\n <span *ngIf=\"i < externalLinks.length - 1\"> | </span>\n </ng-container>\n </sky-description-list-description>\n </sky-description-list-content>\n\n <sky-description-list-content *ngIf=\"installationCommand\">\n <sky-description-list-term>\n Installation\n <sky-help-inline\n class=\"sky-control-help\"\n [skyPopover]=\"installationCommandPopover\"\n skyPopoverPlacement=\"right\"\n >\n </sky-help-inline>\n </sky-description-list-term>\n <sky-description-list-description>\n <sky-popover #installationCommandPopover>\n To use this module, you must install peer dependencies along with its\n package. Also, after you install the package, you must add the module\n as an export in your SPA's main module to make exports available to\n your SPA.\n </sky-popover>\n <div class=\"sky-docs-module-info-installation-command\">\n <span\n class=\"sky-docs-module-info-installation-command-code\"\n #copyTarget\n >\n <sky-code>{{ installationCommand }}</sky-code>\n </span>\n <sky-copy-to-clipboard\n buttonText=\"Copy\"\n [copyTarget]=\"copyTarget\"\n ></sky-copy-to-clipboard>\n </div>\n </sky-description-list-description>\n </sky-description-list-content>\n </sky-description-list>\n\n <div class=\"sky-docs-module-info-additional-content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [".sky-docs-module-info-installation-command{display:flex}.sky-docs-module-info-installation-command-code,.sky-docs-module-info-package-name{margin-right:10px}\n"] }]
63
- }], ctorParameters: function () { return [{ type: i1.SkyDocsToolsOptions, decorators: [{
64
- type: Optional
65
- }] }]; }, propDecorators: { gitRepoUrl: [{
66
- type: Input
67
- }], moduleName: [{
68
- type: Input
69
- }], packageName: [{
70
- type: Input
71
- }], packageUrl: [{
72
- type: Input
73
- }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZG9jcy10b29scy9zcmMvbW9kdWxlcy9tb2R1bGUtaW5mby9tb2R1bGUtaW5mby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kb2NzLXRvb2xzL3NyYy9tb2R1bGVzL21vZHVsZS1pbmZvL21vZHVsZS1pbmZvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBWXZCLE1BQU0sT0FBTywwQkFBMEI7SUFDckMsSUFDVyxVQUFVLENBQUMsS0FBeUI7UUFDN0MsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssSUFBSSx1QkFBQSxJQUFJLDJDQUFTLEVBQUUsVUFBVSxDQUFDO1FBQzlELHVCQUFBLElBQUksOEZBQXFCLE1BQXpCLElBQUksQ0FBdUIsQ0FBQztJQUM5QixDQUFDO0lBS0QsSUFDVyxXQUFXLENBQUMsS0FBeUI7UUFDOUMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssSUFBSSx1QkFBQSxJQUFJLDJDQUFTLEVBQUUsV0FBVyxDQUFDO1FBQ2hFLHVCQUFBLElBQUksb0dBQTJCLE1BQS9CLElBQUksQ0FBNkIsQ0FBQztRQUNsQyx1QkFBQSxJQUFJLDhGQUFxQixNQUF6QixJQUFJLENBQXVCLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQ1csVUFBVSxDQUFDLEtBQXlCO1FBQzdDLHVCQUFBLElBQUksMENBQWUsS0FBSyxNQUFBLENBQUM7UUFDekIsdUJBQUEsSUFBSSw4RkFBcUIsTUFBekIsSUFBSSxDQUF1QixDQUFDO0lBQzlCLENBQUM7SUFjRCxZQUF3QixPQUE2Qjs7UUFKckQsc0RBQTBDO1FBRTFDLHlEQUFnQztRQUc5QixJQUFJLE9BQU8sRUFBRTtZQUNYLHVCQUFBLElBQUksdUNBQVksT0FBTyxNQUFBLENBQUM7WUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQztTQUN4QztJQUNILENBQUM7OztJQUdDLE1BQU0sYUFBYSxHQUFtQixFQUFFLENBQUM7SUFFekMsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7UUFDN0IsYUFBYSxDQUFDLElBQUksQ0FBQztZQUNqQixHQUFHLEVBQ0QsdUJBQUEsSUFBSSw4Q0FBWTtnQkFDaEIsNkJBQTZCLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUMxRCxLQUFLLEVBQUUsYUFBYTtTQUNyQixDQUFDLENBQUM7S0FDSjtJQUVELElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFO1FBQzVCLGFBQWEsQ0FBQyxJQUFJLENBQUM7WUFDakIsR0FBRyxFQUFFLElBQUksQ0FBQyxtQkFBbUI7WUFDN0IsS0FBSyxFQUFFLGdCQUFnQjtTQUN4QixDQUFDLENBQUM7S0FDSjtJQUVELElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0FBQ3JDLENBQUM7SUFHQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQjtRQUNsRCxDQUFDLENBQUMsNEJBQTRCLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtRQUN6RCxDQUFDLENBQUMsRUFBRSxDQUFDO0FBQ1QsQ0FBQzt1SEFyRVUsMEJBQTBCOzJHQUExQiwwQkFBMEIsa0xDakJ2QyxnZ0ZBaUVBOzJGRGhEYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU07OzBCQXFDbEMsUUFBUTs0Q0FqQ1YsVUFBVTtzQkFEcEIsS0FBSztnQkFPQyxVQUFVO3NCQURoQixLQUFLO2dCQUlLLFdBQVc7c0JBRHJCLEtBQUs7Z0JBUUssVUFBVTtzQkFEcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNreURvY3NUb29sc09wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvZG9jcy10b29scy1vcHRpb25zJztcblxudHlwZSBFeHRlcm5hbExpbmsgPSB7IGxhYmVsOiBzdHJpbmc7IHVybDogc3RyaW5nIH07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kb2NzLW1vZHVsZS1pbmZvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZHVsZS1pbmZvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kdWxlLWluZm8uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY3NNb2R1bGVJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBnaXRSZXBvVXJsKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLmdpdFJlcG9VcmxPckRlZmF1bHQgPSB2YWx1ZSB8fCB0aGlzLiNvcHRpb25zPy5naXRSZXBvVXJsO1xuICAgIHRoaXMuI3VwZGF0ZUV4dGVybmFsTGlua3MoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtb2R1bGVOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwYWNrYWdlTmFtZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5wYWNrYWdlTmFtZU9yRGVmYXVsdCA9IHZhbHVlIHx8IHRoaXMuI29wdGlvbnM/LnBhY2thZ2VOYW1lO1xuICAgIHRoaXMuI3VwZGF0ZUluc3RhbGxhdGlvbkNvbW1hbmQoKTtcbiAgICB0aGlzLiN1cGRhdGVFeHRlcm5hbExpbmtzKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHBhY2thZ2VVcmwodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI3BhY2thZ2VVcmwgPSB2YWx1ZTtcbiAgICB0aGlzLiN1cGRhdGVFeHRlcm5hbExpbmtzKCk7XG4gIH1cblxuICBwdWJsaWMgZ2l0UmVwb1VybE9yRGVmYXVsdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBwYWNrYWdlTmFtZU9yRGVmYXVsdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBleHRlcm5hbExpbmtzOiBFeHRlcm5hbExpbmtbXSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgaW5zdGFsbGF0aW9uQ29tbWFuZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICNvcHRpb25zOiBTa3lEb2NzVG9vbHNPcHRpb25zIHwgdW5kZWZpbmVkO1xuXG4gICNwYWNrYWdlVXJsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgb3B0aW9ucz86IFNreURvY3NUb29sc09wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucykge1xuICAgICAgdGhpcy4jb3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICB0aGlzLmdpdFJlcG9VcmwgPSBvcHRpb25zLmdpdFJlcG9Vcmw7XG4gICAgICB0aGlzLnBhY2thZ2VOYW1lID0gb3B0aW9ucy5wYWNrYWdlTmFtZTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlRXh0ZXJuYWxMaW5rcygpOiB2b2lkIHtcbiAgICBjb25zdCBleHRlcm5hbExpbmtzOiBFeHRlcm5hbExpbmtbXSA9IFtdO1xuXG4gICAgaWYgKHRoaXMucGFja2FnZU5hbWVPckRlZmF1bHQpIHtcbiAgICAgIGV4dGVybmFsTGlua3MucHVzaCh7XG4gICAgICAgIHVybDpcbiAgICAgICAgICB0aGlzLiNwYWNrYWdlVXJsIHx8XG4gICAgICAgICAgYGh0dHBzOi8vbnBtanMub3JnL3BhY2thZ2UvJHt0aGlzLnBhY2thZ2VOYW1lT3JEZWZhdWx0fWAsXG4gICAgICAgIGxhYmVsOiAnVmlldyBpbiBOUE0nLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ2l0UmVwb1VybE9yRGVmYXVsdCkge1xuICAgICAgZXh0ZXJuYWxMaW5rcy5wdXNoKHtcbiAgICAgICAgdXJsOiB0aGlzLmdpdFJlcG9VcmxPckRlZmF1bHQsXG4gICAgICAgIGxhYmVsOiAnVmlldyBpbiBHaXRIdWInLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5leHRlcm5hbExpbmtzID0gZXh0ZXJuYWxMaW5rcztcbiAgfVxuXG4gICN1cGRhdGVJbnN0YWxsYXRpb25Db21tYW5kKCk6IHZvaWQge1xuICAgIHRoaXMuaW5zdGFsbGF0aW9uQ29tbWFuZCA9IHRoaXMucGFja2FnZU5hbWVPckRlZmF1bHRcbiAgICAgID8gYG5wbSBpbnN0YWxsIC0tc2F2ZS1leGFjdCAke3RoaXMucGFja2FnZU5hbWVPckRlZmF1bHR9YFxuICAgICAgOiAnJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNreS1kb2NzLW1vZHVsZS1pbmZvXCI+XG4gIDxza3ktZGVzY3JpcHRpb24tbGlzdCBtb2RlPVwidmVydGljYWxcIj5cbiAgICA8c2t5LWRlc2NyaXB0aW9uLWxpc3QtY29udGVudD5cbiAgICAgIDxza3ktZGVzY3JpcHRpb24tbGlzdC10ZXJtPiBEZWZpbmVkIGluIDwvc2t5LWRlc2NyaXB0aW9uLWxpc3QtdGVybT5cbiAgICAgIDxza3ktZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbj5cbiAgICAgICAgPHNreS1jb2RlIGNsYXNzPVwic2t5LWRvY3MtbW9kdWxlLWluZm8tbW9kdWxlLW5hbWVcIj57e1xuICAgICAgICAgIG1vZHVsZU5hbWVcbiAgICAgICAgfX08L3NreS1jb2RlPlxuICAgICAgPC9za3ktZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbj5cbiAgICA8L3NreS1kZXNjcmlwdGlvbi1saXN0LWNvbnRlbnQ+XG5cbiAgICA8c2t5LWRlc2NyaXB0aW9uLWxpc3QtY29udGVudCAqbmdJZj1cInBhY2thZ2VOYW1lT3JEZWZhdWx0XCI+XG4gICAgICA8c2t5LWRlc2NyaXB0aW9uLWxpc3QtdGVybT5OUE0gcGFja2FnZTwvc2t5LWRlc2NyaXB0aW9uLWxpc3QtdGVybT5cbiAgICAgIDxza3ktZGVzY3JpcHRpb24tbGlzdC1kZXNjcmlwdGlvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktZG9jcy1tb2R1bGUtaW5mby1wYWNrYWdlLW5hbWVcIlxuICAgICAgICAgID48c2t5LWNvZGU+e3sgcGFja2FnZU5hbWVPckRlZmF1bHQgfX08L3NreS1jb2RlPjwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGV4dGVybmFsTGluayBvZiBleHRlcm5hbExpbmtzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtbW9kdWxlLWluZm8tZXh0ZXJuYWwtbGlua1wiXG4gICAgICAgICAgICBbaHJlZl09XCJleHRlcm5hbExpbmsudXJsXCJcbiAgICAgICAgICAgID57eyBleHRlcm5hbExpbmsubGFiZWwgfX08L2FcbiAgICAgICAgICA+XG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJpIDwgZXh0ZXJuYWxMaW5rcy5sZW5ndGggLSAxXCI+IHwgPC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvc2t5LWRlc2NyaXB0aW9uLWxpc3QtZGVzY3JpcHRpb24+XG4gICAgPC9za3ktZGVzY3JpcHRpb24tbGlzdC1jb250ZW50PlxuXG4gICAgPHNreS1kZXNjcmlwdGlvbi1saXN0LWNvbnRlbnQgKm5nSWY9XCJpbnN0YWxsYXRpb25Db21tYW5kXCI+XG4gICAgICA8c2t5LWRlc2NyaXB0aW9uLWxpc3QtdGVybT5cbiAgICAgICAgSW5zdGFsbGF0aW9uXG4gICAgICAgIDxza3ktaGVscC1pbmxpbmVcbiAgICAgICAgICBjbGFzcz1cInNreS1jb250cm9sLWhlbHBcIlxuICAgICAgICAgIFtza3lQb3BvdmVyXT1cImluc3RhbGxhdGlvbkNvbW1hbmRQb3BvdmVyXCJcbiAgICAgICAgICBza3lQb3BvdmVyUGxhY2VtZW50PVwicmlnaHRcIlxuICAgICAgICA+XG4gICAgICAgIDwvc2t5LWhlbHAtaW5saW5lPlxuICAgICAgPC9za3ktZGVzY3JpcHRpb24tbGlzdC10ZXJtPlxuICAgICAgPHNreS1kZXNjcmlwdGlvbi1saXN0LWRlc2NyaXB0aW9uPlxuICAgICAgICA8c2t5LXBvcG92ZXIgI2luc3RhbGxhdGlvbkNvbW1hbmRQb3BvdmVyPlxuICAgICAgICAgIFRvIHVzZSB0aGlzIG1vZHVsZSwgeW91IG11c3QgaW5zdGFsbCBwZWVyIGRlcGVuZGVuY2llcyBhbG9uZyB3aXRoIGl0c1xuICAgICAgICAgIHBhY2thZ2UuIEFsc28sIGFmdGVyIHlvdSBpbnN0YWxsIHRoZSBwYWNrYWdlLCB5b3UgbXVzdCBhZGQgdGhlIG1vZHVsZVxuICAgICAgICAgIGFzIGFuIGV4cG9ydCBpbiB5b3VyIFNQQSdzIG1haW4gbW9kdWxlIHRvIG1ha2UgZXhwb3J0cyBhdmFpbGFibGUgdG9cbiAgICAgICAgICB5b3VyIFNQQS5cbiAgICAgICAgPC9za3ktcG9wb3Zlcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNreS1kb2NzLW1vZHVsZS1pbmZvLWluc3RhbGxhdGlvbi1jb21tYW5kXCI+XG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtbW9kdWxlLWluZm8taW5zdGFsbGF0aW9uLWNvbW1hbmQtY29kZVwiXG4gICAgICAgICAgICAjY29weVRhcmdldFxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxza3ktY29kZT57eyBpbnN0YWxsYXRpb25Db21tYW5kIH19PC9za3ktY29kZT5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNreS1jb3B5LXRvLWNsaXBib2FyZFxuICAgICAgICAgICAgYnV0dG9uVGV4dD1cIkNvcHlcIlxuICAgICAgICAgICAgW2NvcHlUYXJnZXRdPVwiY29weVRhcmdldFwiXG4gICAgICAgICAgPjwvc2t5LWNvcHktdG8tY2xpcGJvYXJkPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvc2t5LWRlc2NyaXB0aW9uLWxpc3QtZGVzY3JpcHRpb24+XG4gICAgPC9za3ktZGVzY3JpcHRpb24tbGlzdC1jb250ZW50PlxuICA8L3NreS1kZXNjcmlwdGlvbi1saXN0PlxuXG4gIDxkaXYgY2xhc3M9XCJza3ktZG9jcy1tb2R1bGUtaW5mby1hZGRpdGlvbmFsLWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,53 +0,0 @@
1
- /**
2
- * NOTICE: DO NOT MODIFY THIS FILE!
3
- * The contents of this file were automatically generated by
4
- * the 'ng generate @skyux/i18n:lib-resources-module modules/shared/sky-docs-tools' schematic.
5
- * To update this file, simply rerun the command.
6
- */
7
- import { NgModule } from '@angular/core';
8
- import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS, } from '@skyux/i18n';
9
- import * as i0 from "@angular/core";
10
- const RESOURCES = {
11
- 'EN-US': {
12
- 'sky-docs-demo-heading': { message: 'Demo' },
13
- 'sky-docs-demo-toggle-button-on': { message: 'Show options' },
14
- 'sky-docs-demo-toggle-button-off': { message: 'Hide options' },
15
- 'sky-docs-code-example-launch-button-label': {
16
- message: 'Run in StackBlitz',
17
- },
18
- 'sky-docs-demo-control-panel-reset-button-label': { message: 'Reset' },
19
- },
20
- };
21
- export class SkyDocsToolsResourcesProvider {
22
- getString(localeInfo, name) {
23
- return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
24
- }
25
- }
26
- /**
27
- * Import into any component library module that needs to use resource strings.
28
- */
29
- export class SkyDocsToolsResourcesModule {
30
- }
31
- SkyDocsToolsResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsToolsResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
32
- SkyDocsToolsResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsToolsResourcesModule, exports: [SkyI18nModule] });
33
- SkyDocsToolsResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsToolsResourcesModule, providers: [
34
- {
35
- provide: SKY_LIB_RESOURCES_PROVIDERS,
36
- useClass: SkyDocsToolsResourcesProvider,
37
- multi: true,
38
- },
39
- ], imports: [SkyI18nModule] });
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsToolsResourcesModule, decorators: [{
41
- type: NgModule,
42
- args: [{
43
- exports: [SkyI18nModule],
44
- providers: [
45
- {
46
- provide: SKY_LIB_RESOURCES_PROVIDERS,
47
- useClass: SkyDocsToolsResourcesProvider,
48
- multi: true,
49
- },
50
- ],
51
- }]
52
- }] });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LWRvY3MtdG9vbHMtcmVzb3VyY2VzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvc2hhcmVkL3NreS1kb2NzLXRvb2xzLXJlc291cmNlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxxQkFBcUIsRUFFckIsYUFBYSxFQUdiLDJCQUEyQixHQUM1QixNQUFNLGFBQWEsQ0FBQzs7QUFFckIsTUFBTSxTQUFTLEdBQTBDO0lBQ3ZELE9BQU8sRUFBRTtRQUNQLHVCQUF1QixFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRTtRQUM1QyxnQ0FBZ0MsRUFBRSxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUU7UUFDN0QsaUNBQWlDLEVBQUUsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFO1FBQzlELDJDQUEyQyxFQUFFO1lBQzNDLE9BQU8sRUFBRSxtQkFBbUI7U0FDN0I7UUFDRCxnREFBZ0QsRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7S0FDdkU7Q0FDRixDQUFDO0FBRUYsTUFBTSxPQUFPLDZCQUE2QjtJQUNqQyxTQUFTLENBQUMsVUFBNEIsRUFBRSxJQUFZO1FBQ3pELE9BQU8scUJBQXFCLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFXSCxNQUFNLE9BQU8sMkJBQTJCOzt3SEFBM0IsMkJBQTJCO3lIQUEzQiwyQkFBMkIsWUFUNUIsYUFBYTt5SEFTWiwyQkFBMkIsYUFSM0I7UUFDVDtZQUNFLE9BQU8sRUFBRSwyQkFBMkI7WUFDcEMsUUFBUSxFQUFFLDZCQUE2QjtZQUN2QyxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsWUFQUyxhQUFhOzJGQVNaLDJCQUEyQjtrQkFWdkMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQ3hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxRQUFRLEVBQUUsNkJBQTZCOzRCQUN2QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTk9USUNFOiBETyBOT1QgTU9ESUZZIFRISVMgRklMRSFcbiAqIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2VyZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieVxuICogdGhlICduZyBnZW5lcmF0ZSBAc2t5dXgvaTE4bjpsaWItcmVzb3VyY2VzLW1vZHVsZSBtb2R1bGVzL3NoYXJlZC9za3ktZG9jcy10b29scycgc2NoZW1hdGljLlxuICogVG8gdXBkYXRlIHRoaXMgZmlsZSwgc2ltcGx5IHJlcnVuIHRoZSBjb21tYW5kLlxuICovXG5cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBnZXRMaWJTdHJpbmdGb3JMb2NhbGUsXG4gIFNreUFwcExvY2FsZUluZm8sXG4gIFNreUkxOG5Nb2R1bGUsXG4gIFNreUxpYlJlc291cmNlcyxcbiAgU2t5TGliUmVzb3VyY2VzUHJvdmlkZXIsXG4gIFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbn0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5jb25zdCBSRVNPVVJDRVM6IHsgW2xvY2FsZTogc3RyaW5nXTogU2t5TGliUmVzb3VyY2VzIH0gPSB7XG4gICdFTi1VUyc6IHtcbiAgICAnc2t5LWRvY3MtZGVtby1oZWFkaW5nJzogeyBtZXNzYWdlOiAnRGVtbycgfSxcbiAgICAnc2t5LWRvY3MtZGVtby10b2dnbGUtYnV0dG9uLW9uJzogeyBtZXNzYWdlOiAnU2hvdyBvcHRpb25zJyB9LFxuICAgICdza3ktZG9jcy1kZW1vLXRvZ2dsZS1idXR0b24tb2ZmJzogeyBtZXNzYWdlOiAnSGlkZSBvcHRpb25zJyB9LFxuICAgICdza3ktZG9jcy1jb2RlLWV4YW1wbGUtbGF1bmNoLWJ1dHRvbi1sYWJlbCc6IHtcbiAgICAgIG1lc3NhZ2U6ICdSdW4gaW4gU3RhY2tCbGl0eicsXG4gICAgfSxcbiAgICAnc2t5LWRvY3MtZGVtby1jb250cm9sLXBhbmVsLXJlc2V0LWJ1dHRvbi1sYWJlbCc6IHsgbWVzc2FnZTogJ1Jlc2V0JyB9LFxuICB9LFxufTtcblxuZXhwb3J0IGNsYXNzIFNreURvY3NUb29sc1Jlc291cmNlc1Byb3ZpZGVyIGltcGxlbWVudHMgU2t5TGliUmVzb3VyY2VzUHJvdmlkZXIge1xuICBwdWJsaWMgZ2V0U3RyaW5nKGxvY2FsZUluZm86IFNreUFwcExvY2FsZUluZm8sIG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldExpYlN0cmluZ0ZvckxvY2FsZShSRVNPVVJDRVMsIGxvY2FsZUluZm8ubG9jYWxlLCBuYW1lKTtcbiAgfVxufVxuXG4vKipcbiAqIEltcG9ydCBpbnRvIGFueSBjb21wb25lbnQgbGlicmFyeSBtb2R1bGUgdGhhdCBuZWVkcyB0byB1c2UgcmVzb3VyY2Ugc3RyaW5ncy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgZXhwb3J0czogW1NreUkxOG5Nb2R1bGVdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBTS1lfTElCX1JFU09VUkNFU19QUk9WSURFUlMsXG4gICAgICB1c2VDbGFzczogU2t5RG9jc1Rvb2xzUmVzb3VyY2VzUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEb2NzVG9vbHNSZXNvdXJjZXNNb2R1bGUge31cbiJdfQ==
@@ -1,73 +0,0 @@
1
- var _SkyDocsMethodDefinitionsComponent__config, _SkyDocsMethodDefinitionsComponent_changeDetector, _SkyDocsMethodDefinitionsComponent_formatService, _SkyDocsMethodDefinitionsComponent_mediaQueryService;
2
- import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
4
- import { SkyMediaBreakpoints } from '@skyux/core';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./type-definitions-format.service";
7
- import * as i2 from "@skyux/core";
8
- import * as i3 from "@angular/common";
9
- import * as i4 from "@blackbaud/skyux-lib-code-block";
10
- import * as i5 from "../safe-html/safe-html.component";
11
- import * as i6 from "./call-signature-definition.component";
12
- import * as i7 from "../markdown/markdown.pipe";
13
- import * as i8 from "./type-anchor-links.pipe";
14
- export class SkyDocsMethodDefinitionsComponent {
15
- set config(value) {
16
- __classPrivateFieldSet(this, _SkyDocsMethodDefinitionsComponent__config, value, "f");
17
- this.updateView();
18
- }
19
- get config() {
20
- return __classPrivateFieldGet(this, _SkyDocsMethodDefinitionsComponent__config, "f") || {};
21
- }
22
- constructor(changeDetector, formatService, mediaQueryService) {
23
- this.deprecationWarningPrefix = `<span class="sky-text-warning"></span>**Deprecated.** `;
24
- this.isMobile = true;
25
- _SkyDocsMethodDefinitionsComponent__config.set(this, void 0);
26
- _SkyDocsMethodDefinitionsComponent_changeDetector.set(this, void 0);
27
- _SkyDocsMethodDefinitionsComponent_formatService.set(this, void 0);
28
- _SkyDocsMethodDefinitionsComponent_mediaQueryService.set(this, void 0);
29
- __classPrivateFieldSet(this, _SkyDocsMethodDefinitionsComponent_changeDetector, changeDetector, "f");
30
- __classPrivateFieldSet(this, _SkyDocsMethodDefinitionsComponent_formatService, formatService, "f");
31
- __classPrivateFieldSet(this, _SkyDocsMethodDefinitionsComponent_mediaQueryService, mediaQueryService, "f");
32
- }
33
- ngOnInit() {
34
- __classPrivateFieldGet(this, _SkyDocsMethodDefinitionsComponent_mediaQueryService, "f").subscribe((breakpoints) => {
35
- this.isMobile = breakpoints <= SkyMediaBreakpoints.sm;
36
- __classPrivateFieldGet(this, _SkyDocsMethodDefinitionsComponent_changeDetector, "f").markForCheck();
37
- });
38
- }
39
- updateView() {
40
- if (this.config.methods?.length > 0) {
41
- this.methods = [];
42
- this.staticMethods = [];
43
- for (let method of this.config.methods) {
44
- const vm = {
45
- callSignature: method.type.callSignature,
46
- codeExample: method.codeExample,
47
- codeExampleLanguage: method.codeExampleLanguage,
48
- deprecationWarning: method.deprecationWarning,
49
- description: method.description,
50
- formattedName: __classPrivateFieldGet(this, _SkyDocsMethodDefinitionsComponent_formatService, "f").getFormattedMethodName(method),
51
- sourceCode: __classPrivateFieldGet(this, _SkyDocsMethodDefinitionsComponent_formatService, "f").getMethodSourceCode(method),
52
- isStatic: method.isStatic,
53
- };
54
- if (vm.isStatic) {
55
- this.staticMethods.push(vm);
56
- }
57
- else {
58
- this.methods.push(vm);
59
- }
60
- }
61
- }
62
- }
63
- }
64
- _SkyDocsMethodDefinitionsComponent__config = new WeakMap(), _SkyDocsMethodDefinitionsComponent_changeDetector = new WeakMap(), _SkyDocsMethodDefinitionsComponent_formatService = new WeakMap(), _SkyDocsMethodDefinitionsComponent_mediaQueryService = new WeakMap();
65
- SkyDocsMethodDefinitionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsMethodDefinitionsComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDocsTypeDefinitionsFormatService }, { token: i2.SkyMediaQueryService }], target: i0.ɵɵFactoryTarget.Component });
66
- SkyDocsMethodDefinitionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: SkyDocsMethodDefinitionsComponent, selector: "sky-docs-method-definitions", inputs: { config: "config" }, ngImport: i0, template: "<div\n *ngIf=\"methods?.length > 0 || staticMethods?.length > 0\"\n class=\"sky-docs-method-definitions\"\n>\n <ng-container *ngIf=\"!isMobile; else mobileTemplate\">\n <table\n class=\"sky-docs-table sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Static methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of staticMethods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n <table\n class=\"sky-docs-table sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of methods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n </ng-container>\n\n <ng-template #mobileTemplate>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <div\n *ngFor=\"let method of staticMethods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Static methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <div\n *ngFor=\"let method of methods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-method #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n method.formattedName | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-method #descriptionTemplate>\n <sky-docs-safe-html\n *ngIf=\"method.deprecationWarning !== undefined\"\n class=\"sky-docs-method-definition-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + method.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"method.description\"\n class=\"sky-docs-method-definition-description\"\n [innerHtml]=\"method.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"method.sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"method.sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"method.callSignature\"\n [config]=\"method.callSignature\"\n ></sky-docs-call-signature-definition>\n\n <ng-container *ngIf=\"method.codeExample\">\n <h4 class=\"sky-docs-method-definition-heading\">Example</h4>\n <sky-code-block\n *ngIf=\"method.codeExample\"\n class=\"sky-docs-code-block\"\n languageType=\"method.codeExampleLanguage\"\n [code]=\"method.codeExample\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n </ng-container>\n</ng-template>\n", styles: [":host{margin:15px 0}.sky-docs-method-definitions{width:100%;max-width:100%;overflow:auto}.sky-docs-table-column-header-name{width:25%}.sky-docs-method-definition-label-optional{color:#686c73}.sky-docs-method-definition-list{margin:0}.sky-docs-method-definition-list-item{border-bottom:1px dotted #cdcfd2;margin:10px 0}.sky-docs-method-definition-list-item .sky-field-label{margin:10px 0}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.λ2, selector: "sky-code-block", inputs: ["code", "fileName", "languageType", "hideCopyToClipboard", "hideHeader"] }, { kind: "component", type: i4.λ1, selector: "sky-code" }, { kind: "component", type: i5.SkyDocsSafeHtmlComponent, selector: "sky-docs-safe-html", inputs: ["innerHtml"] }, { kind: "component", type: i6.SkyDocsCallSignatureDefinitionComponent, selector: "sky-docs-call-signature-definition", inputs: ["config"] }, { kind: "pipe", type: i7.SkyDocsMarkdownPipe, name: "skyDocsMarkdown" }, { kind: "pipe", type: i8.SkyDocsTypeAnchorLinksPipe, name: "skyDocsTypeAnchorLinks" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SkyDocsMethodDefinitionsComponent, decorators: [{
68
- type: Component,
69
- args: [{ selector: 'sky-docs-method-definitions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"methods?.length > 0 || staticMethods?.length > 0\"\n class=\"sky-docs-method-definitions\"\n>\n <ng-container *ngIf=\"!isMobile; else mobileTemplate\">\n <table\n class=\"sky-docs-table sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Static methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of staticMethods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n <table\n class=\"sky-docs-table sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <tr class=\"sky-docs-table-row\">\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-name\"\n >\n Methods\n </th>\n <th\n class=\"sky-docs-table-column-header sky-docs-table-column-header-description\"\n >\n Description\n </th>\n </tr>\n <tr *ngFor=\"let method of methods\" class=\"sky-docs-table-row\">\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-name\"\n >\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n <td\n class=\"sky-docs-table-cell sky-docs-method-definitions-table-cell-description\"\n >\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </td>\n </tr>\n </table>\n </ng-container>\n\n <ng-template #mobileTemplate>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-static-method-definitions\"\n *ngIf=\"staticMethods?.length > 0\"\n >\n <div\n *ngFor=\"let method of staticMethods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Static methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n <dl\n class=\"sky-docs-method-definition-list sky-docs-standard-method-definitions\"\n *ngIf=\"methods?.length > 0\"\n >\n <div\n *ngFor=\"let method of methods\"\n class=\"sky-docs-method-definition-list-item\"\n >\n <dt class=\"sky-field-label\">Methods</dt>\n <dd class=\"sky-docs-method-definitions-dd-name\">\n <ng-template\n [ngTemplateOutlet]=\"nameTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n <dt class=\"sky-field-label\">Description</dt>\n <dd class=\"sky-docs-method-definitions-dd-description\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: method }\"\n ></ng-template>\n </dd>\n </div>\n </dl>\n </ng-template>\n</div>\n\n<ng-template let-method #nameTemplate>\n <sky-code\n ><span\n [innerHtml]=\"\n method.formattedName | skyDocsTypeAnchorLinks : 'no-code-tags'\n \"\n ></span\n ></sky-code>\n</ng-template>\n\n<ng-template let-method #descriptionTemplate>\n <sky-docs-safe-html\n *ngIf=\"method.deprecationWarning !== undefined\"\n class=\"sky-docs-method-definition-deprecation-warning\"\n [innerHtml]=\"\n deprecationWarningPrefix + method.deprecationWarning\n | skyDocsTypeAnchorLinks\n | skyDocsMarkdown\n \"\n ></sky-docs-safe-html>\n\n <sky-docs-safe-html\n *ngIf=\"method.description\"\n class=\"sky-docs-method-definition-description\"\n [innerHtml]=\"method.description | skyDocsTypeAnchorLinks | skyDocsMarkdown\"\n ></sky-docs-safe-html>\n\n <sky-code-block\n *ngIf=\"method.sourceCode\"\n class=\"sky-docs-code-block\"\n languageType=\"typescript\"\n [code]=\"method.sourceCode\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n\n <sky-docs-call-signature-definition\n *ngIf=\"method.callSignature\"\n [config]=\"method.callSignature\"\n ></sky-docs-call-signature-definition>\n\n <ng-container *ngIf=\"method.codeExample\">\n <h4 class=\"sky-docs-method-definition-heading\">Example</h4>\n <sky-code-block\n *ngIf=\"method.codeExample\"\n class=\"sky-docs-code-block\"\n languageType=\"method.codeExampleLanguage\"\n [code]=\"method.codeExample\"\n [hideHeader]=\"true\"\n ></sky-code-block>\n </ng-container>\n</ng-template>\n", styles: [":host{margin:15px 0}.sky-docs-method-definitions{width:100%;max-width:100%;overflow:auto}.sky-docs-table-column-header-name{width:25%}.sky-docs-method-definition-label-optional{color:#686c73}.sky-docs-method-definition-list{margin:0}.sky-docs-method-definition-list-item{border-bottom:1px dotted #cdcfd2;margin:10px 0}.sky-docs-method-definition-list-item .sky-field-label{margin:10px 0}\n"] }]
70
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDocsTypeDefinitionsFormatService }, { type: i2.SkyMediaQueryService }]; }, propDecorators: { config: [{
71
- type: Input
72
- }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0aG9kLWRlZmluaXRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy9tZXRob2QtZGVmaW5pdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZG9jcy10b29scy9zcmMvbW9kdWxlcy90eXBlLWRlZmluaXRpb25zL21ldGhvZC1kZWZpbml0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULEtBQUssR0FFTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQXdCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7O0FBeUJ4RSxNQUFNLE9BQU8saUNBQWlDO0lBQzVDLElBQ1csTUFBTSxDQUFDLEtBQW1EO1FBQ25FLHVCQUFBLElBQUksOENBQVksS0FBSyxNQUFBLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLHVCQUFBLElBQUksa0RBQVMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQWtCRCxZQUNFLGNBQWlDLEVBQ2pDLGFBQWtELEVBQ2xELGlCQUF1QztRQW5CbEMsNkJBQXdCLEdBQUcsd0RBQXdELENBQUM7UUFFcEYsYUFBUSxHQUFZLElBQUksQ0FBQztRQU1oQyw2REFFRTtRQUVGLG9FQUFtQztRQUNuQyxtRUFBb0Q7UUFDcEQsdUVBQXlDO1FBT3ZDLHVCQUFBLElBQUkscURBQW1CLGNBQWMsTUFBQSxDQUFDO1FBQ3RDLHVCQUFBLElBQUksb0RBQWtCLGFBQWEsTUFBQSxDQUFDO1FBQ3BDLHVCQUFBLElBQUksd0RBQXNCLGlCQUFpQixNQUFBLENBQUM7SUFDOUMsQ0FBQztJQUVNLFFBQVE7UUFDYix1QkFBQSxJQUFJLDREQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQWdDLEVBQUUsRUFBRTtZQUNyRSxJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsSUFBSSxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7WUFDdEQsdUJBQUEsSUFBSSx5REFBZ0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxVQUFVO1FBQ2hCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztZQUN4QixLQUFLLElBQUksTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO2dCQUN0QyxNQUFNLEVBQUUsR0FBb0I7b0JBQzFCLGFBQWEsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWE7b0JBQ3hDLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVztvQkFDL0IsbUJBQW1CLEVBQUUsTUFBTSxDQUFDLG1CQUFtQjtvQkFDL0Msa0JBQWtCLEVBQUUsTUFBTSxDQUFDLGtCQUFrQjtvQkFDN0MsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO29CQUMvQixhQUFhLEVBQUUsdUJBQUEsSUFBSSx3REFBZSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztvQkFDakUsVUFBVSxFQUFFLHVCQUFBLElBQUksd0RBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7b0JBQzNELFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtpQkFDMUIsQ0FBQztnQkFFRixJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7b0JBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQzdCO3FCQUFNO29CQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUN2QjthQUNGO1NBQ0Y7SUFDSCxDQUFDOzs7OEhBbkVVLGlDQUFpQztrSEFBakMsaUNBQWlDLGlHQ2pDOUMsc3pMQW9MQTsyRkRuSmEsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNFLDZCQUE2QixtQkFHdEIsdUJBQXVCLENBQUMsTUFBTTs2TEFJcEMsTUFBTTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cywgU2t5TWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreURvY3NDYWxsU2lnbmF0dXJlRGVmaW5pdGlvbiB9IGZyb20gJy4vY2FsbC1zaWduYXR1cmUtZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NDbGFzc01ldGhvZERlZmluaXRpb24gfSBmcm9tICcuL21ldGhvZC1kZWZpbml0aW9uJztcblxuaW1wb3J0IHsgU2t5RG9jc1R5cGVEZWZpbml0aW9uc0Zvcm1hdFNlcnZpY2UgfSBmcm9tICcuL3R5cGUtZGVmaW5pdGlvbnMtZm9ybWF0LnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgTWV0aG9kVmlld01vZGVsIHtcbiAgY2FsbFNpZ25hdHVyZTogU2t5RG9jc0NhbGxTaWduYXR1cmVEZWZpbml0aW9uO1xuICBjb2RlRXhhbXBsZTogc3RyaW5nO1xuICBjb2RlRXhhbXBsZUxhbmd1YWdlOiBzdHJpbmc7XG4gIGRlcHJlY2F0aW9uV2FybmluZzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBmb3JtYXR0ZWROYW1lOiBzdHJpbmc7XG4gIHNvdXJjZUNvZGU6IHN0cmluZztcbiAgaXNTdGF0aWM6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRob2QtZGVmaW5pdGlvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZXRob2QtZGVmaW5pdGlvbnMuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY3NNZXRob2REZWZpbml0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgY29uZmlnKHZhbHVlOiB7IG1ldGhvZHM/OiBTa3lEb2NzQ2xhc3NNZXRob2REZWZpbml0aW9uW10gfSkge1xuICAgIHRoaXMuI19jb25maWcgPSB2YWx1ZTtcbiAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29uZmlnKCk6IHsgbWV0aG9kcz86IFNreURvY3NDbGFzc01ldGhvZERlZmluaXRpb25bXSB9IHtcbiAgICByZXR1cm4gdGhpcy4jX2NvbmZpZyB8fCB7fTtcbiAgfVxuXG4gIHB1YmxpYyBkZXByZWNhdGlvbldhcm5pbmdQcmVmaXggPSBgPHNwYW4gY2xhc3M9XCJza3ktdGV4dC13YXJuaW5nXCI+PC9zcGFuPioqRGVwcmVjYXRlZC4qKiBgO1xuXG4gIHB1YmxpYyBpc01vYmlsZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHVibGljIG1ldGhvZHM6IE1ldGhvZFZpZXdNb2RlbFtdO1xuXG4gIHB1YmxpYyBzdGF0aWNNZXRob2RzOiBNZXRob2RWaWV3TW9kZWxbXTtcblxuICAjX2NvbmZpZzoge1xuICAgIG1ldGhvZHM/OiBTa3lEb2NzQ2xhc3NNZXRob2REZWZpbml0aW9uW107XG4gIH07XG5cbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgI2Zvcm1hdFNlcnZpY2U6IFNreURvY3NUeXBlRGVmaW5pdGlvbnNGb3JtYXRTZXJ2aWNlO1xuICAjbWVkaWFRdWVyeVNlcnZpY2U6IFNreU1lZGlhUXVlcnlTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBmb3JtYXRTZXJ2aWNlOiBTa3lEb2NzVHlwZURlZmluaXRpb25zRm9ybWF0U2VydmljZSxcbiAgICBtZWRpYVF1ZXJ5U2VydmljZTogU2t5TWVkaWFRdWVyeVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgICB0aGlzLiNmb3JtYXRTZXJ2aWNlID0gZm9ybWF0U2VydmljZTtcbiAgICB0aGlzLiNtZWRpYVF1ZXJ5U2VydmljZSA9IG1lZGlhUXVlcnlTZXJ2aWNlO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI21lZGlhUXVlcnlTZXJ2aWNlLnN1YnNjcmliZSgoYnJlYWtwb2ludHM6IFNreU1lZGlhQnJlYWtwb2ludHMpID0+IHtcbiAgICAgIHRoaXMuaXNNb2JpbGUgPSBicmVha3BvaW50cyA8PSBTa3lNZWRpYUJyZWFrcG9pbnRzLnNtO1xuICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVZpZXcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY29uZmlnLm1ldGhvZHM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMubWV0aG9kcyA9IFtdO1xuICAgICAgdGhpcy5zdGF0aWNNZXRob2RzID0gW107XG4gICAgICBmb3IgKGxldCBtZXRob2Qgb2YgdGhpcy5jb25maWcubWV0aG9kcykge1xuICAgICAgICBjb25zdCB2bTogTWV0aG9kVmlld01vZGVsID0ge1xuICAgICAgICAgIGNhbGxTaWduYXR1cmU6IG1ldGhvZC50eXBlLmNhbGxTaWduYXR1cmUsXG4gICAgICAgICAgY29kZUV4YW1wbGU6IG1ldGhvZC5jb2RlRXhhbXBsZSxcbiAgICAgICAgICBjb2RlRXhhbXBsZUxhbmd1YWdlOiBtZXRob2QuY29kZUV4YW1wbGVMYW5ndWFnZSxcbiAgICAgICAgICBkZXByZWNhdGlvbldhcm5pbmc6IG1ldGhvZC5kZXByZWNhdGlvbldhcm5pbmcsXG4gICAgICAgICAgZGVzY3JpcHRpb246IG1ldGhvZC5kZXNjcmlwdGlvbixcbiAgICAgICAgICBmb3JtYXR0ZWROYW1lOiB0aGlzLiNmb3JtYXRTZXJ2aWNlLmdldEZvcm1hdHRlZE1ldGhvZE5hbWUobWV0aG9kKSxcbiAgICAgICAgICBzb3VyY2VDb2RlOiB0aGlzLiNmb3JtYXRTZXJ2aWNlLmdldE1ldGhvZFNvdXJjZUNvZGUobWV0aG9kKSxcbiAgICAgICAgICBpc1N0YXRpYzogbWV0aG9kLmlzU3RhdGljLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh2bS5pc1N0YXRpYykge1xuICAgICAgICAgIHRoaXMuc3RhdGljTWV0aG9kcy5wdXNoKHZtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm1ldGhvZHMucHVzaCh2bSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJtZXRob2RzPy5sZW5ndGggPiAwIHx8IHN0YXRpY01ldGhvZHM/Lmxlbmd0aCA+IDBcIlxuICBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9uc1wiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNNb2JpbGU7IGVsc2UgbW9iaWxlVGVtcGxhdGVcIj5cbiAgICA8dGFibGVcbiAgICAgIGNsYXNzPVwic2t5LWRvY3MtdGFibGUgc2t5LWRvY3Mtc3RhdGljLW1ldGhvZC1kZWZpbml0aW9uc1wiXG4gICAgICAqbmdJZj1cInN0YXRpY01ldGhvZHM/Lmxlbmd0aCA+IDBcIlxuICAgID5cbiAgICAgIDx0ciBjbGFzcz1cInNreS1kb2NzLXRhYmxlLXJvd1wiPlxuICAgICAgICA8dGhcbiAgICAgICAgICBjbGFzcz1cInNreS1kb2NzLXRhYmxlLWNvbHVtbi1oZWFkZXIgc2t5LWRvY3MtdGFibGUtY29sdW1uLWhlYWRlci1uYW1lXCJcbiAgICAgICAgPlxuICAgICAgICAgIFN0YXRpYyBtZXRob2RzXG4gICAgICAgIDwvdGg+XG4gICAgICAgIDx0aFxuICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtY29sdW1uLWhlYWRlciBza3ktZG9jcy10YWJsZS1jb2x1bW4taGVhZGVyLWRlc2NyaXB0aW9uXCJcbiAgICAgICAgPlxuICAgICAgICAgIERlc2NyaXB0aW9uXG4gICAgICAgIDwvdGg+XG4gICAgICA8L3RyPlxuICAgICAgPHRyICpuZ0Zvcj1cImxldCBtZXRob2Qgb2Ygc3RhdGljTWV0aG9kc1wiIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtcm93XCI+XG4gICAgICAgIDx0ZFxuICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtY2VsbCBza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbnMtdGFibGUtY2VsbC1uYW1lXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibmFtZVRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGRcbiAgICAgICAgICBjbGFzcz1cInNreS1kb2NzLXRhYmxlLWNlbGwgc2t5LWRvY3MtbWV0aG9kLWRlZmluaXRpb25zLXRhYmxlLWNlbGwtZGVzY3JpcHRpb25cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkZXNjcmlwdGlvblRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RkPlxuICAgICAgPC90cj5cbiAgICA8L3RhYmxlPlxuICAgIDx0YWJsZVxuICAgICAgY2xhc3M9XCJza3ktZG9jcy10YWJsZSBza3ktZG9jcy1zdGFuZGFyZC1tZXRob2QtZGVmaW5pdGlvbnNcIlxuICAgICAgKm5nSWY9XCJtZXRob2RzPy5sZW5ndGggPiAwXCJcbiAgICA+XG4gICAgICA8dHIgY2xhc3M9XCJza3ktZG9jcy10YWJsZS1yb3dcIj5cbiAgICAgICAgPHRoXG4gICAgICAgICAgY2xhc3M9XCJza3ktZG9jcy10YWJsZS1jb2x1bW4taGVhZGVyIHNreS1kb2NzLXRhYmxlLWNvbHVtbi1oZWFkZXItbmFtZVwiXG4gICAgICAgID5cbiAgICAgICAgICBNZXRob2RzXG4gICAgICAgIDwvdGg+XG4gICAgICAgIDx0aFxuICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtY29sdW1uLWhlYWRlciBza3ktZG9jcy10YWJsZS1jb2x1bW4taGVhZGVyLWRlc2NyaXB0aW9uXCJcbiAgICAgICAgPlxuICAgICAgICAgIERlc2NyaXB0aW9uXG4gICAgICAgIDwvdGg+XG4gICAgICA8L3RyPlxuICAgICAgPHRyICpuZ0Zvcj1cImxldCBtZXRob2Qgb2YgbWV0aG9kc1wiIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtcm93XCI+XG4gICAgICAgIDx0ZFxuICAgICAgICAgIGNsYXNzPVwic2t5LWRvY3MtdGFibGUtY2VsbCBza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbnMtdGFibGUtY2VsbC1uYW1lXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibmFtZVRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RkPlxuICAgICAgICA8dGRcbiAgICAgICAgICBjbGFzcz1cInNreS1kb2NzLXRhYmxlLWNlbGwgc2t5LWRvY3MtbWV0aG9kLWRlZmluaXRpb25zLXRhYmxlLWNlbGwtZGVzY3JpcHRpb25cIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkZXNjcmlwdGlvblRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L3RkPlxuICAgICAgPC90cj5cbiAgICA8L3RhYmxlPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctdGVtcGxhdGUgI21vYmlsZVRlbXBsYXRlPlxuICAgIDxkbFxuICAgICAgY2xhc3M9XCJza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbi1saXN0IHNreS1kb2NzLXN0YXRpYy1tZXRob2QtZGVmaW5pdGlvbnNcIlxuICAgICAgKm5nSWY9XCJzdGF0aWNNZXRob2RzPy5sZW5ndGggPiAwXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBtZXRob2Qgb2Ygc3RhdGljTWV0aG9kc1wiXG4gICAgICAgIGNsYXNzPVwic2t5LWRvY3MtbWV0aG9kLWRlZmluaXRpb24tbGlzdC1pdGVtXCJcbiAgICAgID5cbiAgICAgICAgPGR0IGNsYXNzPVwic2t5LWZpZWxkLWxhYmVsXCI+U3RhdGljIG1ldGhvZHM8L2R0PlxuICAgICAgICA8ZGQgY2xhc3M9XCJza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbnMtZGQtbmFtZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibmFtZVRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2RkPlxuICAgICAgICA8ZHQgY2xhc3M9XCJza3ktZmllbGQtbGFiZWxcIj5EZXNjcmlwdGlvbjwvZHQ+XG4gICAgICAgIDxkZCBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9ucy1kZC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVzY3JpcHRpb25UZW1wbGF0ZVwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IG1ldGhvZCB9XCJcbiAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGw+XG4gICAgPGRsXG4gICAgICBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9uLWxpc3Qgc2t5LWRvY3Mtc3RhbmRhcmQtbWV0aG9kLWRlZmluaXRpb25zXCJcbiAgICAgICpuZ0lmPVwibWV0aG9kcz8ubGVuZ3RoID4gMFwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgbWV0aG9kIG9mIG1ldGhvZHNcIlxuICAgICAgICBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9uLWxpc3QtaXRlbVwiXG4gICAgICA+XG4gICAgICAgIDxkdCBjbGFzcz1cInNreS1maWVsZC1sYWJlbFwiPk1ldGhvZHM8L2R0PlxuICAgICAgICA8ZGQgY2xhc3M9XCJza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbnMtZGQtbmFtZVwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibmFtZVRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogbWV0aG9kIH1cIlxuICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2RkPlxuICAgICAgICA8ZHQgY2xhc3M9XCJza3ktZmllbGQtbGFiZWxcIj5EZXNjcmlwdGlvbjwvZHQ+XG4gICAgICAgIDxkZCBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9ucy1kZC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVzY3JpcHRpb25UZW1wbGF0ZVwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IG1ldGhvZCB9XCJcbiAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGw+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlIGxldC1tZXRob2QgI25hbWVUZW1wbGF0ZT5cbiAgPHNreS1jb2RlXG4gICAgPjxzcGFuXG4gICAgICBbaW5uZXJIdG1sXT1cIlxuICAgICAgICBtZXRob2QuZm9ybWF0dGVkTmFtZSB8IHNreURvY3NUeXBlQW5jaG9yTGlua3MgOiAnbm8tY29kZS10YWdzJ1xuICAgICAgXCJcbiAgICA+PC9zcGFuXG4gID48L3NreS1jb2RlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlIGxldC1tZXRob2QgI2Rlc2NyaXB0aW9uVGVtcGxhdGU+XG4gIDxza3ktZG9jcy1zYWZlLWh0bWxcbiAgICAqbmdJZj1cIm1ldGhvZC5kZXByZWNhdGlvbldhcm5pbmcgIT09IHVuZGVmaW5lZFwiXG4gICAgY2xhc3M9XCJza3ktZG9jcy1tZXRob2QtZGVmaW5pdGlvbi1kZXByZWNhdGlvbi13YXJuaW5nXCJcbiAgICBbaW5uZXJIdG1sXT1cIlxuICAgICAgZGVwcmVjYXRpb25XYXJuaW5nUHJlZml4ICsgbWV0aG9kLmRlcHJlY2F0aW9uV2FybmluZ1xuICAgICAgICB8IHNreURvY3NUeXBlQW5jaG9yTGlua3NcbiAgICAgICAgfCBza3lEb2NzTWFya2Rvd25cbiAgICBcIlxuICA+PC9za3ktZG9jcy1zYWZlLWh0bWw+XG5cbiAgPHNreS1kb2NzLXNhZmUtaHRtbFxuICAgICpuZ0lmPVwibWV0aG9kLmRlc2NyaXB0aW9uXCJcbiAgICBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9uLWRlc2NyaXB0aW9uXCJcbiAgICBbaW5uZXJIdG1sXT1cIm1ldGhvZC5kZXNjcmlwdGlvbiB8IHNreURvY3NUeXBlQW5jaG9yTGlua3MgfCBza3lEb2NzTWFya2Rvd25cIlxuICA+PC9za3ktZG9jcy1zYWZlLWh0bWw+XG5cbiAgPHNreS1jb2RlLWJsb2NrXG4gICAgKm5nSWY9XCJtZXRob2Quc291cmNlQ29kZVwiXG4gICAgY2xhc3M9XCJza3ktZG9jcy1jb2RlLWJsb2NrXCJcbiAgICBsYW5ndWFnZVR5cGU9XCJ0eXBlc2NyaXB0XCJcbiAgICBbY29kZV09XCJtZXRob2Quc291cmNlQ29kZVwiXG4gICAgW2hpZGVIZWFkZXJdPVwidHJ1ZVwiXG4gID48L3NreS1jb2RlLWJsb2NrPlxuXG4gIDxza3ktZG9jcy1jYWxsLXNpZ25hdHVyZS1kZWZpbml0aW9uXG4gICAgKm5nSWY9XCJtZXRob2QuY2FsbFNpZ25hdHVyZVwiXG4gICAgW2NvbmZpZ109XCJtZXRob2QuY2FsbFNpZ25hdHVyZVwiXG4gID48L3NreS1kb2NzLWNhbGwtc2lnbmF0dXJlLWRlZmluaXRpb24+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1ldGhvZC5jb2RlRXhhbXBsZVwiPlxuICAgIDxoNCBjbGFzcz1cInNreS1kb2NzLW1ldGhvZC1kZWZpbml0aW9uLWhlYWRpbmdcIj5FeGFtcGxlPC9oND5cbiAgICA8c2t5LWNvZGUtYmxvY2tcbiAgICAgICpuZ0lmPVwibWV0aG9kLmNvZGVFeGFtcGxlXCJcbiAgICAgIGNsYXNzPVwic2t5LWRvY3MtY29kZS1ibG9ja1wiXG4gICAgICBsYW5ndWFnZVR5cGU9XCJtZXRob2QuY29kZUV4YW1wbGVMYW5ndWFnZVwiXG4gICAgICBbY29kZV09XCJtZXRob2QuY29kZUV4YW1wbGVcIlxuICAgICAgW2hpZGVIZWFkZXJdPVwidHJ1ZVwiXG4gICAgPjwvc2t5LWNvZGUtYmxvY2s+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==