@taiga-ui/legacy 4.52.0-canary.698642f → 4.52.0-canary.6c67ccf
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/taiga-ui-legacy-classes.mjs +21 -21
- package/fesm2022/taiga-ui-legacy-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs +52 -52
- package/fesm2022/taiga-ui-legacy-components-color-selector.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +13 -13
- package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +13 -13
- package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs +13 -13
- package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs +13 -13
- package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-input.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-island.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-components-island.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +28 -28
- package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +16 -16
- package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-select-option.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-select.mjs +16 -16
- package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs +34 -34
- package/fesm2022/taiga-ui-legacy-components-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-svg.mjs +6 -6
- package/fesm2022/taiga-ui-legacy-components-svg.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-table-bar.mjs +12 -12
- package/fesm2022/taiga-ui-legacy-components-table-bar.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tag.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs +10 -10
- package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +34 -34
- package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +7 -7
- package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-services.mjs +3 -3
- package/fesm2022/taiga-ui-legacy-services.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-tokens.mjs.map +1 -1
- package/fesm2022/taiga-ui-legacy-utils.mjs.map +1 -1
- package/package.json +25 -25
- package/utils/icons-path-factory.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-svg.mjs","sources":["../../../projects/legacy/components/svg/content-processor.ts","../../../projects/legacy/components/svg/deprecated-icons.ts","../../../projects/legacy/components/svg/svg.service.ts","../../../projects/legacy/components/svg/svg-options.ts","../../../projects/legacy/components/svg/svg.component.ts","../../../projects/legacy/components/svg/svg.template.html","../../../projects/legacy/components/svg/taiga-ui-legacy-components-svg.ts"],"sourcesContent":["import {type TuiSafeHtml} from '@taiga-ui/cdk/types';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map((url) =>\n url.slice(4, url.length - 1).replaceAll(/['\"#]+/g, ''),\n );\n\n return Array.from(new Set(ids));\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n *\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n\n return uniqueIds.reduce((newSvg, previousId) => {\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replaceAll(`\"${previousId}\"`, `\"${newId}\"`)\n .replaceAll(`'${previousId}'`, `'${newId}'`)\n .replaceAll(`url('#${previousId}')`, `url('#${newId}')`)\n .replaceAll(`url(\"#${previousId}\")`, `url(\"#${newId}\")`)\n .replaceAll(`url(#${previousId})`, `url(#${newId})`);\n }, svg);\n }\n\n return svg;\n}\n","/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_DEPRECATED_ICONS: Record<string, string> = {\n tuiIconAttach: 'tuiIconPaperclip',\n tuiIconAttention: 'tuiIconAlertCircle',\n tuiIconBackCircle: 'tuiIconArrowLeftCircle',\n tuiIconCall: 'tuiIconPhone',\n tuiIconCallIn: 'tuiIconPhoneIncoming',\n tuiIconCallOut: 'tuiIconPhoneOutgoing',\n tuiIconCallTransfer: 'tuiIconPhoneForwarded',\n tuiIconCancel: 'tuiIconXCircle',\n tuiIconCancelCircle: 'tuiIconSlash',\n tuiIconCard: 'tuiIconCreditCard',\n tuiIconCards: 'tuiIconCreditCard',\n tuiIconChartBar: 'tuiIconBarChart',\n tuiIconChart: 'tuiIconBarChart',\n tuiIconCheckList: 'tuiIconClipboard',\n tuiIconCloseCircle: 'tuiIconXCircle',\n tuiIconCollapse: 'tuiIconMinimize',\n tuiIconComment: 'tuiIconMessageSquare',\n tuiIconCommentFw: 'tuiIconMessageForward',\n tuiIconCompany: 'tuiIconBriefcase',\n tuiIconDefaultDoc: 'tuiIconFile',\n tuiIconDesktop: 'tuiIconMonitor',\n tuiIconDesktopOff: 'tuiIconMonitorOff',\n tuiIconDislike: 'tuiIconThumbsDown',\n tuiIconDone: 'tuiIconCheckCircle',\n tuiIconDraft: 'tuiIconEdit2',\n tuiIconEyeOpen: 'tuiIconEye',\n tuiIconEyeClosed: 'tuiIconEyeOff',\n tuiIconExpand: 'tuiIconMaximize',\n tuiIconExternal: 'tuiIconExternalLink',\n tuiIconFrame: 'tuiIconLayout',\n tuiIconGeo: 'tuiIconMapPin',\n tuiIconHeartFilled: 'tuiIconHeart',\n tuiIconHide: 'tuiIconEyeOff',\n tuiIconImg: 'tuiIconImage',\n tuiIconInfoCircle: 'tuiIconInfo',\n tuiIconLike: 'tuiIconThumbsUp',\n tuiIconLockOpen: 'tuiIconUnlock',\n tuiIconMobile: 'tuiIconSmartphone',\n tuiIconMoreHor: 'tuiIconMoreHorizontal',\n tuiIconMoreVer: 'tuiIconMoreVertical',\n tuiIconMoreVert: 'tuiIconMoreVertical',\n tuiIconPicture: 'tuiIconImage',\n tuiIconPin: 'tuiIconMapPin',\n tuiIconPrint: 'tuiIconPrinter',\n tuiIconRefresh: 'tuiIconRefreshCw',\n tuiIconRemove: 'tuiIconX',\n tuiIconShow: 'tuiIconEye',\n tuiIconSound: 'tuiIconVolume',\n tuiIconSoundOff: 'tuiIconVolumeX',\n tuiIconStarFilled: 'tuiIconStar',\n tuiIconStop: 'tuiIconSquare',\n tuiIconStructure: 'tuiIconLayoutGrid',\n tuiIconTime: 'tuiIconClock',\n tuiIconTooltip: 'tuiIconHelpCircle',\n tuiIconViewList: 'tuiIconList',\n tuiIconWifiOn: 'tuiIconWifi',\n};\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {inject, Injectable, SecurityContext} from '@angular/core';\nimport {DomSanitizer, type SafeHtml} from '@angular/platform-browser';\nimport {TUI_ICON_STARTS, TUI_SANITIZER} from '@taiga-ui/legacy/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/legacy/utils';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiSvgService {\n private readonly tuiSanitizer = inject(TUI_SANITIZER, {optional: true});\n private readonly sanitizer = inject(DomSanitizer);\n private originals: Record<string, string> = {};\n\n public readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor() {\n this.define(inject(TUI_ICON_STARTS));\n }\n\n public 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 public 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 ngDevMode && console.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 {\n type FactoryProvider,\n InjectionToken,\n Optional,\n type Provider,\n SkipSelf,\n} from '@angular/core';\nimport {\n type TuiHandler,\n type TuiSafeHtml,\n type TuiStringHandler,\n} from '@taiga-ui/cdk/types';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiIconsPathFactory} from '@taiga-ui/legacy/utils';\nimport {identity} from 'rxjs';\n\nimport {tuiSvgLinearGradientProcessor} from './content-processor';\nimport {TUI_DEPRECATED_ICONS} from './deprecated-icons';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_DEFAULT_ICONS_PLACE = 'assets/taiga-ui/icons';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport interface TuiSvgOptions {\n readonly contentProcessor: TuiHandler<TuiSafeHtml, TuiSafeHtml>;\n readonly deprecated: TuiStringHandler<string>;\n readonly iconsPlace: string;\n readonly path: (name: string, baseHref?: string) => string;\n readonly srcProcessor: TuiHandler<TuiSafeHtml, TuiSafeHtml>;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport type TuiSvgInterceptorHandler =\n | ((src: TuiSafeHtml, options: TuiSvgOptions) => TuiSafeHtml)\n | ((src: TuiSafeHtml) => TuiSafeHtml);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_DEFAULT_OPTIONS: TuiSvgOptions = {\n iconsPlace: TUI_DEFAULT_ICONS_PLACE,\n path: tuiIconsPathFactory(TUI_DEFAULT_ICONS_PLACE),\n srcProcessor: identity,\n contentProcessor: tuiSvgLinearGradientProcessor,\n deprecated: (src) => {\n const oldIcon = src.replace('Large', '').replace('Outline', '');\n const newIcon = TUI_DEPRECATED_ICONS[oldIcon];\n\n return newIcon\n ? `${oldIcon}/(Large|Outline) is deprecated, use ${newIcon}/(Large|Outline) instead`\n : '';\n },\n};\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_OPTIONS = new InjectionToken<TuiSvgOptions>(\n ngDevMode ? 'TUI_SVG_OPTIONS' : '',\n {\n factory: () => ({\n iconsPlace: TUI_DEFAULT_ICONS_PLACE,\n path: tuiIconsPathFactory(TUI_DEFAULT_ICONS_PLACE),\n deprecated: TUI_SVG_DEFAULT_OPTIONS.deprecated,\n srcProcessor: identity,\n contentProcessor: tuiSvgLinearGradientProcessor,\n }),\n },\n);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_SRC_INTERCEPTORS = new InjectionToken<TuiSvgInterceptorHandler>(\n ngDevMode ? 'TUI_SVG_SRC_INTERCEPTORS' : '',\n);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport function tuiSvgSrcInterceptors(interceptor: TuiSvgInterceptorHandler): Provider {\n return {\n provide: TUI_SVG_SRC_INTERCEPTORS,\n useValue: interceptor,\n multi: true,\n };\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const tuiSvgOptionsProvider: (\n options: Partial<Omit<TuiSvgOptions, 'path'>> & {\n path?: TuiSvgOptions['path'] | string;\n },\n) => FactoryProvider = (options) => ({\n provide: TUI_SVG_OPTIONS,\n deps: [[new SkipSelf(), new Optional(), TUI_SVG_OPTIONS]],\n useFactory: (fallback: TuiSvgOptions | null): TuiSvgOptions => ({\n iconsPlace:\n options.iconsPlace ??\n fallback?.iconsPlace ??\n TUI_SVG_DEFAULT_OPTIONS.iconsPlace,\n path: tuiIsString(options.path)\n ? tuiIconsPathFactory(options.path)\n : (options.path ?? fallback?.path ?? TUI_SVG_DEFAULT_OPTIONS.path),\n deprecated:\n options.deprecated ??\n fallback?.deprecated ??\n TUI_SVG_DEFAULT_OPTIONS.deprecated,\n srcProcessor:\n options.srcProcessor ??\n fallback?.srcProcessor ??\n TUI_SVG_DEFAULT_OPTIONS.srcProcessor,\n contentProcessor:\n options.contentProcessor ??\n fallback?.contentProcessor ??\n TUI_SVG_DEFAULT_OPTIONS.contentProcessor,\n }),\n});\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {AsyncPipe, DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n Input,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, type SafeHtml} from '@angular/platform-browser';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_BASE_HREF} from '@taiga-ui/cdk/tokens';\nimport {type TuiSafeHtml} from '@taiga-ui/cdk/types';\nimport {tuiGetDocumentOrShadowRoot, tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsString, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiStaticRequestService} from '@taiga-ui/legacy/services';\nimport {TUI_SANITIZER} from '@taiga-ui/legacy/tokens';\nimport {TUI_CACHE_BUSTING_PAYLOAD, tuiIsPresumedHTMLString} from '@taiga-ui/legacy/utils';\nimport {\n catchError,\n map,\n type Observable,\n of,\n ReplaySubject,\n startWith,\n switchMap,\n} from 'rxjs';\n\nimport {TuiSvgService} from './svg.service';\nimport {\n TUI_SVG_OPTIONS,\n TUI_SVG_SRC_INTERCEPTORS,\n type TuiSvgInterceptorHandler,\n type TuiSvgOptions,\n} from './svg-options';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport interface TuiIconError {\n readonly icon: string;\n readonly message: string;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\n@Component({\n selector: 'tui-svg',\n imports: [AsyncPipe],\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private icon: TuiSafeHtml = '';\n private readonly doc = inject(DOCUMENT);\n private readonly win = inject(WA_WINDOW);\n private readonly options = inject(TUI_SVG_OPTIONS);\n private readonly tuiSanitizer = inject(TUI_SANITIZER, {optional: true});\n private readonly svgService = inject(TuiSvgService);\n private readonly staticRequestService = inject(TuiStaticRequestService);\n private readonly sanitizer = inject(DomSanitizer);\n private readonly el = tuiInjectElement();\n private readonly baseHref = inject(TUI_BASE_HREF);\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly srcInterceptors = inject(TUI_SVG_SRC_INTERCEPTORS, {\n optional: true,\n }) as readonly TuiSvgInterceptorHandler[] | null;\n\n protected readonly innerHTML$: Observable<SafeHtml> = this.src$.pipe(\n switchMap(() => {\n if (tuiIsString(this.icon)) {\n return this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon));\n }\n\n return of(this.icon);\n }),\n startWith(''),\n );\n\n @Input()\n public set src(src: TuiSafeHtml | null | undefined) {\n const deprecated = this.options.deprecated(String(src));\n\n ngDevMode && console.assert(!deprecated, deprecated);\n\n this.icon = (this.srcInterceptors ?? []).reduce(\n (newSrc, interceptor: TuiSvgInterceptorHandler) =>\n interceptor(newSrc, this.options),\n this.options.srcProcessor(src || ''),\n );\n\n this.src$.next();\n }\n\n public get src(): TuiSafeHtml {\n return this.icon;\n }\n\n public get use(): string {\n if (tuiIsString(this.icon)) {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.options.path);\n }\n\n return '';\n }\n\n public get isInnerHTML(): boolean {\n return (\n !tuiIsString(this.icon) ||\n this.isSrc ||\n this.isExternal ||\n (this.isName && this.isShadowDOM)\n );\n }\n\n protected onError(message: string = MISSING_EXTERNAL_ICON): void {\n const {icon} = this;\n const event = new CustomEvent<TuiIconError>('tui-icon-error', {\n bubbles: true,\n detail: {\n message,\n icon: icon as string,\n },\n });\n\n ngDevMode && console.assert(false, message, icon);\n this.el.dispatchEvent(event);\n }\n\n private get isShadowDOM(): boolean {\n return tuiGetDocumentOrShadowRoot(this.el) !== this.doc;\n }\n\n private get isUse(): boolean {\n return this.use.replace(TUI_CACHE_BUSTING_PAYLOAD, '').includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return (\n this.isUrl ||\n this.isCrossDomain ||\n (!this.isSrc && !this.svgService.getOriginal(String(this.icon)))\n );\n }\n\n private get isUrl(): boolean {\n return (\n tuiIsString(this.icon) &&\n this.icon.replace(TUI_CACHE_BUSTING_PAYLOAD, '').endsWith('.svg')\n );\n }\n\n private get isSrc(): boolean {\n return tuiIsString(this.icon) && tuiIsPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, win} = this;\n\n return (\n isUse && use.startsWith('http') && !!win.origin && !use.startsWith(win.origin)\n );\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiSvgOptions['path']): string {\n return iconsPath(name, this.baseHref);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n return this.sanitize(icon || '');\n }\n\n private sanitize(src: TuiSafeHtml): TuiSafeHtml {\n src = this.options.contentProcessor(src);\n\n return this.tuiSanitizer && tuiIsString(src)\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map((response) =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","<div\n class=\"t-src\"\n [innerHTML]=\"innerHTML$ | async\"\n></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,SAAS,cAAc,GAAA;AACnB,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AACjD;AAEA,SAAS,+BAA+B,CAAC,GAAW,EAAA;AAChD,IAAA,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,KAChE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CACzD;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;AACnC;AAEA;;;;;;;;;;;;;;;;AAgBG;SACa,6BAA6B,CACzC,GAAgB,EAChB,IAAA,GAAwB,cAAc,EAAE,EAAA;AAExC,IAAA,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE;AAClB,QAAA,MAAM,SAAS,GAAG,+BAA+B,CAAC,GAAG,CAAC;QAEtD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,KAAI;AAC3C,YAAA,MAAM,KAAK,GAAG,CAAA,GAAA,EAAM,IAAI,CAAA,CAAA,EAAI,UAAU,EAAE;AAExC,YAAA,OAAO;iBACF,UAAU,CAAC,IAAI,UAAU,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,EAAI,KAAK,GAAG;iBAC1C,UAAU,CAAC,IAAI,UAAU,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,EAAI,KAAK,GAAG;iBAC1C,UAAU,CAAC,SAAS,UAAU,CAAA,EAAA,CAAI,EAAE,CAAA,MAAA,EAAS,KAAK,IAAI;iBACtD,UAAU,CAAC,SAAS,UAAU,CAAA,EAAA,CAAI,EAAE,CAAA,MAAA,EAAS,KAAK,IAAI;iBACtD,UAAU,CAAC,QAAQ,UAAU,CAAA,CAAA,CAAG,EAAE,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAA,CAAG,CAAC;QAC5D,CAAC,EAAE,GAAG,CAAC;IACX;AAEA,IAAA,OAAO,GAAG;AACd;;ACpDA;;;AAGG;AACI,MAAM,oBAAoB,GAA2B;AACxD,IAAA,aAAa,EAAE,kBAAkB;AACjC,IAAA,gBAAgB,EAAE,oBAAoB;AACtC,IAAA,iBAAiB,EAAE,wBAAwB;AAC3C,IAAA,WAAW,EAAE,cAAc;AAC3B,IAAA,aAAa,EAAE,sBAAsB;AACrC,IAAA,cAAc,EAAE,sBAAsB;AACtC,IAAA,mBAAmB,EAAE,uBAAuB;AAC5C,IAAA,aAAa,EAAE,gBAAgB;AAC/B,IAAA,mBAAmB,EAAE,cAAc;AACnC,IAAA,WAAW,EAAE,mBAAmB;AAChC,IAAA,YAAY,EAAE,mBAAmB;AACjC,IAAA,eAAe,EAAE,iBAAiB;AAClC,IAAA,YAAY,EAAE,iBAAiB;AAC/B,IAAA,gBAAgB,EAAE,kBAAkB;AACpC,IAAA,kBAAkB,EAAE,gBAAgB;AACpC,IAAA,eAAe,EAAE,iBAAiB;AAClC,IAAA,cAAc,EAAE,sBAAsB;AACtC,IAAA,gBAAgB,EAAE,uBAAuB;AACzC,IAAA,cAAc,EAAE,kBAAkB;AAClC,IAAA,iBAAiB,EAAE,aAAa;AAChC,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,iBAAiB,EAAE,mBAAmB;AACtC,IAAA,cAAc,EAAE,mBAAmB;AACnC,IAAA,WAAW,EAAE,oBAAoB;AACjC,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,cAAc,EAAE,YAAY;AAC5B,IAAA,gBAAgB,EAAE,eAAe;AACjC,IAAA,aAAa,EAAE,iBAAiB;AAChC,IAAA,eAAe,EAAE,qBAAqB;AACtC,IAAA,YAAY,EAAE,eAAe;AAC7B,IAAA,UAAU,EAAE,eAAe;AAC3B,IAAA,kBAAkB,EAAE,cAAc;AAClC,IAAA,WAAW,EAAE,eAAe;AAC5B,IAAA,UAAU,EAAE,cAAc;AAC1B,IAAA,iBAAiB,EAAE,aAAa;AAChC,IAAA,WAAW,EAAE,iBAAiB;AAC9B,IAAA,eAAe,EAAE,eAAe;AAChC,IAAA,aAAa,EAAE,mBAAmB;AAClC,IAAA,cAAc,EAAE,uBAAuB;AACvC,IAAA,cAAc,EAAE,qBAAqB;AACrC,IAAA,eAAe,EAAE,qBAAqB;AACtC,IAAA,cAAc,EAAE,cAAc;AAC9B,IAAA,UAAU,EAAE,eAAe;AAC3B,IAAA,YAAY,EAAE,gBAAgB;AAC9B,IAAA,cAAc,EAAE,kBAAkB;AAClC,IAAA,aAAa,EAAE,UAAU;AACzB,IAAA,WAAW,EAAE,YAAY;AACzB,IAAA,YAAY,EAAE,eAAe;AAC7B,IAAA,eAAe,EAAE,gBAAgB;AACjC,IAAA,iBAAiB,EAAE,aAAa;AAChC,IAAA,WAAW,EAAE,eAAe;AAC5B,IAAA,gBAAgB,EAAE,mBAAmB;AACrC,IAAA,WAAW,EAAE,cAAc;AAC3B,IAAA,cAAc,EAAE,mBAAmB;AACnC,IAAA,eAAe,EAAE,aAAa;AAC9B,IAAA,aAAa,EAAE,aAAa;;;AC5DhC;AAOA;;;AAGG;MAIU,aAAa,CAAA;AAOtB,IAAA,WAAA,GAAA;QANiB,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AACtD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,IAAA,CAAA,SAAS,GAA2B,EAAE;QAE9B,IAAA,CAAA,MAAM,GAAG,IAAI,eAAe,CAAwB,IAAI,GAAG,EAAE,CAAC;QAG1E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACxC;AAEO,IAAA,MAAM,CAAC,KAA6B,EAAA;AACvC,QAAA,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,MAAM;QAE3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC/B,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC;AACjD,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3B;AAEO,IAAA,WAAW,CAAC,IAAY,EAAA;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI;IACvC;AAEQ,IAAA,UAAU,CAAC,IAAY,EAAE,GAAW,EAAE,GAA0B,EAAA;AACpE,QAAA,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACf;QACJ;QAEA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE;YACT,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,+BAA+B,CAAC;YAEnE;QACJ;AAEA,QAAA,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG;YACb,GAAG,IAAI,CAAC,SAAS;YACjB,CAAC,IAAI,GAAG,GAAG;SACd;IACL;IAEQ,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAA;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnD;AAEQ,IAAA,QAAQ,CAAC,GAAW,EAAA;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CACzC,CAAC,IAAI,CAAC;AACF,cAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG;AACtD,cAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAClE;IACL;8GAvDS,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFV,MAAM,EAAA,CAAA,CAAA;;2FAET,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA;;;ACMD;;;AAGG;AACI,MAAM,uBAAuB,GAAG;AAsBvC;;;AAGG;AACI,MAAM,uBAAuB,GAAkB;AAClD,IAAA,UAAU,EAAE,uBAAuB;AACnC,IAAA,IAAI,EAAE,mBAAmB,CAAC,uBAAuB,CAAC;AAClD,IAAA,YAAY,EAAE,QAAQ;AACtB,IAAA,gBAAgB,EAAE,6BAA6B;AAC/C,IAAA,UAAU,EAAE,CAAC,GAAG,KAAI;AAChB,QAAA,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;AAC/D,QAAA,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC;AAE7C,QAAA,OAAO;AACH,cAAE,CAAA,EAAG,OAAO,CAAA,oCAAA,EAAuC,OAAO,CAAA,wBAAA;cACxD,EAAE;IACZ,CAAC;;AAGL;;;AAGG;AACI,MAAM,eAAe,GAAG,IAAI,cAAc,CAC7C,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAClC;AACI,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,UAAU,EAAE,uBAAuB;AACnC,QAAA,IAAI,EAAE,mBAAmB,CAAC,uBAAuB,CAAC;QAClD,UAAU,EAAE,uBAAuB,CAAC,UAAU;AAC9C,QAAA,YAAY,EAAE,QAAQ;AACtB,QAAA,gBAAgB,EAAE,6BAA6B;KAClD,CAAC;AACL,CAAA;AAGL;;;AAGG;AACI,MAAM,wBAAwB,GAAG,IAAI,cAAc,CACtD,SAAS,GAAG,0BAA0B,GAAG,EAAE;AAG/C;;;AAGG;AACG,SAAU,qBAAqB,CAAC,WAAqC,EAAA;IACvE,OAAO;AACH,QAAA,OAAO,EAAE,wBAAwB;AACjC,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,KAAK,EAAE,IAAI;KACd;AACL;AAEA;;;AAGG;MACU,qBAAqB,GAIX,CAAC,OAAO,MAAM;AACjC,IAAA,OAAO,EAAE,eAAe;AACxB,IAAA,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,IAAI,QAAQ,EAAE,EAAE,eAAe,CAAC,CAAC;AACzD,IAAA,UAAU,EAAE,CAAC,QAA8B,MAAqB;QAC5D,UAAU,EACN,OAAO,CAAC,UAAU;AAClB,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,uBAAuB,CAAC,UAAU;AACtC,QAAA,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI;AAC1B,cAAE,mBAAmB,CAAC,OAAO,CAAC,IAAI;AAClC,eAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,IAAI,uBAAuB,CAAC,IAAI,CAAC;QACtE,UAAU,EACN,OAAO,CAAC,UAAU;AAClB,YAAA,QAAQ,EAAE,UAAU;AACpB,YAAA,uBAAuB,CAAC,UAAU;QACtC,YAAY,EACR,OAAO,CAAC,YAAY;AACpB,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,uBAAuB,CAAC,YAAY;QACxC,gBAAgB,EACZ,OAAO,CAAC,gBAAgB;AACxB,YAAA,QAAQ,EAAE,gBAAgB;AAC1B,YAAA,uBAAuB,CAAC,gBAAgB;KAC/C,CAAC;AACL,CAAA;;ACjGD,MAAM,oBAAoB,GAAG,uCAAuC;AACpE,MAAM,qBAAqB,GAAG,2CAA2C;AACzE,MAAM,oBAAoB,GAAG,6BAA6B;AAW1D;;;AAGG;MAQU,eAAe,CAAA;AAP5B,IAAA,WAAA,GAAA;QAQY,IAAA,CAAA,IAAI,GAAgB,EAAE;AACb,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;AACtB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;AACvB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;QACjC,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AACtD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC;AAClC,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACtD,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;QAChC,IAAA,CAAA,EAAE,GAAG,gBAAgB,EAAE;AACvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC;AAChC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,aAAa,CAAO,CAAC,CAAC;AACjC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,wBAAwB,EAAE;AAChE,YAAA,QAAQ,EAAE,IAAI;AACjB,SAAA,CAA+C;QAE7B,IAAA,CAAA,UAAU,GAAyB,IAAI,CAAC,IAAI,CAAC,IAAI,CAChE,SAAS,CAAC,MAAK;AACX,YAAA,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACxB,OAAO,IAAI,CAAC;sBACN,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI;AAChC,sBAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC;AAEA,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,CAAC,CAAC,EACF,SAAS,CAAC,EAAE,CAAC,CAChB;AAwIJ,IAAA;IAtIG,IACW,GAAG,CAAC,GAAmC,EAAA;AAC9C,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEvD,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC;AAEpD,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,EAAE,MAAM,CAC3C,CAAC,MAAM,EAAE,WAAqC,KAC1C,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,EACrC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,CAAC,CACvC;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;IACpB;AAEA,IAAA,IAAW,GAAG,GAAA;QACV,OAAO,IAAI,CAAC,IAAI;IACpB;AAEA,IAAA,IAAW,GAAG,GAAA;AACV,QAAA,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AACxB,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO;kBAC3B,IAAI,CAAC;AACP,kBAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACxD;AAEA,QAAA,OAAO,EAAE;IACb;AAEA,IAAA,IAAW,WAAW,GAAA;AAClB,QAAA,QACI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;AACvB,YAAA,IAAI,CAAC,KAAK;AACV,YAAA,IAAI,CAAC,UAAU;aACd,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC;IAEzC;IAEU,OAAO,CAAC,UAAkB,qBAAqB,EAAA;AACrD,QAAA,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI;AACnB,QAAA,MAAM,KAAK,GAAG,IAAI,WAAW,CAAe,gBAAgB,EAAE;AAC1D,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE;gBACJ,OAAO;AACP,gBAAA,IAAI,EAAE,IAAc;AACvB,aAAA;AACJ,SAAA,CAAC;QAEF,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC;AACjD,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC;IAChC;AAEA,IAAA,IAAY,WAAW,GAAA;QACnB,OAAO,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG;IAC3D;AAEA,IAAA,IAAY,KAAK,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC5E;AAEA,IAAA,IAAY,UAAU,GAAA;QAClB,QACI,IAAI,CAAC,KAAK;AACV,YAAA,IAAI,CAAC,aAAa;aACjB,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAExE;AAEA,IAAA,IAAY,KAAK,GAAA;AACb,QAAA,QACI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;AACtB,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;IAEzE;AAEA,IAAA,IAAY,KAAK,GAAA;AACb,QAAA,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC;IACvE;AAEA,IAAA,IAAY,MAAM,GAAA;AACd,QAAA,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK;IACpD;AAEA,IAAA,IAAY,aAAa,GAAA;QACrB,MAAM,EAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAC,GAAG,IAAI;QAE9B,QACI,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;IAEtF;IAGQ,WAAW,CAAC,IAAY,EAAE,SAAgC,EAAA;QAC9D,OAAO,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;IACzC;AAEQ,IAAA,WAAW,CAAC,GAAW,EAAA;QAC3B,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IAC9D;AAEQ,IAAA,OAAO,CAAC,GAAW,EAAA;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC;QAE7C,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE;AAC/B,YAAA,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtC;QAEA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IACpC;AAEQ,IAAA,QAAQ,CAAC,GAAgB,EAAA;QAC7B,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC;AAExC,QAAA,OAAO,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC,GAAG;cACrC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE;cAE/D,GAAG;IACb;AAEQ,IAAA,eAAe,CAAC,GAAW,EAAA;AAC/B,QAAA,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG;AAEjD,QAAA,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAC9C,UAAU,CAAC,MAAK;AACZ,YAAA,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;AAElC,YAAA,OAAO,EAAE,CAAC,EAAE,CAAC;QACjB,CAAC,CAAC,EACF,GAAG,CAAC,CAAC,QAAQ,KACT,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,CACpE,CACJ;IACL;8GAlKS,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5D5B,8EAIA,EAAA,MAAA,EAAA,CAAA,yUAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EDmDc,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;AA8HX,UAAA,CAAA;IADP;AAGA,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,aAAA,EAAA,IAAA,CAAA;2FA3HQ,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,WACV,CAAC,SAAS,CAAC,EAAA,eAAA,EAGH,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,8EAAA,EAAA,MAAA,EAAA,CAAA,yUAAA,CAAA,EAAA;8BAgCpC,GAAG,EAAA,CAAA;sBADb;gBA4FO,WAAW,EAAA,EAAA,EAAA,EAAA,CAAA;;AErLvB;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-legacy-components-svg.mjs","sources":["../../../projects/legacy/components/svg/content-processor.ts","../../../projects/legacy/components/svg/deprecated-icons.ts","../../../projects/legacy/components/svg/svg.service.ts","../../../projects/legacy/components/svg/svg-options.ts","../../../projects/legacy/components/svg/svg.component.ts","../../../projects/legacy/components/svg/svg.template.html","../../../projects/legacy/components/svg/taiga-ui-legacy-components-svg.ts"],"sourcesContent":["import {type TuiSafeHtml} from '@taiga-ui/cdk/types';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map((url) =>\n url.slice(4, url.length - 1).replaceAll(/['\"#]+/g, ''),\n );\n\n return Array.from(new Set(ids));\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n *\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n\n return uniqueIds.reduce((newSvg, previousId) => {\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replaceAll(`\"${previousId}\"`, `\"${newId}\"`)\n .replaceAll(`'${previousId}'`, `'${newId}'`)\n .replaceAll(`url('#${previousId}')`, `url('#${newId}')`)\n .replaceAll(`url(\"#${previousId}\")`, `url(\"#${newId}\")`)\n .replaceAll(`url(#${previousId})`, `url(#${newId})`);\n }, svg);\n }\n\n return svg;\n}\n","/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_DEPRECATED_ICONS: Record<string, string> = {\n tuiIconAttach: 'tuiIconPaperclip',\n tuiIconAttention: 'tuiIconAlertCircle',\n tuiIconBackCircle: 'tuiIconArrowLeftCircle',\n tuiIconCall: 'tuiIconPhone',\n tuiIconCallIn: 'tuiIconPhoneIncoming',\n tuiIconCallOut: 'tuiIconPhoneOutgoing',\n tuiIconCallTransfer: 'tuiIconPhoneForwarded',\n tuiIconCancel: 'tuiIconXCircle',\n tuiIconCancelCircle: 'tuiIconSlash',\n tuiIconCard: 'tuiIconCreditCard',\n tuiIconCards: 'tuiIconCreditCard',\n tuiIconChartBar: 'tuiIconBarChart',\n tuiIconChart: 'tuiIconBarChart',\n tuiIconCheckList: 'tuiIconClipboard',\n tuiIconCloseCircle: 'tuiIconXCircle',\n tuiIconCollapse: 'tuiIconMinimize',\n tuiIconComment: 'tuiIconMessageSquare',\n tuiIconCommentFw: 'tuiIconMessageForward',\n tuiIconCompany: 'tuiIconBriefcase',\n tuiIconDefaultDoc: 'tuiIconFile',\n tuiIconDesktop: 'tuiIconMonitor',\n tuiIconDesktopOff: 'tuiIconMonitorOff',\n tuiIconDislike: 'tuiIconThumbsDown',\n tuiIconDone: 'tuiIconCheckCircle',\n tuiIconDraft: 'tuiIconEdit2',\n tuiIconEyeOpen: 'tuiIconEye',\n tuiIconEyeClosed: 'tuiIconEyeOff',\n tuiIconExpand: 'tuiIconMaximize',\n tuiIconExternal: 'tuiIconExternalLink',\n tuiIconFrame: 'tuiIconLayout',\n tuiIconGeo: 'tuiIconMapPin',\n tuiIconHeartFilled: 'tuiIconHeart',\n tuiIconHide: 'tuiIconEyeOff',\n tuiIconImg: 'tuiIconImage',\n tuiIconInfoCircle: 'tuiIconInfo',\n tuiIconLike: 'tuiIconThumbsUp',\n tuiIconLockOpen: 'tuiIconUnlock',\n tuiIconMobile: 'tuiIconSmartphone',\n tuiIconMoreHor: 'tuiIconMoreHorizontal',\n tuiIconMoreVer: 'tuiIconMoreVertical',\n tuiIconMoreVert: 'tuiIconMoreVertical',\n tuiIconPicture: 'tuiIconImage',\n tuiIconPin: 'tuiIconMapPin',\n tuiIconPrint: 'tuiIconPrinter',\n tuiIconRefresh: 'tuiIconRefreshCw',\n tuiIconRemove: 'tuiIconX',\n tuiIconShow: 'tuiIconEye',\n tuiIconSound: 'tuiIconVolume',\n tuiIconSoundOff: 'tuiIconVolumeX',\n tuiIconStarFilled: 'tuiIconStar',\n tuiIconStop: 'tuiIconSquare',\n tuiIconStructure: 'tuiIconLayoutGrid',\n tuiIconTime: 'tuiIconClock',\n tuiIconTooltip: 'tuiIconHelpCircle',\n tuiIconViewList: 'tuiIconList',\n tuiIconWifiOn: 'tuiIconWifi',\n};\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {inject, Injectable, SecurityContext} from '@angular/core';\nimport {DomSanitizer, type SafeHtml} from '@angular/platform-browser';\nimport {TUI_ICON_STARTS, TUI_SANITIZER} from '@taiga-ui/legacy/tokens';\nimport {tuiProcessIcon} from '@taiga-ui/legacy/utils';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * Service for reusing SVGs without inlining each instance\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class TuiSvgService {\n private readonly tuiSanitizer = inject(TUI_SANITIZER, {optional: true});\n private readonly sanitizer = inject(DomSanitizer);\n private originals: Record<string, string> = {};\n\n public readonly items$ = new BehaviorSubject<Map<string, SafeHtml>>(new Map());\n\n constructor() {\n this.define(inject(TUI_ICON_STARTS));\n }\n\n public 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 public 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 ngDevMode && console.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 {\n type FactoryProvider,\n InjectionToken,\n Optional,\n type Provider,\n SkipSelf,\n} from '@angular/core';\nimport {\n type TuiHandler,\n type TuiSafeHtml,\n type TuiStringHandler,\n} from '@taiga-ui/cdk/types';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiIconsPathFactory} from '@taiga-ui/legacy/utils';\nimport {identity} from 'rxjs';\n\nimport {tuiSvgLinearGradientProcessor} from './content-processor';\nimport {TUI_DEPRECATED_ICONS} from './deprecated-icons';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_DEFAULT_ICONS_PLACE = 'assets/taiga-ui/icons';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport interface TuiSvgOptions {\n readonly contentProcessor: TuiHandler<TuiSafeHtml, TuiSafeHtml>;\n readonly deprecated: TuiStringHandler<string>;\n readonly iconsPlace: string;\n readonly path: (name: string, baseHref?: string) => string;\n readonly srcProcessor: TuiHandler<TuiSafeHtml, TuiSafeHtml>;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport type TuiSvgInterceptorHandler =\n | ((src: TuiSafeHtml, options: TuiSvgOptions) => TuiSafeHtml)\n | ((src: TuiSafeHtml) => TuiSafeHtml);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_DEFAULT_OPTIONS: TuiSvgOptions = {\n iconsPlace: TUI_DEFAULT_ICONS_PLACE,\n path: tuiIconsPathFactory(TUI_DEFAULT_ICONS_PLACE),\n srcProcessor: identity,\n contentProcessor: tuiSvgLinearGradientProcessor,\n deprecated: (src) => {\n const oldIcon = src.replace('Large', '').replace('Outline', '');\n const newIcon = TUI_DEPRECATED_ICONS[oldIcon];\n\n return newIcon\n ? `${oldIcon}/(Large|Outline) is deprecated, use ${newIcon}/(Large|Outline) instead`\n : '';\n },\n};\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_OPTIONS = new InjectionToken<TuiSvgOptions>(\n ngDevMode ? 'TUI_SVG_OPTIONS' : '',\n {\n factory: () => ({\n iconsPlace: TUI_DEFAULT_ICONS_PLACE,\n path: tuiIconsPathFactory(TUI_DEFAULT_ICONS_PLACE),\n deprecated: TUI_SVG_DEFAULT_OPTIONS.deprecated,\n srcProcessor: identity,\n contentProcessor: tuiSvgLinearGradientProcessor,\n }),\n },\n);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const TUI_SVG_SRC_INTERCEPTORS = new InjectionToken<TuiSvgInterceptorHandler>(\n ngDevMode ? 'TUI_SVG_SRC_INTERCEPTORS' : '',\n);\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport function tuiSvgSrcInterceptors(interceptor: TuiSvgInterceptorHandler): Provider {\n return {\n provide: TUI_SVG_SRC_INTERCEPTORS,\n useValue: interceptor,\n multi: true,\n };\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport const tuiSvgOptionsProvider: (\n options: Partial<Omit<TuiSvgOptions, 'path'>> & {\n path?: TuiSvgOptions['path'] | string;\n },\n) => FactoryProvider = (options) => ({\n provide: TUI_SVG_OPTIONS,\n deps: [[new SkipSelf(), new Optional(), TUI_SVG_OPTIONS]],\n useFactory: (fallback: TuiSvgOptions | null): TuiSvgOptions => ({\n iconsPlace:\n options.iconsPlace ??\n fallback?.iconsPlace ??\n TUI_SVG_DEFAULT_OPTIONS.iconsPlace,\n path: tuiIsString(options.path)\n ? tuiIconsPathFactory(options.path)\n : (options.path ?? fallback?.path ?? TUI_SVG_DEFAULT_OPTIONS.path),\n deprecated:\n options.deprecated ??\n fallback?.deprecated ??\n TUI_SVG_DEFAULT_OPTIONS.deprecated,\n srcProcessor:\n options.srcProcessor ??\n fallback?.srcProcessor ??\n TUI_SVG_DEFAULT_OPTIONS.srcProcessor,\n contentProcessor:\n options.contentProcessor ??\n fallback?.contentProcessor ??\n TUI_SVG_DEFAULT_OPTIONS.contentProcessor,\n }),\n});\n","/// <reference types=\"@taiga-ui/tsconfig/ng-dev-mode\" />\nimport {AsyncPipe, DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n Input,\n SecurityContext,\n} from '@angular/core';\nimport {DomSanitizer, type SafeHtml} from '@angular/platform-browser';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_BASE_HREF} from '@taiga-ui/cdk/tokens';\nimport {type TuiSafeHtml} from '@taiga-ui/cdk/types';\nimport {tuiGetDocumentOrShadowRoot, tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsString, tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiStaticRequestService} from '@taiga-ui/legacy/services';\nimport {TUI_SANITIZER} from '@taiga-ui/legacy/tokens';\nimport {TUI_CACHE_BUSTING_PAYLOAD, tuiIsPresumedHTMLString} from '@taiga-ui/legacy/utils';\nimport {\n catchError,\n map,\n type Observable,\n of,\n ReplaySubject,\n startWith,\n switchMap,\n} from 'rxjs';\n\nimport {TuiSvgService} from './svg.service';\nimport {\n TUI_SVG_OPTIONS,\n TUI_SVG_SRC_INTERCEPTORS,\n type TuiSvgInterceptorHandler,\n type TuiSvgOptions,\n} from './svg-options';\n\nconst UNDEFINED_NAMED_ICON = 'Attempted to use undefined named icon';\nconst MISSING_EXTERNAL_ICON = 'External icon is missing on the given URL';\nconst FAILED_EXTERNAL_ICON = 'Failed to load external SVG';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\nexport interface TuiIconError {\n readonly icon: string;\n readonly message: string;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiIcon}\n * https://taiga-ui.dev/components/icon\n */\n@Component({\n selector: 'tui-svg',\n imports: [AsyncPipe],\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiSvgComponent {\n private icon: TuiSafeHtml = '';\n private readonly doc = inject(DOCUMENT);\n private readonly win = inject(WA_WINDOW);\n private readonly options = inject(TUI_SVG_OPTIONS);\n private readonly tuiSanitizer = inject(TUI_SANITIZER, {optional: true});\n private readonly svgService = inject(TuiSvgService);\n private readonly staticRequestService = inject(TuiStaticRequestService);\n private readonly sanitizer = inject(DomSanitizer);\n private readonly el = tuiInjectElement();\n private readonly baseHref = inject(TUI_BASE_HREF);\n private readonly src$ = new ReplaySubject<void>(1);\n private readonly srcInterceptors = inject(TUI_SVG_SRC_INTERCEPTORS, {\n optional: true,\n }) as readonly TuiSvgInterceptorHandler[] | null;\n\n protected readonly innerHTML$: Observable<SafeHtml> = this.src$.pipe(\n switchMap(() => {\n if (tuiIsString(this.icon)) {\n return this.isExternal\n ? this.getExternalIcon(this.icon)\n : of(this.getSafeHtml(this.icon));\n }\n\n return of(this.icon);\n }),\n startWith(''),\n );\n\n @Input()\n public set src(src: TuiSafeHtml | null | undefined) {\n const deprecated = this.options.deprecated(String(src));\n\n ngDevMode && console.assert(!deprecated, deprecated);\n\n this.icon = (this.srcInterceptors ?? []).reduce(\n (newSrc, interceptor: TuiSvgInterceptorHandler) =>\n interceptor(newSrc, this.options),\n this.options.srcProcessor(src || ''),\n );\n\n this.src$.next();\n }\n\n public get src(): TuiSafeHtml {\n return this.icon;\n }\n\n public get use(): string {\n if (tuiIsString(this.icon)) {\n return this.icon.includes('.svg#')\n ? this.icon\n : this.resolveName(this.icon, this.options.path);\n }\n\n return '';\n }\n\n public get isInnerHTML(): boolean {\n return (\n !tuiIsString(this.icon) ||\n this.isSrc ||\n this.isExternal ||\n (this.isName && this.isShadowDOM)\n );\n }\n\n protected onError(message: string = MISSING_EXTERNAL_ICON): void {\n const {icon} = this;\n const event = new CustomEvent<TuiIconError>('tui-icon-error', {\n bubbles: true,\n detail: {\n message,\n icon: icon as string,\n },\n });\n\n ngDevMode && console.assert(false, message, icon);\n this.el.dispatchEvent(event);\n }\n\n private get isShadowDOM(): boolean {\n return tuiGetDocumentOrShadowRoot(this.el) !== this.doc;\n }\n\n private get isUse(): boolean {\n return this.use.replace(TUI_CACHE_BUSTING_PAYLOAD, '').includes('.svg#');\n }\n\n private get isExternal(): boolean {\n return (\n this.isUrl ||\n this.isCrossDomain ||\n (!this.isSrc && !this.svgService.getOriginal(String(this.icon)))\n );\n }\n\n private get isUrl(): boolean {\n return (\n tuiIsString(this.icon) &&\n this.icon.replace(TUI_CACHE_BUSTING_PAYLOAD, '').endsWith('.svg')\n );\n }\n\n private get isSrc(): boolean {\n return tuiIsString(this.icon) && tuiIsPresumedHTMLString(this.icon);\n }\n\n private get isName(): boolean {\n return !this.isUrl && !this.isUse && !this.isSrc;\n }\n\n private get isCrossDomain(): boolean {\n const {use, isUse, win} = this;\n\n return (\n isUse && use.startsWith('http') && !!win.origin && !use.startsWith(win.origin)\n );\n }\n\n @tuiPure\n private resolveName(name: string, iconsPath: TuiSvgOptions['path']): string {\n return iconsPath(name, this.baseHref);\n }\n\n private getSafeHtml(src: string): SafeHtml {\n return this.isSrc ? this.sanitize(src) : this.process(src);\n }\n\n private process(src: string): SafeHtml {\n const icon = this.svgService.getOriginal(src);\n\n if (this.isName && !icon && !!src) {\n this.onError(UNDEFINED_NAMED_ICON);\n }\n\n return this.sanitize(icon || '');\n }\n\n private sanitize(src: TuiSafeHtml): TuiSafeHtml {\n src = this.options.contentProcessor(src);\n\n return this.tuiSanitizer && tuiIsString(src)\n ? this.sanitizer.bypassSecurityTrustHtml(\n this.tuiSanitizer.sanitize(SecurityContext.HTML, src) || '',\n )\n : src;\n }\n\n private getExternalIcon(src: string): Observable<SafeHtml> {\n const url = src.includes('.svg') ? src : this.use;\n\n return this.staticRequestService.request(url).pipe(\n catchError(() => {\n this.onError(FAILED_EXTERNAL_ICON);\n\n return of('');\n }),\n map((response) =>\n this.sanitize(response.replace('<svg', '<svg focusable=\"false\"')),\n ),\n );\n }\n}\n","<div\n class=\"t-src\"\n [innerHTML]=\"innerHTML$ | async\"\n></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -28,10 +28,10 @@ class TuiTableBarComponent {
|
|
|
28
28
|
close() {
|
|
29
29
|
this.context.$implicit.complete();
|
|
30
30
|
}
|
|
31
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiTableBarComponent, isStandalone: true, selector: "tui-table-bar", host: { properties: { "@tuiSlideInTop": "animation", "attr.data-appearance": "context.mode" } }, ngImport: i0, template: "<div\n automation-id=\"tui-table-bar__bar\"\n class=\"t-container\"\n [attr.tuiTheme]=\"getTheme(context.mode || 'onDark')\"\n [class.t-container_adaptive]=\"context.adaptive\"\n>\n <div class=\"t-inner\">\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n\n @if (context.hasCloseButton) {\n <button\n appearance=\"icon\"\n automation-id=\"tui-table-bar__close-button\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-close-button\"\n [iconStart]=\"icons.close\"\n (click)=\"close()\"\n >\n {{ closeWord$ | async }}\n </button>\n }\n </div>\n</div>\n", styles: [":host{display:block;inline-size:100%;box-shadow:var(--tui-shadow-small);flex:0 0 100%}:host[data-appearance=onLight]{background:var(--tui-background-base);color:var(--tui-text-primary)}:host[data-appearance=onDark]{background:var(--tui-background-accent-opposite-pressed);color:var(--tui-background-base)}.t-wrapper{display:flex;inline-size:100%}.t-container{position:relative;margin:0 auto}@media screen and (min-width: 80em){.t-container.t-container_adaptive{inline-size:69rem}}@media screen and (max-width: 79.9625em){.t-container.t-container_adaptive{inline-size:51.5rem}}@media screen and (max-width: 47.9625em){.t-container.t-container_adaptive{inline-size:100%;padding:0 1rem;box-sizing:border-box}}@media screen and (min-width: 80em){.t-container{inline-size:69rem}}@media screen and (max-width: 79.9625em){.t-container{inline-size:51.5rem;padding:0 3rem}}.t-inner{display:flex;align-items:center;block-size:4.5rem;inline-size:100%;overflow:hidden}:host-context(tui-root._mobile) .t-inner{block-size:5.75rem}.t-close-button{margin-inline-start:1.5rem}.t-content{inline-size:100%;flex:1 1 0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }], animations: [tuiSlideInTop, tuiParentAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
33
33
|
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
36
36
|
args: [{ selector: 'tui-table-bar', imports: [AsyncPipe, PolymorpheusOutlet, TuiButton], changeDetection: ChangeDetectionStrategy.OnPush, animations: [tuiSlideInTop, tuiParentAnimation], host: {
|
|
37
37
|
'[@tuiSlideInTop]': 'animation',
|
|
@@ -75,10 +75,10 @@ function tuiTableBarOptionsProvider(options) {
|
|
|
75
75
|
* https://taiga-ui.dev/components/actions-bar
|
|
76
76
|
*/
|
|
77
77
|
class TuiTableBarsService extends TuiPopoverService {
|
|
78
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
79
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
|
78
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarsService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
79
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarsService, providedIn: 'root', useFactory: () => new TuiTableBarsService(TUI_TABLE_BARS, TuiTableBarComponent, inject(TUI_TABLE_BAR_OPTIONS)) }); }
|
|
80
80
|
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarsService, decorators: [{
|
|
82
82
|
type: Injectable,
|
|
83
83
|
args: [{
|
|
84
84
|
providedIn: 'root',
|
|
@@ -91,10 +91,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
|
|
|
91
91
|
* https://taiga-ui.dev/components/actions-bar
|
|
92
92
|
*/
|
|
93
93
|
class TuiTableBarDirective extends TuiPopoverDirective {
|
|
94
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
95
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
94
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
95
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiTableBarDirective, isStandalone: true, selector: "ng-template[tuiTableBar]", inputs: { open: ["tuiTableBar", "open"], options: ["tuiTableBarOptions", "options"] }, outputs: { openChange: "tuiTableBarChange" }, providers: [tuiAsPopover(TuiTableBarsService)], usesInheritance: true, ngImport: i0 }); }
|
|
96
96
|
}
|
|
97
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarDirective, decorators: [{
|
|
98
98
|
type: Directive,
|
|
99
99
|
args: [{
|
|
100
100
|
standalone: true,
|
|
@@ -113,8 +113,8 @@ class TuiTableBarsHostComponent {
|
|
|
113
113
|
constructor() {
|
|
114
114
|
this.bars$ = inject(TUI_TABLE_BARS);
|
|
115
115
|
}
|
|
116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
117
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
116
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarsHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
117
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiTableBarsHostComponent, isStandalone: true, selector: "tui-table-bars-host", ngImport: i0, template: `
|
|
118
118
|
@for (item of bars$ | async; track item) {
|
|
119
119
|
<div
|
|
120
120
|
class="t-wrapper"
|
|
@@ -125,7 +125,7 @@ class TuiTableBarsHostComponent {
|
|
|
125
125
|
}
|
|
126
126
|
`, isInline: true, styles: [".t-wrapper{position:fixed;top:0;left:0;bottom:0;right:0;top:unset}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], animations: [tuiParentAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
127
127
|
}
|
|
128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTableBarsHostComponent, decorators: [{
|
|
129
129
|
type: Component,
|
|
130
130
|
args: [{ selector: 'tui-table-bars-host', imports: [AsyncPipe, PolymorpheusOutlet], template: `
|
|
131
131
|
@for (item of bars$ | async; track item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-table-bar.mjs","sources":["../../../projects/legacy/components/table-bar/table-bar.component.ts","../../../projects/legacy/components/table-bar/table-bar.template.html","../../../projects/legacy/components/table-bar/table-bar.options.ts","../../../projects/legacy/components/table-bar/table-bars.service.ts","../../../projects/legacy/components/table-bar/table-bar.directive.ts","../../../projects/legacy/components/table-bar/table-bars-host.component.ts","../../../projects/legacy/components/table-bar/taiga-ui-legacy-components-table-bar.ts"],"sourcesContent":["import {AsyncPipe} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiParentAnimation, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n TUI_ANIMATIONS_SPEED,\n TUI_CLOSE_WORD,\n TUI_COMMON_ICONS,\n} from '@taiga-ui/core/tokens';\nimport {tuiToAnimationOptions} from '@taiga-ui/core/utils/miscellaneous';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {type TuiTableBarOptions} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Component({\n selector: 'tui-table-bar',\n imports: [AsyncPipe, PolymorpheusOutlet, TuiButton],\n templateUrl: './table-bar.template.html',\n styleUrls: ['./table-bar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiSlideInTop, tuiParentAnimation],\n host: {\n '[@tuiSlideInTop]': 'animation',\n '[attr.data-appearance]': 'context.mode',\n },\n})\nexport class TuiTableBarComponent {\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly closeWord$ = inject(TUI_CLOSE_WORD);\n protected readonly context = injectContext<TuiPopover<TuiTableBarOptions, void>>();\n\n protected readonly animation = tuiToAnimationOptions(inject(TUI_ANIMATIONS_SPEED));\n\n protected getTheme(appearance: string): string | null {\n return appearance === 'onDark' ? 'dark' : null;\n }\n\n protected close(): void {\n this.context.$implicit.complete();\n }\n}\n","<div\n automation-id=\"tui-table-bar__bar\"\n class=\"t-container\"\n [attr.tuiTheme]=\"getTheme(context.mode || 'onDark')\"\n [class.t-container_adaptive]=\"context.adaptive\"\n>\n <div class=\"t-inner\">\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n\n @if (context.hasCloseButton) {\n <button\n appearance=\"icon\"\n automation-id=\"tui-table-bar__close-button\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-close-button\"\n [iconStart]=\"icons.close\"\n (click)=\"close()\"\n >\n {{ closeWord$ | async }}\n </button>\n }\n </div>\n</div>\n","import {InjectionToken, type Provider} from '@angular/core';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport interface TuiTableBarOptions {\n readonly adaptive?: boolean;\n readonly hasCloseButton?: boolean;\n readonly mode?: 'onDark' | 'onLight';\n}\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BARS = new InjectionToken(ngDevMode ? 'TUI_TABLE_BARS' : '', {\n factory: () => new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n});\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BAR_DEFAULT_OPTIONS: TuiTableBarOptions = {\n adaptive: true,\n hasCloseButton: true,\n mode: 'onDark',\n};\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BAR_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_TABLE_BAR_OPTIONS' : '',\n {\n factory: () => TUI_TABLE_BAR_DEFAULT_OPTIONS,\n },\n);\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport function tuiTableBarOptionsProvider(\n options: Partial<TuiTableBarOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_TABLE_BAR_OPTIONS,\n options,\n TUI_TABLE_BAR_DEFAULT_OPTIONS,\n );\n}\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiTableBarComponent} from './table-bar.component';\nimport {\n TUI_TABLE_BAR_OPTIONS,\n TUI_TABLE_BARS,\n type TuiTableBarOptions,\n} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiTableBarsService(\n TUI_TABLE_BARS,\n TuiTableBarComponent,\n inject(TUI_TABLE_BAR_OPTIONS),\n ),\n})\nexport class TuiTableBarsService extends TuiPopoverService<TuiTableBarOptions> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport {type TuiTableBarOptions} from './table-bar.options';\nimport {TuiTableBarsService} from './table-bars.service';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiTableBar]',\n inputs: ['open: tuiTableBar', 'options: tuiTableBarOptions'],\n outputs: ['openChange: tuiTableBarChange'],\n providers: [tuiAsPopover(TuiTableBarsService)],\n})\nexport class TuiTableBarDirective extends TuiPopoverDirective<TuiTableBarOptions> {}\n","import {AsyncPipe} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {tuiParentAnimation} from '@taiga-ui/core/animations';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TABLE_BARS} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Component({\n selector: 'tui-table-bars-host',\n imports: [AsyncPipe, PolymorpheusOutlet],\n template: `\n @for (item of bars$ | async; track item) {\n <div\n class=\"t-wrapper\"\n @tuiParentAnimation\n >\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n </div>\n }\n `,\n styleUrls: ['./table-bars-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiParentAnimation],\n})\nexport class TuiTableBarsHostComponent {\n protected bars$ = inject(TUI_TABLE_BARS);\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-legacy-components-table-bar.mjs","sources":["../../../projects/legacy/components/table-bar/table-bar.component.ts","../../../projects/legacy/components/table-bar/table-bar.template.html","../../../projects/legacy/components/table-bar/table-bar.options.ts","../../../projects/legacy/components/table-bar/table-bars.service.ts","../../../projects/legacy/components/table-bar/table-bar.directive.ts","../../../projects/legacy/components/table-bar/table-bars-host.component.ts","../../../projects/legacy/components/table-bar/taiga-ui-legacy-components-table-bar.ts"],"sourcesContent":["import {AsyncPipe} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiParentAnimation, tuiSlideInTop} from '@taiga-ui/core/animations';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {\n TUI_ANIMATIONS_SPEED,\n TUI_CLOSE_WORD,\n TUI_COMMON_ICONS,\n} from '@taiga-ui/core/tokens';\nimport {tuiToAnimationOptions} from '@taiga-ui/core/utils/miscellaneous';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {type TuiTableBarOptions} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Component({\n selector: 'tui-table-bar',\n imports: [AsyncPipe, PolymorpheusOutlet, TuiButton],\n templateUrl: './table-bar.template.html',\n styleUrls: ['./table-bar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiSlideInTop, tuiParentAnimation],\n host: {\n '[@tuiSlideInTop]': 'animation',\n '[attr.data-appearance]': 'context.mode',\n },\n})\nexport class TuiTableBarComponent {\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly closeWord$ = inject(TUI_CLOSE_WORD);\n protected readonly context = injectContext<TuiPopover<TuiTableBarOptions, void>>();\n\n protected readonly animation = tuiToAnimationOptions(inject(TUI_ANIMATIONS_SPEED));\n\n protected getTheme(appearance: string): string | null {\n return appearance === 'onDark' ? 'dark' : null;\n }\n\n protected close(): void {\n this.context.$implicit.complete();\n }\n}\n","<div\n automation-id=\"tui-table-bar__bar\"\n class=\"t-container\"\n [attr.tuiTheme]=\"getTheme(context.mode || 'onDark')\"\n [class.t-container_adaptive]=\"context.adaptive\"\n>\n <div class=\"t-inner\">\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"context.content as text; context: context\">\n {{ text }}\n </ng-container>\n </div>\n\n @if (context.hasCloseButton) {\n <button\n appearance=\"icon\"\n automation-id=\"tui-table-bar__close-button\"\n size=\"xs\"\n tuiIconButton\n type=\"button\"\n class=\"t-close-button\"\n [iconStart]=\"icons.close\"\n (click)=\"close()\"\n >\n {{ closeWord$ | async }}\n </button>\n }\n </div>\n</div>\n","import {InjectionToken, type Provider} from '@angular/core';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {BehaviorSubject} from 'rxjs';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport interface TuiTableBarOptions {\n readonly adaptive?: boolean;\n readonly hasCloseButton?: boolean;\n readonly mode?: 'onDark' | 'onLight';\n}\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BARS = new InjectionToken(ngDevMode ? 'TUI_TABLE_BARS' : '', {\n factory: () => new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n});\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BAR_DEFAULT_OPTIONS: TuiTableBarOptions = {\n adaptive: true,\n hasCloseButton: true,\n mode: 'onDark',\n};\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport const TUI_TABLE_BAR_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_TABLE_BAR_OPTIONS' : '',\n {\n factory: () => TUI_TABLE_BAR_DEFAULT_OPTIONS,\n },\n);\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\nexport function tuiTableBarOptionsProvider(\n options: Partial<TuiTableBarOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_TABLE_BAR_OPTIONS,\n options,\n TUI_TABLE_BAR_DEFAULT_OPTIONS,\n );\n}\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiTableBarComponent} from './table-bar.component';\nimport {\n TUI_TABLE_BAR_OPTIONS,\n TUI_TABLE_BARS,\n type TuiTableBarOptions,\n} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiTableBarsService(\n TUI_TABLE_BARS,\n TuiTableBarComponent,\n inject(TUI_TABLE_BAR_OPTIONS),\n ),\n})\nexport class TuiTableBarsService extends TuiPopoverService<TuiTableBarOptions> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport {type TuiTableBarOptions} from './table-bar.options';\nimport {TuiTableBarsService} from './table-bars.service';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiTableBar]',\n inputs: ['open: tuiTableBar', 'options: tuiTableBarOptions'],\n outputs: ['openChange: tuiTableBarChange'],\n providers: [tuiAsPopover(TuiTableBarsService)],\n})\nexport class TuiTableBarDirective extends TuiPopoverDirective<TuiTableBarOptions> {}\n","import {AsyncPipe} from '@angular/common';\nimport {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {tuiParentAnimation} from '@taiga-ui/core/animations';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TABLE_BARS} from './table-bar.options';\n\n/**\n * @deprecated drop in v5.0 use {@link TuiActionBar}\n * https://taiga-ui.dev/components/actions-bar\n */\n@Component({\n selector: 'tui-table-bars-host',\n imports: [AsyncPipe, PolymorpheusOutlet],\n template: `\n @for (item of bars$ | async; track item) {\n <div\n class=\"t-wrapper\"\n @tuiParentAnimation\n >\n <ng-container *polymorpheusOutlet=\"item.component; context: item\" />\n </div>\n }\n `,\n styleUrls: ['./table-bars-host.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [tuiParentAnimation],\n})\nexport class TuiTableBarsHostComponent {\n protected bars$ = inject(TUI_TABLE_BARS);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -137,10 +137,10 @@ class TuiTagComponent {
|
|
|
137
137
|
this.stopEditing();
|
|
138
138
|
this.edited.emit(value.trim());
|
|
139
139
|
}
|
|
140
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
141
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
140
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
141
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiTagComponent, isStandalone: false, selector: "tui-tag, a[tuiTag], button[tuiTag]", inputs: { value: "value", editable: "editable", separator: "separator", maxLength: "maxLength", size: "size", showLoader: "showLoader", status: "status", hoverable: "hoverable", removable: "removable", disabled: "disabled", autoColor: "autoColor", leftContent: "leftContent" }, outputs: { edited: "edited" }, host: { listeners: { "keydown.delete": "remove($event)", "keydown.backspace": "remove($event)", "keydown.enter": "edit($event)" }, properties: { "attr.data-size": "size", "attr.data-status": "status", "class._editing": "editing", "class._hoverable": "hoverable", "class._autocolor": "autoColor", "class._disabled": "disabled" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"t-tag\"\n [style.backgroundColor]=\"backgroundColor\"\n (dblclick)=\"edit($event)\"\n>\n @if (leftContent) {\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"leftContent as text\">\n {{ text }}\n </ng-container>\n </div>\n }\n <span\n automation-id=\"tui-tag__text\"\n class=\"t-text\"\n [textContent]=\"displayText\"\n ></span>\n @if (showLoader) {\n <tui-loader\n class=\"t-content\"\n [inheritColor]=\"true\"\n [size]=\"loaderSize\"\n />\n }\n @if (canRemove) {\n <tui-icon\n automation-id=\"tui-tag__remove\"\n class=\"t-icon\"\n [icon]=\"icons.close\"\n (click)=\"remove($event)\"\n (mousedown.stop.prevent.zoneless)=\"(0)\"\n />\n }\n</div>\n@if (editing) {\n <input\n #input\n automation-id=\"tui-tag__edit\"\n type=\"text\"\n class=\"t-edit\"\n [attr.maxLength]=\"maxLength\"\n [ngModel]=\"editedText\"\n [ngModelOptions]=\"{standalone: true}\"\n (blur)=\"onBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (ngModelChange)=\"onInput($event)\"\n />\n}\n", styles: [":host{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:relative;display:inline-block;font:var(--tui-font-text-s);line-height:1.25rem;max-inline-size:100%;cursor:default;outline:none;text-decoration:none;padding:0;border:0}:host:after{transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";box-sizing:border-box;border-radius:inherit;pointer-events:none}:host._hoverable:hover[data-status=custom]:after,:host._hoverable:active[data-status=custom]:after{background-color:var(--tui-background-neutral-1)}:host:focus:after{border:2px solid var(--tui-border-focus)}:host[data-size=s]{font:var(--tui-font-text-xs);line-height:1.25rem;border-radius:var(--tui-radius-xs)}:host[data-size=m]{border-radius:var(--tui-radius-xs)}:host[data-size=l]{border-radius:var(--tui-radius-s)}:host[data-status=primary]{background-color:var(--tui-background-accent-1);color:var(--tui-text-primary-on-accent-1)}:host[data-status=primary]._hoverable:hover{background-color:var(--tui-background-accent-1-hover)}:host[data-status=primary]._hoverable:active{background-color:var(--tui-background-accent-1-pressed)}:host[data-status=error]{background-color:var(--tui-status-negative-pale);color:var(--tui-text-primary)}:host[data-status=error]._hoverable:hover,:host[data-status=error]._hoverable:active{background-color:var(--tui-status-negative-pale-hover)}:host-context([tuiTheme=\"dark\"]) :host[data-status=error]{background-color:var(--tui-status-negative-pale);color:var(--tui-text-primary)}:host-context([tuiTheme=\"dark\"]) :host[data-status=error]._hoverable:hover,:host-context([tuiTheme=\"dark\"]) :host[data-status=error]._hoverable:active{background-color:var(--tui-status-negative-pale-hover)}:host[data-status=success]{background-color:var(--tui-status-positive-pale);color:var(--tui-text-primary)}:host[data-status=success]._hoverable:hover,:host[data-status=success]._hoverable:active{background-color:var(--tui-status-positive-pale-hover)}:host-context([tuiTheme=\"dark\"]) :host[data-status=success]{background-color:var(--tui-status-positive-pale);color:var(--tui-text-primary)}:host-context([tuiTheme=\"dark\"]) :host[data-status=success]._hoverable:hover,:host-context([tuiTheme=\"dark\"]) :host[data-status=success]._hoverable:active{background-color:var(--tui-status-positive-pale-hover)}:host[data-status=warning]{background-color:var(--tui-status-warning-pale);color:var(--tui-text-primary)}:host[data-status=warning]._hoverable:hover,:host[data-status=warning]._hoverable:active{background-color:var(--tui-status-warning-pale-hover)}:host-context([tuiTheme=\"dark\"]) :host[data-status=warning]{background-color:var(--tui-status-warning-pale);color:var(--tui-text-primary)}:host-context([tuiTheme=\"dark\"]) :host[data-status=warning]._hoverable:hover,:host-context([tuiTheme=\"dark\"]) :host[data-status=warning]._hoverable:active{background-color:var(--tui-status-warning-pale-hover)}:host[data-status=default]{color:#fff;background-color:var(--tui-text-tertiary)}:host[data-status=default]._hoverable:hover{background-color:var(--tui-background-accent-opposite-pressed)}:host[data-status=default]._hoverable:active{background-color:var(--tui-background-accent-opposite-hover)}:host-context([tuiTheme=\"dark\"]) :host[data-status=default]{color:var(--tui-text-primary);background-color:var(--tui-background-neutral-1)}:host-context([tuiTheme=\"dark\"]) :host[data-status=default]._hoverable:hover{background-color:var(--tui-background-neutral-1-hover)}:host-context([tuiTheme=\"dark\"]) :host[data-status=default]._hoverable:active{background-color:var(--tui-background-neutral-1-pressed)}:host-context([tuiTheme=\"dark\"]) :host[data-status=default]:focus:after{border:2px solid var(--tui-background-base)}:host._editing{background:transparent!important}:host._disabled,:host :host-context(*:disabled){pointer-events:none;opacity:var(--tui-disabled-opacity)}:host._hoverable{cursor:pointer}:host._autocolor{color:#000c}.t-text{white-space:pre;overflow:hidden;text-overflow:ellipsis;padding-inline-end:.02em}.t-tag{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;display:flex;inline-size:auto;align-items:center;font:inherit;border-radius:inherit}:host[data-size=s] .t-tag{block-size:1.25rem;padding:0 .375rem}:host[data-size=m] .t-tag{block-size:var(--tui-height-xs);padding:0 .5rem}:host[data-size=l] .t-tag{block-size:var(--tui-height-s);padding:0 .75rem}:host._editing .t-tag{visibility:hidden}.t-edit{padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;font:inherit;color:var(--tui-text-primary);inline-size:100%;block-size:100%;box-sizing:border-box;padding:0 .5rem}.t-edit:-webkit-autofill,.t-edit:-webkit-autofill:hover,.t-edit:-webkit-autofill:focus{-webkit-text-fill-color:var(--tui-text-primary)!important;border-color:var(--tui-service-autofill-background);box-shadow:0 0 0 100rem var(--tui-service-autofill-background) inset!important}:host[data-size=s] .t-edit{padding:0 .375rem}:host[data-size=m] .t-edit{padding:0 .5rem}:host[data-size=l] .t-edit{padding:0 .75rem}.t-icon{font-size:1rem;block-size:100%;cursor:pointer;pointer-events:all;opacity:var(--tui-disabled-opacity);margin-inline-start:.25rem;margin-inline-end:-.25rem}.t-icon:hover{opacity:1}:host[data-size=s] .t-icon{margin-inline-start:0;block-size:.75rem}:host[data-size=s] .t-icon:before{font-size:.75rem}.t-content{inline-size:1rem;block-size:1rem;margin-inline-end:.25rem}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.TuiIcon, selector: "tui-icon:not([tuiBadge])", inputs: ["background"] }, { kind: "component", type: i3.TuiLoader, selector: "tui-loader", inputs: ["size", "inheritColor", "overlay", "textContent", "showLoader"] }, { kind: "directive", type: i4.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
142
142
|
}
|
|
143
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTagComponent, decorators: [{
|
|
144
144
|
type: Component,
|
|
145
145
|
args: [{ standalone: false, selector: 'tui-tag, a[tuiTag], button[tuiTag]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
146
146
|
'[attr.data-size]': 'size',
|
|
@@ -189,19 +189,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
|
|
|
189
189
|
* https://taiga-ui.dev/components/chip
|
|
190
190
|
*/
|
|
191
191
|
class TuiTagModule {
|
|
192
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
193
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
192
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
193
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiTagModule, declarations: [TuiTagComponent], imports: [CommonModule,
|
|
194
194
|
FormsModule,
|
|
195
195
|
TuiIcon,
|
|
196
196
|
TuiLoader,
|
|
197
197
|
PolymorpheusOutlet,
|
|
198
198
|
PolymorpheusTemplate], exports: [TuiTagComponent] }); }
|
|
199
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
199
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTagModule, imports: [CommonModule,
|
|
200
200
|
FormsModule,
|
|
201
201
|
TuiIcon,
|
|
202
202
|
TuiLoader] }); }
|
|
203
203
|
}
|
|
204
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
204
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTagModule, decorators: [{
|
|
205
205
|
type: NgModule,
|
|
206
206
|
args: [{
|
|
207
207
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-legacy-components-tag.mjs","sources":["../../../projects/legacy/components/tag/tag.options.ts","../../../projects/legacy/components/tag/tag.component.ts","../../../projects/legacy/components/tag/tag.template.html","../../../projects/legacy/components/tag/tag.module.ts","../../../projects/legacy/components/tag/taiga-ui-legacy-components-tag.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {type TuiStatus} from '@taiga-ui/legacy/utils';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport interface TuiTagOptions {\n readonly autoColor: boolean;\n readonly size: TuiSizeL | TuiSizeS;\n readonly status: TuiStatus;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport const TUI_TAG_DEFAULT_OPTIONS: TuiTagOptions = {\n size: 'm',\n status: 'default',\n autoColor: false,\n};\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport const TUI_TAG_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_TAG_OPTIONS' : '', {\n factory: () => TUI_TAG_DEFAULT_OPTIONS,\n});\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport function tuiTagOptionsProvider(options: Partial<TuiTagOptions>): Provider {\n return tuiProvideOptions(TUI_TAG_OPTIONS, options, TUI_TAG_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {type TuiSizeL, type TuiSizeS, type TuiSizeXS} from '@taiga-ui/core/types';\nimport {tuiStringHashToHsl} from '@taiga-ui/core/utils/format';\nimport {tuiSizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {type TuiStatus} from '@taiga-ui/legacy/utils';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TAG_OPTIONS} from './tag.options';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\n@Component({\n standalone: false,\n selector: 'tui-tag, a[tuiTag], button[tuiTag]',\n templateUrl: './tag.template.html',\n styleUrls: ['./tag.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-size]': 'size',\n '[attr.data-status]': 'status',\n '[class._editing]': 'editing',\n '[class._hoverable]': 'hoverable',\n '[class._autocolor]': 'autoColor',\n '[class._disabled]': 'disabled',\n '(keydown.delete)': 'remove($event)',\n '(keydown.backspace)': 'remove($event)',\n '(keydown.enter)': 'edit($event)',\n },\n})\nexport class TuiTagComponent {\n private readonly el = tuiInjectElement();\n private readonly options = inject(TUI_TAG_OPTIONS);\n\n protected editing = false;\n\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected editedText: string | null = null;\n\n @Input()\n public value = '';\n\n @Input()\n public editable = false;\n\n @Input()\n public separator: RegExp | string = ',';\n\n @Input()\n public maxLength: number | null = null;\n\n @Input()\n public size: TuiSizeL | TuiSizeS = this.options.size;\n\n @Input()\n public showLoader = false;\n\n @Input()\n public status: TuiStatus = this.options.status;\n\n @Input()\n public hoverable = false;\n\n @Input()\n public removable = false;\n\n @Input()\n public disabled = false;\n\n @Input()\n public autoColor: boolean = this.options.autoColor;\n\n @Input()\n public leftContent: PolymorpheusContent;\n\n @Output()\n public readonly edited = new EventEmitter<string>();\n\n @ViewChild('input', {read: ElementRef})\n protected set input(input: ElementRef<HTMLInputElement>) {\n if (input) {\n input.nativeElement.focus();\n }\n }\n\n protected get backgroundColor(): string | null {\n return this.autoColor ? tuiStringHashToHsl(this.value) : null;\n }\n\n protected get canRemove(): boolean {\n return this.removable && !this.disabled && !this.showLoader;\n }\n\n protected get displayText(): string {\n return this.editedText ?? this.value;\n }\n\n protected get loaderSize(): TuiSizeXS {\n return tuiSizeBigger(this.size) ? 's' : 'xs';\n }\n\n protected edit(event: Event): void {\n if (!this.canEdit) {\n return;\n }\n\n event.preventDefault();\n this.editing = true;\n this.editedText = this.value;\n }\n\n protected remove(event: Event): void {\n if (!this.canRemove) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n this.edited.emit('');\n }\n\n protected onInput(value: string): void {\n const newTags = value.split(this.separator);\n\n if (newTags.length > 1) {\n this.save(String(newTags));\n\n return;\n }\n\n this.editedText = value;\n }\n\n protected onKeyDown(event: KeyboardEvent): void {\n event.stopPropagation();\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n event.preventDefault();\n this.save(this.editedText || '');\n break;\n case 'esc':\n case 'escape':\n event.preventDefault();\n this.stopEditing();\n this.el.focus();\n break;\n default:\n break;\n }\n }\n\n protected onBlur(): void {\n if (this.editedText !== null) {\n this.save(this.editedText);\n }\n }\n\n private get canEdit(): boolean {\n return this.editable && !this.disabled && !this.showLoader;\n }\n\n private stopEditing(): void {\n this.editing = false;\n this.editedText = null;\n }\n\n private save(value: string): void {\n this.stopEditing();\n this.edited.emit(value.trim());\n }\n}\n","<div\n class=\"t-tag\"\n [style.backgroundColor]=\"backgroundColor\"\n (dblclick)=\"edit($event)\"\n>\n @if (leftContent) {\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"leftContent as text\">\n {{ text }}\n </ng-container>\n </div>\n }\n <span\n automation-id=\"tui-tag__text\"\n class=\"t-text\"\n [textContent]=\"displayText\"\n ></span>\n @if (showLoader) {\n <tui-loader\n class=\"t-content\"\n [inheritColor]=\"true\"\n [size]=\"loaderSize\"\n />\n }\n @if (canRemove) {\n <tui-icon\n automation-id=\"tui-tag__remove\"\n class=\"t-icon\"\n [icon]=\"icons.close\"\n (click)=\"remove($event)\"\n (mousedown.stop.prevent.zoneless)=\"(0)\"\n />\n }\n</div>\n@if (editing) {\n <input\n #input\n automation-id=\"tui-tag__edit\"\n type=\"text\"\n class=\"t-edit\"\n [attr.maxLength]=\"maxLength\"\n [ngModel]=\"editedText\"\n [ngModelOptions]=\"{standalone: true}\"\n (blur)=\"onBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (ngModelChange)=\"onInput($event)\"\n />\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiLoader} from '@taiga-ui/core/components/loader';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiTagComponent} from './tag.component';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiIcon,\n TuiLoader,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n ],\n declarations: [TuiTagComponent],\n exports: [TuiTagComponent],\n})\nexport class TuiTagModule {}\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-legacy-components-tag.mjs","sources":["../../../projects/legacy/components/tag/tag.options.ts","../../../projects/legacy/components/tag/tag.component.ts","../../../projects/legacy/components/tag/tag.template.html","../../../projects/legacy/components/tag/tag.module.ts","../../../projects/legacy/components/tag/taiga-ui-legacy-components-tag.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {type TuiStatus} from '@taiga-ui/legacy/utils';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport interface TuiTagOptions {\n readonly autoColor: boolean;\n readonly size: TuiSizeL | TuiSizeS;\n readonly status: TuiStatus;\n}\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport const TUI_TAG_DEFAULT_OPTIONS: TuiTagOptions = {\n size: 'm',\n status: 'default',\n autoColor: false,\n};\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport const TUI_TAG_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_TAG_OPTIONS' : '', {\n factory: () => TUI_TAG_DEFAULT_OPTIONS,\n});\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\nexport function tuiTagOptionsProvider(options: Partial<TuiTagOptions>): Provider {\n return tuiProvideOptions(TUI_TAG_OPTIONS, options, TUI_TAG_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n ViewChild,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {type TuiSizeL, type TuiSizeS, type TuiSizeXS} from '@taiga-ui/core/types';\nimport {tuiStringHashToHsl} from '@taiga-ui/core/utils/format';\nimport {tuiSizeBigger} from '@taiga-ui/core/utils/miscellaneous';\nimport {type TuiStatus} from '@taiga-ui/legacy/utils';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TAG_OPTIONS} from './tag.options';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\n@Component({\n standalone: false,\n selector: 'tui-tag, a[tuiTag], button[tuiTag]',\n templateUrl: './tag.template.html',\n styleUrls: ['./tag.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-size]': 'size',\n '[attr.data-status]': 'status',\n '[class._editing]': 'editing',\n '[class._hoverable]': 'hoverable',\n '[class._autocolor]': 'autoColor',\n '[class._disabled]': 'disabled',\n '(keydown.delete)': 'remove($event)',\n '(keydown.backspace)': 'remove($event)',\n '(keydown.enter)': 'edit($event)',\n },\n})\nexport class TuiTagComponent {\n private readonly el = tuiInjectElement();\n private readonly options = inject(TUI_TAG_OPTIONS);\n\n protected editing = false;\n\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected editedText: string | null = null;\n\n @Input()\n public value = '';\n\n @Input()\n public editable = false;\n\n @Input()\n public separator: RegExp | string = ',';\n\n @Input()\n public maxLength: number | null = null;\n\n @Input()\n public size: TuiSizeL | TuiSizeS = this.options.size;\n\n @Input()\n public showLoader = false;\n\n @Input()\n public status: TuiStatus = this.options.status;\n\n @Input()\n public hoverable = false;\n\n @Input()\n public removable = false;\n\n @Input()\n public disabled = false;\n\n @Input()\n public autoColor: boolean = this.options.autoColor;\n\n @Input()\n public leftContent: PolymorpheusContent;\n\n @Output()\n public readonly edited = new EventEmitter<string>();\n\n @ViewChild('input', {read: ElementRef})\n protected set input(input: ElementRef<HTMLInputElement>) {\n if (input) {\n input.nativeElement.focus();\n }\n }\n\n protected get backgroundColor(): string | null {\n return this.autoColor ? tuiStringHashToHsl(this.value) : null;\n }\n\n protected get canRemove(): boolean {\n return this.removable && !this.disabled && !this.showLoader;\n }\n\n protected get displayText(): string {\n return this.editedText ?? this.value;\n }\n\n protected get loaderSize(): TuiSizeXS {\n return tuiSizeBigger(this.size) ? 's' : 'xs';\n }\n\n protected edit(event: Event): void {\n if (!this.canEdit) {\n return;\n }\n\n event.preventDefault();\n this.editing = true;\n this.editedText = this.value;\n }\n\n protected remove(event: Event): void {\n if (!this.canRemove) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n this.edited.emit('');\n }\n\n protected onInput(value: string): void {\n const newTags = value.split(this.separator);\n\n if (newTags.length > 1) {\n this.save(String(newTags));\n\n return;\n }\n\n this.editedText = value;\n }\n\n protected onKeyDown(event: KeyboardEvent): void {\n event.stopPropagation();\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n event.preventDefault();\n this.save(this.editedText || '');\n break;\n case 'esc':\n case 'escape':\n event.preventDefault();\n this.stopEditing();\n this.el.focus();\n break;\n default:\n break;\n }\n }\n\n protected onBlur(): void {\n if (this.editedText !== null) {\n this.save(this.editedText);\n }\n }\n\n private get canEdit(): boolean {\n return this.editable && !this.disabled && !this.showLoader;\n }\n\n private stopEditing(): void {\n this.editing = false;\n this.editedText = null;\n }\n\n private save(value: string): void {\n this.stopEditing();\n this.edited.emit(value.trim());\n }\n}\n","<div\n class=\"t-tag\"\n [style.backgroundColor]=\"backgroundColor\"\n (dblclick)=\"edit($event)\"\n>\n @if (leftContent) {\n <div class=\"t-content\">\n <ng-container *polymorpheusOutlet=\"leftContent as text\">\n {{ text }}\n </ng-container>\n </div>\n }\n <span\n automation-id=\"tui-tag__text\"\n class=\"t-text\"\n [textContent]=\"displayText\"\n ></span>\n @if (showLoader) {\n <tui-loader\n class=\"t-content\"\n [inheritColor]=\"true\"\n [size]=\"loaderSize\"\n />\n }\n @if (canRemove) {\n <tui-icon\n automation-id=\"tui-tag__remove\"\n class=\"t-icon\"\n [icon]=\"icons.close\"\n (click)=\"remove($event)\"\n (mousedown.stop.prevent.zoneless)=\"(0)\"\n />\n }\n</div>\n@if (editing) {\n <input\n #input\n automation-id=\"tui-tag__edit\"\n type=\"text\"\n class=\"t-edit\"\n [attr.maxLength]=\"maxLength\"\n [ngModel]=\"editedText\"\n [ngModelOptions]=\"{standalone: true}\"\n (blur)=\"onBlur()\"\n (keydown)=\"onKeyDown($event)\"\n (ngModelChange)=\"onInput($event)\"\n />\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiLoader} from '@taiga-ui/core/components/loader';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiTagComponent} from './tag.component';\n\n/**\n * @deprecated: drop in v5.0 use {@link TuiChip}\n * https://taiga-ui.dev/components/chip\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiIcon,\n TuiLoader,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n ],\n declarations: [TuiTagComponent],\n exports: [TuiTagComponent],\n})\nexport class TuiTagModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAeA;;;AAGG;AACU,MAAA,uBAAuB,GAAkB;AAClD,IAAA,IAAI,EAAE,GAAG;AACT,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,SAAS,EAAE,KAAK;;AAGpB;;;AAGG;AACU,MAAA,eAAe,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,iBAAiB,GAAG,EAAE,EAAE;AAClF,IAAA,OAAO,EAAE,MAAM,uBAAuB;AACzC,CAAA;AAED;;;AAGG;AACG,SAAU,qBAAqB,CAAC,OAA+B,EAAA;IACjE,OAAO,iBAAiB,CAAC,eAAe,EAAE,OAAO,EAAE,uBAAuB,CAAC;AAC/E;;ACnBA;;;AAGG;MAmBU,eAAe,CAAA;AAlB5B,IAAA,WAAA,GAAA;QAmBqB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AACvB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;QAExC,IAAO,CAAA,OAAA,GAAG,KAAK;AAEN,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACzC,IAAU,CAAA,UAAA,GAAkB,IAAI;QAGnC,IAAK,CAAA,KAAA,GAAG,EAAE;QAGV,IAAQ,CAAA,QAAA,GAAG,KAAK;QAGhB,IAAS,CAAA,SAAA,GAAoB,GAAG;QAGhC,IAAS,CAAA,SAAA,GAAkB,IAAI;AAG/B,QAAA,IAAA,CAAA,IAAI,GAAwB,IAAI,CAAC,OAAO,CAAC,IAAI;QAG7C,IAAU,CAAA,UAAA,GAAG,KAAK;AAGlB,QAAA,IAAA,CAAA,MAAM,GAAc,IAAI,CAAC,OAAO,CAAC,MAAM;QAGvC,IAAS,CAAA,SAAA,GAAG,KAAK;QAGjB,IAAS,CAAA,SAAA,GAAG,KAAK;QAGjB,IAAQ,CAAA,QAAA,GAAG,KAAK;AAGhB,QAAA,IAAA,CAAA,SAAS,GAAY,IAAI,CAAC,OAAO,CAAC,SAAS;AAMlC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAU;AA+FtD;IA7FG,IACc,KAAK,CAAC,KAAmC,EAAA;QACnD,IAAI,KAAK,EAAE;AACP,YAAA,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE;;;AAInC,IAAA,IAAc,eAAe,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI;;AAGjE,IAAA,IAAc,SAAS,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU;;AAG/D,IAAA,IAAc,WAAW,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK;;AAGxC,IAAA,IAAc,UAAU,GAAA;AACpB,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,IAAI;;AAGtC,IAAA,IAAI,CAAC,KAAY,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf;;QAGJ,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK;;AAGtB,IAAA,MAAM,CAAC,KAAY,EAAA;AACzB,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACjB;;QAGJ,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;;AAGd,IAAA,OAAO,CAAC,KAAa,EAAA;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;AAE3C,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAE1B;;AAGJ,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;;AAGjB,IAAA,SAAS,CAAC,KAAoB,EAAA;QACpC,KAAK,CAAC,eAAe,EAAE;AAEvB,QAAA,QAAQ,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;AAC3B,YAAA,KAAK,OAAO;gBACR,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBAChC;AACJ,YAAA,KAAK,KAAK;AACV,YAAA,KAAK,QAAQ;gBACT,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,CAAC,WAAW,EAAE;AAClB,gBAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;gBACf;AACJ,YAAA;gBACI;;;IAIF,MAAM,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE;AAC1B,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;;AAIlC,IAAA,IAAY,OAAO,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU;;IAGtD,WAAW,GAAA;AACf,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;AAGlB,IAAA,IAAI,CAAC,KAAa,EAAA;QACtB,IAAI,CAAC,WAAW,EAAE;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;;+GA3IzB,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAA,EAgDG,UAAU,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1FzC,uwCAgDA,EAAA,MAAA,EAAA,CAAA,guLAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,EAAA,SAAA,EAAA,aAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FDNa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAlB3B,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,KAAK,YACP,oCAAoC,EAAA,eAAA,EAG7B,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,oBAAoB,EAAE,QAAQ;AAC9B,wBAAA,kBAAkB,EAAE,SAAS;AAC7B,wBAAA,oBAAoB,EAAE,WAAW;AACjC,wBAAA,oBAAoB,EAAE,WAAW;AACjC,wBAAA,mBAAmB,EAAE,UAAU;AAC/B,wBAAA,kBAAkB,EAAE,gBAAgB;AACpC,wBAAA,qBAAqB,EAAE,gBAAgB;AACvC,wBAAA,iBAAiB,EAAE,cAAc;AACpC,qBAAA,EAAA,QAAA,EAAA,uwCAAA,EAAA,MAAA,EAAA,CAAA,guLAAA,CAAA,EAAA;8BAYM,KAAK,EAAA,CAAA;sBADX;gBAIM,QAAQ,EAAA,CAAA;sBADd;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,IAAI,EAAA,CAAA;sBADV;gBAIM,UAAU,EAAA,CAAA;sBADhB;gBAIM,MAAM,EAAA,CAAA;sBADZ;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,QAAQ,EAAA,CAAA;sBADd;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,WAAW,EAAA,CAAA;sBADjB;gBAIe,MAAM,EAAA,CAAA;sBADrB;gBAIa,KAAK,EAAA,CAAA;sBADlB,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,OAAO,EAAE,EAAC,IAAI,EAAE,UAAU,EAAC;;;AEjF1C;;;AAGG;MAaU,YAAY,CAAA;+GAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAZ,YAAY,EAAA,YAAA,EAAA,CAHN,eAAe,CAAA,EAAA,OAAA,EAAA,CAP1B,YAAY;YACZ,WAAW;YACX,OAAO;YACP,SAAS;YACT,kBAAkB;AAClB,YAAA,oBAAoB,aAGd,eAAe,CAAA,EAAA,CAAA,CAAA;AAEhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAVjB,YAAY;YACZ,WAAW;YACX,OAAO;YACP,SAAS,CAAA,EAAA,CAAA,CAAA;;4FAOJ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAZxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,WAAW;wBACX,OAAO;wBACP,SAAS;wBACT,kBAAkB;wBAClB,oBAAoB;AACvB,qBAAA;oBACD,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,eAAe,CAAC;AAC7B,iBAAA;;;ACxBD;;AAEG;;;;"}
|
|
@@ -140,14 +140,14 @@ class TuiTextareaComponent extends AbstractTuiControl {
|
|
|
140
140
|
get placeholderRaisable() {
|
|
141
141
|
return this.size !== 's' && !this.controller.labelOutside;
|
|
142
142
|
}
|
|
143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.
|
|
143
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
144
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiTextareaComponent, isStandalone: false, selector: "tui-textarea", inputs: { rows: "rows", maxLength: "maxLength", expandable: "expandable" }, host: { listeners: { "focusin": "onFocused(true)", "focusout": "onFocused(false)" }, properties: { "attr.data-size": "size", "class._ios": "isIOS", "class._expandable": "expandable", "class._has-counter": "hasCounter", "class._label-outside": "labelOutside", "class._has-tooltip": "hasTooltip", "class._has-value": "hasValue", "style.--t-border-end.rem": "borderEnd", "style.--t-border-start.rem": "borderStart" } }, providers: [
|
|
145
145
|
tuiAsFocusableItemAccessor(TuiTextareaComponent),
|
|
146
146
|
tuiAsControl(TuiTextareaComponent),
|
|
147
147
|
TEXTFIELD_CONTROLLER_PROVIDER,
|
|
148
148
|
], queries: [{ propertyName: "textfield", first: true, predicate: TuiTextfieldComponent, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (hintOptions?.change$ | async) {}\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n @if (hasCounter) {\n <div\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n }\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n @if (hasPlaceholder) {\n <div\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content />\n </div>\n }\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tabIndex]=\"computedFocusable ? 0 : -1\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\" />\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n @if (iconLeftContent) {\n <div class=\"t-icon t-icon_left t-textfield-icon\">\n <tui-icon\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n }\n @if (hasCustomContent) {\n <tui-icon\n *polymorpheusOutlet=\"controller.customContent as src\"\n [icon]=\"src\"\n />\n }\n @if (hasCleaner) {\n <tui-icon\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n class=\"t-cleaner\"\n [icon]=\"src.toString()\"\n (click.stop)=\"onValueChange('')\"\n />\n }\n @if (hasTooltip) {\n <tui-tooltip\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n />\n }\n @if (iconContent) {\n <div class=\"t-icon t-textfield-icon\">\n <tui-icon\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n }\n </div>\n </label>\n</div>\n", styles: [":host{position:relative;z-index:0;display:flex;flex-direction:column;min-block-size:var(--tui-textarea-height);border-radius:var(--tui-radius-m);color:var(--tui-text-primary)}:host :host-context(*:disabled){pointer-events:none}:host[data-size=s]{--tui-height: var(--tui-height-s);--tui-textarea-height: 4.5625rem;font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);--tui-textarea-height: 5.5rem;font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);--tui-textarea-height: 6.75rem;font:var(--tui-font-text-m)}:host[data-size=m]._has-counter{--tui-textarea-height: 6.625rem}:host[data-size=l]._has-counter{--tui-textarea-height: 7.875rem}@supports (-webkit-hyphens: none){:host .t-pseudo-content,:host .t-input{text-wrap:balance;white-space:break-spaces}}.t-outline{min-block-size:inherit}.t-content{display:block;margin-block-start:0;margin-block-end:0;min-block-size:inherit;box-sizing:border-box;overflow:hidden;cursor:text}:host._disabled .t-content{cursor:auto;opacity:var(--tui-disabled-opacity)}:host:not(._expandable) .t-content{position:absolute;top:0;left:0;bottom:1px;right:0;min-block-size:auto}:host._has-counter:not(._expandable) .t-content{bottom:1.6875rem}:host._label-outside._has-counter:not(._expandable) .t-content{bottom:1rem}.t-wrapper{position:relative;inline-size:100%;block-size:100%;min-block-size:inherit;box-sizing:border-box;padding:calc((var(--tui-height) - 1.25rem) / 2) 0}:host[data-size=l]._label-outside .t-wrapper{padding:calc((var(--tui-height) - 1.5rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.25rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height) - 2.625rem) / 2) 0}:host-context(table)[data-size=m]._label-outside .t-wrapper{padding-block-end:.75rem}:host-context(table)[data-size=l]._label-outside .t-wrapper{padding-block-end:1rem}.t-input-wrapper{min-block-size:inherit;inline-size:100%;flex:1}.t-relative{position:relative;min-block-size:inherit}.t-box{display:flex;min-block-size:calc(100% - 1rem);inline-size:100%;box-sizing:content-box}:host:not(._expandable) .t-box{block-size:calc(100% - 1rem)}:host:not(._expandable)._label-outside .t-box{block-size:100%}:host._has-counter._expandable .t-box{margin-block-end:1.25rem}:host[data-size=m]:not(._label-outside) .t-box{border-block-start:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-box{border-block-start:1.25rem solid transparent}.t-pseudo-content{white-space:pre-wrap;overflow-wrap:break-word;pointer-events:none;color:transparent;overflow:hidden;border:0 solid transparent;border-inline-start-width:var(--t-border-start, 0);border-inline-end-width:var(--t-border-end, 0)}:host[data-size=s] .t-pseudo-content,:host[data-size=m] .t-pseudo-content{padding:0 .75rem}:host[data-size=l] .t-pseudo-content{padding:0 1rem}.t-pseudo-content__extra{background-color:var(--tui-status-negative-pale)}.t-input{padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;-webkit-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;box-sizing:border-box;resize:none;overflow:hidden;outline:none;border-style:solid;border-color:transparent;border-inline-start-width:var(--t-border-start, 0);border-inline-end-width:var(--t-border-end, 0)}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--tui-text-primary)!important;border-color:var(--tui-service-autofill-background);box-shadow:0 0 0 100rem var(--tui-service-autofill-background) inset!important}.t-input:not(:last-of-type){display:none}.t-input::placeholder{color:var(--tui-text-tertiary);opacity:0}:host._focused .t-input:not(:read-only)::placeholder{opacity:1}:host[data-size=s] .t-input,:host[data-size=m] .t-input{padding:0 .75rem;font:var(--tui-font-text-s)}:host[data-size=l] .t-input{padding:0 1rem;font:var(--tui-font-text-m)}@supports (-webkit-marquee-repetition: infinite) and (object-fit: fill){:host._ios .t-input{padding-inline-start:.8125rem}}.t-pseudo-content,.t-input{word-break:break-word}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;inline-size:100%;-webkit-user-select:none;user-select:none;font:var(--tui-font-text-s);color:var(--tui-text-secondary);pointer-events:none;will-change:transform;transform:translateY(0);position:absolute;top:calc(var(--tui-height) / 2 - .625rem);left:0;max-inline-size:100%;border:0 solid transparent;border-inline-start-width:var(--t-border-start, 0);border-inline-end-width:var(--t-border-end, 0);box-sizing:border-box}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);line-height:1.25rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-text-negative)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-tertiary)}:host[data-size=l] .t-placeholder{font:var(--tui-font-text-m);line-height:1.25rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-primary)}:host[data-size=s] .t-placeholder{padding:0 .75rem}:host[data-size=m] .t-placeholder{padding:0 .75rem}:host[data-size=l] .t-placeholder{padding:0 1rem}:host._label-outside .t-placeholder{overflow:initial;block-size:auto;white-space:initial}.t-icons{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;justify-content:flex-end;pointer-events:none;padding:calc((var(--tui-height) - 1.5rem) / 2) 1rem}:host[data-size=m] .t-icons{padding:calc((var(--tui-height) - 1.5rem) / 2) .625rem}.t-icons>:not(:first-child){margin-inline-start:.25rem}.t-icon{position:relative;display:flex;inline-size:1.5rem;block-size:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none}.t-icon_left{margin-inline-end:auto}.t-cleaner{position:relative;display:flex;inline-size:1.5rem;block-size:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none;pointer-events:auto}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-cleaner:before{font-size:1rem}.t-caret{display:inline-block;block-size:1rem;inline-size:0}.t-counter{position:absolute;right:.75rem;bottom:.5rem;font:var(--tui-font-text-s);pointer-events:none;margin-block-start:auto;text-align:end;color:var(--tui-text-tertiary)}:host._readonly .t-textfield-icon ::ng-deep [tuiAppearance][data-appearance=icon]{pointer-events:none}@media (hover: hover) and (pointer: fine){:host:not(._readonly):not(._disabled):hover .t-textfield-icon ::ng-deep [tuiAppearance][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.TuiScrollbar, selector: "tui-scrollbar", inputs: ["hidden"] }, { kind: "component", type: i3.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }, { kind: "directive", type: i4.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { kind: "directive", type: i5.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i6.TuiIcon, selector: "tui-icon:not([tuiBadge])", inputs: ["background"] }, { kind: "directive", type: i7.TuiAppearance, selector: "[tuiAppearance]", inputs: ["tuiAppearance", "tuiAppearanceState", "tuiAppearanceFocus", "tuiAppearanceMode"] }, { kind: "pipe", type: i8.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
149
149
|
}
|
|
150
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
150
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaComponent, decorators: [{
|
|
151
151
|
type: Component,
|
|
152
152
|
args: [{ standalone: false, selector: 'tui-textarea', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
153
153
|
tuiAsFocusableItemAccessor(TuiTextareaComponent),
|
|
@@ -188,10 +188,10 @@ class TuiTextareaDirective extends AbstractTuiTextfieldHost {
|
|
|
188
188
|
onValueChange(value) {
|
|
189
189
|
this.host.onValueChange(value);
|
|
190
190
|
}
|
|
191
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
192
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.
|
|
191
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
192
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiTextareaDirective, isStandalone: false, selector: "tui-textarea", providers: [tuiAsTextfieldHost(TuiTextareaDirective)], usesInheritance: true, ngImport: i0 }); }
|
|
193
193
|
}
|
|
194
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
194
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaDirective, decorators: [{
|
|
195
195
|
type: Directive,
|
|
196
196
|
args: [{
|
|
197
197
|
standalone: false,
|
|
@@ -205,8 +205,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
|
|
|
205
205
|
* @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead
|
|
206
206
|
*/
|
|
207
207
|
class TuiTextareaModule {
|
|
208
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
|
209
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.
|
|
208
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
209
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaModule, declarations: [TuiTextareaComponent, TuiTextareaDirective], imports: [CommonModule,
|
|
210
210
|
FormsModule,
|
|
211
211
|
TuiScrollbar,
|
|
212
212
|
TuiTooltipModule,
|
|
@@ -220,7 +220,7 @@ class TuiTextareaModule {
|
|
|
220
220
|
TuiTextfieldComponent,
|
|
221
221
|
PolymorpheusOutlet,
|
|
222
222
|
PolymorpheusTemplate] }); }
|
|
223
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.
|
|
223
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaModule, imports: [CommonModule,
|
|
224
224
|
FormsModule,
|
|
225
225
|
TuiScrollbar,
|
|
226
226
|
TuiTooltipModule,
|
|
@@ -228,7 +228,7 @@ class TuiTextareaModule {
|
|
|
228
228
|
TuiPrimitiveTextfieldModule,
|
|
229
229
|
TuiIcon] }); }
|
|
230
230
|
}
|
|
231
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
|
231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTextareaModule, decorators: [{
|
|
232
232
|
type: NgModule,
|
|
233
233
|
args: [{
|
|
234
234
|
imports: [
|