@taiga-ui/core 3.10.0 → 3.12.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/bundles/taiga-ui-core-components-alert.umd.js +3 -1
- package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +21 -21
- package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +1 -1
- package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-root.umd.js +1 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js +3 -1
- package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-svg.umd.js +21 -10
- package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
- package/bundles/taiga-ui-core-components-tooltip.umd.js +3 -1
- package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-dropdown.umd.js +32 -15
- package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-hint.umd.js +3 -1
- package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +3 -1
- package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
- package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
- package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -1
- package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
- package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +3 -1
- package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
- package/bundles/taiga-ui-core-pipes-format-date.umd.js.map +1 -1
- package/bundles/taiga-ui-core-services.umd.js +3 -1
- package/bundles/taiga-ui-core-services.umd.js.map +1 -1
- package/bundles/taiga-ui-core-tokens.umd.js +3 -1
- package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
- package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
- package/components/alert/alert.component.d.ts +1 -1
- package/components/button/button-options.d.ts +3 -3
- package/components/button/button.component.d.ts +2 -2
- package/components/calendar/calendar.component.d.ts +1 -1
- package/components/data-list/data-list.component.d.ts +1 -1
- package/components/data-list/option/option.component.d.ts +1 -1
- package/components/link/link.component.d.ts +1 -1
- package/components/loader/loader.component.d.ts +1 -1
- package/components/notification/notification.component.d.ts +1 -1
- package/components/primitive-calendar/primitive-calendar.component.d.ts +2 -2
- package/components/primitive-textfield/primitive-textfield.component.d.ts +3 -3
- package/components/primitive-year-picker/primitive-year-picker.component.d.ts +1 -1
- package/components/scroll-controls/scrollbar.directive.d.ts +1 -1
- package/components/svg/svg.component.d.ts +5 -4
- package/components/tooltip/tooltip.component.d.ts +1 -1
- package/directives/dropdown/dropdown-position-sided.directive.d.ts +5 -3
- package/directives/dropdown/dropdown-position.directive.d.ts +1 -1
- package/directives/dropdown/dropdown-selection.directive.d.ts +1 -1
- package/directives/dropdown/dropdown.component.d.ts +1 -1
- package/directives/hint/hint.component.d.ts +1 -1
- package/directives/scroll-into-view/scroll-into-view.directive.d.ts +1 -1
- package/directives/textfield-controller/textfield-icon-left.directive.d.ts +1 -1
- package/directives/textfield-controller/textfield-icon.directive.d.ts +1 -1
- package/directives/textfield-controller/textfield-size.directive.d.ts +1 -1
- package/directives/textfield-controller/textfield.controller.d.ts +3 -3
- package/esm2015/components/alert/alert.component.js +5 -3
- package/esm2015/components/button/button-options.js +1 -1
- package/esm2015/components/calendar/calendar.component.js +1 -1
- package/esm2015/components/data-list/option/option.component.js +1 -1
- package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +5 -5
- package/esm2015/components/link/link.component.js +1 -1
- package/esm2015/components/notification/notification.component.js +1 -1
- package/esm2015/components/primitive-calendar/primitive-calendar.component.js +2 -2
- package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +1 -1
- package/esm2015/components/primitive-textfield/primitive-textfield.component.js +1 -1
- package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +1 -1
- package/esm2015/components/root/root.component.js +1 -1
- package/esm2015/components/scroll-controls/scrollbar.directive.js +5 -3
- package/esm2015/components/svg/svg.component.js +24 -13
- package/esm2015/components/tooltip/tooltip.component.js +5 -3
- package/esm2015/directives/dropdown/dropdown-position-sided.directive.js +26 -8
- package/esm2015/directives/dropdown/dropdown-position.directive.js +5 -6
- package/esm2015/directives/dropdown/dropdown-selection.directive.js +1 -1
- package/esm2015/directives/dropdown/dropdown.component.js +5 -3
- package/esm2015/directives/hint/hint.component.js +5 -3
- package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +5 -3
- package/esm2015/directives/textfield-controller/textfield-icon-left.directive.js +1 -1
- package/esm2015/directives/textfield-controller/textfield-icon.directive.js +1 -1
- package/esm2015/directives/textfield-controller/textfield-size.directive.js +1 -1
- package/esm2015/directives/textfield-controller/textfield.controller.js +1 -1
- package/esm2015/interfaces/alert-options.js +1 -1
- package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -2
- package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +5 -3
- package/esm2015/mask/text-mask-list.js +1 -1
- package/esm2015/mask/text-mask-pipe-handler.js +1 -1
- package/esm2015/pipes/format-date/format-date.pipe.js +1 -1
- package/esm2015/services/router-link-active.service.js +5 -3
- package/esm2015/tokens/svg-content-processor.js +4 -2
- package/esm2015/tokens/svg-src-processor.js +1 -1
- package/esm2015/types/brightness.js +1 -1
- package/esm2015/types/decimal-symbol.js +1 -1
- package/esm2015/types/decimal.js +1 -1
- package/esm2015/types/dialog-size.js +1 -1
- package/esm2015/types/direction.js +1 -1
- package/esm2015/types/dropdown-width.js +1 -1
- package/esm2015/types/hint-direction.js +1 -1
- package/esm2015/types/marker-handler.js +1 -1
- package/esm2015/types/option-role.js +1 -1
- package/esm2015/types/orientation.js +1 -1
- package/esm2015/types/size.js +1 -1
- package/esm2015/utils/mask/create-number-mask.js +1 -1
- package/esm2015/utils/miscellaneous/size-bigger.js +1 -1
- package/fesm2015/taiga-ui-core-components-alert.js +4 -2
- package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +5 -5
- package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-calendar.js +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-root.js +1 -1
- package/fesm2015/taiga-ui-core-components-scroll-controls.js +4 -2
- package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-svg.js +23 -12
- package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
- package/fesm2015/taiga-ui-core-components-tooltip.js +4 -2
- package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-dropdown.js +31 -13
- package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-hint.js +4 -2
- package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +4 -2
- package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
- package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
- package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -1
- package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
- package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +4 -2
- package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
- package/fesm2015/taiga-ui-core-pipes-format-date.js.map +1 -1
- package/fesm2015/taiga-ui-core-services.js +4 -2
- package/fesm2015/taiga-ui-core-services.js.map +1 -1
- package/fesm2015/taiga-ui-core-tokens.js +3 -1
- package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
- package/fesm2015/taiga-ui-core-types.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
- package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
- package/interfaces/alert-options.d.ts +1 -1
- package/internal/svg-defs-host/svg-defs-host.component.d.ts +1 -1
- package/mask/text-mask-list.d.ts +1 -1
- package/mask/text-mask-pipe-handler.d.ts +1 -1
- package/package.json +10 -10
- package/pipes/format-date/format-date.pipe.d.ts +1 -1
- package/services/router-link-active.service.d.ts +1 -1
- package/tokens/svg-content-processor.d.ts +3 -2
- package/tokens/svg-src-processor.d.ts +3 -2
- package/types/brightness.d.ts +1 -1
- package/types/decimal-symbol.d.ts +1 -1
- package/types/decimal.d.ts +1 -1
- package/types/dialog-size.d.ts +1 -1
- package/types/direction.d.ts +1 -1
- package/types/dropdown-width.d.ts +1 -1
- package/types/hint-direction.d.ts +1 -1
- package/types/marker-handler.d.ts +1 -1
- package/types/option-role.d.ts +1 -1
- package/types/orientation.d.ts +1 -1
- package/types/size.d.ts +3 -3
- package/utils/miscellaneous/size-bigger.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-services.js","sources":["../../../projects/core/services/format-date.service.ts","../../../projects/core/services/hint.service.ts","../../../projects/core/services/night-theme.service.ts","../../../projects/core/services/position.service.ts","../../../projects/core/services/router-link-active.service.ts","../../../projects/core/services/svg.service.ts","../../../projects/core/services/taiga-ui-core-services.ts"],"sourcesContent":["import {Inject, Injectable, LOCALE_ID} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiFormatDateService {\n constructor(@Inject(LOCALE_ID) protected readonly locale: string) {}\n\n format(timestamp: number): Observable<string> {\n return of(\n new Date(timestamp).toLocaleTimeString(this.locale, {\n hour: `numeric`,\n minute: `2-digit`,\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {TuiPortalItem} from '@taiga-ui/core/interfaces';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for displaying hints/tooltips\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiHintService extends BehaviorSubject<readonly TuiPortalItem[]> {\n constructor() {\n super([]);\n }\n\n add(directive: TuiPortalItem): void {\n this.next(this.value.concat(directive));\n }\n\n remove(directive: TuiPortalItem): void {\n if (this.value.includes(directive)) {\n this.next(this.value.filter(hint => hint !== directive));\n }\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiNightThemeService extends Observable<boolean> {\n constructor(@Inject(WINDOW) windowRef: Window) {\n const media = windowRef.matchMedia(`(prefers-color-scheme: dark)`);\n const media$ = fromEvent(media, `change`).pipe(\n startWith(null),\n map(() => media.matches),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefree} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiPositionService extends Observable<TuiPoint> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(ANIMATION_FRAME) animationFrame: Observable<unknown>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiPositionAccessor) accessor: TuiPositionAccessor,\n ) {\n super(subscriber =>\n animationFrame\n .pipe(\n map(() => nativeElement.getBoundingClientRect()),\n map(rect => accessor.getPosition(rect)),\n tuiZonefree(ngZone),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Inject, Injectable, NgZone, Optional} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {TuiDestroyService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {EMPTY, Observable} from 'rxjs';\nimport {distinctUntilChanged, map, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiRouterLinkActiveService extends Observable<boolean> {\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n routerLinkActive: RouterLinkActive | null,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n const stream$ = routerLinkActive\n ? animationFrame$.pipe(\n map(() => routerLinkActive.isActive),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n )\n : EMPTY;\n\n super(subscriber => stream$.subscribe(subscriber));\n }\n}\n","import {Inject, Injectable, Optional, Sanitizer, SecurityContext} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_ICONS, TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/core/utils/dom';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSvgService {\n private originals: Record<string, string> = {};\n\n readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor(\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_ICONS) icons: Record<string, string>,\n ) {\n this.define(icons);\n }\n\n define(icons: Record<string, string>): void {\n const {value} = this.items$;\n\n Object.keys(icons).forEach(key => {\n this.defineIcon(key, icons[key], value);\n });\n\n this.items$.next(value);\n }\n\n getOriginal(name: string): string | null {\n return this.originals[name] || null;\n }\n\n private defineIcon(name: string, src: string, map: Map<string, SafeHtml>): void {\n if (map.has(name)) {\n return;\n }\n\n const parsed = this.parseSrc(name, src);\n\n if (!parsed) {\n tuiAssert.assert(false, `Unable to parse given SVG src`);\n\n return;\n }\n\n map.set(name, parsed);\n this.originals = {\n ...this.originals,\n [name]: src,\n };\n }\n\n private parseSrc(name: string, src: string): SafeHtml {\n return this.sanitize(tuiProcessIcon(src, name));\n }\n\n private sanitize(src: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(\n (this.tuiSanitizer\n ? this.tuiSanitizer.sanitize(SecurityContext.HTML, src)\n : this.sanitizer.sanitize(SecurityContext.HTML, src)) || ``,\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;MAMa,oBAAoB,CAAA;AAC7B,IAAA,WAAA,CAAkD,MAAc,EAAA;QAAd,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;KAAI;AAEpE,IAAA,MAAM,CAAC,SAAiB,EAAA;AACpB,QAAA,OAAO,EAAE,CACL,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE;AAChD,YAAA,IAAI,EAAE,CAAS,OAAA,CAAA;AACf,YAAA,MAAM,EAAE,CAAS,OAAA,CAAA;AACpB,SAAA,CAAC,CACL,CAAC;KACL;;AAVQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBACT,SAAS,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AADpB,oBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFjB,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;;0BAEgB,MAAM;2BAAC,SAAS,CAAA;;;ACHjC;;AAEG;AAIG,MAAO,cAAe,SAAQ,eAAyC,CAAA;AACzE,IAAA,WAAA,GAAA;QACI,KAAK,CAAC,EAAE,CAAC,CAAC;KACb;AAED,IAAA,GAAG,CAAC,SAAwB,EAAA;AACxB,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;KAC3C;AAED,IAAA,MAAM,CAAC,SAAwB,EAAA;QAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC;AAC5D,SAAA;KACJ;;4GAbQ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFX,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;;;ACDK,MAAO,oBAAqB,SAAQ,UAAmB,CAAA;AACzD,IAAA,WAAA,CAA4B,SAAiB,EAAA;QACzC,MAAM,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC,CAAA,4BAAA,CAA8B,CAAC,CAAC;AACnE,QAAA,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,CAAQ,MAAA,CAAA,CAAC,CAAC,IAAI,CAC1C,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,EACxB,KAAK,EAAE,CACV,CAAC;AAEF,QAAA,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACrD;;AAVQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBACT,MAAM,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AADjB,oBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFjB,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;0DAE0C,MAAM,EAAA,UAAA,EAAA,CAAA;0BAAhC,MAAM;2BAAC,MAAM,CAAA;;;ACAxB,MAAO,kBAAmB,SAAQ,UAAoB,CAAA;IACxD,WACwB,CAAA,EAAC,aAAa,EAA0B,EACnC,cAAmC,EAC5C,MAAc,EACD,QAA6B,EAAA;AAE1D,QAAA,KAAK,CAAC,UAAU,IACZ,cAAc;AACT,aAAA,IAAI,CACD,GAAG,CAAC,MAAM,aAAa,CAAC,qBAAqB,EAAE,CAAC,EAChD,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EACvC,WAAW,CAAC,MAAM,CAAC,CACtB;AACA,aAAA,SAAS,CAAC,UAAU,CAAC,CAC7B,CAAC;KACL;;AAhBQ,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,kBAEf,UAAU,EAAA,EAAA,EAAA,KAAA,EACV,eAAe,EACf,EAAA,EAAA,KAAA,EAAA,MAAM,aACN,mBAAmB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;oHALtB,kBAAkB,EAAA,CAAA,CAAA;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;;0BAGF,MAAM;2BAAC,UAAU,CAAA;;0BACjB,MAAM;2BAAC,eAAe,CAAA;;0BACtB,MAAM;2BAAC,MAAM,CAAA;;0BACb,MAAM;2BAAC,mBAAmB,CAAA;;;ACN7B,MAAO,0BAA2B,SAAQ,UAAmB,CAAA;AAC/D,IAAA,WAAA,CAGI,gBAAyC,EACzB,MAAc,EACL,eAAmC,EACjC,QAA2B,EAAA;QAEtD,MAAM,OAAO,GAAG,gBAAgB;cAC1B,eAAe,CAAC,IAAI,CAChB,GAAG,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,EACpC,oBAAoB,EAAE,EACtB,gBAAgB,CAAC,MAAM,CAAC,EACxB,SAAS,CAAC,QAAQ,CAAC,CACtB;cACD,KAAK,CAAC;AAEZ,QAAA,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACtD;;AAnBQ,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,0BAA0B,kBAGvB,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAEhB,MAAM,EACN,EAAA,EAAA,KAAA,EAAA,eAAe,aACf,iBAAiB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;4HAPpB,0BAA0B,EAAA,CAAA,CAAA;4FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBADtC,UAAU;;0BAGF,QAAQ;;0BACR,MAAM;2BAAC,gBAAgB,CAAA;;0BAEvB,MAAM;2BAAC,MAAM,CAAA;;0BACb,MAAM;2BAAC,eAAe,CAAA;;0BACtB,MAAM;2BAAC,iBAAiB,CAAA;;;ACRjC;;AAEG;MAIU,aAAa,CAAA;AAKtB,IAAA,WAAA,CAGqB,YAA8B,EACR,SAAuB,EAC3C,KAA6B,EAAA;QAF/B,IAAY,CAAA,YAAA,GAAZ,YAAY,CAAkB;QACR,IAAS,CAAA,SAAA,GAAT,SAAS,CAAc;QAR1D,IAAS,CAAA,SAAA,GAA2B,EAAE,CAAC;QAEtC,IAAM,CAAA,MAAA,GAAG,IAAI,eAAe,CAAwB,IAAI,GAAG,EAAE,CAAC,CAAC;AASpE,QAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACtB;AAED,IAAA,MAAM,CAAC,KAA6B,EAAA;AAChC,QAAA,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,MAAM,CAAC;QAE5B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,IAAG;AAC7B,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;AAC5C,SAAC,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;AAED,IAAA,WAAW,CAAC,IAAY,EAAA;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;KACvC;AAEO,IAAA,UAAU,CAAC,IAAY,EAAE,GAAW,EAAE,GAA0B,EAAA;AACpE,QAAA,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACf,OAAO;AACV,SAAA;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAExC,IAAI,CAAC,MAAM,EAAE;AACT,YAAA,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA,6BAAA,CAA+B,CAAC,CAAC;YAEzD,OAAO;AACV,SAAA;AAED,QAAA,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACtB,QAAA,IAAI,CAAC,SAAS,GACP,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,IAAI,CAAC,SAAS,CACjB,EAAA,EAAA,CAAC,IAAI,GAAG,GAAG,GACd,CAAC;KACL;IAEO,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAA;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;KACnD;AAEO,IAAA,QAAQ,CAAC,GAAW,EAAA;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CACzC,CAAC,IAAI,CAAC,YAAY;AACd,cAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC;AACvD,cAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAA,CAAE,CAClE,CAAC;KACL;;AA3DQ,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAOV,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,aAAa,EAEb,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,YAAY,aACZ,SAAS,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAVZ,aAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFV,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;;0BAOQ,QAAQ;;0BACR,MAAM;2BAAC,aAAa,CAAA;;0BAEpB,MAAM;2BAAC,YAAY,CAAA;;0BACnB,MAAM;2BAAC,SAAS,CAAA;;;ACvBzB;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-services.js","sources":["../../../projects/core/services/format-date.service.ts","../../../projects/core/services/hint.service.ts","../../../projects/core/services/night-theme.service.ts","../../../projects/core/services/position.service.ts","../../../projects/core/services/router-link-active.service.ts","../../../projects/core/services/svg.service.ts","../../../projects/core/services/taiga-ui-core-services.ts"],"sourcesContent":["import {Inject, Injectable, LOCALE_ID} from '@angular/core';\nimport {Observable, of} from 'rxjs';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiFormatDateService {\n constructor(@Inject(LOCALE_ID) protected readonly locale: string) {}\n\n format(timestamp: number): Observable<string> {\n return of(\n new Date(timestamp).toLocaleTimeString(this.locale, {\n hour: `numeric`,\n minute: `2-digit`,\n }),\n );\n }\n}\n","import {Injectable} from '@angular/core';\nimport {TuiPortalItem} from '@taiga-ui/core/interfaces';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for displaying hints/tooltips\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiHintService extends BehaviorSubject<readonly TuiPortalItem[]> {\n constructor() {\n super([]);\n }\n\n add(directive: TuiPortalItem): void {\n this.next(this.value.concat(directive));\n }\n\n remove(directive: TuiPortalItem): void {\n if (this.value.includes(directive)) {\n this.next(this.value.filter(hint => hint !== directive));\n }\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {fromEvent, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiNightThemeService extends Observable<boolean> {\n constructor(@Inject(WINDOW) windowRef: Window) {\n const media = windowRef.matchMedia(`(prefers-color-scheme: dark)`);\n const media$ = fromEvent(media, `change`).pipe(\n startWith(null),\n map(() => media.matches),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n","import {ElementRef, Inject, Injectable, NgZone} from '@angular/core';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {tuiZonefree} from '@taiga-ui/cdk';\nimport {TuiPositionAccessor} from '@taiga-ui/core/abstract';\nimport {TuiPoint} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiPositionService extends Observable<TuiPoint> {\n constructor(\n @Inject(ElementRef) {nativeElement}: ElementRef<HTMLElement>,\n @Inject(ANIMATION_FRAME) animationFrame: Observable<unknown>,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(TuiPositionAccessor) accessor: TuiPositionAccessor,\n ) {\n super(subscriber =>\n animationFrame\n .pipe(\n map(() => nativeElement.getBoundingClientRect()),\n map(rect => accessor.getPosition(rect)),\n tuiZonefree(ngZone),\n )\n .subscribe(subscriber),\n );\n }\n}\n","import {Inject, Injectable, NgZone, Optional, Self} from '@angular/core';\nimport {RouterLinkActive} from '@angular/router';\nimport {ANIMATION_FRAME} from '@ng-web-apis/common';\nimport {TuiDestroyService, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {EMPTY, Observable} from 'rxjs';\nimport {distinctUntilChanged, map, takeUntil} from 'rxjs/operators';\n\n@Injectable()\nexport class TuiRouterLinkActiveService extends Observable<boolean> {\n constructor(\n @Optional()\n @Inject(RouterLinkActive)\n routerLinkActive: RouterLinkActive | null,\n @Inject(NgZone) ngZone: NgZone,\n @Inject(ANIMATION_FRAME) animationFrame$: Observable<number>,\n @Self() @Inject(TuiDestroyService) destroy$: TuiDestroyService,\n ) {\n const stream$ = routerLinkActive\n ? animationFrame$.pipe(\n map(() => routerLinkActive.isActive),\n distinctUntilChanged(),\n tuiZoneOptimized(ngZone),\n takeUntil(destroy$),\n )\n : EMPTY;\n\n super(subscriber => stream$.subscribe(subscriber));\n }\n}\n","import {Inject, Injectable, Optional, Sanitizer, SecurityContext} from '@angular/core';\nimport {DomSanitizer, SafeHtml} from '@angular/platform-browser';\nimport {tuiAssert} from '@taiga-ui/cdk';\nimport {TUI_ICONS, TUI_SANITIZER} from '@taiga-ui/core/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/core/utils/dom';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiSvgService {\n private originals: Record<string, string> = {};\n\n readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor(\n @Optional()\n @Inject(TUI_SANITIZER)\n private readonly tuiSanitizer: Sanitizer | null,\n @Inject(DomSanitizer) private readonly sanitizer: DomSanitizer,\n @Inject(TUI_ICONS) icons: Record<string, string>,\n ) {\n this.define(icons);\n }\n\n define(icons: Record<string, string>): void {\n const {value} = this.items$;\n\n Object.keys(icons).forEach(key => {\n this.defineIcon(key, icons[key], value);\n });\n\n this.items$.next(value);\n }\n\n getOriginal(name: string): string | null {\n return this.originals[name] || null;\n }\n\n private defineIcon(name: string, src: string, map: Map<string, SafeHtml>): void {\n if (map.has(name)) {\n return;\n }\n\n const parsed = this.parseSrc(name, src);\n\n if (!parsed) {\n tuiAssert.assert(false, `Unable to parse given SVG src`);\n\n return;\n }\n\n map.set(name, parsed);\n this.originals = {\n ...this.originals,\n [name]: src,\n };\n }\n\n private parseSrc(name: string, src: string): SafeHtml {\n return this.sanitize(tuiProcessIcon(src, name));\n }\n\n private sanitize(src: string): SafeHtml {\n return this.sanitizer.bypassSecurityTrustHtml(\n (this.tuiSanitizer\n ? this.tuiSanitizer.sanitize(SecurityContext.HTML, src)\n : this.sanitizer.sanitize(SecurityContext.HTML, src)) || ``,\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -164,7 +164,9 @@ const TUI_SELECTION_STREAM = new InjectionToken(`[TUI_SELECTION_STREAM]: A strea
|
|
|
164
164
|
},
|
|
165
165
|
});
|
|
166
166
|
|
|
167
|
-
const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken(`[TUI_SVG_CONTENT_PROCESSOR]: Transform function the contents of the loaded svg file`, {
|
|
167
|
+
const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken(`[TUI_SVG_CONTENT_PROCESSOR]: Transform function the contents of the loaded svg file`, {
|
|
168
|
+
factory: () => tuiSvgLinearGradientProcessor,
|
|
169
|
+
});
|
|
168
170
|
|
|
169
171
|
const TUI_SVG_SRC_PROCESSOR = new InjectionToken(`[TUI_SVG_SRC_PROCESSOR]: Source path processor for svg`, {
|
|
170
172
|
factory: () => identity,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-tokens.js","sources":["../../../projects/core/tokens/animations-duration.ts","../../../projects/core/tokens/animation-options.ts","../../../projects/core/tokens/assert-enabled.ts","../../../projects/core/tokens/data-list-accessor.ts","../../../projects/core/tokens/data-list-host.ts","../../../projects/core/tokens/day-type-handler.ts","../../../projects/core/tokens/document-or-shadow-root.ts","../../../projects/core/tokens/element-ref.ts","../../../projects/core/tokens/first-day-of-week.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon-place.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icons-path.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/is-mobile-resolution.ts","../../../projects/core/tokens/mode.ts","../../../projects/core/tokens/notification-options.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/option-content.ts","../../../projects/core/tokens/ordered-short-week-days.ts","../../../projects/core/tokens/sanitizer.ts","../../../projects/core/tokens/scroll-ref.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/svg-content-processor.ts","../../../projects/core/tokens/svg-src-processor.ts","../../../projects/core/tokens/textfield-appearance.ts","../../../projects/core/tokens/textfield-host.ts","../../../projects/core/tokens/theme.ts","../../../projects/core/tokens/value-accessor.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]: Duration of all Taiga UI animations in ms`,\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]: Options for Taiga UI animations`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n `[TUI_ASSERT_ENABLED]: Flag to enable assertions across Taiga UI`,\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]: Accessor for options`,\n);\n\nexport function tuiAsDataListAccessor(useExisting: Type<TuiDataListAccessor>): Provider {\n return {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting,\n };\n}\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]: DataList controller`,\n);\n\nexport function tuiAsDataListHost(useExisting: Type<TuiDataListHost<unknown>>): Provider {\n return {\n provide: TUI_DATA_LIST_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiDay, TuiHandler} from '@taiga-ui/cdk';\n\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]: Token for adding data-type attribute to calendar cell`,\n {\n factory: () => (day: TuiDay) => day.isWeekend ? `weekend` : `weekday`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n `[TUI_DOCUMENT_OR_SHADOW_ROOT]: Document or ShadowRoot`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n `[TUI_ELEMENT_REF]: ElementRef when you cannot use @Input for single time injection`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]: The first day of the week index`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]: Localized months names`, {\n factory: tuiExtractI18n(`months`),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]: i18n 'close' word`, {\n factory: tuiExtractI18n(`close`),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]: i18n 'Nothing found' message`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]: i18n of error message`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]: spin i18n texts`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n `[TUI_SHORT_WEEK_DAYS]: calendars i18n texts`,\n {\n factory: tuiExtractI18n(`shortWeekDays`),\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]: Recommended paths to icons from documentation guide`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n `[TUI_ICONS]: A key/value dictionary of icon names and src to be defined with TuiSvgService`,\n {\n factory: () => ({}),\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {tuiIconsPathFactory} from '@taiga-ui/core/utils';\n\nimport {TUI_ICONS_PLACE} from './icon-place';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n `[TUI_ICONS_PATH]: A handler to retrieve USE id for icon by name`,\n {factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE))},\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(\n `[TUI_MEDIA]: Token for media constant`,\n {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n },\n);\n","import {inject, InjectionToken, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, startWith} from 'rxjs/operators';\n\nimport {TUI_MEDIA} from './media';\n\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]: Mobile resolution stream for private providers`,\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n const media = inject(TUI_MEDIA);\n\n return tuiTypedFromEvent(windowRef, `resize`).pipe(\n share(),\n startWith(null),\n map(() => tuiIsMobile(windowRef, media)),\n distinctUntilChanged(),\n tuiZoneOptimized(inject(NgZone)),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n `[TUI_MODE]: Mode stream for private providers`,\n );\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiAlertOptions} from '@taiga-ui/core/interfaces';\n\nexport interface TuiNotificationDefaultOptions\n extends Omit<TuiAlertOptions<unknown>, 'data'> {\n readonly defaultAutoCloseTime: number;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: TuiNotificationDefaultOptions = {\n autoClose: true,\n label: ``,\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n defaultAutoCloseTime: 3000,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]: Default parameters for notification alert component`,\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiNotificationOptionsProvider(\n options: Partial<TuiNotificationDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_NOTIFICATION_OPTIONS,\n useValue: {...TUI_NOTIFICATION_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]: Formatting configuration for displayed numbers`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]: Content for tuiOption component`);\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n >,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n","/**\n * TODO: v4.0 delete the whole file\n */\nimport {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK} from './first-day-of-week';\nimport {TUI_SHORT_WEEK_DAYS} from './i18n';\n\n/**\n * @deprecated\n */\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\nconst convertToSundayFirstWeekFormat = (\n weekDaysNames: WEEK_DAYS_NAMES,\n): WEEK_DAYS_NAMES => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\n/**\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]: Ordered calendars i18n texts`, {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(\n `[TUI_SANITIZER]: A custom Sanitizer to sanitize source before inlining`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]: Scrollable container`,\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {share, switchMapTo, takeUntil} from 'rxjs/operators';\n\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]: A stream of possible selection changes`,\n {\n factory: () => {\n const documentRef = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(documentRef, `selectionchange`),\n tuiTypedFromEvent(documentRef, `mouseup`),\n tuiTypedFromEvent(documentRef, `mousedown`).pipe(\n switchMapTo(\n tuiTypedFromEvent(documentRef, `mousemove`).pipe(\n takeUntil(tuiTypedFromEvent(documentRef, `mouseup`)),\n ),\n ),\n ),\n tuiTypedFromEvent(documentRef, `keydown`),\n tuiTypedFromEvent(documentRef, `keyup`),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler, tuiSvgLinearGradientProcessor} from '@taiga-ui/cdk';\n\nexport const TUI_SVG_CONTENT_PROCESSOR: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n `[TUI_SVG_CONTENT_PROCESSOR]: Transform function the contents of the loaded svg file`,\n {factory: () => tuiSvgLinearGradientProcessor},\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\nexport const TUI_SVG_SRC_PROCESSOR: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n `[TUI_SVG_SRC_PROCESSOR]: Source path processor for svg`,\n {\n factory: () => identity,\n },\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]: Appearance for inputs`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]: An interface to communicate with textfield based controls`,\n);\n\nexport function tuiAsTextfieldHost(useExisting: Type<TuiTextfieldHost>): Provider {\n return {\n provide: TUI_TEXTFIELD_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_THEME = new InjectionToken<string>(`[TUI_THEME]: Theme name`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]: Buffer token to pass NG_VALUE_ACCESSOR to a different Injector`,\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.js","sources":["../../../projects/core/tokens/animations-duration.ts","../../../projects/core/tokens/animation-options.ts","../../../projects/core/tokens/assert-enabled.ts","../../../projects/core/tokens/data-list-accessor.ts","../../../projects/core/tokens/data-list-host.ts","../../../projects/core/tokens/day-type-handler.ts","../../../projects/core/tokens/document-or-shadow-root.ts","../../../projects/core/tokens/element-ref.ts","../../../projects/core/tokens/first-day-of-week.ts","../../../projects/core/tokens/i18n.ts","../../../projects/core/tokens/icon-place.ts","../../../projects/core/tokens/icons.ts","../../../projects/core/tokens/icons-path.ts","../../../projects/core/tokens/media.ts","../../../projects/core/tokens/is-mobile-resolution.ts","../../../projects/core/tokens/mode.ts","../../../projects/core/tokens/notification-options.ts","../../../projects/core/tokens/number-format.ts","../../../projects/core/tokens/option-content.ts","../../../projects/core/tokens/ordered-short-week-days.ts","../../../projects/core/tokens/sanitizer.ts","../../../projects/core/tokens/scroll-ref.ts","../../../projects/core/tokens/selection-stream.ts","../../../projects/core/tokens/svg-content-processor.ts","../../../projects/core/tokens/svg-src-processor.ts","../../../projects/core/tokens/textfield-appearance.ts","../../../projects/core/tokens/textfield-host.ts","../../../projects/core/tokens/theme.ts","../../../projects/core/tokens/value-accessor.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]: Duration of all Taiga UI animations in ms`,\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]: Options for Taiga UI animations`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n `[TUI_ASSERT_ENABLED]: Flag to enable assertions across Taiga UI`,\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]: Accessor for options`,\n);\n\nexport function tuiAsDataListAccessor(useExisting: Type<TuiDataListAccessor>): Provider {\n return {\n provide: TUI_DATA_LIST_ACCESSOR,\n useExisting,\n };\n}\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]: DataList controller`,\n);\n\nexport function tuiAsDataListHost(useExisting: Type<TuiDataListHost<unknown>>): Provider {\n return {\n provide: TUI_DATA_LIST_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TuiDay, TuiHandler} from '@taiga-ui/cdk';\n\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]: Token for adding data-type attribute to calendar cell`,\n {\n factory: () => (day: TuiDay) => day.isWeekend ? `weekend` : `weekday`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n `[TUI_DOCUMENT_OR_SHADOW_ROOT]: Document or ShadowRoot`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n `[TUI_ELEMENT_REF]: ElementRef when you cannot use @Input for single time injection`,\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]: The first day of the week index`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]: Localized months names`, {\n factory: tuiExtractI18n(`months`),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]: i18n 'close' word`, {\n factory: tuiExtractI18n(`close`),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]: i18n 'Nothing found' message`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]: i18n of error message`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]: spin i18n texts`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(\n `[TUI_SHORT_WEEK_DAYS]: calendars i18n texts`,\n {\n factory: tuiExtractI18n(`shortWeekDays`),\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]: Recommended paths to icons from documentation guide`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n `[TUI_ICONS]: A key/value dictionary of icon names and src to be defined with TuiSvgService`,\n {\n factory: () => ({}),\n },\n);\n","import {inject, InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {tuiIconsPathFactory} from '@taiga-ui/core/utils';\n\nimport {TUI_ICONS_PLACE} from './icon-place';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n `[TUI_ICONS_PATH]: A handler to retrieve USE id for icon by name`,\n {factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE))},\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(\n `[TUI_MEDIA]: Token for media constant`,\n {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n },\n);\n","import {inject, InjectionToken, NgZone} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {tuiTypedFromEvent, tuiZoneOptimized} from '@taiga-ui/cdk';\nimport {tuiIsMobile} from '@taiga-ui/core/utils';\nimport {Observable} from 'rxjs';\nimport {distinctUntilChanged, map, share, startWith} from 'rxjs/operators';\n\nimport {TUI_MEDIA} from './media';\n\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]: Mobile resolution stream for private providers`,\n {\n factory: () => {\n const windowRef = inject(WINDOW);\n const media = inject(TUI_MEDIA);\n\n return tuiTypedFromEvent(windowRef, `resize`).pipe(\n share(),\n startWith(null),\n map(() => tuiIsMobile(windowRef, media)),\n distinctUntilChanged(),\n tuiZoneOptimized(inject(NgZone)),\n );\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n `[TUI_MODE]: Mode stream for private providers`,\n );\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiAlertOptions} from '@taiga-ui/core/interfaces';\n\nexport interface TuiNotificationDefaultOptions\n extends Omit<TuiAlertOptions<unknown>, 'data'> {\n readonly defaultAutoCloseTime: number;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: TuiNotificationDefaultOptions = {\n autoClose: true,\n label: ``,\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n defaultAutoCloseTime: 3000,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]: Default parameters for notification alert component`,\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiNotificationOptionsProvider(\n options: Partial<TuiNotificationDefaultOptions>,\n): ValueProvider {\n return {\n provide: TUI_NOTIFICATION_OPTIONS,\n useValue: {...TUI_NOTIFICATION_DEFAULT_OPTIONS, ...options},\n };\n}\n","import {InjectionToken} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]: Formatting configuration for displayed numbers`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]: Content for tuiOption component`);\n\nexport function tuiAsOptionContent(\n useValue: PolymorpheusContent<\n TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>\n >,\n): Provider {\n return {\n provide: TUI_OPTION_CONTENT,\n useValue,\n };\n}\n","/**\n * TODO: v4.0 delete the whole file\n */\nimport {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK} from './first-day-of-week';\nimport {TUI_SHORT_WEEK_DAYS} from './i18n';\n\n/**\n * @deprecated\n */\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\nconst convertToSundayFirstWeekFormat = (\n weekDaysNames: WEEK_DAYS_NAMES,\n): WEEK_DAYS_NAMES => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\n/**\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]: Ordered calendars i18n texts`, {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {InjectionToken, Sanitizer} from '@angular/core';\n\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(\n `[TUI_SANITIZER]: A custom Sanitizer to sanitize source before inlining`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]: Scrollable container`,\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk';\nimport {merge, Observable} from 'rxjs';\nimport {share, switchMapTo, takeUntil} from 'rxjs/operators';\n\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]: A stream of possible selection changes`,\n {\n factory: () => {\n const documentRef = inject(DOCUMENT);\n\n return merge(\n tuiTypedFromEvent(documentRef, `selectionchange`),\n tuiTypedFromEvent(documentRef, `mouseup`),\n tuiTypedFromEvent(documentRef, `mousedown`).pipe(\n switchMapTo(\n tuiTypedFromEvent(documentRef, `mousemove`).pipe(\n takeUntil(tuiTypedFromEvent(documentRef, `mouseup`)),\n ),\n ),\n ),\n tuiTypedFromEvent(documentRef, `keydown`),\n tuiTypedFromEvent(documentRef, `keyup`),\n ).pipe(share());\n },\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler, tuiSvgLinearGradientProcessor} from '@taiga-ui/cdk';\n\nexport const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_CONTENT_PROCESSOR]: Transform function the contents of the loaded svg file`, {\n factory: () => tuiSvgLinearGradientProcessor,\n});\n","import {InjectionToken} from '@angular/core';\nimport {SafeHtml} from '@angular/platform-browser';\nimport {TuiHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\nexport const TUI_SVG_SRC_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_SRC_PROCESSOR]: Source path processor for svg`, {\n factory: () => identity,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]: Appearance for inputs`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]: An interface to communicate with textfield based controls`,\n);\n\nexport function tuiAsTextfieldHost(useExisting: Type<TuiTextfieldHost>): Provider {\n return {\n provide: TUI_TEXTFIELD_HOST,\n useExisting,\n };\n}\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_THEME = new InjectionToken<string>(`[TUI_THEME]: Theme name`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]: Buffer token to pass NG_VALUE_ACCESSOR to a different Injector`,\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-types.js","sources":["../../../projects/core/types/size.ts","../../../projects/core/types/taiga-ui-core-types.ts"],"sourcesContent":["/**\n * Various sizes for components\n *\n * 'xxs' - extra extra small\n * 'xs' - extra small\n * 's' - small\n * 'm' - medium (typically default)\n * 'l' - large\n * 'xl' - extra large\n * 'xxl' - extra extra large\n */\n\nexport type TuiSizeM = 'm';\n\nexport type TuiSizeS = 's'
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-types.js","sources":["../../../projects/core/types/size.ts","../../../projects/core/types/taiga-ui-core-types.ts"],"sourcesContent":["/**\n * Various sizes for components\n *\n * 'xxs' - extra extra small\n * 'xs' - extra small\n * 's' - small\n * 'm' - medium (typically default)\n * 'l' - large\n * 'xl' - extra large\n * 'xxl' - extra extra large\n */\n\nexport type TuiSizeM = 'm';\n\nexport type TuiSizeS = TuiSizeM | 's';\n\nexport type TuiSizeL = TuiSizeM | 'l';\n\nexport type TuiSizeXS = TuiSizeS | 'xs';\n\nexport type TuiSizeXXS = TuiSizeXS | 'xxs';\n\nexport type TuiSizeXL = TuiSizeL | 'xl';\n\nexport type TuiSizeXXL = TuiSizeXL | 'xxl';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;;;;AAUG;;ACVH;;AAEG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-utils-mask.js","sources":["../../../projects/core/utils/mask/create-auto-corrected-money-pipe.ts","../../../projects/core/utils/mask/create-correction-mask.ts","../../../projects/core/utils/mask/create-number-mask.ts","../../../projects/core/utils/mask/enable-auto-correct-decimal-symbol.ts","../../../projects/core/utils/mask/masked-money-value-is-empty.ts","../../../projects/core/utils/mask/masked-number-string-to-number.ts","../../../projects/core/utils/mask/taiga-ui-core-utils-mask.ts"],"sourcesContent":["import {\n CHAR_HYPHEN,\n CHAR_NO_BREAK_SPACE,\n tuiAssert,\n tuiGetDocumentOrShadowRoot,\n tuiIsNativeFocused,\n tuiIsSafari,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\n/**\n * Used to finish a number with zeros to a given precision\n */\nexport function tuiCreateAutoCorrectedNumberPipe(\n decimalLimit: number = 0,\n decimalSymbol: TuiDecimalSymbol = `,`,\n thousandSymbol: string = CHAR_NO_BREAK_SPACE,\n nativeInput?: HTMLInputElement | null,\n allowNegative?: boolean,\n isIOS = false,\n): TuiTextMaskPipeHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n\n // Guess for which browser I need this :)\n let previousCaret = -1;\n const unlucky = (!!nativeInput && tuiIsSafari(nativeInput)) || isIOS;\n\n if (nativeInput && unlucky) {\n nativeInput.addEventListener(`beforeinput`, () => {\n previousCaret = nativeInput.selectionStart || 0;\n });\n }\n\n return (conformedValue, config) => {\n // Removing everything by selecting and pressing '-'\n if (!conformedValue && config.rawValue === CHAR_HYPHEN && allowNegative) {\n return CHAR_HYPHEN;\n }\n\n // remove these hacks after text mask library has changed\n if (nativeInput && unlucky && tuiIsNativeFocused(nativeInput)) {\n const caret = calculateSafariCaret(\n config.previousConformedValue,\n conformedValue,\n previousCaret,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(caret, caret);\n });\n }\n\n if (\n nativeInput &&\n nativeInput.ownerDocument !== tuiGetDocumentOrShadowRoot(nativeInput) &&\n tuiIsNativeFocused(nativeInput) &&\n config.currentCaretPosition\n ) {\n const realCaretPosition =\n config.currentCaretPosition +\n calculateCaretGap(\n config.previousConformedValue,\n conformedValue,\n thousandSymbol,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(realCaretPosition, realCaretPosition);\n });\n }\n\n if (conformedValue === `` || !decimalLimit) {\n return {value: conformedValue};\n }\n\n const withDecimalSymbol = addDecimalSymbolIfNeeded(conformedValue, decimalSymbol);\n const decimalPart = withDecimalSymbol.split(decimalSymbol)[1];\n const zeroPaddingSize = decimalLimit - decimalPart.length;\n\n return {\n value: withDecimalSymbol + `0`.repeat(zeroPaddingSize),\n };\n };\n}\n\nfunction addDecimalSymbolIfNeeded(\n value: string,\n decimalSymbol: TuiDecimalSymbol = `,`,\n): string {\n return !value.includes(decimalSymbol) ? value + decimalSymbol : value;\n}\n\nfunction calculateSafariCaret(\n previousValue: string = ``,\n current: string,\n previousCaret: number,\n decimalSymbol: string = `,`,\n): number {\n const tailRegex = new RegExp(`${decimalSymbol}.+`);\n const previousWithoutTail = previousValue.replace(tailRegex, ``);\n const currentWithoutTail = current.replace(tailRegex, ``);\n\n const pasteOrCutOperation =\n Math.abs(previousWithoutTail.length - currentWithoutTail.length) > 2;\n\n if (pasteOrCutOperation) {\n return current.length;\n }\n\n if (previousValue.length === current.length) {\n if (previousValue.indexOf(decimalSymbol) <= previousCaret) {\n return calculateChangedTailIndex(previousValue, current);\n }\n\n return previousWithoutTail === currentWithoutTail\n ? previousCaret - 1\n : previousCaret + 1;\n }\n\n if (previousValue.length === 0) {\n return 1;\n }\n\n const changeLength = current.length - previousValue.length;\n\n return previousCaret + changeLength;\n}\n\nfunction calculateChangedTailIndex(previous: string, current: string): number {\n for (let i = 0; i < current.length; i++) {\n if (previous[i] !== current[i]) {\n return current[i] === `0` ? i : i + 1;\n }\n }\n\n return current.length;\n}\n\nfunction calculateCaretGap(\n previousValue: string = ``,\n current: string,\n thousandSymbol: string,\n): number {\n const pasteOrCutOperation = Math.abs(previousValue.length - current.length) > 2;\n\n if (pasteOrCutOperation) {\n return 0;\n }\n\n const wereSpaces = previousValue.split(thousandSymbol).length;\n const nowSpaces = current.split(thousandSymbol).length;\n\n return nowSpaces - wereSpaces;\n}\n","import {tuiAssert} from '@taiga-ui/cdk';\nimport {MASK_CARET_TRAP} from '@taiga-ui/core/constants';\nimport {\n TuiTextMaskCorrectionHandler,\n TuiTextMaskList,\n TuiTextMaskListHandler,\n} from '@taiga-ui/core/mask';\n\nconst ASSERTION = `Correction function must return single char or null`;\n\nexport function tuiCreateCorrectionMask(\n allowed: RegExp,\n correctionHandler: TuiTextMaskCorrectionHandler,\n): TuiTextMaskListHandler {\n return rawValue => {\n const mask = rawValue.split(``).reduce<TuiTextMaskList>((result, char, index) => {\n const corrected = correctionHandler(char, index);\n\n tuiAssert.assert(corrected === null || corrected.length === 1, ASSERTION);\n\n if (!allowed.test(char) && !corrected) {\n return result;\n }\n\n if (allowed.test(char)) {\n return [...result, allowed];\n }\n\n if (corrected) {\n return [...result, corrected, MASK_CARET_TRAP];\n }\n\n return result;\n }, []);\n const lastIndex = mask.lastIndexOf(MASK_CARET_TRAP);\n const filtered = mask.filter(\n (item, index) => item !== MASK_CARET_TRAP || index === lastIndex,\n );\n\n return filtered.some(item => item !== allowed)\n ? [...filtered, allowed]\n : filtered;\n };\n}\n","import {CHAR_EN_DASH, CHAR_HYPHEN, CHAR_NO_BREAK_SPACE, tuiAssert} from '@taiga-ui/cdk';\nimport {\n MASK_CARET_TRAP,\n TUI_DIGIT_REGEXP,\n TUI_LEADING_ZEROES_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n} from '@taiga-ui/core/constants';\nimport {TuiNumberMaskOptions, TuiTextMaskListHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\nimport {tuiOtherDecimalSymbol} from '@taiga-ui/core/utils/format';\n\nconst NON_ZERO_DIGIT = /[1-9]/;\n\n/**\n * Adaptation for {@link https://github.com/text-mask/text-mask/tree/master/addons#createnumbermask `createNumberMask`}\n */\nexport function tuiCreateNumberMask({\n allowDecimal = false,\n decimalSymbol = `,`,\n thousandSymbol = CHAR_NO_BREAK_SPACE,\n autoCorrectDecimalSymbol = true,\n decimalLimit = 2,\n requireDecimal = false,\n allowNegative = false,\n integerLimit = 0,\n}: TuiNumberMaskOptions = {}): TuiTextMaskListHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n tuiAssert.assert(Number.isInteger(integerLimit));\n tuiAssert.assert(integerLimit >= 0);\n\n // eslint-disable-next-line max-statements\n return (rawValue, {previousConformedValue}) => {\n if (previousConformedValue && requireDecimal) {\n const conformedWithoutSeparator = rawValue.split(thousandSymbol).join(``);\n const previousConformedValueWithoutDecimalSymbolAndSeparator =\n previousConformedValue\n .split(thousandSymbol)\n .join(``)\n .split(decimalSymbol)\n .join(``);\n\n // Forbid removal of decimal separator if decimal part is required\n if (\n conformedWithoutSeparator ===\n previousConformedValueWithoutDecimalSymbolAndSeparator\n ) {\n rawValue = previousConformedValue;\n }\n }\n\n const isNegative =\n (rawValue[0] === CHAR_HYPHEN || rawValue[0] === CHAR_EN_DASH) &&\n allowNegative;\n\n if (\n isDecimalSymbol(rawValue, decimalSymbol, autoCorrectDecimalSymbol) &&\n allowDecimal\n ) {\n return [`0`, decimalSymbol, TUI_DIGIT_REGEXP];\n }\n\n if (isNegative) {\n rawValue = rawValue.slice(1);\n }\n\n const decimalIndex = getDecimalSymbolIndex(\n rawValue,\n decimalSymbol,\n autoCorrectDecimalSymbol,\n );\n const hasDecimal = decimalIndex !== -1;\n const integer = hasDecimal ? rawValue.slice(0, decimalIndex) : rawValue;\n const thousandSeparators = integer.match(new RegExp(thousandSymbol, `g`)) || [];\n const integerCapped = integerLimit\n ? integer.slice(0, integerLimit + thousandSeparators.length)\n : integer;\n const integerCappedClean = integerCapped.replace(TUI_NON_DIGITS_REGEXP, ``);\n const [leadingZerosMatch] = integerCappedClean.match(\n TUI_LEADING_ZEROES_REGEXP,\n ) || [``];\n const leadingZerosAmount = leadingZerosMatch.length;\n const integerCappedZerosClean = integerCappedClean\n .replace(/^0+(?!\\.|$)/, ``)\n .trim();\n const withSeparator = addThousandsSeparator(\n integerCappedZerosClean,\n thousandSymbol,\n );\n const mask = convertToMask(withSeparator);\n\n if ((hasDecimal && allowDecimal) || requireDecimal) {\n const fraction = hasDecimal\n ? convertToMask(\n rawValue.slice(decimalIndex + 1).replace(TUI_NON_DIGITS_REGEXP, ``),\n )\n : [];\n const fractionCapped = decimalLimit\n ? fraction.slice(0, decimalLimit)\n : fraction;\n\n if (rawValue[decimalIndex] !== tuiOtherDecimalSymbol(decimalSymbol)) {\n mask.push(MASK_CARET_TRAP);\n }\n\n mask.push(decimalSymbol, MASK_CARET_TRAP, ...fractionCapped);\n\n for (let i = 0; i < decimalLimit - fractionCapped.length; i++) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n }\n\n const isOnlyZeroDigit = mask.length === 1 && integerCappedZerosClean === `0`;\n\n if (isNegative) {\n if (mask.length === 0) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n\n mask.unshift(CHAR_HYPHEN);\n }\n\n return preventLeadingZeroes(mask, isOnlyZeroDigit, leadingZerosAmount);\n };\n}\n\nfunction preventLeadingZeroes(\n mask: Array<string | RegExp>,\n isOnlyZeroDigit: boolean = false,\n leadingZerosAmount: number = 0,\n): Array<string | RegExp> {\n if (isOnlyZeroDigit || leadingZerosAmount === 0) {\n return mask;\n }\n\n const firstDigitIndex = mask.indexOf(TUI_DIGIT_REGEXP);\n\n if (firstDigitIndex === -1) {\n return mask;\n }\n\n const secondMaskDigit = mask[firstDigitIndex + 1];\n const isCaretTrap = secondMaskDigit === MASK_CARET_TRAP;\n\n if (isCaretTrap && leadingZerosAmount === 1) {\n return mask;\n }\n\n if (isCaretTrap) {\n mask.unshift(NON_ZERO_DIGIT);\n\n return mask;\n }\n\n mask[firstDigitIndex] = NON_ZERO_DIGIT;\n\n return mask;\n}\n\nfunction getDecimalSymbolIndex(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): number {\n if (!autoCorrectDecimalSymbol) {\n return str.lastIndexOf(decimalSymbol);\n }\n\n return Math.max(\n str.lastIndexOf(decimalSymbol),\n str.lastIndexOf(tuiOtherDecimalSymbol(decimalSymbol)),\n );\n}\n\nfunction isDecimalSymbol(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): boolean {\n if (autoCorrectDecimalSymbol) {\n return /^[,.]$/.test(str);\n }\n\n return str === decimalSymbol;\n}\n\nfunction convertToMask(strNumber: string): Array<string | RegExp> {\n return strNumber\n .split(``)\n .map(char => (TUI_DIGIT_REGEXP.test(char) ? TUI_DIGIT_REGEXP : char));\n}\n\nfunction addThousandsSeparator(strNumber: string, thousandSymbol: string): string {\n return strNumber.length > 3\n ? // TODO: investigate to disallow potentially catastrophic exponential-time regular expressions.\n // eslint-disable-next-line unicorn/no-unsafe-regex\n strNumber.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandSymbol)\n : strNumber;\n}\n","import {TUI_DECIMAL_SYMBOLS} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport function tuiEnableAutoCorrectDecimalSymbol({\n thousandSeparator,\n}: TuiNumberFormatSettings): boolean {\n return !TUI_DECIMAL_SYMBOLS.includes(thousandSeparator);\n}\n","import {CHAR_HYPHEN} from '@taiga-ui/cdk';\n\nexport function tuiMaskedMoneyValueIsEmpty(value: string): boolean {\n switch (value) {\n case ``:\n case CHAR_HYPHEN:\n case `,`:\n case `${CHAR_HYPHEN},`:\n return true;\n default:\n return false;\n }\n}\n","import {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\nexport function tuiMaskedNumberStringToNumber(\n value: string,\n decimalsSymbol: TuiDecimalSymbol,\n thousandSymbol: string,\n): number {\n return parseFloat(\n value.split(thousandSymbol).join(``).split(decimalsSymbol).join(`.`),\n );\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-utils-mask.js","sources":["../../../projects/core/utils/mask/create-auto-corrected-money-pipe.ts","../../../projects/core/utils/mask/create-correction-mask.ts","../../../projects/core/utils/mask/create-number-mask.ts","../../../projects/core/utils/mask/enable-auto-correct-decimal-symbol.ts","../../../projects/core/utils/mask/masked-money-value-is-empty.ts","../../../projects/core/utils/mask/masked-number-string-to-number.ts","../../../projects/core/utils/mask/taiga-ui-core-utils-mask.ts"],"sourcesContent":["import {\n CHAR_HYPHEN,\n CHAR_NO_BREAK_SPACE,\n tuiAssert,\n tuiGetDocumentOrShadowRoot,\n tuiIsNativeFocused,\n tuiIsSafari,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\n/**\n * Used to finish a number with zeros to a given precision\n */\nexport function tuiCreateAutoCorrectedNumberPipe(\n decimalLimit: number = 0,\n decimalSymbol: TuiDecimalSymbol = `,`,\n thousandSymbol: string = CHAR_NO_BREAK_SPACE,\n nativeInput?: HTMLInputElement | null,\n allowNegative?: boolean,\n isIOS = false,\n): TuiTextMaskPipeHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n\n // Guess for which browser I need this :)\n let previousCaret = -1;\n const unlucky = (!!nativeInput && tuiIsSafari(nativeInput)) || isIOS;\n\n if (nativeInput && unlucky) {\n nativeInput.addEventListener(`beforeinput`, () => {\n previousCaret = nativeInput.selectionStart || 0;\n });\n }\n\n return (conformedValue, config) => {\n // Removing everything by selecting and pressing '-'\n if (!conformedValue && config.rawValue === CHAR_HYPHEN && allowNegative) {\n return CHAR_HYPHEN;\n }\n\n // remove these hacks after text mask library has changed\n if (nativeInput && unlucky && tuiIsNativeFocused(nativeInput)) {\n const caret = calculateSafariCaret(\n config.previousConformedValue,\n conformedValue,\n previousCaret,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(caret, caret);\n });\n }\n\n if (\n nativeInput &&\n nativeInput.ownerDocument !== tuiGetDocumentOrShadowRoot(nativeInput) &&\n tuiIsNativeFocused(nativeInput) &&\n config.currentCaretPosition\n ) {\n const realCaretPosition =\n config.currentCaretPosition +\n calculateCaretGap(\n config.previousConformedValue,\n conformedValue,\n thousandSymbol,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(realCaretPosition, realCaretPosition);\n });\n }\n\n if (conformedValue === `` || !decimalLimit) {\n return {value: conformedValue};\n }\n\n const withDecimalSymbol = addDecimalSymbolIfNeeded(conformedValue, decimalSymbol);\n const decimalPart = withDecimalSymbol.split(decimalSymbol)[1];\n const zeroPaddingSize = decimalLimit - decimalPart.length;\n\n return {\n value: withDecimalSymbol + `0`.repeat(zeroPaddingSize),\n };\n };\n}\n\nfunction addDecimalSymbolIfNeeded(\n value: string,\n decimalSymbol: TuiDecimalSymbol = `,`,\n): string {\n return !value.includes(decimalSymbol) ? value + decimalSymbol : value;\n}\n\nfunction calculateSafariCaret(\n previousValue: string = ``,\n current: string,\n previousCaret: number,\n decimalSymbol: string = `,`,\n): number {\n const tailRegex = new RegExp(`${decimalSymbol}.+`);\n const previousWithoutTail = previousValue.replace(tailRegex, ``);\n const currentWithoutTail = current.replace(tailRegex, ``);\n\n const pasteOrCutOperation =\n Math.abs(previousWithoutTail.length - currentWithoutTail.length) > 2;\n\n if (pasteOrCutOperation) {\n return current.length;\n }\n\n if (previousValue.length === current.length) {\n if (previousValue.indexOf(decimalSymbol) <= previousCaret) {\n return calculateChangedTailIndex(previousValue, current);\n }\n\n return previousWithoutTail === currentWithoutTail\n ? previousCaret - 1\n : previousCaret + 1;\n }\n\n if (previousValue.length === 0) {\n return 1;\n }\n\n const changeLength = current.length - previousValue.length;\n\n return previousCaret + changeLength;\n}\n\nfunction calculateChangedTailIndex(previous: string, current: string): number {\n for (let i = 0; i < current.length; i++) {\n if (previous[i] !== current[i]) {\n return current[i] === `0` ? i : i + 1;\n }\n }\n\n return current.length;\n}\n\nfunction calculateCaretGap(\n previousValue: string = ``,\n current: string,\n thousandSymbol: string,\n): number {\n const pasteOrCutOperation = Math.abs(previousValue.length - current.length) > 2;\n\n if (pasteOrCutOperation) {\n return 0;\n }\n\n const wereSpaces = previousValue.split(thousandSymbol).length;\n const nowSpaces = current.split(thousandSymbol).length;\n\n return nowSpaces - wereSpaces;\n}\n","import {tuiAssert} from '@taiga-ui/cdk';\nimport {MASK_CARET_TRAP} from '@taiga-ui/core/constants';\nimport {\n TuiTextMaskCorrectionHandler,\n TuiTextMaskList,\n TuiTextMaskListHandler,\n} from '@taiga-ui/core/mask';\n\nconst ASSERTION = `Correction function must return single char or null`;\n\nexport function tuiCreateCorrectionMask(\n allowed: RegExp,\n correctionHandler: TuiTextMaskCorrectionHandler,\n): TuiTextMaskListHandler {\n return rawValue => {\n const mask = rawValue.split(``).reduce<TuiTextMaskList>((result, char, index) => {\n const corrected = correctionHandler(char, index);\n\n tuiAssert.assert(corrected === null || corrected.length === 1, ASSERTION);\n\n if (!allowed.test(char) && !corrected) {\n return result;\n }\n\n if (allowed.test(char)) {\n return [...result, allowed];\n }\n\n if (corrected) {\n return [...result, corrected, MASK_CARET_TRAP];\n }\n\n return result;\n }, []);\n const lastIndex = mask.lastIndexOf(MASK_CARET_TRAP);\n const filtered = mask.filter(\n (item, index) => item !== MASK_CARET_TRAP || index === lastIndex,\n );\n\n return filtered.some(item => item !== allowed)\n ? [...filtered, allowed]\n : filtered;\n };\n}\n","import {CHAR_EN_DASH, CHAR_HYPHEN, CHAR_NO_BREAK_SPACE, tuiAssert} from '@taiga-ui/cdk';\nimport {\n MASK_CARET_TRAP,\n TUI_DIGIT_REGEXP,\n TUI_LEADING_ZEROES_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n} from '@taiga-ui/core/constants';\nimport {TuiNumberMaskOptions, TuiTextMaskListHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\nimport {tuiOtherDecimalSymbol} from '@taiga-ui/core/utils/format';\n\nconst NON_ZERO_DIGIT = /[1-9]/;\n\n/**\n * Adaptation for {@link https://github.com/text-mask/text-mask/tree/master/addons#createnumbermask `createNumberMask`}\n */\nexport function tuiCreateNumberMask({\n allowDecimal = false,\n decimalSymbol = `,`,\n thousandSymbol = CHAR_NO_BREAK_SPACE,\n autoCorrectDecimalSymbol = true,\n decimalLimit = 2,\n requireDecimal = false,\n allowNegative = false,\n integerLimit = 0,\n}: TuiNumberMaskOptions = {}): TuiTextMaskListHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n tuiAssert.assert(Number.isInteger(integerLimit));\n tuiAssert.assert(integerLimit >= 0);\n\n // eslint-disable-next-line max-statements\n return (rawValue, {previousConformedValue}) => {\n if (previousConformedValue && requireDecimal) {\n const conformedWithoutSeparator = rawValue.split(thousandSymbol).join(``);\n const previousConformedValueWithoutDecimalSymbolAndSeparator =\n previousConformedValue\n .split(thousandSymbol)\n .join(``)\n .split(decimalSymbol)\n .join(``);\n\n // Forbid removal of decimal separator if decimal part is required\n if (\n conformedWithoutSeparator ===\n previousConformedValueWithoutDecimalSymbolAndSeparator\n ) {\n rawValue = previousConformedValue;\n }\n }\n\n const isNegative =\n (rawValue[0] === CHAR_HYPHEN || rawValue[0] === CHAR_EN_DASH) &&\n allowNegative;\n\n if (\n isDecimalSymbol(rawValue, decimalSymbol, autoCorrectDecimalSymbol) &&\n allowDecimal\n ) {\n return [`0`, decimalSymbol, TUI_DIGIT_REGEXP];\n }\n\n if (isNegative) {\n rawValue = rawValue.slice(1);\n }\n\n const decimalIndex = getDecimalSymbolIndex(\n rawValue,\n decimalSymbol,\n autoCorrectDecimalSymbol,\n );\n const hasDecimal = decimalIndex !== -1;\n const integer = hasDecimal ? rawValue.slice(0, decimalIndex) : rawValue;\n const thousandSeparators = integer.match(new RegExp(thousandSymbol, `g`)) || [];\n const integerCapped = integerLimit\n ? integer.slice(0, integerLimit + thousandSeparators.length)\n : integer;\n const integerCappedClean = integerCapped.replace(TUI_NON_DIGITS_REGEXP, ``);\n const [leadingZerosMatch] = integerCappedClean.match(\n TUI_LEADING_ZEROES_REGEXP,\n ) || [``];\n const leadingZerosAmount = leadingZerosMatch.length;\n const integerCappedZerosClean = integerCappedClean\n .replace(/^0+(?!\\.|$)/, ``)\n .trim();\n const withSeparator = addThousandsSeparator(\n integerCappedZerosClean,\n thousandSymbol,\n );\n const mask = convertToMask(withSeparator);\n\n if ((hasDecimal && allowDecimal) || requireDecimal) {\n const fraction = hasDecimal\n ? convertToMask(\n rawValue.slice(decimalIndex + 1).replace(TUI_NON_DIGITS_REGEXP, ``),\n )\n : [];\n const fractionCapped = decimalLimit\n ? fraction.slice(0, decimalLimit)\n : fraction;\n\n if (rawValue[decimalIndex] !== tuiOtherDecimalSymbol(decimalSymbol)) {\n mask.push(MASK_CARET_TRAP);\n }\n\n mask.push(decimalSymbol, MASK_CARET_TRAP, ...fractionCapped);\n\n for (let i = 0; i < decimalLimit - fractionCapped.length; i++) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n }\n\n const isOnlyZeroDigit = mask.length === 1 && integerCappedZerosClean === `0`;\n\n if (isNegative) {\n if (mask.length === 0) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n\n mask.unshift(CHAR_HYPHEN);\n }\n\n return preventLeadingZeroes(mask, isOnlyZeroDigit, leadingZerosAmount);\n };\n}\n\nfunction preventLeadingZeroes(\n mask: Array<RegExp | string>,\n isOnlyZeroDigit: boolean = false,\n leadingZerosAmount: number = 0,\n): Array<RegExp | string> {\n if (isOnlyZeroDigit || leadingZerosAmount === 0) {\n return mask;\n }\n\n const firstDigitIndex = mask.indexOf(TUI_DIGIT_REGEXP);\n\n if (firstDigitIndex === -1) {\n return mask;\n }\n\n const secondMaskDigit = mask[firstDigitIndex + 1];\n const isCaretTrap = secondMaskDigit === MASK_CARET_TRAP;\n\n if (isCaretTrap && leadingZerosAmount === 1) {\n return mask;\n }\n\n if (isCaretTrap) {\n mask.unshift(NON_ZERO_DIGIT);\n\n return mask;\n }\n\n mask[firstDigitIndex] = NON_ZERO_DIGIT;\n\n return mask;\n}\n\nfunction getDecimalSymbolIndex(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): number {\n if (!autoCorrectDecimalSymbol) {\n return str.lastIndexOf(decimalSymbol);\n }\n\n return Math.max(\n str.lastIndexOf(decimalSymbol),\n str.lastIndexOf(tuiOtherDecimalSymbol(decimalSymbol)),\n );\n}\n\nfunction isDecimalSymbol(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): boolean {\n if (autoCorrectDecimalSymbol) {\n return /^[,.]$/.test(str);\n }\n\n return str === decimalSymbol;\n}\n\nfunction convertToMask(strNumber: string): Array<RegExp | string> {\n return strNumber\n .split(``)\n .map(char => (TUI_DIGIT_REGEXP.test(char) ? TUI_DIGIT_REGEXP : char));\n}\n\nfunction addThousandsSeparator(strNumber: string, thousandSymbol: string): string {\n return strNumber.length > 3\n ? // TODO: investigate to disallow potentially catastrophic exponential-time regular expressions.\n // eslint-disable-next-line unicorn/no-unsafe-regex\n strNumber.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandSymbol)\n : strNumber;\n}\n","import {TUI_DECIMAL_SYMBOLS} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport function tuiEnableAutoCorrectDecimalSymbol({\n thousandSeparator,\n}: TuiNumberFormatSettings): boolean {\n return !TUI_DECIMAL_SYMBOLS.includes(thousandSeparator);\n}\n","import {CHAR_HYPHEN} from '@taiga-ui/cdk';\n\nexport function tuiMaskedMoneyValueIsEmpty(value: string): boolean {\n switch (value) {\n case ``:\n case CHAR_HYPHEN:\n case `,`:\n case `${CHAR_HYPHEN},`:\n return true;\n default:\n return false;\n }\n}\n","import {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\nexport function tuiMaskedNumberStringToNumber(\n value: string,\n decimalsSymbol: TuiDecimalSymbol,\n thousandSymbol: string,\n): number {\n return parseFloat(\n value.split(thousandSymbol).join(``).split(decimalsSymbol).join(`.`),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-utils-miscellaneous.js","sources":["../../../projects/core/utils/miscellaneous/get-border.ts","../../../projects/core/utils/miscellaneous/icons-path-factory.ts","../../../projects/core/utils/miscellaneous/is-editing-key.ts","../../../projects/core/utils/miscellaneous/is-presumed-html-string.ts","../../../projects/core/utils/miscellaneous/override-options.ts","../../../projects/core/utils/miscellaneous/size-bigger.ts","../../../projects/core/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.ts"],"sourcesContent":["const ITEM_SIZE = 1.5;\nconst CONTENT_SIZE = 2.5;\n\nexport function tuiGetBorder(\n hasIcon: boolean,\n hasCleaner: boolean = false,\n hasTooltip: boolean = false,\n hasContent: boolean = false,\n): number {\n let border = 0;\n\n if (hasIcon) {\n border += ITEM_SIZE;\n }\n\n if (hasCleaner) {\n border += ITEM_SIZE;\n }\n\n if (hasTooltip) {\n border += ITEM_SIZE;\n }\n\n if (hasContent) {\n border += CONTENT_SIZE;\n }\n\n return border;\n}\n","import {TuiStringHandler} from '@taiga-ui/cdk';\nimport {DEFAULT_ICONS_PATH} from '@taiga-ui/core/constants';\n\nexport function tuiIconsPathFactory(staticPath: string): TuiStringHandler<string> {\n const base =\n staticPath[staticPath.length - 1] === `/` ? staticPath : `${staticPath}/`;\n\n return name => {\n if (name.startsWith(`tuiIcon`)) {\n return `${base}${name}.svg#${name}`;\n }\n\n return DEFAULT_ICONS_PATH(name);\n };\n}\n","import {tuiEditingKeys} from '@taiga-ui/core/constants';\n\n/**\n * Check if pressed key is interactive in terms of input field\n */\nexport function tuiIsEditingKey(key: string): boolean {\n return key.length === 1 || tuiEditingKeys.includes(key);\n}\n","export function tuiIsPresumedHTMLString(candidate: string): boolean {\n const trimmed = candidate.trim();\n\n return trimmed.startsWith(`<`) && trimmed.endsWith(`>`);\n}\n","export function tuiOverrideOptions<T>(\n override: Partial<T>,\n): (directive: T | null, options: T) => T {\n return (directive, options) => {\n const result = directive || {...options};\n\n Object.keys(override).forEach(key => {\n // Update directive props with new defaults before inputs are processed\n (result as any)[key] = override[key as keyof T];\n });\n\n return result;\n };\n}\n","import {TuiSizeXXL, TuiSizeXXS} from '@taiga-ui/core/types';\n\nconst SIZES = [`xxs`, `xs`, `s`, `m`, `l`, `xl`, `xxl`] as const;\n\n/**\n * Compares size constants to determine if first size is bigger than the second\n *\n * @param size size that we need to compare\n * @param biggerThanSize size to compare with, 's' by default\n */\nexport function tuiSizeBigger(\n size:
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-utils-miscellaneous.js","sources":["../../../projects/core/utils/miscellaneous/get-border.ts","../../../projects/core/utils/miscellaneous/icons-path-factory.ts","../../../projects/core/utils/miscellaneous/is-editing-key.ts","../../../projects/core/utils/miscellaneous/is-presumed-html-string.ts","../../../projects/core/utils/miscellaneous/override-options.ts","../../../projects/core/utils/miscellaneous/size-bigger.ts","../../../projects/core/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.ts"],"sourcesContent":["const ITEM_SIZE = 1.5;\nconst CONTENT_SIZE = 2.5;\n\nexport function tuiGetBorder(\n hasIcon: boolean,\n hasCleaner: boolean = false,\n hasTooltip: boolean = false,\n hasContent: boolean = false,\n): number {\n let border = 0;\n\n if (hasIcon) {\n border += ITEM_SIZE;\n }\n\n if (hasCleaner) {\n border += ITEM_SIZE;\n }\n\n if (hasTooltip) {\n border += ITEM_SIZE;\n }\n\n if (hasContent) {\n border += CONTENT_SIZE;\n }\n\n return border;\n}\n","import {TuiStringHandler} from '@taiga-ui/cdk';\nimport {DEFAULT_ICONS_PATH} from '@taiga-ui/core/constants';\n\nexport function tuiIconsPathFactory(staticPath: string): TuiStringHandler<string> {\n const base =\n staticPath[staticPath.length - 1] === `/` ? staticPath : `${staticPath}/`;\n\n return name => {\n if (name.startsWith(`tuiIcon`)) {\n return `${base}${name}.svg#${name}`;\n }\n\n return DEFAULT_ICONS_PATH(name);\n };\n}\n","import {tuiEditingKeys} from '@taiga-ui/core/constants';\n\n/**\n * Check if pressed key is interactive in terms of input field\n */\nexport function tuiIsEditingKey(key: string): boolean {\n return key.length === 1 || tuiEditingKeys.includes(key);\n}\n","export function tuiIsPresumedHTMLString(candidate: string): boolean {\n const trimmed = candidate.trim();\n\n return trimmed.startsWith(`<`) && trimmed.endsWith(`>`);\n}\n","export function tuiOverrideOptions<T>(\n override: Partial<T>,\n): (directive: T | null, options: T) => T {\n return (directive, options) => {\n const result = directive || {...options};\n\n Object.keys(override).forEach(key => {\n // Update directive props with new defaults before inputs are processed\n (result as any)[key] = override[key as keyof T];\n });\n\n return result;\n };\n}\n","import {TuiSizeXXL, TuiSizeXXS} from '@taiga-ui/core/types';\n\nconst SIZES = [`xxs`, `xs`, `s`, `m`, `l`, `xl`, `xxl`] as const;\n\n/**\n * Compares size constants to determine if first size is bigger than the second\n *\n * @param size size that we need to compare\n * @param biggerThanSize size to compare with, 's' by default\n */\nexport function tuiSizeBigger(\n size: TuiSizeXXL | TuiSizeXXS,\n biggerThanSize: TuiSizeXXL | TuiSizeXXS = `s`,\n): boolean {\n return SIZES.indexOf(size) > SIZES.indexOf(biggerThanSize);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;AAAA,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,MAAM,YAAY,GAAG,GAAG,CAAC;AAET,SAAA,YAAY,CACxB,OAAgB,EAChB,UAAA,GAAsB,KAAK,EAC3B,UAAsB,GAAA,KAAK,EAC3B,UAAA,GAAsB,KAAK,EAAA;IAE3B,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,IAAA,IAAI,OAAO,EAAE;QACT,MAAM,IAAI,SAAS,CAAC;AACvB,KAAA;AAED,IAAA,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,SAAS,CAAC;AACvB,KAAA;AAED,IAAA,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,SAAS,CAAC;AACvB,KAAA;AAED,IAAA,IAAI,UAAU,EAAE;QACZ,MAAM,IAAI,YAAY,CAAC;AAC1B,KAAA;AAED,IAAA,OAAO,MAAM,CAAC;AAClB;;ACzBM,SAAU,mBAAmB,CAAC,UAAkB,EAAA;IAClD,MAAM,IAAI,GACN,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,UAAU,GAAG,CAAA,EAAG,UAAU,CAAA,CAAA,CAAG,CAAC;IAE9E,OAAO,IAAI,IAAG;AACV,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA,OAAA,CAAS,CAAC,EAAE;AAC5B,YAAA,OAAO,GAAG,IAAI,CAAA,EAAG,IAAI,CAAQ,KAAA,EAAA,IAAI,EAAE,CAAC;AACvC,SAAA;AAED,QAAA,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;AACpC,KAAC,CAAC;AACN;;ACZA;;AAEG;AACG,SAAU,eAAe,CAAC,GAAW,EAAA;AACvC,IAAA,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC5D;;ACPM,SAAU,uBAAuB,CAAC,SAAiB,EAAA;AACrD,IAAA,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;AAEjC,IAAA,OAAO,OAAO,CAAC,UAAU,CAAC,CAAG,CAAA,CAAA,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;AAC5D;;ACJM,SAAU,kBAAkB,CAC9B,QAAoB,EAAA;AAEpB,IAAA,OAAO,CAAC,SAAS,EAAE,OAAO,KAAI;AAC1B,QAAA,MAAM,MAAM,GAAG,SAAS,IAAQ,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CAAC,CAAC;QAEzC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,IAAG;;YAE/B,MAAc,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAc,CAAC,CAAC;AACpD,SAAC,CAAC,CAAC;AAEH,QAAA,OAAO,MAAM,CAAC;AAClB,KAAC,CAAC;AACN;;ACXA,MAAM,KAAK,GAAG,CAAC,CAAK,GAAA,CAAA,EAAE,IAAI,EAAE,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAG,EAAE,CAAG,CAAA,CAAA,EAAE,IAAI,EAAE,CAAA,GAAA,CAAK,CAAU,CAAC;AAEjE;;;;;AAKG;SACa,aAAa,CACzB,IAA6B,EAC7B,iBAA0C,CAAG,CAAA,CAAA,EAAA;AAE7C,IAAA,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAC/D;;ACfA;;AAEG;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TuiContextWithImplicit, TuiHandler } from '@taiga-ui/cdk';
|
|
2
2
|
import { TuiNotification } from '@taiga-ui/core/enums';
|
|
3
3
|
import { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';
|
|
4
|
-
export declare type TuiAlertAutoClose = boolean | number |
|
|
4
|
+
export declare type TuiAlertAutoClose = TuiHandler<TuiNotification, boolean | number> | boolean | number;
|
|
5
5
|
export interface TuiAlertOptions<I> {
|
|
6
6
|
readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>>;
|
|
7
7
|
readonly status: TuiNotification;
|
|
@@ -11,6 +11,6 @@ export declare class TuiSvgDefsHostComponent implements OnInit {
|
|
|
11
11
|
isBrowser: boolean;
|
|
12
12
|
constructor(svgService: TuiSvgService, changeDetectorRef: ChangeDetectorRef, destroy$: TuiDestroyService, platformId: Record<string, unknown>);
|
|
13
13
|
ngOnInit(): void;
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TuiSvgDefsHostComponent,
|
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiSvgDefsHostComponent, [null, null, { self: true; }, null]>;
|
|
15
15
|
static ɵcmp: i0.ɵɵComponentDeclaration<TuiSvgDefsHostComponent, "tui-svg-defs-host", never, {}, {}, never, never>;
|
|
16
16
|
}
|
package/mask/text-mask-list.d.ts
CHANGED
|
@@ -4,4 +4,4 @@ import type { TuiTextMaskPipeResult } from './text-mask-pipe-result';
|
|
|
4
4
|
/**
|
|
5
5
|
* {@link https://github.com/text-mask/text-mask/blob/master/componentDocumentation.md#pipe}
|
|
6
6
|
*/
|
|
7
|
-
export declare type TuiTextMaskPipeHandler = (conformedValue: string, config:
|
|
7
|
+
export declare type TuiTextMaskPipeHandler = (conformedValue: string, config: TuiTextMaskConfig & TuiTextMaskOptions) => TuiTextMaskPipeResult | string | false;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@taiga-ui/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.12.0",
|
|
4
4
|
"description": "Core library for creating Angular components and applications using Taiga UI",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
@@ -15,20 +15,20 @@
|
|
|
15
15
|
"repository": "https://github.com/tinkoff/taiga-ui",
|
|
16
16
|
"license": "Apache-2.0",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@taiga-ui/i18n": "^3.
|
|
18
|
+
"@taiga-ui/i18n": "^3.12.0",
|
|
19
19
|
"tslib": "^2.0.0"
|
|
20
20
|
},
|
|
21
21
|
"peerDependencies": {
|
|
22
|
-
"@angular/animations": ">=
|
|
23
|
-
"@angular/common": ">=
|
|
24
|
-
"@angular/core": ">=
|
|
25
|
-
"@angular/forms": ">=
|
|
26
|
-
"@angular/platform-browser": ">=
|
|
27
|
-
"@angular/router": ">=
|
|
22
|
+
"@angular/animations": ">=12.0.0",
|
|
23
|
+
"@angular/common": ">=12.0.0",
|
|
24
|
+
"@angular/core": ">=12.0.0",
|
|
25
|
+
"@angular/forms": ">=12.0.0",
|
|
26
|
+
"@angular/platform-browser": ">=12.0.0",
|
|
27
|
+
"@angular/router": ">=12.0.0",
|
|
28
28
|
"@ng-web-apis/common": ">=2.0.0",
|
|
29
29
|
"@ng-web-apis/mutation-observer": ">=2.0.0",
|
|
30
|
-
"@taiga-ui/cdk": ">=3.
|
|
31
|
-
"@taiga-ui/i18n": ">=3.
|
|
30
|
+
"@taiga-ui/cdk": ">=3.12.0",
|
|
31
|
+
"@taiga-ui/i18n": ">=3.12.0",
|
|
32
32
|
"@tinkoff/ng-event-plugins": ">=3.0.0",
|
|
33
33
|
"@tinkoff/ng-polymorpheus": ">=4.0.0",
|
|
34
34
|
"rxjs": ">=6.0.0"
|
|
@@ -5,7 +5,7 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export declare class TuiFormatDatePipe implements PipeTransform {
|
|
6
6
|
private readonly service;
|
|
7
7
|
constructor(service: TuiFormatDateService);
|
|
8
|
-
transform(timestampOrDate:
|
|
8
|
+
transform(timestampOrDate: Date | number): Observable<string>;
|
|
9
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<TuiFormatDatePipe, never>;
|
|
10
10
|
static ɵpipe: i0.ɵɵPipeDeclaration<TuiFormatDatePipe, "tuiFormatDate">;
|
|
11
11
|
}
|
|
@@ -5,6 +5,6 @@ import { Observable } from 'rxjs';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class TuiRouterLinkActiveService extends Observable<boolean> {
|
|
7
7
|
constructor(routerLinkActive: RouterLinkActive | null, ngZone: NgZone, animationFrame$: Observable<number>, destroy$: TuiDestroyService);
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TuiRouterLinkActiveService, [{ optional: true; }, null, null,
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TuiRouterLinkActiveService, [{ optional: true; }, null, null, { self: true; }]>;
|
|
9
9
|
static ɵprov: i0.ɵɵInjectableDeclaration<TuiRouterLinkActiveService>;
|
|
10
10
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { SafeHtml } from '@angular/platform-browser';
|
|
3
|
+
import { TuiHandler } from '@taiga-ui/cdk';
|
|
4
|
+
export declare const TUI_SVG_CONTENT_PROCESSOR: InjectionToken<TuiHandler<string | SafeHtml, string | SafeHtml>>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { SafeHtml } from '@angular/platform-browser';
|
|
3
|
+
import { TuiHandler } from '@taiga-ui/cdk';
|
|
4
|
+
export declare const TUI_SVG_SRC_PROCESSOR: InjectionToken<TuiHandler<string | SafeHtml, string | SafeHtml>>;
|
package/types/brightness.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiBrightness = '
|
|
1
|
+
export declare type TuiBrightness = 'onDark' | 'onLight';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiDecimalSymbol = '
|
|
1
|
+
export declare type TuiDecimalSymbol = ',' | '.';
|
package/types/decimal.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiDecimal = '
|
|
1
|
+
export declare type TuiDecimal = 'always' | 'never' | 'not-zero';
|
package/types/dialog-size.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { TuiSizeL, TuiSizeS } from './size';
|
|
2
|
-
export declare type TuiDialogSize =
|
|
2
|
+
export declare type TuiDialogSize = TuiSizeL | TuiSizeS | 'auto' | 'fullscreen' | 'page';
|
package/types/direction.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare type TuiHorizontalDirection = 'left' | 'right';
|
|
2
|
-
export declare type TuiVerticalDirection = '
|
|
2
|
+
export declare type TuiVerticalDirection = 'bottom' | 'top';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiDropdownWidth = '
|
|
1
|
+
export declare type TuiDropdownWidth = 'auto' | 'fixed' | 'min';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiHintDirection = '
|
|
1
|
+
export declare type TuiHintDirection = 'bottom-left' | 'bottom-right' | 'bottom' | 'left-bottom' | 'left-top' | 'left' | 'right-bottom' | 'right-top' | 'right' | 'top-left' | 'top-right' | 'top';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { TuiDay, TuiHandler } from '@taiga-ui/cdk';
|
|
2
|
-
export declare type TuiMarkerHandler = TuiHandler<TuiDay, [] | [string] | [string
|
|
2
|
+
export declare type TuiMarkerHandler = TuiHandler<TuiDay, [] | [string, string] | [string]>;
|
package/types/option-role.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiOptionRole = '
|
|
1
|
+
export declare type TuiOptionRole = 'menuitem' | 'menuitemcheckbox' | 'menuitemradio' | 'option';
|
package/types/orientation.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare type TuiOrientation = '
|
|
1
|
+
export declare type TuiOrientation = 'horizontal' | 'vertical';
|
package/types/size.d.ts
CHANGED
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
* 'xxl' - extra extra large
|
|
11
11
|
*/
|
|
12
12
|
export declare type TuiSizeM = 'm';
|
|
13
|
-
export declare type TuiSizeS = 's'
|
|
13
|
+
export declare type TuiSizeS = TuiSizeM | 's';
|
|
14
14
|
export declare type TuiSizeL = TuiSizeM | 'l';
|
|
15
|
-
export declare type TuiSizeXS = 'xs'
|
|
16
|
-
export declare type TuiSizeXXS = 'xxs'
|
|
15
|
+
export declare type TuiSizeXS = TuiSizeS | 'xs';
|
|
16
|
+
export declare type TuiSizeXXS = TuiSizeXS | 'xxs';
|
|
17
17
|
export declare type TuiSizeXL = TuiSizeL | 'xl';
|
|
18
18
|
export declare type TuiSizeXXL = TuiSizeXL | 'xxl';
|
|
@@ -5,4 +5,4 @@ import { TuiSizeXXL, TuiSizeXXS } from '@taiga-ui/core/types';
|
|
|
5
5
|
* @param size size that we need to compare
|
|
6
6
|
* @param biggerThanSize size to compare with, 's' by default
|
|
7
7
|
*/
|
|
8
|
-
export declare function tuiSizeBigger(size:
|
|
8
|
+
export declare function tuiSizeBigger(size: TuiSizeXXL | TuiSizeXXS, biggerThanSize?: TuiSizeXXL | TuiSizeXXS): boolean;
|