@taiga-ui/core 3.22.0 → 3.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/bundles/taiga-ui-core-components-alert.umd.js +1 -1
  2. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  3. package/bundles/taiga-ui-core-components-button.umd.js +1 -1
  4. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-components-dialog.umd.js +1 -1
  6. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-error.umd.js +11 -1
  8. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-expand.umd.js +2 -1
  10. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +86 -23
  12. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-link.umd.js +1 -1
  14. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-loader.umd.js +1 -1
  16. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-notification.umd.js +2 -2
  18. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +6 -6
  20. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-root.umd.js +1 -1
  22. package/bundles/taiga-ui-core-components-scrollbar.umd.js +1 -1
  23. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  24. package/bundles/taiga-ui-core-components-tooltip.umd.js +2 -5
  25. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  26. package/bundles/taiga-ui-core-directives-dropdown.umd.js +1 -1
  27. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  28. package/bundles/taiga-ui-core-directives-hint.umd.js +5 -1
  29. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  30. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +1 -4
  31. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  32. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +1 -5
  33. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  34. package/bundles/taiga-ui-core-services.umd.js +88 -30
  35. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  36. package/bundles/taiga-ui-core-tokens.umd.js +2 -0
  37. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  38. package/components/error/error.component.d.ts +2 -0
  39. package/components/hosted-dropdown/accessor-proxy.directive.d.ts +9 -0
  40. package/components/hosted-dropdown/hosted-dropdown.module.d.ts +8 -7
  41. package/components/hosted-dropdown/index.d.ts +1 -0
  42. package/components/primitive-textfield/primitive-textfield.component.d.ts +1 -1
  43. package/directives/hint/hint-hover.directive.d.ts +2 -1
  44. package/directives/textfield-controller/textfield-options.d.ts +1 -1
  45. package/esm2015/components/alert/alert.component.js +2 -2
  46. package/esm2015/components/button/button.component.js +1 -1
  47. package/esm2015/components/dialog/dialog.component.js +2 -2
  48. package/esm2015/components/error/error.component.js +13 -3
  49. package/esm2015/components/expand/expand.component.js +4 -3
  50. package/esm2015/components/hosted-dropdown/accessor-proxy.directive.js +42 -0
  51. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +25 -8
  52. package/esm2015/components/hosted-dropdown/hosted-dropdown.module.js +10 -3
  53. package/esm2015/components/hosted-dropdown/index.js +2 -1
  54. package/esm2015/components/link/link.component.js +1 -1
  55. package/esm2015/components/loader/loader.component.js +2 -2
  56. package/esm2015/components/notification/notification.component.js +3 -3
  57. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +5 -5
  58. package/esm2015/components/primitive-textfield/textfield/textfield.component.js +1 -1
  59. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +2 -2
  60. package/esm2015/components/root/root.component.js +1 -1
  61. package/esm2015/components/scrollbar/scrollbar.component.js +1 -1
  62. package/esm2015/components/tooltip/tooltip.component.js +3 -6
  63. package/esm2015/directives/dropdown/dropdown.component.js +2 -2
  64. package/esm2015/directives/hint/hint-hover.directive.js +7 -4
  65. package/esm2015/directives/textfield-controller/textfield-options.js +2 -2
  66. package/esm2015/internal/primitive-year-month-pagination/primitive-year-month-pagination.component.js +2 -6
  67. package/esm2015/services/breakpoint.service.js +48 -0
  68. package/esm2015/services/index.js +2 -1
  69. package/esm2015/tokens/is-mobile-resolution.js +3 -1
  70. package/fesm2015/taiga-ui-core-components-alert.js +1 -1
  71. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  72. package/fesm2015/taiga-ui-core-components-button.js +1 -1
  73. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  74. package/fesm2015/taiga-ui-core-components-dialog.js +1 -1
  75. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  76. package/fesm2015/taiga-ui-core-components-error.js +12 -2
  77. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  78. package/fesm2015/taiga-ui-core-components-expand.js +3 -2
  79. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  80. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +71 -11
  81. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  82. package/fesm2015/taiga-ui-core-components-link.js +1 -1
  83. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  84. package/fesm2015/taiga-ui-core-components-loader.js +1 -1
  85. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  86. package/fesm2015/taiga-ui-core-components-notification.js +2 -2
  87. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  88. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +6 -6
  89. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  90. package/fesm2015/taiga-ui-core-components-root.js +1 -1
  91. package/fesm2015/taiga-ui-core-components-scrollbar.js +1 -1
  92. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  93. package/fesm2015/taiga-ui-core-components-tooltip.js +2 -5
  94. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  95. package/fesm2015/taiga-ui-core-directives-dropdown.js +1 -1
  96. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  97. package/fesm2015/taiga-ui-core-directives-hint.js +6 -3
  98. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  99. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +1 -1
  100. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  101. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +1 -5
  102. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  103. package/fesm2015/taiga-ui-core-services.js +48 -6
  104. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  105. package/fesm2015/taiga-ui-core-tokens.js +2 -0
  106. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  107. package/package.json +4 -4
  108. package/services/breakpoint.service.d.ts +13 -0
  109. package/services/index.d.ts +1 -0
  110. package/styles/mixins/textfield.less +15 -7
  111. package/styles/mixins/textfield.scss +7 -0
  112. package/styles/theme/wrapper/textfield.less +5 -1
  113. package/tokens/is-mobile-resolution.d.ts +2 -0
@@ -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/visual-viewport.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, merge, Observable, timer} 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 ? merge(\n timer(0), // SSR (animationFrame$ never emits value during SSR)\n animationFrame$,\n ).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","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_WEBKIT} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiVisualViewportService {\n constructor(\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_WEBKIT) private readonly isWebkit: boolean,\n ) {}\n\n // https://bugs.webkit.org/show_bug.cgi?id=207089\n correct(point: TuiPoint): TuiPoint {\n return this.isWebkit\n ? [\n point[0] + (this.windowRef.visualViewport?.offsetTop ?? 0),\n point[1] + (this.windowRef.visualViewport?.offsetLeft ?? 0),\n ]\n : point;\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-services.js","sources":["../../../projects/core/services/breakpoint.service.ts","../../../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/visual-viewport.service.ts","../../../projects/core/services/taiga-ui-core-services.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\nimport {TUI_MEDIA} from '@taiga-ui/core/tokens';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {map, share, startWith} from 'rxjs/operators';\n\n/**\n * Service to provide the current breakpoint based on Taiga UI's media queries\n */\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiBreakpointService extends Observable<MediaKey | null> {\n constructor(@Inject(TUI_MEDIA) media: TuiMedia, @Inject(WINDOW) windowRef: Window) {\n const breakpoints = getBreakpoints(media);\n const events$ = breakpoints.map(({query}) =>\n fromEvent<MediaQueryListEvent>(windowRef.matchMedia(query), `change`),\n );\n const media$ = merge(...events$).pipe(\n map(() => currentBreakpoint(breakpoints, windowRef.innerWidth).name),\n startWith(currentBreakpoint(breakpoints, windowRef.innerWidth).name),\n share(),\n );\n\n super(subscriber => media$.subscribe(subscriber));\n }\n}\n\ntype MediaKey = Omit<keyof TuiMedia, 'tablet'>;\n\ninterface Breakpoint {\n name: MediaKey;\n query: string;\n width: number;\n}\n\nfunction getBreakpoints(media: TuiMedia): Breakpoint[] {\n return Object.entries(media).map(([name, width]) => ({\n name: name as MediaKey,\n /**\n * @note:\n * min-width query in css is inclusive, but in window.matchMedia it is exclusive\n * so we need to subtract 1px to get the same result\n */\n query: `(max-width: ${width - 1}px)`,\n width,\n }));\n}\n\nfunction currentBreakpoint(breakpoints: Breakpoint[], innerWidth: number): Breakpoint {\n return breakpoints.find(({width}) => innerWidth < width) ?? breakpoints.slice(-1)[0];\n}\n","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, merge, Observable, timer} 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 ? merge(\n timer(0), // SSR (animationFrame$ never emits value during SSR)\n animationFrame$,\n ).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","import {Inject, Injectable} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_WEBKIT} from '@taiga-ui/cdk';\nimport {TuiPoint} from '@taiga-ui/core/types';\n\n@Injectable({\n providedIn: `root`,\n})\nexport class TuiVisualViewportService {\n constructor(\n @Inject(WINDOW) private readonly windowRef: Window,\n @Inject(TUI_IS_WEBKIT) private readonly isWebkit: boolean,\n ) {}\n\n // https://bugs.webkit.org/show_bug.cgi?id=207089\n correct(point: TuiPoint): TuiPoint {\n return this.isWebkit\n ? [\n point[0] + (this.windowRef.visualViewport?.offsetTop ?? 0),\n point[1] + (this.windowRef.visualViewport?.offsetLeft ?? 0),\n ]\n : point;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAOA;;AAEG;AAIG,MAAO,oBAAqB,SAAQ,UAA2B,CAAA;IACjE,WAA+B,CAAA,KAAe,EAAkB,SAAiB,EAAA;AAC7E,QAAA,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAC,KAAK,EAAC,KACpC,SAAS,CAAsB,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAA,MAAA,CAAQ,CAAC,CACxE,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CACjC,GAAG,CAAC,MAAM,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EACpE,SAAS,CAAC,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EACpE,KAAK,EAAE,CACV,CAAC;AAEF,QAAA,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;KACrD;;kHAbQ,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EACT,SAAS,EAAA,EAAA,EAAA,KAAA,EAA2B,MAAM,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AADrD,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;8BAA8C,MAAM,EAAA,UAAA,EAAA,CAAA;0BAAhC,MAAM;2BAAC,MAAM,CAAA;;AAuBlE,SAAS,cAAc,CAAC,KAAe,EAAA;AACnC,IAAA,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM;AACjD,QAAA,IAAI,EAAE,IAAgB;AACtB;;;;AAIG;AACH,QAAA,KAAK,EAAE,CAAA,YAAA,EAAe,KAAK,GAAG,CAAC,CAAK,GAAA,CAAA;QACpC,KAAK;AACR,KAAA,CAAC,CAAC,CAAC;AACR,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAyB,EAAE,UAAkB,EAAA;;IACpE,OAAO,CAAA,EAAA,GAAA,WAAW,CAAC,IAAI,CAAC,CAAC,EAAC,KAAK,EAAC,KAAK,UAAU,GAAG,KAAK,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzF;;MC9Ca,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,EACzB,QAA2B,EAAA;QAE9D,MAAM,OAAO,GAAG,gBAAgB;cAC1B,KAAK,CACD,KAAK,CAAC,CAAC,CAAC;YACR,eAAe,CAClB,CAAC,IAAI,CACF,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;;AAtBQ,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,aACP,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;4HAP5B,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,IAAI;;0BAAI,MAAM;2BAAC,iBAAiB,CAAA;;;ACRzC;;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;;;MCfZ,wBAAwB,CAAA;IACjC,WACqC,CAAA,SAAiB,EACV,QAAiB,EAAA;QADxB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAQ;QACV,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAS;KACzD;;AAGJ,IAAA,OAAO,CAAC,KAAe,EAAA;;QACnB,OAAO,IAAI,CAAC,QAAQ;AAChB,cAAE;AACI,gBAAA,KAAK,CAAC,CAAC,CAAC,IAAI,MAAA,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,CAAC,CAAC;AAC1D,gBAAA,KAAK,CAAC,CAAC,CAAC,IAAI,MAAA,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,CAAC,CAAC;AAC9D,aAAA;cACD,KAAK,CAAC;KACf;;sHAdQ,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAErB,MAAM,EAAA,EAAA,EAAA,KAAA,EACN,aAAa,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAHhB,wBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,cAFrB,CAAM,IAAA,CAAA,EAAA,CAAA,CAAA;4FAET,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,CAAM,IAAA,CAAA;AACrB,iBAAA,CAAA;0DAGmD,MAAM,EAAA,UAAA,EAAA,CAAA;0BAAjD,MAAM;2BAAC,MAAM,CAAA;;0BACb,MAAM;2BAAC,aAAa,CAAA;;;ACX7B;;AAEG;;;;"}
@@ -148,6 +148,8 @@ const TUI_MEDIA = new InjectionToken(`[TUI_MEDIA]`, {
148
148
  });
149
149
 
150
150
  /**
151
+ * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}
152
+ * TODO: drop in v4.0
151
153
  * Mobile resolution stream for private providers
152
154
  */
153
155
  const TUI_IS_MOBILE_RES = new InjectionToken(`[TUI_IS_MOBILE_RES]`, {
@@ -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/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\n/**\n * Duration of all Taiga UI animations in ms\n */\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]`,\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\n/**\n * Options for Taiga UI animations\n */\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\n/**\n * Flag to enable assertions across Taiga UI\n */\nexport const TUI_ASSERT_ENABLED = new InjectionToken(`[TUI_ASSERT_ENABLED]`, {\n factory: () => isDevMode(),\n});\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]`,\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\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]`,\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\n/**\n * Token for adding data-type attribute to calendar cell\n */\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]`,\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]`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * ElementRef when you cannot use @Input for single time injection\n */\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(`[TUI_ELEMENT_REF]`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\n/**\n * The first day of the week index\n */\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]`, {\n factory: tuiExtractI18n(`months`),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]`, {\n factory: tuiExtractI18n(`close`),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(`[TUI_SHORT_WEEK_DAYS]`, {\n factory: tuiExtractI18n(`shortWeekDays`),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Path to icons\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * A key/value dictionary of icon names and src to be defined with TuiSvgService\n */\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(`[TUI_ICONS]`, {\n factory: () => ({}),\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\n/**\n * A handler to retrieve USE id for icon by name\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(`[TUI_ICONS_PATH]`, {\n factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE)),\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(`[TUI_MEDIA]`, {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\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\n/**\n * Mobile resolution stream for private providers\n */\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]`,\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\n/**\n * Mode stream for private providers\n */\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(`[TUI_MODE]`);\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\n/**\n * Default parameters for notification alert component\n */\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]`,\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, ValueProvider} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n\nexport const tuiNumberFormatProvider: (\n options: Partial<TuiNumberFormatSettings>,\n) => ValueProvider = (options: Partial<TuiNumberFormatSettings>) => ({\n provide: TUI_NUMBER_FORMAT,\n useValue: {...TUI_DEFAULT_NUMBER_FORMAT, ...options},\n});\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]`);\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 * Ordered calendars i18n texts\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]`, {\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\n/**\n * A custom Sanitizer to sanitize source before inlining\n */\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(`[TUI_SANITIZER]`);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * Scrollable container\n */\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]`,\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, switchMap, takeUntil} from 'rxjs/operators';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]`,\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 switchMap(() =>\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\n/**\n * Transform function the contents of the loaded svg file\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_CONTENT_PROCESSOR]`, {\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\n/**\n * Source path processor for svg\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_SRC_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_SRC_PROCESSOR]`, {\n factory: () => identity,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\n/**\n * Appearance for inputs\n * @deprecated use {@link TUI_TEXTFIELD_APPEARANCE_DIRECTIVE} instead\n * TODO: Remove in 4.0\n */\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\n/**\n * An interface to communicate with textfield based controls\n */\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]`,\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]`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\n/**\n * Buffer token to pass NG_VALUE_ACCESSOR to a different Injector\n */\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]`,\n);\n","import {inject, InjectionToken, Provider, Type} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiRectAccessor} from '@taiga-ui/core/abstract';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(`[TUI_VIEWPORT]`, {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return {\n type: `viewport`,\n getClientRect() {\n return {\n top: 0,\n left: 0,\n right: windowRef.innerWidth,\n bottom: windowRef.innerHeight,\n width: windowRef.innerWidth,\n height: windowRef.innerHeight,\n };\n },\n };\n },\n});\n\nexport function tuiAsViewport(useExisting: Type<TuiRectAccessor>): Provider {\n return {\n provide: TUI_VIEWPORT,\n useExisting,\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-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/viewport.ts","../../../projects/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\n/**\n * Duration of all Taiga UI animations in ms\n */\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n `[TUI_ANIMATIONS_DURATION]`,\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\n/**\n * Options for Taiga UI animations\n */\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n `[TUI_ANIMATION_OPTIONS]`,\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\n/**\n * Flag to enable assertions across Taiga UI\n */\nexport const TUI_ASSERT_ENABLED = new InjectionToken(`[TUI_ASSERT_ENABLED]`, {\n factory: () => isDevMode(),\n});\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\n/**\n * Accessor for data-list options\n */\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n `[TUI_DATA_LIST_ACCESSOR]`,\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\n/**\n * DataList controller\n */\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<unknown>>(\n `[TUI_DATA_LIST_HOST]`,\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\n/**\n * Token for adding data-type attribute to calendar cell\n */\nexport const TUI_DAY_TYPE_HANDLER = new InjectionToken<TuiHandler<TuiDay, string>>(\n `[TUI_DAY_TYPE_HANDLER]`,\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]`,\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * ElementRef when you cannot use @Input for single time injection\n */\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(`[TUI_ELEMENT_REF]`);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\n/**\n * The first day of the week index\n */\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n `[TUI_FIRST_DAY_OF_WEEK]`,\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n';\n\n/**\n * Localized months names\n */\nexport const TUI_MONTHS = new InjectionToken(`[TUI_MONTHS]`, {\n factory: tuiExtractI18n(`months`),\n});\n\n/**\n * i18n 'close' word\n */\nexport const TUI_CLOSE_WORD = new InjectionToken(`[TUI_CLOSE_WORD]`, {\n factory: tuiExtractI18n(`close`),\n});\n\n/**\n * i18n 'Nothing found' message\n */\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `[TUI_NOTHING_FOUND_MESSAGE]`,\n {\n factory: tuiExtractI18n(`nothingFoundMessage`),\n },\n);\n\n/**\n * i18n of error message\n */\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(\n `[TUI_DEFAULT_ERROR_MESSAGE]`,\n {\n factory: tuiExtractI18n(`defaultErrorMessage`),\n },\n);\n\n/**\n * spin i18n texts\n */\nexport const TUI_SPIN_TEXTS = new InjectionToken(`[TUI_SPIN_TEXTS]`, {\n factory: tuiExtractI18n(`spinTexts`),\n});\n\n/**\n * calendars i18n texts\n */\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken(`[TUI_SHORT_WEEK_DAYS]`, {\n factory: tuiExtractI18n(`shortWeekDays`),\n});\n","import {InjectionToken} from '@angular/core';\n\n/**\n * Path to icons\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PLACE: InjectionToken<string> = new InjectionToken<string>(\n `[TUI_ICONS_PLACE]`,\n {\n factory: () => `assets/taiga-ui/icons`,\n },\n);\n","import {InjectionToken} from '@angular/core';\n\n/**\n * A key/value dictionary of icon names and src to be defined with TuiSvgService\n */\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(`[TUI_ICONS]`, {\n factory: () => ({}),\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\n/**\n * A handler to retrieve USE id for icon by name\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(`[TUI_ICONS_PATH]`, {\n factory: () => tuiIconsPathFactory(inject(TUI_ICONS_PLACE)),\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\n/**\n * Token for media constant\n */\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>(`[TUI_MEDIA]`, {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\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\n/**\n * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}\n * TODO: drop in v4.0\n * Mobile resolution stream for private providers\n */\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n `[TUI_IS_MOBILE_RES]`,\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\n/**\n * Mode stream for private providers\n */\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(`[TUI_MODE]`);\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\n/**\n * Default parameters for notification alert component\n */\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<TuiNotificationDefaultOptions>(\n `[TUI_NOTIFICATION_OPTIONS]`,\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, ValueProvider} from '@angular/core';\nimport {TUI_DEFAULT_NUMBER_FORMAT} from '@taiga-ui/core/constants';\nimport {TuiNumberFormatSettings} from '@taiga-ui/core/interfaces';\n\n/**\n * Formatting configuration for displayed numbers\n */\nexport const TUI_NUMBER_FORMAT = new InjectionToken<TuiNumberFormatSettings>(\n `[TUI_NUMBER_FORMAT]`,\n {\n factory: () => TUI_DEFAULT_NUMBER_FORMAT,\n },\n);\n\nexport const tuiNumberFormatProvider: (\n options: Partial<TuiNumberFormatSettings>,\n) => ValueProvider = (options: Partial<TuiNumberFormatSettings>) => ({\n provide: TUI_NUMBER_FORMAT,\n useValue: {...TUI_DEFAULT_NUMBER_FORMAT, ...options},\n});\n","import {InjectionToken, Provider, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\n/**\n * Content for tuiOption component\n */\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<Record<string, unknown>>>>\n>(`[TUI_OPTION_CONTENT]`);\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 * Ordered calendars i18n texts\n * @deprecated\n */\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>(`[TUI_ORDERED_SHORT_WEEK_DAYS]`, {\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\n/**\n * A custom Sanitizer to sanitize source before inlining\n */\nexport const TUI_SANITIZER = new InjectionToken<Sanitizer>(`[TUI_SANITIZER]`);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\n/**\n * Scrollable container\n */\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n `[TUI_SCROLL_REF]`,\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, switchMap, takeUntil} from 'rxjs/operators';\n\n/**\n * A stream of possible selection changes\n */\nexport const TUI_SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `[TUI_SELECTION_STREAM]`,\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 switchMap(() =>\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\n/**\n * Transform function the contents of the loaded svg file\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_CONTENT_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_CONTENT_PROCESSOR]`, {\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\n/**\n * Source path processor for svg\n * @deprecated Use {@link TUI_SVG_OPTIONS} instead\n */\nexport const TUI_SVG_SRC_PROCESSOR = new InjectionToken<\n TuiHandler<SafeHtml | string, SafeHtml | string>\n>(`[TUI_SVG_SRC_PROCESSOR]`, {\n factory: () => identity,\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\n/**\n * Appearance for inputs\n * @deprecated use {@link TUI_TEXTFIELD_APPEARANCE_DIRECTIVE} instead\n * TODO: Remove in 4.0\n */\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n `[TUI_TEXTFIELD_APPEARANCE]`,\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken, Provider, Type} from '@angular/core';\nimport {TuiTextfieldHost} from '@taiga-ui/core/interfaces';\n\n/**\n * An interface to communicate with textfield based controls\n */\nexport const TUI_TEXTFIELD_HOST = new InjectionToken<TuiTextfieldHost>(\n `[TUI_TEXTFIELD_HOST]`,\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]`, {\n factory: () => `Taiga`,\n});\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\n/**\n * Buffer token to pass NG_VALUE_ACCESSOR to a different Injector\n */\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n `[TUI_VALUE_ACCESSOR]`,\n);\n","import {inject, InjectionToken, Provider, Type} from '@angular/core';\nimport {WINDOW} from '@ng-web-apis/common';\nimport {TuiRectAccessor} from '@taiga-ui/core/abstract';\n\n/**\n * Viewport accessor\n */\nexport const TUI_VIEWPORT = new InjectionToken<TuiRectAccessor>(`[TUI_VIEWPORT]`, {\n factory: () => {\n const windowRef = inject(WINDOW);\n\n return {\n type: `viewport`,\n getClientRect() {\n return {\n top: 0,\n left: 0,\n right: windowRef.innerWidth,\n bottom: windowRef.innerHeight,\n width: windowRef.innerWidth,\n height: windowRef.innerHeight,\n };\n },\n };\n },\n});\n\nexport function tuiAsViewport(useExisting: Type<TuiRectAccessor>): Provider {\n return {\n provide: TUI_VIEWPORT,\n useExisting,\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "3.22.0",
3
+ "version": "3.23.0",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",
@@ -15,7 +15,7 @@
15
15
  "repository": "https://github.com/tinkoff/taiga-ui",
16
16
  "license": "Apache-2.0",
17
17
  "dependencies": {
18
- "@taiga-ui/i18n": "^3.22.0",
18
+ "@taiga-ui/i18n": "^3.23.0",
19
19
  "tslib": ">=2.0.0"
20
20
  },
21
21
  "peerDependencies": {
@@ -27,8 +27,8 @@
27
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.22.0",
31
- "@taiga-ui/i18n": ">=3.22.0",
30
+ "@taiga-ui/cdk": ">=3.23.0",
31
+ "@taiga-ui/i18n": ">=3.23.0",
32
32
  "@tinkoff/ng-event-plugins": ">=3.1.0",
33
33
  "@tinkoff/ng-polymorpheus": ">=4.0.0",
34
34
  "rxjs": ">=6.0.0"
@@ -0,0 +1,13 @@
1
+ import { TuiMedia } from '@taiga-ui/core/interfaces';
2
+ import { Observable } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Service to provide the current breakpoint based on Taiga UI's media queries
6
+ */
7
+ export declare class TuiBreakpointService extends Observable<MediaKey | null> {
8
+ constructor(media: TuiMedia, windowRef: Window);
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiBreakpointService, never>;
10
+ static ɵprov: i0.ɵɵInjectableDeclaration<TuiBreakpointService>;
11
+ }
12
+ declare type MediaKey = Omit<keyof TuiMedia, 'tablet'>;
13
+ export {};
@@ -1,3 +1,4 @@
1
+ export * from './breakpoint.service';
1
2
  export * from './format-date.service';
2
3
  export * from './hint.service';
3
4
  export * from './night-theme.service';
@@ -133,6 +133,10 @@
133
133
  padding-right: 0.25rem;
134
134
  padding-inline-end: 0.25rem;
135
135
  padding-inline-start: 0;
136
+
137
+ & + * {
138
+ margin: 0;
139
+ }
136
140
  }
137
141
 
138
142
  .textfield-placeholder() {
@@ -217,6 +221,9 @@
217
221
  display: flex;
218
222
  width: 1.5rem;
219
223
  height: 1.5rem;
224
+ margin: 0 0 0 0.25rem;
225
+ margin-inline-start: 0.25rem;
226
+ margin-inline-end: 0;
220
227
  align-items: center;
221
228
  justify-content: center;
222
229
  box-sizing: border-box;
@@ -263,13 +270,14 @@
263
270
  pointer-events: none;
264
271
 
265
272
  &_left {
266
- margin: 0 2 * @space 0 -@space;
267
- margin-inline-start: -@space;
268
- margin-inline-end: 2 * @space;
269
-
270
- :host[data-size='s'] & {
271
- margin-right: @space;
272
- margin-inline-end: @space;
273
+ margin: 0 0.375rem 0 -0.25rem;
274
+ margin-inline-start: -0.25rem;
275
+ margin-inline-end: 0.375rem;
276
+
277
+ :host[data-size='l'] & {
278
+ margin: 0 0.5rem 0 -0.25rem;
279
+ margin-inline-start: -0.25rem;
280
+ margin-inline-end: 0.5rem;
273
281
  }
274
282
  }
275
283
  }
@@ -134,6 +134,10 @@ $line-height-l: 1.25rem;
134
134
  padding-right: 0.25rem;
135
135
  padding-inline-end: 0.25rem;
136
136
  padding-inline-start: 0;
137
+
138
+ & + * {
139
+ margin: 0;
140
+ }
137
141
  }
138
142
 
139
143
  @mixin textfield-placeholder() {
@@ -218,6 +222,9 @@ $line-height-l: 1.25rem;
218
222
  display: flex;
219
223
  width: 1.5rem;
220
224
  height: 1.5rem;
225
+ margin: 0 0 0 0.25rem;
226
+ margin-inline-start: 0.25rem;
227
+ margin-inline-end: 0;
221
228
  align-items: center;
222
229
  justify-content: center;
223
230
  box-sizing: border-box;
@@ -35,7 +35,11 @@
35
35
  });
36
36
 
37
37
  .wrapper-invalid({
38
- --tui-focus: var(--tui-error-fill-night);
38
+ --tui-focus: var(--tui-error-fill);
39
+
40
+ &:after {
41
+ color: var(--tui-error-fill);
42
+ }
39
43
  });
40
44
  }
41
45
 
@@ -1,6 +1,8 @@
1
1
  import { InjectionToken } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
3
  /**
4
+ * @deprecated use {@link https://taiga-ui.dev/services/breakpoint-service TuiBreakpointService}
5
+ * TODO: drop in v4.0
4
6
  * Mobile resolution stream for private providers
5
7
  */
6
8
  export declare const TUI_IS_MOBILE_RES: InjectionToken<Observable<boolean>>;