@tailng-ui/primitives 0.1.0 → 0.11.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 (99) hide show
  1. package/package.json +9 -3
  2. package/src/index.d.ts +5 -0
  3. package/src/index.d.ts.map +1 -1
  4. package/src/index.js +5 -0
  5. package/src/index.js.map +1 -1
  6. package/src/lib/feedback/progress-bar/tng-progress-bar.d.ts.map +1 -1
  7. package/src/lib/feedback/progress-bar/tng-progress-bar.js +2 -1
  8. package/src/lib/feedback/progress-bar/tng-progress-bar.js.map +1 -1
  9. package/src/lib/feedback/progress-spinner/tng-progress-spinner.d.ts.map +1 -1
  10. package/src/lib/feedback/progress-spinner/tng-progress-spinner.js +2 -1
  11. package/src/lib/feedback/progress-spinner/tng-progress-spinner.js.map +1 -1
  12. package/src/lib/feedback/skeleton/tng-skeleton.d.ts +1 -0
  13. package/src/lib/feedback/skeleton/tng-skeleton.d.ts.map +1 -1
  14. package/src/lib/feedback/skeleton/tng-skeleton.js +4 -0
  15. package/src/lib/feedback/skeleton/tng-skeleton.js.map +1 -1
  16. package/src/lib/form/chips/tng-chips.d.ts +53 -1
  17. package/src/lib/form/chips/tng-chips.d.ts.map +1 -1
  18. package/src/lib/form/chips/tng-chips.js +281 -1
  19. package/src/lib/form/chips/tng-chips.js.map +1 -1
  20. package/src/lib/form/input-otp/tng-input-otp.d.ts +22 -0
  21. package/src/lib/form/input-otp/tng-input-otp.d.ts.map +1 -1
  22. package/src/lib/form/input-otp/tng-input-otp.js +105 -1
  23. package/src/lib/form/input-otp/tng-input-otp.js.map +1 -1
  24. package/src/lib/form/label/tng-label.d.ts +2 -0
  25. package/src/lib/form/label/tng-label.d.ts.map +1 -1
  26. package/src/lib/form/label/tng-label.js +9 -0
  27. package/src/lib/form/label/tng-label.js.map +1 -1
  28. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.d.ts +1 -0
  29. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.d.ts.map +1 -1
  30. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.js +26 -0
  31. package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.trigger.js.map +1 -1
  32. package/src/lib/form/radio/tng-radio.d.ts +26 -0
  33. package/src/lib/form/radio/tng-radio.d.ts.map +1 -1
  34. package/src/lib/form/radio/tng-radio.js +129 -1
  35. package/src/lib/form/radio/tng-radio.js.map +1 -1
  36. package/src/lib/form/textarea/tng-textarea.d.ts +6 -14
  37. package/src/lib/form/textarea/tng-textarea.d.ts.map +1 -1
  38. package/src/lib/form/textarea/tng-textarea.js +42 -85
  39. package/src/lib/form/textarea/tng-textarea.js.map +1 -1
  40. package/src/lib/layout/accordion/tng-accordion.d.ts +9 -0
  41. package/src/lib/layout/accordion/tng-accordion.d.ts.map +1 -1
  42. package/src/lib/layout/accordion/tng-accordion.js +113 -0
  43. package/src/lib/layout/accordion/tng-accordion.js.map +1 -1
  44. package/src/lib/layout/tree/__tests__/tng-tree.test-harness.d.ts +20 -0
  45. package/src/lib/layout/tree/__tests__/tng-tree.test-harness.d.ts.map +1 -0
  46. package/src/lib/layout/tree/__tests__/tng-tree.test-harness.js +106 -0
  47. package/src/lib/layout/tree/__tests__/tng-tree.test-harness.js.map +1 -0
  48. package/src/lib/layout/tree/index.d.ts +5 -0
  49. package/src/lib/layout/tree/index.d.ts.map +1 -0
  50. package/src/lib/layout/tree/index.js +5 -0
  51. package/src/lib/layout/tree/index.js.map +1 -0
  52. package/src/lib/layout/tree/tng-tree-group.d.ts +10 -0
  53. package/src/lib/layout/tree/tng-tree-group.d.ts.map +1 -0
  54. package/src/lib/layout/tree/tng-tree-group.js +29 -0
  55. package/src/lib/layout/tree/tng-tree-group.js.map +1 -0
  56. package/src/lib/layout/tree/tng-tree-indicator.d.ts +8 -0
  57. package/src/lib/layout/tree/tng-tree-indicator.d.ts.map +1 -0
  58. package/src/lib/layout/tree/tng-tree-indicator.js +36 -0
  59. package/src/lib/layout/tree/tng-tree-indicator.js.map +1 -0
  60. package/src/lib/layout/tree/tng-tree-item.d.ts +36 -0
  61. package/src/lib/layout/tree/tng-tree-item.d.ts.map +1 -0
  62. package/src/lib/layout/tree/tng-tree-item.js +139 -0
  63. package/src/lib/layout/tree/tng-tree-item.js.map +1 -0
  64. package/src/lib/layout/tree/tng-tree.d.ts +64 -1
  65. package/src/lib/layout/tree/tng-tree.d.ts.map +1 -1
  66. package/src/lib/layout/tree/tng-tree.js +536 -1
  67. package/src/lib/layout/tree/tng-tree.js.map +1 -1
  68. package/src/lib/layout/tree/tng-tree.transforms.d.ts +10 -0
  69. package/src/lib/layout/tree/tng-tree.transforms.d.ts.map +1 -0
  70. package/src/lib/layout/tree/tng-tree.transforms.js +46 -0
  71. package/src/lib/layout/tree/tng-tree.transforms.js.map +1 -0
  72. package/src/lib/overlay/dialog/tng-dialog.d.ts +158 -0
  73. package/src/lib/overlay/dialog/tng-dialog.d.ts.map +1 -0
  74. package/src/lib/overlay/dialog/tng-dialog.js +854 -0
  75. package/src/lib/overlay/dialog/tng-dialog.js.map +1 -0
  76. package/src/lib/overlay/popover/tng-popover.d.ts +121 -0
  77. package/src/lib/overlay/popover/tng-popover.d.ts.map +1 -0
  78. package/src/lib/overlay/popover/tng-popover.js +614 -0
  79. package/src/lib/overlay/popover/tng-popover.js.map +1 -0
  80. package/src/lib/overlay/tng-overlay-runtime.d.ts +11 -0
  81. package/src/lib/overlay/tng-overlay-runtime.d.ts.map +1 -0
  82. package/src/lib/overlay/tng-overlay-runtime.js +6 -0
  83. package/src/lib/overlay/tng-overlay-runtime.js.map +1 -0
  84. package/src/lib/overlay/tooltip/tng-tooltip.d.ts +92 -3
  85. package/src/lib/overlay/tooltip/tng-tooltip.d.ts.map +1 -1
  86. package/src/lib/overlay/tooltip/tng-tooltip.js +474 -3
  87. package/src/lib/overlay/tooltip/tng-tooltip.js.map +1 -1
  88. package/src/lib/utility/badge/tng-badge.d.ts +6 -0
  89. package/src/lib/utility/badge/tng-badge.d.ts.map +1 -1
  90. package/src/lib/utility/badge/tng-badge.js +65 -0
  91. package/src/lib/utility/badge/tng-badge.js.map +1 -1
  92. package/src/lib/utility/copy/tng-copy.d.ts +21 -10
  93. package/src/lib/utility/copy/tng-copy.d.ts.map +1 -1
  94. package/src/lib/utility/copy/tng-copy.js +117 -88
  95. package/src/lib/utility/copy/tng-copy.js.map +1 -1
  96. package/src/lib/utility/tag/tng-tag.d.ts +37 -0
  97. package/src/lib/utility/tag/tng-tag.d.ts.map +1 -1
  98. package/src/lib/utility/tag/tng-tag.js +195 -1
  99. package/src/lib/utility/tag/tng-tag.js.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tng-popover.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/popover/tng-popover.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n OnDestroy,\n OnInit} from '@angular/core';\nimport {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n afterNextRender,\n booleanAttribute,\n effect,\n inject,\n Injector,\n input,\n output,\n signal,\n} from '@angular/core';\nimport {\n createOverlayFocusHandoffController,\n resolveFocusableElements,\n createTngIdFactory,\n} from '@tailng-ui/cdk';\nimport type { TngOverlayDismissReason } from '@tailng-ui/cdk/overlay';\nimport { tngPrimitiveOverlayRuntime } from '../tng-overlay-runtime';\n\nconst createPopoverId = createTngIdFactory('tng-popover');\nconst createPopoverPanelId = createTngIdFactory('tng-popover-panel');\nconst createPopoverFocusableId = createTngIdFactory('tng-popover-focusable');\n\ntype OptionalBooleanInput = boolean | null | string | undefined;\n\nexport type TngPopoverAutoFocus = 'first-focusable' | 'none' | 'panel';\nexport type TngPopoverSide = 'bottom' | 'left' | 'right' | 'top';\nexport type TngPopoverAlign = 'center' | 'end' | 'start';\nexport type TngPopoverPanelRole = 'dialog' | 'listbox' | 'menu' | 'none' | 'region';\nexport type TngPopoverAriaHasPopup = 'dialog' | 'grid' | 'listbox' | 'menu' | 'tree' | 'true';\nexport type TngPopoverCloseReason = 'escape' | 'outside-pointer' | 'programmatic' | 'trigger-toggle';\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 isPopoverCloseReason(value: string): value is TngPopoverCloseReason {\n return value === 'escape' || value === 'outside-pointer' || value === 'programmatic' || value === 'trigger-toggle';\n}\n\nfunction mapOverlayDismissReason(reason: TngOverlayDismissReason): TngPopoverCloseReason {\n if (reason === 'escape-key') {\n return 'escape';\n }\n\n if (reason === 'outside-pointer') {\n return 'outside-pointer';\n }\n\n return 'programmatic';\n}\n\nconst popoverGlobalDocument = typeof document === 'undefined' ? null : document;\nconst popoverFocusHandoff = createOverlayFocusHandoffController();\n\nexport function resolvePopoverActiveElement(documentRef: unknown): HTMLElement | null {\n if (!(documentRef instanceof Document)) {\n return null;\n }\n\n const active = documentRef.activeElement;\n return active instanceof HTMLElement ? active : null;\n}\n\nexport function resolvePopoverFocusableElements(container: unknown): readonly HTMLElement[] {\n return resolveFocusableElements(container);\n}\n\nexport function resolvePopoverMarkedInitialElement(container: unknown): HTMLElement | null {\n if (!(container instanceof HTMLElement)) {\n return null;\n }\n\n const markedInitial = container.querySelector<HTMLElement>('[data-tng-popover-initial-focus]');\n if (markedInitial === null) {\n return null;\n }\n\n if (resolvePopoverFocusableElements(container).includes(markedInitial)) {\n return markedInitial;\n }\n\n return resolvePopoverFocusableElements(markedInitial)[0] ?? null;\n}\n\n@Directive({\n selector: '[tngPopover]',\n exportAs: 'tngPopover',\n standalone: true,\n})\nexport class TngPopover implements OnDestroy, OnInit {\n public readonly openInput = input<boolean | undefined, OptionalBooleanInput>(undefined, {\n alias: 'open',\n transform: normalizeOptionalBooleanInput,\n });\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 closeOnEscape = input<boolean, OptionalBooleanInput>(true, {\n transform: booleanAttribute,\n });\n public readonly closeOnOutsidePointer = input<boolean, OptionalBooleanInput>(true, {\n transform: booleanAttribute,\n });\n public readonly restoreFocus = input<boolean, OptionalBooleanInput>(true, {\n transform: booleanAttribute,\n });\n public readonly autoFocus = input<TngPopoverAutoFocus, string | TngPopoverAutoFocus>('first-focusable', {\n transform: (value: string | TngPopoverAutoFocus): TngPopoverAutoFocus => {\n return value === 'none' || value === 'panel' || value === 'first-focusable' ? value : 'first-focusable';\n },\n });\n public readonly side = input<TngPopoverSide, string | TngPopoverSide>('bottom', {\n transform: (value: string | TngPopoverSide): TngPopoverSide => {\n return value === 'top' || value === 'right' || value === 'bottom' || value === 'left' ? value : 'bottom';\n },\n });\n public readonly align = input<TngPopoverAlign, string | TngPopoverAlign>('start', {\n transform: (value: string | TngPopoverAlign): TngPopoverAlign => {\n return value === 'start' || value === 'center' || value === 'end' ? value : 'start';\n },\n });\n public readonly panelRole = input<TngPopoverPanelRole, string | TngPopoverPanelRole>('dialog', {\n transform: (value: string | TngPopoverPanelRole): TngPopoverPanelRole => {\n return value === 'dialog' || value === 'menu' || value === 'listbox' || value === 'region' || value === 'none'\n ? value\n : 'dialog';\n },\n });\n public readonly ariaHasPopup = input<TngPopoverAriaHasPopup, string | TngPopoverAriaHasPopup>('dialog', {\n transform: (value: string | TngPopoverAriaHasPopup): TngPopoverAriaHasPopup => {\n return value === 'dialog'\n || value === 'menu'\n || value === 'listbox'\n || value === 'tree'\n || value === 'grid'\n || value === 'true'\n ? value\n : 'dialog';\n },\n });\n public readonly ariaLabel = input<string | null>(null);\n\n public readonly openChange = output<boolean>();\n public readonly closed = output<TngPopoverCloseReason>();\n\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly injector = inject(Injector);\n private readonly documentRef = popoverGlobalDocument;\n private readonly instanceId = createPopoverId();\n private readonly uncontrolledOpen = signal(false);\n private readonly openStateEffect = effect((): void => {\n if (!this.initialized) {\n return;\n }\n\n if (this.isOpen()) {\n this.activatePopover();\n return;\n }\n\n this.deactivatePopover();\n });\n\n private initialized = false;\n private isActive = false;\n private isFocusLayerRegistered = false;\n private isOverlayLayerRegistered = false;\n private panelElement: HTMLElement | null = null;\n private panelElementId: string | null = null;\n private triggerElement: HTMLElement | null = null;\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'popover';\n\n @HostBinding('attr.data-open')\n protected get dataOpenAttr(): 'false' | 'true' {\n return this.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n return this.isOpen() ? 'open' : 'closed';\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n return this.disabled() ? '' : null;\n }\n\n @HostBinding('attr.data-side')\n protected get dataSideAttr(): TngPopoverSide {\n return this.side();\n }\n\n @HostBinding('attr.data-align')\n protected get dataAlignAttr(): TngPopoverAlign {\n return this.align();\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.activatePopover();\n }\n }\n\n public ngOnDestroy(): void {\n this.openStateEffect.destroy();\n this.deactivatePopover();\n }\n\n public isOpen(): boolean {\n return this.openInput() ?? this.uncontrolledOpen();\n }\n\n public openPopover(): void {\n if (this.disabled() || this.isOpen()) {\n return;\n }\n\n this.setOpenState(true);\n }\n\n public closePopover(reason: TngPopoverCloseReason = 'programmatic'): void {\n this.requestClose(reason);\n }\n\n public togglePopover(force?: boolean): void {\n if (force === true) {\n this.openPopover();\n return;\n }\n\n if (force === false) {\n this.closePopover('programmatic');\n return;\n }\n\n if (this.isOpen()) {\n this.requestClose('trigger-toggle');\n return;\n }\n\n this.openPopover();\n }\n\n public requestClose(reason: TngPopoverCloseReason): void {\n if (!this.isOpen()) {\n return;\n }\n\n this.closed.emit(reason);\n this.setOpenState(false);\n }\n\n public registerTrigger(trigger: HTMLElement): void {\n this.triggerElement = trigger;\n }\n\n public unregisterTrigger(trigger: HTMLElement): void {\n if (this.triggerElement === trigger) {\n this.triggerElement = null;\n }\n }\n\n public registerPanel(panel: HTMLElement, id: string): void {\n this.panelElement = panel;\n this.panelElementId = id;\n }\n\n public unregisterPanel(panel: HTMLElement): void {\n if (this.panelElement === panel) {\n this.panelElement = null;\n this.panelElementId = null;\n }\n }\n\n public getPanelId(): string | null {\n return this.panelElementId;\n }\n\n public resolvePanelRole(): Exclude<TngPopoverPanelRole, 'none'> | null {\n const role = this.panelRole();\n return role === 'none' ? null : role;\n }\n\n private activatePopover(): void {\n if (this.isActive) {\n return;\n }\n\n this.isActive = true;\n this.registerFocusLayer();\n this.activateFocusLayer();\n this.registerOverlayLayer();\n this.focusInitialElement();\n }\n\n private deactivatePopover(): void {\n if (!this.isActive) {\n return;\n }\n\n this.isActive = false;\n this.deactivateFocusLayer();\n this.unregisterFocusLayer();\n this.unregisterOverlayLayer();\n }\n\n private focusInitialElement(): void {\n if (this.autoFocus() === 'none') {\n return;\n }\n\n afterNextRender(\n (): void => {\n if (!this.isOpen()) {\n return;\n }\n\n const panel = this.panelElement;\n if (panel === null) {\n return;\n }\n\n if (this.autoFocus() === 'panel') {\n this.focusElement(panel);\n return;\n }\n\n const focusTarget = resolvePopoverMarkedInitialElement(panel) ?? resolvePopoverFocusableElements(panel)[0] ?? panel;\n this.focusElement(focusTarget);\n },\n { injector: this.injector },\n );\n }\n\n public recordFocusedElement(target: unknown): void {\n if (!(target instanceof HTMLElement) || !this.isOpen()) {\n return;\n }\n\n const panel = this.panelElement;\n if (!panel?.contains(target)) {\n return;\n }\n\n const targetId = this.ensureElementId(target);\n popoverFocusHandoff.recordFocus(this.instanceId, targetId);\n }\n\n private setOpenState(next: boolean): void {\n if (this.isOpen() === next) {\n return;\n }\n\n if (!this.isControlled()) {\n this.uncontrolledOpen.set(next);\n }\n\n this.openChange.emit(next);\n }\n\n private isControlled(): boolean {\n return this.openInput() !== undefined;\n }\n\n private shouldCloseFromEscape(): boolean {\n return this.isOpen() && this.closeOnEscape();\n }\n\n private shouldCloseFromOutsidePointer(): boolean {\n return this.isOpen() && this.closeOnOutsidePointer();\n }\n\n private activateFocusLayer(): void {\n const activeElement = resolvePopoverActiveElement(this.documentRef);\n const restoreFocusTargetId = activeElement === null ? null : this.ensureElementId(activeElement);\n popoverFocusHandoff.activateLayer(this.instanceId, restoreFocusTargetId);\n }\n\n private deactivateFocusLayer(): void {\n const restoreFocusTargetId = popoverFocusHandoff.deactivateLayer(this.instanceId);\n if (!this.restoreFocus() || restoreFocusTargetId === null) {\n return;\n }\n\n const restoreFocusTarget = this.resolveElementById(restoreFocusTargetId) ?? this.triggerElement;\n restoreFocusTarget?.focus();\n }\n\n private registerFocusLayer(): void {\n if (this.isFocusLayerRegistered) {\n return;\n }\n\n popoverFocusHandoff.registerLayer({\n layerId: this.instanceId,\n members: (): readonly string[] => {\n const panel = this.panelElement;\n if (panel === null) {\n return [];\n }\n\n return this.resolveFocusableMemberIds(panel);\n },\n restoreFocus: this.restoreFocus(),\n trapFocus: false,\n });\n this.isFocusLayerRegistered = true;\n }\n\n private unregisterFocusLayer(): void {\n if (!this.isFocusLayerRegistered) {\n return;\n }\n\n popoverFocusHandoff.unregisterLayer(this.instanceId);\n this.isFocusLayerRegistered = false;\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.requestClose(mapOverlayDismissReason(reason));\n },\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 focusElement(target: HTMLElement): void {\n const targetId = this.ensureElementId(target);\n const resolvedTargetId = popoverFocusHandoff.resolveFocusCandidate(this.instanceId, targetId);\n if (resolvedTargetId === null) {\n return;\n }\n\n const resolvedTarget = this.resolveElementById(resolvedTargetId);\n if (resolvedTarget === null) {\n return;\n }\n\n resolvedTarget.focus();\n popoverFocusHandoff.recordFocus(this.instanceId, resolvedTargetId);\n }\n\n private resolveFocusableMemberIds(panel: HTMLElement): readonly string[] {\n const focusableElements = resolvePopoverFocusableElements(panel);\n const memberIds: string[] = [];\n const seenIds = new Set<string>();\n\n const registerMember = (element: HTMLElement): void => {\n const id = this.ensureElementId(element);\n if (seenIds.has(id)) {\n return;\n }\n\n seenIds.add(id);\n memberIds.push(id);\n };\n\n registerMember(panel);\n for (const element of focusableElements) {\n registerMember(element);\n }\n\n return memberIds;\n }\n\n private ensureElementId(element: HTMLElement): string {\n const existingId = element.id.trim();\n if (existingId.length > 0) {\n return existingId;\n }\n\n const generatedId = createPopoverFocusableId();\n element.id = generatedId;\n return generatedId;\n }\n\n private resolveElementById(id: string): HTMLElement | null {\n if (this.documentRef === null) {\n return null;\n }\n\n const element = this.documentRef.getElementById(id);\n return element instanceof HTMLElement ? element : null;\n }\n}\n\n@Directive({\n selector: '[tngPopoverTrigger]',\n exportAs: 'tngPopoverTrigger',\n standalone: true,\n})\nexport class TngPopoverTrigger implements OnDestroy, OnInit {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly parentPopover = inject(TngPopover, { optional: true });\n\n public readonly popoverFor = input<TngPopover | null>(null, {\n alias: 'tngPopoverTrigger',\n });\n\n @HostBinding('attr.aria-haspopup')\n protected get ariaHasPopupAttr(): TngPopoverAriaHasPopup {\n return this.resolvePopover()?.ariaHasPopup() ?? 'dialog';\n }\n\n @HostBinding('attr.aria-controls')\n protected get ariaControlsAttr(): string | null {\n return this.resolvePopover()?.getPanelId() ?? null;\n }\n\n @HostBinding('attr.aria-expanded')\n protected get ariaExpandedAttr(): 'false' | 'true' {\n return this.resolvePopover()?.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'popover-trigger';\n\n @HostBinding('attr.data-open')\n protected get dataOpenAttr(): 'false' | 'true' {\n return this.resolvePopover()?.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n return this.resolvePopover()?.isOpen() ? 'open' : 'closed';\n }\n\n @HostBinding('attr.data-disabled')\n protected get dataDisabledAttr(): '' | null {\n return this.resolvePopover()?.disabled() ? '' : null;\n }\n\n public ngOnInit(): void {\n this.resolvePopover()?.registerTrigger(this.hostRef.nativeElement);\n }\n\n public ngOnDestroy(): void {\n this.resolvePopover()?.unregisterTrigger(this.hostRef.nativeElement);\n }\n\n @HostListener('click')\n protected onClick(): void {\n this.resolvePopover()?.togglePopover();\n }\n\n private resolvePopover(): TngPopover | null {\n return this.popoverFor() ?? this.parentPopover;\n }\n}\n\n@Directive({\n selector: '[tngPopoverPanel], [tngPopoverContent]',\n exportAs: 'tngPopoverPanel',\n standalone: true,\n})\nexport class TngPopoverPanel implements OnDestroy, OnInit {\n private readonly popover = inject(TngPopover);\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly generatedId = createPopoverPanelId();\n private resolvedId = '';\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'popover-panel';\n\n @HostBinding('attr.data-open')\n protected get dataOpenAttr(): 'false' | 'true' {\n return this.popover.isOpen() ? 'true' : 'false';\n }\n\n @HostBinding('attr.data-state')\n protected get dataStateAttr(): 'closed' | 'open' {\n return this.popover.isOpen() ? 'open' : 'closed';\n }\n\n @HostBinding('attr.data-side')\n protected get dataSideAttr(): TngPopoverSide {\n return this.popover.side();\n }\n\n @HostBinding('attr.data-align')\n protected get dataAlignAttr(): TngPopoverAlign {\n return this.popover.align();\n }\n\n @HostBinding('attr.hidden')\n protected get hiddenAttr(): '' | null {\n return this.popover.isOpen() ? null : '';\n }\n\n @HostBinding('attr.id')\n protected get idAttr(): string {\n return this.resolvedId;\n }\n\n @HostBinding('attr.role')\n protected get roleAttr(): Exclude<TngPopoverPanelRole, 'none'> | null {\n return this.popover.resolvePanelRole();\n }\n\n @HostBinding('attr.aria-label')\n protected get ariaLabelAttr(): string | null {\n return this.popover.ariaLabel();\n }\n\n @HostBinding('attr.tabindex')\n protected readonly tabIndexAttr = '-1';\n\n public ngOnInit(): void {\n const hostId = this.hostRef.nativeElement.id.trim();\n this.resolvedId = hostId.length > 0 ? hostId : this.generatedId;\n this.popover.registerPanel(this.hostRef.nativeElement, this.resolvedId);\n }\n\n public ngOnDestroy(): void {\n this.popover.unregisterPanel(this.hostRef.nativeElement);\n }\n\n @HostListener('focusin', ['$event.target'])\n protected onFocusIn(target: EventTarget | null): void {\n this.popover.recordFocusedElement(target);\n }\n}\n\n@Directive({\n selector: '[tngPopoverClose]',\n exportAs: 'tngPopoverClose',\n standalone: true,\n})\nexport class TngPopoverClose {\n private readonly popover = inject(TngPopover);\n\n public readonly closeReason = input<string | null>(null, {\n alias: 'tngPopoverClose',\n });\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'popover-close';\n\n @HostListener('click')\n protected onClick(): void {\n this.popover.requestClose(this.resolveCloseReason());\n }\n\n private resolveCloseReason(): TngPopoverCloseReason {\n const raw = this.closeReason()?.trim();\n if (raw === undefined || raw.length === 0) {\n return 'programmatic';\n }\n\n return isPopoverCloseReason(raw) ? raw : 'programmatic';\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ export declare const tngPrimitiveOverlayRuntime: Readonly<{
2
+ clearLayers: () => void;
3
+ dispatchKeydown: (event: Readonly<import("@tailng-ui/cdk").TngOverlayKeyboardEvent>) => void;
4
+ dispatchPointerDown: (event: Readonly<import("@tailng-ui/cdk").TngOverlayPointerEvent>) => void;
5
+ dismissById: (id: string, reason: import("@tailng-ui/cdk").TngOverlayDismissReason) => void;
6
+ getLayerIds: () => readonly string[];
7
+ isTopLayer: (id: string) => boolean;
8
+ registerLayer: (layer: import("@tailng-ui/cdk").TngOverlayLayer) => void;
9
+ unregisterLayer: (id: string) => void;
10
+ }>;
11
+ //# sourceMappingURL=tng-overlay-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tng-overlay-runtime.d.ts","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tng-overlay-runtime.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,0BAA0B;;;;;;;;;EAErC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { createOverlayRuntime } from '@tailng-ui/cdk';
2
+ const primitiveOverlayDocument = typeof document === 'undefined' ? null : document;
3
+ export const tngPrimitiveOverlayRuntime = createOverlayRuntime({
4
+ documentRef: primitiveOverlayDocument,
5
+ });
6
+ //# sourceMappingURL=tng-overlay-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tng-overlay-runtime.js","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tng-overlay-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,wBAAwB,GAAG,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,QAA6C,CAAC;AAEzH,MAAM,CAAC,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;IAC7D,WAAW,EAAE,wBAAwB;CACtC,CAAC,CAAC","sourcesContent":["import { createOverlayRuntime } from '@tailng-ui/cdk';\nimport type { TngOverlayInteractionDomDocument } from '@tailng-ui/cdk/overlay';\n\nconst primitiveOverlayDocument = typeof document === 'undefined' ? null : (document as TngOverlayInteractionDomDocument);\n\nexport const tngPrimitiveOverlayRuntime = createOverlayRuntime({\n documentRef: primitiveOverlayDocument,\n});\n"]}
@@ -1,8 +1,79 @@
1
+ import { OnDestroy, OnInit } from '@angular/core';
1
2
  export type TngTooltipSide = 'bottom' | 'left' | 'right' | 'top';
3
+ type OptionalBooleanInput = boolean | null | string | undefined;
4
+ type TngTooltipKeyboardEvent = Readonly<Pick<KeyboardEvent, 'key'>> & Readonly<{
5
+ preventDefault: () => void;
6
+ }>;
2
7
  export declare function resolveTngTooltipAriaDescribedBy(open: boolean, tooltipId: string | null): string | null;
3
8
  export declare function resolveTngTooltipDataState(open: boolean): 'closed' | 'open';
4
9
  export declare function resolveTngTooltipHidden(open: boolean): '' | null;
5
- export declare class TngTooltipTrigger {
10
+ export declare function normalizeTngTooltipDelay(value: number): number;
11
+ export declare function shouldCloseTngTooltipForKey(key: string): boolean;
12
+ export declare class TngTooltip implements OnDestroy, OnInit {
13
+ private readonly generatedContentId;
14
+ private readonly hostRef;
15
+ private readonly instanceId;
16
+ readonly closeDelay: import("@angular/core").InputSignal<number>;
17
+ readonly defaultOpen: import("@angular/core").InputSignalWithTransform<boolean, OptionalBooleanInput>;
18
+ readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, OptionalBooleanInput>;
19
+ readonly openDelay: import("@angular/core").InputSignal<number>;
20
+ readonly openInput: import("@angular/core").InputSignalWithTransform<boolean | undefined, OptionalBooleanInput>;
21
+ readonly side: import("@angular/core").InputSignal<TngTooltipSide>;
22
+ readonly openChange: import("@angular/core").OutputEmitterRef<boolean>;
23
+ private readonly win;
24
+ private readonly uncontrolledOpen;
25
+ private animationFrameId;
26
+ private contentElement;
27
+ private contentId;
28
+ private removeResizeListener;
29
+ private removeScrollListener;
30
+ private resizeObserver;
31
+ private triggerElement;
32
+ private readonly openCloseDelayController;
33
+ private isOverlayLayerRegistered;
34
+ private initialized;
35
+ private readonly positionX;
36
+ private readonly positionY;
37
+ private readonly positionedSide;
38
+ private readonly syncDisabledState;
39
+ private readonly syncPositioning;
40
+ private readonly syncOverlayLayer;
41
+ private readonly syncSide;
42
+ protected readonly dataSlot = "tooltip";
43
+ protected get dataStateAttr(): 'closed' | 'open';
44
+ protected get dataOpenAttr(): 'false' | 'true';
45
+ protected get dataDisabledAttr(): '' | null;
46
+ ngOnInit(): void;
47
+ ngOnDestroy(): void;
48
+ isOpen(): boolean;
49
+ getContentId(): string | null;
50
+ resolveContentId(id: string | null): string;
51
+ getPositionedSide(): TngTooltipSide;
52
+ getPositionX(): number | null;
53
+ getPositionY(): number | null;
54
+ registerContent(content: HTMLElement, id: string | null): void;
55
+ unregisterContent(content: HTMLElement): void;
56
+ registerTrigger(trigger: HTMLElement): void;
57
+ unregisterTrigger(trigger: HTMLElement): void;
58
+ onTriggerCloseIntent(): void;
59
+ onTriggerOpenIntent(): void;
60
+ onTriggerKeydown(event: TngTooltipKeyboardEvent): void;
61
+ private clearAnimationFrame;
62
+ private isControlled;
63
+ private reposition;
64
+ private resetPosition;
65
+ private scheduleReposition;
66
+ private setOpenState;
67
+ private shouldCloseFromEscape;
68
+ private shouldCloseFromOutsidePointer;
69
+ private registerOverlayLayer;
70
+ private unregisterOverlayLayer;
71
+ private setupRepositionListeners;
72
+ private teardownRepositionListeners;
73
+ }
74
+ export declare class TngTooltipTrigger implements OnDestroy, OnInit {
75
+ private readonly hostRef;
76
+ private readonly tooltip;
6
77
  readonly describedBy: import("@angular/core").InputSignal<string | null>;
7
78
  readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, string | boolean>;
8
79
  readonly open: import("@angular/core").InputSignalWithTransform<boolean, string | boolean>;
@@ -10,9 +81,20 @@ export declare class TngTooltipTrigger {
10
81
  protected get dataDisabledAttr(): '' | null;
11
82
  protected readonly dataSlot: "tooltip-trigger";
12
83
  protected get dataStateAttr(): 'closed' | 'open';
84
+ ngOnInit(): void;
85
+ ngOnDestroy(): void;
86
+ protected onBlur(): void;
87
+ protected onFocus(): void;
88
+ protected onKeydown(event: KeyboardEvent): void;
89
+ protected onMouseLeave(): void;
90
+ protected onMouseEnter(): void;
13
91
  }
14
- export declare class TngTooltipContent {
15
- readonly id: import("@angular/core").InputSignal<string>;
92
+ export declare class TngTooltipContent implements OnDestroy, OnInit {
93
+ private readonly generatedId;
94
+ private readonly hostRef;
95
+ private readonly tooltip;
96
+ private resolvedId;
97
+ readonly id: import("@angular/core").InputSignal<string | null>;
16
98
  readonly open: import("@angular/core").InputSignalWithTransform<boolean, string | boolean>;
17
99
  readonly side: import("@angular/core").InputSignal<TngTooltipSide>;
18
100
  protected get dataSideAttr(): TngTooltipSide;
@@ -21,5 +103,12 @@ export declare class TngTooltipContent {
21
103
  protected get hiddenAttr(): '' | null;
22
104
  protected get idAttr(): string;
23
105
  protected readonly roleAttr: "tooltip";
106
+ protected get positionStyle(): string | null;
107
+ protected get leftStyle(): number | null;
108
+ protected get topStyle(): number | null;
109
+ ngOnInit(): void;
110
+ ngOnDestroy(): void;
111
+ private resolveContentId;
24
112
  }
113
+ export {};
25
114
  //# sourceMappingURL=tng-tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tng-tooltip.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tooltip/tng-tooltip.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjE,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,MAAM,GAAG,IAAI,GACvB,MAAM,GAAG,IAAI,CAMf;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAE3E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,GAAG,IAAI,CAEhE;AAED,qBAIa,iBAAiB;IAC5B,SAAgB,WAAW,qDAA8B;IACzD,SAAgB,QAAQ,8EAErB;IACH,SAAgB,IAAI,8EAEjB;IAGH,SAAS,KAAK,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAEjD;IAGD,SAAS,KAAK,gBAAgB,IAAI,EAAE,GAAG,IAAI,CAE1C;IAGD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;IAGzD,SAAS,KAAK,aAAa,IAAI,QAAQ,GAAG,MAAM,CAE/C;CACF;AAED,qBAIa,iBAAiB;IAC5B,SAAgB,EAAE,8CAA4B;IAC9C,SAAgB,IAAI,8EAEjB;IACH,SAAgB,IAAI,sDAAgC;IAGpD,SAAS,KAAK,YAAY,IAAI,cAAc,CAE3C;IAGD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;IAGzD,SAAS,KAAK,aAAa,IAAI,QAAQ,GAAG,MAAM,CAE/C;IAGD,SAAS,KAAK,UAAU,IAAI,EAAE,GAAG,IAAI,CAEpC;IAGD,SAAS,KAAK,MAAM,IAAI,MAAM,CAE7B;IAGD,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,SAAS,CAAU;CAClD"}
1
+ {"version":3,"file":"tng-tooltip.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/overlay/tooltip/tng-tooltip.ts"],"names":[],"mappings":"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"}