@taiga-ui/core 5.22.0 → 5.23.0-canary.0a07bcd
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/components/error/error.directive.d.ts +3 -3
- package/fesm2022/taiga-ui-core-components-button.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-cell.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-checkbox.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-checkbox.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-data-list.mjs +4 -4
- package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-error.mjs +4 -4
- package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-icon.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-label.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-link.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-notification.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-radio.mjs +2 -2
- package/fesm2022/taiga-ui-core-components-radio.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-root.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-textfield.mjs +5 -5
- package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-title.mjs +3 -3
- package/fesm2022/taiga-ui-core-components-title.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-appearance.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-group.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-icons.mjs +3 -3
- package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-alert.mjs +3 -3
- package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-dialog.mjs +2 -2
- package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-dropdown.mjs +86 -17
- package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-portals-modal.mjs +3 -3
- package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-tokens.mjs +4 -2
- package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
- package/package.json +12 -12
- package/portals/dialog/dialog.options.d.ts +2 -2
- package/portals/dropdown/dropdown-context.directive.d.ts +5 -1
- package/portals/dropdown/dropdown-host.directive.d.ts +6 -0
- package/portals/dropdown/dropdown-selection.directive.d.ts +5 -3
- package/portals/dropdown/dropdown.directive.d.ts +5 -4
- package/portals/dropdown/dropdown.providers.d.ts +1 -0
- package/portals/dropdown/index.d.ts +1 -0
- package/tokens/anchor-support.d.ts +2 -0
- package/tokens/index.d.ts +1 -0
- package/tokens/textfield.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-portals-modal.mjs","sources":["../../../projects/core/portals/modal/modal.component.ts","../../../projects/core/portals/modal/modal.service.ts","../../../projects/core/portals/modal/taiga-ui-core-portals-modal.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n type OnDestroy,\n type OnInit,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiFocusTrap} from '@taiga-ui/cdk/directives/focus-trap';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {tuiGetFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiScrollControls, TuiScrollRef} from '@taiga-ui/core/components/scrollbar';\nimport {\n injectContext,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\n\n@Component({\n selector: 'tui-modal',\n imports: [PolymorpheusOutlet, TuiScrollControls, TuiScrollRef],\n template: `\n <div tuiScrollRef>\n <ng-container *polymorpheusOutlet=\"component(); context: context\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n </div>\n `,\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './modal.style.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n hostDirectives: [TuiActiveZone, TuiFocusTrap],\n host: {\n 'aria-modal': 'true',\n 'data-tui-version': TUI_VERSION,\n role: 'dialog',\n class: 'tui-enter',\n '[attr.aria-labelledby]': 'context.id',\n '(animationend.self)': '$event.target.classList.remove(\"tui-enter\")',\n },\n})\nexport class TuiModalComponent<T> implements OnDestroy, OnInit {\n private readonly current = inject(TuiActiveZone);\n\n private readonly parent = findActive(\n inject(TuiActiveZone, {skipSelf: true}),\n tuiGetFocused(inject(DOCUMENT)),\n );\n\n public readonly context = injectContext<TuiPortalContext<T>>();\n public readonly component = signal<PolymorpheusContent<TuiPortalContext<T>>>(null);\n\n public ngOnInit(): void {\n this.current.tuiActiveZoneParentSetter = this.parent;\n }\n\n public ngOnDestroy(): void {\n this.current.tuiActiveZoneParentSetter = null;\n }\n}\n\nfunction findActive(zone: TuiActiveZone, el: Element | null): TuiActiveZone | null {\n if (!el || !zone.contains(el)) {\n return null;\n }\n\n const active = zone.children.find(\n (child) => !child['el'].matches('[tuiActiveZoneAdapter]') && child.contains(el),\n );\n\n return active ? findActive(active, el) : zone;\n}\n","import {inject, Injectable, type Type} from '@angular/core';\nimport {TUI_LEAVE} from '@taiga-ui/cdk/directives/animated';\nimport {TuiPortal} from '@taiga-ui/cdk/portals';\nimport {TuiPopupService} from '@taiga-ui/core/portals/popup';\nimport {PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\nimport {TuiModalComponent} from './modal.component';\n\n@Injectable()\nexport abstract class TuiModalService<T, K = void> extends TuiPortal<T, K> {\n protected abstract readonly content: Type<unknown>;\n protected readonly component = TuiModalComponent;\n\n constructor() {\n super(inject(TuiPopupService));\n }\n\n protected override add(\n component: PolymorpheusComponent<TuiModalComponent<T>>,\n ): () => void {\n const ref = this.service.add(component);\n const el: HTMLElement = ref.location.nativeElement;\n\n el.closest('tui-root')?.firstElementChild?.setAttribute('inert', '');\n ref.instance.component.set(new PolymorpheusComponent(this.content));\n\n return () => {\n ref.instance.component.set(null);\n ref.changeDetectorRef.detectChanges();\n el.classList.add(TUI_LEAVE);\n\n Promise.allSettled(getAnimations(el))\n .then(async () =>\n Promise.allSettled(\n getAnimations(el.firstElementChild?.firstElementChild),\n ),\n )\n .then(() => {\n // Under zoneless + provideAnimations Angular's animation engine queues\n // the modal removal but engine.flush never runs from a microtask, so\n // the element stays in DOM with `tui-leave` class. Detach it manually.\n el.closest('tui-root')?.firstElementChild?.removeAttribute('inert');\n ref.destroy();\n el.remove();\n });\n };\n }\n}\n\nfunction getAnimations(el?: Element | null): ReadonlyArray<Promise<unknown>> {\n return el?.getAnimations?.().map(async ({finished}) => finished) || [];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;MAiDa,iBAAiB,CAAA;AA3B9B,IAAA,WAAA,GAAA;AA4BqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC;QAE/B,IAAA,CAAA,MAAM,GAAG,UAAU,CAChC,MAAM,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,EACvC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAClC;QAEe,IAAA,CAAA,OAAO,GAAG,aAAa,EAAuB;AAC9C,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAA2C,IAAI,CAAC;AASrF,IAAA;IAPU,QAAQ,GAAA;QACX,IAAI,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,MAAM;IACxD;IAEO,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAI;IACjD;+GAjBS,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,YAAA,EAAA,MAAA,EAAA,kBAAA,EAAA,
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-portals-modal.mjs","sources":["../../../projects/core/portals/modal/modal.component.ts","../../../projects/core/portals/modal/modal.service.ts","../../../projects/core/portals/modal/taiga-ui-core-portals-modal.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n type OnDestroy,\n type OnInit,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiFocusTrap} from '@taiga-ui/cdk/directives/focus-trap';\nimport {type TuiPortalContext} from '@taiga-ui/cdk/portals';\nimport {tuiGetFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiScrollControls, TuiScrollRef} from '@taiga-ui/core/components/scrollbar';\nimport {\n injectContext,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\n\n@Component({\n selector: 'tui-modal',\n imports: [PolymorpheusOutlet, TuiScrollControls, TuiScrollRef],\n template: `\n <div tuiScrollRef>\n <ng-container *polymorpheusOutlet=\"component(); context: context\" />\n <tui-scroll-controls class=\"t-scrollbars\" />\n </div>\n `,\n styles: `\n [data-tui-version='${TUI_VERSION}'] {\n @import './modal.style.less';\n }\n `,\n encapsulation: ViewEncapsulation.None,\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n hostDirectives: [TuiActiveZone, TuiFocusTrap],\n host: {\n 'aria-modal': 'true',\n 'data-tui-version': TUI_VERSION,\n role: 'dialog',\n class: 'tui-enter',\n '[attr.aria-labelledby]': 'context.id',\n '(animationend.self)': '$event.target.classList.remove(\"tui-enter\")',\n },\n})\nexport class TuiModalComponent<T> implements OnDestroy, OnInit {\n private readonly current = inject(TuiActiveZone);\n\n private readonly parent = findActive(\n inject(TuiActiveZone, {skipSelf: true}),\n tuiGetFocused(inject(DOCUMENT)),\n );\n\n public readonly context = injectContext<TuiPortalContext<T>>();\n public readonly component = signal<PolymorpheusContent<TuiPortalContext<T>>>(null);\n\n public ngOnInit(): void {\n this.current.tuiActiveZoneParentSetter = this.parent;\n }\n\n public ngOnDestroy(): void {\n this.current.tuiActiveZoneParentSetter = null;\n }\n}\n\nfunction findActive(zone: TuiActiveZone, el: Element | null): TuiActiveZone | null {\n if (!el || !zone.contains(el)) {\n return null;\n }\n\n const active = zone.children.find(\n (child) => !child['el'].matches('[tuiActiveZoneAdapter]') && child.contains(el),\n );\n\n return active ? findActive(active, el) : zone;\n}\n","import {inject, Injectable, type Type} from '@angular/core';\nimport {TUI_LEAVE} from '@taiga-ui/cdk/directives/animated';\nimport {TuiPortal} from '@taiga-ui/cdk/portals';\nimport {TuiPopupService} from '@taiga-ui/core/portals/popup';\nimport {PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\nimport {TuiModalComponent} from './modal.component';\n\n@Injectable()\nexport abstract class TuiModalService<T, K = void> extends TuiPortal<T, K> {\n protected abstract readonly content: Type<unknown>;\n protected readonly component = TuiModalComponent;\n\n constructor() {\n super(inject(TuiPopupService));\n }\n\n protected override add(\n component: PolymorpheusComponent<TuiModalComponent<T>>,\n ): () => void {\n const ref = this.service.add(component);\n const el: HTMLElement = ref.location.nativeElement;\n\n el.closest('tui-root')?.firstElementChild?.setAttribute('inert', '');\n ref.instance.component.set(new PolymorpheusComponent(this.content));\n\n return () => {\n ref.instance.component.set(null);\n ref.changeDetectorRef.detectChanges();\n el.classList.add(TUI_LEAVE);\n\n Promise.allSettled(getAnimations(el))\n .then(async () =>\n Promise.allSettled(\n getAnimations(el.firstElementChild?.firstElementChild),\n ),\n )\n .then(() => {\n // Under zoneless + provideAnimations Angular's animation engine queues\n // the modal removal but engine.flush never runs from a microtask, so\n // the element stays in DOM with `tui-leave` class. Detach it manually.\n el.closest('tui-root')?.firstElementChild?.removeAttribute('inert');\n ref.destroy();\n el.remove();\n });\n };\n }\n}\n\nfunction getAnimations(el?: Element | null): ReadonlyArray<Promise<unknown>> {\n return el?.getAnimations?.().map(async ({finished}) => finished) || [];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InjectionToken, inject, computed, signal } from '@angular/core';
|
|
2
|
+
import { WA_CSS, WA_WINDOW, WA_LOCAL_STORAGE } from '@ng-web-apis/common';
|
|
2
3
|
import { DOCUMENT } from '@angular/common';
|
|
3
4
|
import { tuiProvide, tuiCreateOptions, tuiProvideOptions } from '@taiga-ui/cdk/utils/di';
|
|
4
|
-
import { WA_WINDOW, WA_LOCAL_STORAGE, WA_CSS } from '@ng-web-apis/common';
|
|
5
5
|
import { tuiWindowSize } from '@taiga-ui/cdk/utils/dom';
|
|
6
6
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
7
7
|
import { fromEvent, filter, merge, switchMap, takeUntil, share } from 'rxjs';
|
|
@@ -9,6 +9,8 @@ import { tuiExtractI18n } from '@taiga-ui/i18n/utils';
|
|
|
9
9
|
import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
|
|
10
10
|
import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
|
|
11
11
|
|
|
12
|
+
const TUI_ANCHOR_SUPPORT = new InjectionToken(ngDevMode ? 'TUI_ANCHOR_SUPPORT' : '', { factory: () => inject(WA_CSS)?.supports('anchor-name', '--my-anchor') });
|
|
13
|
+
|
|
12
14
|
const TUI_REDUCED_MOTION = new InjectionToken(ngDevMode ? 'TUI_REDUCED_MOTION' : '', {
|
|
13
15
|
factory: () => inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')
|
|
14
16
|
.matches ?? false,
|
|
@@ -308,5 +310,5 @@ function tuiAsViewport(accessor) {
|
|
|
308
310
|
* Generated bundle index. Do not edit.
|
|
309
311
|
*/
|
|
310
312
|
|
|
311
|
-
export { TUI_ANIMATIONS_SPEED, TUI_ASSETS_PATH, TUI_AUXILIARY, TUI_BACK_WORD, TUI_BREAKPOINT, TUI_CLEAR_WORD, TUI_CLOSE_WORD, TUI_COMMON_ICONS, TUI_DARK_MODE, TUI_DARK_MODE_DEFAULT_KEY, TUI_DARK_MODE_KEY, TUI_DATE_FORMAT, TUI_DEFAULT_DATE_FORMAT, TUI_DEFAULT_ERROR_MESSAGE, TUI_DEFAULT_NUMBER_FORMAT, TUI_ICON_END, TUI_ICON_REGISTRY, TUI_ICON_RESOLVER, TUI_ICON_START, TUI_MEDIA, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NUMBER_FORMAT, TUI_REDUCED_MOTION, TUI_SELECTION_STREAM, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_TEXTFIELD_VALUE, TUI_TIMELINE_SUPPORT, TUI_VALIDATION_ERRORS, TUI_VIEWPORT, tuiAsAuxiliary, tuiAsViewport, tuiAssetsPathProvider, tuiCommonIconsProvider, tuiDateFormatProvider, tuiGetIconMode, tuiIconResolverProvider, tuiIconsProvider, tuiInjectIconResolver, tuiNumberFormatProvider, tuiValidationErrorsProvider };
|
|
313
|
+
export { TUI_ANCHOR_SUPPORT, TUI_ANIMATIONS_SPEED, TUI_ASSETS_PATH, TUI_AUXILIARY, TUI_BACK_WORD, TUI_BREAKPOINT, TUI_CLEAR_WORD, TUI_CLOSE_WORD, TUI_COMMON_ICONS, TUI_DARK_MODE, TUI_DARK_MODE_DEFAULT_KEY, TUI_DARK_MODE_KEY, TUI_DATE_FORMAT, TUI_DEFAULT_DATE_FORMAT, TUI_DEFAULT_ERROR_MESSAGE, TUI_DEFAULT_NUMBER_FORMAT, TUI_ICON_END, TUI_ICON_REGISTRY, TUI_ICON_RESOLVER, TUI_ICON_START, TUI_MEDIA, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NUMBER_FORMAT, TUI_REDUCED_MOTION, TUI_SELECTION_STREAM, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_TEXTFIELD_VALUE, TUI_TIMELINE_SUPPORT, TUI_VALIDATION_ERRORS, TUI_VIEWPORT, tuiAsAuxiliary, tuiAsViewport, tuiAssetsPathProvider, tuiCommonIconsProvider, tuiDateFormatProvider, tuiGetIconMode, tuiIconResolverProvider, tuiIconsProvider, tuiInjectIconResolver, tuiNumberFormatProvider, tuiValidationErrorsProvider };
|
|
312
314
|
//# sourceMappingURL=taiga-ui-core-tokens.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-tokens.mjs","sources":["../../../projects/core/tokens/reduced-motion.ts","../../../projects/core/tokens/animations-speed.ts","../../../projects/core/tokens/assets-path.ts","../../../projects/core/tokens/auxiliary.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/breakpoint.ts","../../../projects/core/tokens/common-icons.ts","../../../projects/core/tokens/dark-mode.ts","../../../projects/core/tokens/date-format.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icon-resolver.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/textfield.ts","../../../projects/core/tokens/timeline-support.ts","../../../projects/core/tokens/validation-errors.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\nexport const TUI_REDUCED_MOTION = new InjectionToken(\n ngDevMode ? 'TUI_REDUCED_MOTION' : '',\n {\n factory: () =>\n inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')\n .matches ?? false,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_REDUCED_MOTION} from './reduced-motion';\n\n/**\n * Speed of all Taiga UI animations. 1 equals 300ms.\n */\nexport const TUI_ANIMATIONS_SPEED = new InjectionToken<number>(\n ngDevMode ? 'TUI_ANIMATIONS_SPEED' : '',\n {factory: () => (inject(TUI_REDUCED_MOTION) ? 0 : 1)},\n);\n","import {InjectionToken, type ValueProvider} from '@angular/core';\n\nexport const TUI_ASSETS_PATH = new InjectionToken(ngDevMode ? 'TUI_ASSETS_PATH' : '', {\n factory: () => 'assets/taiga-ui/icons',\n});\n\nexport function tuiAssetsPathProvider(useValue: string): ValueProvider {\n return {\n provide: TUI_ASSETS_PATH,\n useValue,\n };\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nexport const TUI_AUXILIARY = new InjectionToken(ngDevMode ? 'TUI_AUXILIARY' : '', {\n factory: () => null,\n});\n\nexport function tuiAsAuxiliary(x: Type<unknown>): Provider {\n return tuiProvide(TUI_AUXILIARY, x);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport interface TuiMedia {\n readonly desktopLarge: number;\n readonly desktopSmall: number;\n readonly mobile: number;\n readonly tablet?: number;\n}\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(ngDevMode ? 'TUI_MEDIA' : '', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1280,\n desktopLarge: Infinity,\n }),\n});\n","import {computed, inject, InjectionToken, type Signal} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiWindowSize} from '@taiga-ui/cdk/utils/dom';\n\nimport {TUI_MEDIA, type TuiMedia} from './media';\n\nexport type TuiBreakpointMediaKey = keyof Omit<TuiMedia, 'tablet'>;\n\nexport const TUI_BREAKPOINT = new InjectionToken<Signal<TuiBreakpointMediaKey>>(\n ngDevMode ? 'TUI_BREAKPOINT' : '',\n {\n factory: () => {\n const size = tuiWindowSize(inject(WA_WINDOW));\n const media = inject(TUI_MEDIA);\n const sorted: number[] = Object.values(media).sort((a, b) => a - b);\n\n const invert: Record<number, TuiBreakpointMediaKey> = Object.keys(\n media,\n ).reduce(\n (ret, key) => ({\n ...ret,\n [media[key as TuiBreakpointMediaKey]]: key,\n }),\n {},\n );\n\n return computed(() => {\n const {width} = size();\n const key = sorted.find((size) => size > width);\n const index = key || sorted[sorted.length - 1] || 0;\n\n return invert[index] ?? 'desktopLarge';\n });\n },\n },\n);\n","import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\n// TODO: Rename `ellipsis` to `more` in the next major version\nconst COMMON_ICONS: TuiCommonIcons = {\n check: '@tui.check',\n close: '@tui.x',\n error: '@tui.circle-alert',\n more: '@tui.chevron-right',\n search: '@tui.search',\n ellipsis: '@tui.ellipsis',\n decrement: '@tui.chevron-left',\n increment: '@tui.chevron-right',\n};\n\nexport interface TuiCommonIcons {\n readonly check: string;\n readonly close: string;\n readonly error: string;\n readonly more: string;\n readonly search: string;\n readonly ellipsis: string;\n readonly decrement: string;\n readonly increment: string;\n}\n\nexport const [TUI_COMMON_ICONS, tuiCommonIconsProvider] = tuiCreateOptions(COMMON_ICONS);\n","import {inject, InjectionToken, signal, type WritableSignal} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {filter, fromEvent} from 'rxjs';\n\nexport const TUI_DARK_MODE_DEFAULT_KEY = 'tuiDark';\n\nexport const TUI_DARK_MODE_KEY = new InjectionToken(\n ngDevMode ? 'TUI_DARK_MODE_KEY' : '',\n {factory: () => TUI_DARK_MODE_DEFAULT_KEY},\n);\n\nexport const TUI_DARK_MODE = new InjectionToken<\n WritableSignal<boolean> & {reset(): void}\n>(ngDevMode ? 'TUI_DARK_MODE' : '', {\n factory: () => {\n const storage = inject(WA_LOCAL_STORAGE);\n const key = inject(TUI_DARK_MODE_KEY);\n const saved = storage?.getItem(key);\n const media = inject(WA_WINDOW).matchMedia('(prefers-color-scheme: dark)');\n const result = signal(saved ? saved === 'true' : media.matches);\n // Raw setter that does not persist — used for machine-driven changes.\n const set = result.set.bind(result);\n\n // Persist an explicit choice and pin it, even when the value is\n // unchanged (e.g. picking dark while the system is already dark).\n const pin = (value: boolean): void => {\n storage?.setItem(key, String(value));\n set(value);\n };\n\n // Follow the system theme while it has not been pinned (storage empty).\n fromEvent(media, 'change')\n .pipe(\n filter(() => !storage?.getItem(key)),\n takeUntilDestroyed(),\n )\n .subscribe(() => set(media.matches));\n\n return Object.assign(result, {\n set: pin,\n update: (updater: (value: boolean) => boolean) => pin(updater(result())),\n reset: () => {\n storage?.removeItem(key);\n set(media.matches);\n },\n });\n },\n});\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {type TuiDateMode} from '@taiga-ui/cdk/date-time';\n\n/**\n * Formatting configuration for displayed dates\n */\nexport interface TuiDateFormatSettings {\n /**\n * Date format mode.\n */\n readonly mode: TuiDateMode;\n /**\n * Separator between date segments\n * @example 10.02 ('.' by default)\n */\n readonly separator: string;\n}\n\nexport const TUI_DEFAULT_DATE_FORMAT: TuiDateFormatSettings = {\n mode: 'dd/mm/yyyy',\n separator: '.',\n};\n\n/**\n * Formatting configuration for displayed dates\n */\nexport const TUI_DATE_FORMAT = new InjectionToken<Signal<TuiDateFormatSettings>>(\n ngDevMode ? 'TUI_DATE_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_DATE_FORMAT)},\n);\n\nexport function tuiDateFormatProvider(options: Partial<TuiDateFormatSettings>): Provider {\n return {\n provide: TUI_DATE_FORMAT,\n useFactory: (): Signal<TuiDateFormatSettings> => {\n const parent = inject(TUI_DATE_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_DATE_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(ngDevMode ? 'TUI_MONTHS' : '', {\n factory: tuiExtractI18n('months'),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(ngDevMode ? 'TUI_CLOSE_WORD' : '', {\n factory: tuiExtractI18n('close'),\n});\n\n/**\n * i18n 'back' word\n */\nexport const TUI_BACK_WORD = new InjectionToken(ngDevMode ? 'TUI_BACK_WORD' : '', {\n factory: tuiExtractI18n('back'),\n});\n\n/**\n * i18n 'clear' word\n */\nexport const TUI_CLEAR_WORD = new InjectionToken(ngDevMode ? 'TUI_CLEAR_WORD' : '', {\n factory: tuiExtractI18n('clear'),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_NOTHING_FOUND_MESSAGE' : '',\n {factory: tuiExtractI18n('nothingFoundMessage')},\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_DEFAULT_ERROR_MESSAGE' : '',\n {factory: tuiExtractI18n('defaultErrorMessage')},\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(ngDevMode ? 'TUI_SPIN_TEXTS' : '', {\n factory: tuiExtractI18n('spinTexts'),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n ngDevMode ? 'TUI_SHORT_WEEK_DAYS' : '',\n {factory: tuiExtractI18n('shortWeekDays')},\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_START = new InjectionToken(ngDevMode ? 'TUI_ICON_START' : '', {\n factory: () => '',\n});\n\nexport const TUI_ICON_END = new InjectionToken(ngDevMode ? 'TUI_ICON_END' : '', {\n factory: () => '',\n});\n","import {type FactoryProvider, inject, InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_REGISTRY = new InjectionToken<Record<string, string>>(\n ngDevMode ? 'TUI_ICON_REGISTRY' : '',\n {factory: () => ({})},\n);\n\nexport function tuiIconsProvider(icons: Record<string, string>): FactoryProvider {\n return {\n provide: TUI_ICON_REGISTRY,\n useFactory: () => ({\n ...(inject(TUI_ICON_REGISTRY, {skipSelf: true, optional: true}) || {}),\n ...Object.fromEntries(\n Object.entries(icons).map(([key, value]) => [\n key,\n `\"data:image/svg+xml;charset=UTF-8,${encodeURIComponent(value)}\"`,\n ]),\n ),\n }),\n };\n}\n","import {inject, InjectionToken, type Provider} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nimport {TUI_ASSETS_PATH} from './assets-path';\nimport {TUI_ICON_REGISTRY} from './icons';\n\nexport const TUI_ICON_RESOLVER = new InjectionToken<TuiStringHandler<string>>(\n ngDevMode ? 'TUI_ICON_RESOLVER' : '',\n {\n factory: () => {\n const path = inject(TUI_ASSETS_PATH);\n\n // regex for @{any text}. used as a default fallback, returns path to svg from icon pack\n return (icon) =>\n `${path}/${icon.replace(/@[a-z]+\\./i, '').replaceAll('.', '/')}.svg`;\n },\n },\n);\n\nexport function tuiGetIconMode(icon?: string | null): string | undefined {\n return icon?.match(/@([^.]*)\\./)?.[1] || icon || undefined;\n}\n\nexport function tuiInjectIconResolver(): TuiStringHandler<string> {\n const icons = inject(TUI_ICON_REGISTRY);\n const resolver = inject(TUI_ICON_RESOLVER);\n\n return (icon) => {\n if (!icon || icon.includes('/')) {\n return icon.replace(/@[a-z]+\\./i, '');\n }\n\n return icon.startsWith('@font.')\n ? icon.replace('@font.', '')\n : (icons[icon] ?? resolver(icon));\n };\n}\n\nexport function tuiIconResolverProvider(useValue: TuiStringHandler<string>): Provider {\n return {provide: TUI_ICON_RESOLVER, useValue};\n}\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {type TuiRounding} from '@taiga-ui/cdk/types';\n\nexport type TuiDecimalMode =\n /**\n * @deprecated use `TuiNumberFormatSettings[minimumFractionDigits]` instead\n */\n | 'always' // TODO(v6): delete\n | 'not-zero'\n | 'pad';\nexport type TuiDecimalSymbol = ',' | '.';\n\n/**\n * TODO(v6): use `MaskitoNumberParams` from `@maskito/kit`\n * ```ts\n * export interface TuiNumberFormatSettings extends Pick<\n * Required<MaskitoNumberParams>,\n * | 'decimalSeparator'\n * | 'maximumFractionDigits'\n * | 'minimumFractionDigits'\n * | 'minusSign'\n * | 'negativePattern'\n * | 'thousandSeparator'\n * | 'thousandSeparatorPattern'\n * > {...}\n * ```\n * It's a temporary workaround to preserve backward compatibility\n * while avoiding the need to add @maskito/kit as a peer-dependency of @taiga-ui/core.\n */\ninterface MaskitoNumberParams {\n decimalSeparator: string;\n thousandSeparator: string;\n thousandSeparatorPattern?(digits: string): readonly string[];\n minusSign?: string;\n negativePattern?: 'minusFirst' | 'prefixFirst';\n maximumFractionDigits?: number;\n minimumFractionDigits?: number;\n}\n\n/**\n * Formatting configuration for displayed numbers\n * TODO(v6): move TuiNumberFormatSettings (and its dependants) to `@taiga-ui/kit`\n */\nexport interface TuiNumberFormatSettings extends MaskitoNumberParams {\n /**\n * @deprecated use `maximumFractionDigits` instead\n */\n readonly precision: number;\n /**\n * Rounding method.\n */\n readonly rounding: TuiRounding;\n /**\n * Decimal part display mode. ('pad' by default)\n */\n readonly decimalMode: TuiDecimalMode;\n}\n\n/**\n * TODO(v6): add required props\n * ```ts\n * minusSign: CHAR_MINUS,\n * maximumFractionDigits: Number.NaN,\n * minimumFractionDigits: 0,\n * ```\n */\nexport const TUI_DEFAULT_NUMBER_FORMAT: TuiNumberFormatSettings = {\n precision: Number.NaN,\n decimalSeparator: '.',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n rounding: 'truncate',\n decimalMode: 'pad',\n negativePattern: 'prefixFirst',\n thousandSeparatorPattern: (digits) => digits.match(/\\d{1,3}(?=(?:\\d{3})*$)/g) ?? [],\n};\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<Signal<TuiNumberFormatSettings>>(\n ngDevMode ? 'TUI_NUMBER_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_NUMBER_FORMAT)},\n);\n\nexport function tuiNumberFormatProvider(\n options: Partial<TuiNumberFormatSettings>,\n): Provider {\n return {\n provide: TUI_NUMBER_FORMAT,\n useFactory: (): Signal<TuiNumberFormatSettings> => {\n const parent = inject(TUI_NUMBER_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_NUMBER_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, type Observable, share, switchMap, takeUntil} from 'rxjs';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_SELECTION_STREAM' : '',\n {\n factory: () => {\n const doc = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(doc, 'selectionchange'),\n tuiTypedFromEvent(doc, 'mouseup'),\n tuiTypedFromEvent(doc, 'mousedown').pipe(\n switchMap(() =>\n tuiTypedFromEvent(doc, 'mousemove').pipe(\n takeUntil(tuiTypedFromEvent(doc, 'mouseup')),\n ),\n ),\n ),\n tuiTypedFromEvent(doc, 'keydown'),\n tuiTypedFromEvent(doc, 'keyup'),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken, type Signal} from '@angular/core';\n\nexport const TUI_TEXTFIELD_VALUE = new InjectionToken<Signal<string>>(\n ngDevMode ? 'TUI_TEXTFIELD_VALUE' : '',\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WA_CSS} from '@ng-web-apis/common';\n\nexport const TUI_TIMELINE_SUPPORT = new InjectionToken<boolean>(\n ngDevMode ? 'TUI_TIMELINE_SUPPORT' : '',\n {factory: () => inject(WA_CSS)?.supports('animation-timeline', '--name')},\n);\n","import {InjectionToken, type Provider, type Signal} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/di';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\ntype ValidationValue = Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>;\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<ValidationValue>(\n ngDevMode ? 'TUI_VALIDATION_ERRORS' : '',\n {factory: () => ({})},\n);\n\nexport const tuiValidationErrorsProvider = (\n valueOrFactory: ValidationValue | (() => ValidationValue),\n): Provider => tuiProvideOptions(TUI_VALIDATION_ERRORS, valueOrFactory, {});\n","import {inject, InjectionToken, type Provider, type Type} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {type TuiRectAccessor} from '@taiga-ui/core/classes';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(\n ngDevMode ? 'TUI_VIEWPORT' : '',\n {\n factory: () => {\n const win = inject(WA_WINDOW);\n\n return {\n type: 'viewport',\n getClientRect() {\n const {height = 0, offsetTop = 0} = win.visualViewport || {};\n\n const rect = {\n top: 0,\n left: 0,\n right: win.innerWidth,\n bottom: win.innerHeight,\n width: win.innerWidth,\n height: height + offsetTop || win.innerHeight,\n x: 0,\n y: 0,\n };\n\n return {\n ...rect,\n toJSON: () => JSON.stringify(rect),\n };\n },\n };\n },\n },\n);\n\nexport function tuiAsViewport(accessor: Type<TuiRectAccessor>): Provider {\n return tuiProvide(TUI_VIEWPORT, accessor);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-tokens.mjs","sources":["../../../projects/core/tokens/anchor-support.ts","../../../projects/core/tokens/reduced-motion.ts","../../../projects/core/tokens/animations-speed.ts","../../../projects/core/tokens/assets-path.ts","../../../projects/core/tokens/auxiliary.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/breakpoint.ts","../../../projects/core/tokens/common-icons.ts","../../../projects/core/tokens/dark-mode.ts","../../../projects/core/tokens/date-format.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icon-resolver.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/textfield.ts","../../../projects/core/tokens/timeline-support.ts","../../../projects/core/tokens/validation-errors.ts","../../../projects/core/tokens/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {inject, InjectionToken} from '@angular/core';\nimport {WA_CSS} from '@ng-web-apis/common';\n\nexport const TUI_ANCHOR_SUPPORT = new InjectionToken<boolean>(\n ngDevMode ? 'TUI_ANCHOR_SUPPORT' : '',\n {factory: () => inject(WA_CSS)?.supports('anchor-name', '--my-anchor')},\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\nexport const TUI_REDUCED_MOTION = new InjectionToken(\n ngDevMode ? 'TUI_REDUCED_MOTION' : '',\n {\n factory: () =>\n inject(DOCUMENT).defaultView?.matchMedia?.('(prefers-reduced-motion: reduce)')\n .matches ?? false,\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_REDUCED_MOTION} from './reduced-motion';\n\n/**\n * Speed of all Taiga UI animations. 1 equals 300ms.\n */\nexport const TUI_ANIMATIONS_SPEED = new InjectionToken<number>(\n ngDevMode ? 'TUI_ANIMATIONS_SPEED' : '',\n {factory: () => (inject(TUI_REDUCED_MOTION) ? 0 : 1)},\n);\n","import {InjectionToken, type ValueProvider} from '@angular/core';\n\nexport const TUI_ASSETS_PATH = new InjectionToken(ngDevMode ? 'TUI_ASSETS_PATH' : '', {\n factory: () => 'assets/taiga-ui/icons',\n});\n\nexport function tuiAssetsPathProvider(useValue: string): ValueProvider {\n return {\n provide: TUI_ASSETS_PATH,\n useValue,\n };\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\nexport const TUI_AUXILIARY = new InjectionToken(ngDevMode ? 'TUI_AUXILIARY' : '', {\n factory: () => null,\n});\n\nexport function tuiAsAuxiliary(x: Type<unknown>): Provider {\n return tuiProvide(TUI_AUXILIARY, x);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport interface TuiMedia {\n readonly desktopLarge: number;\n readonly desktopSmall: number;\n readonly mobile: number;\n readonly tablet?: number;\n}\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(ngDevMode ? 'TUI_MEDIA' : '', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1280,\n desktopLarge: Infinity,\n }),\n});\n","import {computed, inject, InjectionToken, type Signal} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiWindowSize} from '@taiga-ui/cdk/utils/dom';\n\nimport {TUI_MEDIA, type TuiMedia} from './media';\n\nexport type TuiBreakpointMediaKey = keyof Omit<TuiMedia, 'tablet'>;\n\nexport const TUI_BREAKPOINT = new InjectionToken<Signal<TuiBreakpointMediaKey>>(\n ngDevMode ? 'TUI_BREAKPOINT' : '',\n {\n factory: () => {\n const size = tuiWindowSize(inject(WA_WINDOW));\n const media = inject(TUI_MEDIA);\n const sorted: number[] = Object.values(media).sort((a, b) => a - b);\n\n const invert: Record<number, TuiBreakpointMediaKey> = Object.keys(\n media,\n ).reduce(\n (ret, key) => ({\n ...ret,\n [media[key as TuiBreakpointMediaKey]]: key,\n }),\n {},\n );\n\n return computed(() => {\n const {width} = size();\n const key = sorted.find((size) => size > width);\n const index = key || sorted[sorted.length - 1] || 0;\n\n return invert[index] ?? 'desktopLarge';\n });\n },\n },\n);\n","import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\n// TODO: Rename `ellipsis` to `more` in the next major version\nconst COMMON_ICONS: TuiCommonIcons = {\n check: '@tui.check',\n close: '@tui.x',\n error: '@tui.circle-alert',\n more: '@tui.chevron-right',\n search: '@tui.search',\n ellipsis: '@tui.ellipsis',\n decrement: '@tui.chevron-left',\n increment: '@tui.chevron-right',\n};\n\nexport interface TuiCommonIcons {\n readonly check: string;\n readonly close: string;\n readonly error: string;\n readonly more: string;\n readonly search: string;\n readonly ellipsis: string;\n readonly decrement: string;\n readonly increment: string;\n}\n\nexport const [TUI_COMMON_ICONS, tuiCommonIconsProvider] = tuiCreateOptions(COMMON_ICONS);\n","import {inject, InjectionToken, signal, type WritableSignal} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_LOCAL_STORAGE, WA_WINDOW} from '@ng-web-apis/common';\nimport {filter, fromEvent} from 'rxjs';\n\nexport const TUI_DARK_MODE_DEFAULT_KEY = 'tuiDark';\n\nexport const TUI_DARK_MODE_KEY = new InjectionToken(\n ngDevMode ? 'TUI_DARK_MODE_KEY' : '',\n {factory: () => TUI_DARK_MODE_DEFAULT_KEY},\n);\n\nexport const TUI_DARK_MODE = new InjectionToken<\n WritableSignal<boolean> & {reset(): void}\n>(ngDevMode ? 'TUI_DARK_MODE' : '', {\n factory: () => {\n const storage = inject(WA_LOCAL_STORAGE);\n const key = inject(TUI_DARK_MODE_KEY);\n const saved = storage?.getItem(key);\n const media = inject(WA_WINDOW).matchMedia('(prefers-color-scheme: dark)');\n const result = signal(saved ? saved === 'true' : media.matches);\n // Raw setter that does not persist — used for machine-driven changes.\n const set = result.set.bind(result);\n\n // Persist an explicit choice and pin it, even when the value is\n // unchanged (e.g. picking dark while the system is already dark).\n const pin = (value: boolean): void => {\n storage?.setItem(key, String(value));\n set(value);\n };\n\n // Follow the system theme while it has not been pinned (storage empty).\n fromEvent(media, 'change')\n .pipe(\n filter(() => !storage?.getItem(key)),\n takeUntilDestroyed(),\n )\n .subscribe(() => set(media.matches));\n\n return Object.assign(result, {\n set: pin,\n update: (updater: (value: boolean) => boolean) => pin(updater(result())),\n reset: () => {\n storage?.removeItem(key);\n set(media.matches);\n },\n });\n },\n});\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {type TuiDateMode} from '@taiga-ui/cdk/date-time';\n\n/**\n * Formatting configuration for displayed dates\n */\nexport interface TuiDateFormatSettings {\n /**\n * Date format mode.\n */\n readonly mode: TuiDateMode;\n /**\n * Separator between date segments\n * @example 10.02 ('.' by default)\n */\n readonly separator: string;\n}\n\nexport const TUI_DEFAULT_DATE_FORMAT: TuiDateFormatSettings = {\n mode: 'dd/mm/yyyy',\n separator: '.',\n};\n\n/**\n * Formatting configuration for displayed dates\n */\nexport const TUI_DATE_FORMAT = new InjectionToken<Signal<TuiDateFormatSettings>>(\n ngDevMode ? 'TUI_DATE_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_DATE_FORMAT)},\n);\n\nexport function tuiDateFormatProvider(options: Partial<TuiDateFormatSettings>): Provider {\n return {\n provide: TUI_DATE_FORMAT,\n useFactory: (): Signal<TuiDateFormatSettings> => {\n const parent = inject(TUI_DATE_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_DATE_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(ngDevMode ? 'TUI_MONTHS' : '', {\n factory: tuiExtractI18n('months'),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(ngDevMode ? 'TUI_CLOSE_WORD' : '', {\n factory: tuiExtractI18n('close'),\n});\n\n/**\n * i18n 'back' word\n */\nexport const TUI_BACK_WORD = new InjectionToken(ngDevMode ? 'TUI_BACK_WORD' : '', {\n factory: tuiExtractI18n('back'),\n});\n\n/**\n * i18n 'clear' word\n */\nexport const TUI_CLEAR_WORD = new InjectionToken(ngDevMode ? 'TUI_CLEAR_WORD' : '', {\n factory: tuiExtractI18n('clear'),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_NOTHING_FOUND_MESSAGE' : '',\n {factory: tuiExtractI18n('nothingFoundMessage')},\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n ngDevMode ? 'TUI_DEFAULT_ERROR_MESSAGE' : '',\n {factory: tuiExtractI18n('defaultErrorMessage')},\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(ngDevMode ? 'TUI_SPIN_TEXTS' : '', {\n factory: tuiExtractI18n('spinTexts'),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n ngDevMode ? 'TUI_SHORT_WEEK_DAYS' : '',\n {factory: tuiExtractI18n('shortWeekDays')},\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_START = new InjectionToken(ngDevMode ? 'TUI_ICON_START' : '', {\n factory: () => '',\n});\n\nexport const TUI_ICON_END = new InjectionToken(ngDevMode ? 'TUI_ICON_END' : '', {\n factory: () => '',\n});\n","import {type FactoryProvider, inject, InjectionToken} from '@angular/core';\n\nexport const TUI_ICON_REGISTRY = new InjectionToken<Record<string, string>>(\n ngDevMode ? 'TUI_ICON_REGISTRY' : '',\n {factory: () => ({})},\n);\n\nexport function tuiIconsProvider(icons: Record<string, string>): FactoryProvider {\n return {\n provide: TUI_ICON_REGISTRY,\n useFactory: () => ({\n ...(inject(TUI_ICON_REGISTRY, {skipSelf: true, optional: true}) || {}),\n ...Object.fromEntries(\n Object.entries(icons).map(([key, value]) => [\n key,\n `\"data:image/svg+xml;charset=UTF-8,${encodeURIComponent(value)}\"`,\n ]),\n ),\n }),\n };\n}\n","import {inject, InjectionToken, type Provider} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\n\nimport {TUI_ASSETS_PATH} from './assets-path';\nimport {TUI_ICON_REGISTRY} from './icons';\n\nexport const TUI_ICON_RESOLVER = new InjectionToken<TuiStringHandler<string>>(\n ngDevMode ? 'TUI_ICON_RESOLVER' : '',\n {\n factory: () => {\n const path = inject(TUI_ASSETS_PATH);\n\n // regex for @{any text}. used as a default fallback, returns path to svg from icon pack\n return (icon) =>\n `${path}/${icon.replace(/@[a-z]+\\./i, '').replaceAll('.', '/')}.svg`;\n },\n },\n);\n\nexport function tuiGetIconMode(icon?: string | null): string | undefined {\n return icon?.match(/@([^.]*)\\./)?.[1] || icon || undefined;\n}\n\nexport function tuiInjectIconResolver(): TuiStringHandler<string> {\n const icons = inject(TUI_ICON_REGISTRY);\n const resolver = inject(TUI_ICON_RESOLVER);\n\n return (icon) => {\n if (!icon || icon.includes('/')) {\n return icon.replace(/@[a-z]+\\./i, '');\n }\n\n return icon.startsWith('@font.')\n ? icon.replace('@font.', '')\n : (icons[icon] ?? resolver(icon));\n };\n}\n\nexport function tuiIconResolverProvider(useValue: TuiStringHandler<string>): Provider {\n return {provide: TUI_ICON_RESOLVER, useValue};\n}\n","import {\n computed,\n inject,\n InjectionToken,\n type Provider,\n type Signal,\n signal,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {type TuiRounding} from '@taiga-ui/cdk/types';\n\nexport type TuiDecimalMode =\n /**\n * @deprecated use `TuiNumberFormatSettings[minimumFractionDigits]` instead\n */\n | 'always' // TODO(v6): delete\n | 'not-zero'\n | 'pad';\nexport type TuiDecimalSymbol = ',' | '.';\n\n/**\n * TODO(v6): use `MaskitoNumberParams` from `@maskito/kit`\n * ```ts\n * export interface TuiNumberFormatSettings extends Pick<\n * Required<MaskitoNumberParams>,\n * | 'decimalSeparator'\n * | 'maximumFractionDigits'\n * | 'minimumFractionDigits'\n * | 'minusSign'\n * | 'negativePattern'\n * | 'thousandSeparator'\n * | 'thousandSeparatorPattern'\n * > {...}\n * ```\n * It's a temporary workaround to preserve backward compatibility\n * while avoiding the need to add @maskito/kit as a peer-dependency of @taiga-ui/core.\n */\ninterface MaskitoNumberParams {\n decimalSeparator: string;\n thousandSeparator: string;\n thousandSeparatorPattern?(digits: string): readonly string[];\n minusSign?: string;\n negativePattern?: 'minusFirst' | 'prefixFirst';\n maximumFractionDigits?: number;\n minimumFractionDigits?: number;\n}\n\n/**\n * Formatting configuration for displayed numbers\n * TODO(v6): move TuiNumberFormatSettings (and its dependants) to `@taiga-ui/kit`\n */\nexport interface TuiNumberFormatSettings extends MaskitoNumberParams {\n /**\n * @deprecated use `maximumFractionDigits` instead\n */\n readonly precision: number;\n /**\n * Rounding method.\n */\n readonly rounding: TuiRounding;\n /**\n * Decimal part display mode. ('pad' by default)\n */\n readonly decimalMode: TuiDecimalMode;\n}\n\n/**\n * TODO(v6): add required props\n * ```ts\n * minusSign: CHAR_MINUS,\n * maximumFractionDigits: Number.NaN,\n * minimumFractionDigits: 0,\n * ```\n */\nexport const TUI_DEFAULT_NUMBER_FORMAT: TuiNumberFormatSettings = {\n precision: Number.NaN,\n decimalSeparator: '.',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n rounding: 'truncate',\n decimalMode: 'pad',\n negativePattern: 'prefixFirst',\n thousandSeparatorPattern: (digits) => digits.match(/\\d{1,3}(?=(?:\\d{3})*$)/g) ?? [],\n};\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<Signal<TuiNumberFormatSettings>>(\n ngDevMode ? 'TUI_NUMBER_FORMAT' : '',\n {factory: () => signal(TUI_DEFAULT_NUMBER_FORMAT)},\n);\n\nexport function tuiNumberFormatProvider(\n options: Partial<TuiNumberFormatSettings>,\n): Provider {\n return {\n provide: TUI_NUMBER_FORMAT,\n useFactory: (): Signal<TuiNumberFormatSettings> => {\n const parent = inject(TUI_NUMBER_FORMAT, {optional: true, skipSelf: true});\n\n return computed(() => ({\n ...(parent?.() || TUI_DEFAULT_NUMBER_FORMAT),\n ...options,\n }));\n },\n };\n}\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {merge, type Observable, share, switchMap, takeUntil} from 'rxjs';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_SELECTION_STREAM' : '',\n {\n factory: () => {\n const doc = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(doc, 'selectionchange'),\n tuiTypedFromEvent(doc, 'mouseup'),\n tuiTypedFromEvent(doc, 'mousedown').pipe(\n switchMap(() =>\n tuiTypedFromEvent(doc, 'mousemove').pipe(\n takeUntil(tuiTypedFromEvent(doc, 'mouseup')),\n ),\n ),\n ),\n tuiTypedFromEvent(doc, 'keydown'),\n tuiTypedFromEvent(doc, 'keyup'),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken, type WritableSignal} from '@angular/core';\n\nexport const TUI_TEXTFIELD_VALUE = new InjectionToken<WritableSignal<string>>(\n ngDevMode ? 'TUI_TEXTFIELD_VALUE' : '',\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {WA_CSS} from '@ng-web-apis/common';\n\nexport const TUI_TIMELINE_SUPPORT = new InjectionToken<boolean>(\n ngDevMode ? 'TUI_TIMELINE_SUPPORT' : '',\n {factory: () => inject(WA_CSS)?.supports('animation-timeline', '--name')},\n);\n","import {InjectionToken, type Provider, type Signal} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/di';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\ntype ValidationValue = Record<string, PolymorpheusContent | Signal<PolymorpheusContent>>;\n\nexport const TUI_VALIDATION_ERRORS = new InjectionToken<ValidationValue>(\n ngDevMode ? 'TUI_VALIDATION_ERRORS' : '',\n {factory: () => ({})},\n);\n\nexport const tuiValidationErrorsProvider = (\n valueOrFactory: ValidationValue | (() => ValidationValue),\n): Provider => tuiProvideOptions(TUI_VALIDATION_ERRORS, valueOrFactory, {});\n","import {inject, InjectionToken, type Provider, type Type} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\nimport {type TuiRectAccessor} from '@taiga-ui/core/classes';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(\n ngDevMode ? 'TUI_VIEWPORT' : '',\n {\n factory: () => {\n const win = inject(WA_WINDOW);\n\n return {\n type: 'viewport',\n getClientRect() {\n const {height = 0, offsetTop = 0} = win.visualViewport || {};\n\n const rect = {\n top: 0,\n left: 0,\n right: win.innerWidth,\n bottom: win.innerHeight,\n width: win.innerWidth,\n height: height + offsetTop || win.innerHeight,\n x: 0,\n y: 0,\n };\n\n return {\n ...rect,\n toJSON: () => JSON.stringify(rect),\n };\n },\n };\n },\n },\n);\n\nexport function tuiAsViewport(accessor: Type<TuiRectAccessor>): Provider {\n return tuiProvide(TUI_VIEWPORT, accessor);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.23.0-canary.0a07bcd",
|
|
4
4
|
"description": "Core library for creating Angular components and applications using Taiga UI",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
"@ng-web-apis/intersection-observer": "^5.3.0",
|
|
42
42
|
"@ng-web-apis/mutation-observer": "^5.3.0",
|
|
43
43
|
"@ng-web-apis/platform": "^5.3.0",
|
|
44
|
-
"@taiga-ui/cdk": "5.
|
|
44
|
+
"@taiga-ui/cdk": "5.23.0",
|
|
45
45
|
"@taiga-ui/event-plugins": "^5.0.0",
|
|
46
|
-
"@taiga-ui/i18n": "5.
|
|
46
|
+
"@taiga-ui/i18n": "5.23.0",
|
|
47
47
|
"@taiga-ui/polymorpheus": "^5.0.1",
|
|
48
|
-
"@taiga-ui/styles": "5.
|
|
48
|
+
"@taiga-ui/styles": "5.23.0",
|
|
49
49
|
"rxjs": ">=7.0.0"
|
|
50
50
|
},
|
|
51
51
|
"schematics": "./schematics/collection.json",
|
|
@@ -143,14 +143,14 @@
|
|
|
143
143
|
"types": "./components/link/index.d.ts",
|
|
144
144
|
"default": "./fesm2022/taiga-ui-core-components-link.mjs"
|
|
145
145
|
},
|
|
146
|
-
"./components/notification": {
|
|
147
|
-
"types": "./components/notification/index.d.ts",
|
|
148
|
-
"default": "./fesm2022/taiga-ui-core-components-notification.mjs"
|
|
149
|
-
},
|
|
150
146
|
"./components/loader": {
|
|
151
147
|
"types": "./components/loader/index.d.ts",
|
|
152
148
|
"default": "./fesm2022/taiga-ui-core-components-loader.mjs"
|
|
153
149
|
},
|
|
150
|
+
"./components/notification": {
|
|
151
|
+
"types": "./components/notification/index.d.ts",
|
|
152
|
+
"default": "./fesm2022/taiga-ui-core-components-notification.mjs"
|
|
153
|
+
},
|
|
154
154
|
"./components/radio": {
|
|
155
155
|
"types": "./components/radio/index.d.ts",
|
|
156
156
|
"default": "./fesm2022/taiga-ui-core-components-radio.mjs"
|
|
@@ -227,10 +227,6 @@
|
|
|
227
227
|
"types": "./portals/dialog/index.d.ts",
|
|
228
228
|
"default": "./fesm2022/taiga-ui-core-portals-dialog.mjs"
|
|
229
229
|
},
|
|
230
|
-
"./portals/dropdown": {
|
|
231
|
-
"types": "./portals/dropdown/index.d.ts",
|
|
232
|
-
"default": "./fesm2022/taiga-ui-core-portals-dropdown.mjs"
|
|
233
|
-
},
|
|
234
230
|
"./portals/hint": {
|
|
235
231
|
"types": "./portals/hint/index.d.ts",
|
|
236
232
|
"default": "./fesm2022/taiga-ui-core-portals-hint.mjs"
|
|
@@ -239,6 +235,10 @@
|
|
|
239
235
|
"types": "./portals/modal/index.d.ts",
|
|
240
236
|
"default": "./fesm2022/taiga-ui-core-portals-modal.mjs"
|
|
241
237
|
},
|
|
238
|
+
"./portals/dropdown": {
|
|
239
|
+
"types": "./portals/dropdown/index.d.ts",
|
|
240
|
+
"default": "./fesm2022/taiga-ui-core-portals-dropdown.mjs"
|
|
241
|
+
},
|
|
242
242
|
"./portals/popup": {
|
|
243
243
|
"types": "./portals/popup/index.d.ts",
|
|
244
244
|
"default": "./fesm2022/taiga-ui-core-portals-popup.mjs"
|
|
@@ -10,7 +10,7 @@ import { type Observable } from 'rxjs';
|
|
|
10
10
|
* dismissible - close dialog by Esc button or click on overlay (true by default)
|
|
11
11
|
* label - string title for the dialog ('' by default)
|
|
12
12
|
* required - dismissing or closing dialog by X button throws (false by default)
|
|
13
|
-
* size - size of the dialog ('m' by default)
|
|
13
|
+
* size - size of the dialog ('m' by default, null for content width)
|
|
14
14
|
*/
|
|
15
15
|
export interface TuiDialogOptions<I> {
|
|
16
16
|
readonly appearance: string;
|
|
@@ -19,7 +19,7 @@ export interface TuiDialogOptions<I> {
|
|
|
19
19
|
readonly dismissible: Observable<boolean> | boolean;
|
|
20
20
|
readonly label: string;
|
|
21
21
|
readonly required: boolean;
|
|
22
|
-
readonly size: TuiSizeL | TuiSizeS;
|
|
22
|
+
readonly size: TuiSizeL | TuiSizeS | null;
|
|
23
23
|
}
|
|
24
24
|
export type TuiDialogContext<O = void, I = undefined> = TuiPortalContext<TuiDialogOptions<I>, O>;
|
|
25
25
|
export declare const TUI_DIALOG_OPTIONS: import("@angular/core").InjectionToken<TuiDialogOptions<void>>, tuiDialogOptionsProvider: (item: Partial<TuiDialogOptions<void>> | (() => Partial<TuiDialogOptions<void>>)) => import("@angular/core").FactoryProvider;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { type AfterViewInit, type ElementRef, type OnDestroy } from '@angular/core';
|
|
1
2
|
import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
|
|
2
3
|
import { TuiRectAccessor } from '@taiga-ui/core/classes';
|
|
3
4
|
import { TuiDropdownDriver } from './dropdown.driver';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class TuiDropdownContext extends TuiRectAccessor {
|
|
6
|
+
export declare class TuiDropdownContext extends TuiRectAccessor implements ElementRef<HTMLElement>, AfterViewInit, OnDestroy {
|
|
6
7
|
private readonly isTouch;
|
|
7
8
|
private currentRect;
|
|
8
9
|
protected readonly userSelect: import("@angular/core").Signal<"none" | null>;
|
|
@@ -12,6 +13,9 @@ export declare class TuiDropdownContext extends TuiRectAccessor {
|
|
|
12
13
|
protected readonly el: HTMLElement;
|
|
13
14
|
protected readonly sub: import("rxjs").Subscription;
|
|
14
15
|
readonly type = "dropdown";
|
|
16
|
+
readonly nativeElement: HTMLDivElement;
|
|
17
|
+
ngAfterViewInit(): void;
|
|
18
|
+
ngOnDestroy(): void;
|
|
15
19
|
getClientRect(): DOMRect;
|
|
16
20
|
protected onContextMenu(x: number, y: number): void;
|
|
17
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownContext, never>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class TuiDropdownHost {
|
|
3
|
+
protected readonly anchor: string;
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownHost, never>;
|
|
5
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownHost, never, never, {}, {}, never, never, true, never>;
|
|
6
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { type OnDestroy, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { type ElementRef, type OnDestroy, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { type TuiBooleanHandler } from '@taiga-ui/cdk/types';
|
|
3
3
|
import { TuiDriver, type TuiRectAccessor } from '@taiga-ui/core/classes';
|
|
4
4
|
import { TuiDropdownDirective } from './dropdown.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAccessor, OnDestroy {
|
|
6
|
+
export declare class TuiDropdownSelection extends TuiDriver implements ElementRef<HTMLElement>, TuiRectAccessor, OnDestroy {
|
|
7
7
|
private ghost?;
|
|
8
8
|
protected readonly doc: Document;
|
|
9
9
|
protected readonly vcr: ViewContainerRef;
|
|
@@ -13,11 +13,12 @@ export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAc
|
|
|
13
13
|
protected readonly stream$: import("rxjs").Observable<boolean>;
|
|
14
14
|
protected range: Range;
|
|
15
15
|
readonly type = "dropdown";
|
|
16
|
+
readonly nativeElement: HTMLDivElement;
|
|
16
17
|
readonly tuiDropdownSelection: import("@angular/core").InputSignal<string | TuiBooleanHandler<Range>>;
|
|
17
18
|
readonly tuiDropdownSelectionPosition: import("@angular/core").InputSignal<"selection" | "tag" | "word">;
|
|
18
19
|
constructor();
|
|
19
|
-
getClientRect(): DOMRect;
|
|
20
20
|
ngOnDestroy(): void;
|
|
21
|
+
getClientRect(): DOMRect;
|
|
21
22
|
private get ghostHost();
|
|
22
23
|
private getRange;
|
|
23
24
|
/**
|
|
@@ -38,6 +39,7 @@ export declare class TuiDropdownSelection extends TuiDriver implements TuiRectAc
|
|
|
38
39
|
*/
|
|
39
40
|
private initGhost;
|
|
40
41
|
private isCaretVisible;
|
|
42
|
+
private updateAnchor;
|
|
41
43
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownSelection, never>;
|
|
42
44
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownSelection, "[tuiDropdownSelection]", never, { "tuiDropdownSelection": { "alias": "tuiDropdownSelection"; "required": false; "isSignal": true; }; "tuiDropdownSelectionPosition": { "alias": "tuiDropdownSelectionPosition"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
43
45
|
}
|
|
@@ -3,9 +3,10 @@ import { type TuiContext } from '@taiga-ui/cdk/types';
|
|
|
3
3
|
import { TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
|
|
4
4
|
import { PolymorpheusComponent, type PolymorpheusContent, PolymorpheusTemplate } from '@taiga-ui/polymorpheus';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./dropdown.
|
|
7
|
-
import * as i2 from "./dropdown
|
|
8
|
-
import * as i3 from "./dropdown-
|
|
6
|
+
import * as i1 from "./dropdown-host.directive";
|
|
7
|
+
import * as i2 from "./dropdown.driver";
|
|
8
|
+
import * as i3 from "./dropdown-a11y.directive";
|
|
9
|
+
import * as i4 from "./dropdown-position.directive";
|
|
9
10
|
export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy, TuiRectAccessor, TuiVehicle {
|
|
10
11
|
private readonly injector;
|
|
11
12
|
private readonly refresh$;
|
|
@@ -26,5 +27,5 @@ export declare class TuiDropdownDirective implements AfterViewChecked, OnDestroy
|
|
|
26
27
|
getClientRect(): DOMRect;
|
|
27
28
|
toggle(show: boolean): void;
|
|
28
29
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownDirective, never>;
|
|
29
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDirective, "[tuiDropdown]:not(ng-container):not(ng-template)", ["tuiDropdown"], { "content": { "alias": "tuiDropdown"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.
|
|
30
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownDirective, "[tuiDropdown]:not(ng-container):not(ng-template)", ["tuiDropdown"], { "content": { "alias": "tuiDropdown"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiDropdownHost; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiDropdownDriverDirective; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiDropdownA11y; inputs: { "tuiDropdownRole": "tuiDropdownRole"; }; outputs: {}; }, { directive: typeof i4.TuiDropdownPosition; inputs: {}; outputs: { "tuiDropdownDirectionChange": "tuiDropdownDirectionChange"; }; }]>;
|
|
30
31
|
}
|
|
@@ -5,3 +5,4 @@ import { type ElementRef, InjectionToken, type Type } from '@angular/core';
|
|
|
5
5
|
export declare const TUI_DROPDOWN_COMPONENT: InjectionToken<Type<any>>;
|
|
6
6
|
export declare const TUI_DROPDOWN_CONTEXT: InjectionToken<Record<any, any>>;
|
|
7
7
|
export declare const TUI_DROPDOWN_HOST: InjectionToken<ElementRef<Element>>;
|
|
8
|
+
export declare const TUI_DROPDOWN_ANCHOR: InjectionToken<ElementRef<Element>>;
|
|
@@ -8,6 +8,7 @@ export * from './dropdown-anchor.directive';
|
|
|
8
8
|
export * from './dropdown-close.directive';
|
|
9
9
|
export * from './dropdown-content.directive';
|
|
10
10
|
export * from './dropdown-context.directive';
|
|
11
|
+
export * from './dropdown-host.directive';
|
|
11
12
|
export * from './dropdown-hover.directive';
|
|
12
13
|
export * from './dropdown-hover.options';
|
|
13
14
|
export * from './dropdown-limit-width';
|
package/tokens/index.d.ts
CHANGED
package/tokens/textfield.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { InjectionToken, type
|
|
2
|
-
export declare const TUI_TEXTFIELD_VALUE: InjectionToken<
|
|
1
|
+
import { InjectionToken, type WritableSignal } from '@angular/core';
|
|
2
|
+
export declare const TUI_TEXTFIELD_VALUE: InjectionToken<WritableSignal<string>>;
|