@tailng-ui/primitives 0.42.0 → 0.44.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.
- package/package.json +2 -2
- package/src/lib/form/_shared/select/tng-select.overlay.shared.d.ts +1 -0
- package/src/lib/form/_shared/select/tng-select.overlay.shared.d.ts.map +1 -1
- package/src/lib/form/_shared/select/tng-select.overlay.shared.js +8 -1
- package/src/lib/form/_shared/select/tng-select.overlay.shared.js.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.d.ts +2 -2
- package/src/lib/form/autocomplete/tng-autocomplete.d.ts.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.js.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.listbox.d.ts.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.listbox.js +5 -3
- package/src/lib/form/autocomplete/tng-autocomplete.listbox.js.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.overlay.d.ts +1 -0
- package/src/lib/form/autocomplete/tng-autocomplete.overlay.d.ts.map +1 -1
- package/src/lib/form/autocomplete/tng-autocomplete.overlay.js +25 -5
- package/src/lib/form/autocomplete/tng-autocomplete.overlay.js.map +1 -1
- package/src/lib/form/datepicker/tng-datepicker.overlay.d.ts +2 -1
- package/src/lib/form/datepicker/tng-datepicker.overlay.d.ts.map +1 -1
- package/src/lib/form/datepicker/tng-datepicker.overlay.js +13 -5
- package/src/lib/form/datepicker/tng-datepicker.overlay.js.map +1 -1
- package/src/lib/form/index.d.ts +0 -1
- package/src/lib/form/index.d.ts.map +1 -1
- package/src/lib/form/index.js +0 -1
- package/src/lib/form/index.js.map +1 -1
- package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.d.ts +1 -0
- package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.d.ts.map +1 -1
- package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.js +8 -1
- package/src/lib/form/multi-autocomplete/tng-multi-autocomplete.overlay.js.map +1 -1
- package/src/lib/layout/index.d.ts +1 -2
- package/src/lib/layout/index.d.ts.map +1 -1
- package/src/lib/layout/index.js +1 -2
- package/src/lib/layout/index.js.map +1 -1
- package/src/lib/layout/stepper/__tests__/tng-stepper.test-harness.d.ts +44 -0
- package/src/lib/layout/stepper/__tests__/tng-stepper.test-harness.d.ts.map +1 -0
- package/src/lib/layout/stepper/__tests__/tng-stepper.test-harness.js +149 -0
- package/src/lib/layout/stepper/__tests__/tng-stepper.test-harness.js.map +1 -0
- package/src/lib/layout/stepper/index.d.ts +2 -0
- package/src/lib/layout/stepper/index.d.ts.map +1 -0
- package/src/lib/layout/stepper/index.js +2 -0
- package/src/lib/layout/stepper/index.js.map +1 -0
- package/src/lib/layout/stepper/tng-stepper.d.ts +198 -2
- package/src/lib/layout/stepper/tng-stepper.d.ts.map +1 -1
- package/src/lib/layout/stepper/tng-stepper.js +898 -2
- package/src/lib/layout/stepper/tng-stepper.js.map +1 -1
- package/src/lib/navigation/index.d.ts +0 -3
- package/src/lib/navigation/index.d.ts.map +1 -1
- package/src/lib/navigation/index.js +0 -3
- package/src/lib/navigation/index.js.map +1 -1
- package/src/lib/form/multiselect/tng-multiselect.d.ts +0 -7
- package/src/lib/form/multiselect/tng-multiselect.d.ts.map +0 -1
- package/src/lib/form/multiselect/tng-multiselect.js +0 -18
- package/src/lib/form/multiselect/tng-multiselect.js.map +0 -1
- package/src/lib/layout/bottom-sheet/tng-bottom-sheet.d.ts +0 -7
- package/src/lib/layout/bottom-sheet/tng-bottom-sheet.d.ts.map +0 -1
- package/src/lib/layout/bottom-sheet/tng-bottom-sheet.js +0 -18
- package/src/lib/layout/bottom-sheet/tng-bottom-sheet.js.map +0 -1
- package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.d.ts +0 -7
- package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.d.ts.map +0 -1
- package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.js +0 -18
- package/src/lib/navigation/dropdown-menu/tng-dropdown-menu.js.map +0 -1
- package/src/lib/navigation/navigation-menu/tng-navigation-menu.d.ts +0 -7
- package/src/lib/navigation/navigation-menu/tng-navigation-menu.d.ts.map +0 -1
- package/src/lib/navigation/navigation-menu/tng-navigation-menu.js +0 -18
- package/src/lib/navigation/navigation-menu/tng-navigation-menu.js.map +0 -1
- package/src/lib/navigation/toolbar/tng-toolbar.d.ts +0 -7
- package/src/lib/navigation/toolbar/tng-toolbar.d.ts.map +0 -1
- package/src/lib/navigation/toolbar/tng-toolbar.js +0 -18
- package/src/lib/navigation/toolbar/tng-toolbar.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tng-stepper.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/layout/stepper/tng-stepper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,UAAU;IAEF,QAAQ,GAAG,SAAkB,CAAC;uGAFtC,UAAU;2FAAV,UAAU;;2FAAV,UAAU;kBAJtB,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE,YAAY;iBACvB;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngStepper]',\n exportAs: 'tngStepper',\n})\nexport class TngStepper {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper' as const;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tng-stepper.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/layout/stepper/tng-stepper.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DoCheck, OnDestroy, OnInit } from '@angular/core';\nimport {\n Directive,\n ElementRef,\n HostBinding,\n HostListener,\n inject,\n input,\n isDevMode,\n output,\n} from '@angular/core';\nimport { createTngIdFactory } from '@tailng-ui/cdk';\n\nexport type TngStepperOrientation = 'horizontal' | 'vertical';\nexport type TngStepperValue = string | number;\nexport type TngStepperDataState = 'completed' | 'current' | 'disabled' | 'error' | 'upcoming';\nexport type TngStepperActivationSource = 'keyboard' | 'pointer' | 'programmatic';\n\nexport type TngStepperValueChangeEvent = Readonly<{\n value: TngStepperValue;\n previousValue: TngStepperValue | null;\n trigger: TngStepperActivationSource;\n}>;\n\ntype TngStepperFocusMove = 'first' | 'last' | 'next' | 'prev';\n\nconst createStepperTriggerId = createTngIdFactory('tng-stepper-trigger');\nconst createStepperPanelId = createTngIdFactory('tng-stepper-panel');\nlet nextStepperItemRegistrationOrder = 0;\n\nfunction normalizeBooleanInput(value: unknown): boolean {\n if (typeof value === 'boolean') {\n return value;\n }\n\n if (typeof value === 'string') {\n const normalized = value.trim().toLowerCase();\n if (normalized === '' || normalized === 'true') {\n return true;\n }\n\n if (normalized === 'false') {\n return false;\n }\n }\n\n return false;\n}\n\nfunction normalizeOrientationInput(value: unknown): TngStepperOrientation {\n return value === 'vertical' ? 'vertical' : 'horizontal';\n}\n\nfunction normalizeOptionalValueInput(value: unknown): TngStepperValue | null | undefined {\n if (value === undefined) {\n return undefined;\n }\n\n if (value === null) {\n return null;\n }\n\n if (typeof value === 'number' || typeof value === 'string') {\n return value;\n }\n\n return undefined;\n}\n\nfunction normalizeValueInput(value: unknown): TngStepperValue {\n if (typeof value === 'number' || typeof value === 'string') {\n return value;\n }\n\n return String(value);\n}\n\nfunction normalizeOptionalStringInput(value: unknown): string | null | undefined {\n if (value === undefined) {\n return undefined;\n }\n\n if (value === null) {\n return null;\n }\n\n if (typeof value === 'string') {\n return value;\n }\n\n if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') {\n return String(value);\n }\n\n return undefined;\n}\n\nfunction compareStepperItemsByDomPosition(a: TngStepperItem, b: TngStepperItem): number {\n const aElement = a.getHostElement();\n const bElement = b.getHostElement();\n\n if (aElement === bElement) {\n return a.getRegistrationOrder() - b.getRegistrationOrder();\n }\n\n const relativePosition = aElement.compareDocumentPosition(bElement);\n if (relativePosition & Node.DOCUMENT_POSITION_FOLLOWING) {\n return -1;\n }\n\n if (relativePosition & Node.DOCUMENT_POSITION_PRECEDING) {\n return 1;\n }\n\n return a.getRegistrationOrder() - b.getRegistrationOrder();\n}\n\nfunction valuesEqual(a: TngStepperValue | null, b: TngStepperValue | null): boolean {\n return a === b;\n}\n\n@Directive({\n selector: '[tngStepper]',\n exportAs: 'tngStepper',\n})\nexport class TngStepper implements DoCheck, OnDestroy {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly items = new Set<TngStepperItem>();\n private uncontrolledValue: TngStepperValue | null = null;\n private focusedValue: TngStepperValue | null = null;\n private lastSelectedValue: TngStepperValue | null = null;\n private lastSelectedIndex = -1;\n private initialized = false;\n private hasUserSelection = false;\n private hasExplicitFocus = false;\n private readonly duplicateWarnings = new Set<TngStepperValue>();\n\n public readonly value = input<TngStepperValue | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalValueInput,\n });\n public readonly defaultValue = input<TngStepperValue | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalValueInput,\n });\n public readonly orientation = input<TngStepperOrientation, unknown>('horizontal', {\n transform: normalizeOrientationInput,\n });\n public readonly linear = input<boolean, unknown>(false, {\n transform: normalizeBooleanInput,\n });\n public readonly loopFocus = input<boolean, unknown>(true, {\n transform: normalizeBooleanInput,\n });\n public readonly ariaLabel = input<string | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalStringInput,\n });\n public readonly ariaLabelledby = input<string | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalStringInput,\n });\n\n public readonly valueChange = output<TngStepperValue>();\n public readonly stepChange = output<TngStepperValueChangeEvent>();\n\n @HostBinding('attr.aria-label')\n protected get ariaLabelAttr(): string | null {\n return this.ariaLabel() ?? null;\n }\n\n @HostBinding('attr.aria-labelledby')\n protected get ariaLabelledbyAttr(): string | null {\n return this.ariaLabelledby() ?? null;\n }\n\n @HostBinding('attr.data-linear')\n protected get dataLinear(): '' | null {\n return this.linear() ? '' : null;\n }\n\n @HostBinding('attr.data-orientation')\n protected get dataOrientation(): TngStepperOrientation {\n return this.orientation();\n }\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper' as const;\n\n public ngDoCheck(): void {\n this.syncStateFromRegistry();\n }\n\n public ngOnDestroy(): void {\n this.items.clear();\n }\n\n public registerItem(item: TngStepperItem): void {\n this.items.add(item);\n this.syncStateFromRegistry();\n }\n\n public unregisterItem(item: TngStepperItem): void {\n const orderedItems = [...this.getOrderedItems()].sort(\n (a, b) => a.getLastKnownIndex() - b.getLastKnownIndex(),\n );\n const removedValue = item.getValue();\n const selectedValue = this.getEffectiveValue();\n const removedIndex = valuesEqual(selectedValue, removedValue) ? this.lastSelectedIndex : item.getLastKnownIndex();\n this.items.delete(item);\n\n if (valuesEqual(selectedValue, removedValue)) {\n this.applyLifecycleSelection(this.resolveNearestEnabledValue(orderedItems, removedIndex));\n }\n\n if (valuesEqual(this.focusedValue, removedValue)) {\n this.focusedValue = this.resolveNearestEnabledValue(orderedItems, removedIndex);\n this.hasExplicitFocus = false;\n }\n\n this.syncStateFromRegistry();\n }\n\n public notifyItemMutated(item: TngStepperItem): void {\n if (this.isItemSelected(item) && item.disabled()) {\n this.applyLifecycleSelection(this.resolveNeighborForItem(item));\n }\n\n if (valuesEqual(this.focusedValue, item.getValue()) && item.disabled()) {\n this.focusedValue = this.resolveNeighborForItem(item);\n this.hasExplicitFocus = false;\n }\n\n this.syncStateFromRegistry();\n }\n\n public select(value: TngStepperValue): void {\n const item = this.findItemByValue(value);\n if (item === null) {\n return;\n }\n\n this.requestActivation(item, 'programmatic');\n }\n\n public focus(value: TngStepperValue): void {\n const item = this.findEnabledItemByValue(value);\n if (item === null) {\n return;\n }\n\n this.focusItem(item);\n }\n\n public next(): void {\n this.moveFocusFromCurrent('next');\n }\n\n public prev(): void {\n this.moveFocusFromCurrent('prev');\n }\n\n public getItemIndex(item: TngStepperItem): number {\n return this.getOrderedItems().indexOf(item);\n }\n\n public getItemCount(): number {\n return this.getOrderedItems().length;\n }\n\n public isItemSelected(item: TngStepperItem): boolean {\n return valuesEqual(this.getEffectiveValue(), item.getValue());\n }\n\n public isItemActivatable(item: TngStepperItem): boolean {\n if (item.disabled()) {\n return false;\n }\n\n if (!this.linear()) {\n return true;\n }\n\n if (this.isItemSelected(item) || item.completed()) {\n return true;\n }\n\n const selectedIndex = this.getSelectedIndex();\n const itemIndex = this.getItemIndex(item);\n return selectedIndex >= 0 && itemIndex >= 0 && itemIndex < selectedIndex;\n }\n\n public getItemState(item: TngStepperItem): TngStepperDataState {\n if (item.disabled()) {\n return 'disabled';\n }\n\n if (item.error()) {\n return 'error';\n }\n\n if (this.isItemSelected(item)) {\n return 'current';\n }\n\n if (item.completed()) {\n return 'completed';\n }\n\n return 'upcoming';\n }\n\n public getTriggerTabIndex(item: TngStepperItem): string {\n if (item.disabled()) {\n return '-1';\n }\n\n const tabStopValue = this.resolveCurrentTabStopValue();\n if (tabStopValue === null) {\n return '-1';\n }\n\n return valuesEqual(tabStopValue, item.getValue()) ? '0' : '-1';\n }\n\n public onTriggerFocused(item: TngStepperItem): void {\n if (!item.disabled()) {\n this.focusedValue = item.getValue();\n this.hasExplicitFocus = true;\n }\n }\n\n public onTriggerClicked(item: TngStepperItem, event: MouseEvent): void {\n if (!this.isItemActivatable(item)) {\n event.preventDefault();\n return;\n }\n\n this.requestActivation(item, 'pointer');\n }\n\n public onTriggerKeydown(item: TngStepperItem, event: KeyboardEvent): void {\n if (item.disabled() || event.altKey || event.ctrlKey || event.metaKey) {\n return;\n }\n\n if (this.handleFocusKey(item, event)) {\n return;\n }\n\n if (!this.isActivationKey(event.key)) {\n return;\n }\n\n event.preventDefault();\n this.requestActivation(item, 'keyboard');\n }\n\n private requestActivation(item: TngStepperItem, trigger: TngStepperActivationSource): void {\n if (!this.isItemActivatable(item)) {\n return;\n }\n\n const nextValue = item.getValue();\n const previousValue = this.getEffectiveValue();\n if (valuesEqual(previousValue, nextValue)) {\n return;\n }\n\n if (!this.isControlled()) {\n this.uncontrolledValue = nextValue;\n this.hasUserSelection = true;\n }\n\n this.focusedValue = nextValue;\n this.valueChange.emit(nextValue);\n this.stepChange.emit({ value: nextValue, previousValue, trigger });\n this.syncStateFromRegistry();\n }\n\n private syncStateFromRegistry(): void {\n this.warnForDuplicateValues();\n\n const enabledItems = this.getEnabledItems();\n if (enabledItems.length === 0) {\n this.clearSelectionState();\n return;\n }\n\n if (!this.initialized) {\n this.initializeSelection(enabledItems);\n }\n\n this.restoreRemovedDefaultSelectionIfNeeded();\n this.normalizeSelectionForCurrentItems(enabledItems);\n this.normalizeFocusForCurrentItems(enabledItems);\n this.syncDomAttributes();\n }\n\n private warnForDuplicateValues(): void {\n if (!isDevMode()) {\n return;\n }\n\n const seen = new Set<TngStepperValue>();\n for (const item of this.getOrderedItems()) {\n const value = item.getValue();\n if (!seen.has(value)) {\n seen.add(value);\n continue;\n }\n\n if (this.duplicateWarnings.has(value)) {\n continue;\n }\n\n this.duplicateWarnings.add(value);\n // eslint-disable-next-line no-console\n console.warn(`TngStepper: duplicate step value \"${String(value)}\" registered.`);\n }\n }\n\n private clearSelectionState(): void {\n this.uncontrolledValue = null;\n this.focusedValue = null;\n this.hasExplicitFocus = false;\n this.initialized = true;\n this.syncDomAttributes();\n }\n\n private initializeSelection(enabledItems: readonly TngStepperItem[]): void {\n this.initialized = true;\n if (this.isControlled()) {\n return;\n }\n\n const defaultValue = this.defaultValue();\n this.uncontrolledValue =\n defaultValue !== undefined && defaultValue !== null && this.findEnabledItemByValue(defaultValue) !== null\n ? defaultValue\n : (enabledItems[0]?.getValue() ?? null);\n }\n\n private normalizeSelectionForCurrentItems(enabledItems: readonly TngStepperItem[]): void {\n const selectedItem = this.findEnabledItemByValue(this.getEffectiveValue());\n if (selectedItem === null) {\n if (!this.isControlled()) {\n this.uncontrolledValue = this.resolveNearestEnabledValueForMissingSelection();\n }\n return;\n }\n\n this.restoreDefaultSelectionIfNeeded(enabledItems);\n }\n\n private restoreDefaultSelectionIfNeeded(enabledItems: readonly TngStepperItem[]): void {\n if (this.isControlled() || this.hasUserSelection) {\n return;\n }\n\n const defaultValue = this.defaultValue();\n if (defaultValue === undefined || defaultValue === null) {\n return;\n }\n\n if (enabledItems.some((item) => valuesEqual(item.getValue(), defaultValue))) {\n this.uncontrolledValue = defaultValue;\n }\n }\n\n private restoreRemovedDefaultSelectionIfNeeded(): void {\n if (this.isControlled() || this.hasUserSelection) {\n return;\n }\n\n const defaultValue = this.defaultValue();\n if (\n defaultValue === undefined ||\n defaultValue === null ||\n !valuesEqual(this.lastSelectedValue, defaultValue) ||\n this.findItemByValue(defaultValue) !== null\n ) {\n return;\n }\n\n const orderedItems = [...this.getOrderedItems()].sort(\n (a, b) => a.getLastKnownIndex() - b.getLastKnownIndex(),\n );\n this.uncontrolledValue = this.resolveNearestEnabledValue(orderedItems, this.lastSelectedIndex);\n }\n\n private normalizeFocusForCurrentItems(enabledItems: readonly TngStepperItem[]): void {\n if (\n this.hasExplicitFocus &&\n this.focusedValue !== null &&\n this.findEnabledItemByValue(this.focusedValue) !== null\n ) {\n return;\n }\n\n this.focusedValue = this.getEffectiveValue() ?? enabledItems[0]?.getValue() ?? null;\n }\n\n private syncDomAttributes(): void {\n const orderedItems = this.getOrderedItems();\n const itemCount = orderedItems.length;\n this.lastSelectedIndex = -1;\n this.lastSelectedValue = null;\n for (const [index, item] of orderedItems.entries()) {\n if (this.isItemSelected(item)) {\n this.lastSelectedIndex = index;\n this.lastSelectedValue = item.getValue();\n }\n item.syncDomAttributes({\n activatable: this.isItemActivatable(item),\n current: this.isItemSelected(item),\n index,\n state: this.getItemState(item),\n tabIndex: this.getTriggerTabIndex(item),\n total: itemCount,\n });\n }\n }\n\n private applyLifecycleSelection(value: TngStepperValue | null): void {\n if (!this.isControlled()) {\n this.uncontrolledValue = value;\n }\n }\n\n private handleFocusKey(item: TngStepperItem, event: KeyboardEvent): boolean {\n const move = this.resolveFocusMove(event.key);\n if (move === null) {\n return false;\n }\n\n if (this.moveFocus(item, move)) {\n event.preventDefault();\n }\n\n return true;\n }\n\n private isActivationKey(key: string): boolean {\n return key === 'Enter' || key === ' ' || key === 'Spacebar';\n }\n\n private resolveFocusMove(key: string): TngStepperFocusMove | null {\n if (key === 'Home') {\n return 'first';\n }\n\n if (key === 'End') {\n return 'last';\n }\n\n if (this.orientation() === 'vertical') {\n return this.resolveVerticalFocusMove(key);\n }\n\n return this.resolveHorizontalFocusMove(key);\n }\n\n private resolveVerticalFocusMove(key: string): TngStepperFocusMove | null {\n if (key === 'ArrowDown') {\n return 'next';\n }\n\n if (key === 'ArrowUp') {\n return 'prev';\n }\n\n return null;\n }\n\n private resolveHorizontalFocusMove(key: string): TngStepperFocusMove | null {\n if (key !== 'ArrowLeft' && key !== 'ArrowRight') {\n return null;\n }\n\n const isRtl = this.resolveDirection() === 'rtl';\n const moveNext = key === (isRtl ? 'ArrowLeft' : 'ArrowRight');\n return moveNext ? 'next' : 'prev';\n }\n\n private moveFocusFromCurrent(move: 'next' | 'prev'): void {\n const current = this.findEnabledItemByValue(this.resolveCurrentTabStopValue()) ?? this.getEnabledItems()[0] ?? null;\n if (current !== null) {\n this.moveFocus(current, move);\n }\n }\n\n private moveFocus(source: TngStepperItem, move: TngStepperFocusMove): boolean {\n const enabledItems = this.getEnabledItems();\n if (enabledItems.length === 0) {\n return false;\n }\n\n const currentIndex = enabledItems.indexOf(source);\n if (currentIndex < 0) {\n return false;\n }\n\n const nextIndex = this.resolveFocusTargetIndex(enabledItems.length, currentIndex, move);\n if (nextIndex === null) {\n return false;\n }\n\n const target = enabledItems[nextIndex] ?? null;\n if (target === null || target === source) {\n return false;\n }\n\n this.focusItem(target);\n return true;\n }\n\n private resolveFocusTargetIndex(\n itemCount: number,\n currentIndex: number,\n move: TngStepperFocusMove,\n ): number | null {\n if (move === 'first') {\n return 0;\n }\n\n if (move === 'last') {\n return itemCount - 1;\n }\n\n if (move === 'next') {\n return this.resolveRelativeFocusTargetIndex(itemCount, currentIndex, 1);\n }\n\n return this.resolveRelativeFocusTargetIndex(itemCount, currentIndex, -1);\n }\n\n private resolveRelativeFocusTargetIndex(\n itemCount: number,\n currentIndex: number,\n delta: 1 | -1,\n ): number | null {\n const nextIndex = currentIndex + delta;\n if (nextIndex >= 0 && nextIndex < itemCount) {\n return nextIndex;\n }\n\n if (!this.loopFocus()) {\n return null;\n }\n\n return delta > 0 ? 0 : itemCount - 1;\n }\n\n private focusItem(item: TngStepperItem): void {\n this.focusedValue = item.getValue();\n this.hasExplicitFocus = true;\n item.focusTrigger();\n }\n\n private getEffectiveValue(): TngStepperValue | null {\n if (this.isControlled()) {\n return this.getControlledEffectiveValue();\n }\n\n return this.getUncontrolledEffectiveValue();\n }\n\n private getControlledEffectiveValue(): TngStepperValue | null {\n const controlledValue = this.value();\n if (controlledValue === undefined || controlledValue === null) {\n return null;\n }\n\n const controlledItem = this.findItemByValue(controlledValue);\n if (controlledItem === null) {\n return this.getEnabledItems()[0]?.getValue() ?? null;\n }\n\n if (controlledItem.disabled()) {\n return this.resolveNeighborForItem(controlledItem);\n }\n\n return controlledValue;\n }\n\n private getUncontrolledEffectiveValue(): TngStepperValue | null {\n if (!this.hasUserSelection) {\n const defaultValue = this.defaultValue();\n if (defaultValue !== undefined && defaultValue !== null && this.findEnabledItemByValue(defaultValue) !== null) {\n return defaultValue;\n }\n }\n\n return this.uncontrolledValue;\n }\n\n private isControlled(): boolean {\n return this.value() !== undefined;\n }\n\n private getSelectedIndex(): number {\n const value = this.getEffectiveValue();\n if (value === null) {\n return -1;\n }\n\n return this.getOrderedItems().findIndex((item) => valuesEqual(item.getValue(), value));\n }\n\n private resolveCurrentTabStopValue(): TngStepperValue | null {\n if (this.focusedValue !== null && this.findEnabledItemByValue(this.focusedValue) !== null) {\n return this.focusedValue;\n }\n\n const selectedValue = this.getEffectiveValue();\n if (selectedValue !== null && this.findEnabledItemByValue(selectedValue) !== null) {\n return selectedValue;\n }\n\n return this.getEnabledItems()[0]?.getValue() ?? null;\n }\n\n private resolveNeighborForItem(item: TngStepperItem): TngStepperValue | null {\n const orderedItems = this.getOrderedItems();\n return this.resolveNearestEnabledValue(orderedItems, orderedItems.indexOf(item));\n }\n\n private resolveNearestEnabledValue(\n orderedItems: readonly TngStepperItem[],\n index: number,\n ): TngStepperValue | null {\n for (let i = index - 1; i >= 0; i -= 1) {\n const item = orderedItems[i];\n if (item !== undefined && !item.disabled()) {\n return item.getValue();\n }\n }\n\n for (let i = index + 1; i < orderedItems.length; i += 1) {\n const item = orderedItems[i];\n if (item !== undefined && !item.disabled()) {\n return item.getValue();\n }\n }\n\n return null;\n }\n\n private resolveNearestEnabledValueForMissingSelection(): TngStepperValue | null {\n const controlledValue = this.getEffectiveValue();\n const orderedItems = this.getOrderedItems();\n const selectedIndex = orderedItems.findIndex((item) => valuesEqual(item.getValue(), controlledValue));\n if (selectedIndex >= 0) {\n return this.resolveNearestEnabledValue(orderedItems, selectedIndex);\n }\n\n return this.getEnabledItems()[0]?.getValue() ?? null;\n }\n\n private findItemByValue(value: TngStepperValue | null): TngStepperItem | null {\n if (value === null) {\n return null;\n }\n\n return this.getOrderedItems().find((item) => valuesEqual(item.getValue(), value)) ?? null;\n }\n\n private findEnabledItemByValue(value: TngStepperValue | null): TngStepperItem | null {\n const item = this.findItemByValue(value);\n return item !== null && !item.disabled() ? item : null;\n }\n\n private getEnabledItems(): readonly TngStepperItem[] {\n return this.getOrderedItems().filter((item) => !item.disabled());\n }\n\n private getOrderedItems(): readonly TngStepperItem[] {\n return Array.from(this.items).sort(compareStepperItemsByDomPosition);\n }\n\n private resolveDirection(): 'ltr' | 'rtl' {\n const host = this.hostRef.nativeElement;\n return host.closest('[dir=\"rtl\"]') !== null ? 'rtl' : 'ltr';\n }\n}\n\n@Directive({\n selector: '[tngStepperItem]',\n exportAs: 'tngStepperItem',\n})\nexport class TngStepperItem implements DoCheck, OnDestroy, OnInit {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly stepper = inject(TngStepper);\n private readonly registrationOrder = nextStepperItemRegistrationOrder++;\n private lastKnownIndex = -1;\n private trigger: TngStepperTrigger | null = null;\n private readonly connectors = new Set<TngStepperConnector>();\n private readonly panels = new Set<TngStepperPanel>();\n private readonly triggerId = createStepperTriggerId();\n\n public readonly value = input<TngStepperValue, unknown>(createStepperTriggerId(), {\n transform: normalizeValueInput,\n });\n public readonly completed = input<boolean, unknown>(false, {\n transform: normalizeBooleanInput,\n });\n public readonly optional = input<boolean, unknown>(false, {\n transform: normalizeBooleanInput,\n });\n public readonly disabled = input<boolean, unknown>(false, {\n transform: normalizeBooleanInput,\n });\n public readonly error = input<boolean, unknown>(false, {\n transform: normalizeBooleanInput,\n });\n public readonly label = input<string | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalStringInput,\n });\n public readonly description = input<string | null | undefined, unknown>(undefined, {\n transform: normalizeOptionalStringInput,\n });\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-item' as const;\n\n public ngOnInit(): void {\n this.stepper.registerItem(this);\n }\n\n public ngDoCheck(): void {\n this.stepper.notifyItemMutated(this);\n }\n\n public ngOnDestroy(): void {\n this.stepper.unregisterItem(this);\n }\n\n public registerTrigger(trigger: TngStepperTrigger): void {\n this.trigger = trigger;\n this.stepper.notifyItemMutated(this);\n }\n\n public unregisterTrigger(trigger: TngStepperTrigger): void {\n if (this.trigger === trigger) {\n this.trigger = null;\n this.stepper.notifyItemMutated(this);\n }\n }\n\n public registerConnector(connector: TngStepperConnector): void {\n this.connectors.add(connector);\n this.stepper.notifyItemMutated(this);\n }\n\n public unregisterConnector(connector: TngStepperConnector): void {\n this.connectors.delete(connector);\n this.stepper.notifyItemMutated(this);\n }\n\n public registerPanel(panel: TngStepperPanel): void {\n this.panels.add(panel);\n this.stepper.notifyItemMutated(this);\n }\n\n public unregisterPanel(panel: TngStepperPanel): void {\n this.panels.delete(panel);\n this.stepper.notifyItemMutated(this);\n }\n\n public getValue(): TngStepperValue {\n return this.value();\n }\n\n public getHostElement(): HTMLElement {\n return this.hostRef.nativeElement;\n }\n\n public getRegistrationOrder(): number {\n return this.registrationOrder;\n }\n\n public getLastKnownIndex(): number {\n return this.lastKnownIndex;\n }\n\n public getTriggerId(): string {\n return this.trigger?.getId() ?? this.triggerId;\n }\n\n public getPanelId(): string | null {\n return Array.from(this.panels)[0]?.getId() ?? null;\n }\n\n public focusTrigger(): void {\n this.trigger?.focusSelf();\n }\n\n public syncDomAttributes(state: {\n readonly activatable: boolean;\n readonly current: boolean;\n readonly index: number;\n readonly state: TngStepperDataState;\n readonly tabIndex: string;\n readonly total: number;\n }): void {\n this.lastKnownIndex = state.index;\n const host = this.hostRef.nativeElement;\n host.setAttribute('data-state', state.state);\n host.setAttribute('data-step-index', String(state.index));\n this.setBooleanAttribute(host, 'data-optional', this.optional());\n\n this.trigger?.syncDomAttributes(state);\n for (const connector of this.connectors) {\n connector.syncDomAttributes(state.state);\n }\n for (const panel of this.panels) {\n panel.syncDomAttributes(state.current, this.getTriggerId());\n }\n }\n\n private setBooleanAttribute(element: HTMLElement, name: string, value: boolean): void {\n if (value) {\n element.setAttribute(name, '');\n } else {\n element.removeAttribute(name);\n }\n }\n}\n\n@Directive({\n selector: '[tngStepperTrigger]',\n exportAs: 'tngStepperTrigger',\n})\nexport class TngStepperTrigger implements OnDestroy, OnInit {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly item = inject(TngStepperItem);\n private readonly stepper = inject(TngStepper);\n private readonly id = createStepperTriggerId();\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-trigger' as const;\n\n @HostBinding('attr.id')\n protected get idAttr(): string {\n const explicitId = this.hostRef.nativeElement.getAttribute('id');\n return explicitId ?? this.id;\n }\n\n @HostBinding('attr.type')\n protected get typeAttr(): 'button' | null {\n return this.hostRef.nativeElement.tagName.toLowerCase() === 'button' ? 'button' : null;\n }\n\n public ngOnInit(): void {\n this.item.registerTrigger(this);\n }\n\n public ngOnDestroy(): void {\n this.item.unregisterTrigger(this);\n }\n\n public getId(): string {\n return this.idAttr;\n }\n\n public focusSelf(): void {\n this.hostRef.nativeElement.focus();\n }\n\n public syncDomAttributes(state: {\n readonly activatable: boolean;\n readonly current: boolean;\n readonly index: number;\n readonly state: TngStepperDataState;\n readonly tabIndex: string;\n readonly total: number;\n }): void {\n const host = this.hostRef.nativeElement;\n if (state.current) {\n host.setAttribute('aria-current', 'step');\n } else {\n host.removeAttribute('aria-current');\n }\n\n if (!state.activatable) {\n host.setAttribute('aria-disabled', 'true');\n } else {\n host.removeAttribute('aria-disabled');\n }\n\n host.setAttribute('aria-label', this.resolveAriaLabel(state.index, state.total));\n host.setAttribute('data-state', state.state);\n host.setAttribute('data-step-index', String(state.index));\n host.setAttribute('tabindex', state.tabIndex);\n if (this.item.optional()) {\n host.setAttribute('data-optional', '');\n } else {\n host.removeAttribute('data-optional');\n }\n\n const panelId = this.item.getPanelId();\n if (panelId !== null) {\n host.setAttribute('aria-controls', panelId);\n } else {\n host.removeAttribute('aria-controls');\n }\n }\n\n @HostListener('click', ['$event'])\n protected onClick(event: MouseEvent): void {\n this.stepper.onTriggerClicked(this.item, event);\n }\n\n @HostListener('focus')\n protected onFocus(): void {\n this.stepper.onTriggerFocused(this.item);\n }\n\n @HostListener('keydown', ['$event'])\n protected onKeydown(event: KeyboardEvent): void {\n this.stepper.onTriggerKeydown(this.item, event);\n }\n\n private resolveAriaLabel(index: number, total: number): string {\n const label = this.item.label() ?? this.hostRef.nativeElement.textContent?.trim() ?? 'Step';\n return [label, `Step ${index + 1} of ${total}`, this.resolveStateText()]\n .filter((part) => part.length > 0)\n .join(', ');\n }\n\n private resolveStateText(): string {\n if (this.item.error()) {\n return 'Error';\n }\n\n if (this.item.optional()) {\n return 'Optional';\n }\n\n if (this.item.completed()) {\n return 'Completed';\n }\n\n return '';\n }\n}\n\n@Directive({\n selector: '[tngStepperLabel]',\n exportAs: 'tngStepperLabel',\n})\nexport class TngStepperLabel {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-label' as const;\n}\n\n@Directive({\n selector: '[tngStepperDescription]',\n exportAs: 'tngStepperDescription',\n})\nexport class TngStepperDescription {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-description' as const;\n}\n\n@Directive({\n selector: '[tngStepperPanel]',\n exportAs: 'tngStepperPanel',\n})\nexport class TngStepperPanel implements OnDestroy {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly item = inject(TngStepperItem);\n private readonly panelId = createStepperPanelId();\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-panel' as const;\n\n @HostBinding('attr.id')\n protected get id(): string {\n return this.panelId;\n }\n\n public constructor() {\n this.item.registerPanel(this);\n }\n\n public ngOnDestroy(): void {\n this.item.unregisterPanel(this);\n }\n\n public getId(): string {\n return this.panelId;\n }\n\n public syncDomAttributes(current: boolean, triggerId: string): void {\n const host = this.hostRef.nativeElement;\n host.setAttribute('aria-labelledby', triggerId);\n host.setAttribute('data-state', current ? 'active' : 'inactive');\n if (current) {\n host.removeAttribute('hidden');\n } else {\n host.setAttribute('hidden', '');\n }\n }\n}\n\n@Directive({\n selector: '[tngStepperConnector]',\n exportAs: 'tngStepperConnector',\n})\nexport class TngStepperConnector implements OnDestroy {\n private readonly hostRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly item = inject(TngStepperItem);\n\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'stepper-connector' as const;\n\n public constructor() {\n this.item.registerConnector(this);\n }\n\n public ngOnDestroy(): void {\n this.item.unregisterConnector(this);\n }\n\n public syncDomAttributes(state: TngStepperDataState): void {\n this.hostRef.nativeElement.setAttribute('data-state', state);\n }\n}\n"]}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
export * from './breadcrumb/tng-breadcrumb';
|
|
2
2
|
export * from './context-menu/tng-context-menu';
|
|
3
|
-
export * from './dropdown-menu/tng-dropdown-menu';
|
|
4
3
|
export * from './menu/tng-menu';
|
|
5
4
|
export * from './menubar/tng-menubar';
|
|
6
|
-
export * from './navigation-menu/tng-navigation-menu';
|
|
7
5
|
export * from './tabs/tng-tabs';
|
|
8
|
-
export * from './toolbar/tng-toolbar';
|
|
9
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/index.ts"],"names":[],"mappings":"AACA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/index.ts"],"names":[],"mappings":"AACA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
// Navigation primitives
|
|
2
2
|
export * from './breadcrumb/tng-breadcrumb';
|
|
3
3
|
export * from './context-menu/tng-context-menu';
|
|
4
|
-
export * from './dropdown-menu/tng-dropdown-menu';
|
|
5
4
|
export * from './menu/tng-menu';
|
|
6
5
|
export * from './menubar/tng-menubar';
|
|
7
|
-
export * from './navigation-menu/tng-navigation-menu';
|
|
8
6
|
export * from './tabs/tng-tabs';
|
|
9
|
-
export * from './toolbar/tng-toolbar';
|
|
10
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC","sourcesContent":["// Navigation primitives\nexport * from './breadcrumb/tng-breadcrumb';\nexport * from './context-menu/tng-context-menu';\nexport * from './menu/tng-menu';\nexport * from './menubar/tng-menubar';\nexport * from './tabs/tng-tabs';\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TngMultiselect {
|
|
3
|
-
protected readonly dataSlot: "multiselect";
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TngMultiselect, never>;
|
|
5
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TngMultiselect, "[tngMultiselect]", ["tngMultiselect"], {}, {}, never, never, true, never>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=tng-multiselect.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-multiselect.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/multiselect/tng-multiselect.ts"],"names":[],"mappings":";AAEA,qBAIa,cAAc;IAEzB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,aAAa,CAAU;yCAF1C,cAAc;2CAAd,cAAc;CAG1B"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Directive, HostBinding } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TngMultiselect {
|
|
4
|
-
dataSlot = 'multiselect';
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngMultiselect, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TngMultiselect, isStandalone: true, selector: "[tngMultiselect]", host: { properties: { "attr.data-slot": "this.dataSlot" } }, exportAs: ["tngMultiselect"], ngImport: i0 });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngMultiselect, decorators: [{
|
|
9
|
-
type: Directive,
|
|
10
|
-
args: [{
|
|
11
|
-
selector: '[tngMultiselect]',
|
|
12
|
-
exportAs: 'tngMultiselect',
|
|
13
|
-
}]
|
|
14
|
-
}], propDecorators: { dataSlot: [{
|
|
15
|
-
type: HostBinding,
|
|
16
|
-
args: ['attr.data-slot']
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=tng-multiselect.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-multiselect.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/form/multiselect/tng-multiselect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,cAAc;IAEN,QAAQ,GAAG,aAAsB,CAAC;uGAF1C,cAAc;2FAAd,cAAc;;2FAAd,cAAc;kBAJ1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE,gBAAgB;iBAC3B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngMultiselect]',\n exportAs: 'tngMultiselect',\n})\nexport class TngMultiselect {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'multiselect' as const;\n}\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TngBottomSheet {
|
|
3
|
-
protected readonly dataSlot: "bottom-sheet";
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TngBottomSheet, never>;
|
|
5
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TngBottomSheet, "[tngBottomSheet]", ["tngBottomSheet"], {}, {}, never, never, true, never>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=tng-bottom-sheet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-bottom-sheet.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/layout/bottom-sheet/tng-bottom-sheet.ts"],"names":[],"mappings":";AAEA,qBAIa,cAAc;IAEzB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,cAAc,CAAU;yCAF3C,cAAc;2CAAd,cAAc;CAG1B"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Directive, HostBinding } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TngBottomSheet {
|
|
4
|
-
dataSlot = 'bottom-sheet';
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngBottomSheet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TngBottomSheet, isStandalone: true, selector: "[tngBottomSheet]", host: { properties: { "attr.data-slot": "this.dataSlot" } }, exportAs: ["tngBottomSheet"], ngImport: i0 });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngBottomSheet, decorators: [{
|
|
9
|
-
type: Directive,
|
|
10
|
-
args: [{
|
|
11
|
-
selector: '[tngBottomSheet]',
|
|
12
|
-
exportAs: 'tngBottomSheet',
|
|
13
|
-
}]
|
|
14
|
-
}], propDecorators: { dataSlot: [{
|
|
15
|
-
type: HostBinding,
|
|
16
|
-
args: ['attr.data-slot']
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=tng-bottom-sheet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-bottom-sheet.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/layout/bottom-sheet/tng-bottom-sheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,cAAc;IAEN,QAAQ,GAAG,cAAuB,CAAC;uGAF3C,cAAc;2FAAd,cAAc;;2FAAd,cAAc;kBAJ1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,kBAAkB;oBAC5B,QAAQ,EAAE,gBAAgB;iBAC3B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngBottomSheet]',\n exportAs: 'tngBottomSheet',\n})\nexport class TngBottomSheet {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'bottom-sheet' as const;\n}\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TngDropdownMenu {
|
|
3
|
-
protected readonly dataSlot: "dropdown-menu";
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TngDropdownMenu, never>;
|
|
5
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TngDropdownMenu, "[tngDropdownMenu]", ["tngDropdownMenu"], {}, {}, never, never, true, never>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=tng-dropdown-menu.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-dropdown-menu.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/dropdown-menu/tng-dropdown-menu.ts"],"names":[],"mappings":";AAEA,qBAIa,eAAe;IAE1B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,eAAe,CAAU;yCAF5C,eAAe;2CAAf,eAAe;CAG3B"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Directive, HostBinding } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TngDropdownMenu {
|
|
4
|
-
dataSlot = 'dropdown-menu';
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngDropdownMenu, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TngDropdownMenu, isStandalone: true, selector: "[tngDropdownMenu]", host: { properties: { "attr.data-slot": "this.dataSlot" } }, exportAs: ["tngDropdownMenu"], ngImport: i0 });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngDropdownMenu, decorators: [{
|
|
9
|
-
type: Directive,
|
|
10
|
-
args: [{
|
|
11
|
-
selector: '[tngDropdownMenu]',
|
|
12
|
-
exportAs: 'tngDropdownMenu',
|
|
13
|
-
}]
|
|
14
|
-
}], propDecorators: { dataSlot: [{
|
|
15
|
-
type: HostBinding,
|
|
16
|
-
args: ['attr.data-slot']
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=tng-dropdown-menu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-dropdown-menu.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/dropdown-menu/tng-dropdown-menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,eAAe;IAEP,QAAQ,GAAG,eAAwB,CAAC;uGAF5C,eAAe;2FAAf,eAAe;;2FAAf,eAAe;kBAJ3B,SAAS;mBAAC;oBACT,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,iBAAiB;iBAC5B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngDropdownMenu]',\n exportAs: 'tngDropdownMenu',\n})\nexport class TngDropdownMenu {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'dropdown-menu' as const;\n}\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TngNavigationMenu {
|
|
3
|
-
protected readonly dataSlot: "navigation-menu";
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TngNavigationMenu, never>;
|
|
5
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TngNavigationMenu, "[tngNavigationMenu]", ["tngNavigationMenu"], {}, {}, never, never, true, never>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=tng-navigation-menu.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-navigation-menu.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/navigation-menu/tng-navigation-menu.ts"],"names":[],"mappings":";AAEA,qBAIa,iBAAiB;IAE5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,iBAAiB,CAAU;yCAF9C,iBAAiB;2CAAjB,iBAAiB;CAG7B"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Directive, HostBinding } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TngNavigationMenu {
|
|
4
|
-
dataSlot = 'navigation-menu';
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngNavigationMenu, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TngNavigationMenu, isStandalone: true, selector: "[tngNavigationMenu]", host: { properties: { "attr.data-slot": "this.dataSlot" } }, exportAs: ["tngNavigationMenu"], ngImport: i0 });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngNavigationMenu, decorators: [{
|
|
9
|
-
type: Directive,
|
|
10
|
-
args: [{
|
|
11
|
-
selector: '[tngNavigationMenu]',
|
|
12
|
-
exportAs: 'tngNavigationMenu',
|
|
13
|
-
}]
|
|
14
|
-
}], propDecorators: { dataSlot: [{
|
|
15
|
-
type: HostBinding,
|
|
16
|
-
args: ['attr.data-slot']
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=tng-navigation-menu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-navigation-menu.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/navigation-menu/tng-navigation-menu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,iBAAiB;IAET,QAAQ,GAAG,iBAA0B,CAAC;uGAF9C,iBAAiB;2FAAjB,iBAAiB;;2FAAjB,iBAAiB;kBAJ7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,qBAAqB;oBAC/B,QAAQ,EAAE,mBAAmB;iBAC9B;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngNavigationMenu]',\n exportAs: 'tngNavigationMenu',\n})\nexport class TngNavigationMenu {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'navigation-menu' as const;\n}\n"]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class TngToolbar {
|
|
3
|
-
protected readonly dataSlot: "toolbar";
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TngToolbar, never>;
|
|
5
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TngToolbar, "[tngToolbar]", ["tngToolbar"], {}, {}, never, never, true, never>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=tng-toolbar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-toolbar.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/toolbar/tng-toolbar.ts"],"names":[],"mappings":";AAEA,qBAIa,UAAU;IAErB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAG,SAAS,CAAU;yCAFtC,UAAU;2CAAV,UAAU;CAGtB"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Directive, HostBinding } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TngToolbar {
|
|
4
|
-
dataSlot = 'toolbar';
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngToolbar, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.1", type: TngToolbar, isStandalone: true, selector: "[tngToolbar]", host: { properties: { "attr.data-slot": "this.dataSlot" } }, exportAs: ["tngToolbar"], ngImport: i0 });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: TngToolbar, decorators: [{
|
|
9
|
-
type: Directive,
|
|
10
|
-
args: [{
|
|
11
|
-
selector: '[tngToolbar]',
|
|
12
|
-
exportAs: 'tngToolbar',
|
|
13
|
-
}]
|
|
14
|
-
}], propDecorators: { dataSlot: [{
|
|
15
|
-
type: HostBinding,
|
|
16
|
-
args: ['attr.data-slot']
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=tng-toolbar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tng-toolbar.js","sourceRoot":"","sources":["../../../../../../../../libs/tailng-ui/primitives/src/lib/navigation/toolbar/tng-toolbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAMvD,MAAM,OAAO,UAAU;IAEF,QAAQ,GAAG,SAAkB,CAAC;uGAFtC,UAAU;2FAAV,UAAU;;2FAAV,UAAU;kBAJtB,SAAS;mBAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,QAAQ,EAAE,YAAY;iBACvB;;sBAEE,WAAW;uBAAC,gBAAgB","sourcesContent":["import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n selector: '[tngToolbar]',\n exportAs: 'tngToolbar',\n})\nexport class TngToolbar {\n @HostBinding('attr.data-slot')\n protected readonly dataSlot = 'toolbar' as const;\n}\n"]}
|