@ng-doc/app 16.7.1 → 16.8.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 (159) hide show
  1. package/components/playground/base-playground.d.ts +12 -5
  2. package/components/playground/playground-demo/playground-demo.component.d.ts +2 -1
  3. package/components/playground/playground-form.d.ts +1 -2
  4. package/components/playground/playground-properties/playground-properties.component.d.ts +3 -1
  5. package/components/playground/playground-property/playground-property.component.d.ts +3 -2
  6. package/components/playground/playground.component.d.ts +11 -7
  7. package/esm2022/components/code/code.component.mjs +5 -7
  8. package/esm2022/components/page/page.component.mjs +5 -28
  9. package/esm2022/components/playground/base-playground.mjs +37 -5
  10. package/esm2022/components/playground/playground-demo/playground-demo.component.mjs +14 -12
  11. package/esm2022/components/playground/playground-form.mjs +1 -1
  12. package/esm2022/components/playground/playground-properties/playground-properties.component.mjs +12 -5
  13. package/esm2022/components/playground/playground-property/playground-property.component.mjs +12 -12
  14. package/esm2022/components/playground/playground.component.mjs +34 -14
  15. package/esm2022/interfaces/index.mjs +2 -1
  16. package/esm2022/interfaces/page-processor.mjs +2 -0
  17. package/esm2022/interfaces/processor-options.mjs +1 -1
  18. package/esm2022/interfaces/type-control.mjs +1 -1
  19. package/esm2022/modules/root/ng-doc.module.mjs +3 -1
  20. package/esm2022/processors/default-processors.mjs +18 -0
  21. package/esm2022/processors/index.mjs +4 -11
  22. package/esm2022/processors/{code-processor → page-processor}/index.mjs +2 -2
  23. package/esm2022/processors/{icon-processor/ng-doc-app-processors-icon-processor.mjs → page-processor/ng-doc-app-processors-page-processor.mjs} +1 -1
  24. package/esm2022/processors/page-processor/page-processor.directive.mjs +52 -0
  25. package/esm2022/processors/processors/blockquote.processor.mjs +12 -0
  26. package/esm2022/processors/processors/code.processor.mjs +15 -0
  27. package/esm2022/processors/processors/demo-pane.processor.mjs +12 -0
  28. package/esm2022/processors/processors/demo.processor.mjs +12 -0
  29. package/esm2022/processors/processors/icon.processor.mjs +12 -0
  30. package/esm2022/processors/processors/index.mjs +10 -0
  31. package/esm2022/processors/processors/link.processor.mjs +13 -0
  32. package/esm2022/processors/processors/ng-doc-app-processors-processors.mjs +5 -0
  33. package/esm2022/processors/processors/playground.processor.mjs +19 -0
  34. package/esm2022/processors/processors/tabs.processor.mjs +25 -0
  35. package/esm2022/processors/processors/tooltip.processor.mjs +58 -0
  36. package/esm2022/tokens/index.mjs +2 -1
  37. package/esm2022/tokens/page-processor.mjs +17 -0
  38. package/esm2022/type-controls/boolean-control/boolean-control.component.mjs +7 -1
  39. package/esm2022/type-controls/number-control/number-control.component.mjs +8 -10
  40. package/esm2022/type-controls/string-control/string-control.component.mjs +8 -10
  41. package/esm2022/type-controls/type-alias-control/type-alias-control.component.mjs +8 -10
  42. package/fesm2022/ng-doc-app-components-code.mjs +4 -6
  43. package/fesm2022/ng-doc-app-components-code.mjs.map +1 -1
  44. package/fesm2022/ng-doc-app-components-page.mjs +4 -27
  45. package/fesm2022/ng-doc-app-components-page.mjs.map +1 -1
  46. package/fesm2022/ng-doc-app-components-playground.mjs +121 -64
  47. package/fesm2022/ng-doc-app-components-playground.mjs.map +1 -1
  48. package/fesm2022/ng-doc-app-modules-root.mjs +2 -0
  49. package/fesm2022/ng-doc-app-modules-root.mjs.map +1 -1
  50. package/fesm2022/ng-doc-app-processors-page-processor.mjs +58 -0
  51. package/fesm2022/ng-doc-app-processors-page-processor.mjs.map +1 -0
  52. package/fesm2022/ng-doc-app-processors-processors.mjs +183 -0
  53. package/fesm2022/ng-doc-app-processors-processors.mjs.map +1 -0
  54. package/fesm2022/ng-doc-app-processors.mjs +22 -10
  55. package/fesm2022/ng-doc-app-processors.mjs.map +1 -1
  56. package/fesm2022/ng-doc-app-tokens.mjs +17 -1
  57. package/fesm2022/ng-doc-app-tokens.mjs.map +1 -1
  58. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs +6 -0
  59. package/fesm2022/ng-doc-app-type-controls-boolean-control.mjs.map +1 -1
  60. package/fesm2022/ng-doc-app-type-controls-number-control.mjs +7 -9
  61. package/fesm2022/ng-doc-app-type-controls-number-control.mjs.map +1 -1
  62. package/fesm2022/ng-doc-app-type-controls-string-control.mjs +7 -9
  63. package/fesm2022/ng-doc-app-type-controls-string-control.mjs.map +1 -1
  64. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs +7 -9
  65. package/fesm2022/ng-doc-app-type-controls-type-alias-control.mjs.map +1 -1
  66. package/interfaces/index.d.ts +1 -0
  67. package/interfaces/page-processor.d.ts +28 -0
  68. package/interfaces/processor-options.d.ts +2 -3
  69. package/interfaces/type-control.d.ts +2 -2
  70. package/package.json +14 -62
  71. package/processors/default-processors.d.ts +2 -0
  72. package/processors/index.d.ts +3 -10
  73. package/processors/page-processor/index.d.ts +1 -0
  74. package/processors/page-processor/page-processor.directive.d.ts +19 -0
  75. package/processors/processors/blockquote.processor.d.ts +3 -0
  76. package/processors/processors/code.processor.d.ts +3 -0
  77. package/processors/processors/demo-pane.processor.d.ts +3 -0
  78. package/processors/processors/demo.processor.d.ts +3 -0
  79. package/processors/processors/icon.processor.d.ts +3 -0
  80. package/processors/processors/index.d.ts +9 -0
  81. package/processors/processors/link.processor.d.ts +3 -0
  82. package/processors/processors/playground.processor.d.ts +3 -0
  83. package/processors/processors/tabs.processor.d.ts +3 -0
  84. package/processors/{tooltip-processor/tooltip-wrapper.component.d.ts → processors/tooltip.processor.d.ts} +4 -1
  85. package/tokens/index.d.ts +1 -0
  86. package/tokens/page-processor.d.ts +11 -0
  87. package/type-controls/boolean-control/boolean-control.component.d.ts +4 -1
  88. package/type-controls/number-control/number-control.component.d.ts +3 -4
  89. package/type-controls/string-control/string-control.component.d.ts +2 -3
  90. package/type-controls/type-alias-control/type-alias-control.component.d.ts +3 -4
  91. package/esm2022/processors/blockquote-processor/blockquote-processor.directive.mjs +0 -30
  92. package/esm2022/processors/blockquote-processor/index.mjs +0 -2
  93. package/esm2022/processors/blockquote-processor/ng-doc-app-processors-blockquote-processor.mjs +0 -5
  94. package/esm2022/processors/code-processor/code-processor.directive.mjs +0 -35
  95. package/esm2022/processors/code-processor/ng-doc-app-processors-code-processor.mjs +0 -5
  96. package/esm2022/processors/demo-pane-processor/demo-pane-processor.directive.mjs +0 -38
  97. package/esm2022/processors/demo-pane-processor/index.mjs +0 -2
  98. package/esm2022/processors/demo-pane-processor/ng-doc-app-processors-demo-pane-processor.mjs +0 -5
  99. package/esm2022/processors/demo-processor/demo-processor.directive.mjs +0 -38
  100. package/esm2022/processors/demo-processor/index.mjs +0 -2
  101. package/esm2022/processors/demo-processor/ng-doc-app-processors-demo-processor.mjs +0 -5
  102. package/esm2022/processors/html-processor/html-processor.directive.mjs +0 -44
  103. package/esm2022/processors/html-processor/index.mjs +0 -2
  104. package/esm2022/processors/html-processor/ng-doc-app-processors-html-processor.mjs +0 -5
  105. package/esm2022/processors/icon-processor/icon-processor.directive.mjs +0 -30
  106. package/esm2022/processors/icon-processor/index.mjs +0 -2
  107. package/esm2022/processors/link-processor/index.mjs +0 -2
  108. package/esm2022/processors/link-processor/link-processor.directive.mjs +0 -31
  109. package/esm2022/processors/link-processor/ng-doc-app-processors-link-processor.mjs +0 -5
  110. package/esm2022/processors/playground-processor/index.mjs +0 -2
  111. package/esm2022/processors/playground-processor/ng-doc-app-processors-playground-processor.mjs +0 -5
  112. package/esm2022/processors/playground-processor/playground-processor.directive.mjs +0 -36
  113. package/esm2022/processors/tabs-processor/index.mjs +0 -2
  114. package/esm2022/processors/tabs-processor/ng-doc-app-processors-tabs-processor.mjs +0 -5
  115. package/esm2022/processors/tabs-processor/tabs-processor.directive.mjs +0 -44
  116. package/esm2022/processors/tooltip-processor/index.mjs +0 -3
  117. package/esm2022/processors/tooltip-processor/ng-doc-app-processors-tooltip-processor.mjs +0 -5
  118. package/esm2022/processors/tooltip-processor/tooltip-processor.directive.mjs +0 -30
  119. package/esm2022/processors/tooltip-processor/tooltip-wrapper.component.mjs +0 -49
  120. package/fesm2022/ng-doc-app-processors-blockquote-processor.mjs +0 -36
  121. package/fesm2022/ng-doc-app-processors-blockquote-processor.mjs.map +0 -1
  122. package/fesm2022/ng-doc-app-processors-code-processor.mjs +0 -41
  123. package/fesm2022/ng-doc-app-processors-code-processor.mjs.map +0 -1
  124. package/fesm2022/ng-doc-app-processors-demo-pane-processor.mjs +0 -44
  125. package/fesm2022/ng-doc-app-processors-demo-pane-processor.mjs.map +0 -1
  126. package/fesm2022/ng-doc-app-processors-demo-processor.mjs +0 -44
  127. package/fesm2022/ng-doc-app-processors-demo-processor.mjs.map +0 -1
  128. package/fesm2022/ng-doc-app-processors-html-processor.mjs +0 -50
  129. package/fesm2022/ng-doc-app-processors-html-processor.mjs.map +0 -1
  130. package/fesm2022/ng-doc-app-processors-icon-processor.mjs +0 -36
  131. package/fesm2022/ng-doc-app-processors-icon-processor.mjs.map +0 -1
  132. package/fesm2022/ng-doc-app-processors-link-processor.mjs +0 -37
  133. package/fesm2022/ng-doc-app-processors-link-processor.mjs.map +0 -1
  134. package/fesm2022/ng-doc-app-processors-playground-processor.mjs +0 -42
  135. package/fesm2022/ng-doc-app-processors-playground-processor.mjs.map +0 -1
  136. package/fesm2022/ng-doc-app-processors-tabs-processor.mjs +0 -50
  137. package/fesm2022/ng-doc-app-processors-tabs-processor.mjs.map +0 -1
  138. package/fesm2022/ng-doc-app-processors-tooltip-processor.mjs +0 -81
  139. package/fesm2022/ng-doc-app-processors-tooltip-processor.mjs.map +0 -1
  140. package/processors/blockquote-processor/blockquote-processor.directive.d.ts +0 -13
  141. package/processors/blockquote-processor/index.d.ts +0 -1
  142. package/processors/code-processor/code-processor.directive.d.ts +0 -14
  143. package/processors/code-processor/index.d.ts +0 -1
  144. package/processors/demo-pane-processor/demo-pane-processor.directive.d.ts +0 -14
  145. package/processors/demo-pane-processor/index.d.ts +0 -1
  146. package/processors/demo-processor/demo-processor.directive.d.ts +0 -14
  147. package/processors/demo-processor/index.d.ts +0 -1
  148. package/processors/html-processor/html-processor.directive.d.ts +0 -20
  149. package/processors/html-processor/index.d.ts +0 -1
  150. package/processors/icon-processor/icon-processor.directive.d.ts +0 -13
  151. package/processors/icon-processor/index.d.ts +0 -1
  152. package/processors/link-processor/index.d.ts +0 -1
  153. package/processors/link-processor/link-processor.directive.d.ts +0 -13
  154. package/processors/playground-processor/index.d.ts +0 -1
  155. package/processors/playground-processor/playground-processor.directive.d.ts +0 -13
  156. package/processors/tabs-processor/index.d.ts +0 -1
  157. package/processors/tabs-processor/tabs-processor.directive.d.ts +0 -15
  158. package/processors/tooltip-processor/index.d.ts +0 -2
  159. package/processors/tooltip-processor/tooltip-processor.directive.d.ts +0 -13
@@ -0,0 +1,58 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, ViewChild, } from '@angular/core';
2
+ import { NgDocTooltipDirective } from '@ng-doc/ui-kit';
3
+ import * as i0 from "@angular/core";
4
+ class NgDocTooltipWrapperComponent {
5
+ constructor(changeDetectorRef) {
6
+ this.changeDetectorRef = changeDetectorRef;
7
+ this.tooltipElement = null;
8
+ }
9
+ ngAfterViewInit() {
10
+ if (this.contentProjection) {
11
+ const element = this.contentProjection.nativeElement.querySelector('[ngDocTooltip]');
12
+ this.tooltipElement = element instanceof HTMLElement ? element : null;
13
+ this.changeDetectorRef.detectChanges();
14
+ }
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocTooltipWrapperComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocTooltipWrapperComponent, isStandalone: true, selector: "ng-doc-tooltip-wrapper", inputs: { content: "content" }, viewQueries: [{ propertyName: "contentProjection", first: true, predicate: ["contentProjection"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: `
18
+ <div
19
+ class="content-projection"
20
+ [ngDocTooltip]="content ?? ''"
21
+ [displayOrigin]="tooltipElement ?? contentProjection"
22
+ [pointerOrigin]="tooltipElement ?? contentProjection"
23
+ #contentProjection
24
+ >
25
+ <ng-content></ng-content>
26
+ </div>
27
+ `, isInline: true, styles: [".content-projection{display:unset}\n"], dependencies: [{ kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocTooltipWrapperComponent, decorators: [{
30
+ type: Component,
31
+ args: [{ selector: 'ng-doc-tooltip-wrapper', template: `
32
+ <div
33
+ class="content-projection"
34
+ [ngDocTooltip]="content ?? ''"
35
+ [displayOrigin]="tooltipElement ?? contentProjection"
36
+ [pointerOrigin]="tooltipElement ?? contentProjection"
37
+ #contentProjection
38
+ >
39
+ <ng-content></ng-content>
40
+ </div>
41
+ `, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgDocTooltipDirective], styles: [".content-projection{display:unset}\n"] }]
42
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { content: [{
43
+ type: Input
44
+ }], contentProjection: [{
45
+ type: ViewChild,
46
+ args: ['contentProjection', { read: ElementRef, static: true }]
47
+ }] } });
48
+ export const tooltipProcessor = {
49
+ component: NgDocTooltipWrapperComponent,
50
+ selector: '[ngDocTooltip]',
51
+ extractOptions: (element) => ({
52
+ inputs: {
53
+ content: element.getAttribute('ngDocTooltip') ?? '',
54
+ },
55
+ content: [[element.cloneNode(true)]],
56
+ }),
57
+ };
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC9wcm9jZXNzb3JzL3Byb2Nlc3NvcnMvdG9vbHRpcC5wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVOLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQUVyRCxNQXdCTSw0QkFBNEI7SUFTakMsWUFBNkIsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFMdkQsbUJBQWMsR0FBdUIsSUFBSSxDQUFDO0lBS2dCLENBQUM7SUFFckUsZUFBZTtRQUNkLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzNCLE1BQU0sT0FBTyxHQUFtQixJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBRXJHLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxZQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFFdEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3ZDO0lBQ0YsQ0FBQzs4R0FuQkksNEJBQTRCO2tHQUE1Qiw0QkFBNEIscU5BTU0sVUFBVSwyQ0E1QnZDOzs7Ozs7Ozs7O0VBVVQsOEdBVVMscUJBQXFCOzsyRkFFMUIsNEJBQTRCO2tCQXhCakMsU0FBUzsrQkFDQyx3QkFBd0IsWUFDeEI7Ozs7Ozs7Ozs7RUFVVCxtQkFRZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxxQkFBcUIsQ0FBQzt3R0FJaEMsT0FBTztzQkFETixLQUFLO2dCQU1FLGlCQUFpQjtzQkFEeEIsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQzs7QUFnQmpFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFxRDtJQUNqRixTQUFTLEVBQUUsNEJBQTRCO0lBQ3ZDLFFBQVEsRUFBRSxnQkFBZ0I7SUFDMUIsY0FBYyxFQUFFLENBQUMsT0FBZ0IsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN0QyxNQUFNLEVBQUU7WUFDUCxPQUFPLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFO1NBQ25EO1FBQ0QsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7S0FDcEMsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRBZnRlclZpZXdJbml0LFxuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0SW5wdXQsXG5cdFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nRG9jUGFnZVByb2Nlc3Nvcn0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge05nRG9jVG9vbHRpcERpcmVjdGl2ZX0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2MtdG9vbHRpcC13cmFwcGVyJyxcblx0dGVtcGxhdGU6IGBcblx0XHQ8ZGl2XG5cdFx0XHRjbGFzcz1cImNvbnRlbnQtcHJvamVjdGlvblwiXG5cdFx0XHRbbmdEb2NUb29sdGlwXT1cImNvbnRlbnQgPz8gJydcIlxuXHRcdFx0W2Rpc3BsYXlPcmlnaW5dPVwidG9vbHRpcEVsZW1lbnQgPz8gY29udGVudFByb2plY3Rpb25cIlxuXHRcdFx0W3BvaW50ZXJPcmlnaW5dPVwidG9vbHRpcEVsZW1lbnQgPz8gY29udGVudFByb2plY3Rpb25cIlxuXHRcdFx0I2NvbnRlbnRQcm9qZWN0aW9uXG5cdFx0PlxuXHRcdFx0PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXHRcdDwvZGl2PlxuXHRgLFxuXHRzdHlsZXM6IFtcblx0XHRgXG5cdFx0XHQuY29udGVudC1wcm9qZWN0aW9uIHtcblx0XHRcdFx0ZGlzcGxheTogdW5zZXQ7XG5cdFx0XHR9XG5cdFx0YCxcblx0XSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtOZ0RvY1Rvb2x0aXBEaXJlY3RpdmVdLFxufSlcbmNsYXNzIE5nRG9jVG9vbHRpcFdyYXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblx0QElucHV0KClcblx0Y29udGVudD86IHN0cmluZztcblxuXHRwcm90ZWN0ZWQgdG9vbHRpcEVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cblx0QFZpZXdDaGlsZCgnY29udGVudFByb2plY3Rpb24nLCB7cmVhZDogRWxlbWVudFJlZiwgc3RhdGljOiB0cnVlfSlcblx0cHJpdmF0ZSBjb250ZW50UHJvamVjdGlvbj86IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG5cdG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5jb250ZW50UHJvamVjdGlvbikge1xuXHRcdFx0Y29uc3QgZWxlbWVudDogRWxlbWVudCB8IG51bGwgPSB0aGlzLmNvbnRlbnRQcm9qZWN0aW9uLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignW25nRG9jVG9vbHRpcF0nKTtcblxuXHRcdFx0dGhpcy50b29sdGlwRWxlbWVudCA9IGVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCA/IGVsZW1lbnQgOiBudWxsO1xuXG5cdFx0XHR0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcblx0XHR9XG5cdH1cbn1cblxuZXhwb3J0IGNvbnN0IHRvb2x0aXBQcm9jZXNzb3I6IE5nRG9jUGFnZVByb2Nlc3NvcjxOZ0RvY1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50PiA9IHtcblx0Y29tcG9uZW50OiBOZ0RvY1Rvb2x0aXBXcmFwcGVyQ29tcG9uZW50LFxuXHRzZWxlY3RvcjogJ1tuZ0RvY1Rvb2x0aXBdJyxcblx0ZXh0cmFjdE9wdGlvbnM6IChlbGVtZW50OiBFbGVtZW50KSA9PiAoe1xuXHRcdGlucHV0czoge1xuXHRcdFx0Y29udGVudDogZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ25nRG9jVG9vbHRpcCcpID8/ICcnLFxuXHRcdH0sXG5cdFx0Y29udGVudDogW1tlbGVtZW50LmNsb25lTm9kZSh0cnVlKV1dLFxuXHR9KSxcbn07XG4iXX0=
@@ -1,5 +1,6 @@
1
1
  export * from './api-list';
2
2
  export * from './context';
3
+ export * from './page-processor';
3
4
  export * from './theme';
4
5
  export * from './type-control';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90b2tlbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBpLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0JztcbmV4cG9ydCAqIGZyb20gJy4vdGhlbWUnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlLWNvbnRyb2wnO1xuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90b2tlbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcGktbGlzdCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlLXByb2Nlc3Nvcic7XG5leHBvcnQgKiBmcm9tICcuL3RoZW1lJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZS1jb250cm9sJztcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const NG_DOC_PAGE_PROCESSOR = new InjectionToken('NG_DOC_PAGE_PROCESSOR');
3
+ export const NG_DOC_PAGE_CUSTOM_PROCESSOR = new InjectionToken('NG_DOC_PAGE_CUSTOM_PROCESSOR');
4
+ /**
5
+ * Provide a processor to replace html nodes with an Angular component.
6
+ *
7
+ * @param processor - Processor to provide.
8
+ * @param override - Whether to override existing processors.
9
+ */
10
+ export function providePageProcessor(processor, override) {
11
+ return {
12
+ provide: override ? NG_DOC_PAGE_PROCESSOR : NG_DOC_PAGE_CUSTOM_PROCESSOR,
13
+ useValue: processor,
14
+ multi: true,
15
+ };
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90b2tlbnMvcGFnZS1wcm9jZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBVyxNQUFNLGVBQWUsQ0FBQztBQUd2RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBZ0QsSUFBSSxjQUFjLENBQThCLHVCQUF1QixDQUFDLENBQUM7QUFDM0osTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQWdELElBQUksY0FBYyxDQUE4Qiw4QkFBOEIsQ0FBQyxDQUFDO0FBRXpLOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUFJLFNBQWdDLEVBQUUsUUFBa0I7SUFDM0YsT0FBTztRQUNOLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyw0QkFBNEI7UUFDeEUsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLElBQUk7S0FDWCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdEb2NQYWdlUHJvY2Vzc29yfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IE5HX0RPQ19QQUdFX1BST0NFU1NPUjogSW5qZWN0aW9uVG9rZW48TmdEb2NQYWdlUHJvY2Vzc29yPHVua25vd24+PiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ0RvY1BhZ2VQcm9jZXNzb3I8dW5rbm93bj4+KCdOR19ET0NfUEFHRV9QUk9DRVNTT1InKTtcbmV4cG9ydCBjb25zdCBOR19ET0NfUEFHRV9DVVNUT01fUFJPQ0VTU09SOiBJbmplY3Rpb25Ub2tlbjxOZ0RvY1BhZ2VQcm9jZXNzb3I8dW5rbm93bj4+ID0gbmV3IEluamVjdGlvblRva2VuPE5nRG9jUGFnZVByb2Nlc3Nvcjx1bmtub3duPj4oJ05HX0RPQ19QQUdFX0NVU1RPTV9QUk9DRVNTT1InKTtcblxuLyoqXG4gKiBQcm92aWRlIGEgcHJvY2Vzc29yIHRvIHJlcGxhY2UgaHRtbCBub2RlcyB3aXRoIGFuIEFuZ3VsYXIgY29tcG9uZW50LlxuICpcbiAqIEBwYXJhbSBwcm9jZXNzb3IgLSBQcm9jZXNzb3IgdG8gcHJvdmlkZS5cbiAqIEBwYXJhbSBvdmVycmlkZSAtIFdoZXRoZXIgdG8gb3ZlcnJpZGUgZXhpc3RpbmcgcHJvY2Vzc29ycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVQYWdlUHJvY2Vzc29yPFQ+KHByb2Nlc3NvcjogTmdEb2NQYWdlUHJvY2Vzc29yPFQ+LCBvdmVycmlkZT86IGJvb2xlYW4pOiBQcm92aWRlciB7XG5cdHJldHVybiB7XG5cdFx0cHJvdmlkZTogb3ZlcnJpZGUgPyBOR19ET0NfUEFHRV9QUk9DRVNTT1IgOiBOR19ET0NfUEFHRV9DVVNUT01fUFJPQ0VTU09SLFxuXHRcdHVzZVZhbHVlOiBwcm9jZXNzb3IsXG5cdFx0bXVsdGk6IHRydWUsXG5cdH07XG59XG4iXX0=
@@ -10,6 +10,12 @@ class NgDocBooleanControlComponent extends FlControlHost {
10
10
  this.description = '';
11
11
  this.controlChange.subscribe(() => this.onTouched());
12
12
  }
13
+ get defaultValue() {
14
+ return Object.prototype.hasOwnProperty.call(this, 'default') ? this.default : false;
15
+ }
16
+ updateModel(obj) {
17
+ super.updateModel(obj ? obj : !this.defaultValue ? this.defaultValue : false);
18
+ }
13
19
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocBooleanControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
20
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocBooleanControlComponent, isStandalone: true, selector: "ng-doc-boolean-control", providers: [provideControlHost(NgDocBooleanControlComponent)], usesInheritance: true, ngImport: i0, template: "<ng-doc-checkbox [ngDocTooltip]=\"tooltipTemplate\" [canOpen]=\"!!description\">\n\t{{ name }}\n\t<ng-template #tooltipTemplate>\n\t\t<div [innerHTML]=\"description | ngDocSanitizeHtml\"></div>\n\t</ng-template>\n</ng-doc-checkbox>\n", styles: [":host{display:inline-flex;width:100%}\n"], dependencies: [{ kind: "component", type: NgDocCheckboxComponent, selector: "ng-doc-checkbox", inputs: ["color"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15
21
  }
@@ -18,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
18
24
  type: Component,
19
25
  args: [{ selector: 'ng-doc-boolean-control', providers: [provideControlHost(NgDocBooleanControlComponent)], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgDocCheckboxComponent, NgDocTooltipDirective, NgDocSanitizeHtmlPipe], template: "<ng-doc-checkbox [ngDocTooltip]=\"tooltipTemplate\" [canOpen]=\"!!description\">\n\t{{ name }}\n\t<ng-template #tooltipTemplate>\n\t\t<div [innerHTML]=\"description | ngDocSanitizeHtml\"></div>\n\t</ng-template>\n</ng-doc-checkbox>\n", styles: [":host{display:inline-flex;width:100%}\n"] }]
20
26
  }], ctorParameters: function () { return []; } });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3R5cGUtY29udHJvbHMvYm9vbGVhbi1jb250cm9sL2Jvb2xlYW4tY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL2Jvb2xlYW4tY29udHJvbC9ib29sZWFuLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUMsYUFBYSxFQUFFLGtCQUFrQixFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUVoRSxNQVNhLDRCQUE2QixTQUFRLGFBQWlDO0lBSWxGO1FBQ0MsS0FBSyxFQUFFLENBQUM7UUFKVCxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBS3hCLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OEdBUlcsNEJBQTRCO2tHQUE1Qiw0QkFBNEIscUVBTDdCLENBQUMsa0JBQWtCLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxpRENWOUQsMk9BTUEsaUdET1csc0JBQXNCLCtFQUFFLHFCQUFxQixxVUFBRSxxQkFBcUI7O1NBRWxFLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQVR4QyxTQUFTOytCQUNDLHdCQUF3QixhQUd2QixDQUFDLGtCQUFrQiw4QkFBOEIsQ0FBQyxtQkFDNUMsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05nRG9jVHlwZUNvbnRyb2x9IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtOZ0RvY1Nhbml0aXplSHRtbFBpcGV9IGZyb20gJ0BuZy1kb2MvYXBwL3BpcGVzJztcbmltcG9ydCB7TmdEb2NDaGVja2JveENvbXBvbmVudCwgTmdEb2NUb29sdGlwRGlyZWN0aXZlfSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge0ZsQ29udHJvbEhvc3QsIHByb3ZpZGVDb250cm9sSG9zdH0gZnJvbSAnZmxleC1jb250cm9scyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1ib29sZWFuLWNvbnRyb2wnLFxuXHR0ZW1wbGF0ZVVybDogJy4vYm9vbGVhbi1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vYm9vbGVhbi1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG5cdHByb3ZpZGVyczogW3Byb3ZpZGVDb250cm9sSG9zdChOZ0RvY0Jvb2xlYW5Db250cm9sQ29tcG9uZW50KV0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbTmdEb2NDaGVja2JveENvbXBvbmVudCwgTmdEb2NUb29sdGlwRGlyZWN0aXZlLCBOZ0RvY1Nhbml0aXplSHRtbFBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY0Jvb2xlYW5Db250cm9sQ29tcG9uZW50IGV4dGVuZHMgRmxDb250cm9sSG9zdDxzdHJpbmcgfCB1bmRlZmluZWQ+IGltcGxlbWVudHMgTmdEb2NUeXBlQ29udHJvbCB7XG5cdG5hbWU6IHN0cmluZyA9ICcnO1xuXHRkZXNjcmlwdGlvbjogc3RyaW5nID0gJyc7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKTtcblxuXHRcdHRoaXMuY29udHJvbENoYW5nZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vblRvdWNoZWQoKSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtY2hlY2tib3ggW25nRG9jVG9vbHRpcF09XCJ0b29sdGlwVGVtcGxhdGVcIiBbY2FuT3Blbl09XCIhIWRlc2NyaXB0aW9uXCI+XG5cdHt7IG5hbWUgfX1cblx0PG5nLXRlbXBsYXRlICN0b29sdGlwVGVtcGxhdGU+XG5cdFx0PGRpdiBbaW5uZXJIVE1MXT1cImRlc2NyaXB0aW9uIHwgbmdEb2NTYW5pdGl6ZUh0bWxcIj48L2Rpdj5cblx0PC9uZy10ZW1wbGF0ZT5cbjwvbmctZG9jLWNoZWNrYm94PlxuIl19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3R5cGUtY29udHJvbHMvYm9vbGVhbi1jb250cm9sL2Jvb2xlYW4tY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL2Jvb2xlYW4tY29udHJvbC9ib29sZWFuLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUUscUJBQXFCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUMsYUFBYSxFQUFFLGtCQUFrQixFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUVoRSxNQVNhLDRCQUNaLFNBQVEsYUFBa0M7SUFRMUM7UUFDQyxLQUFLLEVBQUUsQ0FBQztRQUpULFNBQUksR0FBVyxFQUFFLENBQUM7UUFDbEIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFLeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELElBQUksWUFBWTtRQUNmLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3JGLENBQUM7SUFFUSxXQUFXLENBQUMsR0FBK0I7UUFDbkQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRSxDQUFDOzhHQXJCVyw0QkFBNEI7a0dBQTVCLDRCQUE0QixxRUFMN0IsQ0FBQyxrQkFBa0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLGlEQ1Y5RCwyT0FNQSxpR0RPVyxzQkFBc0IsK0VBQUUscUJBQXFCLHFVQUFFLHFCQUFxQjs7U0FFbEUsNEJBQTRCOzJGQUE1Qiw0QkFBNEI7a0JBVHhDLFNBQVM7K0JBQ0Msd0JBQXdCLGFBR3ZCLENBQUMsa0JBQWtCLDhCQUE4QixDQUFDLG1CQUM1Qyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLHNCQUFzQixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmdEb2NUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge05nRG9jU2FuaXRpemVIdG1sUGlwZX0gZnJvbSAnQG5nLWRvYy9hcHAvcGlwZXMnO1xuaW1wb3J0IHtOZ0RvY0NoZWNrYm94Q29tcG9uZW50LCBOZ0RvY1Rvb2x0aXBEaXJlY3RpdmV9IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7RmxDb250cm9sSG9zdCwgcHJvdmlkZUNvbnRyb2xIb3N0fSBmcm9tICdmbGV4LWNvbnRyb2xzJztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLWJvb2xlYW4tY29udHJvbCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9ib29sZWFuLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9ib29sZWFuLWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcblx0cHJvdmlkZXJzOiBbcHJvdmlkZUNvbnRyb2xIb3N0KE5nRG9jQm9vbGVhbkNvbnRyb2xDb21wb25lbnQpXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtOZ0RvY0NoZWNrYm94Q29tcG9uZW50LCBOZ0RvY1Rvb2x0aXBEaXJlY3RpdmUsIE5nRG9jU2FuaXRpemVIdG1sUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jQm9vbGVhbkNvbnRyb2xDb21wb25lbnRcblx0ZXh0ZW5kcyBGbENvbnRyb2xIb3N0PGJvb2xlYW4gfCB1bmRlZmluZWQ+XG5cdGltcGxlbWVudHMgTmdEb2NUeXBlQ29udHJvbDxib29sZWFuIHwgdW5kZWZpbmVkPlxue1xuXHRkZWZhdWx0PzogYm9vbGVhbjtcblxuXHRuYW1lOiBzdHJpbmcgPSAnJztcblx0ZGVzY3JpcHRpb246IHN0cmluZyA9ICcnO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdHN1cGVyKCk7XG5cblx0XHR0aGlzLmNvbnRyb2xDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHRoaXMub25Ub3VjaGVkKCkpO1xuXHR9XG5cblx0Z2V0IGRlZmF1bHRWYWx1ZSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcblx0XHRyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMsICdkZWZhdWx0JykgPyB0aGlzLmRlZmF1bHQgOiBmYWxzZTtcblx0fVxuXG5cdG92ZXJyaWRlIHVwZGF0ZU1vZGVsKG9iajogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQpIHtcblx0XHRzdXBlci51cGRhdGVNb2RlbChvYmogPyBvYmogOiAhdGhpcy5kZWZhdWx0VmFsdWUgPyB0aGlzLmRlZmF1bHRWYWx1ZSA6IGZhbHNlKTtcblx0fVxufVxuIiwiPG5nLWRvYy1jaGVja2JveCBbbmdEb2NUb29sdGlwXT1cInRvb2x0aXBUZW1wbGF0ZVwiIFtjYW5PcGVuXT1cIiEhZGVzY3JpcHRpb25cIj5cblx0e3sgbmFtZSB9fVxuXHQ8bmctdGVtcGxhdGUgI3Rvb2x0aXBUZW1wbGF0ZT5cblx0XHQ8ZGl2IFtpbm5lckhUTUxdPVwiZGVzY3JpcHRpb24gfCBuZ0RvY1Nhbml0aXplSHRtbFwiPjwvZGl2PlxuXHQ8L25nLXRlbXBsYXRlPlxuPC9uZy1kb2MtY2hlY2tib3g+XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  import { NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
- import { extractValue } from '@ng-doc/core/helpers/extract-value';
5
4
  import { NgDocButtonIconComponent, NgDocFocusableDirective, NgDocIconComponent, NgDocInputNumberDirective, NgDocInputWrapperComponent, } from '@ng-doc/ui-kit';
6
5
  import { FlControl, FlControlSilencerModule } from 'flex-controls';
7
6
  import * as i0 from "@angular/core";
@@ -11,14 +10,11 @@ class NgDocNumberControlComponent extends FlControl {
11
10
  constructor() {
12
11
  super();
13
12
  }
14
- get defaultValue() {
15
- return this.default ? extractValue(this.default) : null;
16
- }
17
13
  changeModel(value) {
18
- this.updateModel(value === null && this.default ? this.defaultValue : value);
14
+ this.updateModel(value === null && this.default ? this.default : value);
19
15
  }
20
16
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocNumberControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocNumberControlComponent, isStandalone: true, selector: "ng-doc-number-control", usesInheritance: true, ngImport: i0, template: "<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "ngmodule", type: FlControlSilencerModule }, { kind: "directive", type: i1.FlControlSilencerDirective, selector: "[flControlSilencer]" }, { kind: "directive", type: NgDocInputNumberDirective, selector: "input[ngDocInputNumber]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocNumberControlComponent, isStandalone: true, selector: "ng-doc-number-control", inputs: { default: "default" }, usesInheritance: true, ngImport: i0, template: "<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "ngmodule", type: FlControlSilencerModule }, { kind: "directive", type: i1.FlControlSilencerDirective, selector: "[flControlSilencer]" }, { kind: "directive", type: NgDocInputNumberDirective, selector: "input[ngDocInputNumber]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
18
  }
23
19
  export { NgDocNumberControlComponent };
24
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocNumberControlComponent, decorators: [{
@@ -32,6 +28,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
32
28
  NgDocButtonIconComponent,
33
29
  NgDocFocusableDirective,
34
30
  NgDocIconComponent,
35
- ], template: "<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
36
- }], ctorParameters: function () { return []; } });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvdHlwZS1jb250cm9scy9udW1iZXItY29udHJvbC9udW1iZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL251bWJlci1jb250cm9sL251bWJlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUNOLHdCQUF3QixFQUN4Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6QiwwQkFBMEIsR0FDMUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBRWpFLE1BaUJhLDJCQUE0QixTQUFRLFNBQWlCO0lBR2pFO1FBQ0MsS0FBSyxFQUFFLENBQUM7SUFDVCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckUsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFvQjtRQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs4R0FiVywyQkFBMkI7a0dBQTNCLDJCQUEyQix3R0MvQnhDLDJsQkFpQkEsMkZESUUsMEJBQTBCLGdKQUMxQix1QkFBdUIsNEhBQ3ZCLHlCQUF5QixtRUFDekIsV0FBVyxpeEJBQ1gsSUFBSSw2RkFDSix3QkFBd0IsMkhBQ3hCLHVCQUF1Qix1SEFDdkIsa0JBQWtCOztTQUdQLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQWpCdkMsU0FBUzsrQkFDQyx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNSLDBCQUEwQjt3QkFDMUIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLFdBQVc7d0JBQ1gsSUFBSTt3QkFDSix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsa0JBQWtCO3FCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nRG9jVHlwZUNvbnRyb2x9IGZyb20gJ0BuZy1kb2MvYXBwL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtleHRyYWN0VmFsdWV9IGZyb20gJ0BuZy1kb2MvY29yZS9oZWxwZXJzL2V4dHJhY3QtdmFsdWUnO1xuaW1wb3J0IHtcblx0TmdEb2NCdXR0b25JY29uQ29tcG9uZW50LFxuXHROZ0RvY0ZvY3VzYWJsZURpcmVjdGl2ZSxcblx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHROZ0RvY0lucHV0TnVtYmVyRGlyZWN0aXZlLFxuXHROZ0RvY0lucHV0V3JhcHBlckNvbXBvbmVudCxcbn0gZnJvbSAnQG5nLWRvYy91aS1raXQnO1xuaW1wb3J0IHtGbENvbnRyb2wsIEZsQ29udHJvbFNpbGVuY2VyTW9kdWxlfSBmcm9tICdmbGV4LWNvbnRyb2xzJztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmctZG9jLW51bWJlci1jb250cm9sJyxcblx0dGVtcGxhdGVVcmw6ICcuL251bWJlci1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vbnVtYmVyLWNvbnRyb2wuY29tcG9uZW50LnNjc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHROZ0RvY0lucHV0V3JhcHBlckNvbXBvbmVudCxcblx0XHRGbENvbnRyb2xTaWxlbmNlck1vZHVsZSxcblx0XHROZ0RvY0lucHV0TnVtYmVyRGlyZWN0aXZlLFxuXHRcdEZvcm1zTW9kdWxlLFxuXHRcdE5nSWYsXG5cdFx0TmdEb2NCdXR0b25JY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jRm9jdXNhYmxlRGlyZWN0aXZlLFxuXHRcdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NOdW1iZXJDb250cm9sQ29tcG9uZW50IGV4dGVuZHMgRmxDb250cm9sPG51bWJlcj4gaW1wbGVtZW50cyBOZ0RvY1R5cGVDb250cm9sIHtcblx0ZGVmYXVsdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdHN1cGVyKCk7XG5cdH1cblxuXHRnZXQgZGVmYXVsdFZhbHVlKCk6IG51bWJlciB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLmRlZmF1bHQgPyAoZXh0cmFjdFZhbHVlKHRoaXMuZGVmYXVsdCkgYXMgbnVtYmVyKSA6IG51bGw7XG5cdH1cblxuXHRjaGFuZ2VNb2RlbCh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xuXHRcdHRoaXMudXBkYXRlTW9kZWwodmFsdWUgPT09IG51bGwgJiYgdGhpcy5kZWZhdWx0ID8gdGhpcy5kZWZhdWx0VmFsdWUgOiB2YWx1ZSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtaW5wdXQtd3JhcHBlciBmbENvbnRyb2xTaWxlbmNlciBbcmlnaHRDb250ZW50XT1cInJpZ2h0Q29udGVudFwiPlxuXHQ8aW5wdXQgbmdEb2NJbnB1dE51bWJlciB0eXBlPVwibnVtYmVyXCIgW25nTW9kZWxdPVwibW9kZWxcIiAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VNb2RlbCgkZXZlbnQpXCI+XG5cdDxuZy10ZW1wbGF0ZSAjcmlnaHRDb250ZW50PlxuXHRcdDxidXR0b25cblx0XHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdFx0c2l6ZT1cImxhcmdlXCJcblx0XHRcdFtuZ0RvY0ZvY3VzYWJsZV09XCJmYWxzZVwiXG5cdFx0XHRbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuXHRcdFx0W3JvdW5kZWRdPVwiZmFsc2VcIlxuXHRcdFx0KGNsaWNrKT1cInVwZGF0ZU1vZGVsKGRlZmF1bHRWYWx1ZSlcIlxuXHRcdFx0KGZvY3Vzb3V0KT1cIm9uVG91Y2hlZCgpXCJcblx0XHRcdCpuZ0lmPVwibW9kZWwgJiYgbW9kZWwgIT09IGRlZmF1bHRWYWx1ZVwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJ4XCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9uZy10ZW1wbGF0ZT5cbjwvbmctZG9jLWlucHV0LXdyYXBwZXI+XG4iXX0=
31
+ ], template: "<ng-doc-input-wrapper flControlSilencer [rightContent]=\"rightContent\">\n\t<input ngDocInputNumber type=\"number\" [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
32
+ }], ctorParameters: function () { return []; }, propDecorators: { default: [{
33
+ type: Input
34
+ }] } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvdHlwZS1jb250cm9scy9udW1iZXItY29udHJvbC9udW1iZXItY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL251bWJlci1jb250cm9sL251bWJlci1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUNOLHdCQUF3QixFQUN4Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6QiwwQkFBMEIsR0FDMUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBRWpFLE1BaUJhLDJCQUE0QixTQUFRLFNBQWlCO0lBSWpFO1FBQ0MsS0FBSyxFQUFFLENBQUM7SUFDVCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQW9CO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDOzhHQVZXLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHdJQzlCeEMseWxCQWlCQSwyRkRHRSwwQkFBMEIsZ0pBQzFCLHVCQUF1Qiw0SEFDdkIseUJBQXlCLG1FQUN6QixXQUFXLGl4QkFDWCxJQUFJLDZGQUNKLHdCQUF3QiwySEFDeEIsdUJBQXVCLHVIQUN2QixrQkFBa0I7O1NBR1AsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBakJ2QyxTQUFTOytCQUNDLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1IsMEJBQTBCO3dCQUMxQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsV0FBVzt3QkFDWCxJQUFJO3dCQUNKLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixrQkFBa0I7cUJBQ2xCOzBFQUlELE9BQU87c0JBRE4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtOZ0RvY1R5cGVDb250cm9sfSBmcm9tICdAbmctZG9jL2FwcC9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG5cdE5nRG9jQnV0dG9uSWNvbkNvbXBvbmVudCxcblx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NJbnB1dE51bWJlckRpcmVjdGl2ZSxcblx0TmdEb2NJbnB1dFdyYXBwZXJDb21wb25lbnQsXG59IGZyb20gJ0BuZy1kb2MvdWkta2l0JztcbmltcG9ydCB7RmxDb250cm9sLCBGbENvbnRyb2xTaWxlbmNlck1vZHVsZX0gZnJvbSAnZmxleC1jb250cm9scyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy1udW1iZXItY29udHJvbCcsXG5cdHRlbXBsYXRlVXJsOiAnLi9udW1iZXItY29udHJvbC5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL251bWJlci1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdEb2NJbnB1dFdyYXBwZXJDb21wb25lbnQsXG5cdFx0RmxDb250cm9sU2lsZW5jZXJNb2R1bGUsXG5cdFx0TmdEb2NJbnB1dE51bWJlckRpcmVjdGl2ZSxcblx0XHRGb3Jtc01vZHVsZSxcblx0XHROZ0lmLFxuXHRcdE5nRG9jQnV0dG9uSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY0ZvY3VzYWJsZURpcmVjdGl2ZSxcblx0XHROZ0RvY0ljb25Db21wb25lbnQsXG5cdF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nRG9jTnVtYmVyQ29udHJvbENvbXBvbmVudCBleHRlbmRzIEZsQ29udHJvbDxudW1iZXI+IGltcGxlbWVudHMgTmdEb2NUeXBlQ29udHJvbDxudW1iZXI+IHtcblx0QElucHV0KClcblx0ZGVmYXVsdD86IG51bWJlcjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcigpO1xuXHR9XG5cblx0Y2hhbmdlTW9kZWwodmFsdWU6IG51bWJlciB8IG51bGwpOiB2b2lkIHtcblx0XHR0aGlzLnVwZGF0ZU1vZGVsKHZhbHVlID09PSBudWxsICYmIHRoaXMuZGVmYXVsdCA/IHRoaXMuZGVmYXVsdCA6IHZhbHVlKTtcblx0fVxufVxuIiwiPG5nLWRvYy1pbnB1dC13cmFwcGVyIGZsQ29udHJvbFNpbGVuY2VyIFtyaWdodENvbnRlbnRdPVwicmlnaHRDb250ZW50XCI+XG5cdDxpbnB1dCBuZ0RvY0lucHV0TnVtYmVyIHR5cGU9XCJudW1iZXJcIiBbbmdNb2RlbF09XCJtb2RlbFwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZU1vZGVsKCRldmVudClcIj5cblx0PG5nLXRlbXBsYXRlICNyaWdodENvbnRlbnQ+XG5cdFx0PGJ1dHRvblxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHRzaXplPVwibGFyZ2VcIlxuXHRcdFx0W25nRG9jRm9jdXNhYmxlXT1cImZhbHNlXCJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHRbcm91bmRlZF09XCJmYWxzZVwiXG5cdFx0XHQoY2xpY2spPVwidXBkYXRlTW9kZWwoZGVmYXVsdCA/PyBudWxsKVwiXG5cdFx0XHQoZm9jdXNvdXQpPVwib25Ub3VjaGVkKClcIlxuXHRcdFx0Km5nSWY9XCJtb2RlbCAmJiBtb2RlbCAhPT0gZGVmYXVsdFwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJ4XCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9uZy10ZW1wbGF0ZT5cbjwvbmctZG9jLWlucHV0LXdyYXBwZXI+XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  import { NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
- import { extractValue } from '@ng-doc/core/helpers/extract-value';
5
4
  import { NgDocButtonIconComponent, NgDocFocusableDirective, NgDocIconComponent, NgDocInputStringDirective, NgDocInputWrapperComponent, } from '@ng-doc/ui-kit';
6
5
  import { FlControl, FlControlSilencerModule } from 'flex-controls';
7
6
  import * as i0 from "@angular/core";
@@ -11,17 +10,14 @@ class NgDocStringControlComponent extends FlControl {
11
10
  constructor() {
12
11
  super();
13
12
  }
14
- get defaultValue() {
15
- return this.default ? extractValue(this.default) : null;
16
- }
17
13
  changeModel(value) {
18
- this.updateModel(value === null && this.default ? this.defaultValue : value);
14
+ this.updateModel(value === null && this.default ? this.default : value);
19
15
  }
20
16
  writeValue(value) {
21
17
  super.writeValue(value);
22
18
  }
23
19
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocStringControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocStringControlComponent, isStandalone: true, selector: "ng-doc-string-control", usesInheritance: true, ngImport: i0, template: "<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "ngmodule", type: FlControlSilencerModule }, { kind: "directive", type: i2.FlControlSilencerDirective, selector: "[flControlSilencer]" }, { kind: "directive", type: NgDocInputStringDirective, selector: "input[ngDocInputString]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocStringControlComponent, isStandalone: true, selector: "ng-doc-string-control", inputs: { default: "default" }, usesInheritance: true, ngImport: i0, template: "<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: NgDocInputWrapperComponent, selector: "ng-doc-input-wrapper", inputs: ["blurContent", "blurContext", "leftContent", "rightContent", "align"] }, { kind: "ngmodule", type: FlControlSilencerModule }, { kind: "directive", type: i2.FlControlSilencerDirective, selector: "[flControlSilencer]" }, { kind: "directive", type: NgDocInputStringDirective, selector: "input[ngDocInputString]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
21
  }
26
22
  export { NgDocStringControlComponent };
27
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocStringControlComponent, decorators: [{
@@ -35,6 +31,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
35
31
  NgDocButtonIconComponent,
36
32
  NgDocFocusableDirective,
37
33
  NgDocIconComponent,
38
- ], template: "<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
39
- }], ctorParameters: function () { return []; } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvdHlwZS1jb250cm9scy9zdHJpbmctY29udHJvbC9zdHJpbmctY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL3N0cmluZy1jb250cm9sL3N0cmluZy1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUNOLHdCQUF3QixFQUN4Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6QiwwQkFBMEIsR0FDMUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBRWpFLE1BaUJhLDJCQUE0QixTQUFRLFNBQWlCO0lBR2pFO1FBQ0MsS0FBSyxFQUFFLENBQUM7SUFDVCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckUsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFvQjtRQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVRLFVBQVUsQ0FBQyxLQUFvQjtRQUN2QyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBakJXLDJCQUEyQjtrR0FBM0IsMkJBQTJCLHdHQy9CeEMsMmtCQWlCQSwwRkRJRSxXQUFXLCttQkFDWCwwQkFBMEIsZ0pBQzFCLHVCQUF1Qiw0SEFDdkIseUJBQXlCLG9FQUN6QixJQUFJLDZGQUNKLHdCQUF3QiwySEFDeEIsdUJBQXVCLHVIQUN2QixrQkFBa0I7O1NBR1AsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBakJ2QyxTQUFTOytCQUNDLHVCQUF1QixtQkFHaEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1IsV0FBVzt3QkFDWCwwQkFBMEI7d0JBQzFCLHVCQUF1Qjt3QkFDdkIseUJBQXlCO3dCQUN6QixJQUFJO3dCQUNKLHdCQUF3Qjt3QkFDeEIsdUJBQXVCO3dCQUN2QixrQkFBa0I7cUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0lmfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TmdEb2NUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge2V4dHJhY3RWYWx1ZX0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvZXh0cmFjdC12YWx1ZSc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jRm9jdXNhYmxlRGlyZWN0aXZlLFxuXHROZ0RvY0ljb25Db21wb25lbnQsXG5cdE5nRG9jSW5wdXRTdHJpbmdEaXJlY3RpdmUsXG5cdE5nRG9jSW5wdXRXcmFwcGVyQ29tcG9uZW50LFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge0ZsQ29udHJvbCwgRmxDb250cm9sU2lsZW5jZXJNb2R1bGV9IGZyb20gJ2ZsZXgtY29udHJvbHMnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2Mtc3RyaW5nLWNvbnRyb2wnLFxuXHR0ZW1wbGF0ZVVybDogJy4vc3RyaW5nLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9zdHJpbmctY29udHJvbC5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW1xuXHRcdEZvcm1zTW9kdWxlLFxuXHRcdE5nRG9jSW5wdXRXcmFwcGVyQ29tcG9uZW50LFxuXHRcdEZsQ29udHJvbFNpbGVuY2VyTW9kdWxlLFxuXHRcdE5nRG9jSW5wdXRTdHJpbmdEaXJlY3RpdmUsXG5cdFx0TmdJZixcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY1N0cmluZ0NvbnRyb2xDb21wb25lbnQgZXh0ZW5kcyBGbENvbnRyb2w8c3RyaW5nPiBpbXBsZW1lbnRzIE5nRG9jVHlwZUNvbnRyb2wge1xuXHRkZWZhdWx0Pzogc3RyaW5nO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdHN1cGVyKCk7XG5cdH1cblxuXHRnZXQgZGVmYXVsdFZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLmRlZmF1bHQgPyAoZXh0cmFjdFZhbHVlKHRoaXMuZGVmYXVsdCkgYXMgc3RyaW5nKSA6IG51bGw7XG5cdH1cblxuXHRjaGFuZ2VNb2RlbCh2YWx1ZTogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuXHRcdHRoaXMudXBkYXRlTW9kZWwodmFsdWUgPT09IG51bGwgJiYgdGhpcy5kZWZhdWx0ID8gdGhpcy5kZWZhdWx0VmFsdWUgOiB2YWx1ZSk7XG5cdH1cblxuXHRvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG5cdFx0c3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtaW5wdXQtd3JhcHBlciBbcmlnaHRDb250ZW50XT1cInJpZ2h0Q29udGVudFwiIGZsQ29udHJvbFNpbGVuY2VyPlxuXHQ8aW5wdXQgbmdEb2NJbnB1dFN0cmluZyBbbmdNb2RlbF09XCJtb2RlbFwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZU1vZGVsKCRldmVudClcIj5cblx0PG5nLXRlbXBsYXRlICNyaWdodENvbnRlbnQ+XG5cdFx0PGJ1dHRvblxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHRzaXplPVwibGFyZ2VcIlxuXHRcdFx0W25nRG9jRm9jdXNhYmxlXT1cImZhbHNlXCJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHRbcm91bmRlZF09XCJmYWxzZVwiXG5cdFx0XHQoY2xpY2spPVwidXBkYXRlTW9kZWwoZGVmYXVsdFZhbHVlKVwiXG5cdFx0XHQoZm9jdXNvdXQpPVwib25Ub3VjaGVkKClcIlxuXHRcdFx0Km5nSWY9XCJtb2RlbCAmJiBtb2RlbCAhPT0gZGVmYXVsdFZhbHVlXCJcblx0XHQ+XG5cdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cInhcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYnV0dG9uPlxuXHQ8L25nLXRlbXBsYXRlPlxuPC9uZy1kb2MtaW5wdXQtd3JhcHBlcj5cbiJdfQ==
34
+ ], template: "<ng-doc-input-wrapper [rightContent]=\"rightContent\" flControlSilencer>\n\t<input ngDocInputString [ngModel]=\"model\" (ngModelChange)=\"changeModel($event)\">\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-input-wrapper>\n", styles: [":host{display:block;width:100%}\n"] }]
35
+ }], ctorParameters: function () { return []; }, propDecorators: { default: [{
36
+ type: Input
37
+ }] } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWNvbnRyb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcHAvdHlwZS1jb250cm9scy9zdHJpbmctY29udHJvbC9zdHJpbmctY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL3N0cmluZy1jb250cm9sL3N0cmluZy1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyQyxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUNOLHdCQUF3QixFQUN4Qix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLHlCQUF5QixFQUN6QiwwQkFBMEIsR0FDMUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFFLHVCQUF1QixFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBRWpFLE1BaUJhLDJCQUE0QixTQUFRLFNBQWlCO0lBSWpFO1FBQ0MsS0FBSyxFQUFFLENBQUM7SUFDVCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQW9CO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRVEsVUFBVSxDQUFDLEtBQW9CO1FBQ3ZDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs4R0FkVywyQkFBMkI7a0dBQTNCLDJCQUEyQix3SUM5QnhDLHlrQkFpQkEsMEZER0UsV0FBVywrbUJBQ1gsMEJBQTBCLGdKQUMxQix1QkFBdUIsNEhBQ3ZCLHlCQUF5QixvRUFDekIsSUFBSSw2RkFDSix3QkFBd0IsMkhBQ3hCLHVCQUF1Qix1SEFDdkIsa0JBQWtCOztTQUdQLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQWpCdkMsU0FBUzsrQkFDQyx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNSLFdBQVc7d0JBQ1gsMEJBQTBCO3dCQUMxQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIsSUFBSTt3QkFDSix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsa0JBQWtCO3FCQUNsQjswRUFJRCxPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nSWZ9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TmdEb2NUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jRm9jdXNhYmxlRGlyZWN0aXZlLFxuXHROZ0RvY0ljb25Db21wb25lbnQsXG5cdE5nRG9jSW5wdXRTdHJpbmdEaXJlY3RpdmUsXG5cdE5nRG9jSW5wdXRXcmFwcGVyQ29tcG9uZW50LFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge0ZsQ29udHJvbCwgRmxDb250cm9sU2lsZW5jZXJNb2R1bGV9IGZyb20gJ2ZsZXgtY29udHJvbHMnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZy1kb2Mtc3RyaW5nLWNvbnRyb2wnLFxuXHR0ZW1wbGF0ZVVybDogJy4vc3RyaW5nLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybHM6IFsnLi9zdHJpbmctY29udHJvbC5jb21wb25lbnQuc2NzcyddLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW1xuXHRcdEZvcm1zTW9kdWxlLFxuXHRcdE5nRG9jSW5wdXRXcmFwcGVyQ29tcG9uZW50LFxuXHRcdEZsQ29udHJvbFNpbGVuY2VyTW9kdWxlLFxuXHRcdE5nRG9jSW5wdXRTdHJpbmdEaXJlY3RpdmUsXG5cdFx0TmdJZixcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ0RvY1N0cmluZ0NvbnRyb2xDb21wb25lbnQgZXh0ZW5kcyBGbENvbnRyb2w8c3RyaW5nPiBpbXBsZW1lbnRzIE5nRG9jVHlwZUNvbnRyb2w8c3RyaW5nPiB7XG5cdEBJbnB1dCgpXG5cdGRlZmF1bHQ/OiBzdHJpbmc7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0c3VwZXIoKTtcblx0fVxuXG5cdGNoYW5nZU1vZGVsKHZhbHVlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG5cdFx0dGhpcy51cGRhdGVNb2RlbCh2YWx1ZSA9PT0gbnVsbCAmJiB0aGlzLmRlZmF1bHQgPyB0aGlzLmRlZmF1bHQgOiB2YWx1ZSk7XG5cdH1cblxuXHRvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG5cdFx0c3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtaW5wdXQtd3JhcHBlciBbcmlnaHRDb250ZW50XT1cInJpZ2h0Q29udGVudFwiIGZsQ29udHJvbFNpbGVuY2VyPlxuXHQ8aW5wdXQgbmdEb2NJbnB1dFN0cmluZyBbbmdNb2RlbF09XCJtb2RlbFwiIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZU1vZGVsKCRldmVudClcIj5cblx0PG5nLXRlbXBsYXRlICNyaWdodENvbnRlbnQ+XG5cdFx0PGJ1dHRvblxuXHRcdFx0bmctZG9jLWJ1dHRvbi1pY29uXG5cdFx0XHRzaXplPVwibGFyZ2VcIlxuXHRcdFx0W25nRG9jRm9jdXNhYmxlXT1cImZhbHNlXCJcblx0XHRcdFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cdFx0XHRbcm91bmRlZF09XCJmYWxzZVwiXG5cdFx0XHQoY2xpY2spPVwidXBkYXRlTW9kZWwoZGVmYXVsdCA/PyBudWxsKVwiXG5cdFx0XHQoZm9jdXNvdXQpPVwib25Ub3VjaGVkKClcIlxuXHRcdFx0Km5nSWY9XCJtb2RlbCAmJiBtb2RlbCAhPT0gZGVmYXVsdFwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJ4XCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9uZy10ZW1wbGF0ZT5cbjwvbmctZG9jLWlucHV0LXdyYXBwZXI+XG4iXX0=
@@ -1,9 +1,8 @@
1
1
  import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
3
  import { FormsModule } from '@angular/forms';
4
4
  import { NgDocKindIconComponent } from '@ng-doc/app/components/kind-icon';
5
5
  import { NgDocExtractValuePipe } from '@ng-doc/app/pipes/extract-value';
6
- import { extractValue } from '@ng-doc/core/helpers/extract-value';
7
6
  import { NgDocButtonIconComponent, NgDocComboboxComponent, NgDocDataDirective, NgDocFocusableDirective, NgDocIconComponent, NgDocListComponent, NgDocOptionComponent, NgDocTextComponent, NgDocTextLeftDirective, NgDocTextRightDirective, NgDocTooltipDirective, } from '@ng-doc/ui-kit';
8
7
  import { FlControl } from 'flex-controls';
9
8
  import * as i0 from "@angular/core";
@@ -12,17 +11,14 @@ class NgDocTypeAliasControlComponent extends FlControl {
12
11
  constructor() {
13
12
  super();
14
13
  }
15
- get defaultValue() {
16
- return this.default ? extractValue(this.default) : null;
17
- }
18
14
  typeOf(value) {
19
15
  return typeof value;
20
16
  }
21
17
  changeModel(value) {
22
- this.updateModel(value === null && this.default ? this.defaultValue : value);
18
+ this.updateModel(value === null && this.default ? this.default : value);
23
19
  }
24
20
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocTypeAliasControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocTypeAliasControlComponent, isStandalone: true, selector: "ng-doc-type-alias-control", usesInheritance: true, ngImport: i0, template: "<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === defaultValue\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: NgDocComboboxComponent, selector: "ng-doc-combobox", inputs: ["readonly", "placeholder", "clearButton", "rightContent", "valueContent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgDocDataDirective, selector: "[ngDocData]" }, { kind: "component", type: NgDocListComponent, selector: "ng-doc-list" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocOptionComponent, selector: "ng-doc-option" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "directive", type: NgDocTextRightDirective, selector: "[ngDocTextRight]" }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "pipe", type: NgDocExtractValuePipe, name: "ngDocExtractValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocTypeAliasControlComponent, isStandalone: true, selector: "ng-doc-type-alias-control", inputs: { default: "default" }, usesInheritance: true, ngImport: i0, template: "<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === default\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n", styles: [":host{display:block;width:100%}\n"], dependencies: [{ kind: "component", type: NgDocComboboxComponent, selector: "ng-doc-combobox", inputs: ["readonly", "placeholder", "clearButton", "rightContent", "valueContent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgDocDataDirective, selector: "[ngDocData]" }, { kind: "component", type: NgDocListComponent, selector: "ng-doc-list" }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocOptionComponent, selector: "ng-doc-option" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocKindIconComponent, selector: "ng-doc-kind-icon", inputs: ["kind", "type"] }, { kind: "directive", type: NgDocTextLeftDirective, selector: "[ngDocTextLeft]" }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "directive", type: NgDocTextRightDirective, selector: "[ngDocTextRight]" }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "pipe", type: NgDocExtractValuePipe, name: "ngDocExtractValue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
22
  }
27
23
  export { NgDocTypeAliasControlComponent };
28
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocTypeAliasControlComponent, decorators: [{
@@ -45,6 +41,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
45
41
  NgDocFocusableDirective,
46
42
  NgDocIconComponent,
47
43
  NgDocExtractValuePipe,
48
- ], template: "<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === defaultValue\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(defaultValue)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== defaultValue\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n", styles: [":host{display:block;width:100%}\n"] }]
49
- }], ctorParameters: function () { return []; } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3R5cGUtY29udHJvbHMvdHlwZS1hbGlhcy1jb250cm9sL3R5cGUtYWxpYXMtY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL3R5cGUtYWxpYXMtY29udHJvbC90eXBlLWFsaWFzLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUV4RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUNOLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2QixxQkFBcUIsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFFeEMsTUEwQmEsOEJBQWtDLFNBQVEsU0FBWTtJQUlsRTtRQUNDLEtBQUssRUFBRSxDQUFDO0lBQ1QsQ0FBQztJQUVELElBQUksWUFBWTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQWtCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMzRSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWM7UUFDcEIsT0FBTyxPQUFPLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWU7UUFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7OEdBbEJXLDhCQUE4QjtrR0FBOUIsOEJBQThCLDRHQ2hEM0Msc2hEQTZDQSwyRkRoQkUsc0JBQXNCLCtJQUN0QixXQUFXLCtWQUNYLGtCQUFrQix3REFDbEIsa0JBQWtCLHdEQUNsQixLQUFLLG1IQUNMLElBQUksNkZBQ0osb0JBQW9CLDBEQUNwQixnQkFBZ0Isb0pBQ2hCLGtCQUFrQixpSEFDbEIsc0JBQXNCLHVGQUN0QixzQkFBc0IsNERBQ3RCLHFCQUFxQiwwVUFDckIsdUJBQXVCLDZEQUN2Qix3QkFBd0IsMkhBQ3hCLHVCQUF1Qix1SEFDdkIsa0JBQWtCLDZFQUNsQixxQkFBcUI7O1NBR1YsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBMUIxQyxTQUFTOytCQUNDLDJCQUEyQixtQkFHcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1Isc0JBQXNCO3dCQUN0QixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixLQUFLO3dCQUNMLElBQUk7d0JBQ0osb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsc0JBQXNCO3dCQUN0QixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsa0JBQWtCO3dCQUNsQixxQkFBcUI7cUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nRG9jS2luZEljb25Db21wb25lbnR9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMva2luZC1pY29uJztcbmltcG9ydCB7TmdEb2NUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge05nRG9jRXh0cmFjdFZhbHVlUGlwZX0gZnJvbSAnQG5nLWRvYy9hcHAvcGlwZXMvZXh0cmFjdC12YWx1ZSc7XG5pbXBvcnQge2V4dHJhY3RWYWx1ZX0gZnJvbSAnQG5nLWRvYy9jb3JlL2hlbHBlcnMvZXh0cmFjdC12YWx1ZSc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jQ29tYm9ib3hDb21wb25lbnQsXG5cdE5nRG9jRGF0YURpcmVjdGl2ZSxcblx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NMaXN0Q29tcG9uZW50LFxuXHROZ0RvY09wdGlvbkNvbXBvbmVudCxcblx0TmdEb2NUZXh0Q29tcG9uZW50LFxuXHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHROZ0RvY1RleHRSaWdodERpcmVjdGl2ZSxcblx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge0ZsQ29udHJvbH0gZnJvbSAnZmxleC1jb250cm9scyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy10eXBlLWFsaWFzLWNvbnRyb2wnLFxuXHR0ZW1wbGF0ZVVybDogJy4vdHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vdHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdEb2NDb21ib2JveENvbXBvbmVudCxcblx0XHRGb3Jtc01vZHVsZSxcblx0XHROZ0RvY0RhdGFEaXJlY3RpdmUsXG5cdFx0TmdEb2NMaXN0Q29tcG9uZW50LFxuXHRcdE5nRm9yLFxuXHRcdE5nSWYsXG5cdFx0TmdEb2NPcHRpb25Db21wb25lbnQsXG5cdFx0TmdUZW1wbGF0ZU91dGxldCxcblx0XHROZ0RvY1RleHRDb21wb25lbnQsXG5cdFx0TmdEb2NLaW5kSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHRcdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcblx0XHROZ0RvY1RleHRSaWdodERpcmVjdGl2ZSxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jRXh0cmFjdFZhbHVlUGlwZSxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NUeXBlQWxpYXNDb250cm9sQ29tcG9uZW50PFQ+IGV4dGVuZHMgRmxDb250cm9sPFQ+IGltcGxlbWVudHMgTmdEb2NUeXBlQ29udHJvbCB7XG5cdGRlZmF1bHQ/OiBzdHJpbmc7XG5cdG9wdGlvbnM/OiBzdHJpbmdbXTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcigpO1xuXHR9XG5cblx0Z2V0IGRlZmF1bHRWYWx1ZSgpOiBUIHwgbnVsbCB7XG5cdFx0cmV0dXJuIHRoaXMuZGVmYXVsdCA/IChleHRyYWN0VmFsdWUodGhpcy5kZWZhdWx0KSBhcyB1bmtub3duIGFzIFQpIDogbnVsbDtcblx0fVxuXG5cdHR5cGVPZih2YWx1ZTogdW5rbm93bik6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHR5cGVvZiB2YWx1ZTtcblx0fVxuXG5cdGNoYW5nZU1vZGVsKHZhbHVlOiBUIHwgbnVsbCk6IHZvaWQge1xuXHRcdHRoaXMudXBkYXRlTW9kZWwodmFsdWUgPT09IG51bGwgJiYgdGhpcy5kZWZhdWx0ID8gdGhpcy5kZWZhdWx0VmFsdWUgOiB2YWx1ZSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtY29tYm9ib3ggW25nTW9kZWxdPVwibW9kZWxcIlxuXHRcdFx0XHQgW3JlYWRvbmx5XT1cInRydWVcIlxuXHRcdFx0XHQgW3ZhbHVlQ29udGVudF09XCJ2YWx1ZVRlbXBsYXRlXCJcblx0XHRcdFx0IFtjbGVhckJ1dHRvbl09XCJmYWxzZVwiXG5cdFx0XHRcdCBbcmlnaHRDb250ZW50XT1cInJpZ2h0Q29udGVudFwiXG5cdFx0XHRcdCAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VNb2RlbCgkZXZlbnQpXCI+XG5cdDxuZy1kb2MtbGlzdCAqbmdEb2NEYXRhPlxuXHRcdDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zXCI+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uIHwgbmdEb2NFeHRyYWN0VmFsdWUgYXMgdmFsdWVcIj5cblx0XHRcdFx0PG5nLWRvYy1vcHRpb24gW3ZhbHVlXT1cInZhbHVlXCI+XG5cdFx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInZhbHVlVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHZhbHVlfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHQ8L25nLWRvYy1vcHRpb24+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0PC9uZy1kb2MtbGlzdD5cblx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjdmFsdWVUZW1wbGF0ZT5cblx0XHQ8ZGl2IG5nLWRvYy10ZXh0PlxuXHRcdFx0PG5nLWRvYy1raW5kLWljb24gW2tpbmRdPVwidHlwZU9mKHZhbHVlKVwiXG5cdFx0XHRcdFx0XHRcdCAgW3R5cGVdPVwiJ3R5cGUnXCJcblx0XHRcdFx0XHRcdFx0ICBbbmdEb2NUb29sdGlwXT1cInR5cGVPZih2YWx1ZSlcIlxuXHRcdFx0XHRcdFx0XHQgIHBvc2l0aW9ucz1cImxlZnQtY2VudGVyXCJcblx0XHRcdFx0XHRcdFx0ICBuZ0RvY1RleHRMZWZ0PlxuXHRcdFx0PC9uZy1kb2Mta2luZC1pY29uPlxuXHRcdFx0PGRpdj57e3ZhbHVlfX08L2Rpdj5cblx0XHRcdDxzcGFuIG5nLWRvYy10ZXh0XG5cdFx0XHRcdCAgY29sb3I9XCJtdXRlZFwiXG5cdFx0XHRcdCAgc2l6ZT1cInNtYWxsXCJcblx0XHRcdFx0ICAqbmdJZj1cInZhbHVlID09PSBkZWZhdWx0VmFsdWVcIiBuZ0RvY1RleHRSaWdodD5bZGVmYXVsdF08L3NwYW4+XG5cdFx0PC9kaXY+XG5cdDwvbmctdGVtcGxhdGU+XG5cdDxuZy10ZW1wbGF0ZSAjcmlnaHRDb250ZW50PlxuXHRcdDxidXR0b25cblx0XHRcdG5nLWRvYy1idXR0b24taWNvblxuXHRcdFx0c2l6ZT1cImxhcmdlXCJcblx0XHRcdFtuZ0RvY0ZvY3VzYWJsZV09XCJmYWxzZVwiXG5cdFx0XHRbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuXHRcdFx0W3JvdW5kZWRdPVwiZmFsc2VcIlxuXHRcdFx0KGNsaWNrKT1cInVwZGF0ZU1vZGVsKGRlZmF1bHRWYWx1ZSlcIlxuXHRcdFx0KGZvY3Vzb3V0KT1cIm9uVG91Y2hlZCgpXCJcblx0XHRcdCpuZ0lmPVwibW9kZWwgJiYgbW9kZWwgIT09IGRlZmF1bHRWYWx1ZVwiXG5cdFx0PlxuXHRcdFx0PG5nLWRvYy1pY29uIGljb249XCJ4XCI+PC9uZy1kb2MtaWNvbj5cblx0XHQ8L2J1dHRvbj5cblx0PC9uZy10ZW1wbGF0ZT5cbjwvbmctZG9jLWNvbWJvYm94PlxuIl19
44
+ ], template: "<ng-doc-combobox [ngModel]=\"model\"\n\t\t\t\t [readonly]=\"true\"\n\t\t\t\t [valueContent]=\"valueTemplate\"\n\t\t\t\t [clearButton]=\"false\"\n\t\t\t\t [rightContent]=\"rightContent\"\n\t\t\t\t (ngModelChange)=\"changeModel($event)\">\n\t<ng-doc-list *ngDocData>\n\t\t<ng-container *ngFor=\"let option of options\">\n\t\t\t<ng-container *ngIf=\"option | ngDocExtractValue as value\">\n\t\t\t\t<ng-doc-option [value]=\"value\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"valueTemplate; context: {$implicit: value}\"></ng-container>\n\t\t\t\t</ng-doc-option>\n\t\t\t</ng-container>\n\t\t</ng-container>\n\t</ng-doc-list>\n\t<ng-template let-value #valueTemplate>\n\t\t<div ng-doc-text>\n\t\t\t<ng-doc-kind-icon [kind]=\"typeOf(value)\"\n\t\t\t\t\t\t\t [type]=\"'type'\"\n\t\t\t\t\t\t\t [ngDocTooltip]=\"typeOf(value)\"\n\t\t\t\t\t\t\t positions=\"left-center\"\n\t\t\t\t\t\t\t ngDocTextLeft>\n\t\t\t</ng-doc-kind-icon>\n\t\t\t<div>{{value}}</div>\n\t\t\t<span ng-doc-text\n\t\t\t\t color=\"muted\"\n\t\t\t\t size=\"small\"\n\t\t\t\t *ngIf=\"value === default\" ngDocTextRight>[default]</span>\n\t\t</div>\n\t</ng-template>\n\t<ng-template #rightContent>\n\t\t<button\n\t\t\tng-doc-button-icon\n\t\t\tsize=\"large\"\n\t\t\t[ngDocFocusable]=\"false\"\n\t\t\t[disabled]=\"disabled\"\n\t\t\t[rounded]=\"false\"\n\t\t\t(click)=\"updateModel(default ?? null)\"\n\t\t\t(focusout)=\"onTouched()\"\n\t\t\t*ngIf=\"model && model !== default\"\n\t\t>\n\t\t\t<ng-doc-icon icon=\"x\"></ng-doc-icon>\n\t\t</button>\n\t</ng-template>\n</ng-doc-combobox>\n", styles: [":host{display:block;width:100%}\n"] }]
45
+ }], ctorParameters: function () { return []; }, propDecorators: { default: [{
46
+ type: Input
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYXBwL3R5cGUtY29udHJvbHMvdHlwZS1hbGlhcy1jb250cm9sL3R5cGUtYWxpYXMtY29udHJvbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FwcC90eXBlLWNvbnRyb2xzL3R5cGUtYWxpYXMtY29udHJvbC90eXBlLWFsaWFzLWNvbnRyb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFeEUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEUsT0FBTyxFQUNOLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2QixxQkFBcUIsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFFeEMsTUEwQmEsOEJBQWtDLFNBQVEsU0FBWTtJQU1sRTtRQUNDLEtBQUssRUFBRSxDQUFDO0lBQ1QsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFjO1FBQ3BCLE9BQU8sT0FBTyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFlO1FBQzFCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RSxDQUFDOzhHQWhCVyw4QkFBOEI7a0dBQTlCLDhCQUE4Qiw0SUMvQzNDLCtnREE2Q0EsMkZEakJFLHNCQUFzQiwrSUFDdEIsV0FBVywrVkFDWCxrQkFBa0Isd0RBQ2xCLGtCQUFrQix3REFDbEIsS0FBSyxtSEFDTCxJQUFJLDZGQUNKLG9CQUFvQiwwREFDcEIsZ0JBQWdCLG9KQUNoQixrQkFBa0IsaUhBQ2xCLHNCQUFzQix1RkFDdEIsc0JBQXNCLDREQUN0QixxQkFBcUIsMFVBQ3JCLHVCQUF1Qiw2REFDdkIsd0JBQXdCLDJIQUN4Qix1QkFBdUIsdUhBQ3ZCLGtCQUFrQiw2RUFDbEIscUJBQXFCOztTQUdWLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQTFCMUMsU0FBUzsrQkFDQywyQkFBMkIsbUJBR3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNSLHNCQUFzQjt3QkFDdEIsV0FBVzt3QkFDWCxrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsS0FBSzt3QkFDTCxJQUFJO3dCQUNKLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIsc0JBQXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4Qix1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3FCQUNyQjswRUFJRCxPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05nRG9jS2luZEljb25Db21wb25lbnR9IGZyb20gJ0BuZy1kb2MvYXBwL2NvbXBvbmVudHMva2luZC1pY29uJztcbmltcG9ydCB7TmdEb2NUeXBlQ29udHJvbH0gZnJvbSAnQG5nLWRvYy9hcHAvaW50ZXJmYWNlcyc7XG5pbXBvcnQge05nRG9jRXh0cmFjdFZhbHVlUGlwZX0gZnJvbSAnQG5nLWRvYy9hcHAvcGlwZXMvZXh0cmFjdC12YWx1ZSc7XG5pbXBvcnQge1xuXHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdE5nRG9jQ29tYm9ib3hDb21wb25lbnQsXG5cdE5nRG9jRGF0YURpcmVjdGl2ZSxcblx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdE5nRG9jSWNvbkNvbXBvbmVudCxcblx0TmdEb2NMaXN0Q29tcG9uZW50LFxuXHROZ0RvY09wdGlvbkNvbXBvbmVudCxcblx0TmdEb2NUZXh0Q29tcG9uZW50LFxuXHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHROZ0RvY1RleHRSaWdodERpcmVjdGl2ZSxcblx0TmdEb2NUb29sdGlwRGlyZWN0aXZlLFxufSBmcm9tICdAbmctZG9jL3VpLWtpdCc7XG5pbXBvcnQge0ZsQ29udHJvbH0gZnJvbSAnZmxleC1jb250cm9scyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25nLWRvYy10eXBlLWFsaWFzLWNvbnRyb2wnLFxuXHR0ZW1wbGF0ZVVybDogJy4vdHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmxzOiBbJy4vdHlwZS1hbGlhcy1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXG5cdFx0TmdEb2NDb21ib2JveENvbXBvbmVudCxcblx0XHRGb3Jtc01vZHVsZSxcblx0XHROZ0RvY0RhdGFEaXJlY3RpdmUsXG5cdFx0TmdEb2NMaXN0Q29tcG9uZW50LFxuXHRcdE5nRm9yLFxuXHRcdE5nSWYsXG5cdFx0TmdEb2NPcHRpb25Db21wb25lbnQsXG5cdFx0TmdUZW1wbGF0ZU91dGxldCxcblx0XHROZ0RvY1RleHRDb21wb25lbnQsXG5cdFx0TmdEb2NLaW5kSWNvbkNvbXBvbmVudCxcblx0XHROZ0RvY1RleHRMZWZ0RGlyZWN0aXZlLFxuXHRcdE5nRG9jVG9vbHRpcERpcmVjdGl2ZSxcblx0XHROZ0RvY1RleHRSaWdodERpcmVjdGl2ZSxcblx0XHROZ0RvY0J1dHRvbkljb25Db21wb25lbnQsXG5cdFx0TmdEb2NGb2N1c2FibGVEaXJlY3RpdmUsXG5cdFx0TmdEb2NJY29uQ29tcG9uZW50LFxuXHRcdE5nRG9jRXh0cmFjdFZhbHVlUGlwZSxcblx0XSxcbn0pXG5leHBvcnQgY2xhc3MgTmdEb2NUeXBlQWxpYXNDb250cm9sQ29tcG9uZW50PFQ+IGV4dGVuZHMgRmxDb250cm9sPFQ+IGltcGxlbWVudHMgTmdEb2NUeXBlQ29udHJvbDxUPiB7XG5cdEBJbnB1dCgpXG5cdGRlZmF1bHQ/OiBUO1xuXG5cdG9wdGlvbnM/OiBzdHJpbmdbXTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRzdXBlcigpO1xuXHR9XG5cblx0dHlwZU9mKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gdHlwZW9mIHZhbHVlO1xuXHR9XG5cblx0Y2hhbmdlTW9kZWwodmFsdWU6IFQgfCBudWxsKTogdm9pZCB7XG5cdFx0dGhpcy51cGRhdGVNb2RlbCh2YWx1ZSA9PT0gbnVsbCAmJiB0aGlzLmRlZmF1bHQgPyB0aGlzLmRlZmF1bHQgOiB2YWx1ZSk7XG5cdH1cbn1cbiIsIjxuZy1kb2MtY29tYm9ib3ggW25nTW9kZWxdPVwibW9kZWxcIlxuXHRcdFx0XHQgW3JlYWRvbmx5XT1cInRydWVcIlxuXHRcdFx0XHQgW3ZhbHVlQ29udGVudF09XCJ2YWx1ZVRlbXBsYXRlXCJcblx0XHRcdFx0IFtjbGVhckJ1dHRvbl09XCJmYWxzZVwiXG5cdFx0XHRcdCBbcmlnaHRDb250ZW50XT1cInJpZ2h0Q29udGVudFwiXG5cdFx0XHRcdCAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VNb2RlbCgkZXZlbnQpXCI+XG5cdDxuZy1kb2MtbGlzdCAqbmdEb2NEYXRhPlxuXHRcdDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zXCI+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9uIHwgbmdEb2NFeHRyYWN0VmFsdWUgYXMgdmFsdWVcIj5cblx0XHRcdFx0PG5nLWRvYy1vcHRpb24gW3ZhbHVlXT1cInZhbHVlXCI+XG5cdFx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInZhbHVlVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHZhbHVlfVwiPjwvbmctY29udGFpbmVyPlxuXHRcdFx0XHQ8L25nLWRvYy1vcHRpb24+XG5cdFx0XHQ8L25nLWNvbnRhaW5lcj5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0PC9uZy1kb2MtbGlzdD5cblx0PG5nLXRlbXBsYXRlIGxldC12YWx1ZSAjdmFsdWVUZW1wbGF0ZT5cblx0XHQ8ZGl2IG5nLWRvYy10ZXh0PlxuXHRcdFx0PG5nLWRvYy1raW5kLWljb24gW2tpbmRdPVwidHlwZU9mKHZhbHVlKVwiXG5cdFx0XHRcdFx0XHRcdCAgW3R5cGVdPVwiJ3R5cGUnXCJcblx0XHRcdFx0XHRcdFx0ICBbbmdEb2NUb29sdGlwXT1cInR5cGVPZih2YWx1ZSlcIlxuXHRcdFx0XHRcdFx0XHQgIHBvc2l0aW9ucz1cImxlZnQtY2VudGVyXCJcblx0XHRcdFx0XHRcdFx0ICBuZ0RvY1RleHRMZWZ0PlxuXHRcdFx0PC9uZy1kb2Mta2luZC1pY29uPlxuXHRcdFx0PGRpdj57e3ZhbHVlfX08L2Rpdj5cblx0XHRcdDxzcGFuIG5nLWRvYy10ZXh0XG5cdFx0XHRcdCAgY29sb3I9XCJtdXRlZFwiXG5cdFx0XHRcdCAgc2l6ZT1cInNtYWxsXCJcblx0XHRcdFx0ICAqbmdJZj1cInZhbHVlID09PSBkZWZhdWx0XCIgbmdEb2NUZXh0UmlnaHQ+W2RlZmF1bHRdPC9zcGFuPlxuXHRcdDwvZGl2PlxuXHQ8L25nLXRlbXBsYXRlPlxuXHQ8bmctdGVtcGxhdGUgI3JpZ2h0Q29udGVudD5cblx0XHQ8YnV0dG9uXG5cdFx0XHRuZy1kb2MtYnV0dG9uLWljb25cblx0XHRcdHNpemU9XCJsYXJnZVwiXG5cdFx0XHRbbmdEb2NGb2N1c2FibGVdPVwiZmFsc2VcIlxuXHRcdFx0W2Rpc2FibGVkXT1cImRpc2FibGVkXCJcblx0XHRcdFtyb3VuZGVkXT1cImZhbHNlXCJcblx0XHRcdChjbGljayk9XCJ1cGRhdGVNb2RlbChkZWZhdWx0ID8/IG51bGwpXCJcblx0XHRcdChmb2N1c291dCk9XCJvblRvdWNoZWQoKVwiXG5cdFx0XHQqbmdJZj1cIm1vZGVsICYmIG1vZGVsICE9PSBkZWZhdWx0XCJcblx0XHQ+XG5cdFx0XHQ8bmctZG9jLWljb24gaWNvbj1cInhcIj48L25nLWRvYy1pY29uPlxuXHRcdDwvYnV0dG9uPlxuXHQ8L25nLXRlbXBsYXRlPlxuPC9uZy1kb2MtY29tYm9ib3g+XG4iXX0=
@@ -3,8 +3,7 @@ import { NgIf } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
4
  import { Component, ChangeDetectionStrategy, Input, HostBinding } from '@angular/core';
5
5
  import { NgDocSanitizeHtmlPipe } from '@ng-doc/app/pipes/sanitize-html';
6
- import { NgDocLinkProcessorDirective } from '@ng-doc/app/processors/link-processor';
7
- import { NgDocTooltipProcessorDirective } from '@ng-doc/app/processors/tooltip-processor';
6
+ import { NgDocPageProcessorDirective } from '@ng-doc/app/processors/page-processor';
8
7
  import { NgDocTextComponent, NgDocButtonIconComponent, NgDocTooltipDirective, NgDocSmoothResizeComponent, NgDocIconComponent } from '@ng-doc/ui-kit';
9
8
 
10
9
  class NgDocCodeComponent {
@@ -26,7 +25,7 @@ class NgDocCodeComponent {
26
25
  this.clipboard.copy(this.codeElement?.textContent ?? '');
27
26
  }
28
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocCodeComponent, deps: [{ token: i0.ElementRef }, { token: i1.Clipboard }], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocCodeComponent, isStandalone: true, selector: "ng-doc-code", inputs: { html: "html", copyButton: "copyButton", name: "name", lineNumbers: "lineNumbers" }, host: { properties: { "attr.data-ng-doc-has-header": "this.hasHeader" } }, ngImport: i0, template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocLinkProcessor\n\t\tngDocTooltipProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 14px}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var(--ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2));--ng-doc-button-active-background: var(--ng-doc-code-copy-button-active-background, var(--ng-doc-base-3))}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }, { kind: "directive", type: NgDocTooltipProcessorDirective, selector: "[ngDocTooltipProcessor]" }, { kind: "directive", type: NgDocLinkProcessorDirective, selector: "[ngDocLinkProcessor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: NgDocCodeComponent, isStandalone: true, selector: "ng-doc-code", inputs: { html: "html", copyButton: "copyButton", name: "name", lineNumbers: "lineNumbers" }, host: { properties: { "attr.data-ng-doc-has-header": "this.hasHeader" } }, ngImport: i0, template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 14px}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var(--ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2));--ng-doc-button-active-background: var(--ng-doc-code-copy-button-active-background, var(--ng-doc-base-3))}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocTextComponent, selector: "[ng-doc-text]", inputs: ["size", "color", "align", "absoluteContent"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocTooltipDirective, selector: "[ngDocTooltip]", inputs: ["ngDocTooltip", "delay", "displayOrigin", "pointerOrigin", "positions", "canOpen", "panelClass", "minHeight", "maxHeight", "height", "minWidth", "maxWidth", "width"], outputs: ["beforeOpen", "afterOpen", "beforeClose", "afterClose"], exportAs: ["ngDocTooltip"] }, { kind: "component", type: NgDocSmoothResizeComponent, selector: "ng-doc-smooth-resize", inputs: ["trigger", "animateOpacity"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "size"] }, { kind: "pipe", type: NgDocSanitizeHtmlPipe, name: "ngDocSanitizeHtml" }, { kind: "directive", type: NgDocPageProcessorDirective, selector: "[ngDocPageProcessor]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
30
29
  }
31
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: NgDocCodeComponent, decorators: [{
32
31
  type: Component,
@@ -38,9 +37,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
38
37
  NgDocSmoothResizeComponent,
39
38
  NgDocIconComponent,
40
39
  NgDocSanitizeHtmlPipe,
41
- NgDocTooltipProcessorDirective,
42
- NgDocLinkProcessorDirective,
43
- ], template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocLinkProcessor\n\t\tngDocTooltipProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 14px}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var(--ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2));--ng-doc-button-active-background: var(--ng-doc-code-copy-button-active-background, var(--ng-doc-base-3))}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"] }]
40
+ NgDocPageProcessorDirective,
41
+ ], template: "<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n", styles: [":host{position:relative;display:block;margin:var(--ng-doc-code-margin)}:host:hover .ng-doc-copy-button{opacity:1}:host[data-ng-doc-has-header=true]{--ng-doc-code-border-radius: 0 0 var(--ng-doc-base-gutter) var(--ng-doc-base-gutter);--ng-doc-code-shadow: none}:host .ng-doc-code-wrapper{--ng-doc-code-margin: 0}:host .ng-doc-code-header{display:flex;align-items:center;padding:var(--ng-doc-base-gutter) calc(var(--ng-doc-base-gutter) * 2);background:var(--ng-doc-code-header-background, var(--ng-doc-base-2));border-radius:var(--ng-doc-base-gutter) var(--ng-doc-base-gutter) 0 0}:host .ng-doc-code-header .ng-doc-code-file-name{--ng-doc-text: var(--ng-doc-code-header-color);--ng-doc-font-weight: 600;--ng-doc-font-size: 14px}:host .ng-doc-code-body{position:relative;height:100%}:host .ng-doc-copy-button{position:absolute;top:var(--ng-doc-base-gutter);right:var(--ng-doc-base-gutter);transition:var(--ng-doc-transition);opacity:0;--ng-doc-icon-color: var(--ng-doc-text-muted);--ng-doc-button-background: transparent;--ng-doc-button-hover-background: var(--ng-doc-code-copy-button-hover-background, var(--ng-doc-base-2));--ng-doc-button-active-background: var(--ng-doc-code-copy-button-active-background, var(--ng-doc-base-3))}:host .ng-doc-code-wrapper{height:100%}:host ::ng-deep pre{display:flex;margin:var(--ng-doc-code-margin);border-radius:var(--ng-doc-code-border-radius, var(--ng-doc-base-gutter));overflow:hidden;height:100%}:host ::ng-deep pre code{display:block;padding:calc(var(--ng-doc-base-gutter) * 2);width:100%;font-family:var(--ng-doc-code-font);font-size:var(--ng-doc-code-font-size);line-height:var(--ng-doc-code-line-height);max-height:var(--ng-doc-code-max-height);overflow:auto;height:100%}:host ::ng-deep pre code.code-lines{display:grid;padding:calc(var(--ng-doc-base-gutter) * 2) 0}:host ::ng-deep pre code .line{position:relative;padding:0 calc(var(--ng-doc-base-gutter) * 2)}:host ::ng-deep pre code .line.highlighted{background:var(--ng-doc-code-highlight-background, rgba(var(--ng-doc-primary-rgb), .15))}:host ::ng-deep pre code .line.highlighted:before{content:\"\";position:absolute;top:0;left:0;width:2px;height:100%;background:var(--ng-doc-code-highlight-border, var(--ng-doc-primary))}\n"] }]
44
42
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Clipboard }]; }, propDecorators: { html: [{
45
43
  type: Input
46
44
  }], copyButton: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-app-components-code.mjs","sources":["../../../../libs/app/components/code/code.component.ts","../../../../libs/app/components/code/code.component.html","../../../../libs/app/components/code/ng-doc-app-components-code.ts"],"sourcesContent":["import {Clipboard} from '@angular/cdk/clipboard';\nimport {NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input} from '@angular/core';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes/sanitize-html';\nimport {NgDocLinkProcessorDirective} from '@ng-doc/app/processors/link-processor';\nimport {NgDocTooltipProcessorDirective} from '@ng-doc/app/processors/tooltip-processor';\nimport {\n\tNgDocButtonIconComponent,\n\tNgDocIconComponent,\n\tNgDocSmoothResizeComponent,\n\tNgDocTextComponent,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-code',\n\ttemplateUrl: './code.component.html',\n\tstyleUrls: ['./code.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgIf,\n\t\tNgDocTextComponent,\n\t\tNgDocButtonIconComponent,\n\t\tNgDocTooltipDirective,\n\t\tNgDocSmoothResizeComponent,\n\t\tNgDocIconComponent,\n\t\tNgDocSanitizeHtmlPipe,\n\t\tNgDocTooltipProcessorDirective,\n\t\tNgDocLinkProcessorDirective,\n\t],\n})\nexport class NgDocCodeComponent {\n\t@Input()\n\thtml: string = '';\n\n\t@Input()\n\tcopyButton: boolean = true;\n\n\t@Input()\n\tname?: string;\n\n\t@Input()\n\tlineNumbers: boolean = false;\n\n\ttooltipText: string = '';\n\n\tconstructor(private elementRef: ElementRef<HTMLElement>, private readonly clipboard: Clipboard) {}\n\n\t@HostBinding('attr.data-ng-doc-has-header')\n\tget hasHeader(): boolean {\n\t\treturn !!this.name;\n\t}\n\n\tget codeElement(): HTMLElement | null {\n\t\treturn this.elementRef?.nativeElement.querySelector('code') ?? null;\n\t}\n\n\tcopyCode(): void {\n\t\tthis.clipboard.copy(this.codeElement?.textContent ?? '');\n\t}\n}\n","<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocLinkProcessor\n\t\tngDocTooltipProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAcA,MAkBa,kBAAkB,CAAA;IAe9B,WAAoB,CAAA,UAAmC,EAAmB,SAAoB,EAAA;QAA1E,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;QAAmB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;QAb9F,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;QAGlB,IAAU,CAAA,UAAA,GAAY,IAAI,CAAC;QAM3B,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAE7B,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;KAEyE;AAElG,IAAA,IACI,SAAS,GAAA;AACZ,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACnB;AAED,IAAA,IAAI,WAAW,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;KACpE;IAED,QAAQ,GAAA;AACP,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;KACzD;8GA5BW,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,gPChC/B,65BA+BA,EAAA,MAAA,EAAA,CAAA,krEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDVE,IAAI,EACJ,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,kBAAkB,iHAClB,wBAAwB,EAAA,QAAA,EAAA,mDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,qBAAqB,EACrB,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,OAAA,EAAA,eAAA,EAAA,eAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,0BAA0B,wGAC1B,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAClB,qBAAqB,EACrB,IAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,8BAA8B,oEAC9B,2BAA2B,EAAA,QAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGhB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAlB9B,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,mBAGN,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA;wBACR,IAAI;wBACJ,kBAAkB;wBAClB,wBAAwB;wBACxB,qBAAqB;wBACrB,0BAA0B;wBAC1B,kBAAkB;wBAClB,qBAAqB;wBACrB,8BAA8B;wBAC9B,2BAA2B;AAC3B,qBAAA,EAAA,QAAA,EAAA,65BAAA,EAAA,MAAA,EAAA,CAAA,krEAAA,CAAA,EAAA,CAAA;yHAID,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,UAAU,EAAA,CAAA;sBADT,KAAK;gBAIN,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAQF,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,6BAA6B,CAAA;;;AEjD3C;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-app-components-code.mjs","sources":["../../../../libs/app/components/code/code.component.ts","../../../../libs/app/components/code/code.component.html","../../../../libs/app/components/code/ng-doc-app-components-code.ts"],"sourcesContent":["import {Clipboard} from '@angular/cdk/clipboard';\nimport {NgIf} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input} from '@angular/core';\nimport {NgDocSanitizeHtmlPipe} from '@ng-doc/app/pipes/sanitize-html';\nimport {NgDocPageProcessorDirective} from '@ng-doc/app/processors/page-processor';\nimport {\n\tNgDocButtonIconComponent,\n\tNgDocIconComponent,\n\tNgDocSmoothResizeComponent,\n\tNgDocTextComponent,\n\tNgDocTooltipDirective,\n} from '@ng-doc/ui-kit';\n\n@Component({\n\tselector: 'ng-doc-code',\n\ttemplateUrl: './code.component.html',\n\tstyleUrls: ['./code.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [\n\t\tNgIf,\n\t\tNgDocTextComponent,\n\t\tNgDocButtonIconComponent,\n\t\tNgDocTooltipDirective,\n\t\tNgDocSmoothResizeComponent,\n\t\tNgDocIconComponent,\n\t\tNgDocSanitizeHtmlPipe,\n\t\tNgDocPageProcessorDirective,\n\t],\n})\nexport class NgDocCodeComponent {\n\t@Input()\n\thtml: string = '';\n\n\t@Input()\n\tcopyButton: boolean = true;\n\n\t@Input()\n\tname?: string;\n\n\t@Input()\n\tlineNumbers: boolean = false;\n\n\ttooltipText: string = '';\n\n\tconstructor(private elementRef: ElementRef<HTMLElement>, private readonly clipboard: Clipboard) {}\n\n\t@HostBinding('attr.data-ng-doc-has-header')\n\tget hasHeader(): boolean {\n\t\treturn !!this.name;\n\t}\n\n\tget codeElement(): HTMLElement | null {\n\t\treturn this.elementRef?.nativeElement.querySelector('code') ?? null;\n\t}\n\n\tcopyCode(): void {\n\t\tthis.clipboard.copy(this.codeElement?.textContent ?? '');\n\t}\n}\n","<div class=\"ng-doc-code-header\" *ngIf=\"hasHeader\">\n\t<span class=\"ng-doc-code-file-name\" ng-doc-text>{{ name }}</span>\n</div>\n<div class=\"ng-doc-code-body\">\n\t<div\n\t\tclass=\"ng-doc-code-wrapper\"\n\t\t[innerHTML]=\"html | ngDocSanitizeHtml\"\n\t\tngDocPageProcessor\n\t\t*ngIf=\"html\"\n\t></div>\n\t<div class=\"ng-doc-code-wrapper\" *ngIf=\"!html\">\n\t\t<ng-content></ng-content>\n\t</div>\n\n\t<button\n\t\tclass=\"ng-doc-copy-button\"\n\t\tng-doc-button-icon\n\t\t*ngIf=\"copyButton\"\n\t\t(click)=\"copyCode(); tooltipText = 'Copied!'\"\n\t\t[ngDocTooltip]=\"tooltipContent\"\n\t\t(mouseenter)=\"tooltipText = 'Copy to clipboard'\"\n\t>\n\t\t<ng-template #tooltipContent>\n\t\t\t<ng-doc-smooth-resize [trigger]=\"tooltipText\">\n\t\t\t\t{{ tooltipText }}\n\t\t\t</ng-doc-smooth-resize>\n\t\t</ng-template>\n\t\t<ng-doc-icon icon=\"copy\"></ng-doc-icon>\n\t</button>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAaA,MAiBa,kBAAkB,CAAA;IAe9B,WAAoB,CAAA,UAAmC,EAAmB,SAAoB,EAAA;QAA1E,IAAU,CAAA,UAAA,GAAV,UAAU,CAAyB;QAAmB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;QAb9F,IAAI,CAAA,IAAA,GAAW,EAAE,CAAC;QAGlB,IAAU,CAAA,UAAA,GAAY,IAAI,CAAC;QAM3B,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAE7B,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;KAEyE;AAElG,IAAA,IACI,SAAS,GAAA;AACZ,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACnB;AAED,IAAA,IAAI,WAAW,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;KACpE;IAED,QAAQ,GAAA;AACP,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;KACzD;8GA5BW,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,gPC9B/B,k4BA8BA,EAAA,MAAA,EAAA,CAAA,krEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDVE,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACJ,kBAAkB,EAClB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,wBAAwB,EACxB,QAAA,EAAA,mDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,qBAAqB,0UACrB,0BAA0B,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC1B,kBAAkB,EAClB,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,qBAAqB,0DACrB,2BAA2B,EAAA,QAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGhB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAjB9B,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,mBAGN,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA;wBACR,IAAI;wBACJ,kBAAkB;wBAClB,wBAAwB;wBACxB,qBAAqB;wBACrB,0BAA0B;wBAC1B,kBAAkB;wBAClB,qBAAqB;wBACrB,2BAA2B;AAC3B,qBAAA,EAAA,QAAA,EAAA,k4BAAA,EAAA,MAAA,EAAA,CAAA,krEAAA,CAAA,EAAA,CAAA;yHAID,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,UAAU,EAAA,CAAA;sBADT,KAAK;gBAIN,IAAI,EAAA,CAAA;sBADH,KAAK;gBAIN,WAAW,EAAA,CAAA;sBADV,KAAK;gBAQF,SAAS,EAAA,CAAA;sBADZ,WAAW;uBAAC,6BAA6B,CAAA;;;AE/C3C;;AAEG;;;;"}