@taiga-ui/kit 4.52.0-canary.6c67ccf → 4.52.0-canary.9fae831

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/components/avatar/avatar.directive.d.ts +15 -0
  2. package/components/avatar/avatar.options.d.ts +1 -4
  3. package/components/avatar/index.d.ts +1 -1
  4. package/components/calendar-month/calendar-month.options.d.ts +1 -1
  5. package/components/checkbox/checkbox.component.d.ts +7 -18
  6. package/components/checkbox/checkbox.options.d.ts +5 -9
  7. package/components/confirm/confirm.component.d.ts +1 -0
  8. package/components/confirm/confirm.service.d.ts +2 -1
  9. package/components/files/file/file.options.d.ts +1 -1
  10. package/components/index.d.ts +0 -1
  11. package/components/input-chip/input-chip.options.d.ts +1 -1
  12. package/components/input-color/input-color.component.d.ts +2 -2
  13. package/components/input-color/input-color.options.d.ts +1 -1
  14. package/components/input-date/input-date.options.d.ts +1 -1
  15. package/components/input-number/input-number.options.d.ts +1 -1
  16. package/components/input-phone/input-phone.options.d.ts +1 -1
  17. package/components/input-time/input-time.options.d.ts +1 -1
  18. package/components/like/like.component.d.ts +4 -11
  19. package/components/like/like.options.d.ts +3 -4
  20. package/components/pager/pager.component.d.ts +1 -1
  21. package/components/push/push.component.d.ts +1 -1
  22. package/components/radio/radio.component.d.ts +7 -8
  23. package/components/radio/radio.directive.d.ts +2 -2
  24. package/components/radio/radio.options.d.ts +2 -5
  25. package/components/rating/rating.component.d.ts +5 -5
  26. package/components/rating/rating.options.d.ts +5 -3
  27. package/components/segmented/segmented.component.d.ts +1 -3
  28. package/components/switch/switch.component.d.ts +7 -19
  29. package/components/switch/switch.options.d.ts +4 -8
  30. package/components/textarea/textarea.options.d.ts +1 -1
  31. package/directives/copy/copy.directive.d.ts +1 -2
  32. package/directives/copy/copy.options.d.ts +2 -2
  33. package/directives/highlight/highlight.directive.d.ts +1 -3
  34. package/directives/password/password.options.d.ts +1 -1
  35. package/directives/tooltip/tooltip.options.d.ts +1 -4
  36. package/fesm2022/taiga-ui-kit-components-avatar.mjs +41 -48
  37. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-kit-components-badge.mjs +2 -2
  39. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-kit-components-checkbox.mjs +18 -75
  41. package/fesm2022/taiga-ui-kit-components-checkbox.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-kit-components-chip.mjs +11 -4
  43. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-kit-components-confirm.mjs +7 -7
  45. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +2 -2
  47. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-kit-components-input-chip.mjs +10 -5
  49. package/fesm2022/taiga-ui-kit-components-input-chip.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-kit-components-input-color.mjs +4 -6
  51. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +2 -2
  53. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-kit-components-input-date.mjs +2 -2
  55. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs +2 -2
  57. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-kit-components-input-month.mjs +2 -2
  59. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +2 -2
  61. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-kit-components-input-range.mjs +4 -4
  63. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-kit-components-input-time.mjs +2 -2
  65. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-kit-components-input-year.mjs +2 -2
  67. package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-kit-components-like.mjs +38 -31
  69. package/fesm2022/taiga-ui-kit-components-like.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +1 -1
  71. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-kit-components-pager.mjs +3 -3
  73. package/fesm2022/taiga-ui-kit-components-pager.mjs.map +1 -1
  74. package/fesm2022/taiga-ui-kit-components-pagination.mjs +2 -2
  75. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-kit-components-pin.mjs +2 -2
  77. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-kit-components-push.mjs +2 -2
  79. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-kit-components-radio.mjs +29 -34
  81. package/fesm2022/taiga-ui-kit-components-radio.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-kit-components-rating.mjs +15 -19
  83. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-kit-components-select.mjs +1 -1
  85. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-kit-components-switch.mjs +18 -64
  87. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-kit-components-tabs.mjs +5 -5
  89. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  90. package/fesm2022/taiga-ui-kit-components.mjs +0 -1
  91. package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-kit-directives-copy.mjs +4 -6
  93. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-kit-directives-password.mjs +3 -3
  95. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +1 -2
  97. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-kit-pipes.mjs +0 -1
  99. package/fesm2022/taiga-ui-kit-pipes.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-kit-tokens.mjs +1 -6
  101. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  102. package/package.json +12 -20
  103. package/pipes/index.d.ts +0 -1
  104. package/styles/components/avatar.less +188 -0
  105. package/styles/components/checkbox.less +13 -11
  106. package/styles/components/chip.less +0 -2
  107. package/styles/components/like.less +4 -9
  108. package/styles/components/pin.less +3 -6
  109. package/styles/components/switch.less +8 -8
  110. package/tokens/index.d.ts +0 -1
  111. package/tokens/input-date-options.d.ts +1 -1
  112. package/components/avatar/avatar.component.d.ts +0 -15
  113. package/components/input-password/index.d.ts +0 -2
  114. package/components/input-password/input-password.component.d.ts +0 -16
  115. package/components/input-password/input-password.options.d.ts +0 -24
  116. package/fesm2022/taiga-ui-kit-components-input-password.mjs +0 -95
  117. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +0 -1
  118. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs +0 -147
  119. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs.map +0 -1
  120. package/pipes/field-error/field-error-content-pipe.d.ts +0 -14
  121. package/pipes/field-error/field-error-pipe.d.ts +0 -29
  122. package/pipes/field-error/index.d.ts +0 -2
  123. package/tokens/validation-errors.d.ts +0 -5
@@ -1,75 +1,68 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, Input, ChangeDetectionStrategy, Component, ViewEncapsulation, Directive } from '@angular/core';
3
- import { tuiProvideOptions, tuiIsString, tuiPure, tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
2
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, signal, input, Directive, Input } from '@angular/core';
3
+ import { tuiWithStyles, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
4
4
  import * as i1 from '@taiga-ui/core/directives/appearance';
5
5
  import { tuiAppearanceOptionsProvider, TuiWithAppearance } from '@taiga-ui/core/directives/appearance';
6
6
  import * as i2 from '@taiga-ui/core/directives/icons';
7
7
  import { TuiIcons } from '@taiga-ui/core/directives/icons';
8
+ import { tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
8
9
  import { __decorate } from 'tslib';
9
10
  import { TuiFade } from '@taiga-ui/kit/directives/fade';
10
11
 
11
- const TUI_AVATAR_DEFAULT_OPTIONS = {
12
+ const [TUI_AVATAR_OPTIONS, tuiAvatarOptionsProvider] = tuiCreateOptions({
12
13
  appearance: '',
13
14
  round: true,
14
15
  size: 'l',
15
- };
16
- const TUI_AVATAR_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_AVATAR_OPTIONS' : '', {
17
- factory: () => TUI_AVATAR_DEFAULT_OPTIONS,
18
16
  });
19
- function tuiAvatarOptionsProvider(options) {
20
- return tuiProvideOptions(TUI_AVATAR_OPTIONS, options, TUI_AVATAR_DEFAULT_OPTIONS);
21
- }
22
17
 
18
+ class TuiAvatarStyles {
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAvatarStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiAvatarStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-avatar" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiAvatar]{--t-size: var(--tui-height-l);--t-radius: .75rem;--t-corner-offset: calc((var(--t-radius) * 1.4142 - var(--t-radius)) * 1 / 1.4142);position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;font:var(--tui-font-text-l);font-weight:700;opacity:.999}[tuiAvatar]:before{inline-size:auto;block-size:auto}[tuiAvatar]:not(._initials):before{position:absolute;top:0;right:0;bottom:0;left:0;font-size:calc(var(--t-size) * .6)}[tuiAvatar][data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-font-text-ui-xs);font-size:.5625rem}[tuiAvatar][data-size=xs]._initials:before{font:var(--tui-font-text-ui-xs);font-weight:700}[tuiAvatar][data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-font-text-ui-xs);font-weight:700}[tuiAvatar][data-size=s]._initials:before{font:var(--tui-font-text-s);font-weight:700}[tuiAvatar][data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-font-text-ui-m);font-weight:700}[tuiAvatar][data-size=m]._initials:before{font:var(--tui-font-text-m);font-weight:700}[tuiAvatar][data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-font-heading-4)}[tuiAvatar][data-size=xl]._initials:before{font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxl]._initials:before{font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxxl]._initials:before{font:var(--tui-font-heading-2)}[tuiAvatar]:not([data-shape=square]){--t-radius: calc(var(--t-size) / 2)}[tuiAvatar]._initials:before{content:attr(data-icon-start);mask:none;background:none;font:var(--tui-font-heading-6)}[tuiAvatar]._badge{mask:radial-gradient(circle at calc(100% - var(--t-corner-offset)) calc(100% - var(--t-corner-offset)),black .23rem,transparent .25rem,transparent .375rem,black .39rem);mask-clip:no-clip}[tuiAvatar]._badge:after{content:\"\";position:absolute;top:calc(100% - var(--t-corner-offset));left:calc(100% - var(--t-corner-offset));display:block;inline-size:.55rem;block-size:.55rem;border-radius:100%;background:var(--t-badge);transform:translate3d(-50%,-50%,0)}[tuiAvatar]._fallback img,[tuiAvatar]._fallback video{display:none}[tuiAvatar] img,[tuiAvatar] video,[tuiAvatar] picture{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}[tuiAvatar]:has(img,video):not(._fallback){background:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAvatarStyles, decorators: [{
23
+ type: Component,
24
+ args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
25
+ class: 'tui-avatar',
26
+ }, styles: ["[tuiAvatar]{--t-size: var(--tui-height-l);--t-radius: .75rem;--t-corner-offset: calc((var(--t-radius) * 1.4142 - var(--t-radius)) * 1 / 1.4142);position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;font:var(--tui-font-text-l);font-weight:700;opacity:.999}[tuiAvatar]:before{inline-size:auto;block-size:auto}[tuiAvatar]:not(._initials):before{position:absolute;top:0;right:0;bottom:0;left:0;font-size:calc(var(--t-size) * .6)}[tuiAvatar][data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-font-text-ui-xs);font-size:.5625rem}[tuiAvatar][data-size=xs]._initials:before{font:var(--tui-font-text-ui-xs);font-weight:700}[tuiAvatar][data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-font-text-ui-xs);font-weight:700}[tuiAvatar][data-size=s]._initials:before{font:var(--tui-font-text-s);font-weight:700}[tuiAvatar][data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-font-text-ui-m);font-weight:700}[tuiAvatar][data-size=m]._initials:before{font:var(--tui-font-text-m);font-weight:700}[tuiAvatar][data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-font-heading-4)}[tuiAvatar][data-size=xl]._initials:before{font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxl]._initials:before{font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-font-heading-3)}[tuiAvatar][data-size=xxxl]._initials:before{font:var(--tui-font-heading-2)}[tuiAvatar]:not([data-shape=square]){--t-radius: calc(var(--t-size) / 2)}[tuiAvatar]._initials:before{content:attr(data-icon-start);mask:none;background:none;font:var(--tui-font-heading-6)}[tuiAvatar]._badge{mask:radial-gradient(circle at calc(100% - var(--t-corner-offset)) calc(100% - var(--t-corner-offset)),black .23rem,transparent .25rem,transparent .375rem,black .39rem);mask-clip:no-clip}[tuiAvatar]._badge:after{content:\"\";position:absolute;top:calc(100% - var(--t-corner-offset));left:calc(100% - var(--t-corner-offset));display:block;inline-size:.55rem;block-size:.55rem;border-radius:100%;background:var(--t-badge);transform:translate3d(-50%,-50%,0)}[tuiAvatar]._fallback img,[tuiAvatar]._fallback video{display:none}[tuiAvatar] img,[tuiAvatar] video,[tuiAvatar] picture{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}[tuiAvatar]:has(img,video):not(._fallback){background:none}\n"] }]
27
+ }] });
23
28
  class TuiAvatar {
24
29
  constructor() {
25
30
  this.options = inject(TUI_AVATAR_OPTIONS);
26
- this.size = this.options.size;
27
- this.round = this.options.round;
28
- }
29
- get value() {
30
- return this.src || '';
31
- }
32
- get svg() {
33
- return tuiIsString(this.value) && this.value.endsWith('.svg');
34
- }
35
- get type() {
36
- if (this.value && !tuiIsString(this.value)) {
37
- return 'img';
38
- }
39
- if (this.value.startsWith('@tui.')) {
40
- return 'icon';
41
- }
42
- if (this.value.length > 0 && this.value.length < 3) {
43
- return 'text';
44
- }
45
- return this.value.length ? 'img' : 'content';
31
+ this.nothing = tuiWithStyles(TuiAvatarStyles);
32
+ this.icons = inject(TuiIcons);
33
+ this.fallback = signal(false);
34
+ this.size = input(this.options.size);
35
+ this.round = input(this.options.round);
36
+ this.badge = input('');
46
37
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAvatar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiAvatar, isStandalone: true, selector: "[tuiAvatar]", inputs: { size: "size", round: "round", src: ["tuiAvatar", "src"] }, host: { attributes: { "tuiAvatar": "" }, properties: { "attr.data-size": "size", "attr.data-type": "type", "class._round": "round", "class._svg": "svg" } }, providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)], hostDirectives: [{ directive: i1.TuiWithAppearance }, { directive: i2.TuiIcons, inputs: ["iconStart", "tuiAvatar"] }], ngImport: i0, template: "@if (type === 'img') {\n <img\n alt=\"\"\n loading=\"lazy\"\n [src]=\"value\"\n />\n}\n@if (type === 'text') {\n {{ value }}\n}\n<ng-content />\n", styles: [":host{--t-size: 3.5rem;--t-radius: .75rem;position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;overflow:hidden;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;opacity:.999}:host[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-font-text-xs);font-weight:700}:host[data-size=xs][data-type=content]{font:var(--tui-font-text-m);font-size:.5625rem}:host[data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-font-text-s);font-weight:700}:host[data-size=s][data-type=content]{font:var(--tui-font-text-xs);font-weight:700}:host[data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-font-text-l);font-weight:700}:host[data-size=m][data-type=content]{font:var(--tui-font-text-m);font-weight:700}:host[data-size=l]{--t-size: var(--tui-height-l);--t-radius: .75rem;font:var(--tui-font-heading-5)}:host[data-size=l][data-type=content]{font:var(--tui-font-text-l);font-weight:700}:host[data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-font-heading-3)}:host[data-size=xl][data-type=content]{font:var(--tui-font-heading-4)}:host[data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-font-heading-3)}:host[data-size=xxl][data-type=content]{font:var(--tui-font-heading-3)}:host[data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-font-heading-2)}:host[data-size=xxxl][data-type=content]{font:var(--tui-font-heading-3)}:host[data-type]:before{display:none}:host:not([data-type=icon]):before{mask:none}:host[data-type=img]:not(._svg){background:transparent}:host[data-type=icon]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";display:block;font-size:calc(var(--t-size) * .6)}:host._round{--t-radius: calc(var(--t-size) / 2)}:host ::ng-deep img,:host ::ng-deep picture,:host ::ng-deep video{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}:host._svg img{padding:20%;object-fit:contain;border-radius:unset}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAvatar, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
39
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiAvatar, isStandalone: true, selector: "[tuiAvatar]", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, round: { classPropertyName: "round", publicName: "round", isSignal: true, isRequired: false, transformFunction: null }, badge: { classPropertyName: "badge", publicName: "badge", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiAvatar": "" }, listeners: { "error.capture": "fallback.set(true)", "load.capture": "fallback.set(false)" }, properties: { "attr.data-size": "size()", "attr.data-shape": "round() ? \"round\" : \"square\"", "class._initials": "icons.iconStart()?.length < 3", "class._fallback": "fallback()", "class._badge": "badge()", "style.--t-badge": "badge()" } }, providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)], hostDirectives: [{ directive: i1.TuiWithAppearance }, { directive: i2.TuiIcons, inputs: ["iconStart", "tuiAvatar"] }], ngImport: i0 }); }
49
40
  }
50
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAvatar, decorators: [{
51
- type: Component,
52
- args: [{ selector: '[tuiAvatar]', changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)], hostDirectives: [
42
+ type: Directive,
43
+ args: [{
44
+ selector: '[tuiAvatar]',
45
+ providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)],
46
+ hostDirectives: [
53
47
  TuiWithAppearance,
54
48
  {
55
49
  directive: TuiIcons,
56
50
  inputs: ['iconStart: tuiAvatar'],
57
51
  },
58
- ], host: {
52
+ ],
53
+ host: {
59
54
  tuiAvatar: '',
60
- '[attr.data-size]': 'size',
61
- '[attr.data-type]': 'type',
62
- '[class._round]': 'round',
63
- '[class._svg]': 'svg',
64
- }, template: "@if (type === 'img') {\n <img\n alt=\"\"\n loading=\"lazy\"\n [src]=\"value\"\n />\n}\n@if (type === 'text') {\n {{ value }}\n}\n<ng-content />\n", styles: [":host{--t-size: 3.5rem;--t-radius: .75rem;position:relative;display:inline-flex;flex-shrink:0;inline-size:var(--t-size);block-size:var(--t-size);align-items:center;justify-content:center;overflow:hidden;white-space:nowrap;border-radius:var(--t-radius);border:none;background:var(--tui-background-neutral-1);color:var(--tui-text-secondary);vertical-align:middle;box-sizing:border-box;padding:.25rem;opacity:.999}:host[data-size=xs]{--t-size: var(--tui-height-xs);--t-radius: .5rem;font:var(--tui-font-text-xs);font-weight:700}:host[data-size=xs][data-type=content]{font:var(--tui-font-text-m);font-size:.5625rem}:host[data-size=s]{--t-size: var(--tui-height-s);--t-radius: .5rem;font:var(--tui-font-text-s);font-weight:700}:host[data-size=s][data-type=content]{font:var(--tui-font-text-xs);font-weight:700}:host[data-size=m]{--t-size: calc(var(--tui-height-m) - .25rem);--t-radius: .75rem;font:var(--tui-font-text-l);font-weight:700}:host[data-size=m][data-type=content]{font:var(--tui-font-text-m);font-weight:700}:host[data-size=l]{--t-size: var(--tui-height-l);--t-radius: .75rem;font:var(--tui-font-heading-5)}:host[data-size=l][data-type=content]{font:var(--tui-font-text-l);font-weight:700}:host[data-size=xl]{--t-size: 5rem;--t-radius: .75rem;font:var(--tui-font-heading-3)}:host[data-size=xl][data-type=content]{font:var(--tui-font-heading-4)}:host[data-size=xxl]{--t-size: 6rem;--t-radius: 1rem;font:var(--tui-font-heading-3)}:host[data-size=xxl][data-type=content]{font:var(--tui-font-heading-3)}:host[data-size=xxxl]{--t-size: 8rem;--t-radius: 1.25rem;font:var(--tui-font-heading-2)}:host[data-size=xxxl][data-type=content]{font:var(--tui-font-heading-3)}:host[data-type]:before{display:none}:host:not([data-type=icon]):before{mask:none}:host[data-type=img]:not(._svg){background:transparent}:host[data-type=icon]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";display:block;font-size:calc(var(--t-size) * .6)}:host._round{--t-radius: calc(var(--t-size) / 2)}:host ::ng-deep img,:host ::ng-deep picture,:host ::ng-deep video{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;box-sizing:border-box;border-radius:inherit}:host._svg img{padding:20%;object-fit:contain;border-radius:unset}\n"] }]
65
- }], propDecorators: { size: [{
66
- type: Input
67
- }], round: [{
68
- type: Input
69
- }], src: [{
70
- type: Input,
71
- args: ['tuiAvatar']
72
- }] } });
55
+ '[attr.data-size]': 'size()',
56
+ '[attr.data-shape]': 'round() ? "round" : "square"',
57
+ '[class._initials]': 'icons.iconStart()?.length < 3',
58
+ '[class._fallback]': 'fallback()',
59
+ '[class._badge]': 'badge()',
60
+ '[style.--t-badge]': 'badge()',
61
+ '(error.capture)': 'fallback.set(true)',
62
+ '(load.capture)': 'fallback.set(false)',
63
+ },
64
+ }]
65
+ }] });
73
66
 
74
67
  class TuiAvatarLabeled {
75
68
  constructor() {
@@ -166,5 +159,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
166
159
  * Generated bundle index. Do not edit.
167
160
  */
168
161
 
169
- export { TUI_AVATAR_DEFAULT_OPTIONS, TUI_AVATAR_OPTIONS, TuiAvatar, TuiAvatarLabeled, TuiAvatarOutline, TuiAvatarStack, tuiAvatarOptionsProvider };
162
+ export { TUI_AVATAR_OPTIONS, TuiAvatar, TuiAvatarLabeled, TuiAvatarOutline, TuiAvatarStack, tuiAvatarOptionsProvider };
170
163
  //# sourceMappingURL=taiga-ui-kit-components-avatar.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-avatar.mjs","sources":["../../../projects/kit/components/avatar/avatar.options.ts","../../../projects/kit/components/avatar/avatar.component.ts","../../../projects/kit/components/avatar/avatar.template.html","../../../projects/kit/components/avatar/avatar-labeled.component.ts","../../../projects/kit/components/avatar/avatar-outline.directive.ts","../../../projects/kit/components/avatar/avatar-stack.component.ts","../../../projects/kit/components/avatar/taiga-ui-kit-components-avatar.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeXS, type TuiSizeXXL} from '@taiga-ui/core/types';\n\nexport interface TuiAvatarOptions extends TuiAppearanceOptions {\n readonly appearance: string;\n readonly round: boolean;\n readonly size: TuiSizeXS | TuiSizeXXL;\n}\n\nexport const TUI_AVATAR_DEFAULT_OPTIONS: TuiAvatarOptions = {\n appearance: '',\n round: true,\n size: 'l',\n};\n\nexport const TUI_AVATAR_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_AVATAR_OPTIONS' : '',\n {\n factory: () => TUI_AVATAR_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiAvatarOptionsProvider(options: Partial<TuiAvatarOptions>): Provider {\n return tuiProvideOptions(TUI_AVATAR_OPTIONS, options, TUI_AVATAR_DEFAULT_OPTIONS);\n}\n","import {ChangeDetectionStrategy, Component, inject, Input} from '@angular/core';\nimport {type SafeResourceUrl} from '@angular/platform-browser';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiIcons} from '@taiga-ui/core/directives/icons';\n\nimport {TUI_AVATAR_OPTIONS} from './avatar.options';\n\n@Component({\n selector: '[tuiAvatar]',\n templateUrl: './avatar.template.html',\n styleUrls: ['./avatar.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiIcons,\n inputs: ['iconStart: tuiAvatar'],\n },\n ],\n host: {\n tuiAvatar: '',\n '[attr.data-size]': 'size',\n '[attr.data-type]': 'type',\n '[class._round]': 'round',\n '[class._svg]': 'svg',\n },\n})\nexport class TuiAvatar {\n private readonly options = inject(TUI_AVATAR_OPTIONS);\n\n @Input()\n public size = this.options.size;\n\n @Input()\n public round = this.options.round;\n\n @Input('tuiAvatar')\n public src?: SafeResourceUrl | string | null;\n\n protected get value(): SafeResourceUrl | string {\n return this.src || '';\n }\n\n protected get svg(): boolean {\n return tuiIsString(this.value) && this.value.endsWith('.svg');\n }\n\n protected get type(): 'content' | 'icon' | 'img' | 'text' {\n if (this.value && !tuiIsString(this.value)) {\n return 'img';\n }\n\n if (this.value.startsWith('@tui.')) {\n return 'icon';\n }\n\n if (this.value.length > 0 && this.value.length < 3) {\n return 'text';\n }\n\n return this.value.length ? 'img' : 'content';\n }\n}\n","@if (type === 'img') {\n <img\n alt=\"\"\n loading=\"lazy\"\n [src]=\"value\"\n />\n}\n@if (type === 'text') {\n {{ value }}\n}\n<ng-content />\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiFade} from '@taiga-ui/kit/directives/fade';\n\n@Component({\n selector: 'tui-avatar-labeled',\n imports: [TuiFade],\n template: `\n <ng-content />\n @if (label.length) {\n @for (item of split(label); track item) {\n <span tuiFade>\n {{ item }}\n </span>\n }\n }\n `,\n styleUrls: ['./avatar-labeled.styles.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAvatarLabeled {\n @Input()\n public label = '';\n\n @tuiPure\n protected split(label: string): readonly string[] {\n return label.split(' ');\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./avatar-outline.styles.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-avatar-outline',\n },\n})\nclass TuiAvatarOutlineStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiAvatarOutline]',\n host: {\n '[style.--t-fill]': 'value',\n '[class._outline]': 'value',\n },\n})\nexport class TuiAvatarOutline {\n protected readonly nothing = tuiWithStyles(TuiAvatarOutlineStyles);\n\n @Input()\n public tuiAvatarOutline: string | null = '';\n\n protected get value(): string | null {\n return this.tuiAvatarOutline === ''\n ? 'var(--tui-background-accent-1)'\n : this.tuiAvatarOutline;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\n@Component({\n standalone: true,\n selector: 'tui-avatar-stack',\n template: '<ng-content />',\n styleUrls: ['./avatar-stack.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-direction]': 'direction',\n },\n})\nexport class TuiAvatarStack {\n @Input()\n public direction: TuiHorizontalDirection = 'right';\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAWa,MAAA,0BAA0B,GAAqB;AACxD,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,KAAK,EAAE,IAAI;AACX,IAAA,IAAI,EAAE,GAAG;;AAGA,MAAA,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;AACI,IAAA,OAAO,EAAE,MAAM,0BAA0B;AAC5C,CAAA;AAGC,SAAU,wBAAwB,CAAC,OAAkC,EAAA;IACvE,OAAO,iBAAiB,CAAC,kBAAkB,EAAE,OAAO,EAAE,0BAA0B,CAAC;AACrF;;MCMa,SAAS,CAAA;AArBtB,IAAA,WAAA,GAAA;AAsBqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAG9C,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI;AAGxB,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;AA4BpC;AAvBG,IAAA,IAAc,KAAK,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,GAAG,IAAI,EAAE;;AAGzB,IAAA,IAAc,GAAG,GAAA;AACb,QAAA,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;;AAGjE,IAAA,IAAc,IAAI,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACxC,YAAA,OAAO,KAAK;;QAGhB,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;AAChC,YAAA,OAAO,MAAM;;AAGjB,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;AAChD,YAAA,OAAO,MAAM;;AAGjB,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,SAAS;;+GAjCvC,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,CAAA,WAAA,EAAA,KAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,EAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,cAAA,EAAA,OAAA,EAAA,YAAA,EAAA,KAAA,EAAA,EAAA,EAAA,SAAA,EAhBP,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC,iJChBjE,iLAWA,EAAA,MAAA,EAAA,CAAA,2tEAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FDqBa,SAAS,EAAA,UAAA,EAAA,CAAA;kBArBrB,SAAS;+BACI,aAAa,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC,EAC7C,cAAA,EAAA;wBACZ,iBAAiB;AACjB,wBAAA;AACI,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,sBAAsB,CAAC;AACnC,yBAAA;qBACJ,EACK,IAAA,EAAA;AACF,wBAAA,SAAS,EAAE,EAAE;AACb,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,gBAAgB,EAAE,OAAO;AACzB,wBAAA,cAAc,EAAE,KAAK;AACxB,qBAAA,EAAA,QAAA,EAAA,iLAAA,EAAA,MAAA,EAAA,CAAA,2tEAAA,CAAA,EAAA;8BAMM,IAAI,EAAA,CAAA;sBADV;gBAIM,KAAK,EAAA,CAAA;sBADX;gBAIM,GAAG,EAAA,CAAA;sBADT,KAAK;uBAAC,WAAW;;;MEfT,gBAAgB,CAAA;AAjB7B,IAAA,WAAA,GAAA;QAmBW,IAAK,CAAA,KAAA,GAAG,EAAE;AAMpB;AAHa,IAAA,KAAK,CAAC,KAAa,EAAA;AACzB,QAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;+GANlB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAdf,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;AAST,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,oUAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAVS,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,aAAA,EAAA,eAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;AAoBP,UAAA,CAAA;IADT;AAGA,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,OAAA,EAAA,IAAA,CAAA;4FAPQ,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAjB5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EACrB,OAAA,EAAA,CAAC,OAAO,CAAC,EACR,QAAA,EAAA;;;;;;;;;AAST,IAAA,CAAA,EAAA,aAAA,EAEc,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,oUAAA,CAAA,EAAA;8BAIxC,KAAK,EAAA,CAAA;sBADX;gBAIS,KAAK,EAAA,EAAA,EAAA,EAAA,CAAA;;ACtBnB,MAUM,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,wHARd,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,2tBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,oBAAoB;AAC9B,qBAAA,EAAA,MAAA,EAAA,CAAA,2tBAAA,CAAA,EAAA;;MAYQ,gBAAgB,CAAA;AAR7B,IAAA,WAAA,GAAA;AASuB,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,sBAAsB,CAAC;QAG3D,IAAgB,CAAA,gBAAA,GAAkB,EAAE;AAO9C;AALG,IAAA,IAAc,KAAK,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,gBAAgB,KAAK;AAC7B,cAAE;AACF,cAAE,IAAI,CAAC,gBAAgB;;+GATtB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACF,wBAAA,kBAAkB,EAAE,OAAO;AAC3B,wBAAA,kBAAkB,EAAE,OAAO;AAC9B,qBAAA;AACJ,iBAAA;8BAKU,gBAAgB,EAAA,CAAA;sBADtB;;;MCbQ,cAAc,CAAA;AAX3B,IAAA,WAAA,GAAA;QAaW,IAAS,CAAA,SAAA,GAA2B,OAAO;AACrD;+GAHY,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,8KARb,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,quJAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQjB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAX1B,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,kBAAkB,EAClB,QAAA,EAAA,gBAAgB,EAEX,aAAA,EAAA,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,uBAAuB,EAAE,WAAW;AACvC,qBAAA,EAAA,MAAA,EAAA,CAAA,quJAAA,CAAA,EAAA;8BAIM,SAAS,EAAA,CAAA;sBADf;;;ACpBL;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-avatar.mjs","sources":["../../../projects/kit/components/avatar/avatar.options.ts","../../../projects/kit/components/avatar/avatar.directive.ts","../../../projects/kit/components/avatar/avatar-labeled.component.ts","../../../projects/kit/components/avatar/avatar-outline.directive.ts","../../../projects/kit/components/avatar/avatar-stack.component.ts","../../../projects/kit/components/avatar/taiga-ui-kit-components-avatar.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeXS, type TuiSizeXXL} from '@taiga-ui/core/types';\n\nexport interface TuiAvatarOptions extends TuiAppearanceOptions {\n readonly appearance: string;\n readonly round: boolean;\n readonly size: TuiSizeXS | TuiSizeXXL;\n}\n\nexport const [TUI_AVATAR_OPTIONS, tuiAvatarOptionsProvider] =\n tuiCreateOptions<TuiAvatarOptions>({\n appearance: '',\n round: true,\n size: 'l',\n });\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiIcons} from '@taiga-ui/core/directives/icons';\n\nimport {TUI_AVATAR_OPTIONS} from './avatar.options';\n\n@Component({\n standalone: true,\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/avatar.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-avatar',\n },\n})\nclass TuiAvatarStyles {}\n\n@Directive({\n selector: '[tuiAvatar]',\n providers: [tuiAppearanceOptionsProvider(TUI_AVATAR_OPTIONS)],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiIcons,\n inputs: ['iconStart: tuiAvatar'],\n },\n ],\n host: {\n tuiAvatar: '',\n '[attr.data-size]': 'size()',\n '[attr.data-shape]': 'round() ? \"round\" : \"square\"',\n '[class._initials]': 'icons.iconStart()?.length < 3',\n '[class._fallback]': 'fallback()',\n '[class._badge]': 'badge()',\n '[style.--t-badge]': 'badge()',\n '(error.capture)': 'fallback.set(true)',\n '(load.capture)': 'fallback.set(false)',\n },\n})\nexport class TuiAvatar {\n private readonly options = inject(TUI_AVATAR_OPTIONS);\n\n protected readonly nothing = tuiWithStyles(TuiAvatarStyles);\n protected readonly icons = inject(TuiIcons);\n protected readonly fallback = signal(false);\n\n public readonly size = input(this.options.size);\n public readonly round = input(this.options.round);\n public readonly badge = input('');\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiFade} from '@taiga-ui/kit/directives/fade';\n\n@Component({\n selector: 'tui-avatar-labeled',\n imports: [TuiFade],\n template: `\n <ng-content />\n @if (label.length) {\n @for (item of split(label); track item) {\n <span tuiFade>\n {{ item }}\n </span>\n }\n }\n `,\n styleUrls: ['./avatar-labeled.styles.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiAvatarLabeled {\n @Input()\n public label = '';\n\n @tuiPure\n protected split(label: string): readonly string[] {\n return label.split(' ');\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./avatar-outline.styles.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-avatar-outline',\n },\n})\nclass TuiAvatarOutlineStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiAvatarOutline]',\n host: {\n '[style.--t-fill]': 'value',\n '[class._outline]': 'value',\n },\n})\nexport class TuiAvatarOutline {\n protected readonly nothing = tuiWithStyles(TuiAvatarOutlineStyles);\n\n @Input()\n public tuiAvatarOutline: string | null = '';\n\n protected get value(): string | null {\n return this.tuiAvatarOutline === ''\n ? 'var(--tui-background-accent-1)'\n : this.tuiAvatarOutline;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\n@Component({\n standalone: true,\n selector: 'tui-avatar-stack',\n template: '<ng-content />',\n styleUrls: ['./avatar-stack.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.data-direction]': 'direction',\n },\n})\nexport class TuiAvatarStack {\n @Input()\n public direction: TuiHorizontalDirection = 'right';\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;MAUa,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,GACvD,gBAAgB,CAAmB;AAC/B,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,KAAK,EAAE,IAAI;AACX,IAAA,IAAI,EAAE,GAAG;AACZ,CAAA;;ACGL,MAUM,eAAe,CAAA;+GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,gHARP,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,6wFAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,eAAe,EAAA,UAAA,EAAA,CAAA;kBAVpB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,YAAY;AACtB,qBAAA,EAAA,MAAA,EAAA,CAAA,6wFAAA,CAAA,EAAA;;MA0BQ,SAAS,CAAA;AAtBtB,IAAA,WAAA,GAAA;AAuBqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAElC,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,eAAe,CAAC;AACxC,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC;QAE3B,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AACjC,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC;AACpC;+GAVY,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAT,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,SAAS,oyBApBP,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAoBpD,SAAS,EAAA,UAAA,EAAA,CAAA;kBAtBrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,SAAS,EAAE,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;AAC7D,oBAAA,cAAc,EAAE;wBACZ,iBAAiB;AACjB,wBAAA;AACI,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,sBAAsB,CAAC;AACnC,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,SAAS,EAAE,EAAE;AACb,wBAAA,kBAAkB,EAAE,QAAQ;AAC5B,wBAAA,mBAAmB,EAAE,8BAA8B;AACnD,wBAAA,mBAAmB,EAAE,+BAA+B;AACpD,wBAAA,mBAAmB,EAAE,YAAY;AACjC,wBAAA,gBAAgB,EAAE,SAAS;AAC3B,wBAAA,mBAAmB,EAAE,SAAS;AAC9B,wBAAA,iBAAiB,EAAE,oBAAoB;AACvC,wBAAA,gBAAgB,EAAE,qBAAqB;AAC1C,qBAAA;AACJ,iBAAA;;;MCzBY,gBAAgB,CAAA;AAjB7B,IAAA,WAAA,GAAA;QAmBW,IAAK,CAAA,KAAA,GAAG,EAAE;AAMpB;AAHa,IAAA,KAAK,CAAC,KAAa,EAAA;AACzB,QAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;;+GANlB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAdf,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;AAST,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,oUAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAVS,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,aAAA,EAAA,eAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;AAoBP,UAAA,CAAA;IADT;AAGA,CAAA,EAAA,gBAAA,CAAA,SAAA,EAAA,OAAA,EAAA,IAAA,CAAA;4FAPQ,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAjB5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EACrB,OAAA,EAAA,CAAC,OAAO,CAAC,EACR,QAAA,EAAA;;;;;;;;;AAST,IAAA,CAAA,EAAA,aAAA,EAEc,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,oUAAA,CAAA,EAAA;8BAIxC,KAAK,EAAA,CAAA;sBADX;gBAIS,KAAK,EAAA,EAAA,EAAA,EAAA,CAAA;;ACtBnB,MAUM,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,wHARd,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,2tBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,oBAAoB;AAC9B,qBAAA,EAAA,MAAA,EAAA,CAAA,2tBAAA,CAAA,EAAA;;MAYQ,gBAAgB,CAAA;AAR7B,IAAA,WAAA,GAAA;AASuB,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,sBAAsB,CAAC;QAG3D,IAAgB,CAAA,gBAAA,GAAkB,EAAE;AAO9C;AALG,IAAA,IAAc,KAAK,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,gBAAgB,KAAK;AAC7B,cAAE;AACF,cAAE,IAAI,CAAC,gBAAgB;;+GATtB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACF,wBAAA,kBAAkB,EAAE,OAAO;AAC3B,wBAAA,kBAAkB,EAAE,OAAO;AAC9B,qBAAA;AACJ,iBAAA;8BAKU,gBAAgB,EAAA,CAAA;sBADtB;;;MCbQ,cAAc,CAAA;AAX3B,IAAA,WAAA,GAAA;QAaW,IAAS,CAAA,SAAA,GAA2B,OAAO;AACrD;+GAHY,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,8KARb,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,quJAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQjB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAX1B,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,kBAAkB,EAClB,QAAA,EAAA,gBAAgB,EAEX,aAAA,EAAA,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,uBAAuB,EAAE,WAAW;AACvC,qBAAA,EAAA,MAAA,EAAA,CAAA,quJAAA,CAAA,EAAA;8BAIM,SAAS,EAAA,CAAA;sBADf;;;ACpBL;;AAEG;;;;"}
@@ -19,13 +19,13 @@ function tuiBadgeOptionsProvider(options) {
19
19
 
20
20
  class TuiBadgeStyles {
21
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiBadgeStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiBadgeStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>[tuiAvatar],[tuiBadge]>[tuiAvatar],tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error],tui-badge[data-appearance=negative],[tuiBadge][data-appearance=negative]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success],tui-badge[data-appearance=positive],[tuiBadge][data-appearance=positive]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-font-text-xs)}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=negative],[tuiBadge][tuiAppearance][data-appearance=negative],tui-badge[tuiAppearance][data-appearance=positive],[tuiBadge][tuiAppearance][data-appearance=positive],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiBadgeStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-badge" }, ngImport: i0, template: '', isInline: true, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>[tuiAvatar],[tuiBadge]>[tuiAvatar],tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error],tui-badge[data-appearance=negative],[tuiBadge][data-appearance=negative]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success],tui-badge[data-appearance=positive],[tuiBadge][data-appearance=positive]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-font-text-xs)}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=negative],[tuiBadge][tuiAppearance][data-appearance=negative],tui-badge[tuiAppearance][data-appearance=positive],[tuiBadge][tuiAppearance][data-appearance=positive],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
23
23
  }
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiBadgeStyles, decorators: [{
25
25
  type: Component,
26
26
  args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
27
27
  class: 'tui-badge',
28
- }, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-svg,[tuiBadge]>tui-svg,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>[tuiAvatar],[tuiBadge]>[tuiAvatar],tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error],tui-badge[data-appearance=negative],[tuiBadge][data-appearance=negative]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success],tui-badge[data-appearance=positive],[tuiBadge][data-appearance=positive]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-font-text-xs)}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=negative],[tuiBadge][tuiAppearance][data-appearance=negative],tui-badge[tuiAppearance][data-appearance=positive],[tuiBadge][tuiAppearance][data-appearance=positive],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"] }]
28
+ }, styles: ["tui-badge,[tuiBadge]{--t-icon-size: 1rem;--t-padding: 0 .5rem;--t-size: var(--tui-height-xs);--t-margin: -.25rem;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));border-radius:6rem;background:#959595;color:var(--tui-background-base);padding:var(--t-padding);block-size:var(--t-size);min-inline-size:var(--t-size);inline-size:fit-content;font:var(--tui-font-text-s)}tui-badge>img,[tuiBadge]>img,tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge>[tuiAvatar],[tuiBadge]>[tuiAvatar],tui-badge>tui-badge,[tuiBadge]>tui-badge,tui-badge>[tuiBadge],[tuiBadge]>[tuiBadge],tui-badge>[tuiRadio],[tuiBadge]>[tuiRadio],tui-badge>[tuiSwitch],[tuiBadge]>[tuiSwitch],tui-badge>[tuiCheckbox],[tuiBadge]>[tuiCheckbox],tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{margin:var(--t-margin)}tui-badge[tuiStatus]:before,[tuiBadge][tuiStatus]:before{inline-size:.375rem;block-size:.375rem;margin:0}tui-badge>tui-icon,[tuiBadge]>tui-icon,tui-badge[tuiIcons]:before,[tuiBadge][tuiIcons]:before,tui-badge[tuiIcons]:after,[tuiBadge][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-badge[data-appearance=error],[tuiBadge][data-appearance=error],tui-badge[data-appearance=negative],[tuiBadge][data-appearance=negative]{--t-status: var(--tui-status-negative)}tui-badge[data-appearance=success],[tuiBadge][data-appearance=success],tui-badge[data-appearance=positive],[tuiBadge][data-appearance=positive]{--t-status: var(--tui-status-positive)}tui-badge[data-appearance=warning],[tuiBadge][data-appearance=warning]{--t-status: var(--tui-status-warning)}tui-badge[data-appearance=info],[tuiBadge][data-appearance=info]{--t-status: var(--tui-status-info)}tui-badge[data-appearance=neutral],[tuiBadge][data-appearance=neutral]{--t-status: var(--tui-status-neutral)}tui-badge[data-size=s],[tuiBadge][data-size=s]{--t-padding: 0 .3125rem;--t-size: 1rem;--t-icon-size: .625rem;--t-margin: -.125rem;font:var(--tui-font-text-xs)}tui-badge[data-size=s][tuiStatus]:before,[tuiBadge][data-size=s][tuiStatus]:before{inline-size:.25rem;block-size:.25rem;margin-inline-end:-.125rem}tui-badge[data-size=m],[tuiBadge][data-size=m]{--t-padding: 0 .375rem;--t-size: 1.25rem;--t-icon-size: .75rem;--t-margin: -.125rem}tui-badge[data-size=xl],[tuiBadge][data-size=xl]{--t-margin: -.25rem;--t-padding: 0 .75rem;--t-size: var(--tui-height-s);font:var(--tui-font-text-m)}tui-badge[data-size=xl][tuiStatus]:before,[tuiBadge][data-size=xl][tuiStatus]:before{inline-size:.5rem;block-size:.5rem;margin-inline-end:-.125rem}tui-badge[tuiAppearance][data-appearance=error],[tuiBadge][tuiAppearance][data-appearance=error],tui-badge[tuiAppearance][data-appearance=success],[tuiBadge][tuiAppearance][data-appearance=success],tui-badge[tuiAppearance][data-appearance=negative],[tuiBadge][tuiAppearance][data-appearance=negative],tui-badge[tuiAppearance][data-appearance=positive],[tuiBadge][tuiAppearance][data-appearance=positive],tui-badge[tuiAppearance][data-appearance=warning],[tuiBadge][tuiAppearance][data-appearance=warning],tui-badge[tuiAppearance][data-appearance=info],[tuiBadge][tuiAppearance][data-appearance=info],tui-badge[tuiAppearance][data-appearance=neutral],[tuiBadge][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}img[tuiBadge]{padding:0;inline-size:var(--t-size)}tui-icon[tuiBadge]:before{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;--t-margin: 0}\n"] }]
29
29
  }] });
30
30
  class TuiBadge {
31
31
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-badge.mjs","sources":["../../../projects/kit/components/badge/badge.options.ts","../../../projects/kit/components/badge/badge.directive.ts","../../../projects/kit/components/badge/taiga-ui-kit-components-badge.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeS, type TuiSizeXL} from '@taiga-ui/core/types';\n\nexport interface TuiBadgeOptions extends TuiAppearanceOptions {\n readonly size: TuiSizeS | TuiSizeXL;\n}\n\nexport const TUI_BADGE_DEFAULT_OPTIONS: TuiBadgeOptions = {\n appearance: '',\n size: 'l',\n};\n\nexport const TUI_BADGE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_BADGE_OPTIONS' : '',\n {\n factory: () => TUI_BADGE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiBadgeOptionsProvider(options: Partial<TuiBadgeOptions>): Provider {\n return tuiProvideOptions(TUI_BADGE_OPTIONS, options, TUI_BADGE_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\n\nimport {TUI_BADGE_OPTIONS} from './badge.options';\n\n@Component({\n standalone: true,\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/badge.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-badge',\n },\n})\nclass TuiBadgeStyles {}\n\n@Directive({\n standalone: true,\n // tui-icon[tuiBadge] is required to avoid double matching of TuiIcons\n selector: 'tui-badge,[tuiBadge],tui-icon[tuiBadge]',\n providers: [tuiAppearanceOptionsProvider(TUI_BADGE_OPTIONS)],\n hostDirectives: [TuiWithAppearance, TuiWithIcons],\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiBadge {\n protected readonly nothing = tuiWithStyles(TuiBadgeStyles);\n\n @Input()\n public size = inject(TUI_BADGE_OPTIONS).size;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AASa,MAAA,yBAAyB,GAAoB;AACtD,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,IAAI,EAAE,GAAG;;AAGA,MAAA,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC;AACI,IAAA,OAAO,EAAE,MAAM,yBAAyB;AAC3C,CAAA;AAGC,SAAU,uBAAuB,CAAC,OAAiC,EAAA;IACrE,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,EAAE,yBAAyB,CAAC;AACnF;;ACNA,MAUM,cAAc,CAAA;+GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,+GARN,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wrHAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,cAAc,EAAA,UAAA,EAAA,CAAA;kBAVnB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,WAAW;AACrB,qBAAA,EAAA,MAAA,EAAA,CAAA,wrHAAA,CAAA,EAAA;;MAcQ,QAAQ,CAAA;AAVrB,IAAA,WAAA,GAAA;AAWuB,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;AAGnD,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI;AAC/C;+GALY,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAR,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,QAAQ,oKANN,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAMnD,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAVpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;;AAEhB,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,SAAS,EAAE,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;AAC5D,oBAAA,cAAc,EAAE,CAAC,iBAAiB,EAAE,YAAY,CAAC;AACjD,oBAAA,IAAI,EAAE;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC7B,qBAAA;AACJ,iBAAA;8BAKU,IAAI,EAAA,CAAA;sBADV;;;AC1CL;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-badge.mjs","sources":["../../../projects/kit/components/badge/badge.options.ts","../../../projects/kit/components/badge/badge.directive.ts","../../../projects/kit/components/badge/taiga-ui-kit-components-badge.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeS, type TuiSizeXL} from '@taiga-ui/core/types';\n\nexport interface TuiBadgeOptions extends TuiAppearanceOptions {\n readonly size: TuiSizeS | TuiSizeXL;\n}\n\nexport const TUI_BADGE_DEFAULT_OPTIONS: TuiBadgeOptions = {\n appearance: '',\n size: 'l',\n};\n\nexport const TUI_BADGE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_BADGE_OPTIONS' : '',\n {\n factory: () => TUI_BADGE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiBadgeOptionsProvider(options: Partial<TuiBadgeOptions>): Provider {\n return tuiProvideOptions(TUI_BADGE_OPTIONS, options, TUI_BADGE_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\n\nimport {TUI_BADGE_OPTIONS} from './badge.options';\n\n@Component({\n standalone: true,\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/badge.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-badge',\n },\n})\nclass TuiBadgeStyles {}\n\n@Directive({\n standalone: true,\n // tui-icon[tuiBadge] is required to avoid double matching of TuiIcons\n selector: 'tui-badge,[tuiBadge],tui-icon[tuiBadge]',\n providers: [tuiAppearanceOptionsProvider(TUI_BADGE_OPTIONS)],\n hostDirectives: [TuiWithAppearance, TuiWithIcons],\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiBadge {\n protected readonly nothing = tuiWithStyles(TuiBadgeStyles);\n\n @Input()\n public size = inject(TUI_BADGE_OPTIONS).size;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AASa,MAAA,yBAAyB,GAAoB;AACtD,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,IAAI,EAAE,GAAG;;AAGA,MAAA,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC;AACI,IAAA,OAAO,EAAE,MAAM,yBAAyB;AAC3C,CAAA;AAGC,SAAU,uBAAuB,CAAC,OAAiC,EAAA;IACrE,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,EAAE,yBAAyB,CAAC;AACnF;;ACNA,MAUM,cAAc,CAAA;+GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,+GARN,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mpHAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,cAAc,EAAA,UAAA,EAAA,CAAA;kBAVnB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,WAAW;AACrB,qBAAA,EAAA,MAAA,EAAA,CAAA,mpHAAA,CAAA,EAAA;;MAcQ,QAAQ,CAAA;AAVrB,IAAA,WAAA,GAAA;AAWuB,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;AAGnD,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI;AAC/C;+GALY,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAR,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,QAAQ,oKANN,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,CAAC,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAMnD,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAVpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;;AAEhB,oBAAA,QAAQ,EAAE,yCAAyC;AACnD,oBAAA,SAAS,EAAE,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;AAC5D,oBAAA,cAAc,EAAE,CAAC,iBAAiB,EAAE,YAAY,CAAC;AACjD,oBAAA,IAAI,EAAE;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC7B,qBAAA;AACJ,iBAAA;8BAKU,IAAI,EAAA,CAAA;sBADV;;;AC1CL;;AAEG;;;;"}
@@ -1,94 +1,37 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, ChangeDetectorRef, DestroyRef, Input, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
3
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
- import { NgControl, NgModel } from '@angular/forms';
5
- import * as i2 from '@taiga-ui/cdk/directives/native-validator';
6
- import { TuiNativeValidator } from '@taiga-ui/cdk/directives/native-validator';
7
- import { tuiControlValue, tuiWatch } from '@taiga-ui/cdk/observables';
8
- import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
9
- import { tuiProvideOptions, tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
10
- import * as i1 from '@taiga-ui/core/directives/appearance';
11
- import { TuiAppearance } from '@taiga-ui/core/directives/appearance';
12
- import { tuiInjectIconResolver } from '@taiga-ui/core/tokens';
2
+ import { computed, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
3
+ import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
4
+ import * as i1 from '@taiga-ui/core/directives/icons';
5
+ import { tuiIconStart, tuiIconEnd, TuiIcons } from '@taiga-ui/core/directives/icons';
6
+ import { TuiRadioComponent, TUI_RADIO_OPTIONS } from '@taiga-ui/kit/components/radio';
7
+ import { tuiCreateOptions } from '@taiga-ui/cdk/utils/di';
13
8
 
14
- const TUI_CHECKBOX_DEFAULT_OPTIONS = {
9
+ const [TUI_CHECKBOX_OPTIONS, tuiCheckboxOptionsProvider] = tuiCreateOptions({
15
10
  size: 'm',
16
11
  appearance: (el) => el.checked || el.indeterminate ? 'primary' : 'outline-grayscale',
17
12
  icons: {
18
- checked: '@tui.check',
19
- indeterminate: '@tui.minus',
13
+ checked: () => '@tui.check',
14
+ indeterminate: () => '@tui.minus',
20
15
  },
21
- };
22
- const TUI_CHECKBOX_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_CHECKBOX_OPTIONS' : '', {
23
- factory: () => TUI_CHECKBOX_DEFAULT_OPTIONS,
24
16
  });
25
- function tuiCheckboxOptionsProvider(options) {
26
- return tuiProvideOptions(TUI_CHECKBOX_OPTIONS, options, TUI_CHECKBOX_DEFAULT_OPTIONS);
27
- }
28
17
 
29
- class TuiCheckbox {
18
+ class TuiCheckbox extends TuiRadioComponent {
30
19
  constructor() {
31
- this.appearance = inject(TuiAppearance);
32
- this.options = inject(TUI_CHECKBOX_OPTIONS);
33
- this.cdr = inject(ChangeDetectorRef);
34
- this.resolver = tuiInjectIconResolver();
35
- this.destroyRef = inject(DestroyRef);
36
- this.el = tuiInjectElement();
37
- this.size = this.options.size;
38
- this.control = inject(NgControl, {
39
- optional: true,
40
- self: true,
41
- });
42
- }
43
- ngOnInit() {
44
- if (!this.control?.valueChanges) {
45
- return;
46
- }
47
- tuiControlValue(this.control)
48
- .pipe(tuiWatch(this.cdr), takeUntilDestroyed(this.destroyRef))
49
- .subscribe((value) => {
50
- // https://github.com/angular/angular/issues/14988
51
- const fix = this.control instanceof NgModel && value === null
52
- ? this.control.model
53
- : value;
54
- this.el.indeterminate = fix === null;
55
- });
56
- }
57
- ngDoCheck() {
58
- this.appearance.tuiAppearance = tuiIsString(this.options.appearance)
59
- ? this.options.appearance
60
- : this.options.appearance(this.el);
61
- }
62
- getIcon(state) {
63
- const option = this.options.icons[state];
64
- const icon = tuiIsString(option) ? option : option(this.size);
65
- return icon && `url(${this.resolver(icon)})`;
20
+ super(...arguments);
21
+ this.check = tuiIconStart(computed(() => this.options.icons.checked(this.size())));
22
+ this.indeterminate = tuiIconEnd(computed(() => this.options.icons.indeterminate(this.size())));
66
23
  }
67
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiCheckbox, isStandalone: true, selector: "input[type=\"checkbox\"][tuiCheckbox]", inputs: { size: "size" }, host: { properties: { "disabled": "!control || control.disabled", "attr.data-size": "size", "class._readonly": "!control", "style.--t-checked-icon": "getIcon(\"checked\")", "style.--t-indeterminate-icon": "getIcon(\"indeterminate\")" } }, hostDirectives: [{ directive: i1.TuiAppearance, inputs: ["tuiAppearanceState", "tuiAppearanceState", "tuiAppearanceFocus", "tuiAppearanceFocus", "tuiAppearanceMode", "tuiAppearanceMode"] }, { directive: i2.TuiNativeValidator }], ngImport: i0, template: '', isInline: true, styles: ["[tuiCheckbox]{--t-size: 1.5rem;--t-radius: var(--tui-radius-s);inline-size:var(--t-size);block-size:var(--t-size);border-radius:var(--t-radius);cursor:pointer;margin:0;flex-shrink:0}[tuiCheckbox]:before{position:absolute;top:0;left:0;bottom:0;right:0;content:\"\";font-size:1rem;background:currentColor;mask:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>') no-repeat center / calc(min(1em,100%) + 10 * var(--tui-stroke-width, .125rem)) min(1em,100%) padding-box;transform:scale(0);transition:transform var(--tui-duration) ease-in-out,mask 0s var(--tui-duration) ease-in-out}[tuiCheckbox]:disabled._readonly{opacity:1;pointer-events:none}[tuiCheckbox]:checked:before,[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-checked-icon);mask-image:var(--t-checked-icon);transform:scale(1);transition:transform var(--tui-duration) ease-in-out,mask 0s ease-in-out;transition-duration:inherit}[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-indeterminate-icon);mask-image:var(--t-indeterminate-icon)}[tuiCheckbox][data-size=s]{--t-size: 1rem;--t-radius: var(--tui-radius-xs)}[tuiCheckbox][data-size=s]:before{font-size:.875rem}[tuiCheckbox]:invalid:not([data-mode]),[tuiCheckbox][data-mode~=invalid]{color:#fff}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiCheckbox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiCheckbox, isStandalone: true, selector: "input[type=\"checkbox\"][tuiCheckbox]", providers: [tuiProvide(TUI_RADIO_OPTIONS, TUI_CHECKBOX_OPTIONS)], usesInheritance: true, hostDirectives: [{ directive: i1.TuiIcons }], ngImport: i0, template: '', isInline: true, styles: ["[tuiCheckbox]{--t-size: 1.5rem;--t-radius: var(--tui-radius-s);inline-size:var(--t-size);block-size:var(--t-size);border-radius:var(--t-radius);cursor:pointer;margin:0;flex-shrink:0}[tuiCheckbox]:before{position:absolute;block-size:100%;inline-size:100%;font-size:1rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>');transform:scale(0);transition:transform var(--tui-duration) ease-in-out,mask 0s var(--tui-duration) ease-in-out}[tuiCheckbox]:after{display:none}[tuiCheckbox]:disabled._readonly{opacity:1;pointer-events:none}[tuiCheckbox]:checked:before,[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-icon-start);mask-image:var(--t-icon-start);transform:scale(1);transition:transform var(--tui-duration) ease-in-out,mask 0s ease-in-out;transition-duration:inherit}[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-icon-end);mask-image:var(--t-icon-end)}[tuiCheckbox][data-size=s]{--t-size: 1rem;--t-radius: var(--tui-radius-xs)}[tuiCheckbox][data-size=s]:before{font-size:.875rem}[tuiCheckbox]:invalid:not([data-mode]),[tuiCheckbox][data-mode~=invalid]{color:#fff}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
69
26
  }
70
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiCheckbox, decorators: [{
71
28
  type: Component,
72
- args: [{ standalone: true, selector: 'input[type="checkbox"][tuiCheckbox]', template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
73
- {
74
- directive: TuiAppearance,
75
- inputs: ['tuiAppearanceState', 'tuiAppearanceFocus', 'tuiAppearanceMode'],
76
- },
77
- TuiNativeValidator,
78
- ], host: {
79
- '[disabled]': '!control || control.disabled',
80
- '[attr.data-size]': 'size',
81
- '[class._readonly]': '!control',
82
- '[style.--t-checked-icon]': 'getIcon("checked")',
83
- '[style.--t-indeterminate-icon]': 'getIcon("indeterminate")',
84
- }, styles: ["[tuiCheckbox]{--t-size: 1.5rem;--t-radius: var(--tui-radius-s);inline-size:var(--t-size);block-size:var(--t-size);border-radius:var(--t-radius);cursor:pointer;margin:0;flex-shrink:0}[tuiCheckbox]:before{position:absolute;top:0;left:0;bottom:0;right:0;content:\"\";font-size:1rem;background:currentColor;mask:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>') no-repeat center / calc(min(1em,100%) + 10 * var(--tui-stroke-width, .125rem)) min(1em,100%) padding-box;transform:scale(0);transition:transform var(--tui-duration) ease-in-out,mask 0s var(--tui-duration) ease-in-out}[tuiCheckbox]:disabled._readonly{opacity:1;pointer-events:none}[tuiCheckbox]:checked:before,[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-checked-icon);mask-image:var(--t-checked-icon);transform:scale(1);transition:transform var(--tui-duration) ease-in-out,mask 0s ease-in-out;transition-duration:inherit}[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-indeterminate-icon);mask-image:var(--t-indeterminate-icon)}[tuiCheckbox][data-size=s]{--t-size: 1rem;--t-radius: var(--tui-radius-xs)}[tuiCheckbox][data-size=s]:before{font-size:.875rem}[tuiCheckbox]:invalid:not([data-mode]),[tuiCheckbox][data-mode~=invalid]{color:#fff}\n"] }]
85
- }], propDecorators: { size: [{
86
- type: Input
87
- }] } });
29
+ args: [{ standalone: true, selector: 'input[type="checkbox"][tuiCheckbox]', template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TUI_RADIO_OPTIONS, TUI_CHECKBOX_OPTIONS)], hostDirectives: [TuiIcons], styles: ["[tuiCheckbox]{--t-size: 1.5rem;--t-radius: var(--tui-radius-s);inline-size:var(--t-size);block-size:var(--t-size);border-radius:var(--t-radius);cursor:pointer;margin:0;flex-shrink:0}[tuiCheckbox]:before{position:absolute;block-size:100%;inline-size:100%;font-size:1rem;-webkit-mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>');mask-image:url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\"></svg>');transform:scale(0);transition:transform var(--tui-duration) ease-in-out,mask 0s var(--tui-duration) ease-in-out}[tuiCheckbox]:after{display:none}[tuiCheckbox]:disabled._readonly{opacity:1;pointer-events:none}[tuiCheckbox]:checked:before,[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-icon-start);mask-image:var(--t-icon-start);transform:scale(1);transition:transform var(--tui-duration) ease-in-out,mask 0s ease-in-out;transition-duration:inherit}[tuiCheckbox]:indeterminate:before{-webkit-mask-image:var(--t-icon-end);mask-image:var(--t-icon-end)}[tuiCheckbox][data-size=s]{--t-size: 1rem;--t-radius: var(--tui-radius-xs)}[tuiCheckbox][data-size=s]:before{font-size:.875rem}[tuiCheckbox]:invalid:not([data-mode]),[tuiCheckbox][data-mode~=invalid]{color:#fff}\n"] }]
30
+ }] });
88
31
 
89
32
  /**
90
33
  * Generated bundle index. Do not edit.
91
34
  */
92
35
 
93
- export { TUI_CHECKBOX_DEFAULT_OPTIONS, TUI_CHECKBOX_OPTIONS, TuiCheckbox, tuiCheckboxOptionsProvider };
36
+ export { TUI_CHECKBOX_OPTIONS, TuiCheckbox, tuiCheckboxOptionsProvider };
94
37
  //# sourceMappingURL=taiga-ui-kit-components-checkbox.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-checkbox.mjs","sources":["../../../projects/kit/components/checkbox/checkbox.options.ts","../../../projects/kit/components/checkbox/checkbox.component.ts","../../../projects/kit/components/checkbox/taiga-ui-kit-components-checkbox.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\n\nexport interface TuiCheckboxOptions {\n readonly size: TuiSizeS;\n readonly appearance: TuiStringHandler<HTMLInputElement> | string;\n readonly icons: Readonly<{\n checked: TuiStringHandler<TuiSizeS> | string;\n indeterminate: TuiStringHandler<TuiSizeS> | string;\n }>;\n}\n\nexport const TUI_CHECKBOX_DEFAULT_OPTIONS: TuiCheckboxOptions = {\n size: 'm',\n appearance: (el) =>\n el.checked || el.indeterminate ? 'primary' : 'outline-grayscale',\n icons: {\n checked: '@tui.check',\n indeterminate: '@tui.minus',\n },\n};\n\nexport const TUI_CHECKBOX_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_CHECKBOX_OPTIONS' : '',\n {\n factory: () => TUI_CHECKBOX_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiCheckboxOptionsProvider(\n options: Partial<TuiCheckboxOptions>,\n): Provider {\n return tuiProvideOptions(TUI_CHECKBOX_OPTIONS, options, TUI_CHECKBOX_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n type DoCheck,\n inject,\n Input,\n type OnInit,\n ViewEncapsulation,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {NgControl, NgModel} from '@angular/forms';\nimport {TuiNativeValidator} from '@taiga-ui/cdk/directives/native-validator';\nimport {tuiControlValue, tuiWatch} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {tuiInjectIconResolver} from '@taiga-ui/core/tokens';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\n\nimport {TUI_CHECKBOX_OPTIONS} from './checkbox.options';\n\n@Component({\n standalone: true,\n selector: 'input[type=\"checkbox\"][tuiCheckbox]',\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/checkbox.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: TuiAppearance,\n inputs: ['tuiAppearanceState', 'tuiAppearanceFocus', 'tuiAppearanceMode'],\n },\n\n TuiNativeValidator,\n ],\n host: {\n '[disabled]': '!control || control.disabled',\n '[attr.data-size]': 'size',\n '[class._readonly]': '!control',\n '[style.--t-checked-icon]': 'getIcon(\"checked\")',\n '[style.--t-indeterminate-icon]': 'getIcon(\"indeterminate\")',\n },\n})\nexport class TuiCheckbox implements OnInit, DoCheck {\n private readonly appearance = inject(TuiAppearance);\n private readonly options = inject(TUI_CHECKBOX_OPTIONS);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly resolver = tuiInjectIconResolver();\n private readonly destroyRef = inject(DestroyRef);\n private readonly el = tuiInjectElement<HTMLInputElement>();\n\n @Input()\n public size: TuiSizeS = this.options.size;\n\n public readonly control: NgControl | null = inject(NgControl, {\n optional: true,\n self: true,\n });\n\n public ngOnInit(): void {\n if (!this.control?.valueChanges) {\n return;\n }\n\n tuiControlValue(this.control)\n .pipe(tuiWatch(this.cdr), takeUntilDestroyed(this.destroyRef))\n .subscribe((value) => {\n // https://github.com/angular/angular/issues/14988\n const fix =\n this.control instanceof NgModel && value === null\n ? this.control.model\n : value;\n\n this.el.indeterminate = fix === null;\n });\n }\n\n public ngDoCheck(): void {\n this.appearance.tuiAppearance = tuiIsString(this.options.appearance)\n ? this.options.appearance\n : this.options.appearance(this.el);\n }\n\n protected getIcon(state: 'checked' | 'indeterminate'): string {\n const option = this.options.icons[state];\n const icon = tuiIsString(option) ? option : option(this.size);\n\n return icon && `url(${this.resolver(icon)})`;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-checkbox.mjs","sources":["../../../projects/kit/components/checkbox/checkbox.options.ts","../../../projects/kit/components/checkbox/checkbox.component.ts","../../../projects/kit/components/checkbox/taiga-ui-kit-components-checkbox.ts"],"sourcesContent":["import {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {type TuiRadioOptions} from '@taiga-ui/kit/components/radio';\n\nexport interface TuiCheckboxOptions extends TuiRadioOptions {\n readonly icons: Readonly<{\n checked: TuiStringHandler<TuiSizeS>;\n indeterminate: TuiStringHandler<TuiSizeS>;\n }>;\n}\n\nexport const [TUI_CHECKBOX_OPTIONS, tuiCheckboxOptionsProvider] =\n tuiCreateOptions<TuiCheckboxOptions>({\n size: 'm',\n appearance: (el) =>\n el.checked || el.indeterminate ? 'primary' : 'outline-grayscale',\n icons: {\n checked: () => '@tui.check',\n indeterminate: () => '@tui.minus',\n },\n });\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiIconEnd, TuiIcons, tuiIconStart} from '@taiga-ui/core/directives/icons';\nimport {TUI_RADIO_OPTIONS, TuiRadioComponent} from '@taiga-ui/kit/components/radio';\n\nimport {TUI_CHECKBOX_OPTIONS, type TuiCheckboxOptions} from './checkbox.options';\n\n@Component({\n standalone: true,\n selector: 'input[type=\"checkbox\"][tuiCheckbox]',\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/checkbox.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(TUI_RADIO_OPTIONS, TUI_CHECKBOX_OPTIONS)],\n hostDirectives: [TuiIcons],\n})\nexport class TuiCheckbox extends TuiRadioComponent<TuiCheckboxOptions> {\n protected readonly check = tuiIconStart(\n computed(() => this.options.icons.checked(this.size())),\n );\n\n protected readonly indeterminate = tuiIconEnd(\n computed(() => this.options.icons.indeterminate(this.size())),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAYa,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,GAC3D,gBAAgB,CAAqB;AACjC,IAAA,IAAI,EAAE,GAAG;IACT,UAAU,EAAE,CAAC,EAAE,KACX,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,aAAa,GAAG,SAAS,GAAG,mBAAmB;AACpE,IAAA,KAAK,EAAE;AACH,QAAA,OAAO,EAAE,MAAM,YAAY;AAC3B,QAAA,aAAa,EAAE,MAAM,YAAY;AACpC,KAAA;AACJ,CAAA;;ACCC,MAAO,WAAY,SAAQ,iBAAqC,CAAA;AAVtE,IAAA,WAAA,GAAA;;QAWuB,IAAK,CAAA,KAAA,GAAG,YAAY,CACnC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAC1D;QAEkB,IAAa,CAAA,aAAA,GAAG,UAAU,CACzC,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAChE;AACJ;+GARY,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,SAAA,EAHT,CAAC,UAAU,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJtD,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,2sCAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAOH,WAAW,EAAA,UAAA,EAAA,CAAA;kBAVvB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,qCAAqC,EAAA,QAAA,EACrC,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,aACpC,CAAC,UAAU,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,CAAC,EAAA,cAAA,EAChD,CAAC,QAAQ,CAAC,EAAA,MAAA,EAAA,CAAA,2sCAAA,CAAA,EAAA;;;ACpB9B;;AAEG;;;;"}
@@ -1,5 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, ChangeDetectionStrategy, ViewEncapsulation, Component, inject, Input, Directive } from '@angular/core';
3
+ import { TUI_PLATFORM } from '@taiga-ui/cdk/tokens';
3
4
  import { tuiProvideOptions, tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
4
5
  import { tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
5
6
  import * as i1 from '@taiga-ui/core/directives/appearance';
@@ -23,13 +24,13 @@ function tuiChipOptionsProvider(options) {
23
24
 
24
25
  class TuiChipStyles {
25
26
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiChipStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiChipStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-chip" }, ngImport: i0, template: '', isInline: true, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);block-size:var(--t-size);inline-size:fit-content;isolation:isolate}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>[tuiAvatar],[tuiChip]>[tuiAvatar],tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: var(--tui-height-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip [tuiAvatar],[tuiChip] [tuiAvatar]{inline-size:1.5rem;margin-inline-start:-.375rem}tui-chip>[tuiFade]:first-of-type,[tuiChip]>[tuiFade]:first-of-type{flex:1 0 30%;max-inline-size:fit-content}tui-chip>[tuiFade]:last-of-type,[tuiChip]>[tuiFade]:last-of-type{flex:0 1 auto}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;margin:0}tui-chip>input[tuiChip][type=checkbox],[tuiChip]>input[tuiChip][type=checkbox],tui-chip>input[tuiChip][type=radio],[tuiChip]>input[tuiChip][type=radio]{z-index:-1}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=negative],[tuiChip][tuiAppearance][data-appearance=negative],tui-chip[tuiAppearance][data-appearance=positive],[tuiChip][tuiAppearance][data-appearance=positive],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}input[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}input[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
27
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiChipStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-chip" }, ngImport: i0, template: '', isInline: true, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);block-size:var(--t-size);inline-size:fit-content;isolation:isolate}tui-chip>img,[tuiChip]>img,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>[tuiAvatar],[tuiChip]>[tuiAvatar],tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: var(--tui-height-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip [tuiAvatar],[tuiChip] [tuiAvatar]{inline-size:1.5rem;margin-inline-start:-.375rem}tui-chip>[tuiFade]:first-of-type,[tuiChip]>[tuiFade]:first-of-type{flex:1 0 30%;max-inline-size:fit-content}tui-chip>[tuiFade]:last-of-type,[tuiChip]>[tuiFade]:last-of-type{flex:0 1 auto}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;margin:0}tui-chip>input[tuiChip][type=checkbox],[tuiChip]>input[tuiChip][type=checkbox],tui-chip>input[tuiChip][type=radio],[tuiChip]>input[tuiChip][type=radio]{z-index:-1}tui-chip[tuiAppearance][data-appearance=negative],[tuiChip][tuiAppearance][data-appearance=negative],tui-chip[tuiAppearance][data-appearance=positive],[tuiChip][tuiAppearance][data-appearance=positive],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}input[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}input[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
27
28
  }
28
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiChipStyles, decorators: [{
29
30
  type: Component,
30
31
  args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
31
32
  class: 'tui-chip',
32
- }, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);block-size:var(--t-size);inline-size:fit-content;isolation:isolate}tui-chip>img,[tuiChip]>img,tui-chip>tui-svg,[tuiChip]>tui-svg,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>[tuiAvatar],[tuiChip]>[tuiAvatar],tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: var(--tui-height-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip [tuiAvatar],[tuiChip] [tuiAvatar]{inline-size:1.5rem;margin-inline-start:-.375rem}tui-chip>[tuiFade]:first-of-type,[tuiChip]>[tuiFade]:first-of-type{flex:1 0 30%;max-inline-size:fit-content}tui-chip>[tuiFade]:last-of-type,[tuiChip]>[tuiFade]:last-of-type{flex:0 1 auto}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;margin:0}tui-chip>input[tuiChip][type=checkbox],[tuiChip]>input[tuiChip][type=checkbox],tui-chip>input[tuiChip][type=radio],[tuiChip]>input[tuiChip][type=radio]{z-index:-1}tui-chip[tuiAppearance][data-appearance=error],[tuiChip][tuiAppearance][data-appearance=error],tui-chip[tuiAppearance][data-appearance=success],[tuiChip][tuiAppearance][data-appearance=success],tui-chip[tuiAppearance][data-appearance=negative],[tuiChip][tuiAppearance][data-appearance=negative],tui-chip[tuiAppearance][data-appearance=positive],[tuiChip][tuiAppearance][data-appearance=positive],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}input[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}input[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}\n"] }]
33
+ }, styles: ["tui-chip,[tuiChip]{--t-gap: .125rem;--t-margin: -.125rem;--t-icon-size: 1rem;--t-padding: 0 .625rem;--t-size: var(--tui-height-s);-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:inline-flex;align-items:center;flex-shrink:0;box-sizing:border-box;white-space:nowrap;overflow:hidden;vertical-align:middle;max-inline-size:100%;gap:calc(var(--t-gap, 0rem) - 2 * var(--t-margin, 0rem));font:var(--tui-font-text-s);border-radius:var(--tui-radius-m);padding:var(--t-padding);block-size:var(--t-size);inline-size:fit-content;isolation:isolate}tui-chip>img,[tuiChip]>img,tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip>[tuiAvatar],[tuiChip]>[tuiAvatar],tui-chip>tui-badge,[tuiChip]>tui-badge,tui-chip>[tuiBadge],[tuiChip]>[tuiBadge],tui-chip>[tuiRadio],[tuiChip]>[tuiRadio],tui-chip>[tuiSwitch],[tuiChip]>[tuiSwitch],tui-chip>[tuiCheckbox],[tuiChip]>[tuiCheckbox],tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{margin:var(--t-margin)}tui-chip:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-chip>tui-icon,[tuiChip]>tui-icon,tui-chip[tuiIcons]:before,[tuiChip][tuiIcons]:before,tui-chip[tuiIcons]:after,[tuiChip][tuiIcons]:after{font-size:var(--t-icon-size)!important}tui-chip>[tuiIconButton],[tuiChip]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=xxs],[tuiChip][data-size=xxs]{--t-gap: 0rem;--t-padding: 0 .25rem;--t-size: 1rem;--t-icon-size: .75rem;font:var(--tui-font-text-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xxs]>[tuiIconButton],[tuiChip][data-size=xxs]>[tuiIconButton]{margin:-.5rem;transform:scale(.75)}tui-chip[data-size=xs],[tuiChip][data-size=xs]{--t-padding: 0 .375rem;--t-size: var(--tui-height-xs);border-radius:var(--tui-radius-xs)}tui-chip[data-size=xs]>[tuiIconButton],[tuiChip][data-size=xs]>[tuiIconButton]{margin:-.375rem}tui-chip[data-size=m],[tuiChip][data-size=m]{--t-margin: -.375rem;--t-icon-size: 1.5rem;--t-padding: 0 1rem;--t-size: var(--tui-height-m);font:var(--tui-font-text-m)}tui-chip[data-size=m]>[tuiIconButton],[tuiChip][data-size=m]>[tuiIconButton]{margin:-.75rem}tui-chip>img,[tuiChip]>img,tui-chip [tuiAvatar],[tuiChip] [tuiAvatar]{inline-size:1.5rem;margin-inline-start:-.375rem}tui-chip>[tuiFade]:first-of-type,[tuiChip]>[tuiFade]:first-of-type{flex:1 0 30%;max-inline-size:fit-content}tui-chip>[tuiFade]:last-of-type,[tuiChip]>[tuiFade]:last-of-type{flex:0 1 auto}tui-chip>input[tuiChip],[tuiChip]>input[tuiChip]{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;margin:0}tui-chip>input[tuiChip][type=checkbox],[tuiChip]>input[tuiChip][type=checkbox],tui-chip>input[tuiChip][type=radio],[tuiChip]>input[tuiChip][type=radio]{z-index:-1}tui-chip[tuiAppearance][data-appearance=negative],[tuiChip][tuiAppearance][data-appearance=negative],tui-chip[tuiAppearance][data-appearance=positive],[tuiChip][tuiAppearance][data-appearance=positive],tui-chip[tuiAppearance][data-appearance=warning],[tuiChip][tuiAppearance][data-appearance=warning],tui-chip[tuiAppearance][data-appearance=info],[tuiChip][tuiAppearance][data-appearance=info],tui-chip[tuiAppearance][data-appearance=neutral],[tuiChip][tuiAppearance][data-appearance=neutral]{color:var(--tui-text-primary)}input[tuiChip]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}input[tuiChip]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:text}\n"] }]
33
34
  }] });
34
35
  class TuiChip {
35
36
  constructor() {
@@ -42,7 +43,10 @@ class TuiChip {
42
43
  tuiAppearanceOptionsProvider(TUI_CHIP_OPTIONS),
43
44
  tuiSwitchOptionsProvider({ size: 's' }),
44
45
  tuiCheckboxOptionsProvider({ size: 's' }),
45
- tuiAvatarOptionsProvider({ size: 'xs' }),
46
+ tuiAvatarOptionsProvider(() => ({
47
+ size: 'xs',
48
+ round: inject(TUI_PLATFORM) !== 'web',
49
+ })),
46
50
  tuiButtonOptionsProvider({
47
51
  size: 'xs',
48
52
  appearance: 'icon',
@@ -58,7 +62,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
58
62
  tuiAppearanceOptionsProvider(TUI_CHIP_OPTIONS),
59
63
  tuiSwitchOptionsProvider({ size: 's' }),
60
64
  tuiCheckboxOptionsProvider({ size: 's' }),
61
- tuiAvatarOptionsProvider({ size: 'xs' }),
65
+ tuiAvatarOptionsProvider(() => ({
66
+ size: 'xs',
67
+ round: inject(TUI_PLATFORM) !== 'web',
68
+ })),
62
69
  tuiButtonOptionsProvider({
63
70
  size: 'xs',
64
71
  appearance: 'icon',
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-chip.mjs","sources":["../../../projects/kit/components/chip/chip.options.ts","../../../projects/kit/components/chip/chip.directive.ts","../../../projects/kit/components/chip/taiga-ui-kit-components-chip.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeXXS} from '@taiga-ui/core/types';\n\nexport interface TuiChipOptions extends TuiAppearanceOptions {\n readonly size: TuiSizeXXS;\n}\n\nexport const TUI_CHIP_DEFAULT_OPTIONS: TuiChipOptions = {\n appearance: 'neutral',\n size: 's',\n};\n\nexport const TUI_CHIP_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_CHIP_OPTIONS' : '', {\n factory: () => TUI_CHIP_DEFAULT_OPTIONS,\n});\n\nexport function tuiChipOptionsProvider(options: Partial<TuiChipOptions>): Provider {\n return tuiProvideOptions(TUI_CHIP_OPTIONS, options, TUI_CHIP_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {type TuiSizeXXS} from '@taiga-ui/core/types';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {tuiCheckboxOptionsProvider} from '@taiga-ui/kit/components/checkbox';\nimport {tuiSwitchOptionsProvider} from '@taiga-ui/kit/components/switch';\n\nimport {TUI_CHIP_OPTIONS} from './chip.options';\n\n@Component({\n standalone: true,\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/chip.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-chip',\n },\n})\nclass TuiChipStyles {}\n\n@Directive({\n standalone: true,\n selector: 'tui-chip,[tuiChip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_CHIP_OPTIONS),\n tuiSwitchOptionsProvider({size: 's'}),\n tuiCheckboxOptionsProvider({size: 's'}),\n tuiAvatarOptionsProvider({size: 'xs'}),\n tuiButtonOptionsProvider({\n size: 'xs',\n appearance: 'icon',\n }),\n ],\n hostDirectives: [TuiWithAppearance, TuiWithIcons],\n host: {'[attr.data-size]': 'size'},\n})\nexport class TuiChip {\n private readonly options = inject(TUI_CHIP_OPTIONS);\n\n protected readonly nothing = tuiWithStyles(TuiChipStyles);\n\n @Input()\n public size: TuiSizeXXS = this.options.size;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AASa,MAAA,wBAAwB,GAAmB;AACpD,IAAA,UAAU,EAAE,SAAS;AACrB,IAAA,IAAI,EAAE,GAAG;;AAGA,MAAA,gBAAgB,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,kBAAkB,GAAG,EAAE,EAAE;AACpF,IAAA,OAAO,EAAE,MAAM,wBAAwB;AAC1C,CAAA;AAEK,SAAU,sBAAsB,CAAC,OAAgC,EAAA;IACnE,OAAO,iBAAiB,CAAC,gBAAgB,EAAE,OAAO,EAAE,wBAAwB,CAAC;AACjF;;ACEA,MAUM,aAAa,CAAA;+GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,8GARL,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,68HAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQV,aAAa,EAAA,UAAA,EAAA,CAAA;kBAVlB,SAAS;iCACM,IAAI,EAAA,QAAA,EACN,EAAE,EAAA,aAAA,EAEG,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,UAAU;AACpB,qBAAA,EAAA,MAAA,EAAA,CAAA,68HAAA,CAAA,EAAA;;MAoBQ,OAAO,CAAA;AAhBpB,IAAA,WAAA,GAAA;AAiBqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEhC,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC;AAGlD,QAAA,IAAA,CAAA,IAAI,GAAe,IAAI,CAAC,OAAO,CAAC,IAAI;AAC9C;+GAPY,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAP,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,OAAO,EAbL,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,SAAA,EAAA;YACP,4BAA4B,CAAC,gBAAgB,CAAC;AAC9C,YAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACrC,YAAA,0BAA0B,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACvC,YAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC;AACtC,YAAA,wBAAwB,CAAC;AACrB,gBAAA,IAAI,EAAE,IAAI;AACV,gBAAA,UAAU,EAAE,MAAM;aACrB,CAAC;AACL,SAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAIQ,OAAO,EAAA,UAAA,EAAA,CAAA;kBAhBnB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,SAAS,EAAE;wBACP,4BAA4B,CAAC,gBAAgB,CAAC;AAC9C,wBAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACrC,wBAAA,0BAA0B,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACvC,wBAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC;AACtC,wBAAA,wBAAwB,CAAC;AACrB,4BAAA,IAAI,EAAE,IAAI;AACV,4BAAA,UAAU,EAAE,MAAM;yBACrB,CAAC;AACL,qBAAA;AACD,oBAAA,cAAc,EAAE,CAAC,iBAAiB,EAAE,YAAY,CAAC;AACjD,oBAAA,IAAI,EAAE,EAAC,kBAAkB,EAAE,MAAM,EAAC;AACrC,iBAAA;8BAOU,IAAI,EAAA,CAAA;sBADV;;;ACvDL;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-chip.mjs","sources":["../../../projects/kit/components/chip/chip.options.ts","../../../projects/kit/components/chip/chip.directive.ts","../../../projects/kit/components/chip/taiga-ui-kit-components-chip.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiAppearanceOptions} from '@taiga-ui/core/directives/appearance';\nimport {type TuiSizeXXS} from '@taiga-ui/core/types';\n\nexport interface TuiChipOptions extends TuiAppearanceOptions {\n readonly size: TuiSizeXXS;\n}\n\nexport const TUI_CHIP_DEFAULT_OPTIONS: TuiChipOptions = {\n appearance: 'neutral',\n size: 's',\n};\n\nexport const TUI_CHIP_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_CHIP_OPTIONS' : '', {\n factory: () => TUI_CHIP_DEFAULT_OPTIONS,\n});\n\nexport function tuiChipOptionsProvider(options: Partial<TuiChipOptions>): Provider {\n return tuiProvideOptions(TUI_CHIP_OPTIONS, options, TUI_CHIP_DEFAULT_OPTIONS);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_PLATFORM} from '@taiga-ui/cdk/tokens';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAppearanceOptionsProvider,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {type TuiSizeXXS} from '@taiga-ui/core/types';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {tuiCheckboxOptionsProvider} from '@taiga-ui/kit/components/checkbox';\nimport {tuiSwitchOptionsProvider} from '@taiga-ui/kit/components/switch';\n\nimport {TUI_CHIP_OPTIONS} from './chip.options';\n\n@Component({\n standalone: true,\n template: '',\n styles: ['@import \"@taiga-ui/kit/styles/components/chip.less\";'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-chip',\n },\n})\nclass TuiChipStyles {}\n\n@Directive({\n standalone: true,\n selector: 'tui-chip,[tuiChip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_CHIP_OPTIONS),\n tuiSwitchOptionsProvider({size: 's'}),\n tuiCheckboxOptionsProvider({size: 's'}),\n tuiAvatarOptionsProvider(() => ({\n size: 'xs',\n round: inject(TUI_PLATFORM) !== 'web',\n })),\n tuiButtonOptionsProvider({\n size: 'xs',\n appearance: 'icon',\n }),\n ],\n hostDirectives: [TuiWithAppearance, TuiWithIcons],\n host: {'[attr.data-size]': 'size'},\n})\nexport class TuiChip {\n private readonly options = inject(TUI_CHIP_OPTIONS);\n\n protected readonly nothing = tuiWithStyles(TuiChipStyles);\n\n @Input()\n public size: TuiSizeXXS = this.options.size;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}