@taiga-ui/core 4.52.0-canary.6043e8f → 4.52.0-canary.61fea47

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 (289) hide show
  1. package/README.md +1 -1
  2. package/classes/accessors.d.ts +1 -1
  3. package/components/button/button.directive.d.ts +2 -2
  4. package/components/calendar/calendar-sheet.options.d.ts +1 -3
  5. package/{pipes/calendar-sheet → components/calendar}/calendar-sheet.pipe.d.ts +1 -1
  6. package/components/calendar/calendar-spin.component.d.ts +1 -0
  7. package/components/calendar/calendar-year.component.d.ts +1 -1
  8. package/components/calendar/index.d.ts +2 -0
  9. package/components/cell/cell.directive.d.ts +9 -0
  10. package/components/cell/cell.options.d.ts +6 -0
  11. package/components/cell/index.d.ts +2 -0
  12. package/components/data-list/data-list.component.d.ts +8 -12
  13. package/components/data-list/data-list.d.ts +2 -4
  14. package/components/data-list/data-list.tokens.d.ts +1 -5
  15. package/components/data-list/index.d.ts +0 -2
  16. package/components/data-list/opt-group.directive.d.ts +2 -2
  17. package/components/data-list/option/option-content.d.ts +6 -8
  18. package/components/data-list/option/option.directive.d.ts +7 -8
  19. package/components/error/error.component.d.ts +1 -1
  20. package/components/expand/expand.component.d.ts +9 -28
  21. package/components/expand/index.d.ts +0 -2
  22. package/components/index.d.ts +2 -3
  23. package/components/link/link.directive.d.ts +2 -2
  24. package/components/link/link.options.d.ts +1 -3
  25. package/components/loader/loader.component.d.ts +7 -7
  26. package/components/loader/loader.options.d.ts +1 -3
  27. package/components/notification/index.d.ts +3 -0
  28. package/components/notification/notification.component.d.ts +14 -0
  29. package/components/notification/notification.d.ts +3 -0
  30. package/components/notification/notification.directive.d.ts +7 -12
  31. package/components/notification/notification.options.d.ts +10 -7
  32. package/components/notification/notification.service.d.ts +17 -0
  33. package/components/root/root.component.d.ts +2 -3
  34. package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
  35. package/components/scrollbar/scrollbar.component.d.ts +2 -2
  36. package/components/scrollbar/scrollbar.directive.d.ts +2 -2
  37. package/components/spin-button/spin-button.component.d.ts +8 -9
  38. package/components/textfield/index.d.ts +1 -3
  39. package/components/textfield/textfield-multi/textfield-item.component.d.ts +3 -2
  40. package/components/textfield/textfield-multi/textfield-multi.component.d.ts +9 -14
  41. package/components/textfield/textfield.component.d.ts +23 -37
  42. package/components/textfield/textfield.d.ts +2 -3
  43. package/components/textfield/textfield.directive.d.ts +13 -20
  44. package/components/textfield/textfield.options.d.ts +8 -11
  45. package/{directives → components}/title/title.directive.d.ts +2 -3
  46. package/directives/appearance/appearance.directive.d.ts +1 -1
  47. package/directives/appearance/appearance.options.d.ts +1 -1
  48. package/directives/date-format/date-format.directive.d.ts +3 -7
  49. package/directives/group/group.directive.d.ts +7 -7
  50. package/directives/group/group.options.d.ts +1 -3
  51. package/directives/index.d.ts +0 -5
  52. package/directives/number-format/number-format.directive.d.ts +3 -7
  53. package/fesm2022/taiga-ui-core-classes.mjs +6 -8
  54. package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
  55. package/fesm2022/taiga-ui-core-components-button.mjs +11 -18
  56. package/fesm2022/taiga-ui-core-components-button.mjs.map +1 -1
  57. package/fesm2022/taiga-ui-core-components-calendar.mjs +124 -26
  58. package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-core-components-cell.mjs +45 -0
  60. package/fesm2022/taiga-ui-core-components-cell.mjs.map +1 -0
  61. package/fesm2022/taiga-ui-core-components-data-list.mjs +46 -206
  62. package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-core-components-error.mjs +4 -3
  64. package/fesm2022/taiga-ui-core-components-error.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-core-components-expand.mjs +33 -131
  66. package/fesm2022/taiga-ui-core-components-expand.mjs.map +1 -1
  67. package/fesm2022/taiga-ui-core-components-icon.mjs +1 -2
  68. package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
  69. package/fesm2022/taiga-ui-core-components-label.mjs +6 -9
  70. package/fesm2022/taiga-ui-core-components-label.mjs.map +1 -1
  71. package/fesm2022/taiga-ui-core-components-link.mjs +14 -23
  72. package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
  73. package/fesm2022/taiga-ui-core-components-loader.mjs +14 -32
  74. package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
  75. package/fesm2022/taiga-ui-core-components-notification.mjs +108 -66
  76. package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
  77. package/fesm2022/taiga-ui-core-components-root.mjs +6 -20
  78. package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-core-components-scrollbar.mjs +36 -45
  80. package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-core-components-spin-button.mjs +14 -27
  82. package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-core-components-textfield.mjs +171 -388
  84. package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-core-components-title.mjs +37 -0
  86. package/fesm2022/taiga-ui-core-components-title.mjs.map +1 -0
  87. package/fesm2022/taiga-ui-core-components.mjs +2 -3
  88. package/fesm2022/taiga-ui-core-components.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-core-directives-appearance.mjs +12 -15
  90. package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-core-directives-date-format.mjs +24 -18
  92. package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-core-directives-group.mjs +23 -38
  94. package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-core-directives-icons.mjs +8 -11
  96. package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
  97. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +3 -6
  98. package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-core-directives-number-format.mjs +30 -18
  100. package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-core-directives.mjs +0 -5
  102. package/fesm2022/taiga-ui-core-directives.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-core-pipes-format-number.mjs +19 -13
  104. package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-core-pipes.mjs +0 -7
  106. package/fesm2022/taiga-ui-core-pipes.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-core-portals-alert.mjs +73 -0
  108. package/fesm2022/taiga-ui-core-portals-alert.mjs.map +1 -0
  109. package/fesm2022/taiga-ui-core-portals-dialog.mjs +158 -0
  110. package/fesm2022/taiga-ui-core-portals-dialog.mjs.map +1 -0
  111. package/fesm2022/{taiga-ui-core-directives-dropdown.mjs → taiga-ui-core-portals-dropdown.mjs} +135 -287
  112. package/fesm2022/taiga-ui-core-portals-dropdown.mjs.map +1 -0
  113. package/fesm2022/{taiga-ui-core-directives-hint.mjs → taiga-ui-core-portals-hint.mjs} +118 -218
  114. package/fesm2022/taiga-ui-core-portals-hint.mjs.map +1 -0
  115. package/fesm2022/taiga-ui-core-portals-modal.mjs +89 -0
  116. package/fesm2022/taiga-ui-core-portals-modal.mjs.map +1 -0
  117. package/fesm2022/taiga-ui-core-portals-popup.mjs +56 -0
  118. package/fesm2022/taiga-ui-core-portals-popup.mjs.map +1 -0
  119. package/fesm2022/taiga-ui-core-portals.mjs +11 -0
  120. package/fesm2022/taiga-ui-core-portals.mjs.map +1 -0
  121. package/fesm2022/taiga-ui-core-services.mjs +3 -23
  122. package/fesm2022/taiga-ui-core-services.mjs.map +1 -1
  123. package/fesm2022/taiga-ui-core-tokens.mjs +22 -25
  124. package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
  125. package/fesm2022/taiga-ui-core-utils-format.mjs +1 -22
  126. package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
  127. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs +8 -17
  128. package/fesm2022/taiga-ui-core-utils-miscellaneous.mjs.map +1 -1
  129. package/fesm2022/taiga-ui-core.mjs +1 -0
  130. package/fesm2022/taiga-ui-core.mjs.map +1 -1
  131. package/index.d.ts +1 -0
  132. package/package.json +77 -98
  133. package/pipes/format-number/format-number.pipe.d.ts +6 -4
  134. package/pipes/index.d.ts +0 -7
  135. package/portals/alert/alert.directive.d.ts +11 -0
  136. package/portals/alert/alert.service.d.ts +12 -0
  137. package/portals/alert/index.d.ts +2 -0
  138. package/portals/dialog/dialog.component.d.ts +14 -0
  139. package/portals/dialog/dialog.directive.d.ts +8 -0
  140. package/{components → portals}/dialog/dialog.factory.d.ts +1 -1
  141. package/portals/dialog/dialog.options.d.ts +25 -0
  142. package/{components/dialog/dialog-close.service.d.ts → portals/dialog/dialog.providers.d.ts} +2 -0
  143. package/portals/dialog/dialog.service.d.ts +10 -0
  144. package/portals/dialog/index.d.ts +6 -0
  145. package/portals/dropdown/dropdown-content.directive.d.ts +9 -0
  146. package/{directives → portals}/dropdown/dropdown-hover.directive.d.ts +5 -10
  147. package/{directives → portals}/dropdown/dropdown-hover.options.d.ts +1 -3
  148. package/{directives → portals}/dropdown/dropdown-manual.directive.d.ts +2 -2
  149. package/portals/dropdown/dropdown-open.directive.d.ts +30 -0
  150. package/{directives → portals}/dropdown/dropdown-position-sided.directive.d.ts +3 -3
  151. package/{directives → portals}/dropdown/dropdown-position.directive.d.ts +5 -5
  152. package/{directives → portals}/dropdown/dropdown-selection.directive.d.ts +4 -5
  153. package/{directives → portals}/dropdown/dropdown.bindings.d.ts +0 -1
  154. package/{directives → portals}/dropdown/dropdown.d.ts +2 -3
  155. package/{directives → portals}/dropdown/dropdown.directive.d.ts +6 -8
  156. package/{directives → portals}/dropdown/index.d.ts +1 -4
  157. package/{directives → portals}/hint/hint-describe.directive.d.ts +4 -6
  158. package/{directives → portals}/hint/hint-host.directive.d.ts +2 -2
  159. package/{directives → portals}/hint/hint-hover.directive.d.ts +3 -4
  160. package/{directives → portals}/hint/hint-manual.directive.d.ts +2 -2
  161. package/{directives → portals}/hint/hint-options.directive.d.ts +3 -3
  162. package/{directives → portals}/hint/hint-overflow.directive.d.ts +2 -2
  163. package/{directives → portals}/hint/hint-position.directive.d.ts +4 -5
  164. package/{directives → portals}/hint/hint-unstyled.component.d.ts +2 -7
  165. package/portals/hint/hint.component.d.ts +29 -0
  166. package/portals/hint/hint.directive.d.ts +24 -0
  167. package/{directives → portals}/hint/index.d.ts +0 -2
  168. package/portals/index.d.ts +6 -0
  169. package/portals/modal/index.d.ts +2 -0
  170. package/portals/modal/modal.component.d.ts +17 -0
  171. package/portals/modal/modal.service.d.ts +13 -0
  172. package/portals/popup/popup.directive.d.ts +12 -0
  173. package/{directives → portals}/popup/popup.service.d.ts +1 -1
  174. package/{directives → portals}/popup/popups.component.d.ts +2 -2
  175. package/services/index.d.ts +0 -1
  176. package/styles/components/link.less +1 -0
  177. package/styles/mixins/appearance.less +1 -1
  178. package/styles/mixins/mixins.less +0 -5
  179. package/styles/mixins/mixins.scss +0 -5
  180. package/styles/mixins/slider.less +21 -16
  181. package/styles/mixins/slider.scss +1 -2
  182. package/styles/theme/variables.less +2 -4
  183. package/tokens/common-icons.d.ts +1 -3
  184. package/tokens/date-format.d.ts +2 -3
  185. package/tokens/i18n.d.ts +7 -7
  186. package/tokens/icon-resolver.d.ts +0 -4
  187. package/tokens/icons.d.ts +0 -4
  188. package/tokens/number-format.d.ts +2 -3
  189. package/types/index.d.ts +0 -3
  190. package/types/size.d.ts +0 -11
  191. package/utils/format/index.d.ts +0 -1
  192. package/utils/miscellaneous/get-duration.d.ts +2 -0
  193. package/utils/miscellaneous/index.d.ts +1 -1
  194. package/components/alert/alert.component.d.ts +0 -15
  195. package/components/alert/alert.directive.d.ts +0 -7
  196. package/components/alert/alert.interfaces.d.ts +0 -12
  197. package/components/alert/alert.service.d.ts +0 -7
  198. package/components/alert/alert.tokens.d.ts +0 -12
  199. package/components/alert/alerts.component.d.ts +0 -12
  200. package/components/alert/index.d.ts +0 -6
  201. package/components/data-list/data-list.directive.d.ts +0 -7
  202. package/components/data-list/option/option-legacy.component.d.ts +0 -24
  203. package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
  204. package/components/dialog/dialog.component.d.ts +0 -20
  205. package/components/dialog/dialog.directive.d.ts +0 -7
  206. package/components/dialog/dialog.interfaces.d.ts +0 -34
  207. package/components/dialog/dialog.service.d.ts +0 -7
  208. package/components/dialog/dialog.tokens.d.ts +0 -15
  209. package/components/dialog/dialogs.component.d.ts +0 -8
  210. package/components/dialog/index.d.ts +0 -8
  211. package/components/expand/expand-content.directive.d.ts +0 -8
  212. package/components/expand/expand.d.ts +0 -6
  213. package/components/fullscreen/fullscreen.component.d.ts +0 -14
  214. package/components/fullscreen/index.d.ts +0 -1
  215. package/components/textfield/select.directive.d.ts +0 -19
  216. package/components/textfield/textfield-dropdown.directive.d.ts +0 -16
  217. package/directives/dropdown/dropdown-open-legacy.directive.d.ts +0 -12
  218. package/directives/dropdown/dropdown-open.directive.d.ts +0 -33
  219. package/directives/dropdown/dropdown-portal.directive.d.ts +0 -14
  220. package/directives/dropdown/dropdown.service.d.ts +0 -6
  221. package/directives/dropdown/dropdowns.component.d.ts +0 -9
  222. package/directives/hint/hint.component.d.ts +0 -30
  223. package/directives/hint/hint.directive.d.ts +0 -26
  224. package/directives/hint/hint.service.d.ts +0 -13
  225. package/directives/hint/hints.component.d.ts +0 -12
  226. package/directives/popup/popup.directive.d.ts +0 -11
  227. package/directives/surface/index.d.ts +0 -1
  228. package/directives/surface/surface.directive.d.ts +0 -8
  229. package/fesm2022/taiga-ui-core-components-alert.mjs +0 -149
  230. package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
  231. package/fesm2022/taiga-ui-core-components-dialog.mjs +0 -229
  232. package/fesm2022/taiga-ui-core-components-dialog.mjs.map +0 -1
  233. package/fesm2022/taiga-ui-core-components-fullscreen.mjs +0 -77
  234. package/fesm2022/taiga-ui-core-components-fullscreen.mjs.map +0 -1
  235. package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +0 -1
  236. package/fesm2022/taiga-ui-core-directives-hint.mjs.map +0 -1
  237. package/fesm2022/taiga-ui-core-directives-popup.mjs +0 -63
  238. package/fesm2022/taiga-ui-core-directives-popup.mjs.map +0 -1
  239. package/fesm2022/taiga-ui-core-directives-surface.mjs +0 -50
  240. package/fesm2022/taiga-ui-core-directives-surface.mjs.map +0 -1
  241. package/fesm2022/taiga-ui-core-directives-title.mjs +0 -43
  242. package/fesm2022/taiga-ui-core-directives-title.mjs.map +0 -1
  243. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -25
  244. package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +0 -1
  245. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -94
  246. package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +0 -1
  247. package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -32
  248. package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +0 -1
  249. package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -28
  250. package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +0 -1
  251. package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -29
  252. package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +0 -1
  253. package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -29
  254. package/fesm2022/taiga-ui-core-pipes-month.mjs.map +0 -1
  255. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -36
  256. package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +0 -1
  257. package/pipes/auto-color/auto-color.pipe.d.ts +0 -7
  258. package/pipes/auto-color/index.d.ts +0 -1
  259. package/pipes/calendar-sheet/index.d.ts +0 -1
  260. package/pipes/calendar-sheet/utils.d.ts +0 -20
  261. package/pipes/flag/flag.pipe.d.ts +0 -14
  262. package/pipes/flag/index.d.ts +0 -1
  263. package/pipes/format-date/format-date.pipe.d.ts +0 -9
  264. package/pipes/format-date/index.d.ts +0 -1
  265. package/pipes/initials/index.d.ts +0 -1
  266. package/pipes/initials/initials.pipe.d.ts +0 -7
  267. package/pipes/month/index.d.ts +0 -1
  268. package/pipes/month/month.pipe.d.ts +0 -10
  269. package/pipes/order-week-days/index.d.ts +0 -1
  270. package/services/format-date.service.d.ts +0 -8
  271. package/types/portal-item.d.ts +0 -9
  272. package/types/range-state.d.ts +0 -4
  273. package/types/value-content-context.d.ts +0 -4
  274. package/utils/format/string-hash-to-hsl.d.ts +0 -6
  275. package/utils/miscellaneous/to-animation-options.d.ts +0 -4
  276. /package/{pipes/order-week-days → components/calendar}/order-week-days.pipe.d.ts +0 -0
  277. /package/{directives → components}/title/index.d.ts +0 -0
  278. /package/{directives → portals}/dropdown/dropdown-context.directive.d.ts +0 -0
  279. /package/{directives → portals}/dropdown/dropdown-limit-width.d.ts +0 -0
  280. /package/{directives → portals}/dropdown/dropdown-options.directive.d.ts +0 -0
  281. /package/{directives → portals}/dropdown/dropdown.component.d.ts +0 -0
  282. /package/{directives → portals}/dropdown/dropdown.driver.d.ts +0 -0
  283. /package/{directives → portals}/dropdown/dropdown.providers.d.ts +0 -0
  284. /package/{directives → portals}/dropdown/with-dropdown-open.directive.d.ts +0 -0
  285. /package/{directives → portals}/hint/hint-driver.directive.d.ts +0 -0
  286. /package/{directives → portals}/hint/hint-pointer.directive.d.ts +0 -0
  287. /package/{directives → portals}/hint/hint.d.ts +0 -0
  288. /package/{directives → portals}/hint/hint.providers.d.ts +0 -0
  289. /package/{directives → portals}/popup/index.d.ts +0 -0
@@ -1,14 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class TuiFullscreen {
4
- private readonly root?;
5
- private readonly doc;
6
- protected readonly open: import("@angular/core").WritableSignal<boolean>;
7
- readonly opened: EventEmitter<boolean>;
8
- options?: FullscreenOptions;
9
- set fullscreen(open: boolean);
10
- protected closedByEscape(event: Event): void;
11
- private fullscreenState;
12
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiFullscreen, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiFullscreen, "[tuiFullscreen]", never, { "options": { "alias": "tuiFullscreenOptions"; "required": false; }; "fullscreen": { "alias": "tuiFullscreen"; "required": false; }; }, { "opened": "tuiFullscreenChange"; }, never, ["*"], true, never>;
14
- }
@@ -1 +0,0 @@
1
- export * from './fullscreen.component';
@@ -1,19 +0,0 @@
1
- import { TuiTextfieldBase } from './textfield.directive';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@taiga-ui/cdk/directives/native-validator";
4
- import * as i2 from "@taiga-ui/core/directives/appearance";
5
- /**
6
- * @deprecated use {@link TuiSelect} from @taiga-ui/kit instead, drop in v5
7
- */
8
- export declare class TuiSelect<T> extends TuiTextfieldBase<T> {
9
- private readonly nav;
10
- private readonly doc;
11
- placeholder: string;
12
- setValue(value: T): void;
13
- focus(): void;
14
- protected get ariaLabel(): string | null;
15
- protected get stringified(): string;
16
- protected onCopy(): Promise<void>;
17
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiSelect<any>, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiSelect<any>, "select[tuiTextfield]", never, { "placeholder": { "alias": "placeholder"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiNativeValidator; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiAppearance; inputs: {}; outputs: {}; }]>;
19
- }
@@ -1,16 +0,0 @@
1
- import { type OnDestroy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class TuiTextfieldDropdownDirective implements OnDestroy {
4
- private readonly directive;
5
- constructor();
6
- ngOnDestroy(): void;
7
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiTextfieldDropdownDirective, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTextfieldDropdownDirective, "ng-template[tuiTextfieldDropdown]", never, {}, {}, never, never, true, never>;
9
- }
10
- /**
11
- * @deprecated remove in v5
12
- */
13
- export declare class TuiWithTextfieldDropdown {
14
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiWithTextfieldDropdown, never>;
15
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiWithTextfieldDropdown, never, never, {}, {}, never, never, true, never>;
16
- }
@@ -1,12 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- /**
3
- * @deprecated TODO: remove in v.5 when legacy controls are dropped
4
- */
5
- export declare class TuiDropdownOpenLegacy {
6
- private readonly openStateSub;
7
- readonly tuiDropdownOpenChange: import("rxjs").Observable<boolean>;
8
- set tuiDropdownOpen(open: boolean);
9
- emitOpenChange(open: boolean): void;
10
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownOpenLegacy, never>;
11
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownOpenLegacy, "[tuiDropdownOpen]:not([tuiDropdown]),[tuiDropdownOpenChange]:not([tuiDropdown])", never, { "tuiDropdownOpen": { "alias": "tuiDropdownOpen"; "required": false; }; }, { "tuiDropdownOpenChange": "tuiDropdownOpenChange"; }, never, never, true, never>;
12
- }
@@ -1,33 +0,0 @@
1
- import { EventEmitter, type OnChanges } from '@angular/core';
2
- import { TuiDropdownDriver } from './dropdown.driver';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@taiga-ui/cdk/directives/obscured";
5
- import * as i2 from "@taiga-ui/cdk/directives/active-zone";
6
- export declare class TuiDropdownOpen implements OnChanges {
7
- private readonly dropdownHost?;
8
- private readonly directive;
9
- private readonly el;
10
- private readonly obscured;
11
- private readonly activeZone;
12
- private readonly dropdown;
13
- tuiDropdownEnabled: boolean;
14
- tuiDropdownOpen: boolean | '';
15
- readonly tuiDropdownOpenChange: EventEmitter<boolean>;
16
- readonly driver: TuiDropdownDriver;
17
- readonly sub: import("rxjs").Subscription;
18
- readonly sync: import("rxjs").Subscription;
19
- ngOnChanges(): void;
20
- toggle(open: boolean): void;
21
- protected onEsc(event: KeyboardEvent): void;
22
- protected onClick(target: HTMLElement): void;
23
- protected onArrow(event: KeyboardEvent, up: boolean): void;
24
- protected onKeydown(event: KeyboardEvent): void;
25
- private get host();
26
- private get editable();
27
- private get focused();
28
- private update;
29
- private drive;
30
- private focusDropdown;
31
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownOpen, never>;
32
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownOpen, "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", never, { "tuiDropdownEnabled": { "alias": "tuiDropdownEnabled"; "required": false; }; "tuiDropdownOpen": { "alias": "tuiDropdownOpen"; "required": false; }; }, { "tuiDropdownOpenChange": "tuiDropdownOpenChange"; }, ["dropdownHost"], never, true, [{ directive: typeof i1.TuiObscured; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiActiveZone; inputs: { "tuiActiveZoneParent": "tuiActiveZoneParent"; }; outputs: { "tuiActiveZoneChange": "tuiActiveZoneChange"; }; }]>;
33
- }
@@ -1,14 +0,0 @@
1
- import { type OnDestroy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * @deprecated use {@link TuiPopup} directive instead
5
- */
6
- export declare class TuiDropdownPortal implements OnDestroy {
7
- private readonly template;
8
- private readonly service;
9
- private viewRef?;
10
- set tuiDropdown(show: boolean);
11
- ngOnDestroy(): void;
12
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownPortal, never>;
13
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiDropdownPortal, "ng-template[tuiDropdown]", never, { "tuiDropdown": { "alias": "tuiDropdown"; "required": false; }; }, {}, never, never, true, never>;
14
- }
@@ -1,6 +0,0 @@
1
- import { TuiPortalService } from '@taiga-ui/cdk/classes';
2
- import * as i0 from "@angular/core";
3
- export declare class TuiDropdownService extends TuiPortalService {
4
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdownService, never>;
5
- static ɵprov: i0.ɵɵInjectableDeclaration<TuiDropdownService>;
6
- }
@@ -1,9 +0,0 @@
1
- import { TuiPortals } from '@taiga-ui/cdk/classes';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * Host element for dynamically created portals, for example using {@link TuiDropdownDirective}.
5
- */
6
- export declare class TuiDropdowns extends TuiPortals {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiDropdowns, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiDropdowns, "tui-dropdowns", never, {}, {}, never, never, true, never>;
9
- }
@@ -1,30 +0,0 @@
1
- import { TuiHoveredService } from '@taiga-ui/cdk/directives/hovered';
2
- import { TuiRectAccessor } from '@taiga-ui/core/classes';
3
- import { TuiPositionService } from '@taiga-ui/core/services';
4
- import { TuiHintDirective } from './hint.directive';
5
- import { TuiHintPointer } from './hint-pointer.directive';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@taiga-ui/cdk/directives/animated";
8
- export declare const TUI_HINT_PROVIDERS: (import("@angular/core").FactoryProvider | typeof TuiHoveredService | typeof TuiPositionService)[];
9
- export declare class TuiHintBaseComponent<C = any> {
10
- private readonly el;
11
- private readonly hover;
12
- private readonly vvs;
13
- private readonly viewport;
14
- protected readonly pointer: TuiHintPointer | null;
15
- protected readonly accessor: TuiRectAccessor;
16
- protected readonly hint: TuiHintDirective<C>;
17
- protected readonly isMobile: boolean;
18
- protected readonly content: import("@angular/core").WritableSignal<import("@taiga-ui/polymorpheus").PolymorpheusContent<C>>;
19
- protected readonly appearance: string | null | undefined;
20
- constructor();
21
- protected onClick(target: HTMLElement): void;
22
- private apply;
23
- private update;
24
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintBaseComponent<any>, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiHintBaseComponent<any>, "ng-component", never, {}, {}, never, never, true, never>;
26
- }
27
- export declare class TuiHintComponent<C = any> extends TuiHintBaseComponent<C> {
28
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintComponent<any>, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiHintComponent<any>, "tui-hint", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.TuiAnimated; inputs: {}; outputs: {}; }]>;
30
- }
@@ -1,26 +0,0 @@
1
- import { EventEmitter, type OnDestroy } from '@angular/core';
2
- import { TuiActiveZone } from '@taiga-ui/cdk/directives/active-zone';
3
- import { type TuiRectAccessor, type TuiVehicle } from '@taiga-ui/core/classes';
4
- import { type TuiPortalItem } from '@taiga-ui/core/types';
5
- import { PolymorpheusComponent, type PolymorpheusContent } from '@taiga-ui/polymorpheus';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "./hint-driver.directive";
8
- import * as i2 from "./hint-hover.directive";
9
- import * as i3 from "./hint-position.directive";
10
- export declare class TuiHintDirective<C> implements OnDestroy, TuiPortalItem<C>, TuiRectAccessor, TuiVehicle {
11
- private readonly service;
12
- context?: C;
13
- appearance: string;
14
- readonly visible: EventEmitter<boolean>;
15
- content: import("@angular/core").WritableSignal<PolymorpheusContent<C>>;
16
- component: PolymorpheusComponent<any>;
17
- readonly el: HTMLElement;
18
- readonly activeZone?: TuiActiveZone | null | undefined;
19
- readonly type = "hint";
20
- set tuiHint(content: PolymorpheusContent<C>);
21
- ngOnDestroy(): void;
22
- getClientRect(): DOMRect;
23
- toggle(show: boolean): void;
24
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintDirective<any>, never>;
25
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiHintDirective<any>, "[tuiHint]:not(ng-container):not(ng-template)", never, { "context": { "alias": "tuiHintContext"; "required": false; }; "appearance": { "alias": "tuiHintAppearance"; "required": false; }; "tuiHint": { "alias": "tuiHint"; "required": false; }; }, { "visible": "tuiHintVisible"; }, never, never, true, [{ directive: typeof i1.TuiHintDriver; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintHover; inputs: { "tuiHintHideDelay": "tuiHintHideDelay"; "tuiHintShowDelay": "tuiHintShowDelay"; }; outputs: {}; }, { directive: typeof i3.TuiHintPosition; inputs: { "tuiHintDirection": "tuiHintDirection"; }; outputs: { "tuiHintDirectionChange": "tuiHintDirectionChange"; }; }]>;
26
- }
@@ -1,13 +0,0 @@
1
- import { type TuiPortalItem } from '@taiga-ui/core/types';
2
- import { BehaviorSubject } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- /**
5
- * Service for displaying hints/tooltips
6
- */
7
- export declare class TuiHintService extends BehaviorSubject<readonly TuiPortalItem[]> {
8
- constructor();
9
- add(directive: TuiPortalItem): void;
10
- remove(directive: TuiPortalItem): void;
11
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHintService, never>;
12
- static ɵprov: i0.ɵɵInjectableDeclaration<TuiHintService>;
13
- }
@@ -1,12 +0,0 @@
1
- import { type OnInit } from '@angular/core';
2
- import { type TuiPortalItem } from '@taiga-ui/core/types';
3
- import * as i0 from "@angular/core";
4
- export declare class TuiHints implements OnInit {
5
- private readonly hints$;
6
- private readonly destroyRef;
7
- private readonly cdr;
8
- protected hints: readonly TuiPortalItem[];
9
- ngOnInit(): void;
10
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiHints, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<TuiHints, "tui-hints", never, {}, {}, never, never, true, never>;
12
- }
@@ -1,11 +0,0 @@
1
- import { type OnDestroy } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class TuiPopup implements OnDestroy {
4
- private readonly template;
5
- private readonly service;
6
- private viewRef?;
7
- set tuiPopup(show: boolean);
8
- ngOnDestroy(): void;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiPopup, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiPopup, "ng-template[tuiPopup]", never, { "tuiPopup": { "alias": "tuiPopup"; "required": false; }; }, {}, never, never, true, never>;
11
- }
@@ -1 +0,0 @@
1
- export * from './surface.directive';
@@ -1,8 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "@taiga-ui/core/directives/appearance";
3
- export declare class TuiSurface {
4
- protected readonly nothing: undefined;
5
- tuiSurface: string;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<TuiSurface, never>;
7
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSurface, "[tuiSurface]", never, { "tuiSurface": { "alias": "tuiSurface"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiAppearance; inputs: { "tuiAppearance": "tuiSurface"; }; outputs: {}; }]>;
8
- }
@@ -1,149 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, ChangeDetectionStrategy, Component, Injectable, Directive, INJECTOR, Injector, ViewEncapsulation } from '@angular/core';
3
- import { toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
- import * as i1 from '@taiga-ui/cdk/directives/animated';
5
- import { TuiAnimated, TuiAnimatedParent } from '@taiga-ui/cdk/directives/animated';
6
- import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
7
- import { TuiButton } from '@taiga-ui/core/components/button';
8
- import { TUI_NOTIFICATION_OPTIONS, TuiNotification } from '@taiga-ui/core/components/notification';
9
- import { TuiTitle } from '@taiga-ui/core/directives/title';
10
- import { TUI_COMMON_ICONS, TUI_CLOSE_WORD } from '@taiga-ui/core/tokens';
11
- import { injectContext, PolymorpheusOutlet, POLYMORPHEUS_CONTEXT } from '@taiga-ui/polymorpheus';
12
- import { BehaviorSubject, combineLatest, of, map, switchMap, timer, EMPTY, takeUntil, fromEvent, repeat, identity } from 'rxjs';
13
- import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
14
- import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
15
- import { TuiPopoverService, tuiAsPopover } from '@taiga-ui/cdk/services';
16
- import { AsyncPipe, NgComponentOutlet } from '@angular/common';
17
- import { TuiMapperPipe } from '@taiga-ui/cdk/pipes/mapper';
18
-
19
- const TUI_ALERT_DEFAULT_OPTIONS = {
20
- autoClose: 3000,
21
- label: '',
22
- closeable: true,
23
- data: undefined,
24
- };
25
- const TUI_ALERT_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_ALERT_OPTIONS' : '', {
26
- factory: () => ({
27
- ...TUI_ALERT_DEFAULT_OPTIONS,
28
- ...inject(TUI_NOTIFICATION_OPTIONS),
29
- }),
30
- });
31
- const TUI_ALERT_POSITION = new InjectionToken(ngDevMode ? 'TUI_ALERT_POSITION' : '', {
32
- factory: () => (inject(TUI_IS_MOBILE) ? '1rem 1rem 0 auto' : '2rem 3rem 0 auto'),
33
- });
34
- const TUI_ALERTS = new InjectionToken(ngDevMode ? 'TUI_ALERTS' : '', {
35
- factory: () => new BehaviorSubject([]),
36
- });
37
- /**
38
- * Grouping alerts by their component
39
- */
40
- const TUI_ALERTS_GROUPED = new InjectionToken(ngDevMode ? 'TUI_ALERTS_GROUPED' : '', {
41
- factory: () => combineLatest([
42
- of(new Map()),
43
- inject(TUI_ALERTS),
44
- ]).pipe(map(([map, alerts]) => {
45
- map.forEach((_, key) => map.set(key, []));
46
- alerts.forEach((alert) => {
47
- const key = alert.component.component;
48
- const value = map.get(key) || [];
49
- map.set(key, [...value, alert]);
50
- });
51
- return Array.from(map.values());
52
- })),
53
- });
54
- function tuiAlertOptionsProvider(options) {
55
- return {
56
- provide: TUI_ALERT_OPTIONS,
57
- useFactory: () => ({
58
- ...TUI_ALERT_DEFAULT_OPTIONS,
59
- ...(inject(TUI_ALERT_OPTIONS, { optional: true, skipSelf: true }) ||
60
- inject(TUI_NOTIFICATION_OPTIONS)),
61
- ...options,
62
- }),
63
- };
64
- }
65
-
66
- class TuiAlertComponent {
67
- constructor() {
68
- this.el = tuiInjectElement();
69
- this.icons = inject(TUI_COMMON_ICONS);
70
- this.close = toSignal(inject(TUI_CLOSE_WORD));
71
- this.position = inject(TUI_ALERT_POSITION);
72
- this.item = injectContext();
73
- this.sub = of(typeof this.item.autoClose === 'function'
74
- ? this.item.autoClose(this.item.appearance)
75
- : this.item.autoClose)
76
- .pipe(switchMap((autoClose) => (autoClose ? timer(autoClose) : EMPTY)), takeUntil(fromEvent(this.el, 'mouseenter')), repeat({ delay: () => fromEvent(this.el, 'mouseleave') }), takeUntilDestroyed())
77
- .subscribe(() => this.item.$implicit.complete());
78
- }
79
- get from() {
80
- return this.position.endsWith('auto') ? 'translateX(100%)' : 'translateX(-100%)';
81
- }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiAlertComponent, isStandalone: true, selector: "tui-alert", host: { attributes: { "role": "alert" }, properties: { "style.margin": "position", "style.--tui-from": "from" } }, hostDirectives: [{ directive: i1.TuiAnimated }], ngImport: i0, template: "<div class=\"t-wrapper\">\n <tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [class.t-closeable]=\"item.closeable\"\n [icon]=\"item.icon\"\n >\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n @if (item.closeable) {\n <button\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </tui-notification>\n</div>\n", styles: [":host{display:grid;inline-size:18rem;flex-shrink:0;word-break:break-word}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide,tuiCollapse}:host:not(:first-child){margin-block-start:0!important}:host:not(:last-child){margin-block-end:0!important}.t-wrapper{transition-property:margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;grid-row:1 / span 2;overflow:hidden;margin-block-end:.75rem;background:var(--tui-background-base);border-radius:var(--tui-radius-m);box-shadow:var(--tui-shadow-medium)}:host.tui-leave .t-wrapper{margin:0}.t-closeable{padding-inline-end:2.5rem}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: TuiNotification, selector: "tui-notification,a[tuiNotification],button[tuiNotification]", inputs: ["appearance", "icon", "size"] }, { kind: "directive", type: TuiTitle, selector: "[tuiTitle]", inputs: ["tuiTitle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
84
- }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertComponent, decorators: [{
86
- type: Component,
87
- args: [{ selector: 'tui-alert', imports: [PolymorpheusOutlet, TuiButton, TuiNotification, TuiTitle], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [TuiAnimated], host: {
88
- role: 'alert',
89
- '[style.margin]': 'position',
90
- '[style.--tui-from]': 'from',
91
- }, template: "<div class=\"t-wrapper\">\n <tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [class.t-closeable]=\"item.closeable\"\n [icon]=\"item.icon\"\n >\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n @if (item.closeable) {\n <button\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </tui-notification>\n</div>\n", styles: [":host{display:grid;inline-size:18rem;flex-shrink:0;word-break:break-word}:host.tui-enter,:host.tui-leave{animation-name:tuiFade,tuiSlide,tuiCollapse}:host:not(:first-child){margin-block-start:0!important}:host:not(:last-child){margin-block-end:0!important}.t-wrapper{transition-property:margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;grid-row:1 / span 2;overflow:hidden;margin-block-end:.75rem;background:var(--tui-background-base);border-radius:var(--tui-radius-m);box-shadow:var(--tui-shadow-medium)}:host.tui-leave .t-wrapper{margin:0}.t-closeable{padding-inline-end:2.5rem}\n"] }]
92
- }] });
93
-
94
- class TuiAlertService extends TuiPopoverService {
95
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
96
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService, providedIn: 'root', useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)) }); }
97
- }
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService, decorators: [{
99
- type: Injectable,
100
- args: [{
101
- providedIn: 'root',
102
- useFactory: () => new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)),
103
- }]
104
- }] });
105
-
106
- class TuiAlert extends TuiPopoverDirective {
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlert, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
108
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiAlert, isStandalone: true, selector: "ng-template[tuiAlert]", inputs: { options: ["tuiAlertOptions", "options"], open: ["tuiAlert", "open"] }, outputs: { openChange: "tuiAlertChange" }, providers: [tuiAsPopover(TuiAlertService)], usesInheritance: true, ngImport: i0 }); }
109
- }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlert, decorators: [{
111
- type: Directive,
112
- args: [{
113
- standalone: true,
114
- selector: 'ng-template[tuiAlert]',
115
- inputs: ['options: tuiAlertOptions', 'open: tuiAlert'],
116
- outputs: ['openChange: tuiAlertChange'],
117
- providers: [tuiAsPopover(TuiAlertService)],
118
- }]
119
- }] });
120
-
121
- class TuiAlerts {
122
- constructor() {
123
- this.injector = inject(INJECTOR);
124
- this.alerts$ = inject(TUI_ALERTS_GROUPED);
125
- this.trackBy = identity;
126
- this.mapper = (useValue) => Injector.create({
127
- providers: [
128
- {
129
- provide: POLYMORPHEUS_CONTEXT,
130
- useValue,
131
- },
132
- ],
133
- parent: this.injector,
134
- });
135
- }
136
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlerts, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
137
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiAlerts, isStandalone: true, selector: "tui-alerts", ngImport: i0, template: "@for (group of alerts$ | async; track trackBy(group)) {\n <div\n tuiAnimatedParent\n class=\"t-wrapper\"\n >\n @for (item of group; track item) {\n <ng-container\n [ngComponentOutlet]=\"item.component.component\"\n [ngComponentOutletInjector]=\"item | tuiMapper: mapper\"\n />\n }\n </div>\n}\n", styles: ["tui-alerts>.t-wrapper{position:fixed;top:0;left:0;inline-size:100%;display:flex;flex-direction:column;pointer-events:none;box-sizing:border-box;block-size:100%;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}tui-alerts>.t-wrapper>*{pointer-events:auto}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: TuiAnimatedParent, selector: "[tuiAnimatedParent]" }, { kind: "pipe", type: TuiMapperPipe, name: "tuiMapper" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
138
- }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlerts, decorators: [{
140
- type: Component,
141
- args: [{ selector: 'tui-alerts', imports: [AsyncPipe, NgComponentOutlet, TuiAnimatedParent, TuiMapperPipe], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, template: "@for (group of alerts$ | async; track trackBy(group)) {\n <div\n tuiAnimatedParent\n class=\"t-wrapper\"\n >\n @for (item of group; track item) {\n <ng-container\n [ngComponentOutlet]=\"item.component.component\"\n [ngComponentOutletInjector]=\"item | tuiMapper: mapper\"\n />\n }\n </div>\n}\n", styles: ["tui-alerts>.t-wrapper{position:fixed;top:0;left:0;inline-size:100%;display:flex;flex-direction:column;pointer-events:none;box-sizing:border-box;block-size:100%;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}tui-alerts>.t-wrapper>*{pointer-events:auto}\n"] }]
142
- }] });
143
-
144
- /**
145
- * Generated bundle index. Do not edit.
146
- */
147
-
148
- export { TUI_ALERTS, TUI_ALERTS_GROUPED, TUI_ALERT_DEFAULT_OPTIONS, TUI_ALERT_OPTIONS, TUI_ALERT_POSITION, TuiAlert, TuiAlertComponent, TuiAlertService, TuiAlerts, tuiAlertOptionsProvider };
149
- //# sourceMappingURL=taiga-ui-core-components-alert.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"taiga-ui-core-components-alert.mjs","sources":["../../../projects/core/components/alert/alert.tokens.ts","../../../projects/core/components/alert/alert.component.ts","../../../projects/core/components/alert/alert.template.html","../../../projects/core/components/alert/alert.service.ts","../../../projects/core/components/alert/alert.directive.ts","../../../projects/core/components/alert/alerts.component.ts","../../../projects/core/components/alert/alerts.template.html","../../../projects/core/components/alert/taiga-ui-core-components-alert.ts"],"sourcesContent":["import {type FactoryProvider, inject, InjectionToken, type Type} from '@angular/core';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {TUI_NOTIFICATION_OPTIONS} from '@taiga-ui/core/components/notification';\nimport {BehaviorSubject, combineLatest, map, of} from 'rxjs';\n\nimport {type TuiAlertOptions} from './alert.interfaces';\n\nexport const TUI_ALERT_DEFAULT_OPTIONS: Omit<TuiAlertOptions, 'appearance' | 'icon'> = {\n autoClose: 3000,\n label: '',\n closeable: true,\n data: undefined,\n};\n\nexport const TUI_ALERT_OPTIONS = new InjectionToken<TuiAlertOptions>(\n ngDevMode ? 'TUI_ALERT_OPTIONS' : '',\n {\n factory: () => ({\n ...TUI_ALERT_DEFAULT_OPTIONS,\n ...inject(TUI_NOTIFICATION_OPTIONS),\n }),\n },\n);\n\nexport const TUI_ALERT_POSITION = new InjectionToken<string>(\n ngDevMode ? 'TUI_ALERT_POSITION' : '',\n {\n factory: () => (inject(TUI_IS_MOBILE) ? '1rem 1rem 0 auto' : '2rem 3rem 0 auto'),\n },\n);\n\nexport const TUI_ALERTS = new InjectionToken(ngDevMode ? 'TUI_ALERTS' : '', {\n factory: () => new BehaviorSubject<ReadonlyArray<TuiPopover<any, any>>>([]),\n});\n\n/**\n * Grouping alerts by their component\n */\nexport const TUI_ALERTS_GROUPED = new InjectionToken(\n ngDevMode ? 'TUI_ALERTS_GROUPED' : '',\n {\n factory: () =>\n combineLatest([\n of(new Map<Type<any>, ReadonlyArray<TuiPopover<any, any>>>()),\n inject(TUI_ALERTS),\n ]).pipe(\n map(([map, alerts]) => {\n map.forEach((_, key) => map.set(key, []));\n\n alerts.forEach((alert) => {\n const key = alert.component.component;\n const value = map.get(key) || [];\n\n map.set(key, [...value, alert]);\n });\n\n return Array.from(map.values());\n }),\n ),\n },\n);\n\nexport function tuiAlertOptionsProvider(\n options: Partial<TuiAlertOptions>,\n): FactoryProvider {\n return {\n provide: TUI_ALERT_OPTIONS,\n useFactory: (): TuiAlertOptions => ({\n ...TUI_ALERT_DEFAULT_OPTIONS,\n ...(inject(TUI_ALERT_OPTIONS, {optional: true, skipSelf: true}) ||\n inject(TUI_NOTIFICATION_OPTIONS)),\n ...options,\n }),\n };\n}\n","import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {takeUntilDestroyed, toSignal} from '@angular/core/rxjs-interop';\nimport {TuiAnimated} from '@taiga-ui/cdk/directives/animated';\nimport {type TuiPopover} from '@taiga-ui/cdk/services';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TuiButton} from '@taiga-ui/core/components/button';\nimport {TuiNotification} from '@taiga-ui/core/components/notification';\nimport {TuiTitle} from '@taiga-ui/core/directives/title';\nimport {TUI_CLOSE_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {injectContext, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {EMPTY, fromEvent, of, repeat, switchMap, takeUntil, timer} from 'rxjs';\n\nimport {type TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_POSITION} from './alert.tokens';\n\n@Component({\n selector: 'tui-alert',\n imports: [PolymorpheusOutlet, TuiButton, TuiNotification, TuiTitle],\n templateUrl: './alert.template.html',\n styleUrls: ['./alert.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [TuiAnimated],\n host: {\n role: 'alert',\n '[style.margin]': 'position',\n '[style.--tui-from]': 'from',\n },\n})\nexport class TuiAlertComponent<O, I> {\n private readonly el = tuiInjectElement();\n\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly close = toSignal(inject(TUI_CLOSE_WORD));\n protected readonly position = inject(TUI_ALERT_POSITION);\n protected readonly item = injectContext<TuiPopover<TuiAlertOptions<I>, O>>();\n\n protected readonly sub = of(\n typeof this.item.autoClose === 'function'\n ? this.item.autoClose(this.item.appearance)\n : this.item.autoClose,\n )\n .pipe(\n switchMap((autoClose) => (autoClose ? timer(autoClose) : EMPTY)),\n takeUntil(fromEvent(this.el, 'mouseenter')),\n repeat({delay: () => fromEvent(this.el, 'mouseleave')}),\n takeUntilDestroyed(),\n )\n .subscribe(() => this.item.$implicit.complete());\n\n public get from(): string {\n return this.position.endsWith('auto') ? 'translateX(100%)' : 'translateX(-100%)';\n }\n}\n","<div class=\"t-wrapper\">\n <tui-notification\n size=\"m\"\n [appearance]=\"item.appearance\"\n [class.t-closeable]=\"item.closeable\"\n [icon]=\"item.icon\"\n >\n <span tuiTitle>\n <ng-container *polymorpheusOutlet=\"item.label as text; context: item\">\n {{ text }}\n </ng-container>\n <span tuiSubtitle>\n <span\n *polymorpheusOutlet=\"item.content as text; context: item\"\n [innerHTML]=\"text\"\n ></span>\n </span>\n </span>\n @if (item.closeable) {\n <button\n tuiIconButton\n type=\"button\"\n [iconStart]=\"icons.close\"\n (click)=\"item.$implicit.complete()\"\n >\n {{ close() }}\n </button>\n }\n </tui-notification>\n</div>\n","import {inject, Injectable} from '@angular/core';\nimport {TuiPopoverService} from '@taiga-ui/cdk/services';\n\nimport {TuiAlertComponent} from './alert.component';\nimport {type TuiAlertOptions} from './alert.interfaces';\nimport {TUI_ALERT_OPTIONS, TUI_ALERTS} from './alert.tokens';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () =>\n new TuiAlertService(TUI_ALERTS, TuiAlertComponent, inject(TUI_ALERT_OPTIONS)),\n})\nexport class TuiAlertService extends TuiPopoverService<TuiAlertOptions<any>> {}\n","import {Directive} from '@angular/core';\nimport {TuiPopoverDirective} from '@taiga-ui/cdk/directives/popover';\nimport {tuiAsPopover} from '@taiga-ui/cdk/services';\n\nimport {type TuiAlertOptions} from './alert.interfaces';\nimport {TuiAlertService} from './alert.service';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiAlert]',\n inputs: ['options: tuiAlertOptions', 'open: tuiAlert'],\n outputs: ['openChange: tuiAlertChange'],\n providers: [tuiAsPopover(TuiAlertService)],\n})\nexport class TuiAlert<T> extends TuiPopoverDirective<TuiAlertOptions<T>> {}\n","import {AsyncPipe, NgComponentOutlet} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n INJECTOR,\n Injector,\n type Type,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TuiAnimatedParent} from '@taiga-ui/cdk/directives/animated';\nimport {TuiMapperPipe} from '@taiga-ui/cdk/pipes/mapper';\nimport {type TuiMapper} from '@taiga-ui/cdk/types';\n// eslint-disable-next-line no-restricted-imports\nimport {POLYMORPHEUS_CONTEXT} from '@taiga-ui/polymorpheus';\nimport {identity} from 'rxjs';\n\nimport {TUI_ALERTS_GROUPED} from './alert.tokens';\n\n@Component({\n selector: 'tui-alerts',\n imports: [AsyncPipe, NgComponentOutlet, TuiAnimatedParent, TuiMapperPipe],\n templateUrl: './alerts.template.html',\n styleUrls: ['./alerts.style.less'],\n encapsulation: ViewEncapsulation.None,\n // So that we do not force OnPush on custom alerts\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n})\nexport class TuiAlerts {\n private readonly injector = inject(INJECTOR);\n\n protected readonly alerts$ = inject(TUI_ALERTS_GROUPED);\n protected readonly trackBy = identity;\n protected readonly mapper: TuiMapper<[Type<any>], Injector> = (useValue) =>\n Injector.create({\n providers: [\n {\n provide: POLYMORPHEUS_CONTEXT,\n useValue,\n },\n ],\n parent: this.injector,\n });\n}\n","@for (group of alerts$ | async; track trackBy(group)) {\n <div\n tuiAnimatedParent\n class=\"t-wrapper\"\n >\n @for (item of group; track item) {\n <ng-container\n [ngComponentOutlet]=\"item.component.component\"\n [ngComponentOutletInjector]=\"item | tuiMapper: mapper\"\n />\n }\n </div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAQa,MAAA,yBAAyB,GAAiD;AACnF,IAAA,SAAS,EAAE,IAAI;AACf,IAAA,KAAK,EAAE,EAAE;AACT,IAAA,SAAS,EAAE,IAAI;AACf,IAAA,IAAI,EAAE,SAAS;;AAGN,MAAA,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC;AACI,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,GAAG,yBAAyB;QAC5B,GAAG,MAAM,CAAC,wBAAwB,CAAC;KACtC,CAAC;AACL,CAAA;AAGQ,MAAA,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;AACI,IAAA,OAAO,EAAE,OAAO,MAAM,CAAC,aAAa,CAAC,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AACnF,CAAA;AAGQ,MAAA,UAAU,GAAG,IAAI,cAAc,CAAC,SAAS,GAAG,YAAY,GAAG,EAAE,EAAE;IACxE,OAAO,EAAE,MAAM,IAAI,eAAe,CAAsC,EAAE,CAAC;AAC9E,CAAA;AAED;;AAEG;AACU,MAAA,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;AACI,IAAA,OAAO,EAAE,MACL,aAAa,CAAC;AACV,QAAA,EAAE,CAAC,IAAI,GAAG,EAAkD,CAAC;QAC7D,MAAM,CAAC,UAAU,CAAC;AACrB,KAAA,CAAC,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,KAAI;AAClB,QAAA,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAEzC,QAAA,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AACrB,YAAA,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,SAAS;YACrC,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE;AAEhC,YAAA,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;AACnC,SAAC,CAAC;QAEF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;AACnC,KAAC,CAAC,CACL;AACR,CAAA;AAGC,SAAU,uBAAuB,CACnC,OAAiC,EAAA;IAEjC,OAAO;AACH,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,UAAU,EAAE,OAAwB;AAChC,YAAA,GAAG,yBAAyB;AAC5B,YAAA,IAAI,MAAM,CAAC,iBAAiB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC;gBAC3D,MAAM,CAAC,wBAAwB,CAAC,CAAC;AACrC,YAAA,GAAG,OAAO;SACb,CAAC;KACL;AACL;;MC/Ca,iBAAiB,CAAA;AAb9B,IAAA,WAAA,GAAA;QAcqB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AAErB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChC,IAAK,CAAA,KAAA,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AACxC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACrC,IAAI,CAAA,IAAA,GAAG,aAAa,EAAqC;QAEzD,IAAG,CAAA,GAAA,GAAG,EAAE,CACvB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK;AAC3B,cAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU;AAC1C,cAAE,IAAI,CAAC,IAAI,CAAC,SAAS;aAExB,IAAI,CACD,SAAS,CAAC,CAAC,SAAS,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,EAChE,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,EAC3C,MAAM,CAAC,EAAC,KAAK,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,EAAC,CAAC,EACvD,kBAAkB,EAAE;AAEvB,aAAA,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;AAKvD;AAHG,IAAA,IAAW,IAAI,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,kBAAkB,GAAG,mBAAmB;;+GAtB3E,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5B9B,26BA8BA,EDbc,MAAA,EAAA,CAAA,inBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,kBAAkB,8HAAE,SAAS,EAAA,QAAA,EAAA,uEAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,6DAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,QAAQ,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAWzD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,WACZ,CAAC,kBAAkB,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAA,eAAA,EAGlD,uBAAuB,CAAC,MAAM,kBAC/B,CAAC,WAAW,CAAC,EACvB,IAAA,EAAA;AACF,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,gBAAgB,EAAE,UAAU;AAC5B,wBAAA,oBAAoB,EAAE,MAAM;AAC/B,qBAAA,EAAA,QAAA,EAAA,26BAAA,EAAA,MAAA,EAAA,CAAA,inBAAA,CAAA,EAAA;;;AEdC,MAAO,eAAgB,SAAQ,iBAAuC,CAAA;+GAA/D,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAJZ,MAAM,EAAA,UAAA,EACN,MACR,IAAI,eAAe,CAAC,UAAU,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC,EAAA,CAAA,CAAA;;4FAExE,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AAClB,oBAAA,UAAU,EAAE,MACR,IAAoB,eAAA,CAAA,UAAU,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AACpF,iBAAA;;;ACGK,MAAO,QAAY,SAAQ,mBAAuC,CAAA;+GAA3D,QAAQ,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAR,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,QAAQ,gMAFN,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjC,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAPpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,MAAM,EAAE,CAAC,0BAA0B,EAAE,gBAAgB,CAAC;oBACtD,OAAO,EAAE,CAAC,4BAA4B,CAAC;AACvC,oBAAA,SAAS,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;AAC7C,iBAAA;;;MCgBY,SAAS,CAAA;AAVtB,IAAA,WAAA,GAAA;AAWqB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAEzB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACpC,IAAO,CAAA,OAAA,GAAG,QAAQ;QAClB,IAAM,CAAA,MAAA,GAAqC,CAAC,QAAQ,KACnE,QAAQ,CAAC,MAAM,CAAC;AACZ,YAAA,SAAS,EAAE;AACP,gBAAA;AACI,oBAAA,OAAO,EAAE,oBAAoB;oBAC7B,QAAQ;AACX,iBAAA;AACJ,aAAA;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;AACxB,SAAA,CAAC;AACT;+GAfY,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAT,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7BtB,iYAaA,EDQc,MAAA,EAAA,CAAA,+QAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,SAAS,8CAAE,iBAAiB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,0BAAA,EAAA,2BAAA,EAAA,kCAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,OAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQ/D,SAAS,EAAA,UAAA,EAAA,CAAA;kBAVrB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,WACb,CAAC,SAAS,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,aAAa,CAAC,iBAG1D,iBAAiB,CAAC,IAAI,EAGpB,eAAA,EAAA,uBAAuB,CAAC,OAAO,EAAA,QAAA,EAAA,iYAAA,EAAA,MAAA,EAAA,CAAA,+QAAA,CAAA,EAAA;;;AE3BpD;;AAEG;;;;"}