@taiga-ui/kit 3.39.1-dev.main.f92cc75 → 3.40.0-canary.f82bb42

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 (200) hide show
  1. package/README.md +3 -3
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js +11 -7
  3. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  4. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +1 -1
  5. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  6. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +7 -3
  7. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  8. package/bundles/taiga-ui-kit-components-files.umd.js +12 -8
  9. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  10. package/bundles/taiga-ui-kit-components-input-number.umd.js +42 -22
  11. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  12. package/bundles/taiga-ui-kit-components-input-phone.umd.js +1 -1
  13. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  14. package/bundles/taiga-ui-kit-components-input-range.umd.js +5 -23
  15. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  16. package/bundles/taiga-ui-kit-components-input-slider.umd.js +5 -1
  17. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  18. package/bundles/taiga-ui-kit-components-input-tag.umd.js +7 -3
  19. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  20. package/bundles/taiga-ui-kit-components-input-year.umd.js +4 -0
  21. package/bundles/taiga-ui-kit-components-input-year.umd.js.map +1 -1
  22. package/bundles/taiga-ui-kit-components-multi-select.umd.js +1 -1
  23. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  24. package/bundles/taiga-ui-kit-components-pagination.umd.js +22 -25
  25. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  26. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +7 -3
  27. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  28. package/bundles/taiga-ui-kit-components-progress.umd.js +7 -6
  29. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  30. package/bundles/taiga-ui-kit-components-prompt.umd.js +1 -1
  31. package/bundles/taiga-ui-kit-components-prompt.umd.js.map +1 -1
  32. package/bundles/taiga-ui-kit-components-push.umd.js +7 -3
  33. package/bundles/taiga-ui-kit-components-push.umd.js.map +1 -1
  34. package/bundles/taiga-ui-kit-components-select-option.umd.js +7 -3
  35. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  36. package/bundles/taiga-ui-kit-components-stepper.umd.js +7 -3
  37. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  38. package/bundles/taiga-ui-kit-components-tabs.umd.js +12 -8
  39. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  40. package/bundles/taiga-ui-kit-components-tag.umd.js +16 -27
  41. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  42. package/bundles/{taiga-ui-kit-components-text-area.umd.js → taiga-ui-kit-components-textarea.umd.js} +159 -53
  43. package/bundles/taiga-ui-kit-components-textarea.umd.js.map +1 -0
  44. package/bundles/taiga-ui-kit-components-tiles.umd.js +5 -0
  45. package/bundles/taiga-ui-kit-components-tiles.umd.js.map +1 -1
  46. package/bundles/taiga-ui-kit-components-tree.umd.js +7 -3
  47. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  48. package/bundles/taiga-ui-kit-components.umd.js +6 -6
  49. package/bundles/taiga-ui-kit-constants.umd.js +2 -2
  50. package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-directives-mask.umd.js +2 -2
  52. package/bundles/taiga-ui-kit-directives-mask.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-utils-mask.umd.js +8 -8
  54. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  55. package/components/accordion/accordion-item/accordion-item.component.d.ts +3 -1
  56. package/components/calendar-range/calendar-range.component.d.ts +4 -3
  57. package/components/files/file/file.component.d.ts +3 -2
  58. package/components/index.d.ts +1 -1
  59. package/components/input-number/input-number.component.d.ts +7 -4
  60. package/components/input-phone/utils/create-phone-mask-expression.d.ts +1 -1
  61. package/components/input-range/input-range.component.d.ts +2 -4
  62. package/components/input-tag/input-tag.component.d.ts +5 -4
  63. package/components/input-year/input-year.component.d.ts +1 -0
  64. package/components/pagination/pagination.component.d.ts +7 -6
  65. package/components/pagination/pagination.module.d.ts +3 -3
  66. package/components/pdf-viewer/pdf-viewer.component.d.ts +3 -1
  67. package/components/progress/progress-bar/progress-bar.component.d.ts +2 -2
  68. package/components/progress/progress-circle/progress-circle.component.d.ts +1 -1
  69. package/components/push/push.component.d.ts +3 -1
  70. package/components/select-option/select-option.component.d.ts +4 -3
  71. package/components/stepper/step/step.component.d.ts +3 -1
  72. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +3 -1
  73. package/components/tag/tag.component.d.ts +3 -5
  74. package/components/tag/tag.module.d.ts +3 -4
  75. package/components/textarea/deprecated.d.ts +30 -0
  76. package/components/textarea/index.d.ts +4 -0
  77. package/components/textarea/package.json +10 -0
  78. package/components/{text-area/taiga-ui-kit-components-text-area.d.ts → textarea/taiga-ui-kit-components-textarea.d.ts} +1 -1
  79. package/components/{text-area/text-area.component.d.ts → textarea/textarea.component.d.ts} +3 -3
  80. package/components/textarea/textarea.directive.d.ts +8 -0
  81. package/components/{text-area/text-area.module.d.ts → textarea/textarea.module.d.ts} +6 -6
  82. package/components/tiles/tile.component.d.ts +3 -2
  83. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +3 -1
  84. package/constants/empty-mask.d.ts +1 -1
  85. package/constants/masks.d.ts +1 -1
  86. package/directives/mask/legacy-mask.d.ts +3 -3
  87. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +9 -4
  88. package/esm2015/components/calendar-month/calendar-month.component.js +1 -1
  89. package/esm2015/components/calendar-range/calendar-range.component.js +9 -5
  90. package/esm2015/components/files/file/file.component.js +9 -4
  91. package/esm2015/components/index.js +2 -2
  92. package/esm2015/components/input-number/input-number.component.js +29 -10
  93. package/esm2015/components/input-phone/utils/create-phone-mask-expression.js +2 -2
  94. package/esm2015/components/input-range/input-range.component.js +6 -16
  95. package/esm2015/components/input-slider/input-slider.component.js +6 -2
  96. package/esm2015/components/input-tag/input-tag.component.js +9 -5
  97. package/esm2015/components/input-year/input-year.component.js +5 -1
  98. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +1 -1
  99. package/esm2015/components/pagination/pagination.component.js +18 -12
  100. package/esm2015/components/pagination/pagination.module.js +5 -8
  101. package/esm2015/components/pdf-viewer/pdf-viewer.component.js +9 -5
  102. package/esm2015/components/progress/progress-bar/progress-bar.component.js +2 -2
  103. package/esm2015/components/progress/progress-circle/progress-circle.component.js +7 -6
  104. package/esm2015/components/prompt/prompt.component.js +1 -1
  105. package/esm2015/components/push/push.component.js +9 -5
  106. package/esm2015/components/select-option/select-option.component.js +9 -5
  107. package/esm2015/components/stepper/step/step.component.js +9 -5
  108. package/esm2015/components/tabs/tab/tab.component.js +2 -2
  109. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +9 -4
  110. package/esm2015/components/tag/tag.component.js +12 -16
  111. package/esm2015/components/tag/tag.module.js +1 -5
  112. package/esm2015/components/textarea/deprecated.js +104 -0
  113. package/esm2015/components/textarea/index.js +5 -0
  114. package/esm2015/components/textarea/taiga-ui-kit-components-textarea.js +5 -0
  115. package/esm2015/components/textarea/textarea.component.js +217 -0
  116. package/esm2015/components/textarea/textarea.directive.js +18 -0
  117. package/esm2015/components/textarea/textarea.module.js +51 -0
  118. package/esm2015/components/tiles/tile.component.js +6 -1
  119. package/esm2015/components/tree/components/tree-item-content/tree-item-content.component.js +9 -4
  120. package/esm2015/constants/empty-mask.js +2 -2
  121. package/esm2015/constants/masks.js +2 -2
  122. package/esm2015/directives/mask/legacy-mask.js +4 -4
  123. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -3
  124. package/esm2015/utils/mask/create-auto-corrected-date-range-pipe.js +2 -2
  125. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +2 -2
  126. package/esm2015/utils/mask/create-auto-corrected-time-pipe.js +2 -2
  127. package/esm2015/utils/mask/create-date-mask.js +2 -2
  128. package/esm2015/utils/mask/create-date-range-mask.js +2 -2
  129. package/esm2015/utils/mask/create-time-mask.js +2 -2
  130. package/fesm2015/taiga-ui-kit-components-accordion.js +8 -3
  131. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  132. package/fesm2015/taiga-ui-kit-components-calendar-month.js +1 -1
  133. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  134. package/fesm2015/taiga-ui-kit-components-calendar-range.js +8 -4
  135. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  136. package/fesm2015/taiga-ui-kit-components-files.js +9 -5
  137. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  138. package/fesm2015/taiga-ui-kit-components-input-number.js +29 -10
  139. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  140. package/fesm2015/taiga-ui-kit-components-input-phone.js +1 -1
  141. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  142. package/fesm2015/taiga-ui-kit-components-input-range.js +5 -15
  143. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  144. package/fesm2015/taiga-ui-kit-components-input-slider.js +5 -1
  145. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  146. package/fesm2015/taiga-ui-kit-components-input-tag.js +8 -4
  147. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  148. package/fesm2015/taiga-ui-kit-components-input-year.js +4 -0
  149. package/fesm2015/taiga-ui-kit-components-input-year.js.map +1 -1
  150. package/fesm2015/taiga-ui-kit-components-multi-select.js +1 -1
  151. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  152. package/fesm2015/taiga-ui-kit-components-pagination.js +22 -19
  153. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  154. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +8 -4
  155. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  156. package/fesm2015/taiga-ui-kit-components-progress.js +7 -6
  157. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  158. package/fesm2015/taiga-ui-kit-components-prompt.js +1 -1
  159. package/fesm2015/taiga-ui-kit-components-prompt.js.map +1 -1
  160. package/fesm2015/taiga-ui-kit-components-push.js +8 -4
  161. package/fesm2015/taiga-ui-kit-components-push.js.map +1 -1
  162. package/fesm2015/taiga-ui-kit-components-select-option.js +8 -4
  163. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  164. package/fesm2015/taiga-ui-kit-components-stepper.js +8 -4
  165. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  166. package/fesm2015/taiga-ui-kit-components-tabs.js +9 -4
  167. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  168. package/fesm2015/taiga-ui-kit-components-tag.js +12 -19
  169. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  170. package/fesm2015/{taiga-ui-kit-components-text-area.js → taiga-ui-kit-components-textarea.js} +108 -18
  171. package/fesm2015/taiga-ui-kit-components-textarea.js.map +1 -0
  172. package/fesm2015/taiga-ui-kit-components-tiles.js +5 -0
  173. package/fesm2015/taiga-ui-kit-components-tiles.js.map +1 -1
  174. package/fesm2015/taiga-ui-kit-components-tree.js +8 -4
  175. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  176. package/fesm2015/taiga-ui-kit-components.js +1 -1
  177. package/fesm2015/taiga-ui-kit-constants.js +2 -2
  178. package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
  179. package/fesm2015/taiga-ui-kit-directives-mask.js +2 -2
  180. package/fesm2015/taiga-ui-kit-directives-mask.js.map +1 -1
  181. package/fesm2015/taiga-ui-kit-utils-mask.js +8 -8
  182. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  183. package/package.json +7 -7
  184. package/utils/mask/create-auto-corrected-date-pipe.d.ts +3 -3
  185. package/utils/mask/create-auto-corrected-date-range-pipe.d.ts +1 -1
  186. package/utils/mask/create-auto-corrected-date-time-pipe.d.ts +1 -1
  187. package/utils/mask/create-auto-corrected-time-pipe.d.ts +1 -1
  188. package/utils/mask/create-date-mask.d.ts +1 -1
  189. package/utils/mask/create-date-range-mask.d.ts +1 -1
  190. package/utils/mask/create-time-mask.d.ts +1 -1
  191. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +0 -1
  192. package/components/text-area/index.d.ts +0 -3
  193. package/components/text-area/package.json +0 -10
  194. package/components/text-area/text-area.directive.d.ts +0 -8
  195. package/esm2015/components/text-area/index.js +0 -4
  196. package/esm2015/components/text-area/taiga-ui-kit-components-text-area.js +0 -5
  197. package/esm2015/components/text-area/text-area.component.js +0 -217
  198. package/esm2015/components/text-area/text-area.directive.js +0 -18
  199. package/esm2015/components/text-area/text-area.module.js +0 -51
  200. package/fesm2015/taiga-ui-kit-components-text-area.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-tree.js","sources":["../../../projects/kit/components/tree/directives/tree-children.directive.ts","../../../projects/kit/components/tree/components/tree-item-content/tree-item-content.component.ts","../../../projects/kit/components/tree/components/tree-item-content/tree-item-content.template.html","../../../projects/kit/components/tree/misc/tree.constants.ts","../../../projects/kit/components/tree/misc/tree.tokens.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.providers.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.component.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.template.html","../../../projects/kit/components/tree/directives/tree-node.directive.ts","../../../projects/kit/components/tree/components/tree/tree.component.ts","../../../projects/kit/components/tree/components/tree/tree.template.html","../../../projects/kit/components/tree/directives/tree-controller.directive.ts","../../../projects/kit/components/tree/directives/tree-item-controller.directive.ts","../../../projects/kit/components/tree/misc/tree.service.ts","../../../projects/kit/components/tree/tree.module.ts","../../../projects/kit/components/tree/taiga-ui-kit-components-tree.ts"],"sourcesContent":["import {Directive, Input} from '@angular/core';\nimport {EMPTY_ARRAY, TuiHandler} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-tree[childrenHandler]',\n})\nexport class TuiTreeChildrenDirective<T> {\n @Input()\n childrenHandler: TuiHandler<T, readonly T[]> =\n TuiTreeChildrenDirective.defaultHandler;\n\n static defaultHandler<G>(item: G): readonly G[] {\n return Array.isArray(item) ? item : EMPTY_ARRAY;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n HostBinding,\n Inject,\n} from '@angular/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER} from '../../misc/tree.constants';\nimport type {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\n// eslint-disable-next-line import/no-cycle\nimport {TUI_TREE_CONTROLLER} from '../../misc/tree.tokens';\n\n@Component({\n selector: 'tui-tree-item-content',\n templateUrl: './tree-item-content.template.html',\n styleUrls: ['./tree-item-content.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTreeItemContentComponent {\n constructor(\n @Inject(POLYMORPHEUS_CONTEXT) readonly context: TuiTreeItemContext,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n ) {}\n\n get isExpanded(): boolean {\n return this.context.$implicit.isExpanded;\n }\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return (\n this.context.$implicit.isExpandable &&\n this.controller !== TUI_DEFAULT_TREE_CONTROLLER\n );\n }\n\n onClick(): void {\n this.controller.toggle(this.context.$implicit);\n }\n}\n","<button\n *ngIf=\"isExpandable\"\n tuiIconButton\n size=\"xs\"\n appearance=\"flat\"\n icon=\"tuiIconChevronRight\"\n shape=\"rounded\"\n type=\"button\"\n class=\"t-button\"\n [class.t-button_expanded]=\"isExpanded\"\n (click)=\"onClick()\"\n></button>\n<ng-container [ngTemplateOutlet]=\"context.template\"></ng-container>\n","import {ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeItemContentComponent} from '../components/tree-item-content/tree-item-content.component';\nimport type {TuiTreeController} from './tree.interfaces';\n\nexport const TUI_TREE_ITEM_CONTENT = new PolymorpheusComponent(\n TuiTreeItemContentComponent,\n);\n\nexport const TUI_DEFAULT_TREE_CONTROLLER: TuiTreeController = {\n isExpanded: ALWAYS_TRUE_HANDLER,\n toggle: EMPTY_FUNCTION as () => void,\n};\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER, TUI_TREE_ITEM_CONTENT} from './tree.constants';\nimport type {\n TuiTreeAccessor,\n TuiTreeController,\n TuiTreeItemContext,\n TuiTreeLoader,\n} from './tree.interfaces';\n\n/**\n * Controller for tracking value - TuiTreeItemComponent pairs\n */\nexport const TUI_TREE_ACCESSOR = new InjectionToken<TuiTreeAccessor<unknown>>(\n `[TUI_TREE_ACCESSOR]`,\n);\n\n/**\n * Controller for expanding the tree\n */\nexport const TUI_TREE_CONTROLLER = new InjectionToken<TuiTreeController>(\n `[TUI_TREE_CONTROLLER]`,\n {\n factory: () => TUI_DEFAULT_TREE_CONTROLLER,\n },\n);\n\n/**\n * A node of a tree view\n */\nexport const TUI_TREE_NODE = new InjectionToken(`[TUI_TREE_NODE]`);\n\n/**\n * A tree node placeholder for loading\n */\nexport const TUI_TREE_LOADING = new InjectionToken(`[TUI_TREE_LOADING]`, {\n factory: () => ({}),\n});\n\n/**\n * A tree node starting point\n */\nexport const TUI_TREE_START = new InjectionToken(`[TUI_TREE_START]`);\n\n/**\n * A service to load tree progressively\n */\nexport const TUI_TREE_LOADER = new InjectionToken<TuiTreeLoader<unknown>>(\n `[TUI_TREE_LOADER]`,\n);\n\n/**\n * Content for a tree item\n */\nexport const TUI_TREE_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiTreeItemContext>\n>(`[TUI_TREE_CONTENT]`, {\n factory: () => TUI_TREE_ITEM_CONTENT,\n});\n\n/**\n * Nesting level of current TreeView node\n */\nexport const TUI_TREE_LEVEL = new InjectionToken<number>(`[TUI_TREE_LEVEL]`, {\n factory: () => -1,\n});\n","import {forwardRef, Provider, SkipSelf} from '@angular/core';\n\nimport {TUI_TREE_LEVEL, TUI_TREE_NODE} from '../../misc/tree.tokens';\n// eslint-disable-next-line import/no-cycle\nimport {TuiTreeItemComponent} from './tree-item.component';\n\nexport const TUI_TREE_ITEM_PROVIDERS: Provider[] = [\n {\n provide: TUI_TREE_LEVEL,\n deps: [[new SkipSelf(), TUI_TREE_LEVEL]],\n useFactory: (level: number): number => ++level,\n },\n {\n provide: TUI_TREE_NODE,\n useExisting: forwardRef(() => TuiTreeItemComponent),\n },\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DoCheck,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport type {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {\n TUI_TREE_CONTENT,\n TUI_TREE_CONTROLLER,\n TUI_TREE_LEVEL,\n TUI_TREE_NODE,\n} from '../../misc/tree.tokens';\n// eslint-disable-next-line import/no-cycle\nimport {TUI_TREE_ITEM_PROVIDERS} from './tree-item.providers';\n\n@Component({\n selector: 'tui-tree-item',\n templateUrl: './tree-item.template.html',\n styleUrls: ['./tree-item.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TREE_ITEM_PROVIDERS,\n host: {\n role: 'treeitem',\n },\n})\nexport class TuiTreeItemComponent implements DoCheck {\n @ContentChildren(TUI_TREE_NODE as any)\n private readonly nested: QueryList<unknown> = EMPTY_QUERY;\n\n private readonly change$ = new Subject<void>();\n\n readonly expanded$ = this.change$.pipe(\n startWith(null),\n map(() => this.isExpanded),\n distinctUntilChanged(),\n );\n\n readonly attached$ = this.change$.pipe(\n map(() => this.el.nativeElement.isConnected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly el: ElementRef<HTMLElement>,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n @Inject(forwardRef(() => TUI_TREE_LEVEL))\n readonly level: number,\n @Inject(forwardRef(() => TUI_TREE_CONTENT))\n readonly content: PolymorpheusContent<TuiTreeItemContext>,\n ) {}\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return !!this.nested.length;\n }\n\n get isExpanded(): boolean {\n return this.controller.isExpanded(this);\n }\n\n ngDoCheck(): void {\n this.checkChanges();\n }\n\n checkChanges(): void {\n this.change$.next();\n }\n}\n","<ng-template #template>\n <ng-content></ng-content>\n</ng-template>\n<ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: this, template: template}\">\n {{ text }}\n</ng-container>\n<tui-expand\n *ngIf=\"isExpandable\"\n role=\"group\"\n class=\"t-children\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\"></ng-content>\n <ng-content select=\"tui-tree\"></ng-content>\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\"></ng-container>\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR} from '../misc/tree.tokens';\n\n@Directive({\n selector: 'tui-tree-item[tuiTreeNode]',\n})\nexport class TuiTreeNodeDirective<T> implements OnDestroy {\n @Input('tuiTreeNode')\n set value(value: T) {\n this.directive?.register(this.component, value);\n }\n\n constructor(\n @Optional()\n @Inject(TUI_TREE_ACCESSOR)\n private readonly directive: TuiTreeAccessor<T>,\n @Inject(TuiTreeItemComponent)\n private readonly component: TuiTreeItemComponent,\n ) {}\n\n ngOnDestroy(): void {\n this.directive?.unregister(this.component);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DoCheck,\n Inject,\n Input,\n Optional,\n TrackByFunction,\n ViewChild,\n} from '@angular/core';\nimport {TuiHandler} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport {TuiTreeChildrenDirective} from '../../directives/tree-children.directive';\nimport {TuiTreeContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_NODE} from '../../misc/tree.tokens';\nimport {TuiTreeItemComponent} from '../tree-item/tree-item.component';\n\n@Component({\n selector: 'tui-tree[value]',\n templateUrl: './tree.template.html',\n styleUrls: ['./tree.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_TREE_NODE,\n useExisting: TuiTreeComponent,\n },\n ],\n host: {\n role: 'tree',\n },\n})\nexport class TuiTreeComponent<T> implements DoCheck {\n private readonly check$ = new Subject<void>();\n\n @Input()\n value!: T;\n\n @ViewChild(TuiTreeItemComponent)\n readonly item?: TuiTreeItemComponent;\n\n @ViewChild(TuiTreeComponent)\n readonly child?: TuiTreeComponent<T>;\n\n readonly children$ = this.check$.pipe(\n startWith(null),\n map(() => this.handler(this.value)),\n distinctUntilChanged(),\n );\n\n constructor(\n @Optional()\n @Inject(TuiTreeChildrenDirective)\n readonly directive: TuiTreeChildrenDirective<T> | null,\n ) {}\n\n @Input()\n trackBy: TrackByFunction<T> = (_: number, item: T) => item;\n\n @Input()\n content: PolymorpheusContent<TuiTreeContext<T>> = ({$implicit}) => String($implicit);\n\n ngDoCheck(): void {\n this.checkChanges();\n }\n\n checkChanges(): void {\n this.check$.next();\n this.item?.checkChanges();\n this.child?.checkChanges();\n }\n\n private get handler(): TuiHandler<T, readonly T[]> {\n return this.directive?.childrenHandler || TuiTreeChildrenDirective.defaultHandler;\n }\n}\n","<tui-tree-item\n *tuiLet=\"children$ | async as children\"\n #view\n [tuiTreeNode]=\"value\"\n>\n <ng-container *ngIf=\"$any(value) !== children\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: value, node: view}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-tree\n *ngFor=\"let child of children; trackBy: trackBy\"\n [value]=\"child\"\n [content]=\"content\"\n [trackBy]=\"trackBy\"\n ></tui-tree>\n</tui-tree-item>\n","import {Directive, EventEmitter, Input, Output} from '@angular/core';\nimport {tuiIsPresent} from '@taiga-ui/cdk';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor, TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR, TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController][map]',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_ACCESSOR,\n useExisting: TuiTreeControllerDirective,\n },\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeControllerDirective,\n },\n ],\n})\nexport class TuiTreeControllerDirective<T>\n implements TuiTreeController, TuiTreeAccessor<T>\n{\n @Input('tuiTreeController')\n fallback = true;\n\n @Input()\n map = new Map<T, boolean>();\n\n @Output()\n readonly toggled = new EventEmitter<T>();\n\n readonly items = new Map<TuiTreeItemComponent, T>();\n\n register(item: TuiTreeItemComponent, value: T): void {\n this.items.set(item, value);\n }\n\n unregister(item: TuiTreeItemComponent): void {\n this.items.delete(item);\n }\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n const value = this.items.get(item);\n\n return (value && this.map.get(value)) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent): void {\n const value = this.items.get(item);\n const expanded = this.isExpanded(item);\n\n if (!tuiIsPresent(value)) {\n return;\n }\n\n this.toggled.emit(value);\n this.map.set(value, !expanded);\n }\n}\n","import {Directive, Input} from '@angular/core';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController]:not([map])',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeItemControllerDirective,\n },\n ],\n})\nexport class TuiTreeItemControllerDirective implements TuiTreeController {\n private readonly map = new WeakMap<TuiTreeItemComponent, boolean>();\n\n @Input('tuiTreeController')\n fallback = true;\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n return this.map.get(item) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent): void {\n this.map.set(item, !this.isExpanded(item));\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {map, startWith, switchMap, tap} from 'rxjs/operators';\n\nimport {TuiTreeLoader} from './tree.interfaces';\nimport {TUI_TREE_LOADER, TUI_TREE_LOADING, TUI_TREE_START} from './tree.tokens';\n\n@Injectable()\nexport class TuiTreeService<T> {\n private readonly map = new Map<T, readonly T[]>([[this.loading, []]]);\n\n private readonly load$ = new Subject<T>();\n\n readonly data$ = this.load$.pipe(\n switchMap(item =>\n this.loader.loadChildren(item).pipe(\n tap(children => this.map.set(item, children)),\n map(children => children.filter(item => !this.loader.hasChildren(item))),\n tap(children => children.forEach(child => this.map.set(child, []))),\n ),\n ),\n startWith(null),\n map(() => this.start),\n );\n\n constructor(\n @Inject(TUI_TREE_LOADING) private readonly loading: T,\n @Inject(TUI_TREE_START) private readonly start: T,\n @Inject(TUI_TREE_LOADER) private readonly loader: TuiTreeLoader<T>,\n ) {}\n\n getChildren(item: T): readonly T[] {\n return this.map.get(item) || [this.loading];\n }\n\n loadChildren(item: T): void {\n if (this.map.get(item)) {\n return;\n }\n\n this.map.set(item, [this.loading]);\n this.load$.next(item);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule, TuiExpandModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeComponent} from './components/tree/tree.component';\nimport {TuiTreeItemComponent} from './components/tree-item/tree-item.component';\nimport {TuiTreeItemContentComponent} from './components/tree-item-content/tree-item-content.component';\nimport {TuiTreeChildrenDirective} from './directives/tree-children.directive';\nimport {TuiTreeControllerDirective} from './directives/tree-controller.directive';\nimport {TuiTreeItemControllerDirective} from './directives/tree-item-controller.directive';\nimport {TuiTreeNodeDirective} from './directives/tree-node.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiExpandModule,\n TuiLetModule,\n TuiButtonModule,\n ],\n declarations: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeItemContentComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n TuiTreeNodeDirective,\n ],\n exports: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n ],\n})\nexport class TuiTreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i3.TuiTreeNodeDirective","i5"],"mappings":";;;;;;;;;;;;;MAMa,wBAAwB,CAAA;AAHrC,IAAA,WAAA,GAAA;AAKI,QAAA,IAAA,CAAA,eAAe,GACX,wBAAwB,CAAC,cAAc,CAAC;AAK/C,KAAA;IAHG,OAAO,cAAc,CAAI,IAAO,EAAA;AAC5B,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,WAAW,CAAC;KACnD;;sHAPQ,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;0GAAxB,wBAAwB,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAHpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,2BAA2B;AACxC,iBAAA,CAAA;8BAGG,eAAe,EAAA,CAAA;sBADd,KAAK;;;MCaG,2BAA2B,CAAA;IACpC,WAC2C,CAAA,OAA2B,EAEjD,UAA6B,EAAA;QAFP,IAAO,CAAA,OAAA,GAAP,OAAO,CAAoB;QAEjD,IAAU,CAAA,UAAA,GAAV,UAAU,CAAmB;KAC9C;AAEJ,IAAA,IAAI,UAAU,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC;KAC5C;AAED,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,QACI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY;AACnC,YAAA,IAAI,CAAC,UAAU,KAAK,2BAA2B,EACjD;KACL;IAED,OAAO,GAAA;QACH,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KAClD;;yHArBQ,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAExB,oBAAoB,EACpB,EAAA,EAAA,KAAA,EAAA,UAAU,CAAC,MAAM,mBAAmB,CAAC,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAHxC,2BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,iICpBxC,sWAaA,EAAA,MAAA,EAAA,CAAA,uTAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,0EAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,MAAA,EAAA,WAAA,EAAA,OAAA,EAAA,YAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDOa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBANvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,WAAW,EAAE,mCAAmC;oBAChD,SAAS,EAAE,CAAC,gCAAgC,CAAC;oBAC7C,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAClD,iBAAA,CAAA;;0BAGQ,MAAM;2BAAC,oBAAoB,CAAA;;0BAC3B,MAAM;AAAC,oBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,mBAAmB,CAAC,CAAA;4CAS7C,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,mBAAmB,CAAA;;;MEzBvB,qBAAqB,GAAG,IAAI,qBAAqB,CAC1D,2BAA2B,EAC7B;AAEW,MAAA,2BAA2B,GAAsB;AAC1D,IAAA,UAAU,EAAE,mBAAmB;AAC/B,IAAA,MAAM,EAAE,cAA4B;;;ACDxC;;AAEG;MACU,iBAAiB,GAAG,IAAI,cAAc,CAC/C,CAAqB,mBAAA,CAAA,EACvB;AAEF;;AAEG;MACU,mBAAmB,GAAG,IAAI,cAAc,CACjD,uBAAuB,EACvB;AACI,IAAA,OAAO,EAAE,MAAM,2BAA2B;AAC7C,CAAA,EACH;AAEF;;AAEG;MACU,aAAa,GAAG,IAAI,cAAc,CAAC,CAAiB,eAAA,CAAA,EAAE;AAEnE;;AAEG;MACU,gBAAgB,GAAG,IAAI,cAAc,CAAC,oBAAoB,EAAE;AACrE,IAAA,OAAO,EAAE,OAAO,EAAE,CAAC;AACtB,CAAA,EAAE;AAEH;;AAEG;MACU,cAAc,GAAG,IAAI,cAAc,CAAC,CAAkB,gBAAA,CAAA,EAAE;AAErE;;AAEG;MACU,eAAe,GAAG,IAAI,cAAc,CAC7C,CAAmB,iBAAA,CAAA,EACrB;AAEF;;AAEG;MACU,gBAAgB,GAAG,IAAI,cAAc,CAEhD,oBAAoB,EAAE;AACpB,IAAA,OAAO,EAAE,MAAM,qBAAqB;AACvC,CAAA,EAAE;AAEH;;AAEG;MACU,cAAc,GAAG,IAAI,cAAc,CAAS,kBAAkB,EAAE;AACzE,IAAA,OAAO,EAAE,MAAM,CAAC,CAAC;AACpB,CAAA;;AC5DY,MAAA,uBAAuB,GAAe;AAC/C,IAAA;AACI,QAAA,OAAO,EAAE,cAAc;QACvB,IAAI,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,cAAc,CAAC,CAAC;AACxC,QAAA,UAAU,EAAE,CAAC,KAAa,KAAa,EAAE,KAAK;AACjD,KAAA;AACD,IAAA;AACI,QAAA,OAAO,EAAE,aAAa;AACtB,QAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACtD,KAAA;;;MCqBQ,oBAAoB,CAAA;AAiB7B,IAAA,WAAA,CAEqB,EAA2B,EAE3B,UAA6B,EAErC,KAAa,EAEb,OAAgD,EAAA;QANxC,IAAE,CAAA,EAAA,GAAF,EAAE,CAAyB;QAE3B,IAAU,CAAA,UAAA,GAAV,UAAU,CAAmB;QAErC,IAAK,CAAA,KAAA,GAAL,KAAK,CAAQ;QAEb,IAAO,CAAA,OAAA,GAAP,OAAO,CAAyC;QAvB5C,IAAM,CAAA,MAAA,GAAuB,WAAW,CAAC;AAEzC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEtC,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAClC,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,EAC1B,oBAAoB,EAAE,CACzB,CAAC;QAEO,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAClC,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,EAC5C,oBAAoB,EAAE,CACzB,CAAC;KAWE;AAEJ,IAAA,IACI,YAAY,GAAA;AACZ,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;KAC/B;AAED,IAAA,IAAI,UAAU,GAAA;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;KAC3C;IAED,SAAS,GAAA;QACL,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;IAED,YAAY,GAAA;AACR,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACvB;;kHA3CQ,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAkBjB,UAAU,EAAA,EAAA,EAAA,KAAA,EAEV,UAAU,CAAC,MAAM,mBAAmB,CAAC,EAErC,EAAA,EAAA,KAAA,EAAA,UAAU,CAAC,MAAM,cAAc,CAAC,EAAA,EAAA,EAAA,KAAA,EAEhC,UAAU,CAAC,MAAM,gBAAgB,CAAC,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAxBrC,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EALlB,QAAA,EAAA,eAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,uBAAuB,EAMjB,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,SAAA,EAAA,aAAoB,6BCrCzC,uiBAkBA,EAAA,MAAA,EAAA,CAAA,sGAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAAA,EAAA,CAAA,SAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FDkBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAVhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,WAAW,EAAE,2BAA2B;oBACxC,SAAS,EAAE,CAAC,wBAAwB,CAAC;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE,uBAAuB;AAClC,oBAAA,IAAI,EAAE;AACF,wBAAA,IAAI,EAAE,UAAU;AACnB,qBAAA;AACJ,iBAAA,CAAA;;0BAmBQ,MAAM;2BAAC,UAAU,CAAA;;0BAEjB,MAAM;AAAC,oBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,mBAAmB,CAAC,CAAA;;0BAE5C,MAAM;AAAC,oBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,cAAc,CAAC,CAAA;;0BAEvC,MAAM;AAAC,oBAAA,IAAA,EAAA,CAAA,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAA;4CAtB7B,MAAM,EAAA,CAAA;sBADtB,eAAe;uBAAC,aAAoB,CAAA;gBA4BjC,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,mBAAmB,CAAA;;;MEvDvB,oBAAoB,CAAA;IAM7B,WAGqB,CAAA,SAA6B,EAE7B,SAA+B,EAAA;QAF/B,IAAS,CAAA,SAAA,GAAT,SAAS,CAAoB;QAE7B,IAAS,CAAA,SAAA,GAAT,SAAS,CAAsB;KAChD;IAXJ,IACI,KAAK,CAAC,KAAQ,EAAA;;AACd,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KACnD;IAUD,WAAW,GAAA;;QACP,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAC9C;;kHAhBQ,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAQjB,iBAAiB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAEjB,oBAAoB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;sGAVvB,oBAAoB,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,CAAA,aAAA,EAAA,OAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,4BAA4B;AACzC,iBAAA,CAAA;;0BAQQ,QAAQ;;0BACR,MAAM;2BAAC,iBAAiB,CAAA;;0BAExB,MAAM;2BAAC,oBAAoB,CAAA;4CAR5B,KAAK,EAAA,CAAA;sBADR,KAAK;uBAAC,aAAa,CAAA;;;MCyBX,gBAAgB,CAAA;AAkBzB,IAAA,WAAA,CAGa,SAA6C,EAAA;QAA7C,IAAS,CAAA,SAAA,GAAT,SAAS,CAAoC;AApBzC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,OAAO,EAAQ,CAAC;AAWrC,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CACjC,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACnC,oBAAoB,EAAE,CACzB,CAAC;QASF,IAAO,CAAA,OAAA,GAAuB,CAAC,CAAS,EAAE,IAAO,KAAK,IAAI,CAAC;AAG3D,QAAA,IAAA,CAAA,OAAO,GAA2C,CAAC,EAAC,SAAS,EAAC,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC;KANjF;IAQJ,SAAS,GAAA;QACL,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;IAED,YAAY,GAAA;;AACR,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACnB,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,EAAE,CAAC;AAC1B,QAAA,CAAA,EAAA,GAAA,IAAI,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,YAAY,EAAE,CAAC;KAC9B;AAED,IAAA,IAAY,OAAO,GAAA;;QACf,OAAO,CAAA,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,eAAe,KAAI,wBAAwB,CAAC,cAAc,CAAC;KACrF;;AA1CQ,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,kBAoBb,wBAAwB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AApB3B,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAVd,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,MAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,QAAA;AACI,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,WAAW,EAAE,gBAAgB;AAChC,SAAA;AACJ,KAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAWU,oBAAoB,EAGpB,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,gBAAgB,EC5C/B,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,0hBAiBA,wIDkBa,gBAAgB,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,oBAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAf5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,WAAW,EAAE,sBAAsB;oBACnC,SAAS,EAAE,CAAC,mBAAmB,CAAC;oBAChC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,aAAa;AACtB,4BAAA,WAAW,EAAkB,gBAAA;AAChC,yBAAA;AACJ,qBAAA;AACD,oBAAA,IAAI,EAAE;AACF,wBAAA,IAAI,EAAE,MAAM;AACf,qBAAA;AACJ,iBAAA,CAAA;;0BAoBQ,QAAQ;;0BACR,MAAM;2BAAC,wBAAwB,CAAA;4CAhBpC,KAAK,EAAA,CAAA;sBADJ,KAAK;gBAIG,IAAI,EAAA,CAAA;sBADZ,SAAS;uBAAC,oBAAoB,CAAA;gBAItB,KAAK,EAAA,CAAA;sBADb,SAAS;uBAAC,gBAAgB,CAAA;gBAgB3B,OAAO,EAAA,CAAA;sBADN,KAAK;gBAIN,OAAO,EAAA,CAAA;sBADN,KAAK;;;MEzCG,0BAA0B,CAAA;AAdvC,IAAA,WAAA,GAAA;QAkBI,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AAGhB,QAAA,IAAA,CAAA,GAAG,GAAG,IAAI,GAAG,EAAc,CAAC;AAGnB,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAK,CAAC;AAEhC,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,GAAG,EAA2B,CAAC;AA2BvD,KAAA;IAzBG,QAAQ,CAAC,IAA0B,EAAE,KAAQ,EAAA;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAC/B;AAED,IAAA,UAAU,CAAC,IAA0B,EAAA;AACjC,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC3B;AAED,IAAA,UAAU,CAAC,IAA0B,EAAA;;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAEnC,QAAA,OAAO,OAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,mCAAI,IAAI,CAAC,QAAQ,CAAC;KAC1D;AAED,IAAA,MAAM,CAAC,IAA0B,EAAA;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAEvC,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE;YACtB,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC;KAClC;;wHAtCQ,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,0BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,EAXxB,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,EAAA,UAAA,CAAA,EAAA,GAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,SAAA,EAAA;AACP,QAAA;AACI,YAAA,OAAO,EAAE,iBAAiB;AAC1B,YAAA,WAAW,EAAE,0BAA0B;AAC1C,SAAA;AACD,QAAA;AACI,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,WAAW,EAAE,0BAA0B;AAC1C,SAAA;AACJ,KAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEQ,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAdtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAA4B,0BAAA;AAC1C,yBAAA;AACD,wBAAA;AACI,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAA4B,0BAAA;AAC1C,yBAAA;AACJ,qBAAA;AACJ,iBAAA,CAAA;8BAKG,QAAQ,EAAA,CAAA;sBADP,KAAK;uBAAC,mBAAmB,CAAA;gBAI1B,GAAG,EAAA,CAAA;sBADF,KAAK;gBAIG,OAAO,EAAA,CAAA;sBADf,MAAM;;;MCdE,8BAA8B,CAAA;AAV3C,IAAA,WAAA,GAAA;AAWqB,QAAA,IAAA,CAAA,GAAG,GAAG,IAAI,OAAO,EAAiC,CAAC;QAGpE,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC;AASnB,KAAA;AAPG,IAAA,UAAU,CAAC,IAA0B,EAAA;;AACjC,QAAA,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,IAAI,CAAC,QAAQ,CAAC;KAC9C;AAED,IAAA,MAAM,CAAC,IAA0B,EAAA;AAC7B,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;KAC9C;;4HAZQ,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA9B,8BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,8BAA8B,EAP5B,QAAA,EAAA,gCAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,EAAA,UAAA,CAAA,EAAA,EAAA,SAAA,EAAA;AACP,QAAA;AACI,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,WAAW,EAAE,8BAA8B;AAC9C,SAAA;AACJ,KAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;4FAEQ,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAV1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gCAAgC;AAC1C,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAAgC,8BAAA;AAC9C,yBAAA;AACJ,qBAAA;AACJ,iBAAA,CAAA;8BAKG,QAAQ,EAAA,CAAA;sBADP,KAAK;uBAAC,mBAAmB,CAAA;;;MCXjB,cAAc,CAAA;AAiBvB,IAAA,WAAA,CAC+C,OAAU,EACZ,KAAQ,EACP,MAAwB,EAAA;QAFvB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAG;QACZ,IAAK,CAAA,KAAA,GAAL,KAAK,CAAG;QACP,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;AAnBrD,QAAA,IAAA,CAAA,GAAG,GAAG,IAAI,GAAG,CAAkB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AAErD,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,OAAO,EAAK,CAAC;QAEjC,IAAK,CAAA,KAAA,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAC5B,SAAS,CAAC,IAAI,IACV,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAC/B,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAC7C,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EACxE,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CACtE,CACJ,EACD,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CACxB,CAAC;KAME;AAEJ,IAAA,WAAW,CAAC,IAAO,EAAA;AACf,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC/C;AAED,IAAA,YAAY,CAAC,IAAO,EAAA;QAChB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACpB,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACnC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACzB;;AAlCQ,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAkBX,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,gBAAgB,EAChB,EAAA,EAAA,KAAA,EAAA,cAAc,aACd,eAAe,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;gHApBlB,cAAc,EAAA,CAAA,CAAA;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;;0BAmBF,MAAM;2BAAC,gBAAgB,CAAA;;0BACvB,MAAM;2BAAC,cAAc,CAAA;;0BACrB,MAAM;2BAAC,eAAe,CAAA;;;MCWlB,aAAa,CAAA;;2GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,iBAhBlB,gBAAgB;QAChB,oBAAoB;QACpB,2BAA2B;QAC3B,wBAAwB;QACxB,8BAA8B;QAC9B,0BAA0B;AAC1B,QAAA,oBAAoB,aAbpB,YAAY;QACZ,kBAAkB;QAClB,eAAe;QACf,YAAY;AACZ,QAAA,eAAe,aAYf,gBAAgB;QAChB,oBAAoB;QACpB,wBAAwB;QACxB,8BAA8B;QAC9B,0BAA0B,CAAA,EAAA,CAAA,CAAA;AAGrB,aAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,EAxBb,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,kBAAkB;YAClB,eAAe;YACf,YAAY;YACZ,eAAe;AAClB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAkBQ,aAAa,EAAA,UAAA,EAAA,CAAA;kBAzBzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,kBAAkB;wBAClB,eAAe;wBACf,YAAY;wBACZ,eAAe;AAClB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,gBAAgB;wBAChB,oBAAoB;wBACpB,2BAA2B;wBAC3B,wBAAwB;wBACxB,8BAA8B;wBAC9B,0BAA0B;wBAC1B,oBAAoB;AACvB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,gBAAgB;wBAChB,oBAAoB;wBACpB,wBAAwB;wBACxB,8BAA8B;wBAC9B,0BAA0B;AAC7B,qBAAA;AACJ,iBAAA,CAAA;;;ACtCD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-components-tree.js","sources":["../../../projects/kit/components/tree/directives/tree-children.directive.ts","../../../projects/kit/components/tree/components/tree-item-content/tree-item-content.component.ts","../../../projects/kit/components/tree/components/tree-item-content/tree-item-content.template.html","../../../projects/kit/components/tree/misc/tree.constants.ts","../../../projects/kit/components/tree/misc/tree.tokens.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.providers.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.component.ts","../../../projects/kit/components/tree/components/tree-item/tree-item.template.html","../../../projects/kit/components/tree/directives/tree-node.directive.ts","../../../projects/kit/components/tree/components/tree/tree.component.ts","../../../projects/kit/components/tree/components/tree/tree.template.html","../../../projects/kit/components/tree/directives/tree-controller.directive.ts","../../../projects/kit/components/tree/directives/tree-item-controller.directive.ts","../../../projects/kit/components/tree/misc/tree.service.ts","../../../projects/kit/components/tree/tree.module.ts","../../../projects/kit/components/tree/taiga-ui-kit-components-tree.ts"],"sourcesContent":["import {Directive, Input} from '@angular/core';\nimport {EMPTY_ARRAY, TuiHandler} from '@taiga-ui/cdk';\n\n@Directive({\n selector: 'tui-tree[childrenHandler]',\n})\nexport class TuiTreeChildrenDirective<T> {\n @Input()\n childrenHandler: TuiHandler<T, readonly T[]> =\n TuiTreeChildrenDirective.defaultHandler;\n\n static defaultHandler<G>(item: G): readonly G[] {\n return Array.isArray(item) ? item : EMPTY_ARRAY;\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n forwardRef,\n HostBinding,\n Inject,\n} from '@angular/core';\nimport {TUI_COMMON_ICONS, TuiCommonIcons} from '@taiga-ui/core';\nimport {POLYMORPHEUS_CONTEXT} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER} from '../../misc/tree.constants';\nimport type {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\n// eslint-disable-next-line import/no-cycle\nimport {TUI_TREE_CONTROLLER} from '../../misc/tree.tokens';\n\n@Component({\n selector: 'tui-tree-item-content',\n templateUrl: './tree-item-content.template.html',\n styleUrls: ['./tree-item-content.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTreeItemContentComponent {\n constructor(\n @Inject(TUI_COMMON_ICONS) readonly icons: TuiCommonIcons,\n @Inject(POLYMORPHEUS_CONTEXT) readonly context: TuiTreeItemContext,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n ) {}\n\n get isExpanded(): boolean {\n return this.context.$implicit.isExpanded;\n }\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return (\n this.context.$implicit.isExpandable &&\n this.controller !== TUI_DEFAULT_TREE_CONTROLLER\n );\n }\n\n onClick(): void {\n this.controller.toggle(this.context.$implicit);\n }\n}\n","<button\n *ngIf=\"isExpandable\"\n tuiIconButton\n size=\"xs\"\n appearance=\"flat\"\n shape=\"rounded\"\n type=\"button\"\n class=\"t-button\"\n [class.t-button_expanded]=\"isExpanded\"\n [icon]=\"icons.more\"\n (click)=\"onClick()\"\n></button>\n<ng-container [ngTemplateOutlet]=\"context.template\"></ng-container>\n","import {ALWAYS_TRUE_HANDLER, EMPTY_FUNCTION} from '@taiga-ui/cdk';\nimport {PolymorpheusComponent} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeItemContentComponent} from '../components/tree-item-content/tree-item-content.component';\nimport type {TuiTreeController} from './tree.interfaces';\n\nexport const TUI_TREE_ITEM_CONTENT = new PolymorpheusComponent(\n TuiTreeItemContentComponent,\n);\n\nexport const TUI_DEFAULT_TREE_CONTROLLER: TuiTreeController = {\n isExpanded: ALWAYS_TRUE_HANDLER,\n toggle: EMPTY_FUNCTION as () => void,\n};\n","import {InjectionToken} from '@angular/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nimport {TUI_DEFAULT_TREE_CONTROLLER, TUI_TREE_ITEM_CONTENT} from './tree.constants';\nimport type {\n TuiTreeAccessor,\n TuiTreeController,\n TuiTreeItemContext,\n TuiTreeLoader,\n} from './tree.interfaces';\n\n/**\n * Controller for tracking value - TuiTreeItemComponent pairs\n */\nexport const TUI_TREE_ACCESSOR = new InjectionToken<TuiTreeAccessor<unknown>>(\n `[TUI_TREE_ACCESSOR]`,\n);\n\n/**\n * Controller for expanding the tree\n */\nexport const TUI_TREE_CONTROLLER = new InjectionToken<TuiTreeController>(\n `[TUI_TREE_CONTROLLER]`,\n {\n factory: () => TUI_DEFAULT_TREE_CONTROLLER,\n },\n);\n\n/**\n * A node of a tree view\n */\nexport const TUI_TREE_NODE = new InjectionToken(`[TUI_TREE_NODE]`);\n\n/**\n * A tree node placeholder for loading\n */\nexport const TUI_TREE_LOADING = new InjectionToken(`[TUI_TREE_LOADING]`, {\n factory: () => ({}),\n});\n\n/**\n * A tree node starting point\n */\nexport const TUI_TREE_START = new InjectionToken(`[TUI_TREE_START]`);\n\n/**\n * A service to load tree progressively\n */\nexport const TUI_TREE_LOADER = new InjectionToken<TuiTreeLoader<unknown>>(\n `[TUI_TREE_LOADER]`,\n);\n\n/**\n * Content for a tree item\n */\nexport const TUI_TREE_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiTreeItemContext>\n>(`[TUI_TREE_CONTENT]`, {\n factory: () => TUI_TREE_ITEM_CONTENT,\n});\n\n/**\n * Nesting level of current TreeView node\n */\nexport const TUI_TREE_LEVEL = new InjectionToken<number>(`[TUI_TREE_LEVEL]`, {\n factory: () => -1,\n});\n","import {forwardRef, Provider, SkipSelf} from '@angular/core';\n\nimport {TUI_TREE_LEVEL, TUI_TREE_NODE} from '../../misc/tree.tokens';\n// eslint-disable-next-line import/no-cycle\nimport {TuiTreeItemComponent} from './tree-item.component';\n\nexport const TUI_TREE_ITEM_PROVIDERS: Provider[] = [\n {\n provide: TUI_TREE_LEVEL,\n deps: [[new SkipSelf(), TUI_TREE_LEVEL]],\n useFactory: (level: number): number => ++level,\n },\n {\n provide: TUI_TREE_NODE,\n useExisting: forwardRef(() => TuiTreeItemComponent),\n },\n];\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n DoCheck,\n ElementRef,\n forwardRef,\n HostBinding,\n Inject,\n QueryList,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport type {TuiTreeController, TuiTreeItemContext} from '../../misc/tree.interfaces';\nimport {\n TUI_TREE_CONTENT,\n TUI_TREE_CONTROLLER,\n TUI_TREE_LEVEL,\n TUI_TREE_NODE,\n} from '../../misc/tree.tokens';\n// eslint-disable-next-line import/no-cycle\nimport {TUI_TREE_ITEM_PROVIDERS} from './tree-item.providers';\n\n@Component({\n selector: 'tui-tree-item',\n templateUrl: './tree-item.template.html',\n styleUrls: ['./tree-item.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TREE_ITEM_PROVIDERS,\n host: {\n role: 'treeitem',\n },\n})\nexport class TuiTreeItemComponent implements DoCheck {\n @ContentChildren(TUI_TREE_NODE as any)\n private readonly nested: QueryList<unknown> = EMPTY_QUERY;\n\n private readonly change$ = new Subject<void>();\n\n readonly expanded$ = this.change$.pipe(\n startWith(null),\n map(() => this.isExpanded),\n distinctUntilChanged(),\n );\n\n readonly attached$ = this.change$.pipe(\n map(() => this.el.nativeElement.isConnected),\n distinctUntilChanged(),\n );\n\n constructor(\n @Inject(ElementRef)\n private readonly el: ElementRef<HTMLElement>,\n @Inject(forwardRef(() => TUI_TREE_CONTROLLER))\n private readonly controller: TuiTreeController,\n @Inject(forwardRef(() => TUI_TREE_LEVEL))\n readonly level: number,\n @Inject(forwardRef(() => TUI_TREE_CONTENT))\n readonly content: PolymorpheusContent<TuiTreeItemContext>,\n ) {}\n\n @HostBinding('class._expandable')\n get isExpandable(): boolean {\n return !!this.nested.length;\n }\n\n get isExpanded(): boolean {\n return this.controller.isExpanded(this);\n }\n\n ngDoCheck(): void {\n this.checkChanges();\n }\n\n checkChanges(): void {\n this.change$.next();\n }\n}\n","<ng-template #template>\n <ng-content></ng-content>\n</ng-template>\n<ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: this, template: template}\">\n {{ text }}\n</ng-container>\n<tui-expand\n *ngIf=\"isExpandable\"\n role=\"group\"\n class=\"t-children\"\n [expanded]=\"expanded$ | async\"\n>\n <div>\n <ng-content select=\"tui-tree-item\"></ng-content>\n <ng-content select=\"tui-tree\"></ng-content>\n </div>\n</tui-expand>\n<ng-container *ngIf=\"attached$ | async\"></ng-container>\n","import {Directive, Inject, Input, OnDestroy, Optional} from '@angular/core';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR} from '../misc/tree.tokens';\n\n@Directive({\n selector: 'tui-tree-item[tuiTreeNode]',\n})\nexport class TuiTreeNodeDirective<T> implements OnDestroy {\n @Input('tuiTreeNode')\n set value(value: T) {\n this.directive?.register(this.component, value);\n }\n\n constructor(\n @Optional()\n @Inject(TUI_TREE_ACCESSOR)\n private readonly directive: TuiTreeAccessor<T>,\n @Inject(TuiTreeItemComponent)\n private readonly component: TuiTreeItemComponent,\n ) {}\n\n ngOnDestroy(): void {\n this.directive?.unregister(this.component);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n DoCheck,\n Inject,\n Input,\n Optional,\n TrackByFunction,\n ViewChild,\n} from '@angular/core';\nimport {TuiHandler} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Subject} from 'rxjs';\nimport {distinctUntilChanged, map, startWith} from 'rxjs/operators';\n\nimport {TuiTreeChildrenDirective} from '../../directives/tree-children.directive';\nimport {TuiTreeContext} from '../../misc/tree.interfaces';\nimport {TUI_TREE_NODE} from '../../misc/tree.tokens';\nimport {TuiTreeItemComponent} from '../tree-item/tree-item.component';\n\n@Component({\n selector: 'tui-tree[value]',\n templateUrl: './tree.template.html',\n styleUrls: ['./tree.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_TREE_NODE,\n useExisting: TuiTreeComponent,\n },\n ],\n host: {\n role: 'tree',\n },\n})\nexport class TuiTreeComponent<T> implements DoCheck {\n private readonly check$ = new Subject<void>();\n\n @Input()\n value!: T;\n\n @ViewChild(TuiTreeItemComponent)\n readonly item?: TuiTreeItemComponent;\n\n @ViewChild(TuiTreeComponent)\n readonly child?: TuiTreeComponent<T>;\n\n readonly children$ = this.check$.pipe(\n startWith(null),\n map(() => this.handler(this.value)),\n distinctUntilChanged(),\n );\n\n constructor(\n @Optional()\n @Inject(TuiTreeChildrenDirective)\n readonly directive: TuiTreeChildrenDirective<T> | null,\n ) {}\n\n @Input()\n trackBy: TrackByFunction<T> = (_: number, item: T) => item;\n\n @Input()\n content: PolymorpheusContent<TuiTreeContext<T>> = ({$implicit}) => String($implicit);\n\n ngDoCheck(): void {\n this.checkChanges();\n }\n\n checkChanges(): void {\n this.check$.next();\n this.item?.checkChanges();\n this.child?.checkChanges();\n }\n\n private get handler(): TuiHandler<T, readonly T[]> {\n return this.directive?.childrenHandler || TuiTreeChildrenDirective.defaultHandler;\n }\n}\n","<tui-tree-item\n *tuiLet=\"children$ | async as children\"\n #view\n [tuiTreeNode]=\"value\"\n>\n <ng-container *ngIf=\"$any(value) !== children\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: value, node: view}\">\n {{ text }}\n </ng-container>\n </ng-container>\n <tui-tree\n *ngFor=\"let child of children; trackBy: trackBy\"\n [value]=\"child\"\n [content]=\"content\"\n [trackBy]=\"trackBy\"\n ></tui-tree>\n</tui-tree-item>\n","import {Directive, EventEmitter, Input, Output} from '@angular/core';\nimport {tuiIsPresent} from '@taiga-ui/cdk';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeAccessor, TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_ACCESSOR, TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController][map]',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_ACCESSOR,\n useExisting: TuiTreeControllerDirective,\n },\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeControllerDirective,\n },\n ],\n})\nexport class TuiTreeControllerDirective<T>\n implements TuiTreeController, TuiTreeAccessor<T>\n{\n @Input('tuiTreeController')\n fallback = true;\n\n @Input()\n map = new Map<T, boolean>();\n\n @Output()\n readonly toggled = new EventEmitter<T>();\n\n readonly items = new Map<TuiTreeItemComponent, T>();\n\n register(item: TuiTreeItemComponent, value: T): void {\n this.items.set(item, value);\n }\n\n unregister(item: TuiTreeItemComponent): void {\n this.items.delete(item);\n }\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n const value = this.items.get(item);\n\n return (value && this.map.get(value)) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent): void {\n const value = this.items.get(item);\n const expanded = this.isExpanded(item);\n\n if (!tuiIsPresent(value)) {\n return;\n }\n\n this.toggled.emit(value);\n this.map.set(value, !expanded);\n }\n}\n","import {Directive, Input} from '@angular/core';\n\nimport {TuiTreeItemComponent} from '../components/tree-item/tree-item.component';\nimport {TuiTreeController} from '../misc/tree.interfaces';\nimport {TUI_TREE_CONTROLLER} from '../misc/tree.tokens';\n\n@Directive({\n selector: '[tuiTreeController]:not([map])',\n exportAs: 'tuiTreeController',\n providers: [\n {\n provide: TUI_TREE_CONTROLLER,\n useExisting: TuiTreeItemControllerDirective,\n },\n ],\n})\nexport class TuiTreeItemControllerDirective implements TuiTreeController {\n private readonly map = new WeakMap<TuiTreeItemComponent, boolean>();\n\n @Input('tuiTreeController')\n fallback = true;\n\n isExpanded(item: TuiTreeItemComponent): boolean {\n return this.map.get(item) ?? this.fallback;\n }\n\n toggle(item: TuiTreeItemComponent): void {\n this.map.set(item, !this.isExpanded(item));\n }\n}\n","import {Inject, Injectable} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {map, startWith, switchMap, tap} from 'rxjs/operators';\n\nimport {TuiTreeLoader} from './tree.interfaces';\nimport {TUI_TREE_LOADER, TUI_TREE_LOADING, TUI_TREE_START} from './tree.tokens';\n\n@Injectable()\nexport class TuiTreeService<T> {\n private readonly map = new Map<T, readonly T[]>([[this.loading, []]]);\n\n private readonly load$ = new Subject<T>();\n\n readonly data$ = this.load$.pipe(\n switchMap(item =>\n this.loader.loadChildren(item).pipe(\n tap(children => this.map.set(item, children)),\n map(children => children.filter(item => !this.loader.hasChildren(item))),\n tap(children => children.forEach(child => this.map.set(child, []))),\n ),\n ),\n startWith(null),\n map(() => this.start),\n );\n\n constructor(\n @Inject(TUI_TREE_LOADING) private readonly loading: T,\n @Inject(TUI_TREE_START) private readonly start: T,\n @Inject(TUI_TREE_LOADER) private readonly loader: TuiTreeLoader<T>,\n ) {}\n\n getChildren(item: T): readonly T[] {\n return this.map.get(item) || [this.loading];\n }\n\n loadChildren(item: T): void {\n if (this.map.get(item)) {\n return;\n }\n\n this.map.set(item, [this.loading]);\n this.load$.next(item);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule} from '@taiga-ui/cdk';\nimport {TuiButtonModule, TuiExpandModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiTreeComponent} from './components/tree/tree.component';\nimport {TuiTreeItemComponent} from './components/tree-item/tree-item.component';\nimport {TuiTreeItemContentComponent} from './components/tree-item-content/tree-item-content.component';\nimport {TuiTreeChildrenDirective} from './directives/tree-children.directive';\nimport {TuiTreeControllerDirective} from './directives/tree-controller.directive';\nimport {TuiTreeItemControllerDirective} from './directives/tree-item-controller.directive';\nimport {TuiTreeNodeDirective} from './directives/tree-node.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiExpandModule,\n TuiLetModule,\n TuiButtonModule,\n ],\n declarations: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeItemContentComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n TuiTreeNodeDirective,\n ],\n exports: [\n TuiTreeComponent,\n TuiTreeItemComponent,\n TuiTreeChildrenDirective,\n TuiTreeItemControllerDirective,\n TuiTreeControllerDirective,\n ],\n})\nexport class TuiTreeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i3","i3.TuiTreeNodeDirective","i5"],"mappings":"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"}
@@ -60,7 +60,7 @@ export * from '@taiga-ui/kit/components/slider';
60
60
  export * from '@taiga-ui/kit/components/stepper';
61
61
  export * from '@taiga-ui/kit/components/tabs';
62
62
  export * from '@taiga-ui/kit/components/tag';
63
- export * from '@taiga-ui/kit/components/text-area';
63
+ export * from '@taiga-ui/kit/components/textarea';
64
64
  export * from '@taiga-ui/kit/components/tiles';
65
65
  export * from '@taiga-ui/kit/components/toggle';
66
66
  export * from '@taiga-ui/kit/components/tree';
@@ -10,7 +10,7 @@ const TUI_DATE_MODE_MASKITO_ADAPTER = {
10
10
  const DATE_TIME_SEPARATOR = `, `;
11
11
 
12
12
  /**
13
- * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito} instead
13
+ * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito} instead
14
14
  * TODO: delete in v4.0
15
15
  */
16
16
  const EMPTY_MASK = {
@@ -56,7 +56,7 @@ const TUI_PHONE_MASK = [
56
56
  TUI_DIGIT_REGEXP,
57
57
  ];
58
58
  /**
59
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead
59
+ * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead
60
60
  * TODO: delete in v4.0
61
61
  */
62
62
  const TUI_TIME_MASK = [
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-constants.js","sources":["../../../projects/kit/constants/date-mode-maskito-adapter.ts","../../../projects/kit/constants/date-time-separator.ts","../../../projects/kit/constants/empty-mask.ts","../../../projects/kit/constants/group-class-names.ts","../../../projects/kit/constants/mask-after-code-regexp.ts","../../../projects/kit/constants/masks.ts","../../../projects/kit/constants/math.ts","../../../projects/kit/constants/max-day-range-length-mapper.ts","../../../projects/kit/constants/max-time-values.ts","../../../projects/kit/constants/router-link-options.ts","../../../projects/kit/constants/taiga-ui-kit-constants.ts"],"sourcesContent":["import {MaskitoDateMode} from '@maskito/kit';\nimport {TuiDateMode} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_MODE_MASKITO_ADAPTER: Record<TuiDateMode, MaskitoDateMode> = {\n DMY: `dd/mm/yyyy`,\n MDY: `mm/dd/yyyy`,\n YMD: `yyyy/mm/dd`,\n};\n","export const DATE_TIME_SEPARATOR = `, `;\n","import {TuiTextMaskOptions} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const EMPTY_MASK: TuiTextMaskOptions = {\n mask(): false {\n return false;\n },\n};\n","/**\n * @deprecated unused constant\n * TODO: delete in v4.0\n */\nexport const GROUP_CLASS_NAMES = [\n `_active`,\n `_disabled`,\n `_focused`,\n `_focus-visible`,\n `_hosted_dropdown_focused`,\n `ng-invalid`,\n `ng-touched`,\n `_pressed`,\n `_readonly`,\n];\n","export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {CHAR_HYPHEN, CHAR_PLUS} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nexport const TUI_PHONE_MASK: TuiTextMaskList = [\n CHAR_PLUS,\n `7`,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const TUI_TIME_MASK: TuiTextMaskList = [\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n `:`,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n","/**\n * Used as a limit for eliminating JS issues with floating point math\n */\nexport const TUI_FLOATING_PRECISION = 7;\n","import {\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n TuiMapper,\n tuiObjectFromEntries,\n} from '@taiga-ui/cdk';\n\nexport const MAX_DAY_RANGE_LENGTH_MAPPER: TuiMapper<TuiDay, TuiDay> = (\n min,\n value: TuiDayRange,\n maxLength: TuiDayLike | null,\n backwards: boolean,\n) => {\n if (!value?.isSingleDay || !maxLength) {\n return min;\n }\n\n const negativeMaxLength = tuiObjectFromEntries(\n Object.entries(maxLength).map(([key, value]) => [key, -value]),\n );\n\n const dateShift = value.from\n .append(backwards ? negativeMaxLength : maxLength)\n .append({day: !backwards ? -1 : 1});\n\n if (backwards) {\n return dateShift.dayBefore(min) ? min : dateShift;\n }\n\n if (!min) {\n return dateShift;\n }\n\n return dateShift.dayAfter(min) ? min : dateShift;\n};\n","import {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nexport const MAX_TIME_VALUES: Record<TuiTimeFormatParts, number> = {\n HH: 23,\n MM: 59,\n SS: 59,\n MS: 999,\n};\n","export const DEFAULT_ROUTER_LINK_OPTIONS = {\n fragment: ``,\n preserveFragment: true,\n replaceUrl: false,\n skipLocationChange: false,\n queryParams: null,\n useHref: false,\n target: null,\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-constants.js","sources":["../../../projects/kit/constants/date-mode-maskito-adapter.ts","../../../projects/kit/constants/date-time-separator.ts","../../../projects/kit/constants/empty-mask.ts","../../../projects/kit/constants/group-class-names.ts","../../../projects/kit/constants/mask-after-code-regexp.ts","../../../projects/kit/constants/masks.ts","../../../projects/kit/constants/math.ts","../../../projects/kit/constants/max-day-range-length-mapper.ts","../../../projects/kit/constants/max-time-values.ts","../../../projects/kit/constants/router-link-options.ts","../../../projects/kit/constants/taiga-ui-kit-constants.ts"],"sourcesContent":["import {MaskitoDateMode} from '@maskito/kit';\nimport {TuiDateMode} from '@taiga-ui/cdk';\n\nexport const TUI_DATE_MODE_MASKITO_ADAPTER: Record<TuiDateMode, MaskitoDateMode> = {\n DMY: `dd/mm/yyyy`,\n MDY: `mm/dd/yyyy`,\n YMD: `yyyy/mm/dd`,\n};\n","export const DATE_TIME_SEPARATOR = `, `;\n","import {TuiTextMaskOptions} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const EMPTY_MASK: TuiTextMaskOptions = {\n mask(): false {\n return false;\n },\n};\n","/**\n * @deprecated unused constant\n * TODO: delete in v4.0\n */\nexport const GROUP_CLASS_NAMES = [\n `_active`,\n `_disabled`,\n `_focused`,\n `_focus-visible`,\n `_hosted_dropdown_focused`,\n `ng-invalid`,\n `ng-touched`,\n `_pressed`,\n `_readonly`,\n];\n","export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {CHAR_HYPHEN, CHAR_PLUS} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nexport const TUI_PHONE_MASK: TuiTextMaskList = [\n CHAR_PLUS,\n `7`,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n ` `,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n CHAR_HYPHEN,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport const TUI_TIME_MASK: TuiTextMaskList = [\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n `:`,\n TUI_DIGIT_REGEXP,\n TUI_DIGIT_REGEXP,\n];\n","/**\n * Used as a limit for eliminating JS issues with floating point math\n */\nexport const TUI_FLOATING_PRECISION = 7;\n","import {\n TuiDay,\n TuiDayLike,\n TuiDayRange,\n TuiMapper,\n tuiObjectFromEntries,\n} from '@taiga-ui/cdk';\n\nexport const MAX_DAY_RANGE_LENGTH_MAPPER: TuiMapper<TuiDay, TuiDay> = (\n min,\n value: TuiDayRange,\n maxLength: TuiDayLike | null,\n backwards: boolean,\n) => {\n if (!value?.isSingleDay || !maxLength) {\n return min;\n }\n\n const negativeMaxLength = tuiObjectFromEntries(\n Object.entries(maxLength).map(([key, value]) => [key, -value]),\n );\n\n const dateShift = value.from\n .append(backwards ? negativeMaxLength : maxLength)\n .append({day: !backwards ? -1 : 1});\n\n if (backwards) {\n return dateShift.dayBefore(min) ? min : dateShift;\n }\n\n if (!min) {\n return dateShift;\n }\n\n return dateShift.dayAfter(min) ? min : dateShift;\n};\n","import {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nexport const MAX_TIME_VALUES: Record<TuiTimeFormatParts, number> = {\n HH: 23,\n MM: 59,\n SS: 59,\n MS: 999,\n};\n","export const DEFAULT_ROUTER_LINK_OPTIONS = {\n fragment: ``,\n preserveFragment: true,\n replaceUrl: false,\n skipLocationChange: false,\n queryParams: null,\n useHref: false,\n target: null,\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ function _isAndroid() {
16
16
  }
17
17
  /**
18
18
  * @internal
19
- * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito}
19
+ * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito}
20
20
  * Don't use it!
21
21
  * TODO: delete in v4.0
22
22
  */
@@ -145,7 +145,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
145
145
  }] } });
146
146
  /**
147
147
  * @internal
148
- * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito}
148
+ * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito}
149
149
  * Don't use it!
150
150
  * TODO: delete in v4.0
151
151
  */
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-mask.js","sources":["../../../projects/kit/directives/mask/legacy-mask.ts","../../../projects/kit/directives/mask/taiga-ui-kit-directives-mask.ts"],"sourcesContent":["/* eslint-disable */\n/**\n * Copied from\n * {@link https://github.com/text-mask/text-mask/blob/master/angular2/src/angular2TextMask.ts angular2-text-mask}\n * ___\n * \"angular2-text-mask\" is a legacy not-maintained library. It is published using legacy View Engine distribution.\n * Stackblitz fails to run \"View Engine\"-libraries in Ivy application.\n * See {@link https://github.com/Tinkoff/taiga-ui/issues/2541#issuecomment-1235516443 this comment}.\n */\nimport {\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgModule,\n OnChanges,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {\n COMPOSITION_BUFFER_MODE,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\nimport {ɵgetDOM as getDOM} from '@angular/platform-browser';\nimport {TUI_LEGACY_MASK, TuiTextMaskOptions} from '@taiga-ui/core';\nimport {createTextMaskInputElement} from 'text-mask-core';\n\n/**\n * We must check whether the agent is Android because composition events\n * behave differently between iOS and Android.\n */\nfunction _isAndroid(): boolean {\n const userAgent = getDOM() ? getDOM().getUserAgent() : '';\n return /android (\\d+)/.test(userAgent.toLowerCase());\n}\n\n/**\n * @internal\n * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito}\n * Don't use it!\n * TODO: delete in v4.0\n */\n@Directive({\n host: {\n '(input)': '_handleInput($event.target.value)',\n '(blur)': 'onTouched()',\n '(compositionstart)': '_compositionStart()',\n '(compositionend)': '_compositionEnd($event.target.value)',\n },\n selector: '[textMask]',\n exportAs: 'textMask',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MaskedInputDirective),\n multi: true,\n },\n {\n provide: TUI_LEGACY_MASK,\n useExisting: forwardRef(() => MaskedInputDirective),\n },\n ],\n})\nexport class MaskedInputDirective implements ControlValueAccessor, OnChanges {\n @Input('textMask') textMaskConfig: TuiTextMaskOptions = {\n mask: [],\n guide: true,\n placeholderChar: '_',\n pipe: undefined,\n keepCharPositions: false,\n };\n\n onChange = (_: any) => {};\n onTouched = () => {};\n\n private textMaskInputElement: any;\n private inputElement!: HTMLInputElement;\n\n /** Whether the user is creating a composition string (IME events). */\n private _composing = false;\n\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n @Optional() @Inject(COMPOSITION_BUFFER_MODE) private _compositionMode: boolean,\n ) {\n if (this._compositionMode == null) {\n this._compositionMode = !_isAndroid();\n }\n }\n\n ngOnChanges() {\n this._setupMask(true);\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(this.inputElement.value);\n }\n }\n\n writeValue(value: any) {\n this._setupMask();\n\n // set the initial value for cases where the mask is disabled\n const normalizedValue = value == null ? '' : value;\n this._renderer.setProperty(this.inputElement, 'value', normalizedValue);\n\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(value);\n }\n }\n\n registerOnChange(fn: (_: any) => void): void {\n this.onChange = fn;\n }\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this.inputElement, 'disabled', isDisabled);\n }\n\n _handleInput(value: any) {\n if (!this._compositionMode || (this._compositionMode && !this._composing)) {\n this._setupMask();\n\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(value);\n\n // get the updated value\n value = this.inputElement.value;\n this.onChange(value);\n }\n }\n }\n\n _setupMask(create = false) {\n if (!this.inputElement) {\n if (this._elementRef.nativeElement.tagName.toUpperCase() === 'INPUT') {\n // `textMask` directive is used directly on an input element\n this.inputElement = this._elementRef.nativeElement;\n } else {\n // `textMask` directive is used on an abstracted input element, `md-input-container`, etc\n this.inputElement =\n this._elementRef.nativeElement.getElementsByTagName('INPUT')[0];\n }\n }\n\n if (this.inputElement && create) {\n this.textMaskInputElement = createTextMaskInputElement(\n Object.assign({inputElement: this.inputElement}, this.textMaskConfig),\n );\n }\n }\n\n _compositionStart(): void {\n this._composing = true;\n }\n\n _compositionEnd(value: any): void {\n this._composing = false;\n this._compositionMode && this._handleInput(value);\n }\n}\n\n/**\n * @internal\n * @deprecated Use {@link https://github.com/Tinkoff/maskito Maskito}\n * Don't use it!\n * TODO: delete in v4.0\n */\n@NgModule({\n declarations: [MaskedInputDirective],\n exports: [MaskedInputDirective],\n})\nexport class TextMaskModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getDOM"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-directives-mask.js","sources":["../../../projects/kit/directives/mask/legacy-mask.ts","../../../projects/kit/directives/mask/taiga-ui-kit-directives-mask.ts"],"sourcesContent":["/* eslint-disable */\n/**\n * Copied from\n * {@link https://github.com/text-mask/text-mask/blob/master/angular2/src/angular2TextMask.ts angular2-text-mask}\n * ___\n * \"angular2-text-mask\" is a legacy not-maintained library. It is published using legacy View Engine distribution.\n * Stackblitz fails to run \"View Engine\"-libraries in Ivy application.\n * See {@link https://github.com/taiga-family/taiga-ui/issues/2541#issuecomment-1235516443 this comment}.\n */\nimport {\n Directive,\n ElementRef,\n forwardRef,\n Inject,\n Input,\n NgModule,\n OnChanges,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {\n COMPOSITION_BUFFER_MODE,\n ControlValueAccessor,\n NG_VALUE_ACCESSOR,\n} from '@angular/forms';\nimport {ɵgetDOM as getDOM} from '@angular/platform-browser';\nimport {TUI_LEGACY_MASK, TuiTextMaskOptions} from '@taiga-ui/core';\nimport {createTextMaskInputElement} from 'text-mask-core';\n\n/**\n * We must check whether the agent is Android because composition events\n * behave differently between iOS and Android.\n */\nfunction _isAndroid(): boolean {\n const userAgent = getDOM() ? getDOM().getUserAgent() : '';\n return /android (\\d+)/.test(userAgent.toLowerCase());\n}\n\n/**\n * @internal\n * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito}\n * Don't use it!\n * TODO: delete in v4.0\n */\n@Directive({\n host: {\n '(input)': '_handleInput($event.target.value)',\n '(blur)': 'onTouched()',\n '(compositionstart)': '_compositionStart()',\n '(compositionend)': '_compositionEnd($event.target.value)',\n },\n selector: '[textMask]',\n exportAs: 'textMask',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => MaskedInputDirective),\n multi: true,\n },\n {\n provide: TUI_LEGACY_MASK,\n useExisting: forwardRef(() => MaskedInputDirective),\n },\n ],\n})\nexport class MaskedInputDirective implements ControlValueAccessor, OnChanges {\n @Input('textMask') textMaskConfig: TuiTextMaskOptions = {\n mask: [],\n guide: true,\n placeholderChar: '_',\n pipe: undefined,\n keepCharPositions: false,\n };\n\n onChange = (_: any) => {};\n onTouched = () => {};\n\n private textMaskInputElement: any;\n private inputElement!: HTMLInputElement;\n\n /** Whether the user is creating a composition string (IME events). */\n private _composing = false;\n\n constructor(\n private _renderer: Renderer2,\n private _elementRef: ElementRef,\n @Optional() @Inject(COMPOSITION_BUFFER_MODE) private _compositionMode: boolean,\n ) {\n if (this._compositionMode == null) {\n this._compositionMode = !_isAndroid();\n }\n }\n\n ngOnChanges() {\n this._setupMask(true);\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(this.inputElement.value);\n }\n }\n\n writeValue(value: any) {\n this._setupMask();\n\n // set the initial value for cases where the mask is disabled\n const normalizedValue = value == null ? '' : value;\n this._renderer.setProperty(this.inputElement, 'value', normalizedValue);\n\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(value);\n }\n }\n\n registerOnChange(fn: (_: any) => void): void {\n this.onChange = fn;\n }\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._renderer.setProperty(this.inputElement, 'disabled', isDisabled);\n }\n\n _handleInput(value: any) {\n if (!this._compositionMode || (this._compositionMode && !this._composing)) {\n this._setupMask();\n\n if (this.textMaskInputElement !== undefined) {\n this.textMaskInputElement.update(value);\n\n // get the updated value\n value = this.inputElement.value;\n this.onChange(value);\n }\n }\n }\n\n _setupMask(create = false) {\n if (!this.inputElement) {\n if (this._elementRef.nativeElement.tagName.toUpperCase() === 'INPUT') {\n // `textMask` directive is used directly on an input element\n this.inputElement = this._elementRef.nativeElement;\n } else {\n // `textMask` directive is used on an abstracted input element, `md-input-container`, etc\n this.inputElement =\n this._elementRef.nativeElement.getElementsByTagName('INPUT')[0];\n }\n }\n\n if (this.inputElement && create) {\n this.textMaskInputElement = createTextMaskInputElement(\n Object.assign({inputElement: this.inputElement}, this.textMaskConfig),\n );\n }\n }\n\n _compositionStart(): void {\n this._composing = true;\n }\n\n _compositionEnd(value: any): void {\n this._composing = false;\n this._compositionMode && this._handleInput(value);\n }\n}\n\n/**\n * @internal\n * @deprecated Use {@link https://github.com/taiga-family/maskito Maskito}\n * Don't use it!\n * TODO: delete in v4.0\n */\n@NgModule({\n declarations: [MaskedInputDirective],\n exports: [MaskedInputDirective],\n})\nexport class TextMaskModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getDOM"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { MAX_TIME_VALUES, DATE_TIME_SEPARATOR } from '@taiga-ui/kit/constants';
3
3
  import { TUI_DIGIT_REGEXP } from '@taiga-ui/core';
4
4
 
5
5
  /**
6
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
6
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
7
7
  * TODO: delete in v4.0
8
8
  */
9
9
  function tuiNormalizeDateValue(dateValue, { value, min, max, dateFormat, dateSeparator }) {
@@ -14,7 +14,7 @@ function tuiNormalizeDateValue(dateValue, { value, min, max, dateFormat, dateSep
14
14
  .toString(dateFormat, dateSeparator);
15
15
  }
16
16
  /**
17
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
17
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
18
18
  * TODO: delete in v4.0
19
19
  */
20
20
  function tuiCreateAutoCorrectedDatePipe(config) {
@@ -49,7 +49,7 @@ function processRawValue(value, config) {
49
49
  }
50
50
  }
51
51
  /**
52
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead
52
+ * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead
53
53
  * TODO: delete in v4.0
54
54
  * Normalizes date in formatted string
55
55
  *
@@ -69,7 +69,7 @@ function tuiCreateAutoCorrectedDateRangePipe(config) {
69
69
  }
70
70
 
71
71
  /**
72
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead
72
+ * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead
73
73
  * TODO: delete in v4.0
74
74
  * Adjusts the entered time by omitting only suitable values for hours and minutes
75
75
  * @returns time as a string
@@ -101,7 +101,7 @@ function tuiCreateAutoCorrectedTimePipe(timeMode = `HH:MM`, maxValues = {}) {
101
101
  }
102
102
 
103
103
  /**
104
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-time DateTime} from {@link https://github.com/Tinkoff/maskito Maskito} instead
104
+ * @deprecated Use {@link https://maskito.dev/kit/date-time DateTime} from {@link https://github.com/taiga-family/maskito Maskito} instead
105
105
  * TODO: delete in v4.0
106
106
  */
107
107
  function tuiCreateAutoCorrectedDateTimePipe(configs) {
@@ -131,7 +131,7 @@ function tuiCreateAutoCorrectedDateTimePipe(configs) {
131
131
  const TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);
132
132
  const FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);
133
133
  /**
134
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
134
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
135
135
  * TODO: delete in v4.0
136
136
  */
137
137
  function tuiCreateDateMask(mode, separator) {
@@ -148,7 +148,7 @@ function tuiCreateDateMask(mode, separator) {
148
148
  }
149
149
 
150
150
  /**
151
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead
151
+ * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead
152
152
  * TODO: delete in v4.0
153
153
  */
154
154
  function tuiCreateDateRangeMask(dateMode, dateSeparator) {
@@ -173,7 +173,7 @@ function tuiCreateTimePartMask(maxPartValue, prefix) {
173
173
  return regExp;
174
174
  }
175
175
  /**
176
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead
176
+ * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead
177
177
  * TODO: delete in v4.0
178
178
  */
179
179
  function tuiCreateTimeMask(mode, maxValues = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-utils-mask.js","sources":["../../../projects/kit/utils/mask/create-auto-corrected-date-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-range-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-time-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-time-pipe.ts","../../../projects/kit/utils/mask/create-date-mask.ts","../../../projects/kit/utils/mask/create-date-range-mask.ts","../../../projects/kit/utils/mask/create-time-mask.ts","../../../projects/kit/utils/mask/taiga-ui-kit-utils-mask.ts"],"sourcesContent":["import {DATE_FILLER_LENGTH, TuiDateMode, TuiDay} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport interface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDay | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiNormalizeDateValue(\n dateValue: string,\n {value, min, max, dateFormat, dateSeparator}: TuiAutoCorrectedDatePipeConfigs,\n): string {\n return value && value.toString(dateFormat, dateSeparator) === dateValue\n ? dateValue\n : TuiDay.normalizeParse(dateValue, dateFormat)\n .dayLimit(min, max)\n .toString(dateFormat, dateSeparator);\n}\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateAutoCorrectedDatePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => {\n if (value.length !== DATE_FILLER_LENGTH) {\n return {value};\n }\n\n return {\n value: tuiNormalizeDateValue(value, config),\n };\n };\n}\n","import {\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n RANGE_SEPARATOR_CHAR,\n TuiDateMode,\n TuiDay,\n TuiDayRange,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\ninterface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDayRange | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nfunction parseWithLimit(value: string, config: TuiAutoCorrectedDatePipeConfigs): TuiDay {\n return TuiDay.normalizeParse(\n value.slice(0, DATE_FILLER_LENGTH),\n config.dateFormat,\n ).dayLimit(config.min, config.max);\n}\n\nfunction processRawValue(value: string, config: TuiAutoCorrectedDatePipeConfigs): string {\n const {dateFormat, dateSeparator} = config;\n\n switch (value.length) {\n case DATE_FILLER_LENGTH:\n return parseWithLimit(value, config).toString(dateFormat, dateSeparator);\n case DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length:\n return (\n parseWithLimit(value, config).toString(dateFormat, dateSeparator) +\n RANGE_SEPARATOR_CHAR\n );\n case DATE_RANGE_FILLER_LENGTH:\n return config.value &&\n config.value.toString(dateFormat, dateSeparator) === value\n ? value\n : TuiDayRange.sort(\n parseWithLimit(value.slice(0, DATE_FILLER_LENGTH), config),\n parseWithLimit(\n value.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length),\n config,\n ),\n ).toString(dateFormat, dateSeparator);\n default:\n return value;\n }\n}\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n * Normalizes date in formatted string\n *\n * Normalizes when:\n *\n * 1. It is a single date\n * 2. It is a single date and a separator\n * 3. It is two dates and a separator between them\n *\n * In **other** cases, the value does not change.\n *\n * @param config with min and max date\n * @return mask pipe handler that handles `min` and `max`\n */\nexport function tuiCreateAutoCorrectedDateRangePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => ({value: processRawValue(value, config)});\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n * Adjusts the entered time by omitting only suitable values for hours and minutes\n * @returns time as a string\n */\nexport function tuiCreateAutoCorrectedTimePipe(\n timeMode: TuiTimeMode = `HH:MM`,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskPipeHandler {\n const timeFormatArray = [`HH`, `MM`, `SS`, `MS`] as const;\n const safeValues = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return conformedValue => {\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n timeFormatArray.forEach(format => {\n const position = timeMode.indexOf(format);\n const maxFirstDigit = parseInt(String(safeValues[format]).slice(0, 1), 10);\n\n if (parseInt(conformedValueArr[position], 10) > maxFirstDigit) {\n conformedValueArr[position + 1] = conformedValueArr[position];\n conformedValueArr[position] = `0`;\n indexesOfPipedChars.push(position);\n }\n });\n\n const isInvalid = timeFormatArray.some(\n format =>\n parseInt(conformedValue.slice(timeMode.indexOf(format), 2), 10) >\n safeValues[format],\n );\n\n return isInvalid\n ? false\n : {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {DATE_FILLER_LENGTH, tuiIsString, TuiTimeMode} from '@taiga-ui/cdk';\nimport {\n TuiTextMaskConfig,\n TuiTextMaskOptions,\n TuiTextMaskPipeHandler,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR} from '@taiga-ui/kit/constants';\n\nimport {\n TuiAutoCorrectedDatePipeConfigs,\n tuiNormalizeDateValue,\n} from './create-auto-corrected-date-pipe';\nimport {tuiCreateAutoCorrectedTimePipe} from './create-auto-corrected-time-pipe';\n\ninterface TuiAutoCorrectedDateTimePipeConfigs extends TuiAutoCorrectedDatePipeConfigs {\n timeMode: TuiTimeMode;\n}\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-time DateTime} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateAutoCorrectedDateTimePipe(\n configs: TuiAutoCorrectedDateTimePipeConfigs,\n): TuiTextMaskPipeHandler {\n const timePipe = tuiCreateAutoCorrectedTimePipe(configs.timeMode);\n\n return value => {\n if (value.length < DATE_FILLER_LENGTH) {\n return {value};\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const formattedDate = tuiNormalizeDateValue(date, configs);\n\n if (!time) {\n return {value: formattedDate};\n }\n\n const pipedTime = timePipe(\n time,\n {} as unknown as TuiTextMaskConfig & TuiTextMaskOptions,\n );\n\n if (!pipedTime || tuiIsString(pipedTime)) {\n return false;\n }\n\n return {\n value: `${formattedDate}${DATE_TIME_SEPARATOR}${pipedTime.value}`,\n indexesOfPipedChars: pipedTime.indexesOfPipedChars\n ? pipedTime.indexesOfPipedChars.map(i => i + date.length + 2)\n : undefined,\n };\n };\n}\n","import {tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nconst TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);\nconst FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateDateMask(mode: TuiDateMode, separator: string): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n separator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n switch (mode) {\n case `YMD`:\n return [...FOUR_DIGITS, separator, ...TWO_DIGITS, separator, ...TWO_DIGITS];\n case `MDY`:\n case `DMY`:\n default:\n return [...TWO_DIGITS, separator, ...TWO_DIGITS, separator, ...FOUR_DIGITS];\n }\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskList} from '@taiga-ui/core';\n\nimport {tuiCreateDateMask} from './create-date-mask';\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateDateRangeMask(\n dateMode: TuiDateMode,\n dateSeparator: string,\n): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n dateSeparator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n const dateMask = tuiCreateDateMask(dateMode, dateSeparator);\n\n return [\n ...dateMask,\n CHAR_NO_BREAK_SPACE,\n CHAR_EN_DASH,\n CHAR_NO_BREAK_SPACE,\n ...dateMask,\n ];\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nfunction tuiCreateTimePartMask(\n maxPartValue: number,\n prefix?: string,\n): Array<RegExp | string> {\n const {length} = String(maxPartValue);\n const regExp = new Array(length).fill(TUI_DIGIT_REGEXP);\n\n if (prefix) {\n regExp.unshift(prefix);\n }\n\n return regExp;\n}\n\n/**\n * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateTimeMask(\n mode: TuiTimeMode,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskList {\n const {HH, MM, SS, MS} = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return [\n ...tuiCreateTimePartMask(HH),\n ...tuiCreateTimePartMask(MM, `:`),\n ...(mode.includes(`HH:MM:SS`) ? tuiCreateTimePartMask(SS, `:`) : []),\n ...(mode === `HH:MM:SS.MSS` ? tuiCreateTimePartMask(MS, `.`) : []),\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-utils-mask.js","sources":["../../../projects/kit/utils/mask/create-auto-corrected-date-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-range-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-time-pipe.ts","../../../projects/kit/utils/mask/create-auto-corrected-date-time-pipe.ts","../../../projects/kit/utils/mask/create-date-mask.ts","../../../projects/kit/utils/mask/create-date-range-mask.ts","../../../projects/kit/utils/mask/create-time-mask.ts","../../../projects/kit/utils/mask/taiga-ui-kit-utils-mask.ts"],"sourcesContent":["import {DATE_FILLER_LENGTH, TuiDateMode, TuiDay} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport interface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDay | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiNormalizeDateValue(\n dateValue: string,\n {value, min, max, dateFormat, dateSeparator}: TuiAutoCorrectedDatePipeConfigs,\n): string {\n return value && value.toString(dateFormat, dateSeparator) === dateValue\n ? dateValue\n : TuiDay.normalizeParse(dateValue, dateFormat)\n .dayLimit(min, max)\n .toString(dateFormat, dateSeparator);\n}\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateAutoCorrectedDatePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => {\n if (value.length !== DATE_FILLER_LENGTH) {\n return {value};\n }\n\n return {\n value: tuiNormalizeDateValue(value, config),\n };\n };\n}\n","import {\n DATE_FILLER_LENGTH,\n DATE_RANGE_FILLER_LENGTH,\n RANGE_SEPARATOR_CHAR,\n TuiDateMode,\n TuiDay,\n TuiDayRange,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue} from '@taiga-ui/core';\n\ninterface TuiAutoCorrectedDatePipeConfigs\n extends TuiWithOptionalMinMaxWithValue<TuiDayRange | null, TuiDay> {\n dateFormat: TuiDateMode;\n dateSeparator: string;\n}\n\nfunction parseWithLimit(value: string, config: TuiAutoCorrectedDatePipeConfigs): TuiDay {\n return TuiDay.normalizeParse(\n value.slice(0, DATE_FILLER_LENGTH),\n config.dateFormat,\n ).dayLimit(config.min, config.max);\n}\n\nfunction processRawValue(value: string, config: TuiAutoCorrectedDatePipeConfigs): string {\n const {dateFormat, dateSeparator} = config;\n\n switch (value.length) {\n case DATE_FILLER_LENGTH:\n return parseWithLimit(value, config).toString(dateFormat, dateSeparator);\n case DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length:\n return (\n parseWithLimit(value, config).toString(dateFormat, dateSeparator) +\n RANGE_SEPARATOR_CHAR\n );\n case DATE_RANGE_FILLER_LENGTH:\n return config.value &&\n config.value.toString(dateFormat, dateSeparator) === value\n ? value\n : TuiDayRange.sort(\n parseWithLimit(value.slice(0, DATE_FILLER_LENGTH), config),\n parseWithLimit(\n value.slice(DATE_FILLER_LENGTH + RANGE_SEPARATOR_CHAR.length),\n config,\n ),\n ).toString(dateFormat, dateSeparator);\n default:\n return value;\n }\n}\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n * Normalizes date in formatted string\n *\n * Normalizes when:\n *\n * 1. It is a single date\n * 2. It is a single date and a separator\n * 3. It is two dates and a separator between them\n *\n * In **other** cases, the value does not change.\n *\n * @param config with min and max date\n * @return mask pipe handler that handles `min` and `max`\n */\nexport function tuiCreateAutoCorrectedDateRangePipe(\n config: TuiAutoCorrectedDatePipeConfigs,\n): TuiTextMaskPipeHandler {\n return value => ({value: processRawValue(value, config)});\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n * Adjusts the entered time by omitting only suitable values for hours and minutes\n * @returns time as a string\n */\nexport function tuiCreateAutoCorrectedTimePipe(\n timeMode: TuiTimeMode = `HH:MM`,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskPipeHandler {\n const timeFormatArray = [`HH`, `MM`, `SS`, `MS`] as const;\n const safeValues = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return conformedValue => {\n const indexesOfPipedChars: number[] = [];\n const conformedValueArr = conformedValue.split(``);\n\n timeFormatArray.forEach(format => {\n const position = timeMode.indexOf(format);\n const maxFirstDigit = parseInt(String(safeValues[format]).slice(0, 1), 10);\n\n if (parseInt(conformedValueArr[position], 10) > maxFirstDigit) {\n conformedValueArr[position + 1] = conformedValueArr[position];\n conformedValueArr[position] = `0`;\n indexesOfPipedChars.push(position);\n }\n });\n\n const isInvalid = timeFormatArray.some(\n format =>\n parseInt(conformedValue.slice(timeMode.indexOf(format), 2), 10) >\n safeValues[format],\n );\n\n return isInvalid\n ? false\n : {\n value: conformedValueArr.join(``),\n indexesOfPipedChars,\n };\n };\n}\n","import {DATE_FILLER_LENGTH, tuiIsString, TuiTimeMode} from '@taiga-ui/cdk';\nimport {\n TuiTextMaskConfig,\n TuiTextMaskOptions,\n TuiTextMaskPipeHandler,\n} from '@taiga-ui/core';\nimport {DATE_TIME_SEPARATOR} from '@taiga-ui/kit/constants';\n\nimport {\n TuiAutoCorrectedDatePipeConfigs,\n tuiNormalizeDateValue,\n} from './create-auto-corrected-date-pipe';\nimport {tuiCreateAutoCorrectedTimePipe} from './create-auto-corrected-time-pipe';\n\ninterface TuiAutoCorrectedDateTimePipeConfigs extends TuiAutoCorrectedDatePipeConfigs {\n timeMode: TuiTimeMode;\n}\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date-time DateTime} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateAutoCorrectedDateTimePipe(\n configs: TuiAutoCorrectedDateTimePipeConfigs,\n): TuiTextMaskPipeHandler {\n const timePipe = tuiCreateAutoCorrectedTimePipe(configs.timeMode);\n\n return value => {\n if (value.length < DATE_FILLER_LENGTH) {\n return {value};\n }\n\n const [date, time] = value.split(DATE_TIME_SEPARATOR);\n\n const formattedDate = tuiNormalizeDateValue(date, configs);\n\n if (!time) {\n return {value: formattedDate};\n }\n\n const pipedTime = timePipe(\n time,\n {} as unknown as TuiTextMaskConfig & TuiTextMaskOptions,\n );\n\n if (!pipedTime || tuiIsString(pipedTime)) {\n return false;\n }\n\n return {\n value: `${formattedDate}${DATE_TIME_SEPARATOR}${pipedTime.value}`,\n indexesOfPipedChars: pipedTime.indexesOfPipedChars\n ? pipedTime.indexesOfPipedChars.map(i => i + date.length + 2)\n : undefined,\n };\n };\n}\n","import {tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\n\nconst TWO_DIGITS = new Array(2).fill(TUI_DIGIT_REGEXP);\nconst FOUR_DIGITS = new Array(4).fill(TUI_DIGIT_REGEXP);\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateDateMask(mode: TuiDateMode, separator: string): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n separator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n switch (mode) {\n case `YMD`:\n return [...FOUR_DIGITS, separator, ...TWO_DIGITS, separator, ...TWO_DIGITS];\n case `MDY`:\n case `DMY`:\n default:\n return [...TWO_DIGITS, separator, ...TWO_DIGITS, separator, ...FOUR_DIGITS];\n }\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert, TuiDateMode} from '@taiga-ui/cdk';\nimport {TuiTextMaskList} from '@taiga-ui/core';\n\nimport {tuiCreateDateMask} from './create-date-mask';\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateDateRangeMask(\n dateMode: TuiDateMode,\n dateSeparator: string,\n): TuiTextMaskList {\n ngDevMode &&\n tuiAssert.assert(\n dateSeparator.length === 1,\n `Separator should consist of only 1 symbol`,\n );\n\n const dateMask = tuiCreateDateMask(dateMode, dateSeparator);\n\n return [\n ...dateMask,\n CHAR_NO_BREAK_SPACE,\n CHAR_EN_DASH,\n CHAR_NO_BREAK_SPACE,\n ...dateMask,\n ];\n}\n","import {TuiTimeMode} from '@taiga-ui/cdk';\nimport {TUI_DIGIT_REGEXP, TuiTextMaskList} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\n\nfunction tuiCreateTimePartMask(\n maxPartValue: number,\n prefix?: string,\n): Array<RegExp | string> {\n const {length} = String(maxPartValue);\n const regExp = new Array(length).fill(TUI_DIGIT_REGEXP);\n\n if (prefix) {\n regExp.unshift(prefix);\n }\n\n return regExp;\n}\n\n/**\n * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead\n * TODO: delete in v4.0\n */\nexport function tuiCreateTimeMask(\n mode: TuiTimeMode,\n maxValues: Partial<Record<TuiTimeFormatParts, number>> = {},\n): TuiTextMaskList {\n const {HH, MM, SS, MS} = {\n ...MAX_TIME_VALUES,\n ...maxValues,\n };\n\n return [\n ...tuiCreateTimePartMask(HH),\n ...tuiCreateTimePartMask(MM, `:`),\n ...(mode.includes(`HH:MM:SS`) ? tuiCreateTimePartMask(SS, `:`) : []),\n ...(mode === `HH:MM:SS.MSS` ? tuiCreateTimePartMask(MS, `.`) : []),\n ];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/kit",
3
- "version": "3.39.1-dev.main.f92cc75",
3
+ "version": "3.40.0-canary.f82bb42",
4
4
  "description": "Taiga UI Angular main components kit",
5
5
  "keywords": [
6
6
  "angular",
@@ -9,14 +9,14 @@
9
9
  "service",
10
10
  "directive"
11
11
  ],
12
- "homepage": "https://github.com/tinkoff/taiga-ui",
13
- "repository": "https://github.com/tinkoff/taiga-ui",
12
+ "homepage": "https://github.com/taiga-family/taiga-ui",
13
+ "repository": "https://github.com/taiga-family/taiga-ui",
14
14
  "license": "Apache-2.0",
15
15
  "dependencies": {
16
16
  "@maskito/angular": "1.4.0",
17
17
  "@maskito/core": "1.4.0",
18
18
  "@maskito/kit": "1.4.0",
19
- "@ng-web-apis/intersection-observer": "3.1.1",
19
+ "@ng-web-apis/intersection-observer": "3.1.2",
20
20
  "text-mask-core": "5.1.2",
21
21
  "tslib": ">=2.0.0"
22
22
  },
@@ -28,9 +28,9 @@
28
28
  "@ng-web-apis/common": ">=3.0.0",
29
29
  "@ng-web-apis/mutation-observer": ">=3.0.0",
30
30
  "@ng-web-apis/resize-observer": ">=3.0.0",
31
- "@taiga-ui/cdk": ">=3.39.1",
32
- "@taiga-ui/core": ">=3.39.1",
33
- "@taiga-ui/i18n": ">=3.39.1",
31
+ "@taiga-ui/cdk": ">=3.40.0",
32
+ "@taiga-ui/core": ">=3.40.0",
33
+ "@taiga-ui/i18n": ">=3.40.0",
34
34
  "@tinkoff/ng-polymorpheus": ">=4.0.0",
35
35
  "rxjs": ">=6.0.0"
36
36
  },
@@ -1,7 +1,7 @@
1
1
  import { TuiDateMode, TuiDay } from '@taiga-ui/cdk';
2
2
  import { TuiTextMaskPipeHandler, TuiWithOptionalMinMaxWithValue } from '@taiga-ui/core';
3
3
  /**
4
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
4
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
5
5
  * TODO: delete in v4.0
6
6
  */
7
7
  export interface TuiAutoCorrectedDatePipeConfigs extends TuiWithOptionalMinMaxWithValue<TuiDay | null, TuiDay> {
@@ -9,12 +9,12 @@ export interface TuiAutoCorrectedDatePipeConfigs extends TuiWithOptionalMinMaxWi
9
9
  dateSeparator: string;
10
10
  }
11
11
  /**
12
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
12
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
13
13
  * TODO: delete in v4.0
14
14
  */
15
15
  export declare function tuiNormalizeDateValue(dateValue: string, { value, min, max, dateFormat, dateSeparator }: TuiAutoCorrectedDatePipeConfigs): string;
16
16
  /**
17
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
17
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
18
18
  * TODO: delete in v4.0
19
19
  */
20
20
  export declare function tuiCreateAutoCorrectedDatePipe(config: TuiAutoCorrectedDatePipeConfigs): TuiTextMaskPipeHandler;
@@ -5,7 +5,7 @@ interface TuiAutoCorrectedDatePipeConfigs extends TuiWithOptionalMinMaxWithValue
5
5
  dateSeparator: string;
6
6
  }
7
7
  /**
8
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead
8
+ * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead
9
9
  * TODO: delete in v4.0
10
10
  * Normalizes date in formatted string
11
11
  *
@@ -5,7 +5,7 @@ interface TuiAutoCorrectedDateTimePipeConfigs extends TuiAutoCorrectedDatePipeCo
5
5
  timeMode: TuiTimeMode;
6
6
  }
7
7
  /**
8
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-time DateTime} from {@link https://github.com/Tinkoff/maskito Maskito} instead
8
+ * @deprecated Use {@link https://maskito.dev/kit/date-time DateTime} from {@link https://github.com/taiga-family/maskito Maskito} instead
9
9
  * TODO: delete in v4.0
10
10
  */
11
11
  export declare function tuiCreateAutoCorrectedDateTimePipe(configs: TuiAutoCorrectedDateTimePipeConfigs): TuiTextMaskPipeHandler;
@@ -2,7 +2,7 @@ import { TuiTimeMode } from '@taiga-ui/cdk';
2
2
  import { TuiTextMaskPipeHandler } from '@taiga-ui/core';
3
3
  import { TuiTimeFormatParts } from '@taiga-ui/kit/types';
4
4
  /**
5
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead
5
+ * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead
6
6
  * TODO: delete in v4.0
7
7
  * Adjusts the entered time by omitting only suitable values for hours and minutes
8
8
  * @returns time as a string
@@ -1,7 +1,7 @@
1
1
  import { TuiDateMode } from '@taiga-ui/cdk';
2
2
  import { TuiTextMaskList } from '@taiga-ui/core';
3
3
  /**
4
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date Date} from {@link https://github.com/Tinkoff/maskito Maskito} instead
4
+ * @deprecated Use {@link https://maskito.dev/kit/date Date} from {@link https://github.com/taiga-family/maskito Maskito} instead
5
5
  * TODO: delete in v4.0
6
6
  */
7
7
  export declare function tuiCreateDateMask(mode: TuiDateMode, separator: string): TuiTextMaskList;
@@ -1,7 +1,7 @@
1
1
  import { TuiDateMode } from '@taiga-ui/cdk';
2
2
  import { TuiTextMaskList } from '@taiga-ui/core';
3
3
  /**
4
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/date-range DateRange} from {@link https://github.com/Tinkoff/maskito Maskito} instead
4
+ * @deprecated Use {@link https://maskito.dev/kit/date-range DateRange} from {@link https://github.com/taiga-family/maskito Maskito} instead
5
5
  * TODO: delete in v4.0
6
6
  */
7
7
  export declare function tuiCreateDateRangeMask(dateMode: TuiDateMode, dateSeparator: string): TuiTextMaskList;
@@ -2,7 +2,7 @@ import { TuiTimeMode } from '@taiga-ui/cdk';
2
2
  import { TuiTextMaskList } from '@taiga-ui/core';
3
3
  import { TuiTimeFormatParts } from '@taiga-ui/kit/types';
4
4
  /**
5
- * @deprecated Use {@link https://tinkoff.github.io/maskito/kit/time Time} from {@link https://github.com/Tinkoff/maskito Maskito} instead
5
+ * @deprecated Use {@link https://maskito.dev/kit/time Time} from {@link https://github.com/taiga-family/maskito Maskito} instead
6
6
  * TODO: delete in v4.0
7
7
  */
8
8
  export declare function tuiCreateTimeMask(mode: TuiTimeMode, maxValues?: Partial<Record<TuiTimeFormatParts, number>>): TuiTextMaskList;