@tailng-ui/primitives 0.13.0 → 0.14.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 (199) hide show
  1. package/package.json +2 -2
  2. package/src/lib/feedback/empty/tng-empty.d.ts.map +1 -1
  3. package/src/lib/feedback/empty/tng-empty.js +0 -5
  4. package/src/lib/feedback/empty/tng-empty.js.map +1 -1
  5. package/src/lib/feedback/progress-bar/tng-progress-bar.d.ts.map +1 -1
  6. package/src/lib/feedback/progress-bar/tng-progress-bar.js +0 -2
  7. package/src/lib/feedback/progress-bar/tng-progress-bar.js.map +1 -1
  8. package/src/lib/feedback/progress-spinner/tng-progress-spinner.d.ts.map +1 -1
  9. package/src/lib/feedback/progress-spinner/tng-progress-spinner.js +0 -1
  10. package/src/lib/feedback/progress-spinner/tng-progress-spinner.js.map +1 -1
  11. package/src/lib/feedback/skeleton/tng-skeleton.d.ts.map +1 -1
  12. package/src/lib/feedback/skeleton/tng-skeleton.js +0 -1
  13. package/src/lib/feedback/skeleton/tng-skeleton.js.map +1 -1
  14. package/src/lib/feedback/toast/tng-toast.d.ts.map +1 -1
  15. package/src/lib/feedback/toast/tng-toast.js +0 -2
  16. package/src/lib/feedback/toast/tng-toast.js.map +1 -1
  17. package/src/lib/form/_shared/select/tng-select.overlay.shared.d.ts.map +1 -1
  18. package/src/lib/form/_shared/select/tng-select.overlay.shared.js +0 -1
  19. package/src/lib/form/_shared/select/tng-select.overlay.shared.js.map +1 -1
  20. package/src/lib/form/_shared/select/tng-select.parts.shared.d.ts.map +1 -1
  21. package/src/lib/form/_shared/select/tng-select.parts.shared.js +0 -4
  22. package/src/lib/form/_shared/select/tng-select.parts.shared.js.map +1 -1
  23. package/src/lib/form/autocomplete/tng-autocomplete.d.ts.map +1 -1
  24. package/src/lib/form/autocomplete/tng-autocomplete.js +0 -1
  25. package/src/lib/form/autocomplete/tng-autocomplete.js.map +1 -1
  26. package/src/lib/form/autocomplete/tng-autocomplete.listbox.d.ts.map +1 -1
  27. package/src/lib/form/autocomplete/tng-autocomplete.listbox.js +0 -2
  28. package/src/lib/form/autocomplete/tng-autocomplete.listbox.js.map +1 -1
  29. package/src/lib/form/autocomplete/tng-autocomplete.overlay.d.ts.map +1 -1
  30. package/src/lib/form/autocomplete/tng-autocomplete.overlay.js +0 -1
  31. package/src/lib/form/autocomplete/tng-autocomplete.overlay.js.map +1 -1
  32. package/src/lib/form/autocomplete/tng-autocomplete.parts.d.ts.map +1 -1
  33. package/src/lib/form/autocomplete/tng-autocomplete.parts.js +0 -4
  34. package/src/lib/form/autocomplete/tng-autocomplete.parts.js.map +1 -1
  35. package/src/lib/form/button-toggle/tng-button-toggle.d.ts.map +1 -1
  36. package/src/lib/form/button-toggle/tng-button-toggle.js +0 -2
  37. package/src/lib/form/button-toggle/tng-button-toggle.js.map +1 -1
  38. package/src/lib/form/checkbox/tng-checkbox.d.ts.map +1 -1
  39. package/src/lib/form/checkbox/tng-checkbox.js +0 -1
  40. package/src/lib/form/checkbox/tng-checkbox.js.map +1 -1
  41. package/src/lib/form/chips/tng-chips.d.ts.map +1 -1
  42. package/src/lib/form/chips/tng-chips.js +0 -3
  43. package/src/lib/form/chips/tng-chips.js.map +1 -1
  44. package/src/lib/form/combobox/tng-combobox.d.ts.map +1 -1
  45. package/src/lib/form/combobox/tng-combobox.js +0 -1
  46. package/src/lib/form/combobox/tng-combobox.js.map +1 -1
  47. package/src/lib/form/input/tng-input.d.ts.map +1 -1
  48. package/src/lib/form/input/tng-input.js +0 -4
  49. package/src/lib/form/input/tng-input.js.map +1 -1
  50. package/src/lib/form/input-otp/tng-input-otp.d.ts.map +1 -1
  51. package/src/lib/form/input-otp/tng-input-otp.js +0 -1
  52. package/src/lib/form/input-otp/tng-input-otp.js.map +1 -1
  53. package/src/lib/form/label/tng-label.d.ts.map +1 -1
  54. package/src/lib/form/label/tng-label.js +0 -1
  55. package/src/lib/form/label/tng-label.js.map +1 -1
  56. package/src/lib/form/listbox/listbox.directive.d.ts.map +1 -1
  57. package/src/lib/form/listbox/listbox.directive.js +0 -1
  58. package/src/lib/form/listbox/listbox.directive.js.map +1 -1
  59. package/src/lib/form/listbox/option.directive.d.ts.map +1 -1
  60. package/src/lib/form/listbox/option.directive.js +0 -1
  61. package/src/lib/form/listbox/option.directive.js.map +1 -1
  62. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.chip.d.ts.map +1 -1
  63. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.chip.js +0 -1
  64. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.chip.js.map +1 -1
  65. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.content.d.ts.map +1 -1
  66. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.content.js +0 -1
  67. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.content.js.map +1 -1
  68. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.d.ts.map +1 -1
  69. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.js +0 -1
  70. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.js.map +1 -1
  71. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.listbox.d.ts.map +1 -1
  72. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.listbox.js +0 -2
  73. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.listbox.js.map +1 -1
  74. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.d.ts.map +1 -1
  75. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.js +0 -1
  76. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.js.map +1 -1
  77. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.d.ts.map +1 -1
  78. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.js +0 -1
  79. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.js.map +1 -1
  80. package/src/lib/form/multi-select/tng-multi-select.d.ts.map +1 -1
  81. package/src/lib/form/multi-select/tng-multi-select.js +0 -1
  82. package/src/lib/form/multi-select/tng-multi-select.js.map +1 -1
  83. package/src/lib/form/multi-select/tng-multi-select.listbox.d.ts.map +1 -1
  84. package/src/lib/form/multi-select/tng-multi-select.listbox.js +0 -2
  85. package/src/lib/form/multi-select/tng-multi-select.listbox.js.map +1 -1
  86. package/src/lib/form/multiselect/tng-multiselect.d.ts.map +1 -1
  87. package/src/lib/form/multiselect/tng-multiselect.js +0 -1
  88. package/src/lib/form/multiselect/tng-multiselect.js.map +1 -1
  89. package/src/lib/form/radio/tng-radio.d.ts.map +1 -1
  90. package/src/lib/form/radio/tng-radio.js +0 -1
  91. package/src/lib/form/radio/tng-radio.js.map +1 -1
  92. package/src/lib/form/select/tng-select.d.ts.map +1 -1
  93. package/src/lib/form/select/tng-select.js +0 -1
  94. package/src/lib/form/select/tng-select.js.map +1 -1
  95. package/src/lib/form/select/tng-select.listbox.d.ts.map +1 -1
  96. package/src/lib/form/select/tng-select.listbox.js +0 -2
  97. package/src/lib/form/select/tng-select.listbox.js.map +1 -1
  98. package/src/lib/form/slider/tng-slider.d.ts.map +1 -1
  99. package/src/lib/form/slider/tng-slider.js +0 -1
  100. package/src/lib/form/slider/tng-slider.js.map +1 -1
  101. package/src/lib/form/switch/tng-switch.d.ts.map +1 -1
  102. package/src/lib/form/switch/tng-switch.js +0 -1
  103. package/src/lib/form/switch/tng-switch.js.map +1 -1
  104. package/src/lib/form/textarea/tng-textarea.d.ts.map +1 -1
  105. package/src/lib/form/textarea/tng-textarea.js +0 -1
  106. package/src/lib/form/textarea/tng-textarea.js.map +1 -1
  107. package/src/lib/form/toggle/tng-toggle.d.ts.map +1 -1
  108. package/src/lib/form/toggle/tng-toggle.js +0 -1
  109. package/src/lib/form/toggle/tng-toggle.js.map +1 -1
  110. package/src/lib/form/toggle-group/tng-toggle-group.d.ts.map +1 -1
  111. package/src/lib/form/toggle-group/tng-toggle-group.js +0 -1
  112. package/src/lib/form/toggle-group/tng-toggle-group.js.map +1 -1
  113. package/src/lib/layout/accordion/tng-accordion.d.ts.map +1 -1
  114. package/src/lib/layout/accordion/tng-accordion.js +0 -4
  115. package/src/lib/layout/accordion/tng-accordion.js.map +1 -1
  116. package/src/lib/layout/bottom-sheet/tng-bottom-sheet.d.ts.map +1 -1
  117. package/src/lib/layout/bottom-sheet/tng-bottom-sheet.js +0 -1
  118. package/src/lib/layout/bottom-sheet/tng-bottom-sheet.js.map +1 -1
  119. package/src/lib/layout/card/tng-card.d.ts.map +1 -1
  120. package/src/lib/layout/card/tng-card.js +0 -10
  121. package/src/lib/layout/card/tng-card.js.map +1 -1
  122. package/src/lib/layout/collapsible/tng-collapsible.d.ts.map +1 -1
  123. package/src/lib/layout/collapsible/tng-collapsible.js +0 -3
  124. package/src/lib/layout/collapsible/tng-collapsible.js.map +1 -1
  125. package/src/lib/layout/drawer/tng-drawer.d.ts.map +1 -1
  126. package/src/lib/layout/drawer/tng-drawer.js +0 -6
  127. package/src/lib/layout/drawer/tng-drawer.js.map +1 -1
  128. package/src/lib/layout/grid/tng-grid.d.ts.map +1 -1
  129. package/src/lib/layout/grid/tng-grid.js +0 -1
  130. package/src/lib/layout/grid/tng-grid.js.map +1 -1
  131. package/src/lib/layout/separator/tng-separator.d.ts.map +1 -1
  132. package/src/lib/layout/separator/tng-separator.js +0 -1
  133. package/src/lib/layout/separator/tng-separator.js.map +1 -1
  134. package/src/lib/layout/stepper/tng-stepper.d.ts.map +1 -1
  135. package/src/lib/layout/stepper/tng-stepper.js +0 -1
  136. package/src/lib/layout/stepper/tng-stepper.js.map +1 -1
  137. package/src/lib/layout/tree/tng-tree-group.d.ts.map +1 -1
  138. package/src/lib/layout/tree/tng-tree-group.js +0 -1
  139. package/src/lib/layout/tree/tng-tree-group.js.map +1 -1
  140. package/src/lib/layout/tree/tng-tree-indicator.d.ts.map +1 -1
  141. package/src/lib/layout/tree/tng-tree-indicator.js +0 -1
  142. package/src/lib/layout/tree/tng-tree-indicator.js.map +1 -1
  143. package/src/lib/layout/tree/tng-tree-item.d.ts.map +1 -1
  144. package/src/lib/layout/tree/tng-tree-item.js +0 -1
  145. package/src/lib/layout/tree/tng-tree-item.js.map +1 -1
  146. package/src/lib/layout/tree/tng-tree.d.ts.map +1 -1
  147. package/src/lib/layout/tree/tng-tree.js +0 -1
  148. package/src/lib/layout/tree/tng-tree.js.map +1 -1
  149. package/src/lib/navigation/breadcrumb/tng-breadcrumb.d.ts.map +1 -1
  150. package/src/lib/navigation/breadcrumb/tng-breadcrumb.js +0 -5
  151. package/src/lib/navigation/breadcrumb/tng-breadcrumb.js.map +1 -1
  152. package/src/lib/navigation/context-menu/tng-context-menu.d.ts.map +1 -1
  153. package/src/lib/navigation/context-menu/tng-context-menu.js +0 -2
  154. package/src/lib/navigation/context-menu/tng-context-menu.js.map +1 -1
  155. package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.d.ts.map +1 -1
  156. package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.js +0 -1
  157. package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.js.map +1 -1
  158. package/src/lib/navigation/menu/tng-menu.d.ts.map +1 -1
  159. package/src/lib/navigation/menu/tng-menu.js +0 -6
  160. package/src/lib/navigation/menu/tng-menu.js.map +1 -1
  161. package/src/lib/navigation/menubar/tng-menubar.d.ts.map +1 -1
  162. package/src/lib/navigation/menubar/tng-menubar.js +0 -2
  163. package/src/lib/navigation/menubar/tng-menubar.js.map +1 -1
  164. package/src/lib/navigation/navigation-menu/tng-navigation-menu.d.ts.map +1 -1
  165. package/src/lib/navigation/navigation-menu/tng-navigation-menu.js +0 -1
  166. package/src/lib/navigation/navigation-menu/tng-navigation-menu.js.map +1 -1
  167. package/src/lib/navigation/tabs/tng-tabs.d.ts.map +1 -1
  168. package/src/lib/navigation/tabs/tng-tabs.js +0 -6
  169. package/src/lib/navigation/tabs/tng-tabs.js.map +1 -1
  170. package/src/lib/navigation/toolbar/tng-toolbar.d.ts.map +1 -1
  171. package/src/lib/navigation/toolbar/tng-toolbar.js +0 -1
  172. package/src/lib/navigation/toolbar/tng-toolbar.js.map +1 -1
  173. package/src/lib/overlay/dialog/tng-dialog.d.ts.map +1 -1
  174. package/src/lib/overlay/dialog/tng-dialog.js +0 -9
  175. package/src/lib/overlay/dialog/tng-dialog.js.map +1 -1
  176. package/src/lib/overlay/popover/tng-popover.d.ts.map +1 -1
  177. package/src/lib/overlay/popover/tng-popover.js +0 -4
  178. package/src/lib/overlay/popover/tng-popover.js.map +1 -1
  179. package/src/lib/overlay/tooltip/tng-tooltip.d.ts.map +1 -1
  180. package/src/lib/overlay/tooltip/tng-tooltip.js +0 -3
  181. package/src/lib/overlay/tooltip/tng-tooltip.js.map +1 -1
  182. package/src/lib/utility/avatar/tng-avatar.d.ts.map +1 -1
  183. package/src/lib/utility/avatar/tng-avatar.js +0 -3
  184. package/src/lib/utility/avatar/tng-avatar.js.map +1 -1
  185. package/src/lib/utility/badge/tng-badge.d.ts.map +1 -1
  186. package/src/lib/utility/badge/tng-badge.js +0 -1
  187. package/src/lib/utility/badge/tng-badge.js.map +1 -1
  188. package/src/lib/utility/code-block/tng-code-block.d.ts.map +1 -1
  189. package/src/lib/utility/code-block/tng-code-block.js +0 -5
  190. package/src/lib/utility/code-block/tng-code-block.js.map +1 -1
  191. package/src/lib/utility/copy/tng-copy.d.ts.map +1 -1
  192. package/src/lib/utility/copy/tng-copy.js +0 -1
  193. package/src/lib/utility/copy/tng-copy.js.map +1 -1
  194. package/src/lib/utility/press/tng-press.d.ts.map +1 -1
  195. package/src/lib/utility/press/tng-press.js +0 -1
  196. package/src/lib/utility/press/tng-press.js.map +1 -1
  197. package/src/lib/utility/tag/tng-tag.d.ts.map +1 -1
  198. package/src/lib/utility/tag/tng-tag.js +0 -3
  199. package/src/lib/utility/tag/tng-tag.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tng-tooltip.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tooltip/tng-tooltip.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n OnDestroy,\n OnInit,\n booleanAttribute,\n effect,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport {\n computeOverlayPosition,\n createOverlayOpenCloseDelayController,\n createTngIdFactory,\n normalizeOverlayOpenCloseDelay,\n type TngOverlayRect,\n} from '@tailng-ui/cdk';\nimport type { TngOverlayDismissReason } from '@tailng-ui/cdk/overlay';\nimport { tngPrimitiveOverlayRuntime } from '../tng-overlay-runtime';\n\nexport type TngTooltipSide = 'bottom' | 'left' | 'right' | 'top';\n\ntype OptionalBooleanInput = boolean | null | string | undefined;\n\nconst createTooltipContentId = createTngIdFactory('tng-tooltip-content');\nconst createTooltipId = createTngIdFactory('tng-tooltip');\nconst tooltipCollisionPadding = 8;\nconst tooltipSideOffset = 8;\nconst tooltipGlobalDocument = typeof document === 'undefined' ? null : document;\n\ntype TngTooltipKeyboardEvent = Readonly<Pick<KeyboardEvent, 'key'>> &\n Readonly<{ preventDefault: () => void }>;\n\nfunction normalizeOptionalBooleanInput(value: OptionalBooleanInput): boolean | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n\n return booleanAttribute(value);\n}\n\nfunction normalizeRect(rect: DOMRect | ClientRect): TngOverlayRect {\n return {\n height: rect.height,\n left: rect.left,\n top: rect.top,\n width: rect.width,\n };\n}\n\nfunction resolveTooltipViewportRect(win: Window): TngOverlayRect {\n return {\n height: win.innerHeight || 0,\n left: 0,\n top: 0,\n width: win.innerWidth || 0,\n };\n}\n\nexport function resolveTngTooltipAriaDescribedBy(\n open: boolean,\n tooltipId: string | null,\n): string | null {\n if (!open) {\n return null;\n }\n\n return tooltipId === null || tooltipId.trim().length === 0 ? null : tooltipId;\n}\n\nexport function resolveTngTooltipDataState(open: boolean): 'closed' | 'open' {\n return open ? 'open' : 'closed';\n}\n\nexport function resolveTngTooltipHidden(open: boolean): '' | null {\n return open ? null : '';\n}\n\nexport function normalizeTngTooltipDelay(value: number): number {\n return normalizeOverlayOpenCloseDelay(value);\n}\n\nexport function shouldCloseTngTooltipForKey(key: string): boolean {\n return key === 'Escape';\n}\n\n@Directive({\n selector: '[tngTooltip]',\n exportAs: 'tngTooltip',\n standalone: true,\n})\nexport class TngTooltip implements OnDestroy, OnInit {\n private readonly generatedContentId = createTooltipContentId();\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly instanceId = createTooltipId();\n public readonly closeDelay = input<number>(60);\n public readonly defaultOpen = input<boolean, OptionalBooleanInput>(false, {\n transform: booleanAttribute,\n });\n public readonly disabled = input<boolean, OptionalBooleanInput>(false, {\n transform: booleanAttribute,\n });\n public readonly openDelay = input<number>(120);\n public readonly openInput = input<boolean | undefined, OptionalBooleanInput>(undefined, {\n alias: 'open',\n transform: normalizeOptionalBooleanInput,\n });\n public readonly side = input<TngTooltipSide>('top');\n\n public readonly openChange = output<boolean>();\n\n private readonly win = typeof window === 'undefined' ? null : window;\n private readonly uncontrolledOpen = signal(false);\n\n private animationFrameId: number | null = null;\n private contentElement: HTMLElement | null = null;\n private contentId: string | null = null;\n private removeResizeListener: (() => void) | null = null;\n private removeScrollListener: (() => void) | null = null;\n private resizeObserver: ResizeObserver | null = null;\n private triggerElement: HTMLElement | null = null;\n private readonly openCloseDelayController = createOverlayOpenCloseDelayController({\n onStateChange: (nextOpen) => this.setOpenState(nextOpen),\n });\n private isOverlayLayerRegistered = false;\n\n private initialized = false;\n\n private readonly positionX = signal<number | null>(null);\n private readonly positionY = signal<number | null>(null);\n private readonly positionedSide = signal<TngTooltipSide>('top');\n\n private readonly syncDisabledState = effect(() => {\n if (this.disabled()) {\n this.openCloseDelayController.cancelAll();\n if (this.isOpen()) {\n this.setOpenState(false);\n }\n }\n });\n\n private readonly syncPositioning = effect(() => {\n if (!this.initialized) {\n return;\n }\n\n if (!this.isOpen()) {\n this.resetPosition();\n this.positionedSide.set(this.side());\n this.teardownRepositionListeners();\n return;\n }\n\n this.setupRepositionListeners();\n this.scheduleReposition();\n });\n\n private readonly syncOverlayLayer = effect(() => {\n if (!this.initialized) {\n return;\n }\n\n if (this.isOpen()) {\n this.registerOverlayLayer();\n return;\n }\n\n this.unregisterOverlayLayer();\n });\n\n private readonly syncSide = effect(() => {\n const requestedSide = this.side();\n if (!this.initialized || !this.isOpen()) {\n this.positionedSide.set(requestedSide);\n return;\n }\n\n this.scheduleReposition();\n });\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip';\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n return resolveTngTooltipDataState(this.isOpen());\n }\n\n @HostBinding('attr.data-open')\n protected get dataOpenAttr(): 'false' | 'true' {\n return this.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n return this.disabled() ? '' : null;\n }\n\n public ngOnInit(): void {\n if (!this.isControlled()) {\n this.uncontrolledOpen.set(this.defaultOpen());\n }\n\n this.initialized = true;\n if (this.isOpen()) {\n this.setupRepositionListeners();\n this.scheduleReposition();\n }\n }\n\n public ngOnDestroy(): void {\n this.syncDisabledState.destroy();\n this.syncPositioning.destroy();\n this.syncOverlayLayer.destroy();\n this.syncSide.destroy();\n this.openCloseDelayController.destroy();\n this.unregisterOverlayLayer();\n this.clearAnimationFrame();\n this.teardownRepositionListeners();\n }\n\n public isOpen(): boolean {\n return this.openInput() ?? this.uncontrolledOpen();\n }\n\n public getContentId(): string | null {\n return this.contentId;\n }\n\n public resolveContentId(id: string | null): string {\n const candidate = id?.trim() ?? '';\n return candidate.length > 0 ? candidate : this.generatedContentId;\n }\n\n public getPositionedSide(): TngTooltipSide {\n return this.positionedSide();\n }\n\n public getPositionX(): number | null {\n return this.positionX();\n }\n\n public getPositionY(): number | null {\n return this.positionY();\n }\n\n public registerContent(content: HTMLElement, id: string | null): void {\n this.contentElement = content;\n this.contentId = id;\n if (this.resizeObserver !== null) {\n this.resizeObserver.observe(content);\n }\n if (this.isOpen()) {\n this.scheduleReposition();\n }\n }\n\n public unregisterContent(content: HTMLElement): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.unobserve(content);\n }\n\n if (this.contentElement === content) {\n this.contentElement = null;\n this.contentId = null;\n }\n }\n\n public registerTrigger(trigger: HTMLElement): void {\n this.triggerElement = trigger;\n if (this.resizeObserver !== null) {\n this.resizeObserver.observe(trigger);\n }\n if (this.isOpen()) {\n this.scheduleReposition();\n }\n }\n\n public unregisterTrigger(trigger: HTMLElement): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.unobserve(trigger);\n }\n\n if (this.triggerElement === trigger) {\n this.triggerElement = null;\n }\n }\n\n public onTriggerCloseIntent(): void {\n if (this.disabled()) {\n return;\n }\n\n this.openCloseDelayController.requestClose(this.closeDelay());\n }\n\n public onTriggerOpenIntent(): void {\n if (this.disabled()) {\n return;\n }\n\n this.openCloseDelayController.requestOpen(this.openDelay());\n }\n\n public onTriggerKeydown(event: TngTooltipKeyboardEvent): void {\n if (this.disabled() || !shouldCloseTngTooltipForKey(event.key)) {\n return;\n }\n\n if (tooltipGlobalDocument === null) {\n event.preventDefault();\n this.openCloseDelayController.cancelAll();\n this.setOpenState(false);\n }\n }\n\n private clearAnimationFrame(): void {\n if (this.animationFrameId === null || this.win === null) {\n return;\n }\n\n this.win.cancelAnimationFrame(this.animationFrameId);\n this.animationFrameId = null;\n }\n\n private isControlled(): boolean {\n return this.openInput() !== undefined;\n }\n\n private reposition(): void {\n if (!this.isOpen() || this.win === null || this.triggerElement === null || this.contentElement === null) {\n return;\n }\n\n const result = computeOverlayPosition({\n anchorRect: normalizeRect(this.triggerElement.getBoundingClientRect()),\n collision: {\n flip: true,\n padding: tooltipCollisionPadding,\n shift: true,\n },\n offset: {\n side: tooltipSideOffset,\n },\n overlayRect: normalizeRect(this.contentElement.getBoundingClientRect()),\n placement: {\n align: 'center',\n side: this.side(),\n },\n viewportRect: resolveTooltipViewportRect(this.win),\n });\n\n this.positionX.set(result.x);\n this.positionY.set(result.y);\n this.positionedSide.set(result.side as TngTooltipSide);\n }\n\n private resetPosition(): void {\n this.positionX.set(null);\n this.positionY.set(null);\n }\n\n private scheduleReposition(): void {\n if (this.win === null || this.animationFrameId !== null) {\n return;\n }\n\n this.animationFrameId = this.win.requestAnimationFrame(() => {\n this.animationFrameId = null;\n this.reposition();\n });\n }\n\n private setOpenState(nextOpen: boolean): void {\n if (this.isOpen() === nextOpen) {\n return;\n }\n\n if (!this.isControlled()) {\n this.uncontrolledOpen.set(nextOpen);\n }\n if (!nextOpen) {\n this.resetPosition();\n }\n if (nextOpen) {\n this.scheduleReposition();\n }\n\n this.openChange.emit(nextOpen);\n }\n\n private shouldCloseFromEscape(): boolean {\n return this.isOpen();\n }\n\n private shouldCloseFromOutsidePointer(): boolean {\n return this.isOpen();\n }\n\n private registerOverlayLayer(): void {\n const hostElement = this.hostRef.nativeElement;\n tngPrimitiveOverlayRuntime.registerLayer({\n containsTarget: (target: unknown, path: readonly unknown[]): boolean => {\n if (target instanceof Node && hostElement.contains(target)) {\n return true;\n }\n\n return path.includes(hostElement);\n },\n dismissOnEscape: this.shouldCloseFromEscape(),\n dismissOnOutsidePointer: this.shouldCloseFromOutsidePointer(),\n id: this.instanceId,\n onDismiss: (reason: TngOverlayDismissReason): void => {\n if (reason === 'escape-key' && !this.shouldCloseFromEscape()) {\n return;\n }\n\n if (reason === 'outside-pointer' && !this.shouldCloseFromOutsidePointer()) {\n return;\n }\n\n this.openCloseDelayController.cancelAll();\n this.setOpenState(false);\n },\n });\n this.isOverlayLayerRegistered = true;\n }\n\n private unregisterOverlayLayer(): void {\n if (!this.isOverlayLayerRegistered) {\n return;\n }\n\n tngPrimitiveOverlayRuntime.unregisterLayer(this.instanceId);\n this.isOverlayLayerRegistered = false;\n }\n\n private setupRepositionListeners(): void {\n if (this.win === null || this.removeResizeListener !== null || this.removeScrollListener !== null) {\n return;\n }\n\n const onResize = (): void => {\n this.scheduleReposition();\n };\n const onScroll = (): void => {\n this.scheduleReposition();\n };\n\n this.win.addEventListener('resize', onResize);\n this.win.addEventListener('scroll', onScroll, true);\n this.removeResizeListener = (): void => {\n this.win?.removeEventListener('resize', onResize);\n };\n this.removeScrollListener = (): void => {\n this.win?.removeEventListener('scroll', onScroll, true);\n };\n\n if (typeof ResizeObserver === 'undefined') {\n return;\n }\n\n this.resizeObserver = new ResizeObserver(() => {\n this.scheduleReposition();\n });\n if (this.triggerElement !== null) {\n this.resizeObserver.observe(this.triggerElement);\n }\n if (this.contentElement !== null) {\n this.resizeObserver.observe(this.contentElement);\n }\n }\n\n private teardownRepositionListeners(): void {\n this.removeResizeListener?.();\n this.removeScrollListener?.();\n this.removeResizeListener = null;\n this.removeScrollListener = null;\n this.resizeObserver?.disconnect();\n this.resizeObserver = null;\n }\n}\n\n@Directive({\n selector: '[tngTooltipTrigger]',\n exportAs: 'tngTooltipTrigger',\n standalone: true,\n})\nexport class TngTooltipTrigger implements OnDestroy, OnInit {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly tooltip = inject(TngTooltip, { optional: true });\n\n public readonly describedBy = input<string | null>(null);\n public readonly disabled = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly open = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n\n @HostBinding('attr.aria-describedby')\n protected get ariaDescribedByAttr(): string | null {\n if (this.tooltip !== null) {\n return resolveTngTooltipAriaDescribedBy(this.tooltip.isOpen(), this.tooltip.getContentId());\n }\n\n return resolveTngTooltipAriaDescribedBy(this.open(), this.describedBy());\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n if (this.tooltip !== null) {\n return this.tooltip.disabled() ? '' : null;\n }\n\n return this.disabled() ? '' : null;\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip-trigger' as const;\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n if (this.tooltip !== null) {\n return resolveTngTooltipDataState(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipDataState(this.open());\n }\n\n public ngOnInit(): void {\n this.tooltip?.registerTrigger(this.hostRef.nativeElement);\n }\n\n public ngOnDestroy(): void {\n this.tooltip?.unregisterTrigger(this.hostRef.nativeElement);\n }\n\n @HostListener('blur')\n protected onBlur(): void {\n this.tooltip?.onTriggerCloseIntent();\n }\n\n @HostListener('focus')\n protected onFocus(): void {\n this.tooltip?.onTriggerOpenIntent();\n }\n\n @HostListener('keydown', ['$event'])\n protected onKeydown(event: KeyboardEvent): void {\n this.tooltip?.onTriggerKeydown(event);\n }\n\n @HostListener('mouseleave')\n protected onMouseLeave(): void {\n this.tooltip?.onTriggerCloseIntent();\n }\n\n @HostListener('mouseenter')\n protected onMouseEnter(): void {\n this.tooltip?.onTriggerOpenIntent();\n }\n}\n\n@Directive({\n selector: '[tngTooltipContent]',\n exportAs: 'tngTooltipContent',\n standalone: true,\n})\nexport class TngTooltipContent implements OnDestroy, OnInit {\n private readonly generatedId = createTooltipContentId();\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly tooltip = inject(TngTooltip, { optional: true });\n private resolvedId = '';\n\n public readonly id = input<string | null>(null);\n public readonly open = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly side = input<TngTooltipSide>('top');\n\n @HostBinding('attr.data-side')\n protected get dataSideAttr(): TngTooltipSide {\n if (this.tooltip !== null) {\n return this.tooltip.getPositionedSide();\n }\n\n return this.side();\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip-content' as const;\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n if (this.tooltip !== null) {\n return resolveTngTooltipDataState(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipDataState(this.open());\n }\n\n @HostBinding('attr.hidden')\n protected get hiddenAttr(): '' | null {\n if (this.tooltip !== null) {\n return resolveTngTooltipHidden(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipHidden(this.open());\n }\n\n @HostBinding('attr.id')\n protected get idAttr(): string {\n return this.resolvedId;\n }\n\n @HostBinding('attr.role')\n protected readonly roleAttr = 'tooltip' as const;\n\n @HostBinding('style.position')\n protected get positionStyle(): string | null {\n return this.tooltip === null ? null : 'fixed';\n }\n\n @HostBinding('style.left.px')\n protected get leftStyle(): number | null {\n if (this.tooltip === null) {\n return null;\n }\n\n return this.tooltip.getPositionX();\n }\n\n @HostBinding('style.top.px')\n protected get topStyle(): number | null {\n if (this.tooltip === null) {\n return null;\n }\n\n return this.tooltip.getPositionY();\n }\n\n public ngOnInit(): void {\n this.resolvedId = this.tooltip?.resolveContentId(this.id()) ?? this.resolveContentId(this.id());\n this.tooltip?.registerContent(this.hostRef.nativeElement, this.resolvedId);\n }\n\n public ngOnDestroy(): void {\n this.tooltip?.unregisterContent(this.hostRef.nativeElement);\n }\n\n private resolveContentId(value: string | null): string {\n const candidate = value?.trim() ?? '';\n return candidate.length > 0 ? candidate : this.generatedId;\n }\n}\n"]}
1
+ {"version":3,"file":"tng-tooltip.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tooltip/tng-tooltip.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n OnDestroy,\n OnInit,\n booleanAttribute,\n effect,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport {\n computeOverlayPosition,\n createOverlayOpenCloseDelayController,\n createTngIdFactory,\n normalizeOverlayOpenCloseDelay,\n type TngOverlayRect,\n} from '@tailng-ui/cdk';\nimport type { TngOverlayDismissReason } from '@tailng-ui/cdk/overlay';\nimport { tngPrimitiveOverlayRuntime } from '../tng-overlay-runtime';\n\nexport type TngTooltipSide = 'bottom' | 'left' | 'right' | 'top';\n\ntype OptionalBooleanInput = boolean | null | string | undefined;\n\nconst createTooltipContentId = createTngIdFactory('tng-tooltip-content');\nconst createTooltipId = createTngIdFactory('tng-tooltip');\nconst tooltipCollisionPadding = 8;\nconst tooltipSideOffset = 8;\nconst tooltipGlobalDocument = typeof document === 'undefined' ? null : document;\n\ntype TngTooltipKeyboardEvent = Readonly<Pick<KeyboardEvent, 'key'>> &\n Readonly<{ preventDefault: () => void }>;\n\nfunction normalizeOptionalBooleanInput(value: OptionalBooleanInput): boolean | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n\n return booleanAttribute(value);\n}\n\nfunction normalizeRect(rect: DOMRect | ClientRect): TngOverlayRect {\n return {\n height: rect.height,\n left: rect.left,\n top: rect.top,\n width: rect.width,\n };\n}\n\nfunction resolveTooltipViewportRect(win: Window): TngOverlayRect {\n return {\n height: win.innerHeight || 0,\n left: 0,\n top: 0,\n width: win.innerWidth || 0,\n };\n}\n\nexport function resolveTngTooltipAriaDescribedBy(\n open: boolean,\n tooltipId: string | null,\n): string | null {\n if (!open) {\n return null;\n }\n\n return tooltipId === null || tooltipId.trim().length === 0 ? null : tooltipId;\n}\n\nexport function resolveTngTooltipDataState(open: boolean): 'closed' | 'open' {\n return open ? 'open' : 'closed';\n}\n\nexport function resolveTngTooltipHidden(open: boolean): '' | null {\n return open ? null : '';\n}\n\nexport function normalizeTngTooltipDelay(value: number): number {\n return normalizeOverlayOpenCloseDelay(value);\n}\n\nexport function shouldCloseTngTooltipForKey(key: string): boolean {\n return key === 'Escape';\n}\n\n@Directive({\n selector: '[tngTooltip]',\n exportAs: 'tngTooltip',\n})\nexport class TngTooltip implements OnDestroy, OnInit {\n private readonly generatedContentId = createTooltipContentId();\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly instanceId = createTooltipId();\n public readonly closeDelay = input<number>(60);\n public readonly defaultOpen = input<boolean, OptionalBooleanInput>(false, {\n transform: booleanAttribute,\n });\n public readonly disabled = input<boolean, OptionalBooleanInput>(false, {\n transform: booleanAttribute,\n });\n public readonly openDelay = input<number>(120);\n public readonly openInput = input<boolean | undefined, OptionalBooleanInput>(undefined, {\n alias: 'open',\n transform: normalizeOptionalBooleanInput,\n });\n public readonly side = input<TngTooltipSide>('top');\n\n public readonly openChange = output<boolean>();\n\n private readonly win = typeof window === 'undefined' ? null : window;\n private readonly uncontrolledOpen = signal(false);\n\n private animationFrameId: number | null = null;\n private contentElement: HTMLElement | null = null;\n private contentId: string | null = null;\n private removeResizeListener: (() => void) | null = null;\n private removeScrollListener: (() => void) | null = null;\n private resizeObserver: ResizeObserver | null = null;\n private triggerElement: HTMLElement | null = null;\n private readonly openCloseDelayController = createOverlayOpenCloseDelayController({\n onStateChange: (nextOpen) => this.setOpenState(nextOpen),\n });\n private isOverlayLayerRegistered = false;\n\n private initialized = false;\n\n private readonly positionX = signal<number | null>(null);\n private readonly positionY = signal<number | null>(null);\n private readonly positionedSide = signal<TngTooltipSide>('top');\n\n private readonly syncDisabledState = effect(() => {\n if (this.disabled()) {\n this.openCloseDelayController.cancelAll();\n if (this.isOpen()) {\n this.setOpenState(false);\n }\n }\n });\n\n private readonly syncPositioning = effect(() => {\n if (!this.initialized) {\n return;\n }\n\n if (!this.isOpen()) {\n this.resetPosition();\n this.positionedSide.set(this.side());\n this.teardownRepositionListeners();\n return;\n }\n\n this.setupRepositionListeners();\n this.scheduleReposition();\n });\n\n private readonly syncOverlayLayer = effect(() => {\n if (!this.initialized) {\n return;\n }\n\n if (this.isOpen()) {\n this.registerOverlayLayer();\n return;\n }\n\n this.unregisterOverlayLayer();\n });\n\n private readonly syncSide = effect(() => {\n const requestedSide = this.side();\n if (!this.initialized || !this.isOpen()) {\n this.positionedSide.set(requestedSide);\n return;\n }\n\n this.scheduleReposition();\n });\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip';\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n return resolveTngTooltipDataState(this.isOpen());\n }\n\n @HostBinding('attr.data-open')\n protected get dataOpenAttr(): 'false' | 'true' {\n return this.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n return this.disabled() ? '' : null;\n }\n\n public ngOnInit(): void {\n if (!this.isControlled()) {\n this.uncontrolledOpen.set(this.defaultOpen());\n }\n\n this.initialized = true;\n if (this.isOpen()) {\n this.setupRepositionListeners();\n this.scheduleReposition();\n }\n }\n\n public ngOnDestroy(): void {\n this.syncDisabledState.destroy();\n this.syncPositioning.destroy();\n this.syncOverlayLayer.destroy();\n this.syncSide.destroy();\n this.openCloseDelayController.destroy();\n this.unregisterOverlayLayer();\n this.clearAnimationFrame();\n this.teardownRepositionListeners();\n }\n\n public isOpen(): boolean {\n return this.openInput() ?? this.uncontrolledOpen();\n }\n\n public getContentId(): string | null {\n return this.contentId;\n }\n\n public resolveContentId(id: string | null): string {\n const candidate = id?.trim() ?? '';\n return candidate.length > 0 ? candidate : this.generatedContentId;\n }\n\n public getPositionedSide(): TngTooltipSide {\n return this.positionedSide();\n }\n\n public getPositionX(): number | null {\n return this.positionX();\n }\n\n public getPositionY(): number | null {\n return this.positionY();\n }\n\n public registerContent(content: HTMLElement, id: string | null): void {\n this.contentElement = content;\n this.contentId = id;\n if (this.resizeObserver !== null) {\n this.resizeObserver.observe(content);\n }\n if (this.isOpen()) {\n this.scheduleReposition();\n }\n }\n\n public unregisterContent(content: HTMLElement): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.unobserve(content);\n }\n\n if (this.contentElement === content) {\n this.contentElement = null;\n this.contentId = null;\n }\n }\n\n public registerTrigger(trigger: HTMLElement): void {\n this.triggerElement = trigger;\n if (this.resizeObserver !== null) {\n this.resizeObserver.observe(trigger);\n }\n if (this.isOpen()) {\n this.scheduleReposition();\n }\n }\n\n public unregisterTrigger(trigger: HTMLElement): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.unobserve(trigger);\n }\n\n if (this.triggerElement === trigger) {\n this.triggerElement = null;\n }\n }\n\n public onTriggerCloseIntent(): void {\n if (this.disabled()) {\n return;\n }\n\n this.openCloseDelayController.requestClose(this.closeDelay());\n }\n\n public onTriggerOpenIntent(): void {\n if (this.disabled()) {\n return;\n }\n\n this.openCloseDelayController.requestOpen(this.openDelay());\n }\n\n public onTriggerKeydown(event: TngTooltipKeyboardEvent): void {\n if (this.disabled() || !shouldCloseTngTooltipForKey(event.key)) {\n return;\n }\n\n if (tooltipGlobalDocument === null) {\n event.preventDefault();\n this.openCloseDelayController.cancelAll();\n this.setOpenState(false);\n }\n }\n\n private clearAnimationFrame(): void {\n if (this.animationFrameId === null || this.win === null) {\n return;\n }\n\n this.win.cancelAnimationFrame(this.animationFrameId);\n this.animationFrameId = null;\n }\n\n private isControlled(): boolean {\n return this.openInput() !== undefined;\n }\n\n private reposition(): void {\n if (!this.isOpen() || this.win === null || this.triggerElement === null || this.contentElement === null) {\n return;\n }\n\n const result = computeOverlayPosition({\n anchorRect: normalizeRect(this.triggerElement.getBoundingClientRect()),\n collision: {\n flip: true,\n padding: tooltipCollisionPadding,\n shift: true,\n },\n offset: {\n side: tooltipSideOffset,\n },\n overlayRect: normalizeRect(this.contentElement.getBoundingClientRect()),\n placement: {\n align: 'center',\n side: this.side(),\n },\n viewportRect: resolveTooltipViewportRect(this.win),\n });\n\n this.positionX.set(result.x);\n this.positionY.set(result.y);\n this.positionedSide.set(result.side as TngTooltipSide);\n }\n\n private resetPosition(): void {\n this.positionX.set(null);\n this.positionY.set(null);\n }\n\n private scheduleReposition(): void {\n if (this.win === null || this.animationFrameId !== null) {\n return;\n }\n\n this.animationFrameId = this.win.requestAnimationFrame(() => {\n this.animationFrameId = null;\n this.reposition();\n });\n }\n\n private setOpenState(nextOpen: boolean): void {\n if (this.isOpen() === nextOpen) {\n return;\n }\n\n if (!this.isControlled()) {\n this.uncontrolledOpen.set(nextOpen);\n }\n if (!nextOpen) {\n this.resetPosition();\n }\n if (nextOpen) {\n this.scheduleReposition();\n }\n\n this.openChange.emit(nextOpen);\n }\n\n private shouldCloseFromEscape(): boolean {\n return this.isOpen();\n }\n\n private shouldCloseFromOutsidePointer(): boolean {\n return this.isOpen();\n }\n\n private registerOverlayLayer(): void {\n const hostElement = this.hostRef.nativeElement;\n tngPrimitiveOverlayRuntime.registerLayer({\n containsTarget: (target: unknown, path: readonly unknown[]): boolean => {\n if (target instanceof Node && hostElement.contains(target)) {\n return true;\n }\n\n return path.includes(hostElement);\n },\n dismissOnEscape: this.shouldCloseFromEscape(),\n dismissOnOutsidePointer: this.shouldCloseFromOutsidePointer(),\n id: this.instanceId,\n onDismiss: (reason: TngOverlayDismissReason): void => {\n if (reason === 'escape-key' && !this.shouldCloseFromEscape()) {\n return;\n }\n\n if (reason === 'outside-pointer' && !this.shouldCloseFromOutsidePointer()) {\n return;\n }\n\n this.openCloseDelayController.cancelAll();\n this.setOpenState(false);\n },\n });\n this.isOverlayLayerRegistered = true;\n }\n\n private unregisterOverlayLayer(): void {\n if (!this.isOverlayLayerRegistered) {\n return;\n }\n\n tngPrimitiveOverlayRuntime.unregisterLayer(this.instanceId);\n this.isOverlayLayerRegistered = false;\n }\n\n private setupRepositionListeners(): void {\n if (this.win === null || this.removeResizeListener !== null || this.removeScrollListener !== null) {\n return;\n }\n\n const onResize = (): void => {\n this.scheduleReposition();\n };\n const onScroll = (): void => {\n this.scheduleReposition();\n };\n\n this.win.addEventListener('resize', onResize);\n this.win.addEventListener('scroll', onScroll, true);\n this.removeResizeListener = (): void => {\n this.win?.removeEventListener('resize', onResize);\n };\n this.removeScrollListener = (): void => {\n this.win?.removeEventListener('scroll', onScroll, true);\n };\n\n if (typeof ResizeObserver === 'undefined') {\n return;\n }\n\n this.resizeObserver = new ResizeObserver(() => {\n this.scheduleReposition();\n });\n if (this.triggerElement !== null) {\n this.resizeObserver.observe(this.triggerElement);\n }\n if (this.contentElement !== null) {\n this.resizeObserver.observe(this.contentElement);\n }\n }\n\n private teardownRepositionListeners(): void {\n this.removeResizeListener?.();\n this.removeScrollListener?.();\n this.removeResizeListener = null;\n this.removeScrollListener = null;\n this.resizeObserver?.disconnect();\n this.resizeObserver = null;\n }\n}\n\n@Directive({\n selector: '[tngTooltipTrigger]',\n exportAs: 'tngTooltipTrigger',\n})\nexport class TngTooltipTrigger implements OnDestroy, OnInit {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly tooltip = inject(TngTooltip, { optional: true });\n\n public readonly describedBy = input<string | null>(null);\n public readonly disabled = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly open = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n\n @HostBinding('attr.aria-describedby')\n protected get ariaDescribedByAttr(): string | null {\n if (this.tooltip !== null) {\n return resolveTngTooltipAriaDescribedBy(this.tooltip.isOpen(), this.tooltip.getContentId());\n }\n\n return resolveTngTooltipAriaDescribedBy(this.open(), this.describedBy());\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n if (this.tooltip !== null) {\n return this.tooltip.disabled() ? '' : null;\n }\n\n return this.disabled() ? '' : null;\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip-trigger' as const;\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n if (this.tooltip !== null) {\n return resolveTngTooltipDataState(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipDataState(this.open());\n }\n\n public ngOnInit(): void {\n this.tooltip?.registerTrigger(this.hostRef.nativeElement);\n }\n\n public ngOnDestroy(): void {\n this.tooltip?.unregisterTrigger(this.hostRef.nativeElement);\n }\n\n @HostListener('blur')\n protected onBlur(): void {\n this.tooltip?.onTriggerCloseIntent();\n }\n\n @HostListener('focus')\n protected onFocus(): void {\n this.tooltip?.onTriggerOpenIntent();\n }\n\n @HostListener('keydown', ['$event'])\n protected onKeydown(event: KeyboardEvent): void {\n this.tooltip?.onTriggerKeydown(event);\n }\n\n @HostListener('mouseleave')\n protected onMouseLeave(): void {\n this.tooltip?.onTriggerCloseIntent();\n }\n\n @HostListener('mouseenter')\n protected onMouseEnter(): void {\n this.tooltip?.onTriggerOpenIntent();\n }\n}\n\n@Directive({\n selector: '[tngTooltipContent]',\n exportAs: 'tngTooltipContent',\n})\nexport class TngTooltipContent implements OnDestroy, OnInit {\n private readonly generatedId = createTooltipContentId();\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly tooltip = inject(TngTooltip, { optional: true });\n private resolvedId = '';\n\n public readonly id = input<string | null>(null);\n public readonly open = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly side = input<TngTooltipSide>('top');\n\n @HostBinding('attr.data-side')\n protected get dataSideAttr(): TngTooltipSide {\n if (this.tooltip !== null) {\n return this.tooltip.getPositionedSide();\n }\n\n return this.side();\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'tooltip-content' as const;\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n if (this.tooltip !== null) {\n return resolveTngTooltipDataState(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipDataState(this.open());\n }\n\n @HostBinding('attr.hidden')\n protected get hiddenAttr(): '' | null {\n if (this.tooltip !== null) {\n return resolveTngTooltipHidden(this.tooltip.isOpen());\n }\n\n return resolveTngTooltipHidden(this.open());\n }\n\n @HostBinding('attr.id')\n protected get idAttr(): string {\n return this.resolvedId;\n }\n\n @HostBinding('attr.role')\n protected readonly roleAttr = 'tooltip' as const;\n\n @HostBinding('style.position')\n protected get positionStyle(): string | null {\n return this.tooltip === null ? null : 'fixed';\n }\n\n @HostBinding('style.left.px')\n protected get leftStyle(): number | null {\n if (this.tooltip === null) {\n return null;\n }\n\n return this.tooltip.getPositionX();\n }\n\n @HostBinding('style.top.px')\n protected get topStyle(): number | null {\n if (this.tooltip === null) {\n return null;\n }\n\n return this.tooltip.getPositionY();\n }\n\n public ngOnInit(): void {\n this.resolvedId = this.tooltip?.resolveContentId(this.id()) ?? this.resolveContentId(this.id());\n this.tooltip?.registerContent(this.hostRef.nativeElement, this.resolvedId);\n }\n\n public ngOnDestroy(): void {\n this.tooltip?.unregisterContent(this.hostRef.nativeElement);\n }\n\n private resolveContentId(value: string | null): string {\n const candidate = value?.trim() ?? '';\n return candidate.length > 0 ? candidate : this.generatedId;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tng-avatar.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/avatar/tng-avatar.ts"],"names":[],"mappings":";AAEA,qBAKa,SAAS;IAEpB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;yCAFrC,SAAS;2CAAT,SAAS;CAGrB;AAED,qBAKa,cAAc;IAEzB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,cAAc,CAAU;yCAF3C,cAAc;2CAAd,cAAc;CAG1B;AAED,qBAKa,iBAAiB;IAE5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,iBAAiB;2CAAjB,iBAAiB;CAG7B"}
1
+ {"version":3,"file":"tng-avatar.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/avatar/tng-avatar.ts"],"names":[],"mappings":";AAEA,qBAIa,SAAS;IAEpB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;yCAFrC,SAAS;2CAAT,SAAS;CAGrB;AAED,qBAIa,cAAc;IAEzB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,cAAc,CAAU;yCAF3C,cAAc;2CAAd,cAAc;CAG1B;AAED,qBAIa,iBAAiB;IAE5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,iBAAiB;2CAAjB,iBAAiB;CAG7B"}
@@ -10,7 +10,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
10
10
  args: [{
11
11
  selector: '[tngAvatar]',
12
12
  exportAs: 'tngAvatar',
13
- standalone: true,
14
13
  }]
15
14
  }], propDecorators: { dataSlot: [{
16
15
  type: HostBinding,
@@ -26,7 +25,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
26
25
  args: [{
27
26
  selector: 'img[tngAvatarImage]',
28
27
  exportAs: 'tngAvatarImage',
29
- standalone: true,
30
28
  }]
31
29
  }], propDecorators: { dataSlot: [{
32
30
  type: HostBinding,
@@ -42,7 +40,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
42
40
  args: [{
43
41
  selector: '[tngAvatarFallback]',
44
42
  exportAs: 'tngAvatarFallback',
45
- standalone: true,
46
43
  }]
47
44
  }], propDecorators: { dataSlot: [{
48
45
  type: HostBinding,
@@ -1 +1 @@
1
- {"version":3,"file":"tng-avatar.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/avatar/tng-avatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAOvD,MAAM,OAAO,SAAS;IAED,QAAQ,GAAG,QAAiB,CAAC;uGAFrC,SAAS;2FAAT,SAAS;;2FAAT,SAAS;kBALrB,SAAS;mBAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,WAAW;oBACrB,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,cAAc;IAEN,QAAQ,GAAG,cAAuB,CAAC;uGAF3C,cAAc;2FAAd,cAAc;;2FAAd,cAAc;kBAL1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,gBAAgB;oBAC1B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,iBAAiB;IAET,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,iBAAiB;2FAAjB,iBAAiB;;2FAAjB,iBAAiB;kBAL7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,mBAAmB;oBAC7B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngAvatar]',\n exportAs: 'tngAvatar',\n standalone: true,\n})\nexport class TngAvatar {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar' as const;\n}\n\n@Directive({\n selector: 'img[tngAvatarImage]',\n exportAs: 'tngAvatarImage',\n standalone: true,\n})\nexport class TngAvatarImage {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar-image' as const;\n}\n\n@Directive({\n selector: '[tngAvatarFallback]',\n exportAs: 'tngAvatarFallback',\n standalone: true,\n})\nexport class TngAvatarFallback {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar-fallback' as const;\n}\n"]}
1
+ {"version":3,"file":"tng-avatar.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/avatar/tng-avatar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,SAAS;IAED,QAAQ,GAAG,QAAiB,CAAC;uGAFrC,SAAS;2FAAT,SAAS;;2FAAT,SAAS;kBAJrB,SAAS;mBAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,QAAQ,EAAE,WAAW;iBACtB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,cAAc;IAEN,QAAQ,GAAG,cAAuB,CAAC;uGAF3C,cAAc;2FAAd,cAAc;;2FAAd,cAAc;kBAJ1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,gBAAgB;iBAC3B;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,iBAAiB;IAET,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,iBAAiB;2FAAjB,iBAAiB;;2FAAjB,iBAAiB;kBAJ7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,mBAAmB;iBAC9B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngAvatar]',\n exportAs: 'tngAvatar',\n})\nexport class TngAvatar {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar' as const;\n}\n\n@Directive({\n selector: 'img[tngAvatarImage]',\n exportAs: 'tngAvatarImage',\n})\nexport class TngAvatarImage {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar-image' as const;\n}\n\n@Directive({\n selector: '[tngAvatarFallback]',\n exportAs: 'tngAvatarFallback',\n})\nexport class TngAvatarFallback {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'avatar-fallback' as const;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tng-badge.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/badge/tng-badge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tng-badge.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/badge/tng-badge.ts"],"names":[],"mappings":"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"}
@@ -391,7 +391,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
391
391
  args: [{
392
392
  selector: '[tngBadge]',
393
393
  exportAs: 'tngBadge',
394
- standalone: true,
395
394
  }]
396
395
  }], ctorParameters: () => [], propDecorators: { tngBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadge", required: false }] }], tngBadgeClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeClass", required: false }] }], tngBadgeDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeDisabled", required: false }] }], tngBadgeStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeStyle", required: false }] }], tngBadgeDot: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeDot", required: false }] }], tngBadgeHidden: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeHidden", required: false }] }], tngBadgeMax: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeMax", required: false }] }], tngBadgeOffsetX: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeOffsetX", required: false }] }], tngBadgeOffsetY: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeOffsetY", required: false }] }], tngBadgePosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgePosition", required: false }] }], tngBadgeSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeSize", required: false }] }], tngBadgeTone: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeTone", required: false }] }], tngBadgeVariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngBadgeVariant", required: false }] }] } });
397
396
  //# sourceMappingURL=tng-badge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tng-badge.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/badge/tng-badge.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n booleanAttribute,\n Directive,\n effect,\n ElementRef,\n inject,\n input,\n type OnDestroy,\n Renderer2,\n} from '@angular/core';\n\nconst badgePositions = ['bottom-end', 'bottom-start', 'top-end', 'top-start'] as const;\nconst badgeSizes = ['lg', 'md', 'sm'] as const;\nconst badgeTones = ['danger', 'info', 'neutral', 'success', 'warning'] as const;\nconst badgeVariants = ['outline', 'soft', 'solid'] as const;\n\nconst badgePositionSet = new Set<TngBadgePosition>(badgePositions);\nconst badgeSizeSet = new Set<TngBadgeSize>(badgeSizes);\nconst badgeToneSet = new Set<TngBadgeTone>(badgeTones);\nconst badgeVariantSet = new Set<TngBadgeVariant>(badgeVariants);\n\nconst defaultBadgeMax = 99;\nconst defaultBadgePosition: TngBadgePosition = 'top-end';\nconst defaultBadgeSize: TngBadgeSize = 'md';\nconst defaultBadgeTone: TngBadgeTone = 'danger';\nconst defaultBadgeVariant: TngBadgeVariant = 'solid';\n\nexport type TngBadgePosition = (typeof badgePositions)[number];\nexport type TngBadgeSize = (typeof badgeSizes)[number];\nexport type TngBadgeStyleMap = Readonly<Record<string, number | string>>;\nexport type TngBadgeTone = (typeof badgeTones)[number];\nexport type TngBadgeVariant = (typeof badgeVariants)[number];\n\ntype TngBadgeToneColors = Readonly<{\n background: string;\n foreground: string;\n}>;\n\ntype TngResolvedBadgePlacement = Readonly<{\n bottom: string | null;\n left: string | null;\n right: string | null;\n top: string | null;\n transform: string;\n}>;\n\ntype ResizeObserverConstructor = new (callback: ResizeObserverCallback) => ResizeObserver;\n\nfunction isNonEmptyText(value: string): boolean {\n return value.trim().length > 0;\n}\n\nfunction toNumber(value: number | string): number {\n return typeof value === 'number' ? value : Number(value);\n}\n\nfunction toRoundedNonNegative(value: number): number {\n return Math.max(0, Math.round(value));\n}\n\nexport function normalizeTngBadgeMax(value: number): number {\n if (!Number.isFinite(value)) {\n return defaultBadgeMax;\n }\n\n return toRoundedNonNegative(value);\n}\n\nexport function coerceTngBadgeMax(value: number | string): number {\n return normalizeTngBadgeMax(toNumber(value));\n}\n\nexport function coerceTngBadgePosition(value: string): TngBadgePosition {\n if (badgePositionSet.has(value as TngBadgePosition)) {\n return value as TngBadgePosition;\n }\n\n return defaultBadgePosition;\n}\n\nexport function coerceTngBadgeSize(value: string): TngBadgeSize {\n if (badgeSizeSet.has(value as TngBadgeSize)) {\n return value as TngBadgeSize;\n }\n\n return defaultBadgeSize;\n}\n\nexport function coerceTngBadgeTone(value: string): TngBadgeTone {\n if (badgeToneSet.has(value as TngBadgeTone)) {\n return value as TngBadgeTone;\n }\n\n return defaultBadgeTone;\n}\n\nexport function coerceTngBadgeVariant(value: string): TngBadgeVariant {\n if (badgeVariantSet.has(value as TngBadgeVariant)) {\n return value as TngBadgeVariant;\n }\n\n return defaultBadgeVariant;\n}\n\nexport function resolveTngBadgeContent(\n value: number | string | null | undefined,\n max: number,\n dot: boolean,\n): string {\n if (dot || value === null || value === undefined) {\n return '';\n }\n\n if (typeof value === 'number') {\n if (!Number.isFinite(value)) {\n return '';\n }\n\n const normalized = toRoundedNonNegative(value);\n if (normalized > max) {\n return `${max}+`;\n }\n\n return String(normalized);\n }\n\n return isNonEmptyText(value) ? value : '';\n}\n\nexport function resolveTngBadgePlacement(position: TngBadgePosition): TngResolvedBadgePlacement {\n if (position === 'top-start') {\n return { bottom: null, left: '0', right: null, top: '0', transform: 'translate(-50%, -50%)' };\n }\n\n if (position === 'bottom-start') {\n return { bottom: '0', left: '0', right: null, top: null, transform: 'translate(-50%, 50%)' };\n }\n\n if (position === 'bottom-end') {\n return { bottom: '0', left: null, right: '0', top: null, transform: 'translate(50%, 50%)' };\n }\n\n return { bottom: null, left: null, right: '0', top: '0', transform: 'translate(50%, -50%)' };\n}\n\nexport function toTngBadgeCssLength(value: number | string | null | undefined): string | null {\n if (value === null || value === undefined) {\n return null;\n }\n\n if (typeof value === 'number') {\n if (!Number.isFinite(value)) {\n return null;\n }\n\n return `${value}px`;\n }\n\n return isNonEmptyText(value) ? value.trim() : null;\n}\n\nfunction resolveTngBadgeToneColors(tone: TngBadgeTone): TngBadgeToneColors {\n if (tone === 'success') {\n return { background: '#16a34a', foreground: '#f0fdf4' };\n }\n\n if (tone === 'warning') {\n return { background: '#d97706', foreground: '#fffbeb' };\n }\n\n if (tone === 'danger') {\n return { background: '#dc2626', foreground: '#fef2f2' };\n }\n\n if (tone === 'neutral') {\n return { background: '#334155', foreground: '#f8fafc' };\n }\n\n return { background: '#2563eb', foreground: '#eff6ff' };\n}\n\nfunction hasVisibleBadge(hidden: boolean, dot: boolean, content: string): boolean {\n if (hidden) {\n return false;\n }\n\n return dot || content.length > 0;\n}\n\nfunction resolveResizeObserverConstructor(): ResizeObserverConstructor | null {\n const globalObject = globalThis as { ResizeObserver?: ResizeObserverConstructor };\n const resizeObserver = globalObject.ResizeObserver;\n return typeof resizeObserver === 'function' ? resizeObserver : null;\n}\n\nfunction toCssPixelLength(value: number): string {\n if (!Number.isFinite(value)) {\n return '0px';\n }\n\n return `${Math.max(0, value)}px`;\n}\n\n@Directive({\n selector: '[tngBadge]',\n exportAs: 'tngBadge',\n standalone: true,\n})\nexport class TngBadge implements OnDestroy {\n public readonly tngBadge = input<number | string | null | undefined>(null);\n public readonly tngBadgeClass = input<string | null | undefined>(null);\n public readonly tngBadgeDisabled = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeStyle = input<TngBadgeStyleMap | null | undefined>(null);\n public readonly tngBadgeDot = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeHidden = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeMax = input<number, number | string>(defaultBadgeMax, {\n transform: coerceTngBadgeMax,\n });\n public readonly tngBadgeOffsetX = input<number | string | null | undefined>(null);\n public readonly tngBadgeOffsetY = input<number | string | null | undefined>(null);\n public readonly tngBadgePosition = input<TngBadgePosition, string>(defaultBadgePosition, {\n transform: coerceTngBadgePosition,\n });\n public readonly tngBadgeSize = input<TngBadgeSize, string>(defaultBadgeSize, {\n transform: coerceTngBadgeSize,\n });\n public readonly tngBadgeTone = input<TngBadgeTone, string>(defaultBadgeTone, {\n transform: coerceTngBadgeTone,\n });\n public readonly tngBadgeVariant = input<TngBadgeVariant, string>(defaultBadgeVariant, {\n transform: coerceTngBadgeVariant,\n });\n\n private readonly hostElement = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n private readonly renderer = inject(Renderer2);\n private badgeElement: HTMLElement | null = null;\n private readonly customStyleKeys = new Set<string>();\n private resizeObserver: ResizeObserver | null = null;\n private removeWindowResizeListener: (() => void) | null = null;\n\n public constructor() {\n this.configureHost();\n effect((): void => {\n this.renderBadge();\n });\n }\n\n public ngOnDestroy(): void {\n this.destroyBadge();\n }\n\n private configureHost(): void {\n this.renderer.addClass(this.hostElement, 'tng-badge-host');\n this.renderer.setAttribute(this.hostElement, 'data-tng-badge-host', '');\n\n if (this.hostElement.style.position.length === 0) {\n this.renderer.setStyle(this.hostElement, 'position', 'relative');\n }\n }\n\n private renderBadge(): void {\n const content = resolveTngBadgeContent(this.tngBadge(), this.tngBadgeMax(), this.tngBadgeDot());\n if (!hasVisibleBadge(this.tngBadgeHidden(), this.tngBadgeDot(), content)) {\n this.destroyBadge();\n return;\n }\n\n this.ensureBadgeElement();\n this.beginRuntimePositionTracking();\n this.patchBadgeClasses();\n this.patchBadgeAttributes();\n this.patchBadgePlacement();\n this.patchBadgeVisualStyles();\n this.patchBadgeCustomStyles();\n this.patchBadgeRuntimeMetrics();\n this.patchBadgeContent(content);\n }\n\n private ensureBadgeElement(): HTMLElement {\n if (this.badgeElement !== null) {\n return this.badgeElement;\n }\n\n const badgeElement = this.renderer.createElement('span') as HTMLElement;\n this.renderer.appendChild(this.hostElement, badgeElement);\n this.badgeElement = badgeElement;\n return badgeElement;\n }\n\n private destroyBadge(): void {\n this.endRuntimePositionTracking();\n\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.removeChild(this.hostElement, this.badgeElement);\n this.badgeElement = null;\n this.customStyleKeys.clear();\n }\n\n private patchBadgeAttributes(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n this.renderer.setAttribute(badgeElement, 'aria-hidden', 'true');\n this.renderer.setAttribute(badgeElement, 'data-placement', this.tngBadgePosition());\n this.renderer.setAttribute(badgeElement, 'data-position', this.tngBadgePosition());\n this.renderer.setAttribute(badgeElement, 'data-size', this.tngBadgeSize());\n this.renderer.setAttribute(badgeElement, 'data-slot', 'badge');\n this.renderer.setAttribute(badgeElement, 'data-tone', this.tngBadgeTone());\n this.renderer.setAttribute(badgeElement, 'data-variant', this.tngBadgeVariant());\n\n if (this.tngBadgeDisabled()) {\n this.renderer.setAttribute(badgeElement, 'data-disabled', '');\n } else {\n this.renderer.removeAttribute(badgeElement, 'data-disabled');\n }\n\n if (this.tngBadgeDot()) {\n this.renderer.setAttribute(badgeElement, 'data-dot', '');\n return;\n }\n\n this.renderer.removeAttribute(badgeElement, 'data-dot');\n }\n\n private patchBadgeClasses(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const className = this.tngBadgeClass() ?? '';\n const normalizedClassName = className.trim();\n const classes =\n normalizedClassName.length > 0 ? `tng-badge ${normalizedClassName}` : 'tng-badge';\n this.renderer.setAttribute(badgeElement, 'class', classes);\n }\n\n private patchBadgeContent(content: string): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setProperty(this.badgeElement, 'textContent', content);\n }\n\n private patchBadgeCustomStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const nextStyleKeys = new Set<string>();\n const styleMap = this.tngBadgeStyle();\n if (styleMap !== null && styleMap !== undefined) {\n for (const [key, value] of Object.entries(styleMap)) {\n this.renderer.setStyle(badgeElement, key, String(value));\n nextStyleKeys.add(key);\n }\n }\n\n for (const key of this.customStyleKeys) {\n if (!nextStyleKeys.has(key)) {\n this.renderer.removeStyle(badgeElement, key);\n }\n }\n\n this.customStyleKeys.clear();\n for (const key of nextStyleKeys) {\n this.customStyleKeys.add(key);\n }\n }\n\n private patchBadgePlacement(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const placement = resolveTngBadgePlacement(this.tngBadgePosition());\n this.setNullableStyle('bottom', placement.bottom);\n this.setNullableStyle('left', placement.left);\n this.setNullableStyle('right', placement.right);\n this.setNullableStyle('top', placement.top);\n\n const offsetX = toTngBadgeCssLength(this.tngBadgeOffsetX()) ?? '0px';\n const offsetY = toTngBadgeCssLength(this.tngBadgeOffsetY()) ?? '0px';\n const transform = `${placement.transform} translate(${offsetX}, ${offsetY})`;\n this.renderer.setStyle(this.badgeElement, 'transform', transform);\n }\n\n private patchBadgeRuntimeMetrics(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const hostRect = this.hostElement.getBoundingClientRect();\n const badgeRect = this.badgeElement.getBoundingClientRect();\n this.badgeElement.style.setProperty('--tng-badge-anchor-width', toCssPixelLength(hostRect.width));\n this.badgeElement.style.setProperty('--tng-badge-anchor-height', toCssPixelLength(hostRect.height));\n this.badgeElement.style.setProperty('--tng-badge-self-width', toCssPixelLength(badgeRect.width));\n this.badgeElement.style.setProperty('--tng-badge-self-height', toCssPixelLength(badgeRect.height));\n }\n\n private patchBadgeVisualStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const toneColors = resolveTngBadgeToneColors(this.tngBadgeTone());\n const sharedStyles = this.resolveSharedStyles(toneColors);\n for (const [property, value] of sharedStyles) {\n this.renderer.setStyle(badgeElement, property, value);\n }\n\n if (this.tngBadgeDot()) {\n this.patchDotStyles();\n return;\n }\n\n this.patchContentStyles();\n }\n\n private patchContentStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, 'height', 'var(--tng-badge-size, 1.125rem)');\n this.renderer.setStyle(this.badgeElement, 'min-width', 'var(--tng-badge-size, 1.125rem)');\n this.renderer.setStyle(\n this.badgeElement,\n 'padding-inline',\n 'var(--tng-badge-padding-x, 0.3rem)',\n );\n }\n\n private patchDotStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, 'height', 'var(--tng-badge-dot-size, 0.625rem)');\n this.renderer.setStyle(this.badgeElement, 'min-width', 'var(--tng-badge-dot-size, 0.625rem)');\n this.renderer.setStyle(this.badgeElement, 'padding-inline', '0');\n }\n\n private resolveSharedStyles(\n toneColors: TngBadgeToneColors,\n ): readonly Readonly<[string, string]>[] {\n return [\n ['align-items', 'center'],\n ['background', `var(--tng-badge-bg, ${toneColors.background})`],\n ['border-radius', 'var(--tng-badge-radius, 9999px)'],\n ['box-sizing', 'border-box'],\n ['color', `var(--tng-badge-fg, ${toneColors.foreground})`],\n ['display', 'inline-flex'],\n ['font-size', 'var(--tng-badge-font-size, 0.7rem)'],\n ['font-weight', 'var(--tng-badge-font-weight, 700)'],\n ['justify-content', 'center'],\n ['line-height', '1'],\n ['pointer-events', 'none'],\n ['position', 'absolute'],\n ['white-space', 'nowrap'],\n ['z-index', 'var(--tng-badge-z-index, 1)'],\n ];\n }\n\n private setNullableStyle(property: string, value: string | null): void {\n if (this.badgeElement === null) {\n return;\n }\n\n if (value === null) {\n this.renderer.removeStyle(this.badgeElement, property);\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, property, value);\n }\n\n private beginRuntimePositionTracking(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const resizeObserverConstructor = resolveResizeObserverConstructor();\n if (resizeObserverConstructor !== null) {\n if (this.resizeObserver === null) {\n this.resizeObserver = new resizeObserverConstructor(() => {\n this.syncRuntimePositioning();\n });\n }\n\n this.resizeObserver.observe(this.hostElement);\n this.resizeObserver.observe(this.badgeElement);\n return;\n }\n\n if (this.removeWindowResizeListener === null) {\n this.removeWindowResizeListener = this.renderer.listen('window', 'resize', () => {\n this.syncRuntimePositioning();\n });\n }\n }\n\n private endRuntimePositionTracking(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n\n if (this.removeWindowResizeListener !== null) {\n this.removeWindowResizeListener();\n this.removeWindowResizeListener = null;\n }\n }\n\n private syncRuntimePositioning(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.patchBadgePlacement();\n this.patchBadgeRuntimeMetrics();\n }\n}\n"]}
1
+ {"version":3,"file":"tng-badge.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/badge/tng-badge.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n booleanAttribute,\n Directive,\n effect,\n ElementRef,\n inject,\n input,\n type OnDestroy,\n Renderer2,\n} from '@angular/core';\n\nconst badgePositions = ['bottom-end', 'bottom-start', 'top-end', 'top-start'] as const;\nconst badgeSizes = ['lg', 'md', 'sm'] as const;\nconst badgeTones = ['danger', 'info', 'neutral', 'success', 'warning'] as const;\nconst badgeVariants = ['outline', 'soft', 'solid'] as const;\n\nconst badgePositionSet = new Set<TngBadgePosition>(badgePositions);\nconst badgeSizeSet = new Set<TngBadgeSize>(badgeSizes);\nconst badgeToneSet = new Set<TngBadgeTone>(badgeTones);\nconst badgeVariantSet = new Set<TngBadgeVariant>(badgeVariants);\n\nconst defaultBadgeMax = 99;\nconst defaultBadgePosition: TngBadgePosition = 'top-end';\nconst defaultBadgeSize: TngBadgeSize = 'md';\nconst defaultBadgeTone: TngBadgeTone = 'danger';\nconst defaultBadgeVariant: TngBadgeVariant = 'solid';\n\nexport type TngBadgePosition = (typeof badgePositions)[number];\nexport type TngBadgeSize = (typeof badgeSizes)[number];\nexport type TngBadgeStyleMap = Readonly<Record<string, number | string>>;\nexport type TngBadgeTone = (typeof badgeTones)[number];\nexport type TngBadgeVariant = (typeof badgeVariants)[number];\n\ntype TngBadgeToneColors = Readonly<{\n background: string;\n foreground: string;\n}>;\n\ntype TngResolvedBadgePlacement = Readonly<{\n bottom: string | null;\n left: string | null;\n right: string | null;\n top: string | null;\n transform: string;\n}>;\n\ntype ResizeObserverConstructor = new (callback: ResizeObserverCallback) => ResizeObserver;\n\nfunction isNonEmptyText(value: string): boolean {\n return value.trim().length > 0;\n}\n\nfunction toNumber(value: number | string): number {\n return typeof value === 'number' ? value : Number(value);\n}\n\nfunction toRoundedNonNegative(value: number): number {\n return Math.max(0, Math.round(value));\n}\n\nexport function normalizeTngBadgeMax(value: number): number {\n if (!Number.isFinite(value)) {\n return defaultBadgeMax;\n }\n\n return toRoundedNonNegative(value);\n}\n\nexport function coerceTngBadgeMax(value: number | string): number {\n return normalizeTngBadgeMax(toNumber(value));\n}\n\nexport function coerceTngBadgePosition(value: string): TngBadgePosition {\n if (badgePositionSet.has(value as TngBadgePosition)) {\n return value as TngBadgePosition;\n }\n\n return defaultBadgePosition;\n}\n\nexport function coerceTngBadgeSize(value: string): TngBadgeSize {\n if (badgeSizeSet.has(value as TngBadgeSize)) {\n return value as TngBadgeSize;\n }\n\n return defaultBadgeSize;\n}\n\nexport function coerceTngBadgeTone(value: string): TngBadgeTone {\n if (badgeToneSet.has(value as TngBadgeTone)) {\n return value as TngBadgeTone;\n }\n\n return defaultBadgeTone;\n}\n\nexport function coerceTngBadgeVariant(value: string): TngBadgeVariant {\n if (badgeVariantSet.has(value as TngBadgeVariant)) {\n return value as TngBadgeVariant;\n }\n\n return defaultBadgeVariant;\n}\n\nexport function resolveTngBadgeContent(\n value: number | string | null | undefined,\n max: number,\n dot: boolean,\n): string {\n if (dot || value === null || value === undefined) {\n return '';\n }\n\n if (typeof value === 'number') {\n if (!Number.isFinite(value)) {\n return '';\n }\n\n const normalized = toRoundedNonNegative(value);\n if (normalized > max) {\n return `${max}+`;\n }\n\n return String(normalized);\n }\n\n return isNonEmptyText(value) ? value : '';\n}\n\nexport function resolveTngBadgePlacement(position: TngBadgePosition): TngResolvedBadgePlacement {\n if (position === 'top-start') {\n return { bottom: null, left: '0', right: null, top: '0', transform: 'translate(-50%, -50%)' };\n }\n\n if (position === 'bottom-start') {\n return { bottom: '0', left: '0', right: null, top: null, transform: 'translate(-50%, 50%)' };\n }\n\n if (position === 'bottom-end') {\n return { bottom: '0', left: null, right: '0', top: null, transform: 'translate(50%, 50%)' };\n }\n\n return { bottom: null, left: null, right: '0', top: '0', transform: 'translate(50%, -50%)' };\n}\n\nexport function toTngBadgeCssLength(value: number | string | null | undefined): string | null {\n if (value === null || value === undefined) {\n return null;\n }\n\n if (typeof value === 'number') {\n if (!Number.isFinite(value)) {\n return null;\n }\n\n return `${value}px`;\n }\n\n return isNonEmptyText(value) ? value.trim() : null;\n}\n\nfunction resolveTngBadgeToneColors(tone: TngBadgeTone): TngBadgeToneColors {\n if (tone === 'success') {\n return { background: '#16a34a', foreground: '#f0fdf4' };\n }\n\n if (tone === 'warning') {\n return { background: '#d97706', foreground: '#fffbeb' };\n }\n\n if (tone === 'danger') {\n return { background: '#dc2626', foreground: '#fef2f2' };\n }\n\n if (tone === 'neutral') {\n return { background: '#334155', foreground: '#f8fafc' };\n }\n\n return { background: '#2563eb', foreground: '#eff6ff' };\n}\n\nfunction hasVisibleBadge(hidden: boolean, dot: boolean, content: string): boolean {\n if (hidden) {\n return false;\n }\n\n return dot || content.length > 0;\n}\n\nfunction resolveResizeObserverConstructor(): ResizeObserverConstructor | null {\n const globalObject = globalThis as { ResizeObserver?: ResizeObserverConstructor };\n const resizeObserver = globalObject.ResizeObserver;\n return typeof resizeObserver === 'function' ? resizeObserver : null;\n}\n\nfunction toCssPixelLength(value: number): string {\n if (!Number.isFinite(value)) {\n return '0px';\n }\n\n return `${Math.max(0, value)}px`;\n}\n\n@Directive({\n selector: '[tngBadge]',\n exportAs: 'tngBadge',\n})\nexport class TngBadge implements OnDestroy {\n public readonly tngBadge = input<number | string | null | undefined>(null);\n public readonly tngBadgeClass = input<string | null | undefined>(null);\n public readonly tngBadgeDisabled = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeStyle = input<TngBadgeStyleMap | null | undefined>(null);\n public readonly tngBadgeDot = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeHidden = input<boolean, boolean | string>(false, {\n transform: booleanAttribute,\n });\n public readonly tngBadgeMax = input<number, number | string>(defaultBadgeMax, {\n transform: coerceTngBadgeMax,\n });\n public readonly tngBadgeOffsetX = input<number | string | null | undefined>(null);\n public readonly tngBadgeOffsetY = input<number | string | null | undefined>(null);\n public readonly tngBadgePosition = input<TngBadgePosition, string>(defaultBadgePosition, {\n transform: coerceTngBadgePosition,\n });\n public readonly tngBadgeSize = input<TngBadgeSize, string>(defaultBadgeSize, {\n transform: coerceTngBadgeSize,\n });\n public readonly tngBadgeTone = input<TngBadgeTone, string>(defaultBadgeTone, {\n transform: coerceTngBadgeTone,\n });\n public readonly tngBadgeVariant = input<TngBadgeVariant, string>(defaultBadgeVariant, {\n transform: coerceTngBadgeVariant,\n });\n\n private readonly hostElement = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n private readonly renderer = inject(Renderer2);\n private badgeElement: HTMLElement | null = null;\n private readonly customStyleKeys = new Set<string>();\n private resizeObserver: ResizeObserver | null = null;\n private removeWindowResizeListener: (() => void) | null = null;\n\n public constructor() {\n this.configureHost();\n effect((): void => {\n this.renderBadge();\n });\n }\n\n public ngOnDestroy(): void {\n this.destroyBadge();\n }\n\n private configureHost(): void {\n this.renderer.addClass(this.hostElement, 'tng-badge-host');\n this.renderer.setAttribute(this.hostElement, 'data-tng-badge-host', '');\n\n if (this.hostElement.style.position.length === 0) {\n this.renderer.setStyle(this.hostElement, 'position', 'relative');\n }\n }\n\n private renderBadge(): void {\n const content = resolveTngBadgeContent(this.tngBadge(), this.tngBadgeMax(), this.tngBadgeDot());\n if (!hasVisibleBadge(this.tngBadgeHidden(), this.tngBadgeDot(), content)) {\n this.destroyBadge();\n return;\n }\n\n this.ensureBadgeElement();\n this.beginRuntimePositionTracking();\n this.patchBadgeClasses();\n this.patchBadgeAttributes();\n this.patchBadgePlacement();\n this.patchBadgeVisualStyles();\n this.patchBadgeCustomStyles();\n this.patchBadgeRuntimeMetrics();\n this.patchBadgeContent(content);\n }\n\n private ensureBadgeElement(): HTMLElement {\n if (this.badgeElement !== null) {\n return this.badgeElement;\n }\n\n const badgeElement = this.renderer.createElement('span') as HTMLElement;\n this.renderer.appendChild(this.hostElement, badgeElement);\n this.badgeElement = badgeElement;\n return badgeElement;\n }\n\n private destroyBadge(): void {\n this.endRuntimePositionTracking();\n\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.removeChild(this.hostElement, this.badgeElement);\n this.badgeElement = null;\n this.customStyleKeys.clear();\n }\n\n private patchBadgeAttributes(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n this.renderer.setAttribute(badgeElement, 'aria-hidden', 'true');\n this.renderer.setAttribute(badgeElement, 'data-placement', this.tngBadgePosition());\n this.renderer.setAttribute(badgeElement, 'data-position', this.tngBadgePosition());\n this.renderer.setAttribute(badgeElement, 'data-size', this.tngBadgeSize());\n this.renderer.setAttribute(badgeElement, 'data-slot', 'badge');\n this.renderer.setAttribute(badgeElement, 'data-tone', this.tngBadgeTone());\n this.renderer.setAttribute(badgeElement, 'data-variant', this.tngBadgeVariant());\n\n if (this.tngBadgeDisabled()) {\n this.renderer.setAttribute(badgeElement, 'data-disabled', '');\n } else {\n this.renderer.removeAttribute(badgeElement, 'data-disabled');\n }\n\n if (this.tngBadgeDot()) {\n this.renderer.setAttribute(badgeElement, 'data-dot', '');\n return;\n }\n\n this.renderer.removeAttribute(badgeElement, 'data-dot');\n }\n\n private patchBadgeClasses(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const className = this.tngBadgeClass() ?? '';\n const normalizedClassName = className.trim();\n const classes =\n normalizedClassName.length > 0 ? `tng-badge ${normalizedClassName}` : 'tng-badge';\n this.renderer.setAttribute(badgeElement, 'class', classes);\n }\n\n private patchBadgeContent(content: string): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setProperty(this.badgeElement, 'textContent', content);\n }\n\n private patchBadgeCustomStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const nextStyleKeys = new Set<string>();\n const styleMap = this.tngBadgeStyle();\n if (styleMap !== null && styleMap !== undefined) {\n for (const [key, value] of Object.entries(styleMap)) {\n this.renderer.setStyle(badgeElement, key, String(value));\n nextStyleKeys.add(key);\n }\n }\n\n for (const key of this.customStyleKeys) {\n if (!nextStyleKeys.has(key)) {\n this.renderer.removeStyle(badgeElement, key);\n }\n }\n\n this.customStyleKeys.clear();\n for (const key of nextStyleKeys) {\n this.customStyleKeys.add(key);\n }\n }\n\n private patchBadgePlacement(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const placement = resolveTngBadgePlacement(this.tngBadgePosition());\n this.setNullableStyle('bottom', placement.bottom);\n this.setNullableStyle('left', placement.left);\n this.setNullableStyle('right', placement.right);\n this.setNullableStyle('top', placement.top);\n\n const offsetX = toTngBadgeCssLength(this.tngBadgeOffsetX()) ?? '0px';\n const offsetY = toTngBadgeCssLength(this.tngBadgeOffsetY()) ?? '0px';\n const transform = `${placement.transform} translate(${offsetX}, ${offsetY})`;\n this.renderer.setStyle(this.badgeElement, 'transform', transform);\n }\n\n private patchBadgeRuntimeMetrics(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const hostRect = this.hostElement.getBoundingClientRect();\n const badgeRect = this.badgeElement.getBoundingClientRect();\n this.badgeElement.style.setProperty('--tng-badge-anchor-width', toCssPixelLength(hostRect.width));\n this.badgeElement.style.setProperty('--tng-badge-anchor-height', toCssPixelLength(hostRect.height));\n this.badgeElement.style.setProperty('--tng-badge-self-width', toCssPixelLength(badgeRect.width));\n this.badgeElement.style.setProperty('--tng-badge-self-height', toCssPixelLength(badgeRect.height));\n }\n\n private patchBadgeVisualStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const badgeElement = this.badgeElement;\n const toneColors = resolveTngBadgeToneColors(this.tngBadgeTone());\n const sharedStyles = this.resolveSharedStyles(toneColors);\n for (const [property, value] of sharedStyles) {\n this.renderer.setStyle(badgeElement, property, value);\n }\n\n if (this.tngBadgeDot()) {\n this.patchDotStyles();\n return;\n }\n\n this.patchContentStyles();\n }\n\n private patchContentStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, 'height', 'var(--tng-badge-size, 1.125rem)');\n this.renderer.setStyle(this.badgeElement, 'min-width', 'var(--tng-badge-size, 1.125rem)');\n this.renderer.setStyle(\n this.badgeElement,\n 'padding-inline',\n 'var(--tng-badge-padding-x, 0.3rem)',\n );\n }\n\n private patchDotStyles(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, 'height', 'var(--tng-badge-dot-size, 0.625rem)');\n this.renderer.setStyle(this.badgeElement, 'min-width', 'var(--tng-badge-dot-size, 0.625rem)');\n this.renderer.setStyle(this.badgeElement, 'padding-inline', '0');\n }\n\n private resolveSharedStyles(\n toneColors: TngBadgeToneColors,\n ): readonly Readonly<[string, string]>[] {\n return [\n ['align-items', 'center'],\n ['background', `var(--tng-badge-bg, ${toneColors.background})`],\n ['border-radius', 'var(--tng-badge-radius, 9999px)'],\n ['box-sizing', 'border-box'],\n ['color', `var(--tng-badge-fg, ${toneColors.foreground})`],\n ['display', 'inline-flex'],\n ['font-size', 'var(--tng-badge-font-size, 0.7rem)'],\n ['font-weight', 'var(--tng-badge-font-weight, 700)'],\n ['justify-content', 'center'],\n ['line-height', '1'],\n ['pointer-events', 'none'],\n ['position', 'absolute'],\n ['white-space', 'nowrap'],\n ['z-index', 'var(--tng-badge-z-index, 1)'],\n ];\n }\n\n private setNullableStyle(property: string, value: string | null): void {\n if (this.badgeElement === null) {\n return;\n }\n\n if (value === null) {\n this.renderer.removeStyle(this.badgeElement, property);\n return;\n }\n\n this.renderer.setStyle(this.badgeElement, property, value);\n }\n\n private beginRuntimePositionTracking(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n const resizeObserverConstructor = resolveResizeObserverConstructor();\n if (resizeObserverConstructor !== null) {\n if (this.resizeObserver === null) {\n this.resizeObserver = new resizeObserverConstructor(() => {\n this.syncRuntimePositioning();\n });\n }\n\n this.resizeObserver.observe(this.hostElement);\n this.resizeObserver.observe(this.badgeElement);\n return;\n }\n\n if (this.removeWindowResizeListener === null) {\n this.removeWindowResizeListener = this.renderer.listen('window', 'resize', () => {\n this.syncRuntimePositioning();\n });\n }\n }\n\n private endRuntimePositionTracking(): void {\n if (this.resizeObserver !== null) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n\n if (this.removeWindowResizeListener !== null) {\n this.removeWindowResizeListener();\n this.removeWindowResizeListener = null;\n }\n }\n\n private syncRuntimePositioning(): void {\n if (this.badgeElement === null) {\n return;\n }\n\n this.patchBadgePlacement();\n this.patchBadgeRuntimeMetrics();\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tng-code-block.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/code-block/tng-code-block.ts"],"names":[],"mappings":";AAEA,qBAKa,YAAY;IAEvB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;yCAFzC,YAAY;2CAAZ,YAAY;CAGxB;AAED,qBAKa,kBAAkB;IAE7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,mBAAmB,CAAU;yCAFhD,kBAAkB;2CAAlB,kBAAkB;CAG9B;AAED,qBAKa,gBAAgB;IAE3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,gBAAgB;2CAAhB,gBAAgB;CAG5B;AAED,qBAKa,kBAAkB;IAE7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,mBAAmB,CAAU;yCAFhD,kBAAkB;2CAAlB,kBAAkB;CAG9B;AAED,qBAKa,gBAAgB;IAE3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,gBAAgB;2CAAhB,gBAAgB;CAG5B"}
1
+ {"version":3,"file":"tng-code-block.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/code-block/tng-code-block.ts"],"names":[],"mappings":";AAEA,qBAIa,YAAY;IAEvB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,YAAY,CAAU;yCAFzC,YAAY;2CAAZ,YAAY;CAGxB;AAED,qBAIa,kBAAkB;IAE7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,mBAAmB,CAAU;yCAFhD,kBAAkB;2CAAlB,kBAAkB;CAG9B;AAED,qBAIa,gBAAgB;IAE3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,gBAAgB;2CAAhB,gBAAgB;CAG5B;AAED,qBAIa,kBAAkB;IAE7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,mBAAmB,CAAU;yCAFhD,kBAAkB;2CAAlB,kBAAkB;CAG9B;AAED,qBAIa,gBAAgB;IAE3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,gBAAgB;2CAAhB,gBAAgB;CAG5B"}
@@ -10,7 +10,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
10
10
  args: [{
11
11
  selector: '[tngCodeBlock]',
12
12
  exportAs: 'tngCodeBlock',
13
- standalone: true,
14
13
  }]
15
14
  }], propDecorators: { dataSlot: [{
16
15
  type: HostBinding,
@@ -26,7 +25,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
26
25
  args: [{
27
26
  selector: '[tngCodeBlockHeader]',
28
27
  exportAs: 'tngCodeBlockHeader',
29
- standalone: true,
30
28
  }]
31
29
  }], propDecorators: { dataSlot: [{
32
30
  type: HostBinding,
@@ -42,7 +40,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
42
40
  args: [{
43
41
  selector: '[tngCodeBlockBody]',
44
42
  exportAs: 'tngCodeBlockBody',
45
- standalone: true,
46
43
  }]
47
44
  }], propDecorators: { dataSlot: [{
48
45
  type: HostBinding,
@@ -58,7 +55,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
58
55
  args: [{
59
56
  selector: '[tngCodeBlockGutter]',
60
57
  exportAs: 'tngCodeBlockGutter',
61
- standalone: true,
62
58
  }]
63
59
  }], propDecorators: { dataSlot: [{
64
60
  type: HostBinding,
@@ -74,7 +70,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
74
70
  args: [{
75
71
  selector: '[tngCodeBlockCode]',
76
72
  exportAs: 'tngCodeBlockCode',
77
- standalone: true,
78
73
  }]
79
74
  }], propDecorators: { dataSlot: [{
80
75
  type: HostBinding,
@@ -1 +1 @@
1
- {"version":3,"file":"tng-code-block.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/code-block/tng-code-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAOvD,MAAM,OAAO,YAAY;IAEJ,QAAQ,GAAG,YAAqB,CAAC;uGAFzC,YAAY;2FAAZ,YAAY;;2FAAZ,YAAY;kBALxB,SAAS;mBAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,QAAQ,EAAE,cAAc;oBACxB,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,kBAAkB;IAEV,QAAQ,GAAG,mBAA4B,CAAC;uGAFhD,kBAAkB;2FAAlB,kBAAkB;;2FAAlB,kBAAkB;kBAL9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,oBAAoB;oBAC9B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,gBAAgB;IAER,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,gBAAgB;2FAAhB,gBAAgB;;2FAAhB,gBAAgB;kBAL5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,kBAAkB;oBAC5B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,kBAAkB;IAEV,QAAQ,GAAG,mBAA4B,CAAC;uGAFhD,kBAAkB;2FAAlB,kBAAkB;;2FAAlB,kBAAkB;kBAL9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,oBAAoB;oBAC9B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAS/B,MAAM,OAAO,gBAAgB;IAER,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,gBAAgB;2FAAhB,gBAAgB;;2FAAhB,gBAAgB;kBAL5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,kBAAkB;oBAC5B,UAAU,EAAE,IAAI;iBACjB;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngCodeBlock]',\n exportAs: 'tngCodeBlock',\n standalone: true,\n})\nexport class TngCodeBlock {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockHeader]',\n exportAs: 'tngCodeBlockHeader',\n standalone: true,\n})\nexport class TngCodeBlockHeader {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-header' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockBody]',\n exportAs: 'tngCodeBlockBody',\n standalone: true,\n})\nexport class TngCodeBlockBody {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-body' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockGutter]',\n exportAs: 'tngCodeBlockGutter',\n standalone: true,\n})\nexport class TngCodeBlockGutter {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-gutter' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockCode]',\n exportAs: 'tngCodeBlockCode',\n standalone: true,\n})\nexport class TngCodeBlockCode {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-code' as const;\n}\n"]}
1
+ {"version":3,"file":"tng-code-block.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/code-block/tng-code-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,YAAY;IAEJ,QAAQ,GAAG,YAAqB,CAAC;uGAFzC,YAAY;2FAAZ,YAAY;;2FAAZ,YAAY;kBAJxB,SAAS;mBAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,QAAQ,EAAE,cAAc;iBACzB;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,kBAAkB;IAEV,QAAQ,GAAG,mBAA4B,CAAC;uGAFhD,kBAAkB;2FAAlB,kBAAkB;;2FAAlB,kBAAkB;kBAJ9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,oBAAoB;iBAC/B;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,gBAAgB;IAER,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,gBAAgB;2FAAhB,gBAAgB;;2FAAhB,gBAAgB;kBAJ5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,kBAAkB;iBAC7B;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,kBAAkB;IAEV,QAAQ,GAAG,mBAA4B,CAAC;uGAFhD,kBAAkB;2FAAlB,kBAAkB;;2FAAlB,kBAAkB;kBAJ9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,QAAQ,EAAE,oBAAoB;iBAC/B;;sBAEE,WAAW;uBAAC,gBAAgB;;AAQ/B,MAAM,OAAO,gBAAgB;IAER,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,gBAAgB;2FAAhB,gBAAgB;;2FAAhB,gBAAgB;kBAJ5B,SAAS;mBAAC;oBACT,QAAQ,EAAE,oBAAoB;oBAC9B,QAAQ,EAAE,kBAAkB;iBAC7B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngCodeBlock]',\n exportAs: 'tngCodeBlock',\n})\nexport class TngCodeBlock {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockHeader]',\n exportAs: 'tngCodeBlockHeader',\n})\nexport class TngCodeBlockHeader {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-header' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockBody]',\n exportAs: 'tngCodeBlockBody',\n})\nexport class TngCodeBlockBody {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-body' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockGutter]',\n exportAs: 'tngCodeBlockGutter',\n})\nexport class TngCodeBlockGutter {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-gutter' as const;\n}\n\n@Directive({\n selector: '[tngCodeBlockCode]',\n exportAs: 'tngCodeBlockCode',\n})\nexport class TngCodeBlockCode {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'code-block-code' as const;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"tng-copy.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/copy/tng-copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,eAAe,CAAC;;AAEhE,KAAK,iBAAiB,GAAG,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7D,KAAK,oBAAoB,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAElD,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,oBAAoB,GACpB,MAAM,GACN,IAAI,GACJ,SAAS,CAAC;AACd,MAAM,MAAM,2BAA2B,GAAG,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AACxF,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AACjG,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AAC3E,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAC3E,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,YAAY,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,aAAa,CAAC;AACxD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB,CAAA;AAED,eAAO,MAAM,6BAA6B,EAAE,SAAS,MAAM,EAKzD,CAAC;AACH,eAAO,MAAM,+BAA+B,OAAO,CAAC;AACpD,eAAO,MAAM,iCAAiC,wBAAwB,CAAC;AACvE,eAAO,MAAM,+BAA+B,gBAAgB,CAAC;AAsR7D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAchF;AAWD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,eAAe,CAQlF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CAG5E;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,2BAA2B,GACjC,SAAS,MAAM,EAAE,CAUnB;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,MAAM,GAAG,IAAI,CAUf;AA8CD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,OAAO,EACtB,MAAM,GAAE,aAA4B,GACnC,OAAO,CAAC,aAAa,CAAC,CAuBxB;AAED,qBAKa,OAAO;IAClB,SAAgB,OAAO,yDAA0B;IACjD,SAAgB,iBAAiB,8DAA4C;IAC7E,SAAgB,mBAAmB,yDAAkC;IACrE,SAAgB,mBAAmB,sFAEhC;IACH,SAAgB,8BAA8B,4EAG5C;IACF,SAAgB,qBAAqB,8EAElC;IACH,SAAgB,mBAAmB,qDAA8B;IACjE,SAAgB,qBAAqB,0FAElC;IACH,SAAgB,2BAA2B,8CAAoD;IAC/F,SAAgB,yBAAyB,8CAAkD;IAC3F,SAAgB,eAAe,8EAE5B;IACH,SAAgB,SAAS,mDAAoB;IAC7C,SAAgB,cAAc,gEAAiC;IAC/D,SAAgB,YAAY,8DAA+B;IAC3D,SAAgB,WAAW,yDAAkC;IAC7D,SAAgB,sBAAsB,mGAKpC;IACF,SAAgB,WAAW,iEAA+C;IAC1E,SAAgB,gBAAgB,mDAAoB;IACpD,SAAgB,MAAM,8DAAuC;IAC7D,SAAgB,cAAc,wDAA+B;IAC7D,SAAgB,KAAK,uDAA8B;IAEnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6D;IACzF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,iBAAiB,CAA8C;IACvE,OAAO,CAAC,OAAO,CAAS;IAGxB,SAAS,KAAK,oBAAoB,IAAI,EAAE,GAAG,IAAI,CAE9C;IAGD,SAAS,KAAK,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAM9C;IAGD,SAAS,KAAK,YAAY,IAAI,EAAE,GAAG,IAAI,CAMtC;;IAiCD,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAgBxD,SAAS,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAsB7C,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,SAAS;YAOH,MAAM;YAsBN,OAAO;IAqCrB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,cAAc;yCAxRX,OAAO;2CAAP,OAAO;CAySnB"}
1
+ {"version":3,"file":"tng-copy.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/utility/copy/tng-copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,MAAM,EACZ,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,eAAe,CAAC;;AAEhE,KAAK,iBAAiB,GAAG,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7D,KAAK,oBAAoB,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAElD,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,oBAAoB,GACpB,MAAM,GACN,IAAI,GACJ,SAAS,CAAC;AACd,MAAM,MAAM,2BAA2B,GAAG,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AACxF,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AACjG,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AAC3E,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAC3E,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,YAAY,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,aAAa,CAAC;AACxD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAEvE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,oBAAoB,CAAC;CAC/B,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB,CAAA;AAED,eAAO,MAAM,6BAA6B,EAAE,SAAS,MAAM,EAKzD,CAAC;AACH,eAAO,MAAM,+BAA+B,OAAO,CAAC;AACpD,eAAO,MAAM,iCAAiC,wBAAwB,CAAC;AACvE,eAAO,MAAM,+BAA+B,gBAAgB,CAAC;AAsR7D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAchF;AAWD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,GAAG,eAAe,CAQlF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CAG5E;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,2BAA2B,GACjC,SAAS,MAAM,EAAE,CAUnB;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACrC,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,MAAM,GAAG,IAAI,CAUf;AA8CD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,OAAO,EACtB,MAAM,GAAE,aAA4B,GACnC,OAAO,CAAC,aAAa,CAAC,CAuBxB;AAED,qBAIa,OAAO;IAClB,SAAgB,OAAO,yDAA0B;IACjD,SAAgB,iBAAiB,8DAA4C;IAC7E,SAAgB,mBAAmB,yDAAkC;IACrE,SAAgB,mBAAmB,sFAEhC;IACH,SAAgB,8BAA8B,4EAG5C;IACF,SAAgB,qBAAqB,8EAElC;IACH,SAAgB,mBAAmB,qDAA8B;IACjE,SAAgB,qBAAqB,0FAElC;IACH,SAAgB,2BAA2B,8CAAoD;IAC/F,SAAgB,yBAAyB,8CAAkD;IAC3F,SAAgB,eAAe,8EAE5B;IACH,SAAgB,SAAS,mDAAoB;IAC7C,SAAgB,cAAc,gEAAiC;IAC/D,SAAgB,YAAY,8DAA+B;IAC3D,SAAgB,WAAW,yDAAkC;IAC7D,SAAgB,sBAAsB,mGAKpC;IACF,SAAgB,WAAW,iEAA+C;IAC1E,SAAgB,gBAAgB,mDAAoB;IACpD,SAAgB,MAAM,8DAAuC;IAC7D,SAAgB,cAAc,wDAA+B;IAC7D,SAAgB,KAAK,uDAA8B;IAEnD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6D;IACzF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,iBAAiB,CAA8C;IACvE,OAAO,CAAC,OAAO,CAAS;IAGxB,SAAS,KAAK,oBAAoB,IAAI,EAAE,GAAG,IAAI,CAE9C;IAGD,SAAS,KAAK,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAM9C;IAGD,SAAS,KAAK,YAAY,IAAI,EAAE,GAAG,IAAI,CAMtC;;IAiCD,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAgBxD,SAAS,CAAC,aAAa,CAAC,GAAG,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI;IAsB7C,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,SAAS;YAOH,MAAM;YAsBN,OAAO;IAqCrB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,cAAc;yCAxRX,OAAO;2CAAP,OAAO;CAySnB"}
@@ -545,7 +545,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
545
545
  args: [{
546
546
  selector: '[tngCopy], [tngCopyButton]',
547
547
  exportAs: 'tngCopy',
548
- standalone: true,
549
548
  }]
550
549
  }], ctorParameters: () => [], propDecorators: { tngCopy: [{ type: i0.Output, args: ["tngCopy"] }], tngCopyButtonText: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonText", required: false }] }], tngCopyButtonTarget: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonTarget", required: false }] }], tngCopyButtonFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonFormat", required: false }] }], tngCopyButtonSuccessDurationMs: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonSuccessDurationMs", required: false }] }], tngCopyButtonDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonDisabled", required: false }] }], tngCopyButtonHotkey: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonHotkey", required: false }] }], tngCopyButtonAnnounce: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonAnnounce", required: false }] }], tngCopyButtonSuccessMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonSuccessMessage", required: false }] }], tngCopyButtonErrorMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyButtonErrorMessage", required: false }] }], tngCopyDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyDisabled", required: false }] }], tngCopied: [{ type: i0.Output, args: ["tngCopied"] }], tngCopySuccess: [{ type: i0.Output, args: ["tngCopySuccess"] }], tngCopyError: [{ type: i0.Output, args: ["tngCopyError"] }], tngCopyFrom: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyFrom", required: false }] }], tngCopyIgnoreSelectors: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyIgnoreSelectors", required: false }] }], tngCopyText: [{ type: i0.Input, args: [{ isSignal: true, alias: "tngCopyText", required: false }] }], tngCopyAnnounced: [{ type: i0.Output, args: ["tngCopyAnnounced"] }], dataCopyDisabledAttr: [{
551
550
  type: HostBinding,