@spartan-ng/brain 0.0.1-alpha.707 → 0.0.1-alpha.708
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.
- package/fesm2022/spartan-ng-brain-accordion.mjs +30 -30
- package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs +19 -19
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-autocomplete.mjs +89 -102
- package/fesm2022/spartan-ng-brain-autocomplete.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-avatar.mjs +15 -15
- package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-button.mjs +4 -4
- package/fesm2022/spartan-ng-brain-button.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-calendar.mjs +120 -127
- package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-checkbox.mjs +24 -24
- package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-collapsible.mjs +17 -17
- package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-combobox.mjs +151 -178
- package/fesm2022/spartan-ng-brain-combobox.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-command.mjs +43 -52
- package/fesm2022/spartan-ng-brain-command.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-core.mjs +5 -5
- package/fesm2022/spartan-ng-brain-core.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-dialog.mjs +72 -86
- package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-field.mjs +38 -43
- package/fesm2022/spartan-ng-brain-field.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-forms.mjs +20 -20
- package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-hover-card.mjs +24 -32
- package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-input-otp.mjs +23 -25
- package/fesm2022/spartan-ng-brain-input-otp.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-input.mjs +6 -6
- package/fesm2022/spartan-ng-brain-input.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-label.mjs +6 -6
- package/fesm2022/spartan-ng-brain-label.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-navigation-menu.mjs +49 -53
- package/fesm2022/spartan-ng-brain-navigation-menu.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-popover.mjs +13 -15
- package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-progress.mjs +11 -13
- package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-radio-group.mjs +28 -34
- package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-resizable.mjs +23 -23
- package/fesm2022/spartan-ng-brain-resizable.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-select.mjs +102 -105
- package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-separator.mjs +7 -7
- package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-sheet.mjs +24 -24
- package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-slider.mjs +52 -76
- package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-sonner.mjs +108 -132
- package/fesm2022/spartan-ng-brain-sonner.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-switch.mjs +21 -23
- package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-tabs.mjs +36 -39
- package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-textarea.mjs +6 -6
- package/fesm2022/spartan-ng-brain-textarea.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-toggle-group.mjs +21 -27
- package/fesm2022/spartan-ng-brain-toggle-group.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-toggle.mjs +10 -12
- package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-tooltip.mjs +27 -27
- package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -1
- package/hlm-tailwind-preset.css +6 -6
- package/package.json +44 -43
- package/{autocomplete/index.d.ts → types/spartan-ng-brain-autocomplete.d.ts} +10 -10
- package/{calendar/index.d.ts → types/spartan-ng-brain-calendar.d.ts} +2 -2
- package/{combobox/index.d.ts → types/spartan-ng-brain-combobox.d.ts} +10 -10
- package/{dialog/index.d.ts → types/spartan-ng-brain-dialog.d.ts} +1 -1
- package/{hover-card/index.d.ts → types/spartan-ng-brain-hover-card.d.ts} +1 -1
- package/{select/index.d.ts → types/spartan-ng-brain-select.d.ts} +11 -11
- /package/{accordion/index.d.ts → types/spartan-ng-brain-accordion.d.ts} +0 -0
- /package/{alert-dialog/index.d.ts → types/spartan-ng-brain-alert-dialog.d.ts} +0 -0
- /package/{avatar/index.d.ts → types/spartan-ng-brain-avatar.d.ts} +0 -0
- /package/{button/index.d.ts → types/spartan-ng-brain-button.d.ts} +0 -0
- /package/{checkbox/index.d.ts → types/spartan-ng-brain-checkbox.d.ts} +0 -0
- /package/{collapsible/index.d.ts → types/spartan-ng-brain-collapsible.d.ts} +0 -0
- /package/{command/index.d.ts → types/spartan-ng-brain-command.d.ts} +0 -0
- /package/{core/index.d.ts → types/spartan-ng-brain-core.d.ts} +0 -0
- /package/{date-time-luxon/index.d.ts → types/spartan-ng-brain-date-time-luxon.d.ts} +0 -0
- /package/{date-time/index.d.ts → types/spartan-ng-brain-date-time.d.ts} +0 -0
- /package/{field/index.d.ts → types/spartan-ng-brain-field.d.ts} +0 -0
- /package/{forms/index.d.ts → types/spartan-ng-brain-forms.d.ts} +0 -0
- /package/{input-otp/index.d.ts → types/spartan-ng-brain-input-otp.d.ts} +0 -0
- /package/{input/index.d.ts → types/spartan-ng-brain-input.d.ts} +0 -0
- /package/{label/index.d.ts → types/spartan-ng-brain-label.d.ts} +0 -0
- /package/{navigation-menu/index.d.ts → types/spartan-ng-brain-navigation-menu.d.ts} +0 -0
- /package/{popover/index.d.ts → types/spartan-ng-brain-popover.d.ts} +0 -0
- /package/{progress/index.d.ts → types/spartan-ng-brain-progress.d.ts} +0 -0
- /package/{radio-group/index.d.ts → types/spartan-ng-brain-radio-group.d.ts} +0 -0
- /package/{resizable/index.d.ts → types/spartan-ng-brain-resizable.d.ts} +0 -0
- /package/{separator/index.d.ts → types/spartan-ng-brain-separator.d.ts} +0 -0
- /package/{sheet/index.d.ts → types/spartan-ng-brain-sheet.d.ts} +0 -0
- /package/{slider/index.d.ts → types/spartan-ng-brain-slider.d.ts} +0 -0
- /package/{sonner/index.d.ts → types/spartan-ng-brain-sonner.d.ts} +0 -0
- /package/{switch/index.d.ts → types/spartan-ng-brain-switch.d.ts} +0 -0
- /package/{tabs/index.d.ts → types/spartan-ng-brain-tabs.d.ts} +0 -0
- /package/{textarea/index.d.ts → types/spartan-ng-brain-textarea.d.ts} +0 -0
- /package/{toggle-group/index.d.ts → types/spartan-ng-brain-toggle-group.d.ts} +0 -0
- /package/{toggle/index.d.ts → types/spartan-ng-brain-toggle.d.ts} +0 -0
- /package/{tooltip/index.d.ts → types/spartan-ng-brain-tooltip.d.ts} +0 -0
- /package/{index.d.ts → types/spartan-ng-brain.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spartan-ng-brain-tooltip.mjs","sources":["../../../../libs/brain/tooltip/src/lib/brn-tooltip-string-template-outlet.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip-content.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip-position.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip.token.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip.ts","../../../../libs/brain/tooltip/src/index.ts","../../../../libs/brain/tooltip/src/spartan-ng-brain-tooltip.ts"],"sourcesContent":["import {\n\tDirective,\n\teffect,\n\ttype EffectRef,\n\ttype EmbeddedViewRef,\n\tinject,\n\tinput,\n\ttype OnDestroy,\n\tTemplateRef,\n\tViewContainerRef,\n} from '@angular/core';\n\nexport function isTemplateRef<C = unknown>(value: unknown): value is TemplateRef<C> {\n\treturn value instanceof TemplateRef;\n}\n\nexport interface BrnTemplateOutletContext {\n\t$implicit: unknown;\n\t[key: string]: unknown;\n}\n\n@Directive({\n\tselector: '[brnTooltipStringTemplateOutlet]',\n\texportAs: 'brnTooltipStringTemplateOutlet',\n})\nexport class BrnTooltipStringTemplateOutlet<T = unknown> implements OnDestroy {\n\tprivate readonly _viewContainer = inject(ViewContainerRef);\n\tprivate readonly _templateRef = inject(TemplateRef<void>);\n\n\tprivate _embeddedViewRef: EmbeddedViewRef<BrnTemplateOutletContext> | null = null;\n\tprivate readonly _context = {} as BrnTemplateOutletContext;\n\n\tprivate _isFirstChange = true;\n\tprivate _lastOutletWasTemplate = false;\n\tprivate _lastTemplateRef: TemplateRef<void> | null = null;\n\tprivate _lastContext?: BrnTemplateOutletContext;\n\n\tpublic readonly brnTooltipStringTemplateOutletContext = input<BrnTemplateOutletContext | undefined>(undefined);\n\tpublic readonly brnTooltipStringTemplateOutlet = input.required<T | TemplateRef<void>>();\n\n\t_hasContextShapeChanged(context: BrnTemplateOutletContext | undefined): boolean {\n\t\tif (!context) {\n\t\t\treturn false;\n\t\t}\n\t\tconst prevCtxKeys = Object.keys(this._lastContext || {});\n\t\tconst currCtxKeys = Object.keys(context || {});\n\n\t\tif (prevCtxKeys.length === currCtxKeys.length) {\n\t\t\tfor (const propName of currCtxKeys) {\n\t\t\t\tif (!prevCtxKeys.includes(propName)) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\t_shouldViewBeRecreated(\n\t\tstringTemplateOutlet: TemplateRef<void> | T,\n\t\tstringTemplateOutletContext: BrnTemplateOutletContext | undefined,\n\t): boolean {\n\t\tconst isTemplate = isTemplateRef(stringTemplateOutlet);\n\n\t\tconst shouldOutletRecreate =\n\t\t\tthis._isFirstChange ||\n\t\t\tisTemplate !== this._lastOutletWasTemplate ||\n\t\t\t(isTemplate && stringTemplateOutlet !== this._lastTemplateRef);\n\n\t\tconst shouldContextRecreate = this._hasContextShapeChanged(stringTemplateOutletContext);\n\t\treturn shouldContextRecreate || shouldOutletRecreate;\n\t}\n\n\t_updateTrackingState(\n\t\tstringTemplateOutlet: TemplateRef<void> | T,\n\t\tstringTemplateOutletContext: BrnTemplateOutletContext | undefined,\n\t): void {\n\t\tconst isTemplate = isTemplateRef(stringTemplateOutlet);\n\t\tif (this._isFirstChange && !isTemplate) {\n\t\t\tthis._isFirstChange = false;\n\t\t}\n\n\t\tif (stringTemplateOutletContext !== undefined) {\n\t\t\tthis._lastContext = stringTemplateOutletContext;\n\t\t}\n\n\t\tthis._lastOutletWasTemplate = isTemplate;\n\t\tthis._lastTemplateRef = isTemplate ? stringTemplateOutlet : null;\n\t}\n\n\tprivate readonly _viewEffect: EffectRef = effect(() => {\n\t\tconst stringTemplateOutlet = this.brnTooltipStringTemplateOutlet();\n\t\tconst stringTemplateOutletContext = this.brnTooltipStringTemplateOutletContext();\n\n\t\tif (!this._isFirstChange && isTemplateRef(stringTemplateOutlet)) {\n\t\t\tthis._isFirstChange = true;\n\t\t}\n\n\t\tif (!isTemplateRef(stringTemplateOutlet)) {\n\t\t\tthis._context['$implicit'] = stringTemplateOutlet as T;\n\t\t}\n\n\t\tconst recreateView = this._shouldViewBeRecreated(stringTemplateOutlet, stringTemplateOutletContext);\n\t\tthis._updateTrackingState(stringTemplateOutlet, stringTemplateOutletContext);\n\n\t\tif (recreateView) {\n\t\t\tthis._recreateView(stringTemplateOutlet as TemplateRef<BrnTemplateOutletContext>, stringTemplateOutletContext);\n\t\t} else {\n\t\t\tthis._updateContext(stringTemplateOutlet, stringTemplateOutletContext);\n\t\t}\n\t});\n\n\tprivate _recreateView(\n\t\toutlet: TemplateRef<BrnTemplateOutletContext>,\n\t\tcontext: BrnTemplateOutletContext | undefined,\n\t): void {\n\t\tthis._viewContainer.clear();\n\t\tif (isTemplateRef(outlet)) {\n\t\t\tthis._embeddedViewRef = this._viewContainer.createEmbeddedView(outlet, context);\n\t\t} else {\n\t\t\tthis._embeddedViewRef = this._viewContainer.createEmbeddedView(this._templateRef, this._context);\n\t\t}\n\t}\n\n\tprivate _updateContext(outlet: TemplateRef<void> | T, context: BrnTemplateOutletContext | undefined): void {\n\t\tconst newCtx = isTemplateRef(outlet) ? context : this._context;\n\t\tlet oldCtx = this._embeddedViewRef?.context;\n\n\t\tif (!oldCtx) {\n\t\t\toldCtx = newCtx;\n\t\t} else if (newCtx && typeof newCtx === 'object') {\n\t\t\tfor (const propName of Object.keys(newCtx)) {\n\t\t\t\toldCtx[propName] = newCtx[propName];\n\t\t\t}\n\t\t}\n\t\tthis._lastContext = oldCtx;\n\t}\n\n\tstatic ngTemplateContextGuard<T>(\n\t\t_dir: BrnTooltipStringTemplateOutlet<T>,\n\t\t_ctx: unknown,\n\t): _ctx is BrnTemplateOutletContext {\n\t\treturn true;\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis._viewEffect.destroy();\n\t\tthis._viewContainer.clear();\n\t\tthis._embeddedViewRef = null;\n\t}\n}\n","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { BrnTooltipPosition } from './brn-tooltip-position';\nimport { BrnTooltipStringTemplateOutlet } from './brn-tooltip-string-template-outlet';\nimport { BrnTooltipType } from './brn-tooltip-type';\n\nlet uniqueId = 0;\n\n@Component({\n\timports: [BrnTooltipStringTemplateOutlet],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\t'[class]': '_tooltipClass()',\n\t\t'[attr.id]': 'id()',\n\t\t'[attr.data-side]': '_position()',\n\t\t'[attr.data-state]': 'state()',\n\t\trole: 'tooltip',\n\t},\n\ttemplate: `\n\t\t<ng-container *brnTooltipStringTemplateOutlet=\"_tooltipText()\">{{ _tooltipText() }}</ng-container>\n\n\t\t<span [class]=\"_arrowClass()\">\n\t\t\t<svg [class]=\"_svgClass()\" width=\"10\" height=\"5\" viewBox=\"0 0 30 10\" preserveAspectRatio=\"none\">\n\t\t\t\t<polygon points=\"0,0 30,0 15,10\" />\n\t\t\t</svg>\n\t\t</span>\n\t`,\n})\nexport class BrnTooltipContent {\n\tpublic readonly id = input<string>(`brn-tooltip-${++uniqueId}`);\n\tpublic readonly state = signal<'closed' | 'opened'>('closed');\n\n\tprotected readonly _tooltipClass = signal<ClassValue>('');\n\tprotected readonly _arrowClass = signal<ClassValue>('');\n\tprotected readonly _svgClass = signal<ClassValue>('');\n\n\tprotected readonly _position = signal<BrnTooltipPosition>('top');\n\tprotected readonly _tooltipText = signal<BrnTooltipType>(null);\n\n\tpublic setProps(\n\t\ttooltipText: BrnTooltipType,\n\t\tposition: BrnTooltipPosition,\n\t\ttooltipClasses: ClassValue,\n\t\tarrowClasses: ClassValue,\n\t\tsvgClasses: ClassValue,\n\t): void {\n\t\tif (tooltipText) {\n\t\t\tthis._tooltipText.set(tooltipText);\n\t\t}\n\t\tthis._position.set(position);\n\n\t\tthis._tooltipClass.set(tooltipClasses);\n\t\tthis._arrowClass.set(arrowClasses);\n\t\tthis._svgClass.set(svgClasses);\n\t}\n}\n","import type { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport type BrnTooltipPosition = 'top' | 'bottom' | 'left' | 'right';\n\nexport const BRN_TOOLTIP_POSITIONS_MAP: Record<BrnTooltipPosition, ConnectedPosition> = {\n\ttop: {\n\t\toriginX: 'center',\n\t\toriginY: 'top',\n\t\toverlayX: 'center',\n\t\toverlayY: 'bottom',\n\t\toffsetY: -8,\n\t},\n\tbottom: {\n\t\toriginX: 'center',\n\t\toriginY: 'bottom',\n\t\toverlayX: 'center',\n\t\toverlayY: 'top',\n\t\toffsetY: 8,\n\t},\n\tleft: {\n\t\toriginX: 'start',\n\t\toriginY: 'center',\n\t\toverlayX: 'end',\n\t\toverlayY: 'center',\n\t\toffsetX: -8,\n\t},\n\tright: {\n\t\toriginX: 'end',\n\t\toriginY: 'center',\n\t\toverlayX: 'start',\n\t\toverlayY: 'center',\n\t\toffsetX: 8,\n\t},\n};\n\n/** Fallback order for each preferred position when it doesn't fit in the viewport. */\nexport const BRN_TOOLTIP_FALLBACK_POSITIONS: Record<BrnTooltipPosition, BrnTooltipPosition[]> = {\n\ttop: ['bottom', 'right', 'left'],\n\tbottom: ['top', 'right', 'left'],\n\tleft: ['right', 'top', 'bottom'],\n\tright: ['left', 'top', 'bottom'],\n};\n\n/** Map a resolved CDK ConnectedPosition back to a BrnTooltipPosition, or null if no match. */\nexport function resolveTooltipPosition(pair: ConnectedPosition): BrnTooltipPosition | null {\n\tfor (const [pos, config] of Object.entries(BRN_TOOLTIP_POSITIONS_MAP)) {\n\t\tif (\n\t\t\tpair.originX === config.originX &&\n\t\t\tpair.originY === config.originY &&\n\t\t\tpair.overlayX === config.overlayX &&\n\t\t\tpair.overlayY === config.overlayY\n\t\t) {\n\t\t\treturn pos as BrnTooltipPosition;\n\t\t}\n\t}\n\treturn null;\n}\n","import { inject, InjectionToken, type ValueProvider } from '@angular/core';\nimport { type ClassValue } from 'clsx';\nimport { type BrnTooltipPosition } from './brn-tooltip-position';\n\nexport interface BrnTooltipOptions {\n\t/** Default delay when the tooltip is shown. */\n\tshowDelay: number;\n\t/** Default delay when the tooltip is hidden. */\n\thideDelay: number;\n\t/** Default position for tooltips. */\n\tposition?: BrnTooltipPosition;\n\t/** Additional classes for the SVG element in the tooltip arrow. */\n\tsvgClasses: ClassValue;\n\t/** Additional classes for the tooltip arrow element based on position. */\n\tarrowClasses: (position: BrnTooltipPosition) => ClassValue;\n\t/** Additional classes for the tooltip content element. */\n\ttooltipContentClasses: ClassValue;\n}\n\nexport const defaultOptions: BrnTooltipOptions = {\n\tshowDelay: 150,\n\thideDelay: 100,\n\tsvgClasses: '',\n\tarrowClasses: () => '',\n\ttooltipContentClasses: '',\n};\n\nconst BRN_TOOLTIP_DEFAULT_OPTIONS = new InjectionToken<BrnTooltipOptions>('brn-tooltip-default-options', {\n\tprovidedIn: 'root',\n\tfactory: () => defaultOptions,\n});\n\nexport function provideBrnTooltipDefaultOptions(options: Partial<BrnTooltipOptions>): ValueProvider {\n\treturn { provide: BRN_TOOLTIP_DEFAULT_OPTIONS, useValue: { ...defaultOptions, ...options } };\n}\n\nexport function injectBrnTooltipDefaultOptions(): BrnTooltipOptions {\n\treturn inject(BRN_TOOLTIP_DEFAULT_OPTIONS, { optional: true }) ?? defaultOptions;\n}\n","import {\n\tConnectedPosition,\n\tFlexibleConnectedPositionStrategy,\n\tOverlay,\n\tOverlayPositionBuilder,\n\ttype OverlayRef,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\ttype ComponentRef,\n\tcomputed,\n\tDestroyRef,\n\tDirective,\n\teffect,\n\tElementRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tnumberAttribute,\n\toutput,\n\tRenderer2,\n\trunInInjectionContext,\n\ttype TemplateRef,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { of, Subject, Subscription, timer } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { BrnTooltipContent } from './brn-tooltip-content';\nimport {\n\tBRN_TOOLTIP_FALLBACK_POSITIONS,\n\tBRN_TOOLTIP_POSITIONS_MAP,\n\tBrnTooltipPosition,\n\tresolveTooltipPosition,\n} from './brn-tooltip-position';\nimport { BrnTooltipType } from './brn-tooltip-type';\nimport { injectBrnTooltipDefaultOptions } from './brn-tooltip.token';\n\ninterface DelayConfig {\n\tisShow: boolean;\n\tdelay: number;\n}\n\n@Directive({ selector: '[brnTooltip]', exportAs: 'brnTooltip' })\nexport class BrnTooltip {\n\tprivate readonly _config = injectBrnTooltipDefaultOptions();\n\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _document = inject(DOCUMENT);\n\tprivate readonly _elementRef = inject(ElementRef<HTMLElement>);\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _overlay = inject(Overlay);\n\tprivate readonly _overlayPositionBuilder = inject(OverlayPositionBuilder);\n\tprivate readonly _renderer = inject(Renderer2);\n\tprivate readonly _dir = inject(Directionality);\n\n\tprivate _tooltipHovered = false;\n\tprivate _listenersRefs: (() => void)[] = [];\n\tprivate _delaySubject: Subject<DelayConfig> | undefined = undefined;\n\tprivate _componentRef: ComponentRef<BrnTooltipContent> | undefined = undefined;\n\tprivate _overlayRef: OverlayRef | undefined = undefined;\n\tprivate _ariaEffectRef: ReturnType<typeof effect> | undefined = undefined;\n\tprivate _positionChangeSub: Subscription | undefined = undefined;\n\n\tpublic readonly tooltipDisabled = input<boolean, boolean>(false, { transform: booleanAttribute });\n\tpublic readonly mutableTooltipDisabled = linkedSignal(this.tooltipDisabled);\n\n\tpublic readonly position = input<BrnTooltipPosition>(this._config.position ?? 'top');\n\tpublic readonly brnTooltip = input<BrnTooltipType>(null);\n\tpublic readonly showDelay = input<number, number>(this._config.showDelay, { transform: numberAttribute });\n\tpublic readonly hideDelay = input<number, number>(this._config.hideDelay, { transform: numberAttribute });\n\n\tpublic readonly show = output<void>();\n\tpublic readonly hide = output<void>();\n\n\tprivate readonly _tooltipText = computed<string | TemplateRef<void>>(() => {\n\t\tlet tooltipText = this.brnTooltip();\n\t\tif (!tooltipText) {\n\t\t\treturn '';\n\t\t} else if (typeof tooltipText === 'string') {\n\t\t\ttooltipText = tooltipText.trim();\n\t\t}\n\t\treturn tooltipText;\n\t});\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis._overlayRef = this._overlay.create({\n\t\t\t\tdirection: this._dir,\n\t\t\t\tpositionStrategy: this._buildPositionStrategy(),\n\t\t\t});\n\n\t\t\tthis._dir.change.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n\t\t\t\tif (this._overlayRef) {\n\t\t\t\t\tthis._updatePosition();\n\t\t\t\t\tif (this._overlayRef.hasAttached()) {\n\t\t\t\t\t\tthis._overlayRef.updatePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\trunInInjectionContext(this._injector, () => {\n\t\t\t\tif (!this._overlayRef) return;\n\t\t\t\tthis._setupDelayMechanism();\n\t\t\t\tthis._cleanupTriggerEvents();\n\t\t\t\tthis._initTriggers();\n\t\t\t\tthis._listenersRefs = [\n\t\t\t\t\t...this._listenersRefs,\n\t\t\t\t\tthis._renderer.listen(this._overlayRef.hostElement, 'mouseenter', () => (this._tooltipHovered = true)),\n\t\t\t\t\tthis._renderer.listen(this._overlayRef.hostElement, 'mouseleave', () => {\n\t\t\t\t\t\tthis._tooltipHovered = false;\n\t\t\t\t\t\tthis.delay(false, this.hideDelay());\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t});\n\t\t});\n\n\t\tthis._destroyRef.onDestroy(() => {\n\t\t\tthis._clearAriaDescribedBy();\n\t\t\tthis._delaySubject?.complete();\n\t\t\tthis._cleanupTriggerEvents();\n\t\t\tthis._overlayRef?.dispose();\n\t\t});\n\t}\n\n\tprivate _updatePosition(): void {\n\t\tconst strategy = this._overlayRef?.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n\n\t\tif (strategy) {\n\t\t\tstrategy.withPositions(this._getAllPositions());\n\t\t}\n\t}\n\n\tprivate _buildPositionStrategy() {\n\t\treturn this._overlayPositionBuilder\n\t\t\t.flexibleConnectedTo(this._elementRef)\n\t\t\t.withPositions(this._getAllPositions())\n\t\t\t.withViewportMargin(8);\n\t}\n\n\t/** Build [preferred, ...fallbacks] position array for viewport-aware auto-flip. */\n\tprivate _getAllPositions(): ConnectedPosition[] {\n\t\tconst preferred = this.position();\n\t\treturn [preferred, ...BRN_TOOLTIP_FALLBACK_POSITIONS[preferred]].map((pos) => this._getAdjustedPositionFor(pos));\n\t}\n\n\tprivate _getAdjustedPositionFor(pos: BrnTooltipPosition): ConnectedPosition {\n\t\tconst position = BRN_TOOLTIP_POSITIONS_MAP[pos];\n\t\tconst isLtr = this._dir.value !== 'rtl';\n\n\t\treturn {\n\t\t\t...position,\n\t\t\toffsetX: position.offsetX != null ? (isLtr ? position.offsetX : -position.offsetX) : undefined,\n\t\t};\n\t}\n\n\tprivate _initTriggers() {\n\t\tthis._initScrollListener();\n\t\tthis._initHoverListeners();\n\t}\n\n\tprivate _initHoverListeners(): void {\n\t\tthis._listenersRefs = [\n\t\t\t...this._listenersRefs,\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'mouseenter', () => this.delay(true, this.showDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'mouseleave', () => this.delay(false, this.hideDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'focus', () => this.delay(true, this.showDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'blur', () => this.delay(false, this.hideDelay())),\n\t\t];\n\t}\n\n\tprivate _initScrollListener(): void {\n\t\tthis._listenersRefs = [\n\t\t\t...this._listenersRefs,\n\t\t\tthis._renderer.listen(this._document.defaultView, 'scroll', () => this._hide()),\n\t\t];\n\t}\n\n\tprivate _cleanupTriggerEvents(): void {\n\t\tfor (const eventRef of this._listenersRefs) {\n\t\t\teventRef();\n\t\t}\n\t\tthis._listenersRefs = [];\n\t}\n\n\tprivate delay(isShow: boolean, delay = -1): void {\n\t\tthis._delaySubject?.next({ isShow, delay });\n\t}\n\n\tprivate _setupDelayMechanism(): void {\n\t\tthis._delaySubject?.complete();\n\t\tthis._delaySubject = new Subject<DelayConfig>();\n\n\t\tthis._delaySubject\n\t\t\t.pipe(\n\t\t\t\tswitchMap((config) => (config.delay < 0 ? of(config) : timer(config.delay).pipe(map(() => config)))),\n\t\t\t\ttakeUntilDestroyed(this._destroyRef),\n\t\t\t)\n\t\t\t.subscribe((config) => {\n\t\t\t\tif (config.isShow) {\n\t\t\t\t\tthis._show();\n\t\t\t\t} else {\n\t\t\t\t\tthis._hide();\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tprivate _show(): void {\n\t\tif (this._componentRef || !this._tooltipText() || this.mutableTooltipDisabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tooltipPortal = new ComponentPortal(BrnTooltipContent);\n\t\tthis._componentRef = this._overlayRef?.attach(tooltipPortal);\n\t\tthis._componentRef?.onDestroy(() => {\n\t\t\tthis._componentRef = undefined;\n\t\t});\n\t\tthis._componentRef?.instance.state.set('opened');\n\t\tthis._componentRef?.instance.setProps(\n\t\t\tthis._tooltipText(),\n\t\t\tthis.position(),\n\t\t\tthis._config.tooltipContentClasses,\n\t\t\tthis._config.arrowClasses(this.position()),\n\t\t\tthis._config.svgClasses,\n\t\t);\n\n\t\t// Subscribe to position changes for the lifetime of the tooltip so that\n\t\t// arrow direction and CSS classes stay in sync when the CDK flips the\n\t\t// overlay (initial show, viewport resize, scroll, etc.).\n\t\tconst strategy = this._overlayRef?.getConfig().positionStrategy as FlexibleConnectedPositionStrategy | undefined;\n\t\tif (strategy && this._componentRef) {\n\t\t\tconst compRef = this._componentRef;\n\t\t\tthis._positionChangeSub = strategy.positionChanges\n\t\t\t\t.pipe(takeUntilDestroyed(this._destroyRef))\n\t\t\t\t.subscribe((change) => {\n\t\t\t\t\tconst resolved = resolveTooltipPosition(change.connectionPair);\n\t\t\t\t\tif (resolved) {\n\t\t\t\t\t\tcompRef.instance.setProps(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\tresolved,\n\t\t\t\t\t\t\tthis._config.tooltipContentClasses,\n\t\t\t\t\t\t\tthis._config.arrowClasses(resolved),\n\t\t\t\t\t\t\tthis._config.svgClasses,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t\trunInInjectionContext(this._injector, () => {\n\t\t\tthis._ariaEffectRef = effect(() => {\n\t\t\t\tconst tooltipId = this._componentRef?.instance.id();\n\t\t\t\tif (tooltipId) {\n\t\t\t\t\tthis._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', tooltipId);\n\t\t\t\t\tthis._ariaEffectRef?.destroy();\n\t\t\t\t\tthis._ariaEffectRef = undefined;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\tthis.show.emit();\n\t}\n\n\tprivate _hide(): void {\n\t\tif (!this._componentRef || this._tooltipHovered) return;\n\t\tthis._clearAriaDescribedBy();\n\t\tthis._positionChangeSub?.unsubscribe();\n\t\tthis._positionChangeSub = undefined;\n\n\t\tthis._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n\t\tthis._componentRef.instance.state.set('closed');\n\t\tthis.hide.emit();\n\t\tthis._overlayRef?.detach();\n\t}\n\n\tprivate _clearAriaDescribedBy(): void {\n\t\tif (this._ariaEffectRef) {\n\t\t\tthis._ariaEffectRef.destroy();\n\t\t\tthis._ariaEffectRef = undefined;\n\t\t}\n\t}\n}\n","import { BrnTooltip } from './lib/brn-tooltip';\nimport { BrnTooltipContent } from './lib/brn-tooltip-content';\n\nexport * from './lib/brn-tooltip';\nexport * from './lib/brn-tooltip-content';\nexport { BRN_TOOLTIP_FALLBACK_POSITIONS, BrnTooltipPosition, resolveTooltipPosition } from './lib/brn-tooltip-position';\nexport * from './lib/brn-tooltip-type';\nexport * from './lib/brn-tooltip.token';\n\nexport const BrnTooltipImports = [BrnTooltip, BrnTooltipContent] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spartan-ng-brain-tooltip.mjs","sources":["../../../../libs/brain/tooltip/src/lib/brn-tooltip-string-template-outlet.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip-content.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip-position.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip.token.ts","../../../../libs/brain/tooltip/src/lib/brn-tooltip.ts","../../../../libs/brain/tooltip/src/index.ts","../../../../libs/brain/tooltip/src/spartan-ng-brain-tooltip.ts"],"sourcesContent":["import {\n\tDirective,\n\teffect,\n\ttype EffectRef,\n\ttype EmbeddedViewRef,\n\tinject,\n\tinput,\n\ttype OnDestroy,\n\tTemplateRef,\n\tViewContainerRef,\n} from '@angular/core';\n\nexport function isTemplateRef<C = unknown>(value: unknown): value is TemplateRef<C> {\n\treturn value instanceof TemplateRef;\n}\n\nexport interface BrnTemplateOutletContext {\n\t$implicit: unknown;\n\t[key: string]: unknown;\n}\n\n@Directive({\n\tselector: '[brnTooltipStringTemplateOutlet]',\n\texportAs: 'brnTooltipStringTemplateOutlet',\n})\nexport class BrnTooltipStringTemplateOutlet<T = unknown> implements OnDestroy {\n\tprivate readonly _viewContainer = inject(ViewContainerRef);\n\tprivate readonly _templateRef = inject(TemplateRef<void>);\n\n\tprivate _embeddedViewRef: EmbeddedViewRef<BrnTemplateOutletContext> | null = null;\n\tprivate readonly _context = {} as BrnTemplateOutletContext;\n\n\tprivate _isFirstChange = true;\n\tprivate _lastOutletWasTemplate = false;\n\tprivate _lastTemplateRef: TemplateRef<void> | null = null;\n\tprivate _lastContext?: BrnTemplateOutletContext;\n\n\tpublic readonly brnTooltipStringTemplateOutletContext = input<BrnTemplateOutletContext | undefined>(undefined);\n\tpublic readonly brnTooltipStringTemplateOutlet = input.required<T | TemplateRef<void>>();\n\n\t_hasContextShapeChanged(context: BrnTemplateOutletContext | undefined): boolean {\n\t\tif (!context) {\n\t\t\treturn false;\n\t\t}\n\t\tconst prevCtxKeys = Object.keys(this._lastContext || {});\n\t\tconst currCtxKeys = Object.keys(context || {});\n\n\t\tif (prevCtxKeys.length === currCtxKeys.length) {\n\t\t\tfor (const propName of currCtxKeys) {\n\t\t\t\tif (!prevCtxKeys.includes(propName)) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\t_shouldViewBeRecreated(\n\t\tstringTemplateOutlet: TemplateRef<void> | T,\n\t\tstringTemplateOutletContext: BrnTemplateOutletContext | undefined,\n\t): boolean {\n\t\tconst isTemplate = isTemplateRef(stringTemplateOutlet);\n\n\t\tconst shouldOutletRecreate =\n\t\t\tthis._isFirstChange ||\n\t\t\tisTemplate !== this._lastOutletWasTemplate ||\n\t\t\t(isTemplate && stringTemplateOutlet !== this._lastTemplateRef);\n\n\t\tconst shouldContextRecreate = this._hasContextShapeChanged(stringTemplateOutletContext);\n\t\treturn shouldContextRecreate || shouldOutletRecreate;\n\t}\n\n\t_updateTrackingState(\n\t\tstringTemplateOutlet: TemplateRef<void> | T,\n\t\tstringTemplateOutletContext: BrnTemplateOutletContext | undefined,\n\t): void {\n\t\tconst isTemplate = isTemplateRef(stringTemplateOutlet);\n\t\tif (this._isFirstChange && !isTemplate) {\n\t\t\tthis._isFirstChange = false;\n\t\t}\n\n\t\tif (stringTemplateOutletContext !== undefined) {\n\t\t\tthis._lastContext = stringTemplateOutletContext;\n\t\t}\n\n\t\tthis._lastOutletWasTemplate = isTemplate;\n\t\tthis._lastTemplateRef = isTemplate ? stringTemplateOutlet : null;\n\t}\n\n\tprivate readonly _viewEffect: EffectRef = effect(() => {\n\t\tconst stringTemplateOutlet = this.brnTooltipStringTemplateOutlet();\n\t\tconst stringTemplateOutletContext = this.brnTooltipStringTemplateOutletContext();\n\n\t\tif (!this._isFirstChange && isTemplateRef(stringTemplateOutlet)) {\n\t\t\tthis._isFirstChange = true;\n\t\t}\n\n\t\tif (!isTemplateRef(stringTemplateOutlet)) {\n\t\t\tthis._context['$implicit'] = stringTemplateOutlet as T;\n\t\t}\n\n\t\tconst recreateView = this._shouldViewBeRecreated(stringTemplateOutlet, stringTemplateOutletContext);\n\t\tthis._updateTrackingState(stringTemplateOutlet, stringTemplateOutletContext);\n\n\t\tif (recreateView) {\n\t\t\tthis._recreateView(stringTemplateOutlet as TemplateRef<BrnTemplateOutletContext>, stringTemplateOutletContext);\n\t\t} else {\n\t\t\tthis._updateContext(stringTemplateOutlet, stringTemplateOutletContext);\n\t\t}\n\t});\n\n\tprivate _recreateView(\n\t\toutlet: TemplateRef<BrnTemplateOutletContext>,\n\t\tcontext: BrnTemplateOutletContext | undefined,\n\t): void {\n\t\tthis._viewContainer.clear();\n\t\tif (isTemplateRef(outlet)) {\n\t\t\tthis._embeddedViewRef = this._viewContainer.createEmbeddedView(outlet, context);\n\t\t} else {\n\t\t\tthis._embeddedViewRef = this._viewContainer.createEmbeddedView(this._templateRef, this._context);\n\t\t}\n\t}\n\n\tprivate _updateContext(outlet: TemplateRef<void> | T, context: BrnTemplateOutletContext | undefined): void {\n\t\tconst newCtx = isTemplateRef(outlet) ? context : this._context;\n\t\tlet oldCtx = this._embeddedViewRef?.context;\n\n\t\tif (!oldCtx) {\n\t\t\toldCtx = newCtx;\n\t\t} else if (newCtx && typeof newCtx === 'object') {\n\t\t\tfor (const propName of Object.keys(newCtx)) {\n\t\t\t\toldCtx[propName] = newCtx[propName];\n\t\t\t}\n\t\t}\n\t\tthis._lastContext = oldCtx;\n\t}\n\n\tstatic ngTemplateContextGuard<T>(\n\t\t_dir: BrnTooltipStringTemplateOutlet<T>,\n\t\t_ctx: unknown,\n\t): _ctx is BrnTemplateOutletContext {\n\t\treturn true;\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis._viewEffect.destroy();\n\t\tthis._viewContainer.clear();\n\t\tthis._embeddedViewRef = null;\n\t}\n}\n","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { BrnTooltipPosition } from './brn-tooltip-position';\nimport { BrnTooltipStringTemplateOutlet } from './brn-tooltip-string-template-outlet';\nimport { BrnTooltipType } from './brn-tooltip-type';\n\nlet uniqueId = 0;\n\n@Component({\n\timports: [BrnTooltipStringTemplateOutlet],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\t'[class]': '_tooltipClass()',\n\t\t'[attr.id]': 'id()',\n\t\t'[attr.data-side]': '_position()',\n\t\t'[attr.data-state]': 'state()',\n\t\trole: 'tooltip',\n\t},\n\ttemplate: `\n\t\t<ng-container *brnTooltipStringTemplateOutlet=\"_tooltipText()\">{{ _tooltipText() }}</ng-container>\n\n\t\t<span [class]=\"_arrowClass()\">\n\t\t\t<svg [class]=\"_svgClass()\" width=\"10\" height=\"5\" viewBox=\"0 0 30 10\" preserveAspectRatio=\"none\">\n\t\t\t\t<polygon points=\"0,0 30,0 15,10\" />\n\t\t\t</svg>\n\t\t</span>\n\t`,\n})\nexport class BrnTooltipContent {\n\tpublic readonly id = input<string>(`brn-tooltip-${++uniqueId}`);\n\tpublic readonly state = signal<'closed' | 'opened'>('closed');\n\n\tprotected readonly _tooltipClass = signal<ClassValue>('');\n\tprotected readonly _arrowClass = signal<ClassValue>('');\n\tprotected readonly _svgClass = signal<ClassValue>('');\n\n\tprotected readonly _position = signal<BrnTooltipPosition>('top');\n\tprotected readonly _tooltipText = signal<BrnTooltipType>(null);\n\n\tpublic setProps(\n\t\ttooltipText: BrnTooltipType,\n\t\tposition: BrnTooltipPosition,\n\t\ttooltipClasses: ClassValue,\n\t\tarrowClasses: ClassValue,\n\t\tsvgClasses: ClassValue,\n\t): void {\n\t\tif (tooltipText) {\n\t\t\tthis._tooltipText.set(tooltipText);\n\t\t}\n\t\tthis._position.set(position);\n\n\t\tthis._tooltipClass.set(tooltipClasses);\n\t\tthis._arrowClass.set(arrowClasses);\n\t\tthis._svgClass.set(svgClasses);\n\t}\n}\n","import type { ConnectedPosition } from '@angular/cdk/overlay';\n\nexport type BrnTooltipPosition = 'top' | 'bottom' | 'left' | 'right';\n\nexport const BRN_TOOLTIP_POSITIONS_MAP: Record<BrnTooltipPosition, ConnectedPosition> = {\n\ttop: {\n\t\toriginX: 'center',\n\t\toriginY: 'top',\n\t\toverlayX: 'center',\n\t\toverlayY: 'bottom',\n\t\toffsetY: -8,\n\t},\n\tbottom: {\n\t\toriginX: 'center',\n\t\toriginY: 'bottom',\n\t\toverlayX: 'center',\n\t\toverlayY: 'top',\n\t\toffsetY: 8,\n\t},\n\tleft: {\n\t\toriginX: 'start',\n\t\toriginY: 'center',\n\t\toverlayX: 'end',\n\t\toverlayY: 'center',\n\t\toffsetX: -8,\n\t},\n\tright: {\n\t\toriginX: 'end',\n\t\toriginY: 'center',\n\t\toverlayX: 'start',\n\t\toverlayY: 'center',\n\t\toffsetX: 8,\n\t},\n};\n\n/** Fallback order for each preferred position when it doesn't fit in the viewport. */\nexport const BRN_TOOLTIP_FALLBACK_POSITIONS: Record<BrnTooltipPosition, BrnTooltipPosition[]> = {\n\ttop: ['bottom', 'right', 'left'],\n\tbottom: ['top', 'right', 'left'],\n\tleft: ['right', 'top', 'bottom'],\n\tright: ['left', 'top', 'bottom'],\n};\n\n/** Map a resolved CDK ConnectedPosition back to a BrnTooltipPosition, or null if no match. */\nexport function resolveTooltipPosition(pair: ConnectedPosition): BrnTooltipPosition | null {\n\tfor (const [pos, config] of Object.entries(BRN_TOOLTIP_POSITIONS_MAP)) {\n\t\tif (\n\t\t\tpair.originX === config.originX &&\n\t\t\tpair.originY === config.originY &&\n\t\t\tpair.overlayX === config.overlayX &&\n\t\t\tpair.overlayY === config.overlayY\n\t\t) {\n\t\t\treturn pos as BrnTooltipPosition;\n\t\t}\n\t}\n\treturn null;\n}\n","import { inject, InjectionToken, type ValueProvider } from '@angular/core';\nimport { type ClassValue } from 'clsx';\nimport { type BrnTooltipPosition } from './brn-tooltip-position';\n\nexport interface BrnTooltipOptions {\n\t/** Default delay when the tooltip is shown. */\n\tshowDelay: number;\n\t/** Default delay when the tooltip is hidden. */\n\thideDelay: number;\n\t/** Default position for tooltips. */\n\tposition?: BrnTooltipPosition;\n\t/** Additional classes for the SVG element in the tooltip arrow. */\n\tsvgClasses: ClassValue;\n\t/** Additional classes for the tooltip arrow element based on position. */\n\tarrowClasses: (position: BrnTooltipPosition) => ClassValue;\n\t/** Additional classes for the tooltip content element. */\n\ttooltipContentClasses: ClassValue;\n}\n\nexport const defaultOptions: BrnTooltipOptions = {\n\tshowDelay: 150,\n\thideDelay: 100,\n\tsvgClasses: '',\n\tarrowClasses: () => '',\n\ttooltipContentClasses: '',\n};\n\nconst BRN_TOOLTIP_DEFAULT_OPTIONS = new InjectionToken<BrnTooltipOptions>('brn-tooltip-default-options', {\n\tprovidedIn: 'root',\n\tfactory: () => defaultOptions,\n});\n\nexport function provideBrnTooltipDefaultOptions(options: Partial<BrnTooltipOptions>): ValueProvider {\n\treturn { provide: BRN_TOOLTIP_DEFAULT_OPTIONS, useValue: { ...defaultOptions, ...options } };\n}\n\nexport function injectBrnTooltipDefaultOptions(): BrnTooltipOptions {\n\treturn inject(BRN_TOOLTIP_DEFAULT_OPTIONS, { optional: true }) ?? defaultOptions;\n}\n","import {\n\tConnectedPosition,\n\tFlexibleConnectedPositionStrategy,\n\tOverlay,\n\tOverlayPositionBuilder,\n\ttype OverlayRef,\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\ttype ComponentRef,\n\tcomputed,\n\tDestroyRef,\n\tDirective,\n\teffect,\n\tElementRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tnumberAttribute,\n\toutput,\n\tRenderer2,\n\trunInInjectionContext,\n\ttype TemplateRef,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { of, Subject, Subscription, timer } from 'rxjs';\nimport { map, switchMap } from 'rxjs/operators';\nimport { BrnTooltipContent } from './brn-tooltip-content';\nimport {\n\tBRN_TOOLTIP_FALLBACK_POSITIONS,\n\tBRN_TOOLTIP_POSITIONS_MAP,\n\tBrnTooltipPosition,\n\tresolveTooltipPosition,\n} from './brn-tooltip-position';\nimport { BrnTooltipType } from './brn-tooltip-type';\nimport { injectBrnTooltipDefaultOptions } from './brn-tooltip.token';\n\ninterface DelayConfig {\n\tisShow: boolean;\n\tdelay: number;\n}\n\n@Directive({ selector: '[brnTooltip]', exportAs: 'brnTooltip' })\nexport class BrnTooltip {\n\tprivate readonly _config = injectBrnTooltipDefaultOptions();\n\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _document = inject(DOCUMENT);\n\tprivate readonly _elementRef = inject(ElementRef<HTMLElement>);\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _overlay = inject(Overlay);\n\tprivate readonly _overlayPositionBuilder = inject(OverlayPositionBuilder);\n\tprivate readonly _renderer = inject(Renderer2);\n\tprivate readonly _dir = inject(Directionality);\n\n\tprivate _tooltipHovered = false;\n\tprivate _listenersRefs: (() => void)[] = [];\n\tprivate _delaySubject: Subject<DelayConfig> | undefined = undefined;\n\tprivate _componentRef: ComponentRef<BrnTooltipContent> | undefined = undefined;\n\tprivate _overlayRef: OverlayRef | undefined = undefined;\n\tprivate _ariaEffectRef: ReturnType<typeof effect> | undefined = undefined;\n\tprivate _positionChangeSub: Subscription | undefined = undefined;\n\n\tpublic readonly tooltipDisabled = input<boolean, boolean>(false, { transform: booleanAttribute });\n\tpublic readonly mutableTooltipDisabled = linkedSignal(this.tooltipDisabled);\n\n\tpublic readonly position = input<BrnTooltipPosition>(this._config.position ?? 'top');\n\tpublic readonly brnTooltip = input<BrnTooltipType>(null);\n\tpublic readonly showDelay = input<number, number>(this._config.showDelay, { transform: numberAttribute });\n\tpublic readonly hideDelay = input<number, number>(this._config.hideDelay, { transform: numberAttribute });\n\n\tpublic readonly show = output<void>();\n\tpublic readonly hide = output<void>();\n\n\tprivate readonly _tooltipText = computed<string | TemplateRef<void>>(() => {\n\t\tlet tooltipText = this.brnTooltip();\n\t\tif (!tooltipText) {\n\t\t\treturn '';\n\t\t} else if (typeof tooltipText === 'string') {\n\t\t\ttooltipText = tooltipText.trim();\n\t\t}\n\t\treturn tooltipText;\n\t});\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis._overlayRef = this._overlay.create({\n\t\t\t\tdirection: this._dir,\n\t\t\t\tpositionStrategy: this._buildPositionStrategy(),\n\t\t\t});\n\n\t\t\tthis._dir.change.pipe(takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n\t\t\t\tif (this._overlayRef) {\n\t\t\t\t\tthis._updatePosition();\n\t\t\t\t\tif (this._overlayRef.hasAttached()) {\n\t\t\t\t\t\tthis._overlayRef.updatePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\trunInInjectionContext(this._injector, () => {\n\t\t\t\tif (!this._overlayRef) return;\n\t\t\t\tthis._setupDelayMechanism();\n\t\t\t\tthis._cleanupTriggerEvents();\n\t\t\t\tthis._initTriggers();\n\t\t\t\tthis._listenersRefs = [\n\t\t\t\t\t...this._listenersRefs,\n\t\t\t\t\tthis._renderer.listen(this._overlayRef.hostElement, 'mouseenter', () => (this._tooltipHovered = true)),\n\t\t\t\t\tthis._renderer.listen(this._overlayRef.hostElement, 'mouseleave', () => {\n\t\t\t\t\t\tthis._tooltipHovered = false;\n\t\t\t\t\t\tthis.delay(false, this.hideDelay());\n\t\t\t\t\t}),\n\t\t\t\t];\n\t\t\t});\n\t\t});\n\n\t\tthis._destroyRef.onDestroy(() => {\n\t\t\tthis._clearAriaDescribedBy();\n\t\t\tthis._delaySubject?.complete();\n\t\t\tthis._cleanupTriggerEvents();\n\t\t\tthis._overlayRef?.dispose();\n\t\t});\n\t}\n\n\tprivate _updatePosition(): void {\n\t\tconst strategy = this._overlayRef?.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n\n\t\tif (strategy) {\n\t\t\tstrategy.withPositions(this._getAllPositions());\n\t\t}\n\t}\n\n\tprivate _buildPositionStrategy() {\n\t\treturn this._overlayPositionBuilder\n\t\t\t.flexibleConnectedTo(this._elementRef)\n\t\t\t.withPositions(this._getAllPositions())\n\t\t\t.withViewportMargin(8);\n\t}\n\n\t/** Build [preferred, ...fallbacks] position array for viewport-aware auto-flip. */\n\tprivate _getAllPositions(): ConnectedPosition[] {\n\t\tconst preferred = this.position();\n\t\treturn [preferred, ...BRN_TOOLTIP_FALLBACK_POSITIONS[preferred]].map((pos) => this._getAdjustedPositionFor(pos));\n\t}\n\n\tprivate _getAdjustedPositionFor(pos: BrnTooltipPosition): ConnectedPosition {\n\t\tconst position = BRN_TOOLTIP_POSITIONS_MAP[pos];\n\t\tconst isLtr = this._dir.value !== 'rtl';\n\n\t\treturn {\n\t\t\t...position,\n\t\t\toffsetX: position.offsetX != null ? (isLtr ? position.offsetX : -position.offsetX) : undefined,\n\t\t};\n\t}\n\n\tprivate _initTriggers() {\n\t\tthis._initScrollListener();\n\t\tthis._initHoverListeners();\n\t}\n\n\tprivate _initHoverListeners(): void {\n\t\tthis._listenersRefs = [\n\t\t\t...this._listenersRefs,\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'mouseenter', () => this.delay(true, this.showDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'mouseleave', () => this.delay(false, this.hideDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'focus', () => this.delay(true, this.showDelay())),\n\t\t\tthis._renderer.listen(this._elementRef.nativeElement, 'blur', () => this.delay(false, this.hideDelay())),\n\t\t];\n\t}\n\n\tprivate _initScrollListener(): void {\n\t\tthis._listenersRefs = [\n\t\t\t...this._listenersRefs,\n\t\t\tthis._renderer.listen(this._document.defaultView, 'scroll', () => this._hide()),\n\t\t];\n\t}\n\n\tprivate _cleanupTriggerEvents(): void {\n\t\tfor (const eventRef of this._listenersRefs) {\n\t\t\teventRef();\n\t\t}\n\t\tthis._listenersRefs = [];\n\t}\n\n\tprivate delay(isShow: boolean, delay = -1): void {\n\t\tthis._delaySubject?.next({ isShow, delay });\n\t}\n\n\tprivate _setupDelayMechanism(): void {\n\t\tthis._delaySubject?.complete();\n\t\tthis._delaySubject = new Subject<DelayConfig>();\n\n\t\tthis._delaySubject\n\t\t\t.pipe(\n\t\t\t\tswitchMap((config) => (config.delay < 0 ? of(config) : timer(config.delay).pipe(map(() => config)))),\n\t\t\t\ttakeUntilDestroyed(this._destroyRef),\n\t\t\t)\n\t\t\t.subscribe((config) => {\n\t\t\t\tif (config.isShow) {\n\t\t\t\t\tthis._show();\n\t\t\t\t} else {\n\t\t\t\t\tthis._hide();\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tprivate _show(): void {\n\t\tif (this._componentRef || !this._tooltipText() || this.mutableTooltipDisabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst tooltipPortal = new ComponentPortal(BrnTooltipContent);\n\t\tthis._componentRef = this._overlayRef?.attach(tooltipPortal);\n\t\tthis._componentRef?.onDestroy(() => {\n\t\t\tthis._componentRef = undefined;\n\t\t});\n\t\tthis._componentRef?.instance.state.set('opened');\n\t\tthis._componentRef?.instance.setProps(\n\t\t\tthis._tooltipText(),\n\t\t\tthis.position(),\n\t\t\tthis._config.tooltipContentClasses,\n\t\t\tthis._config.arrowClasses(this.position()),\n\t\t\tthis._config.svgClasses,\n\t\t);\n\n\t\t// Subscribe to position changes for the lifetime of the tooltip so that\n\t\t// arrow direction and CSS classes stay in sync when the CDK flips the\n\t\t// overlay (initial show, viewport resize, scroll, etc.).\n\t\tconst strategy = this._overlayRef?.getConfig().positionStrategy as FlexibleConnectedPositionStrategy | undefined;\n\t\tif (strategy && this._componentRef) {\n\t\t\tconst compRef = this._componentRef;\n\t\t\tthis._positionChangeSub = strategy.positionChanges\n\t\t\t\t.pipe(takeUntilDestroyed(this._destroyRef))\n\t\t\t\t.subscribe((change) => {\n\t\t\t\t\tconst resolved = resolveTooltipPosition(change.connectionPair);\n\t\t\t\t\tif (resolved) {\n\t\t\t\t\t\tcompRef.instance.setProps(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\tresolved,\n\t\t\t\t\t\t\tthis._config.tooltipContentClasses,\n\t\t\t\t\t\t\tthis._config.arrowClasses(resolved),\n\t\t\t\t\t\t\tthis._config.svgClasses,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t\trunInInjectionContext(this._injector, () => {\n\t\t\tthis._ariaEffectRef = effect(() => {\n\t\t\t\tconst tooltipId = this._componentRef?.instance.id();\n\t\t\t\tif (tooltipId) {\n\t\t\t\t\tthis._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', tooltipId);\n\t\t\t\t\tthis._ariaEffectRef?.destroy();\n\t\t\t\t\tthis._ariaEffectRef = undefined;\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\tthis.show.emit();\n\t}\n\n\tprivate _hide(): void {\n\t\tif (!this._componentRef || this._tooltipHovered) return;\n\t\tthis._clearAriaDescribedBy();\n\t\tthis._positionChangeSub?.unsubscribe();\n\t\tthis._positionChangeSub = undefined;\n\n\t\tthis._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n\t\tthis._componentRef.instance.state.set('closed');\n\t\tthis.hide.emit();\n\t\tthis._overlayRef?.detach();\n\t}\n\n\tprivate _clearAriaDescribedBy(): void {\n\t\tif (this._ariaEffectRef) {\n\t\t\tthis._ariaEffectRef.destroy();\n\t\t\tthis._ariaEffectRef = undefined;\n\t\t}\n\t}\n}\n","import { BrnTooltip } from './lib/brn-tooltip';\nimport { BrnTooltipContent } from './lib/brn-tooltip-content';\n\nexport * from './lib/brn-tooltip';\nexport * from './lib/brn-tooltip-content';\nexport { BRN_TOOLTIP_FALLBACK_POSITIONS, BrnTooltipPosition, resolveTooltipPosition } from './lib/brn-tooltip-position';\nexport * from './lib/brn-tooltip-type';\nexport * from './lib/brn-tooltip.token';\n\nexport const BrnTooltipImports = [BrnTooltip, BrnTooltipContent] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/hlm-tailwind-preset.css
CHANGED
|
@@ -92,13 +92,13 @@
|
|
|
92
92
|
--color-popover: var(--popover);
|
|
93
93
|
--color-card-foreground: var(--card-foreground);
|
|
94
94
|
--color-card: var(--card);
|
|
95
|
-
--radius-sm: calc(var(--radius)
|
|
96
|
-
--radius-md: calc(var(--radius)
|
|
95
|
+
--radius-sm: calc(var(--radius) * 0.6);
|
|
96
|
+
--radius-md: calc(var(--radius) * 0.8);
|
|
97
97
|
--radius-lg: var(--radius);
|
|
98
|
-
--radius-xl: calc(var(--radius)
|
|
99
|
-
--radius-2xl: calc(var(--radius)
|
|
100
|
-
--radius-3xl: calc(var(--radius)
|
|
101
|
-
--radius-4xl: calc(var(--radius)
|
|
98
|
+
--radius-xl: calc(var(--radius) * 1.4);
|
|
99
|
+
--radius-2xl: calc(var(--radius) * 1.8);
|
|
100
|
+
--radius-3xl: calc(var(--radius) * 2.2);
|
|
101
|
+
--radius-4xl: calc(var(--radius) * 2.6);
|
|
102
102
|
--animate-indeterminate: indeterminate 4s ease-in-out infinite;
|
|
103
103
|
|
|
104
104
|
@keyframes indeterminate {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spartan-ng/brain",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.708",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/spartan-ng/spartan"
|
|
@@ -15,159 +15,159 @@
|
|
|
15
15
|
"default": "./package.json"
|
|
16
16
|
},
|
|
17
17
|
".": {
|
|
18
|
-
"types": "./
|
|
18
|
+
"types": "./types/spartan-ng-brain.d.ts",
|
|
19
19
|
"default": "./fesm2022/spartan-ng-brain.mjs"
|
|
20
20
|
},
|
|
21
21
|
"./accordion": {
|
|
22
|
-
"types": "./accordion
|
|
22
|
+
"types": "./types/spartan-ng-brain-accordion.d.ts",
|
|
23
23
|
"default": "./fesm2022/spartan-ng-brain-accordion.mjs"
|
|
24
24
|
},
|
|
25
25
|
"./alert-dialog": {
|
|
26
|
-
"types": "./alert-dialog
|
|
26
|
+
"types": "./types/spartan-ng-brain-alert-dialog.d.ts",
|
|
27
27
|
"default": "./fesm2022/spartan-ng-brain-alert-dialog.mjs"
|
|
28
28
|
},
|
|
29
29
|
"./autocomplete": {
|
|
30
|
-
"types": "./autocomplete
|
|
30
|
+
"types": "./types/spartan-ng-brain-autocomplete.d.ts",
|
|
31
31
|
"default": "./fesm2022/spartan-ng-brain-autocomplete.mjs"
|
|
32
32
|
},
|
|
33
33
|
"./avatar": {
|
|
34
|
-
"types": "./avatar
|
|
34
|
+
"types": "./types/spartan-ng-brain-avatar.d.ts",
|
|
35
35
|
"default": "./fesm2022/spartan-ng-brain-avatar.mjs"
|
|
36
36
|
},
|
|
37
37
|
"./button": {
|
|
38
|
-
"types": "./button
|
|
38
|
+
"types": "./types/spartan-ng-brain-button.d.ts",
|
|
39
39
|
"default": "./fesm2022/spartan-ng-brain-button.mjs"
|
|
40
40
|
},
|
|
41
41
|
"./calendar": {
|
|
42
|
-
"types": "./calendar
|
|
42
|
+
"types": "./types/spartan-ng-brain-calendar.d.ts",
|
|
43
43
|
"default": "./fesm2022/spartan-ng-brain-calendar.mjs"
|
|
44
44
|
},
|
|
45
45
|
"./checkbox": {
|
|
46
|
-
"types": "./checkbox
|
|
46
|
+
"types": "./types/spartan-ng-brain-checkbox.d.ts",
|
|
47
47
|
"default": "./fesm2022/spartan-ng-brain-checkbox.mjs"
|
|
48
48
|
},
|
|
49
49
|
"./collapsible": {
|
|
50
|
-
"types": "./collapsible
|
|
50
|
+
"types": "./types/spartan-ng-brain-collapsible.d.ts",
|
|
51
51
|
"default": "./fesm2022/spartan-ng-brain-collapsible.mjs"
|
|
52
52
|
},
|
|
53
53
|
"./combobox": {
|
|
54
|
-
"types": "./combobox
|
|
54
|
+
"types": "./types/spartan-ng-brain-combobox.d.ts",
|
|
55
55
|
"default": "./fesm2022/spartan-ng-brain-combobox.mjs"
|
|
56
56
|
},
|
|
57
57
|
"./command": {
|
|
58
|
-
"types": "./command
|
|
58
|
+
"types": "./types/spartan-ng-brain-command.d.ts",
|
|
59
59
|
"default": "./fesm2022/spartan-ng-brain-command.mjs"
|
|
60
60
|
},
|
|
61
61
|
"./core": {
|
|
62
|
-
"types": "./core
|
|
62
|
+
"types": "./types/spartan-ng-brain-core.d.ts",
|
|
63
63
|
"default": "./fesm2022/spartan-ng-brain-core.mjs"
|
|
64
64
|
},
|
|
65
65
|
"./date-time": {
|
|
66
|
-
"types": "./date-time
|
|
66
|
+
"types": "./types/spartan-ng-brain-date-time.d.ts",
|
|
67
67
|
"default": "./fesm2022/spartan-ng-brain-date-time.mjs"
|
|
68
68
|
},
|
|
69
69
|
"./date-time-luxon": {
|
|
70
|
-
"types": "./date-time-luxon
|
|
70
|
+
"types": "./types/spartan-ng-brain-date-time-luxon.d.ts",
|
|
71
71
|
"default": "./fesm2022/spartan-ng-brain-date-time-luxon.mjs"
|
|
72
72
|
},
|
|
73
73
|
"./dialog": {
|
|
74
|
-
"types": "./dialog
|
|
74
|
+
"types": "./types/spartan-ng-brain-dialog.d.ts",
|
|
75
75
|
"default": "./fesm2022/spartan-ng-brain-dialog.mjs"
|
|
76
76
|
},
|
|
77
77
|
"./field": {
|
|
78
|
-
"types": "./field
|
|
78
|
+
"types": "./types/spartan-ng-brain-field.d.ts",
|
|
79
79
|
"default": "./fesm2022/spartan-ng-brain-field.mjs"
|
|
80
80
|
},
|
|
81
81
|
"./forms": {
|
|
82
|
-
"types": "./forms
|
|
82
|
+
"types": "./types/spartan-ng-brain-forms.d.ts",
|
|
83
83
|
"default": "./fesm2022/spartan-ng-brain-forms.mjs"
|
|
84
84
|
},
|
|
85
85
|
"./hover-card": {
|
|
86
|
-
"types": "./hover-card
|
|
86
|
+
"types": "./types/spartan-ng-brain-hover-card.d.ts",
|
|
87
87
|
"default": "./fesm2022/spartan-ng-brain-hover-card.mjs"
|
|
88
88
|
},
|
|
89
89
|
"./input": {
|
|
90
|
-
"types": "./input
|
|
90
|
+
"types": "./types/spartan-ng-brain-input.d.ts",
|
|
91
91
|
"default": "./fesm2022/spartan-ng-brain-input.mjs"
|
|
92
92
|
},
|
|
93
93
|
"./input-otp": {
|
|
94
|
-
"types": "./input-otp
|
|
94
|
+
"types": "./types/spartan-ng-brain-input-otp.d.ts",
|
|
95
95
|
"default": "./fesm2022/spartan-ng-brain-input-otp.mjs"
|
|
96
96
|
},
|
|
97
97
|
"./label": {
|
|
98
|
-
"types": "./label
|
|
98
|
+
"types": "./types/spartan-ng-brain-label.d.ts",
|
|
99
99
|
"default": "./fesm2022/spartan-ng-brain-label.mjs"
|
|
100
100
|
},
|
|
101
101
|
"./navigation-menu": {
|
|
102
|
-
"types": "./navigation-menu
|
|
102
|
+
"types": "./types/spartan-ng-brain-navigation-menu.d.ts",
|
|
103
103
|
"default": "./fesm2022/spartan-ng-brain-navigation-menu.mjs"
|
|
104
104
|
},
|
|
105
105
|
"./popover": {
|
|
106
|
-
"types": "./popover
|
|
106
|
+
"types": "./types/spartan-ng-brain-popover.d.ts",
|
|
107
107
|
"default": "./fesm2022/spartan-ng-brain-popover.mjs"
|
|
108
108
|
},
|
|
109
109
|
"./progress": {
|
|
110
|
-
"types": "./progress
|
|
110
|
+
"types": "./types/spartan-ng-brain-progress.d.ts",
|
|
111
111
|
"default": "./fesm2022/spartan-ng-brain-progress.mjs"
|
|
112
112
|
},
|
|
113
113
|
"./radio-group": {
|
|
114
|
-
"types": "./radio-group
|
|
114
|
+
"types": "./types/spartan-ng-brain-radio-group.d.ts",
|
|
115
115
|
"default": "./fesm2022/spartan-ng-brain-radio-group.mjs"
|
|
116
116
|
},
|
|
117
117
|
"./resizable": {
|
|
118
|
-
"types": "./resizable
|
|
118
|
+
"types": "./types/spartan-ng-brain-resizable.d.ts",
|
|
119
119
|
"default": "./fesm2022/spartan-ng-brain-resizable.mjs"
|
|
120
120
|
},
|
|
121
121
|
"./select": {
|
|
122
|
-
"types": "./select
|
|
122
|
+
"types": "./types/spartan-ng-brain-select.d.ts",
|
|
123
123
|
"default": "./fesm2022/spartan-ng-brain-select.mjs"
|
|
124
124
|
},
|
|
125
125
|
"./separator": {
|
|
126
|
-
"types": "./separator
|
|
126
|
+
"types": "./types/spartan-ng-brain-separator.d.ts",
|
|
127
127
|
"default": "./fesm2022/spartan-ng-brain-separator.mjs"
|
|
128
128
|
},
|
|
129
129
|
"./sheet": {
|
|
130
|
-
"types": "./sheet
|
|
130
|
+
"types": "./types/spartan-ng-brain-sheet.d.ts",
|
|
131
131
|
"default": "./fesm2022/spartan-ng-brain-sheet.mjs"
|
|
132
132
|
},
|
|
133
133
|
"./slider": {
|
|
134
|
-
"types": "./slider
|
|
134
|
+
"types": "./types/spartan-ng-brain-slider.d.ts",
|
|
135
135
|
"default": "./fesm2022/spartan-ng-brain-slider.mjs"
|
|
136
136
|
},
|
|
137
137
|
"./sonner": {
|
|
138
|
-
"types": "./sonner
|
|
138
|
+
"types": "./types/spartan-ng-brain-sonner.d.ts",
|
|
139
139
|
"default": "./fesm2022/spartan-ng-brain-sonner.mjs"
|
|
140
140
|
},
|
|
141
141
|
"./switch": {
|
|
142
|
-
"types": "./switch
|
|
142
|
+
"types": "./types/spartan-ng-brain-switch.d.ts",
|
|
143
143
|
"default": "./fesm2022/spartan-ng-brain-switch.mjs"
|
|
144
144
|
},
|
|
145
145
|
"./tabs": {
|
|
146
|
-
"types": "./tabs
|
|
146
|
+
"types": "./types/spartan-ng-brain-tabs.d.ts",
|
|
147
147
|
"default": "./fesm2022/spartan-ng-brain-tabs.mjs"
|
|
148
148
|
},
|
|
149
149
|
"./textarea": {
|
|
150
|
-
"types": "./textarea
|
|
150
|
+
"types": "./types/spartan-ng-brain-textarea.d.ts",
|
|
151
151
|
"default": "./fesm2022/spartan-ng-brain-textarea.mjs"
|
|
152
152
|
},
|
|
153
153
|
"./toggle": {
|
|
154
|
-
"types": "./toggle
|
|
154
|
+
"types": "./types/spartan-ng-brain-toggle.d.ts",
|
|
155
155
|
"default": "./fesm2022/spartan-ng-brain-toggle.mjs"
|
|
156
156
|
},
|
|
157
157
|
"./toggle-group": {
|
|
158
|
-
"types": "./toggle-group
|
|
158
|
+
"types": "./types/spartan-ng-brain-toggle-group.d.ts",
|
|
159
159
|
"default": "./fesm2022/spartan-ng-brain-toggle-group.mjs"
|
|
160
160
|
},
|
|
161
161
|
"./tooltip": {
|
|
162
|
-
"types": "./tooltip
|
|
162
|
+
"types": "./types/spartan-ng-brain-tooltip.d.ts",
|
|
163
163
|
"default": "./fesm2022/spartan-ng-brain-tooltip.mjs"
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
166
|
"peerDependencies": {
|
|
167
|
-
"@angular/cdk": ">=
|
|
168
|
-
"@angular/common": ">=
|
|
169
|
-
"@angular/core": ">=
|
|
170
|
-
"@angular/forms": ">=
|
|
167
|
+
"@angular/cdk": ">=21.0.0 <23.0.0",
|
|
168
|
+
"@angular/common": ">=21.0.0 <23.0.0",
|
|
169
|
+
"@angular/core": ">=21.0.0 <23.0.0",
|
|
170
|
+
"@angular/forms": ">=21.0.0 <23.0.0",
|
|
171
171
|
"clsx": ">=2.0.0",
|
|
172
172
|
"luxon": ">=3.0.0",
|
|
173
173
|
"rxjs": ">=6.6.0",
|
|
@@ -179,7 +179,8 @@
|
|
|
179
179
|
}
|
|
180
180
|
},
|
|
181
181
|
"module": "fesm2022/spartan-ng-brain.mjs",
|
|
182
|
-
"typings": "
|
|
182
|
+
"typings": "types/spartan-ng-brain.d.ts",
|
|
183
|
+
"type": "module",
|
|
183
184
|
"dependencies": {
|
|
184
185
|
"tslib": "^2.3.0"
|
|
185
186
|
}
|
|
@@ -63,7 +63,7 @@ interface BrnAutocompleteBase<T> {
|
|
|
63
63
|
disabled: Signal<boolean>;
|
|
64
64
|
disabledState: Signal<boolean>;
|
|
65
65
|
keyManager: ActiveDescendantKeyManager<BrnAutocompleteItem<T>>;
|
|
66
|
-
value: ModelSignal<T | null> | ModelSignal<string | null>;
|
|
66
|
+
value: ModelSignal<T | undefined | null> | ModelSignal<string | undefined | null>;
|
|
67
67
|
visibleItems: Signal<boolean>;
|
|
68
68
|
isExpanded: Signal<boolean>;
|
|
69
69
|
searchInputWrapperWidth: Signal<number | null>;
|
|
@@ -81,7 +81,7 @@ interface BrnAutocompleteBase<T> {
|
|
|
81
81
|
declare const BrnAutocompleteBaseToken: InjectionToken<BrnAutocompleteBase<unknown>>;
|
|
82
82
|
declare function provideBrnAutocompleteBase<T>(autocomplete: Type<BrnAutocompleteBase<T>>): ExistingProvider;
|
|
83
83
|
declare function injectBrnAutocompleteBase<T>(): BrnAutocompleteBase<T>;
|
|
84
|
-
type AutocompleteItemEqualToValue<T> = (itemValue: T, selectedValue: T | null) => boolean;
|
|
84
|
+
type AutocompleteItemEqualToValue<T> = (itemValue: T, selectedValue: T | undefined | null) => boolean;
|
|
85
85
|
type AutocompleteItemToString<T> = (itemValue: T) => string;
|
|
86
86
|
interface BrnAutocompleteConfig<T> {
|
|
87
87
|
isItemEqualToValue: AutocompleteItemEqualToValue<T>;
|
|
@@ -114,7 +114,7 @@ declare class BrnAutocomplete<T> implements BrnAutocompleteBase<T>, ControlValue
|
|
|
114
114
|
/** Whether to auto-highlight the first matching item. */
|
|
115
115
|
readonly autoHighlight: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
116
116
|
/** The selected value of the autocomplete. */
|
|
117
|
-
readonly value: _angular_core.ModelSignal<T | null>;
|
|
117
|
+
readonly value: _angular_core.ModelSignal<T | null | undefined>;
|
|
118
118
|
/** The current search query. */
|
|
119
119
|
readonly search: _angular_core.ModelSignal<string>;
|
|
120
120
|
private readonly _inputWidth;
|
|
@@ -129,7 +129,7 @@ declare class BrnAutocomplete<T> implements BrnAutocompleteBase<T>, ControlValue
|
|
|
129
129
|
/** @internal Whether the autocomplete is expanded */
|
|
130
130
|
readonly isExpanded: _angular_core.Signal<boolean>;
|
|
131
131
|
private readonly _autocompleteInput;
|
|
132
|
-
protected _onChange?: ChangeFn<T | null>;
|
|
132
|
+
protected _onChange?: ChangeFn<T | undefined | null>;
|
|
133
133
|
protected _onTouched?: TouchFn;
|
|
134
134
|
readonly labelableId: _angular_core.Signal<string | undefined>;
|
|
135
135
|
readonly controlState: _angular_core.Signal<_spartan_ng_brain_forms.ControlState | null> | undefined;
|
|
@@ -146,8 +146,8 @@ declare class BrnAutocomplete<T> implements BrnAutocompleteBase<T>, ControlValue
|
|
|
146
146
|
close(): void;
|
|
147
147
|
toggle(): void;
|
|
148
148
|
/** CONTROL VALUE ACCESSOR */
|
|
149
|
-
writeValue(value: T | null): void;
|
|
150
|
-
registerOnChange(fn: ChangeFn<T | null>): void;
|
|
149
|
+
writeValue(value: T | undefined | null): void;
|
|
150
|
+
registerOnChange(fn: ChangeFn<T | undefined | null>): void;
|
|
151
151
|
registerOnTouched(fn: TouchFn): void;
|
|
152
152
|
setDisabledState(isDisabled: boolean): void;
|
|
153
153
|
protected _onFocusOut(event: FocusEvent): void;
|
|
@@ -245,7 +245,7 @@ declare class BrnAutocompleteSearch<T> implements BrnAutocompleteBase<T>, Contro
|
|
|
245
245
|
/** Whether to auto-highlight the first matching item. */
|
|
246
246
|
readonly autoHighlight: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
247
247
|
/** The selected value of the autocomplete. */
|
|
248
|
-
readonly value: _angular_core.ModelSignal<string | null>;
|
|
248
|
+
readonly value: _angular_core.ModelSignal<string | null | undefined>;
|
|
249
249
|
/** The current search query. */
|
|
250
250
|
readonly search: _angular_core.ModelSignal<string>;
|
|
251
251
|
private readonly _inputWidth;
|
|
@@ -260,7 +260,7 @@ declare class BrnAutocompleteSearch<T> implements BrnAutocompleteBase<T>, Contro
|
|
|
260
260
|
/** @internal Whether the autocomplete is expanded */
|
|
261
261
|
readonly isExpanded: _angular_core.Signal<boolean>;
|
|
262
262
|
private readonly _autocompleteInput;
|
|
263
|
-
protected _onChange?: ChangeFn<string | null>;
|
|
263
|
+
protected _onChange?: ChangeFn<string | undefined | null>;
|
|
264
264
|
protected _onTouched?: TouchFn;
|
|
265
265
|
readonly labelableId: _angular_core.Signal<string | undefined>;
|
|
266
266
|
constructor();
|
|
@@ -276,8 +276,8 @@ declare class BrnAutocompleteSearch<T> implements BrnAutocompleteBase<T>, Contro
|
|
|
276
276
|
close(): void;
|
|
277
277
|
toggle(): void;
|
|
278
278
|
/** CONTROL VALUE ACCESSOR */
|
|
279
|
-
writeValue(value: string | null): void;
|
|
280
|
-
registerOnChange(fn: ChangeFn<string | null>): void;
|
|
279
|
+
writeValue(value: string | undefined | null): void;
|
|
280
|
+
registerOnChange(fn: ChangeFn<string | undefined | null>): void;
|
|
281
281
|
registerOnTouched(fn: TouchFn): void;
|
|
282
282
|
setDisabledState(isDisabled: boolean): void;
|
|
283
283
|
protected _onFocusOut(event: FocusEvent): void;
|
|
@@ -235,7 +235,7 @@ declare class BrnCalendarMonthSelect {
|
|
|
235
235
|
protected readonly _selectedMonth: _angular_core.Signal<string>;
|
|
236
236
|
constructor();
|
|
237
237
|
/** Focus selected month */
|
|
238
|
-
|
|
238
|
+
private monthSelected;
|
|
239
239
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarMonthSelect, never>;
|
|
240
240
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarMonthSelect, "brnSelect[brnCalendarMonthSelect],hlm-select[brnCalendarMonthSelect]", never, {}, {}, never, never, true, never>;
|
|
241
241
|
}
|
|
@@ -326,7 +326,7 @@ declare class BrnCalendarYearSelect {
|
|
|
326
326
|
protected readonly _i18n: _spartan_ng_brain_calendar.BrnCalendarI18nService;
|
|
327
327
|
constructor();
|
|
328
328
|
/** Focus selected year */
|
|
329
|
-
|
|
329
|
+
private yearSelected;
|
|
330
330
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarYearSelect, never>;
|
|
331
331
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarYearSelect, "brnSelect[brnCalendarYearSelect],hlm-select[brnCalendarYearSelect]", never, {}, {}, never, never, true, never>;
|
|
332
332
|
}
|
|
@@ -67,7 +67,7 @@ interface BrnComboboxBase<T> {
|
|
|
67
67
|
disabled: Signal<boolean>;
|
|
68
68
|
disabledState: Signal<boolean>;
|
|
69
69
|
keyManager: ActiveDescendantKeyManager<BrnComboboxItem<T>>;
|
|
70
|
-
value: ModelSignal<T | null> | ModelSignal<T[] | null>;
|
|
70
|
+
value: ModelSignal<T | undefined | null> | ModelSignal<T[] | undefined | null>;
|
|
71
71
|
visibleItems: Signal<boolean>;
|
|
72
72
|
isExpanded: Signal<boolean>;
|
|
73
73
|
searchInputWrapperWidth: Signal<number | null>;
|
|
@@ -104,7 +104,7 @@ interface ComboboxFilterOptions extends Intl.CollatorOptions {
|
|
|
104
104
|
locale?: Intl.LocalesArgument;
|
|
105
105
|
}
|
|
106
106
|
type ComboboxFilter<T> = (itemValue: T, search: string, collator: Intl.Collator, itemToString?: ComboboxItemToString<T>) => boolean;
|
|
107
|
-
type ComboboxItemEqualToValue<T> = (itemValue: T, selectedValue: T | null) => boolean;
|
|
107
|
+
type ComboboxItemEqualToValue<T> = (itemValue: T, selectedValue: T | undefined | null) => boolean;
|
|
108
108
|
type ComboboxItemToString<T> = (itemValue: T) => string;
|
|
109
109
|
interface BrnComboboxConfig<T> {
|
|
110
110
|
filterOptions: ComboboxFilterOptions;
|
|
@@ -178,7 +178,7 @@ declare class BrnCombobox<T> implements BrnComboboxBase<T>, ControlValueAccessor
|
|
|
178
178
|
/** Whether to close the popover after selecting an item. */
|
|
179
179
|
readonly closeOnSelect: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
180
180
|
/** The selected value of the combobox. */
|
|
181
|
-
readonly value: _angular_core.ModelSignal<T | null>;
|
|
181
|
+
readonly value: _angular_core.ModelSignal<T | null | undefined>;
|
|
182
182
|
readonly hasValue: _angular_core.Signal<boolean>;
|
|
183
183
|
/** The current search query. */
|
|
184
184
|
readonly search: _angular_core.ModelSignal<string>;
|
|
@@ -197,7 +197,7 @@ declare class BrnCombobox<T> implements BrnComboboxBase<T>, ControlValueAccessor
|
|
|
197
197
|
private readonly _comboboxInput;
|
|
198
198
|
readonly mode: _angular_core.Signal<ComboboxInputMode>;
|
|
199
199
|
readonly labelableId: _angular_core.Signal<string | undefined>;
|
|
200
|
-
protected _onChange?: ChangeFn<T | null>;
|
|
200
|
+
protected _onChange?: ChangeFn<T | undefined | null>;
|
|
201
201
|
protected _onTouched?: TouchFn;
|
|
202
202
|
constructor();
|
|
203
203
|
registerComboboxInput(input: BrnComboboxInput<T>): void;
|
|
@@ -212,8 +212,8 @@ declare class BrnCombobox<T> implements BrnComboboxBase<T>, ControlValueAccessor
|
|
|
212
212
|
removeLastSelectedItem(): void;
|
|
213
213
|
open(): void;
|
|
214
214
|
/** CONTROL VALUE ACCESSOR */
|
|
215
|
-
writeValue(value: T | null): void;
|
|
216
|
-
registerOnChange(fn: ChangeFn<T | null>): void;
|
|
215
|
+
writeValue(value: T | undefined | null): void;
|
|
216
|
+
registerOnChange(fn: ChangeFn<T | undefined | null>): void;
|
|
217
217
|
registerOnTouched(fn: TouchFn): void;
|
|
218
218
|
setDisabledState(isDisabled: boolean): void;
|
|
219
219
|
protected _onFocusOut(event: FocusEvent): void;
|
|
@@ -341,7 +341,7 @@ declare class BrnComboboxMultiple<T> implements BrnComboboxBase<T>, ControlValue
|
|
|
341
341
|
/** Whether to reset the search and close the popover after selecting an item when the search is active. */
|
|
342
342
|
readonly closeOnSelect: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
343
343
|
/** The selected values of the combobox. */
|
|
344
|
-
readonly value: _angular_core.ModelSignal<T[] | null>;
|
|
344
|
+
readonly value: _angular_core.ModelSignal<T[] | null | undefined>;
|
|
345
345
|
readonly hasValue: _angular_core.Signal<boolean>;
|
|
346
346
|
/** The current search query. */
|
|
347
347
|
readonly search: _angular_core.ModelSignal<string>;
|
|
@@ -360,7 +360,7 @@ declare class BrnComboboxMultiple<T> implements BrnComboboxBase<T>, ControlValue
|
|
|
360
360
|
private readonly _comboboxChipInput;
|
|
361
361
|
readonly mode: _angular_core.Signal<ComboboxInputMode>;
|
|
362
362
|
readonly labelableId: _angular_core.Signal<string | undefined>;
|
|
363
|
-
protected _onChange?: ChangeFn<T[] | null>;
|
|
363
|
+
protected _onChange?: ChangeFn<T[] | undefined | null>;
|
|
364
364
|
protected _onTouched?: TouchFn;
|
|
365
365
|
constructor();
|
|
366
366
|
registerComboboxChipInput(input: BrnComboboxChipInput<T>): void;
|
|
@@ -377,8 +377,8 @@ declare class BrnComboboxMultiple<T> implements BrnComboboxBase<T>, ControlValue
|
|
|
377
377
|
protected _onFocusOut(event: FocusEvent): void;
|
|
378
378
|
private close;
|
|
379
379
|
/** CONTROL VALUE ACCESSOR */
|
|
380
|
-
writeValue(value: T[] | null): void;
|
|
381
|
-
registerOnChange(fn: ChangeFn<T[] | null>): void;
|
|
380
|
+
writeValue(value: T[] | undefined | null): void;
|
|
381
|
+
registerOnChange(fn: ChangeFn<T[] | undefined | null>): void;
|
|
382
382
|
registerOnTouched(fn: TouchFn): void;
|
|
383
383
|
setDisabledState(isDisabled: boolean): void;
|
|
384
384
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnComboboxMultiple<any>, never>;
|
|
@@ -3,7 +3,7 @@ import { AutoFocusTarget, DialogRef } from '@angular/cdk/dialog';
|
|
|
3
3
|
import * as _angular_cdk_overlay from '@angular/cdk/overlay';
|
|
4
4
|
import { ConnectedPosition, FlexibleConnectedPositionStrategyOrigin, PositionStrategy, ScrollStrategy, OverlayPositionBuilder, ScrollStrategyOptions, ComponentType } from '@angular/cdk/overlay';
|
|
5
5
|
import * as _angular_core from '@angular/core';
|
|
6
|
-
import { StaticProvider, ElementRef, TemplateRef, Signal, WritableSignal, ValueProvider,
|
|
6
|
+
import { StaticProvider, ElementRef, TemplateRef, Signal, WritableSignal, ValueProvider, ViewContainerRef, InjectOptions } from '@angular/core';
|
|
7
7
|
import * as _spartan_ng_brain_dialog from '@spartan-ng/brain/dialog';
|
|
8
8
|
import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
|
|
9
9
|
import { Observable } from 'rxjs';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { AfterContentInit, Signal, TemplateRef, ElementRef, ViewContainerRef, OnInit, OnDestroy, ValueProvider } from '@angular/core';
|
|
3
3
|
import { NumberInput } from '@angular/cdk/coercion';
|
|
4
|
-
import { ConnectedPosition, OverlayConfig
|
|
4
|
+
import { ConnectedOverlayPositionChange, ConnectedPosition, OverlayConfig } from '@angular/cdk/overlay';
|
|
5
5
|
import { ExposesState, ExposesSide } from '@spartan-ng/brain/core';
|
|
6
6
|
import { Observable } from 'rxjs';
|
|
7
7
|
|