@ng-doc/ui-kit 22.0.0-beta.2 → 22.1.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 (206) hide show
  1. package/README.md +20 -29
  2. package/fesm2022/ng-doc-ui-kit-cdk-combobox-host.mjs +43 -22
  3. package/fesm2022/ng-doc-ui-kit-cdk-combobox-host.mjs.map +1 -1
  4. package/fesm2022/ng-doc-ui-kit-classes-base-input.mjs +24 -13
  5. package/fesm2022/ng-doc-ui-kit-classes-base-input.mjs.map +1 -1
  6. package/fesm2022/ng-doc-ui-kit-classes-overlay-ref.mjs +62 -22
  7. package/fesm2022/ng-doc-ui-kit-classes-overlay-ref.mjs.map +1 -1
  8. package/fesm2022/ng-doc-ui-kit-components-blockquote.mjs +39 -14
  9. package/fesm2022/ng-doc-ui-kit-components-blockquote.mjs.map +1 -1
  10. package/fesm2022/ng-doc-ui-kit-components-button-icon.mjs +30 -18
  11. package/fesm2022/ng-doc-ui-kit-components-button-icon.mjs.map +1 -1
  12. package/fesm2022/ng-doc-ui-kit-components-button-toggle.mjs +12 -9
  13. package/fesm2022/ng-doc-ui-kit-components-button-toggle.mjs.map +1 -1
  14. package/fesm2022/ng-doc-ui-kit-components-button.mjs +15 -24
  15. package/fesm2022/ng-doc-ui-kit-components-button.mjs.map +1 -1
  16. package/fesm2022/ng-doc-ui-kit-components-checkbox.mjs +13 -13
  17. package/fesm2022/ng-doc-ui-kit-components-checkbox.mjs.map +1 -1
  18. package/fesm2022/ng-doc-ui-kit-components-clear-control.mjs +14 -9
  19. package/fesm2022/ng-doc-ui-kit-components-clear-control.mjs.map +1 -1
  20. package/fesm2022/ng-doc-ui-kit-components-combobox.mjs +30 -26
  21. package/fesm2022/ng-doc-ui-kit-components-combobox.mjs.map +1 -1
  22. package/fesm2022/ng-doc-ui-kit-components-data-list-group.mjs +37 -38
  23. package/fesm2022/ng-doc-ui-kit-components-data-list-group.mjs.map +1 -1
  24. package/fesm2022/ng-doc-ui-kit-components-data-list.mjs +32 -39
  25. package/fesm2022/ng-doc-ui-kit-components-data-list.mjs.map +1 -1
  26. package/fesm2022/ng-doc-ui-kit-components-dialog-outlet.mjs +23 -20
  27. package/fesm2022/ng-doc-ui-kit-components-dialog-outlet.mjs.map +1 -1
  28. package/fesm2022/ng-doc-ui-kit-components-dot.mjs +20 -16
  29. package/fesm2022/ng-doc-ui-kit-components-dot.mjs.map +1 -1
  30. package/fesm2022/ng-doc-ui-kit-components-dropdown.mjs +120 -125
  31. package/fesm2022/ng-doc-ui-kit-components-dropdown.mjs.map +1 -1
  32. package/fesm2022/ng-doc-ui-kit-components-expander.mjs +17 -17
  33. package/fesm2022/ng-doc-ui-kit-components-expander.mjs.map +1 -1
  34. package/fesm2022/ng-doc-ui-kit-components-floated-border.mjs +4 -4
  35. package/fesm2022/ng-doc-ui-kit-components-floated-border.mjs.map +1 -1
  36. package/fesm2022/ng-doc-ui-kit-components-floated-content.mjs +16 -17
  37. package/fesm2022/ng-doc-ui-kit-components-floated-content.mjs.map +1 -1
  38. package/fesm2022/ng-doc-ui-kit-components-focus-control.mjs +20 -12
  39. package/fesm2022/ng-doc-ui-kit-components-focus-control.mjs.map +1 -1
  40. package/fesm2022/ng-doc-ui-kit-components-icon.mjs +175 -54
  41. package/fesm2022/ng-doc-ui-kit-components-icon.mjs.map +1 -1
  42. package/fesm2022/ng-doc-ui-kit-components-input-wrapper.mjs +43 -46
  43. package/fesm2022/ng-doc-ui-kit-components-input-wrapper.mjs.map +1 -1
  44. package/fesm2022/ng-doc-ui-kit-components-label.mjs +14 -16
  45. package/fesm2022/ng-doc-ui-kit-components-label.mjs.map +1 -1
  46. package/fesm2022/ng-doc-ui-kit-components-line.mjs +7 -4
  47. package/fesm2022/ng-doc-ui-kit-components-line.mjs.map +1 -1
  48. package/fesm2022/ng-doc-ui-kit-components-list.mjs +24 -8
  49. package/fesm2022/ng-doc-ui-kit-components-list.mjs.map +1 -1
  50. package/fesm2022/ng-doc-ui-kit-components-magnifier-controller.mjs +7 -3
  51. package/fesm2022/ng-doc-ui-kit-components-magnifier-controller.mjs.map +1 -1
  52. package/fesm2022/ng-doc-ui-kit-components-magnifier.mjs +31 -15
  53. package/fesm2022/ng-doc-ui-kit-components-magnifier.mjs.map +1 -1
  54. package/fesm2022/ng-doc-ui-kit-components-option-group.mjs +22 -27
  55. package/fesm2022/ng-doc-ui-kit-components-option-group.mjs.map +1 -1
  56. package/fesm2022/ng-doc-ui-kit-components-option.mjs +28 -22
  57. package/fesm2022/ng-doc-ui-kit-components-option.mjs.map +1 -1
  58. package/fesm2022/ng-doc-ui-kit-components-overlay-container.mjs +56 -52
  59. package/fesm2022/ng-doc-ui-kit-components-overlay-container.mjs.map +1 -1
  60. package/fesm2022/ng-doc-ui-kit-components-overlay-pointer.mjs +19 -21
  61. package/fesm2022/ng-doc-ui-kit-components-overlay-pointer.mjs.map +1 -1
  62. package/fesm2022/ng-doc-ui-kit-components-pane.mjs +91 -69
  63. package/fesm2022/ng-doc-ui-kit-components-pane.mjs.map +1 -1
  64. package/fesm2022/ng-doc-ui-kit-components-selection.mjs +173 -76
  65. package/fesm2022/ng-doc-ui-kit-components-selection.mjs.map +1 -1
  66. package/fesm2022/ng-doc-ui-kit-components-sidenav.mjs +23 -22
  67. package/fesm2022/ng-doc-ui-kit-components-sidenav.mjs.map +1 -1
  68. package/fesm2022/ng-doc-ui-kit-components-spinner.mjs +14 -12
  69. package/fesm2022/ng-doc-ui-kit-components-spinner.mjs.map +1 -1
  70. package/fesm2022/ng-doc-ui-kit-components-tab-group.mjs +94 -61
  71. package/fesm2022/ng-doc-ui-kit-components-tab-group.mjs.map +1 -1
  72. package/fesm2022/ng-doc-ui-kit-components-tab-routes-group.mjs +16 -13
  73. package/fesm2022/ng-doc-ui-kit-components-tab-routes-group.mjs.map +1 -1
  74. package/fesm2022/ng-doc-ui-kit-components-tag.mjs +23 -24
  75. package/fesm2022/ng-doc-ui-kit-components-tag.mjs.map +1 -1
  76. package/fesm2022/ng-doc-ui-kit-components-text.mjs +37 -52
  77. package/fesm2022/ng-doc-ui-kit-components-text.mjs.map +1 -1
  78. package/fesm2022/ng-doc-ui-kit-components-toggle.mjs +82 -57
  79. package/fesm2022/ng-doc-ui-kit-components-toggle.mjs.map +1 -1
  80. package/fesm2022/ng-doc-ui-kit-components-wrapper.mjs +7 -4
  81. package/fesm2022/ng-doc-ui-kit-components-wrapper.mjs.map +1 -1
  82. package/fesm2022/ng-doc-ui-kit-directives-autofocus.mjs +13 -10
  83. package/fesm2022/ng-doc-ui-kit-directives-autofocus.mjs.map +1 -1
  84. package/fesm2022/ng-doc-ui-kit-directives-checked-change.mjs +30 -26
  85. package/fesm2022/ng-doc-ui-kit-directives-checked-change.mjs.map +1 -1
  86. package/fesm2022/ng-doc-ui-kit-directives-data.mjs +8 -5
  87. package/fesm2022/ng-doc-ui-kit-directives-data.mjs.map +1 -1
  88. package/fesm2022/ng-doc-ui-kit-directives-dropdown-handler.mjs +19 -18
  89. package/fesm2022/ng-doc-ui-kit-directives-dropdown-handler.mjs.map +1 -1
  90. package/fesm2022/ng-doc-ui-kit-directives-dropdown-origin.mjs +3 -4
  91. package/fesm2022/ng-doc-ui-kit-directives-dropdown-origin.mjs.map +1 -1
  92. package/fesm2022/ng-doc-ui-kit-directives-event-switcher.mjs +22 -19
  93. package/fesm2022/ng-doc-ui-kit-directives-event-switcher.mjs.map +1 -1
  94. package/fesm2022/ng-doc-ui-kit-directives-focus-catcher.mjs +30 -25
  95. package/fesm2022/ng-doc-ui-kit-directives-focus-catcher.mjs.map +1 -1
  96. package/fesm2022/ng-doc-ui-kit-directives-focusable.mjs +13 -16
  97. package/fesm2022/ng-doc-ui-kit-directives-focusable.mjs.map +1 -1
  98. package/fesm2022/ng-doc-ui-kit-directives-fullscreen.mjs +90 -0
  99. package/fesm2022/ng-doc-ui-kit-directives-fullscreen.mjs.map +1 -0
  100. package/fesm2022/ng-doc-ui-kit-directives-hotkey.mjs +34 -28
  101. package/fesm2022/ng-doc-ui-kit-directives-hotkey.mjs.map +1 -1
  102. package/fesm2022/ng-doc-ui-kit-directives-input-number.mjs +10 -12
  103. package/fesm2022/ng-doc-ui-kit-directives-input-number.mjs.map +1 -1
  104. package/fesm2022/ng-doc-ui-kit-directives-input-string.mjs +9 -12
  105. package/fesm2022/ng-doc-ui-kit-directives-input-string.mjs.map +1 -1
  106. package/fesm2022/ng-doc-ui-kit-directives-radio-group.mjs +7 -4
  107. package/fesm2022/ng-doc-ui-kit-directives-radio-group.mjs.map +1 -1
  108. package/fesm2022/ng-doc-ui-kit-directives-rotator.mjs +16 -22
  109. package/fesm2022/ng-doc-ui-kit-directives-rotator.mjs.map +1 -1
  110. package/fesm2022/ng-doc-ui-kit-directives-tooltip.mjs +105 -101
  111. package/fesm2022/ng-doc-ui-kit-directives-tooltip.mjs.map +1 -1
  112. package/fesm2022/ng-doc-ui-kit-directives.mjs +1 -1
  113. package/fesm2022/ng-doc-ui-kit-interceptors.mjs +24 -21
  114. package/fesm2022/ng-doc-ui-kit-interceptors.mjs.map +1 -1
  115. package/fesm2022/ng-doc-ui-kit-observables.mjs +2 -58
  116. package/fesm2022/ng-doc-ui-kit-observables.mjs.map +1 -1
  117. package/fesm2022/ng-doc-ui-kit-pipes-as-array.mjs +3 -4
  118. package/fesm2022/ng-doc-ui-kit-pipes-as-array.mjs.map +1 -1
  119. package/fesm2022/ng-doc-ui-kit-pipes-bind.mjs +3 -4
  120. package/fesm2022/ng-doc-ui-kit-pipes-bind.mjs.map +1 -1
  121. package/fesm2022/ng-doc-ui-kit-pipes-execute.mjs +3 -4
  122. package/fesm2022/ng-doc-ui-kit-pipes-execute.mjs.map +1 -1
  123. package/fesm2022/ng-doc-ui-kit-pipes-highlighter.mjs +3 -4
  124. package/fesm2022/ng-doc-ui-kit-pipes-highlighter.mjs.map +1 -1
  125. package/fesm2022/ng-doc-ui-kit-services-dialog.mjs +14 -8
  126. package/fesm2022/ng-doc-ui-kit-services-dialog.mjs.map +1 -1
  127. package/fesm2022/ng-doc-ui-kit-services-notify.mjs +13 -8
  128. package/fesm2022/ng-doc-ui-kit-services-notify.mjs.map +1 -1
  129. package/fesm2022/ng-doc-ui-kit-services-overlay-strategy.mjs +15 -11
  130. package/fesm2022/ng-doc-ui-kit-services-overlay-strategy.mjs.map +1 -1
  131. package/fesm2022/ng-doc-ui-kit-services-overlay.mjs +20 -9
  132. package/fesm2022/ng-doc-ui-kit-services-overlay.mjs.map +1 -1
  133. package/fesm2022/ng-doc-ui-kit-services-scroll.mjs +11 -13
  134. package/fesm2022/ng-doc-ui-kit-services-scroll.mjs.map +1 -1
  135. package/fesm2022/ng-doc-ui-kit-tokens.mjs +29 -3
  136. package/fesm2022/ng-doc-ui-kit-tokens.mjs.map +1 -1
  137. package/package.json +27 -30
  138. package/styles/main.css +271 -34
  139. package/types/ng-doc-ui-kit-cdk-combobox-host.d.ts +16 -8
  140. package/types/ng-doc-ui-kit-classes-base-input.d.ts +12 -1
  141. package/types/ng-doc-ui-kit-classes-overlay-ref.d.ts +27 -4
  142. package/types/ng-doc-ui-kit-components-blockquote.d.ts +22 -5
  143. package/types/ng-doc-ui-kit-components-button-icon.d.ts +23 -5
  144. package/types/ng-doc-ui-kit-components-button-toggle.d.ts +5 -1
  145. package/types/ng-doc-ui-kit-components-button.d.ts +6 -6
  146. package/types/ng-doc-ui-kit-components-checkbox.d.ts +5 -3
  147. package/types/ng-doc-ui-kit-components-clear-control.d.ts +7 -0
  148. package/types/ng-doc-ui-kit-components-combobox.d.ts +19 -9
  149. package/types/ng-doc-ui-kit-components-data-list-group.d.ts +16 -11
  150. package/types/ng-doc-ui-kit-components-data-list.d.ts +21 -11
  151. package/types/ng-doc-ui-kit-components-dialog-outlet.d.ts +11 -6
  152. package/types/ng-doc-ui-kit-components-dot.d.ts +10 -5
  153. package/types/ng-doc-ui-kit-components-dropdown.d.ts +39 -27
  154. package/types/ng-doc-ui-kit-components-expander.d.ts +9 -7
  155. package/types/ng-doc-ui-kit-components-floated-content.d.ts +8 -6
  156. package/types/ng-doc-ui-kit-components-focus-control.d.ts +10 -4
  157. package/types/ng-doc-ui-kit-components-icon.d.ts +49 -14
  158. package/types/ng-doc-ui-kit-components-input-wrapper.d.ts +31 -17
  159. package/types/ng-doc-ui-kit-components-label.d.ts +8 -5
  160. package/types/ng-doc-ui-kit-components-line.d.ts +3 -0
  161. package/types/ng-doc-ui-kit-components-list.d.ts +14 -3
  162. package/types/ng-doc-ui-kit-components-magnifier-controller.d.ts +5 -1
  163. package/types/ng-doc-ui-kit-components-magnifier.d.ts +19 -4
  164. package/types/ng-doc-ui-kit-components-option-group.d.ts +12 -8
  165. package/types/ng-doc-ui-kit-components-option.d.ts +9 -2
  166. package/types/ng-doc-ui-kit-components-overlay-container.d.ts +18 -15
  167. package/types/ng-doc-ui-kit-components-overlay-pointer.d.ts +10 -6
  168. package/types/ng-doc-ui-kit-components-pane.d.ts +25 -9
  169. package/types/ng-doc-ui-kit-components-selection.d.ts +59 -21
  170. package/types/ng-doc-ui-kit-components-sidenav.d.ts +17 -8
  171. package/types/ng-doc-ui-kit-components-spinner.d.ts +7 -3
  172. package/types/ng-doc-ui-kit-components-tab-group.d.ts +48 -22
  173. package/types/ng-doc-ui-kit-components-tab-routes-group.d.ts +4 -2
  174. package/types/ng-doc-ui-kit-components-tag.d.ts +13 -6
  175. package/types/ng-doc-ui-kit-components-text.d.ts +21 -19
  176. package/types/ng-doc-ui-kit-components-toggle.d.ts +13 -7
  177. package/types/ng-doc-ui-kit-components-wrapper.d.ts +3 -0
  178. package/types/ng-doc-ui-kit-directives-autofocus.d.ts +7 -5
  179. package/types/ng-doc-ui-kit-directives-checked-change.d.ts +15 -11
  180. package/types/ng-doc-ui-kit-directives-data.d.ts +6 -4
  181. package/types/ng-doc-ui-kit-directives-dropdown-handler.d.ts +5 -3
  182. package/types/ng-doc-ui-kit-directives-event-switcher.d.ts +11 -6
  183. package/types/ng-doc-ui-kit-directives-focus-catcher.d.ts +11 -8
  184. package/types/ng-doc-ui-kit-directives-focusable.d.ts +6 -3
  185. package/types/ng-doc-ui-kit-directives-fullscreen.d.ts +39 -0
  186. package/types/ng-doc-ui-kit-directives-hotkey.d.ts +14 -7
  187. package/types/ng-doc-ui-kit-directives-input-number.d.ts +3 -2
  188. package/types/ng-doc-ui-kit-directives-input-string.d.ts +2 -2
  189. package/types/ng-doc-ui-kit-directives-radio-group.d.ts +4 -0
  190. package/types/ng-doc-ui-kit-directives-rotator.d.ts +8 -8
  191. package/types/ng-doc-ui-kit-directives-tooltip.d.ts +35 -23
  192. package/types/ng-doc-ui-kit-directives.d.ts +1 -1
  193. package/types/ng-doc-ui-kit-interceptors.d.ts +18 -2
  194. package/types/ng-doc-ui-kit-interfaces.d.ts +20 -4
  195. package/types/ng-doc-ui-kit-observables.d.ts +2 -19
  196. package/types/ng-doc-ui-kit-services-dialog.d.ts +10 -1
  197. package/types/ng-doc-ui-kit-services-notify.d.ts +9 -1
  198. package/types/ng-doc-ui-kit-services-overlay-strategy.d.ts +5 -3
  199. package/types/ng-doc-ui-kit-services-overlay.d.ts +14 -3
  200. package/types/ng-doc-ui-kit-services-scroll.d.ts +4 -5
  201. package/fesm2022/ng-doc-ui-kit-decorators.mjs +0 -53
  202. package/fesm2022/ng-doc-ui-kit-decorators.mjs.map +0 -1
  203. package/fesm2022/ng-doc-ui-kit-directives-let.mjs +0 -43
  204. package/fesm2022/ng-doc-ui-kit-directives-let.mjs.map +0 -1
  205. package/types/ng-doc-ui-kit-decorators.d.ts +0 -12
  206. package/types/ng-doc-ui-kit-directives-let.d.ts +0 -22
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-ui-kit-services-overlay.mjs","sources":["../../../../libs/ui-kit/services/overlay/overlay.service.ts","../../../../libs/ui-kit/services/overlay/ng-doc-ui-kit-services-overlay.ts"],"sourcesContent":["import {\n FlexibleConnectedPositionStrategy,\n GlobalPositionStrategy,\n Overlay,\n OverlayRef,\n ScrollStrategyOptions,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, inject, Injectable, Injector, NgZone, StaticProvider } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocOverlayRef } from '@ng-doc/ui-kit/classes';\nimport { NgDocOverlayConfig, NgDocOverlayContainer } from '@ng-doc/ui-kit/interfaces';\nimport { NgDocContent, NgDocOverlayOrigin, NgDocOverlayPosition } from '@ng-doc/ui-kit/types';\nimport { NgDocOverlayUtils } from '@ng-doc/ui-kit/utils';\nimport { PolymorpheusComponent } from '@taiga-ui/polymorpheus';\nimport { take } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class NgDocOverlayService {\n private overlay = inject(Overlay);\n private ngZone = inject(NgZone);\n private injector = inject(Injector);\n private router = inject(Router);\n\n constructor() {}\n\n open<R>(\n content: NgDocContent,\n config: NgDocOverlayConfig,\n providers: StaticProvider[] = [],\n ): NgDocOverlayRef<R> {\n const overlayRef: OverlayRef = this.createOverlay(config);\n return this.attachTooltipContainer(content, overlayRef, config, providers);\n }\n\n private attachTooltipContainer<R>(\n content: NgDocContent,\n overlay: OverlayRef,\n config: NgDocOverlayConfig,\n providers: StaticProvider[],\n ): NgDocOverlayRef<R> {\n const containerPortal: ComponentPortal<NgDocOverlayContainer> = new ComponentPortal(\n config.overlayContainer,\n config.viewContainerRef,\n config.viewContainerRef?.injector,\n );\n const containerRef: ComponentRef<NgDocOverlayContainer> = overlay.attach(containerPortal);\n const overlayRef: NgDocOverlayRef<R> = new NgDocOverlayRef<R>(\n overlay,\n config,\n containerRef.instance,\n this.ngZone,\n this.router,\n );\n\n if (content instanceof PolymorpheusComponent) {\n content = new PolymorpheusComponent(\n content.component,\n this.createInjector(overlayRef, providers, config.viewContainerRef?.injector),\n );\n }\n\n containerRef.setInput('config', config);\n containerRef.setInput('content', content);\n containerRef.instance.markForCheck();\n\n return overlayRef;\n }\n\n private createOverlay(config: NgDocOverlayConfig): OverlayRef {\n const overlayRef: OverlayRef = this.overlay.create(config);\n overlayRef\n .detachments()\n .pipe(take(1))\n .subscribe(() => {\n overlayRef.hasAttached() && overlayRef.detach();\n });\n return overlayRef;\n }\n\n connectedPositionStrategy(\n origin: NgDocOverlayOrigin,\n positions: NgDocOverlayPosition | NgDocOverlayPosition[],\n ): FlexibleConnectedPositionStrategy {\n return this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions(NgDocOverlayUtils.toConnectedPositions(asArray(positions)))\n .withPush(true);\n }\n\n globalPositionStrategy(): GlobalPositionStrategy {\n return this.overlay.position().global();\n }\n\n scrollStrategy(): ScrollStrategyOptions {\n return this.overlay.scrollStrategies;\n }\n\n private createInjector<R>(\n overlayRef: NgDocOverlayRef<R>,\n providers: StaticProvider[],\n injector?: Injector,\n ): Injector {\n return Injector.create({\n providers: [\n ...providers,\n {\n provide: NgDocOverlayRef,\n useValue: overlayRef,\n },\n ],\n parent: injector || this.injector,\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-doc-ui-kit-services-overlay.mjs","sources":["../../../../libs/ui-kit/services/overlay/overlay.service.ts","../../../../libs/ui-kit/services/overlay/ng-doc-ui-kit-services-overlay.ts"],"sourcesContent":["import {\n FlexibleConnectedPositionStrategy,\n GlobalPositionStrategy,\n Overlay,\n OverlayRef,\n ScrollStrategyOptions,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ComponentRef, inject, Injector, Service, StaticProvider } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { NgDocOverlayRef } from '@ng-doc/ui-kit/classes';\nimport { NgDocOverlayConfig, NgDocOverlayContainer } from '@ng-doc/ui-kit/interfaces';\nimport { NgDocContent, NgDocOverlayOrigin, NgDocOverlayPosition } from '@ng-doc/ui-kit/types';\nimport { NgDocOverlayUtils } from '@ng-doc/ui-kit/utils';\nimport { PolymorpheusComponent } from '@taiga-ui/polymorpheus';\nimport { take } from 'rxjs/operators';\n\n/**\n * Opens NgDoc overlays: a container component inside a CDK overlay.\n *\n * It is provided in the root injector. A component can also list it in its `providers`, so the\n * overlays it opens use that component's injector (the dropdown does).\n */\n@Service()\nexport class NgDocOverlayService {\n private overlay = inject(Overlay);\n private injector = inject(Injector);\n private router = inject(Router);\n\n /**\n * Opens an overlay.\n * @param content - What the container renders: a string, a template or a component.\n * @param config - The overlay configuration, including the container component.\n * @param providers - Extra providers for a component content; `NgDocOverlayRef` is always added.\n * @returns The handle of the opened overlay.\n */\n open<R>(\n content: NgDocContent,\n config: NgDocOverlayConfig,\n providers: StaticProvider[] = [],\n ): NgDocOverlayRef<R> {\n const overlayRef: OverlayRef = this.createOverlay(config);\n return this.attachTooltipContainer(content, overlayRef, config, providers);\n }\n\n private attachTooltipContainer<R>(\n content: NgDocContent,\n overlay: OverlayRef,\n config: NgDocOverlayConfig,\n providers: StaticProvider[],\n ): NgDocOverlayRef<R> {\n const containerPortal: ComponentPortal<NgDocOverlayContainer> = new ComponentPortal(\n config.overlayContainer,\n config.viewContainerRef,\n config.viewContainerRef?.injector,\n );\n const containerRef: ComponentRef<NgDocOverlayContainer> = overlay.attach(containerPortal);\n const overlayRef: NgDocOverlayRef<R> = new NgDocOverlayRef<R>(\n overlay,\n config,\n containerRef.instance,\n this.injector,\n this.router,\n );\n\n if (content instanceof PolymorpheusComponent) {\n content = new PolymorpheusComponent(\n content.component,\n this.createInjector(overlayRef, providers, config.viewContainerRef?.injector),\n );\n }\n\n containerRef.setInput('config', config);\n containerRef.setInput('content', content);\n containerRef.instance.markForCheck();\n\n return overlayRef;\n }\n\n private createOverlay(config: NgDocOverlayConfig): OverlayRef {\n const overlayRef: OverlayRef = this.overlay.create(config);\n overlayRef\n .detachments()\n .pipe(take(1))\n .subscribe(() => {\n overlayRef.hasAttached() && overlayRef.detach();\n });\n return overlayRef;\n }\n\n connectedPositionStrategy(\n origin: NgDocOverlayOrigin,\n positions: NgDocOverlayPosition | NgDocOverlayPosition[],\n ): FlexibleConnectedPositionStrategy {\n return this.overlay\n .position()\n .flexibleConnectedTo(origin)\n .withPositions(NgDocOverlayUtils.toConnectedPositions(asArray(positions)))\n .withPush(true);\n }\n\n globalPositionStrategy(): GlobalPositionStrategy {\n return this.overlay.position().global();\n }\n\n scrollStrategy(): ScrollStrategyOptions {\n return this.overlay.scrollStrategies;\n }\n\n private createInjector<R>(\n overlayRef: NgDocOverlayRef<R>,\n providers: StaticProvider[],\n injector?: Injector,\n ): Injector {\n return Injector.create({\n providers: [\n ...providers,\n {\n provide: NgDocOverlayRef,\n useValue: overlayRef,\n },\n ],\n parent: injector || this.injector,\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
- import { ViewportRuler, BlockScrollStrategy } from '@angular/cdk/overlay';
1
+ import { BlockScrollStrategy, ViewportRuler } from '@angular/cdk/overlay';
2
2
  import * as i0 from '@angular/core';
3
- import { inject, DOCUMENT, Injectable } from '@angular/core';
3
+ import { inject, DOCUMENT, Service } from '@angular/core';
4
4
 
5
+ /**
6
+ * Blocks and unblocks the scrolling of the page, for example while a sidebar covers it.
7
+ */
5
8
  class NgDocScrollService {
6
9
  constructor() {
7
- this.document = inject(DOCUMENT);
8
- this.viewportRuler = inject(ViewportRuler);
9
- this.scrollStrategy = new BlockScrollStrategy(this.viewportRuler, this.document);
10
+ this.scrollStrategy = new BlockScrollStrategy(inject(ViewportRuler), inject(DOCUMENT));
10
11
  }
11
12
  /**
12
13
  * Block global scroll
@@ -20,15 +21,12 @@ class NgDocScrollService {
20
21
  unblock() {
21
22
  this.scrollStrategy.disable();
22
23
  }
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: NgDocScrollService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
24
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: NgDocScrollService, providedIn: 'root' }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: NgDocScrollService, deps: [], target: i0.ɵɵFactoryTarget.Service }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareService({ minVersion: "22.0.0", version: "22.2.1", ngImport: i0, type: NgDocScrollService }); }
25
26
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.6", ngImport: i0, type: NgDocScrollService, decorators: [{
27
- type: Injectable,
28
- args: [{
29
- providedIn: 'root',
30
- }]
31
- }], ctorParameters: () => [] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.2.1", ngImport: i0, type: NgDocScrollService, decorators: [{
28
+ type: Service
29
+ }] });
32
30
 
33
31
  /**
34
32
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-ui-kit-services-scroll.mjs","sources":["../../../../libs/ui-kit/services/scroll/scroll.service.ts","../../../../libs/ui-kit/services/scroll/ng-doc-ui-kit-services-scroll.ts"],"sourcesContent":["import { BlockScrollStrategy, ViewportRuler } from '@angular/cdk/overlay';\nimport { DOCUMENT, inject, Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class NgDocScrollService {\n private readonly document = inject<Document>(DOCUMENT);\n private readonly viewportRuler = inject(ViewportRuler);\n\n private readonly scrollStrategy: BlockScrollStrategy;\n\n /** Inserted by Angular inject() migration for backwards compatibility */\n constructor(...args: unknown[]);\n\n constructor() {\n this.scrollStrategy = new BlockScrollStrategy(this.viewportRuler, this.document);\n }\n\n /**\n * Block global scroll\n */\n block(): void {\n this.scrollStrategy.enable();\n }\n\n /**\n * Unblock global scroll\n */\n unblock(): void {\n this.scrollStrategy.disable();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAMa,kBAAkB,CAAA;AAS7B,IAAA,WAAA,GAAA;AARiB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAW,QAAQ,CAAC;AACrC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;AAQpD,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;IAClF;AAEA;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;IAC9B;AAEA;;AAEG;IACH,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;IAC/B;8GAzBW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cAFjB,MAAM,EAAA,CAAA,CAAA;;2FAEP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACLD;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-ui-kit-services-scroll.mjs","sources":["../../../../libs/ui-kit/services/scroll/scroll.service.ts","../../../../libs/ui-kit/services/scroll/ng-doc-ui-kit-services-scroll.ts"],"sourcesContent":["import { BlockScrollStrategy, ViewportRuler } from '@angular/cdk/overlay';\nimport { DOCUMENT, inject, Service } from '@angular/core';\n\n/**\n * Blocks and unblocks the scrolling of the page, for example while a sidebar covers it.\n */\n@Service()\nexport class NgDocScrollService {\n private readonly scrollStrategy: BlockScrollStrategy = new BlockScrollStrategy(\n inject(ViewportRuler),\n inject<Document>(DOCUMENT),\n );\n\n /**\n * Block global scroll\n */\n block(): void {\n this.scrollStrategy.enable();\n }\n\n /**\n * Unblock global scroll\n */\n unblock(): void {\n this.scrollStrategy.disable();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA;;AAEG;MAEU,kBAAkB,CAAA;AAD/B,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,cAAc,GAAwB,IAAI,mBAAmB,CAC5E,MAAM,CAAC,aAAa,CAAC,EACrB,MAAM,CAAW,QAAQ,CAAC,CAC3B;AAeF,IAAA;AAbC;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;IAC9B;AAEA;;AAEG;IACH,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;IAC/B;8GAlBW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,OAAA,EAAA,CAAA,CAAA;+GAAlB,kBAAkB,EAAA,CAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B;;;ACND;;AAEG;;;;"}
@@ -1,11 +1,37 @@
1
- import { InjectionToken, inject, PLATFORM_ID } from '@angular/core';
2
- import { isPlatformBrowser } from '@angular/common';
1
+ import { InjectionToken, inject, PLATFORM_ID, DOCUMENT } from '@angular/core';
2
+ import { isPlatformBrowser, APP_BASE_HREF } from '@angular/common';
3
3
 
4
4
  const NG_DOC_ASSETS_PATH = new InjectionToken('NG_DOC_ASSETS_PATH');
5
5
 
6
+ function withTrailingSeparator(value) {
7
+ const base = value?.trim().split(/[?#]/, 1)[0] ?? '';
8
+ return base ? (base.endsWith('/') ? base : `${base}/`) : '/';
9
+ }
10
+ function documentBasePath(document) {
11
+ if (!document)
12
+ return null;
13
+ const value = document.querySelector('base[href]')?.getAttribute('href');
14
+ if (value === null || value === undefined)
15
+ return null;
16
+ const documentUrl = new URL(document.URL);
17
+ const resolved = new URL(value, documentUrl);
18
+ const directory = new URL('.', resolved);
19
+ return directory.origin === documentUrl.origin
20
+ ? directory.pathname
21
+ : `${directory.origin}${directory.pathname}`;
22
+ }
23
+ function requestBasePath() {
24
+ if (isPlatformBrowser(inject(PLATFORM_ID)))
25
+ return '';
26
+ // Browser-relative asset requests follow the document base, so SSR must prefer the same source.
27
+ // APP_BASE_HREF remains the fallback for hosts that configure routing without a DOM base.
28
+ const configured = inject(APP_BASE_HREF, { optional: true });
29
+ const documentBase = documentBasePath(inject(DOCUMENT, { optional: true }));
30
+ return withTrailingSeparator(documentBase ?? configured);
31
+ }
6
32
  const NG_REQUEST_BASE_PATH = new InjectionToken('NG_REQUEST_BASE_PATH', {
7
33
  providedIn: 'root',
8
- factory: () => (isPlatformBrowser(inject(PLATFORM_ID)) ? '' : '/'),
34
+ factory: requestBasePath,
9
35
  });
10
36
 
11
37
  const NG_DOC_COMPONENT_CONTEXT = new InjectionToken('NG_DOC_COMPONENT_CONTEXT');
@@ -1 +1 @@
1
- {"version":3,"file":"ng-doc-ui-kit-tokens.mjs","sources":["../../../../libs/ui-kit/tokens/assets-path.ts","../../../../libs/ui-kit/tokens/base-path.ts","../../../../libs/ui-kit/tokens/component-context.ts","../../../../libs/ui-kit/tokens/custom-icons-path.ts","../../../../libs/ui-kit/tokens/ng-doc-ui-kit-tokens.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_ASSETS_PATH: InjectionToken<string> = new InjectionToken('NG_DOC_ASSETS_PATH');\n","import { isPlatformBrowser } from '@angular/common';\nimport { inject, InjectionToken, PLATFORM_ID } from '@angular/core';\n\nexport const NG_REQUEST_BASE_PATH: InjectionToken<string> = new InjectionToken(\n 'NG_REQUEST_BASE_PATH',\n {\n providedIn: 'root',\n factory: () => (isPlatformBrowser(inject(PLATFORM_ID)) ? '' : '/'),\n },\n);\n","import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_COMPONENT_CONTEXT: InjectionToken<unknown> = new InjectionToken<unknown>(\n\t'NG_DOC_COMPONENT_CONTEXT',\n);\n","import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_CUSTOM_ICONS_PATH: InjectionToken<string> = new InjectionToken<string>(\n\t'NG_DOC_CUSTOM_ICONS_PATH',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAEa,kBAAkB,GAA2B,IAAI,cAAc,CAAC,oBAAoB;;MCCpF,oBAAoB,GAA2B,IAAI,cAAc,CAC5E,sBAAsB,EACtB;AACE,IAAA,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,OAAO,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;AACnE,CAAA;;MCNU,wBAAwB,GAA4B,IAAI,cAAc,CAClF,0BAA0B;;MCDd,wBAAwB,GAA2B,IAAI,cAAc,CACjF,0BAA0B;;ACH3B;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-doc-ui-kit-tokens.mjs","sources":["../../../../libs/ui-kit/tokens/assets-path.ts","../../../../libs/ui-kit/tokens/base-path.ts","../../../../libs/ui-kit/tokens/component-context.ts","../../../../libs/ui-kit/tokens/custom-icons-path.ts","../../../../libs/ui-kit/tokens/ng-doc-ui-kit-tokens.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_ASSETS_PATH: InjectionToken<string> = new InjectionToken('NG_DOC_ASSETS_PATH');\n","import { APP_BASE_HREF, isPlatformBrowser } from '@angular/common';\nimport { DOCUMENT, inject, InjectionToken, PLATFORM_ID } from '@angular/core';\n\nfunction withTrailingSeparator(value: string | null | undefined): string {\n const base = value?.trim().split(/[?#]/, 1)[0] ?? '';\n\n return base ? (base.endsWith('/') ? base : `${base}/`) : '/';\n}\n\nfunction documentBasePath(document: Document | null): string | null {\n if (!document) return null;\n const value = document.querySelector('base[href]')?.getAttribute('href');\n if (value === null || value === undefined) return null;\n\n const documentUrl = new URL(document.URL);\n const resolved = new URL(value, documentUrl);\n const directory = new URL('.', resolved);\n\n return directory.origin === documentUrl.origin\n ? directory.pathname\n : `${directory.origin}${directory.pathname}`;\n}\n\nfunction requestBasePath(): string {\n if (isPlatformBrowser(inject(PLATFORM_ID))) return '';\n\n // Browser-relative asset requests follow the document base, so SSR must prefer the same source.\n // APP_BASE_HREF remains the fallback for hosts that configure routing without a DOM base.\n const configured = inject(APP_BASE_HREF, { optional: true });\n const documentBase = documentBasePath(inject(DOCUMENT, { optional: true }));\n\n return withTrailingSeparator(documentBase ?? configured);\n}\n\nexport const NG_REQUEST_BASE_PATH: InjectionToken<string> = new InjectionToken(\n 'NG_REQUEST_BASE_PATH',\n {\n providedIn: 'root',\n factory: requestBasePath,\n },\n);\n","import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_COMPONENT_CONTEXT: InjectionToken<unknown> = new InjectionToken<unknown>(\n\t'NG_DOC_COMPONENT_CONTEXT',\n);\n","import { InjectionToken } from '@angular/core';\n\nexport const NG_DOC_CUSTOM_ICONS_PATH: InjectionToken<string> = new InjectionToken<string>(\n\t'NG_DOC_CUSTOM_ICONS_PATH',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAEa,kBAAkB,GAA2B,IAAI,cAAc,CAAC,oBAAoB;;ACCjG,SAAS,qBAAqB,CAAC,KAAgC,EAAA;AAC7D,IAAA,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;IAEpD,OAAO,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAA,EAAG,IAAI,CAAA,CAAA,CAAG,IAAI,GAAG;AAC9D;AAEA,SAAS,gBAAgB,CAAC,QAAyB,EAAA;AACjD,IAAA,IAAI,CAAC,QAAQ;AAAE,QAAA,OAAO,IAAI;AAC1B,IAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC;AACxE,IAAA,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;AAAE,QAAA,OAAO,IAAI;IAEtD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;IACzC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC;AAExC,IAAA,OAAO,SAAS,CAAC,MAAM,KAAK,WAAW,CAAC;UACpC,SAAS,CAAC;UACV,CAAA,EAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAA,CAAE;AAChD;AAEA,SAAS,eAAe,GAAA;AACtB,IAAA,IAAI,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAAE,QAAA,OAAO,EAAE;;;AAIrD,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,IAAA,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAE3E,IAAA,OAAO,qBAAqB,CAAC,YAAY,IAAI,UAAU,CAAC;AAC1D;MAEa,oBAAoB,GAA2B,IAAI,cAAc,CAC5E,sBAAsB,EACtB;AACE,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,eAAe;AACzB,CAAA;;MCrCU,wBAAwB,GAA4B,IAAI,cAAc,CAClF,0BAA0B;;MCDd,wBAAwB,GAA2B,IAAI,cAAc,CACjF,0BAA0B;;ACH3B;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,26 @@
1
1
  {
2
2
  "name": "@ng-doc/ui-kit",
3
- "version": "22.0.0-beta.2",
3
+ "version": "22.1.0",
4
+ "description": "The UI components NgDoc sites are built from.",
5
+ "keywords": [
6
+ "angular",
7
+ "documentation",
8
+ "generator",
9
+ "builder",
10
+ "guides",
11
+ "api",
12
+ "demo",
13
+ "ng-doc"
14
+ ],
15
+ "homepage": "https://ng-doc.com",
16
+ "bugs": {
17
+ "url": "https://github.com/ng-doc/ng-doc/issues"
18
+ },
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/ng-doc/ng-doc.git"
22
+ },
23
+ "license": "MIT",
4
24
  "peerDependencies": {
5
25
  "@angular/common": ">=22.0.0 < 23.0.0",
6
26
  "@angular/core": ">=22.0.0 < 23.0.0",
@@ -11,7 +31,7 @@
11
31
  },
12
32
  "dependencies": {
13
33
  "tslib": "^2.6.2",
14
- "@ng-doc/core": "22.0.0-beta.2"
34
+ "@ng-doc/core": "22.1.0"
15
35
  },
16
36
  "publishConfig": {
17
37
  "access": "public"
@@ -226,10 +246,6 @@
226
246
  "types": "./types/ng-doc-ui-kit-constants.d.ts",
227
247
  "default": "./fesm2022/ng-doc-ui-kit-constants.mjs"
228
248
  },
229
- "./decorators": {
230
- "types": "./types/ng-doc-ui-kit-decorators.d.ts",
231
- "default": "./fesm2022/ng-doc-ui-kit-decorators.mjs"
232
- },
233
249
  "./directives": {
234
250
  "types": "./types/ng-doc-ui-kit-directives.d.ts",
235
251
  "default": "./fesm2022/ng-doc-ui-kit-directives.mjs"
@@ -266,6 +282,10 @@
266
282
  "types": "./types/ng-doc-ui-kit-directives-focusable.d.ts",
267
283
  "default": "./fesm2022/ng-doc-ui-kit-directives-focusable.mjs"
268
284
  },
285
+ "./directives/fullscreen": {
286
+ "types": "./types/ng-doc-ui-kit-directives-fullscreen.d.ts",
287
+ "default": "./fesm2022/ng-doc-ui-kit-directives-fullscreen.mjs"
288
+ },
269
289
  "./directives/hotkey": {
270
290
  "types": "./types/ng-doc-ui-kit-directives-hotkey.d.ts",
271
291
  "default": "./fesm2022/ng-doc-ui-kit-directives-hotkey.mjs"
@@ -278,10 +298,6 @@
278
298
  "types": "./types/ng-doc-ui-kit-directives-input-string.d.ts",
279
299
  "default": "./fesm2022/ng-doc-ui-kit-directives-input-string.mjs"
280
300
  },
281
- "./directives/let": {
282
- "types": "./types/ng-doc-ui-kit-directives-let.d.ts",
283
- "default": "./fesm2022/ng-doc-ui-kit-directives-let.mjs"
284
- },
285
301
  "./directives/radio-group": {
286
302
  "types": "./types/ng-doc-ui-kit-directives-radio-group.d.ts",
287
303
  "default": "./fesm2022/ng-doc-ui-kit-directives-radio-group.mjs"
@@ -377,24 +393,5 @@
377
393
  },
378
394
  "sideEffects": false,
379
395
  "type": "module",
380
- "keywords": [
381
- "angular",
382
- "documentation",
383
- "generator",
384
- "builder",
385
- "guides",
386
- "api",
387
- "demo",
388
- "ng-doc"
389
- ],
390
- "author": "Skoropad Aleksandr <alex@skoropad.dev>",
391
- "repository": {
392
- "type": "git",
393
- "url": "git+https://github.com/ng-doc/ng-doc.git"
394
- },
395
- "bugs": {
396
- "url": "https://github.com/ng-doc/ng-doc/issues"
397
- },
398
- "homepage": "https://ng-doc.com",
399
- "license": "MIT"
396
+ "author": "Skoropad Aleksandr <alex@skoropad.dev>"
400
397
  }
package/styles/main.css CHANGED
@@ -1,60 +1,297 @@
1
1
  @import '@angular/cdk/overlay-prebuilt.css';
2
+ :root {
3
+ --ng-doc-palette-neutral-0: #ffffff;
4
+ --ng-doc-palette-neutral-25: #fbfcfe;
5
+ --ng-doc-palette-neutral-50: #f4f7fc;
6
+ --ng-doc-palette-neutral-100: #eef0f5;
7
+ --ng-doc-palette-neutral-150: #e7e9ee;
8
+ --ng-doc-palette-neutral-200: #dfe1e6;
9
+ --ng-doc-palette-neutral-300: #cfd1d6;
10
+ --ng-doc-palette-neutral-400: #a9abaf;
11
+ --ng-doc-palette-neutral-450: #96989d;
12
+ --ng-doc-palette-neutral-500: #84868a;
13
+ --ng-doc-palette-neutral-600: #67696d;
14
+ --ng-doc-palette-neutral-700: #515256;
15
+ --ng-doc-palette-neutral-750: #46484c;
16
+ --ng-doc-palette-neutral-800: #3b3d41;
17
+ --ng-doc-palette-neutral-850: #2c2e31;
18
+ --ng-doc-palette-neutral-875: #26282c;
19
+ --ng-doc-palette-neutral-900: #212326;
20
+ --ng-doc-palette-neutral-950: #18191d;
21
+ --ng-doc-palette-neutral-1000: #0d0e11;
22
+ --ng-doc-palette-brand-50: #f4f8fe;
23
+ --ng-doc-palette-brand-100: #e6effe;
24
+ --ng-doc-palette-brand-200: #cddffe;
25
+ --ng-doc-palette-brand-300: #aac8fe;
26
+ --ng-doc-palette-brand-400: #81adfe;
27
+ --ng-doc-palette-brand-500: #4c89ff;
28
+ --ng-doc-palette-brand-600: #1d60e2;
29
+ --ng-doc-palette-brand-700: #134dbe;
30
+ --ng-doc-palette-brand-800: #0f3d96;
31
+ --ng-doc-palette-brand-900: #0c2d6f;
32
+ --ng-doc-palette-brand-950: #081e4b;
33
+ --ng-doc-palette-violet-50: #f8f6fe;
34
+ --ng-doc-palette-violet-100: #f1ebff;
35
+ --ng-doc-palette-violet-200: #e3d6ff;
36
+ --ng-doc-palette-violet-300: #d1b9fe;
37
+ --ng-doc-palette-violet-400: #bc98fa;
38
+ --ng-doc-palette-violet-500: #a072e6;
39
+ --ng-doc-palette-violet-600: #7e4ac2;
40
+ --ng-doc-palette-violet-700: #683ba3;
41
+ --ng-doc-palette-violet-800: #512e80;
42
+ --ng-doc-palette-violet-900: #3c225f;
43
+ --ng-doc-palette-violet-950: #281740;
44
+ --ng-doc-palette-green-50: #f1faf3;
45
+ --ng-doc-palette-green-100: #e1f4e5;
46
+ --ng-doc-palette-green-200: #c3e9cc;
47
+ --ng-doc-palette-green-300: #9cd8ab;
48
+ --ng-doc-palette-green-400: #6fc488;
49
+ --ng-doc-palette-green-500: #39a761;
50
+ --ng-doc-palette-green-600: #058141;
51
+ --ng-doc-palette-green-700: #036a34;
52
+ --ng-doc-palette-green-800: #015428;
53
+ --ng-doc-palette-green-900: #003e1c;
54
+ --ng-doc-palette-green-950: #012a11;
55
+ --ng-doc-palette-amber-50: #fff6ec;
56
+ --ng-doc-palette-amber-100: #fdebd8;
57
+ --ng-doc-palette-amber-200: #fad7b1;
58
+ --ng-doc-palette-amber-300: #f1bc7f;
59
+ --ng-doc-palette-amber-400: #e49d41;
60
+ --ng-doc-palette-amber-500: #c47d04;
61
+ --ng-doc-palette-amber-600: #955e05;
62
+ --ng-doc-palette-amber-700: #7b4c01;
63
+ --ng-doc-palette-amber-800: #613c01;
64
+ --ng-doc-palette-amber-900: #492b00;
65
+ --ng-doc-palette-amber-950: #321c00;
66
+ --ng-doc-palette-red-50: #fef5f4;
67
+ --ng-doc-palette-red-100: #ffe8e6;
68
+ --ng-doc-palette-red-200: #ffd1cd;
69
+ --ng-doc-palette-red-300: #ffb0a9;
70
+ --ng-doc-palette-red-400: #ff847d;
71
+ --ng-doc-palette-red-500: #e85854;
72
+ --ng-doc-palette-red-600: #c2272d;
73
+ --ng-doc-palette-red-700: #a21921;
74
+ --ng-doc-palette-red-800: #80161a;
75
+ --ng-doc-palette-red-900: #5f1113;
76
+ --ng-doc-palette-red-950: #400c0c;
77
+ --ng-doc-space-1: calc(var(--ng-doc-base-gutter) * 0.5);
78
+ --ng-doc-space-2: var(--ng-doc-base-gutter);
79
+ --ng-doc-space-3: calc(var(--ng-doc-base-gutter) * 1.5);
80
+ --ng-doc-space-4: calc(var(--ng-doc-base-gutter) * 2);
81
+ --ng-doc-space-5: calc(var(--ng-doc-base-gutter) * 2.5);
82
+ --ng-doc-space-6: calc(var(--ng-doc-base-gutter) * 3);
83
+ --ng-doc-space-8: calc(var(--ng-doc-base-gutter) * 4);
84
+ --ng-doc-space-10: calc(var(--ng-doc-base-gutter) * 5);
85
+ --ng-doc-space-12: calc(var(--ng-doc-base-gutter) * 6);
86
+ --ng-doc-space-16: calc(var(--ng-doc-base-gutter) * 8);
87
+ --ng-doc-space-20: calc(var(--ng-doc-base-gutter) * 10);
88
+ --ng-doc-space-24: calc(var(--ng-doc-base-gutter) * 12);
89
+ --ng-doc-radius-xs: 4px;
90
+ --ng-doc-radius-sm: 6px;
91
+ --ng-doc-radius-md: 8px;
92
+ --ng-doc-radius-lg: 12px;
93
+ --ng-doc-radius-xl: 16px;
94
+ --ng-doc-radius-full: 999px;
95
+ --ng-doc-text-xs-size: 12px;
96
+ --ng-doc-text-xs-line-height: 16px;
97
+ --ng-doc-text-sm-size: 14px;
98
+ --ng-doc-text-sm-line-height: 22px;
99
+ --ng-doc-text-md-size: 16px;
100
+ --ng-doc-text-md-line-height: 26px;
101
+ --ng-doc-text-lg-size: 18px;
102
+ --ng-doc-text-lg-line-height: 28px;
103
+ --ng-doc-h1-font-size: 34px;
104
+ --ng-doc-h1-line-height: 42px;
105
+ --ng-doc-h2-font-size: 26px;
106
+ --ng-doc-h2-line-height: 34px;
107
+ --ng-doc-h3-font-size: 20px;
108
+ --ng-doc-h3-line-height: 28px;
109
+ --ng-doc-h4-font-size: 17px;
110
+ --ng-doc-h4-line-height: 26px;
111
+ --ng-doc-h5-font-size: 15px;
112
+ --ng-doc-h5-line-height: 24px;
113
+ --ng-doc-h6-font-size: 14px;
114
+ --ng-doc-h6-line-height: 22px;
115
+ --ng-doc-heading-letter-spacing: -0.015em;
116
+ --ng-doc-display-letter-spacing: -0.025em;
117
+ --ng-doc-easing: cubic-bezier(0.2, 0, 0, 1);
118
+ --ng-doc-content-max-width: 760px;
119
+ --ng-doc-h2-margin-top: var(--ng-doc-space-12);
120
+ --ng-doc-h3-margin-top: var(--ng-doc-space-8);
121
+ --ng-doc-heading-margin-bottom: var(--ng-doc-space-3);
122
+ --ng-doc-h2-border: none;
123
+ --ng-doc-h2-padding-top: 0px;
124
+ }
125
+
126
+ :root {
127
+ --ng-doc-hue-brand: var(--ng-doc-primary);
128
+ --ng-doc-hue-violet: var(--ng-doc-palette-violet-600);
129
+ --ng-doc-hue-green: var(--ng-doc-success);
130
+ --ng-doc-hue-amber: var(--ng-doc-warning);
131
+ --ng-doc-hue-red: var(--ng-doc-alert);
132
+ --ng-doc-hue-neutral: var(--ng-doc-base-8);
133
+ --ng-doc-on-hue: var(--ng-doc-white);
134
+ --ng-doc-mix-soft: 10%;
135
+ --ng-doc-mix-chip: 12%;
136
+ --ng-doc-mix-border: 28%;
137
+ --ng-doc-mix-strong: 64%;
138
+ --ng-doc-hue-brand-chip: color-mix(
139
+ in oklab,
140
+ var(--ng-doc-hue-brand) var(--ng-doc-mix-chip),
141
+ var(--ng-doc-background)
142
+ );
143
+ --ng-doc-hue-brand-strong: color-mix(
144
+ in oklab,
145
+ var(--ng-doc-hue-brand) var(--ng-doc-mix-strong),
146
+ var(--ng-doc-heading-color)
147
+ );
148
+ --ng-doc-hue-violet-chip: color-mix(
149
+ in oklab,
150
+ var(--ng-doc-hue-violet) var(--ng-doc-mix-chip),
151
+ var(--ng-doc-background)
152
+ );
153
+ --ng-doc-hue-violet-strong: color-mix(
154
+ in oklab,
155
+ var(--ng-doc-hue-violet) var(--ng-doc-mix-strong),
156
+ var(--ng-doc-heading-color)
157
+ );
158
+ --ng-doc-info-soft: color-mix(
159
+ in oklab,
160
+ var(--ng-doc-info) var(--ng-doc-mix-soft),
161
+ var(--ng-doc-background)
162
+ );
163
+ --ng-doc-info-border: color-mix(
164
+ in oklab,
165
+ var(--ng-doc-info) var(--ng-doc-mix-border),
166
+ var(--ng-doc-background)
167
+ );
168
+ --ng-doc-info-strong: color-mix(
169
+ in oklab,
170
+ var(--ng-doc-info) var(--ng-doc-mix-strong),
171
+ var(--ng-doc-heading-color)
172
+ );
173
+ --ng-doc-success-soft: color-mix(
174
+ in oklab,
175
+ var(--ng-doc-success) var(--ng-doc-mix-soft),
176
+ var(--ng-doc-background)
177
+ );
178
+ --ng-doc-success-border: color-mix(
179
+ in oklab,
180
+ var(--ng-doc-success) var(--ng-doc-mix-border),
181
+ var(--ng-doc-background)
182
+ );
183
+ --ng-doc-success-strong: color-mix(
184
+ in oklab,
185
+ var(--ng-doc-success) var(--ng-doc-mix-strong),
186
+ var(--ng-doc-heading-color)
187
+ );
188
+ --ng-doc-warning-soft: color-mix(
189
+ in oklab,
190
+ var(--ng-doc-warning) var(--ng-doc-mix-soft),
191
+ var(--ng-doc-background)
192
+ );
193
+ --ng-doc-warning-border: color-mix(
194
+ in oklab,
195
+ var(--ng-doc-warning) var(--ng-doc-mix-border),
196
+ var(--ng-doc-background)
197
+ );
198
+ --ng-doc-warning-strong: color-mix(
199
+ in oklab,
200
+ var(--ng-doc-warning) var(--ng-doc-mix-strong),
201
+ var(--ng-doc-heading-color)
202
+ );
203
+ --ng-doc-alert-soft: color-mix(
204
+ in oklab,
205
+ var(--ng-doc-alert) var(--ng-doc-mix-soft),
206
+ var(--ng-doc-background)
207
+ );
208
+ --ng-doc-alert-border: color-mix(
209
+ in oklab,
210
+ var(--ng-doc-alert) var(--ng-doc-mix-border),
211
+ var(--ng-doc-background)
212
+ );
213
+ --ng-doc-alert-strong: color-mix(
214
+ in oklab,
215
+ var(--ng-doc-alert) var(--ng-doc-mix-strong),
216
+ var(--ng-doc-heading-color)
217
+ );
218
+ --ng-doc-primary-soft: color-mix(
219
+ in oklab,
220
+ var(--ng-doc-primary) var(--ng-doc-mix-soft),
221
+ var(--ng-doc-background)
222
+ );
223
+ --ng-doc-primary-strong: color-mix(
224
+ in oklab,
225
+ var(--ng-doc-primary) var(--ng-doc-mix-strong),
226
+ var(--ng-doc-heading-color)
227
+ );
228
+ --ng-doc-shadow-xs: 0 1px 2px var(--ng-doc-shadow-color);
229
+ --ng-doc-shadow-sm: 0 1px 3px var(--ng-doc-shadow-color),
230
+ 0 1px 2px -1px var(--ng-doc-shadow-color);
231
+ --ng-doc-shadow-md: 0 8px 24px -6px var(--ng-doc-shadow-color),
232
+ 0 2px 6px -2px var(--ng-doc-shadow-color);
233
+ --ng-doc-shadow-lg: 0 24px 48px -12px var(--ng-doc-shadow-color),
234
+ 0 4px 12px -4px var(--ng-doc-shadow-color);
235
+ --ng-doc-focus-ring-color: var(--ng-doc-palette-brand-500);
236
+ --ng-doc-focus-ring: 0 0 0 2px var(--ng-doc-background), 0 0 0 4px var(--ng-doc-focus-ring-color);
237
+ }
238
+
2
239
  :root {
3
240
  --ng-doc-base-gutter: 8px;
4
- --ng-doc-transition: 0.2s;
5
- --ng-doc-text-selection: rgba(21, 88, 214, 0.15);
241
+ --ng-doc-transition: 0.18s;
242
+ --ng-doc-text-selection: color-mix(in srgb, var(--ng-doc-primary) 18%, transparent);
6
243
  --ng-doc-white: #fff;
7
244
  --ng-doc-black: #000;
8
- --ng-doc-base-rgb: 0 0 0;
9
- --ng-doc-base-0: var(--ng-doc-white);
10
- --ng-doc-base-1: #f6f6f6;
11
- --ng-doc-base-2: #ebebeb;
12
- --ng-doc-base-3: #dedede;
13
- --ng-doc-base-4: #d1d1d1;
14
- --ng-doc-base-5: #b8b8b8;
15
- --ng-doc-base-6: #ababab;
16
- --ng-doc-base-7: #9e9e9e;
17
- --ng-doc-base-8: #919191;
18
- --ng-doc-base-9: #858585;
19
- --ng-doc-base-10: #6e6e6e;
20
- --ng-doc-primary: #1558d6;
245
+ --ng-doc-base-rgb: 13 14 17;
246
+ --ng-doc-base-0: var(--ng-doc-palette-neutral-0);
247
+ --ng-doc-base-1: var(--ng-doc-palette-neutral-50);
248
+ --ng-doc-base-2: var(--ng-doc-palette-neutral-100);
249
+ --ng-doc-base-3: var(--ng-doc-palette-neutral-200);
250
+ --ng-doc-base-4: var(--ng-doc-palette-neutral-300);
251
+ --ng-doc-base-5: var(--ng-doc-palette-neutral-400);
252
+ --ng-doc-base-6: var(--ng-doc-palette-neutral-450);
253
+ --ng-doc-base-7: var(--ng-doc-palette-neutral-500);
254
+ --ng-doc-base-8: var(--ng-doc-palette-neutral-600);
255
+ --ng-doc-base-9: var(--ng-doc-palette-neutral-700);
256
+ --ng-doc-base-10: var(--ng-doc-palette-neutral-800);
257
+ --ng-doc-primary: var(--ng-doc-palette-brand-600);
21
258
  --ng-doc-primary-text: var(--ng-doc-white);
22
- --ng-doc-alert: #ff5959;
259
+ --ng-doc-alert: var(--ng-doc-palette-red-600);
23
260
  --ng-doc-alert-text: var(--ng-doc-white);
24
- --ng-doc-warning: #ff9f1a;
261
+ --ng-doc-warning: var(--ng-doc-palette-amber-600);
25
262
  --ng-doc-warning-text: var(--ng-doc-white);
26
- --ng-doc-info: #3f68b5;
263
+ --ng-doc-info: var(--ng-doc-palette-brand-600);
27
264
  --ng-doc-info-text: var(--ng-doc-white);
28
- --ng-doc-success: #00b74a;
265
+ --ng-doc-success: var(--ng-doc-palette-green-600);
29
266
  --ng-doc-success-text: var(--ng-doc-white);
30
267
  --ng-doc-background: var(--ng-doc-base-0);
31
- --ng-doc-hover-background: rgba(110, 110, 110, 0.09);
268
+ --ng-doc-hover-background: color-mix(in srgb, var(--ng-doc-base-10) 6%, transparent);
32
269
  --ng-doc-border-size: 1px;
33
270
  --ng-doc-border-color: var(--ng-doc-base-3);
34
271
  --ng-doc-border-hover-color: var(--ng-doc-base-5);
35
- --ng-doc-shadow-color: rgba(0, 0, 0, 0.15);
272
+ --ng-doc-shadow-color: rgb(16 24 40 / 0.1);
36
273
  --ng-doc-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
37
274
  Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
38
275
  'Segoe UI Symbol', 'Noto Color Emoji';
39
276
  --ng-doc-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
40
277
  'Liberation Mono', 'Courier New', monospace;
41
278
  --ng-doc-heading-font-family: var(--ng-doc-font-system);
42
- --ng-doc-heading-color: #111111;
279
+ --ng-doc-heading-color: var(--ng-doc-palette-neutral-950);
43
280
  --ng-doc-font-family: var(--ng-doc-font-system);
44
- --ng-doc-font-size: calc(var(--ng-doc-base-gutter) * 2);
45
- --ng-doc-line-height: calc(var(--ng-doc-base-gutter) * 3);
281
+ --ng-doc-font-size: var(--ng-doc-text-md-size);
282
+ --ng-doc-line-height: var(--ng-doc-text-md-line-height);
46
283
  --ng-doc-font-weight: 400;
47
284
  --ng-doc-code-font: var(--ng-doc-font-system-mono);
48
285
  --ng-doc-code-font-size: 14px;
49
- --ng-doc-code-line-height: 20px;
286
+ --ng-doc-code-line-height: 22px;
50
287
  --ng-doc-code-font-weight: 400;
51
- --ng-doc-text: rgb(78 78 78);
288
+ --ng-doc-text: var(--ng-doc-palette-neutral-800);
52
289
  --ng-doc-text-muted: var(--ng-doc-base-8);
53
- --ng-doc-mark-background: rgba(255, 222, 0, 0.3);
290
+ --ng-doc-mark-background: color-mix(in srgb, #f5c542 45%, transparent);
54
291
  --ng-doc-link-color: var(--ng-doc-primary);
55
- --ng-doc-inline-code-background: var(--ng-doc-base-9);
56
- --ng-doc-inline-code-color: var(--ng-doc-text);
57
- --ng-doc-button-background: trasparent;
292
+ --ng-doc-inline-code-background: var(--ng-doc-base-8);
293
+ --ng-doc-inline-code-color: var(--ng-doc-heading-color);
294
+ --ng-doc-button-background: transparent;
58
295
  --ng-doc-button-background-opacity: 0;
59
296
  --ng-doc-button-color: var(--ng-doc-text);
60
297
  --ng-doc-button-hover-background: var(--ng-doc-base-2);
@@ -64,7 +301,7 @@
64
301
  --ng-doc-floated-border-color: transparent;
65
302
  --ng-doc-floated-border: 2px solid var(--ng-doc-floated-border-color);
66
303
  --ng-doc-floated-border-shadow-color: 0 1px 2px rgba(16, 24, 40, 0.05), 0 0 0 4px transparent;
67
- --ng-doc-floated-border-radius: var(--ng-doc-base-gutter);
304
+ --ng-doc-floated-border-radius: var(--ng-doc-radius-md);
68
305
  /* NgDocCheckboxComponent */
69
306
  --ng-doc-checkbox-color: var(--ng-doc-primary);
70
307
  --ng-doc-checkbox-color-text: var(--ng-doc-primary-text);
@@ -74,8 +311,8 @@
74
311
  --ng-doc-input-text-align: left;
75
312
  --ng-doc-input-width: 100%;
76
313
  --ng-doc-input-height: 40px;
77
- --ng-doc-input-border: var(--ng-doc-border-size) solid var(--ng-doc-border-color);
78
- --ng-doc-input-border-hover: var(--ng-doc-border-size) solid var(--ng-doc-border-hover-color);
314
+ --ng-doc-input-border: var(--ng-doc-border-size) solid var(--ng-doc-base-7);
315
+ --ng-doc-input-border-hover: var(--ng-doc-border-size) solid var(--ng-doc-base-8);
79
316
  --ng-doc-input-background-color: var(--ng-doc-base-0);
80
317
  --ng-doc-input-cursor: auto;
81
318
  /* NgDocTagComponent */
@@ -90,7 +327,7 @@
90
327
  /* Sidenav */
91
328
  --ng-doc-sidenav-width: 300px;
92
329
  /* TabGroup */
93
- --ng-doc-tab-group-border-radius: var(--ng-doc-base-gutter);
330
+ --ng-doc-tab-group-border-radius: var(--ng-doc-radius-lg);
94
331
  --ng-doc-tab-group-border: 1px solid var(--ng-doc-border-color);
95
332
  }
96
333
 
@@ -1,27 +1,35 @@
1
1
  import * as i0 from '@angular/core';
2
- import { AfterContentInit, ElementRef, NgZone } from '@angular/core';
2
+ import { ElementRef } from '@angular/core';
3
3
  import { NgDocOverlayHost, NgDocInputHost, NgDocDisplayValueHost, NgDocListHost, NgDocBaseInput } from '@ng-doc/ui-kit/classes';
4
4
  import { NgDocDropdownComponent } from '@ng-doc/ui-kit/components/dropdown';
5
5
  import { NgDocDisplayValueFunction, NgDocOverlayPosition } from '@ng-doc/ui-kit/types';
6
6
  import { DIControl, DICompareHost, DICompareFunction } from 'di-controls';
7
7
 
8
- declare class NgDocComboboxHostComponent<T> extends DIControl<T> implements NgDocOverlayHost, NgDocInputHost<string>, DICompareHost<T>, NgDocDisplayValueHost<T>, NgDocListHost, AfterContentInit {
8
+ /** Connects a text field, a dropdown and a list into a combobox. */
9
+ declare class NgDocComboboxHostComponent<T> extends DIControl<T> implements NgDocOverlayHost, NgDocInputHost<string>, DICompareHost<T>, NgDocDisplayValueHost<T>, NgDocListHost {
10
+ /** Compares an option with the value. */
9
11
  compareFn: DICompareFunction<T>;
12
+ /** Turns the value into the text of the field. */
10
13
  displayValueFn: NgDocDisplayValueFunction<T>;
11
- origin?: ElementRef<HTMLElement>;
12
- dropdown?: NgDocDropdownComponent;
13
- inputControl?: NgDocBaseInput<string>;
14
14
  readonly positions: NgDocOverlayPosition[];
15
- protected readonly ngZone: NgZone;
15
+ private readonly originQuery;
16
+ private readonly dropdownQuery;
17
+ private readonly inputQuery;
16
18
  constructor();
17
- ngAfterContentInit(): void;
19
+ /** Origin of the dropdown (`NgDocOverlayHost`). */
20
+ get origin(): ElementRef<HTMLElement> | undefined;
21
+ /** The dropdown with the options. */
22
+ get dropdown(): NgDocDropdownComponent | undefined;
23
+ /** The text field of the combobox. */
24
+ get inputControl(): NgDocBaseInput<string> | undefined;
18
25
  get listHostOrigin(): ElementRef<HTMLElement> | undefined;
19
26
  get searchText(): string;
20
27
  get width(): number;
21
28
  get panelClass(): string;
29
+ /** Opens the dropdown when the field is clicked. */
22
30
  clickEvent(): void;
23
31
  static ɵfac: i0.ɵɵFactoryDeclaration<NgDocComboboxHostComponent<any>, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<NgDocComboboxHostComponent<any>, "ng-doc-combobox-host", never, { "compareFn": { "alias": "compareFn"; "required": false; }; "displayValueFn": { "alias": "displayValueFn"; "required": false; }; }, {}, ["dropdown", "inputControl"], ["*"], true, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgDocComboboxHostComponent<any>, "ng-doc-combobox-host", never, { "compareFn": { "alias": "compareFn"; "required": false; }; "displayValueFn": { "alias": "displayValueFn"; "required": false; }; }, {}, ["dropdownQuery", "inputQuery"], ["*"], true, never>;
25
33
  }
26
34
 
27
35
  export { NgDocComboboxHostComponent };