@ng-nest/ui 17.0.2 → 17.0.4

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 (488) hide show
  1. package/calendar/calendar.component.d.ts +0 -1
  2. package/carousel/carousel.component.d.ts +0 -1
  3. package/checkbox/checkbox.component.d.ts +0 -2
  4. package/checkbox/checkbox.property.d.ts +11 -1
  5. package/color/color.component.d.ts +0 -1
  6. package/crumb/crumb.component.d.ts +0 -1
  7. package/date-picker/picker-date.component.d.ts +0 -1
  8. package/esm2022/affix/affix.component.mjs +3 -3
  9. package/esm2022/affix/affix.module.mjs +4 -4
  10. package/esm2022/affix/affix.property.mjs +3 -3
  11. package/esm2022/alert/alert.component.mjs +7 -15
  12. package/esm2022/alert/alert.module.mjs +4 -4
  13. package/esm2022/alert/alert.property.mjs +3 -3
  14. package/esm2022/anchor/anchor-inner.component.mjs +3 -3
  15. package/esm2022/anchor/anchor.component.mjs +7 -10
  16. package/esm2022/anchor/anchor.module.mjs +4 -4
  17. package/esm2022/anchor/anchor.property.mjs +6 -6
  18. package/esm2022/api/api.component.mjs +3 -3
  19. package/esm2022/api/api.module.mjs +4 -4
  20. package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
  21. package/esm2022/auto-complete/auto-complete.component.mjs +3 -3
  22. package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
  23. package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
  24. package/esm2022/avatar/avatar-group.component.mjs +3 -3
  25. package/esm2022/avatar/avatar.component.mjs +6 -7
  26. package/esm2022/avatar/avatar.module.mjs +4 -4
  27. package/esm2022/avatar/avatar.property.mjs +6 -6
  28. package/esm2022/back-top/back-top.component.mjs +7 -9
  29. package/esm2022/back-top/back-top.module.mjs +4 -4
  30. package/esm2022/back-top/back-top.property.mjs +3 -3
  31. package/esm2022/badge/badge.component.mjs +6 -7
  32. package/esm2022/badge/badge.module.mjs +5 -5
  33. package/esm2022/badge/badge.property.mjs +3 -3
  34. package/esm2022/base-form/base-form.component.mjs +3 -3
  35. package/esm2022/base-form/base-form.module.mjs +4 -4
  36. package/esm2022/base-form/base-form.property.mjs +3 -3
  37. package/esm2022/border/border.component.mjs +3 -3
  38. package/esm2022/border/border.module.mjs +4 -4
  39. package/esm2022/button/button.component.mjs +6 -7
  40. package/esm2022/button/button.module.mjs +5 -5
  41. package/esm2022/button/button.property.mjs +6 -6
  42. package/esm2022/button/buttons.component.mjs +5 -6
  43. package/esm2022/calendar/calendar.component.mjs +10 -12
  44. package/esm2022/calendar/calendar.module.mjs +4 -4
  45. package/esm2022/calendar/calendar.property.mjs +3 -3
  46. package/esm2022/card/card.component.mjs +6 -7
  47. package/esm2022/card/card.module.mjs +4 -4
  48. package/esm2022/card/card.property.mjs +3 -3
  49. package/esm2022/carousel/carousel-panel.component.mjs +5 -7
  50. package/esm2022/carousel/carousel.component.mjs +6 -10
  51. package/esm2022/carousel/carousel.module.mjs +5 -5
  52. package/esm2022/carousel/carousel.property.mjs +7 -7
  53. package/esm2022/cascade/cascade-portal.component.mjs +6 -8
  54. package/esm2022/cascade/cascade.component.mjs +7 -9
  55. package/esm2022/cascade/cascade.module.mjs +4 -4
  56. package/esm2022/cascade/cascade.property.mjs +3 -3
  57. package/esm2022/checkbox/checkbox.component.mjs +7 -13
  58. package/esm2022/checkbox/checkbox.module.mjs +4 -4
  59. package/esm2022/checkbox/checkbox.property.mjs +30 -4
  60. package/esm2022/collapse/collapse-panel.component.mjs +5 -7
  61. package/esm2022/collapse/collapse.component.mjs +5 -6
  62. package/esm2022/collapse/collapse.module.mjs +5 -5
  63. package/esm2022/collapse/collapse.property.mjs +6 -6
  64. package/esm2022/color/color.component.mjs +6 -10
  65. package/esm2022/color/color.module.mjs +5 -5
  66. package/esm2022/color/color.property.mjs +3 -3
  67. package/esm2022/color-picker/color-picker-portal.component.mjs +6 -14
  68. package/esm2022/color-picker/color-picker.component.mjs +6 -6
  69. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  70. package/esm2022/color-picker/color-picker.property.mjs +3 -3
  71. package/esm2022/comment/comment-reply.component.mjs +5 -6
  72. package/esm2022/comment/comment.component.mjs +5 -8
  73. package/esm2022/comment/comment.module.mjs +4 -4
  74. package/esm2022/comment/comment.property.mjs +6 -6
  75. package/esm2022/container/aside.component.mjs +5 -6
  76. package/esm2022/container/container.component.mjs +5 -6
  77. package/esm2022/container/container.module.mjs +5 -5
  78. package/esm2022/container/container.property.mjs +12 -12
  79. package/esm2022/container/footer.component.mjs +5 -6
  80. package/esm2022/container/header.component.mjs +5 -6
  81. package/esm2022/container/main.component.mjs +5 -6
  82. package/esm2022/core/config/config.service.mjs +3 -3
  83. package/esm2022/core/services/http.service.mjs +3 -3
  84. package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
  85. package/esm2022/core/services/storage.service.mjs +3 -3
  86. package/esm2022/core/theme/theme.service.mjs +3 -3
  87. package/esm2022/crumb/crumb.component.mjs +6 -10
  88. package/esm2022/crumb/crumb.module.mjs +4 -4
  89. package/esm2022/crumb/crumb.property.mjs +3 -3
  90. package/esm2022/date-picker/date-picker-portal.component.mjs +9 -9
  91. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  92. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  93. package/esm2022/date-picker/date-picker.property.mjs +18 -18
  94. package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
  95. package/esm2022/date-picker/date-range-portal.component.mjs +8 -7
  96. package/esm2022/date-picker/date-range.component.mjs +8 -11
  97. package/esm2022/date-picker/picker-date.component.mjs +6 -10
  98. package/esm2022/date-picker/picker-month.component.mjs +6 -7
  99. package/esm2022/date-picker/picker-quarter.component.mjs +6 -7
  100. package/esm2022/date-picker/picker-year.component.mjs +6 -7
  101. package/esm2022/description/description-item.component.mjs +6 -7
  102. package/esm2022/description/description.component.mjs +6 -7
  103. package/esm2022/description/description.module.mjs +5 -5
  104. package/esm2022/description/description.property.mjs +6 -6
  105. package/esm2022/dialog/dialog-container.component.mjs +6 -7
  106. package/esm2022/dialog/dialog-portal.component.mjs +7 -12
  107. package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
  108. package/esm2022/dialog/dialog.component.mjs +6 -7
  109. package/esm2022/dialog/dialog.module.mjs +5 -6
  110. package/esm2022/dialog/dialog.property.mjs +6 -6
  111. package/esm2022/dialog/dialog.service.mjs +3 -3
  112. package/esm2022/doc/doc.component.mjs +5 -6
  113. package/esm2022/doc/doc.module.mjs +5 -5
  114. package/esm2022/drag/drag.directive.mjs +3 -3
  115. package/esm2022/drag/drag.module.mjs +4 -4
  116. package/esm2022/drag/drag.property.mjs +3 -3
  117. package/esm2022/drawer/drawer-container.component.mjs +6 -7
  118. package/esm2022/drawer/drawer-portal.component.mjs +5 -6
  119. package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
  120. package/esm2022/drawer/drawer.component.mjs +6 -7
  121. package/esm2022/drawer/drawer.module.mjs +5 -6
  122. package/esm2022/drawer/drawer.property.mjs +6 -6
  123. package/esm2022/drawer/drawer.service.mjs +3 -3
  124. package/esm2022/dropdown/dropdown-portal.component.mjs +5 -6
  125. package/esm2022/dropdown/dropdown.component.mjs +9 -20
  126. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  127. package/esm2022/dropdown/dropdown.property.mjs +3 -3
  128. package/esm2022/empty/empty.component.mjs +5 -7
  129. package/esm2022/empty/empty.module.mjs +4 -4
  130. package/esm2022/empty/empty.property.mjs +3 -3
  131. package/esm2022/examples/examples.component.mjs +5 -6
  132. package/esm2022/examples/examples.module.mjs +5 -5
  133. package/esm2022/find/find.component.mjs +8 -12
  134. package/esm2022/find/find.module.mjs +4 -4
  135. package/esm2022/find/find.property.mjs +3 -3
  136. package/esm2022/form/control.component.mjs +7 -10
  137. package/esm2022/form/form.component.mjs +9 -12
  138. package/esm2022/form/form.module.mjs +4 -4
  139. package/esm2022/form/form.property.mjs +6 -6
  140. package/esm2022/highlight/highlight.component.mjs +6 -7
  141. package/esm2022/highlight/highlight.module.mjs +4 -4
  142. package/esm2022/highlight/highlight.property.mjs +3 -3
  143. package/esm2022/i18n/i18n.directive.mjs +3 -3
  144. package/esm2022/i18n/i18n.module.mjs +4 -4
  145. package/esm2022/i18n/i18n.pipe.mjs +3 -3
  146. package/esm2022/i18n/i18n.service.mjs +3 -3
  147. package/esm2022/icon/icon.component.mjs +3 -3
  148. package/esm2022/icon/icon.module.mjs +4 -4
  149. package/esm2022/icon/icon.property.mjs +3 -3
  150. package/esm2022/icon/icon.service.mjs +3 -3
  151. package/esm2022/image/image-group.component.mjs +12 -7
  152. package/esm2022/image/image-preview.component.mjs +7 -8
  153. package/esm2022/image/image.component.mjs +6 -7
  154. package/esm2022/image/image.module.mjs +5 -5
  155. package/esm2022/image/image.property.mjs +6 -6
  156. package/esm2022/inner/inner.component.mjs +5 -6
  157. package/esm2022/inner/inner.module.mjs +5 -5
  158. package/esm2022/inner/inner.property.mjs +3 -3
  159. package/esm2022/input/input-group.component.mjs +5 -6
  160. package/esm2022/input/input.component.mjs +7 -8
  161. package/esm2022/input/input.module.mjs +5 -5
  162. package/esm2022/input/input.property.mjs +6 -6
  163. package/esm2022/input-number/input-number.component.mjs +7 -8
  164. package/esm2022/input-number/input-number.module.mjs +4 -4
  165. package/esm2022/input-number/input-number.property.mjs +3 -3
  166. package/esm2022/keyword/keyword.directive.mjs +3 -3
  167. package/esm2022/keyword/keyword.module.mjs +4 -4
  168. package/esm2022/keyword/keyword.property.mjs +3 -3
  169. package/esm2022/layout/col.component.mjs +3 -3
  170. package/esm2022/layout/layout.module.mjs +4 -4
  171. package/esm2022/layout/layout.property.mjs +6 -6
  172. package/esm2022/layout/row.component.mjs +3 -3
  173. package/esm2022/link/link.component.mjs +6 -7
  174. package/esm2022/link/link.module.mjs +4 -4
  175. package/esm2022/link/link.property.mjs +3 -3
  176. package/esm2022/list/list-drop-group.directive.mjs +3 -3
  177. package/esm2022/list/list-option.component.mjs +6 -7
  178. package/esm2022/list/list.component.mjs +9 -12
  179. package/esm2022/list/list.module.mjs +4 -4
  180. package/esm2022/list/list.property.mjs +6 -6
  181. package/esm2022/loading/loading.component.mjs +6 -7
  182. package/esm2022/loading/loading.module.mjs +4 -4
  183. package/esm2022/loading/loading.property.mjs +3 -3
  184. package/esm2022/menu/menu-node.component.mjs +7 -8
  185. package/esm2022/menu/menu.component.mjs +6 -10
  186. package/esm2022/menu/menu.module.mjs +4 -4
  187. package/esm2022/menu/menu.property.mjs +6 -6
  188. package/esm2022/message/message.component.mjs +5 -10
  189. package/esm2022/message/message.module.mjs +4 -4
  190. package/esm2022/message/message.service.mjs +3 -3
  191. package/esm2022/message-box/message-box.component.mjs +6 -9
  192. package/esm2022/message-box/message-box.module.mjs +4 -4
  193. package/esm2022/message-box/message-box.service.mjs +3 -3
  194. package/esm2022/notification/notification.component.mjs +5 -10
  195. package/esm2022/notification/notification.module.mjs +4 -4
  196. package/esm2022/notification/notification.service.mjs +3 -3
  197. package/esm2022/outlet/outlet.directive.mjs +3 -3
  198. package/esm2022/outlet/outlet.module.mjs +4 -4
  199. package/esm2022/page-header/page-header.component.mjs +5 -7
  200. package/esm2022/page-header/page-header.module.mjs +4 -4
  201. package/esm2022/page-header/page-header.property.mjs +3 -3
  202. package/esm2022/pagination/pagination.component.mjs +6 -12
  203. package/esm2022/pagination/pagination.module.mjs +4 -4
  204. package/esm2022/pagination/pagination.property.mjs +3 -3
  205. package/esm2022/pattern/pattern.component.mjs +5 -6
  206. package/esm2022/pattern/pattern.module.mjs +5 -5
  207. package/esm2022/popconfirm/popconfirm.component.mjs +5 -7
  208. package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
  209. package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
  210. package/esm2022/popover/popover-portal.component.mjs +6 -7
  211. package/esm2022/popover/popover.directive.mjs +3 -3
  212. package/esm2022/popover/popover.module.mjs +4 -4
  213. package/esm2022/popover/popover.property.mjs +3 -3
  214. package/esm2022/portal/portal.module.mjs +4 -4
  215. package/esm2022/portal/portal.service.mjs +3 -3
  216. package/esm2022/progress/progress.component.mjs +6 -7
  217. package/esm2022/progress/progress.module.mjs +4 -4
  218. package/esm2022/progress/progress.property.mjs +3 -3
  219. package/esm2022/radio/radio.component.mjs +6 -10
  220. package/esm2022/radio/radio.module.mjs +4 -4
  221. package/esm2022/radio/radio.property.mjs +14 -4
  222. package/esm2022/rate/rate.component.mjs +6 -7
  223. package/esm2022/rate/rate.module.mjs +4 -4
  224. package/esm2022/rate/rate.property.mjs +3 -3
  225. package/esm2022/resizable/resizable.directive.mjs +3 -3
  226. package/esm2022/resizable/resizable.module.mjs +4 -4
  227. package/esm2022/resizable/resizable.property.mjs +3 -3
  228. package/esm2022/result/result.component.mjs +6 -7
  229. package/esm2022/result/result.module.mjs +4 -4
  230. package/esm2022/result/result.property.mjs +3 -3
  231. package/esm2022/ripple/ripple.directive.mjs +3 -3
  232. package/esm2022/ripple/ripple.module.mjs +4 -4
  233. package/esm2022/ripple/ripple.property.mjs +3 -3
  234. package/esm2022/select/select-portal.component.mjs +5 -6
  235. package/esm2022/select/select.component.mjs +7 -8
  236. package/esm2022/select/select.module.mjs +4 -4
  237. package/esm2022/select/select.property.mjs +3 -3
  238. package/esm2022/skeleton/skeleton.component.mjs +6 -7
  239. package/esm2022/skeleton/skeleton.module.mjs +4 -4
  240. package/esm2022/skeleton/skeleton.property.mjs +3 -3
  241. package/esm2022/slider/slider.component.mjs +6 -10
  242. package/esm2022/slider/slider.module.mjs +4 -4
  243. package/esm2022/slider/slider.property.mjs +3 -3
  244. package/esm2022/slider-select/slider-select.component.mjs +9 -9
  245. package/esm2022/slider-select/slider-select.module.mjs +4 -4
  246. package/esm2022/slider-select/slider-select.property.mjs +3 -3
  247. package/esm2022/statistic/countdown.component.mjs +3 -3
  248. package/esm2022/statistic/statistic.component.mjs +6 -7
  249. package/esm2022/statistic/statistic.module.mjs +5 -5
  250. package/esm2022/statistic/statistic.property.mjs +6 -6
  251. package/esm2022/steps/steps.component.mjs +6 -10
  252. package/esm2022/steps/steps.module.mjs +4 -4
  253. package/esm2022/steps/steps.property.mjs +3 -3
  254. package/esm2022/switch/switch.component.mjs +6 -7
  255. package/esm2022/switch/switch.module.mjs +4 -4
  256. package/esm2022/switch/switch.property.mjs +3 -3
  257. package/esm2022/table/table-body.component.mjs +10 -10
  258. package/esm2022/table/table-foot.component.mjs +5 -6
  259. package/esm2022/table/table-head.component.mjs +11 -13
  260. package/esm2022/table/table.component.mjs +7 -8
  261. package/esm2022/table/table.module.mjs +5 -5
  262. package/esm2022/table/table.property.mjs +12 -12
  263. package/esm2022/tabs/tab-content.component.mjs +6 -7
  264. package/esm2022/tabs/tab-link.directive.mjs +6 -6
  265. package/esm2022/tabs/tab.component.mjs +5 -6
  266. package/esm2022/tabs/tabs.component.mjs +6 -7
  267. package/esm2022/tabs/tabs.module.mjs +5 -5
  268. package/esm2022/tabs/tabs.property.mjs +6 -6
  269. package/esm2022/tag/tag.component.mjs +6 -7
  270. package/esm2022/tag/tag.module.mjs +4 -4
  271. package/esm2022/tag/tag.property.mjs +3 -3
  272. package/esm2022/text-retract/text-retract.component.mjs +5 -7
  273. package/esm2022/text-retract/text-retract.module.mjs +4 -4
  274. package/esm2022/text-retract/text-retract.property.mjs +3 -3
  275. package/esm2022/textarea/textarea.component.mjs +7 -8
  276. package/esm2022/textarea/textarea.module.mjs +4 -4
  277. package/esm2022/textarea/textarea.property.mjs +3 -3
  278. package/esm2022/theme/theme.component.mjs +6 -9
  279. package/esm2022/theme/theme.module.mjs +4 -4
  280. package/esm2022/theme/theme.property.mjs +3 -3
  281. package/esm2022/time-ago/time-ago.module.mjs +4 -4
  282. package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
  283. package/esm2022/time-picker/time-picker-frame.component.mjs +6 -8
  284. package/esm2022/time-picker/time-picker-portal.component.mjs +5 -7
  285. package/esm2022/time-picker/time-picker.component.mjs +3 -3
  286. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  287. package/esm2022/time-picker/time-picker.property.mjs +3 -3
  288. package/esm2022/time-range/time-range.module.mjs +4 -4
  289. package/esm2022/time-range/time-range.pipe.mjs +3 -3
  290. package/esm2022/timeline/timeline.component.mjs +6 -7
  291. package/esm2022/timeline/timeline.module.mjs +4 -4
  292. package/esm2022/timeline/timeline.property.mjs +3 -3
  293. package/esm2022/tooltip/tooltip-portal.component.mjs +6 -7
  294. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  295. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  296. package/esm2022/tooltip/tooltip.property.mjs +3 -3
  297. package/esm2022/transfer/transfer.component.mjs +11 -10
  298. package/esm2022/transfer/transfer.module.mjs +4 -4
  299. package/esm2022/transfer/transfer.property.mjs +3 -3
  300. package/esm2022/tree/tree-node.component.mjs +8 -9
  301. package/esm2022/tree/tree.component.mjs +7 -9
  302. package/esm2022/tree/tree.module.mjs +4 -4
  303. package/esm2022/tree/tree.property.mjs +6 -6
  304. package/esm2022/tree/tree.service.mjs +3 -3
  305. package/esm2022/tree-file/tree-file.component.mjs +7 -8
  306. package/esm2022/tree-file/tree-file.module.mjs +4 -4
  307. package/esm2022/tree-file/tree-file.property.mjs +3 -3
  308. package/esm2022/tree-select/tree-select-portal.component.mjs +5 -7
  309. package/esm2022/tree-select/tree-select.component.mjs +7 -8
  310. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  311. package/esm2022/tree-select/tree-select.property.mjs +3 -3
  312. package/esm2022/typography/typography.component.mjs +3 -3
  313. package/esm2022/typography/typography.module.mjs +4 -4
  314. package/esm2022/typography/typography.property.mjs +3 -3
  315. package/esm2022/upload/upload-portal.component.mjs +6 -6
  316. package/esm2022/upload/upload.component.mjs +7 -11
  317. package/esm2022/upload/upload.module.mjs +4 -4
  318. package/esm2022/upload/upload.property.mjs +3 -3
  319. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  320. package/fesm2022/ng-nest-ui-alert.mjs +13 -21
  321. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  322. package/fesm2022/ng-nest-ui-anchor.mjs +19 -22
  323. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  324. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  325. package/fesm2022/ng-nest-ui-auto-complete.mjs +13 -13
  326. package/fesm2022/ng-nest-ui-avatar.mjs +18 -19
  327. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  328. package/fesm2022/ng-nest-ui-back-top.mjs +13 -15
  329. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  330. package/fesm2022/ng-nest-ui-badge.mjs +12 -13
  331. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  332. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  333. package/fesm2022/ng-nest-ui-border.mjs +7 -7
  334. package/fesm2022/ng-nest-ui-button.mjs +19 -20
  335. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  336. package/fesm2022/ng-nest-ui-calendar.mjs +16 -18
  337. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  338. package/fesm2022/ng-nest-ui-card.mjs +12 -13
  339. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  340. package/fesm2022/ng-nest-ui-carousel.mjs +19 -23
  341. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  342. package/fesm2022/ng-nest-ui-cascade.mjs +18 -21
  343. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  344. package/fesm2022/ng-nest-ui-checkbox.mjs +39 -19
  345. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  346. package/fesm2022/ng-nest-ui-collapse.mjs +18 -20
  347. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  348. package/fesm2022/ng-nest-ui-color-picker.mjs +16 -24
  349. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  350. package/fesm2022/ng-nest-ui-color.mjs +12 -16
  351. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  352. package/fesm2022/ng-nest-ui-comment.mjs +18 -21
  353. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  354. package/fesm2022/ng-nest-ui-container.mjs +36 -37
  355. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  356. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  357. package/fesm2022/ng-nest-ui-crumb.mjs +12 -16
  358. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  359. package/fesm2022/ng-nest-ui-date-picker.mjs +66 -69
  360. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  361. package/fesm2022/ng-nest-ui-description.mjs +20 -21
  362. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  363. package/fesm2022/ng-nest-ui-dialog.mjs +48 -54
  364. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  365. package/fesm2022/ng-nest-ui-doc.mjs +8 -9
  366. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  368. package/fesm2022/ng-nest-ui-drawer.mjs +37 -39
  369. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  370. package/fesm2022/ng-nest-ui-dropdown.mjs +19 -30
  371. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  372. package/fesm2022/ng-nest-ui-empty.mjs +11 -13
  373. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  374. package/fesm2022/ng-nest-ui-examples.mjs +8 -9
  375. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  376. package/fesm2022/ng-nest-ui-find.mjs +14 -18
  377. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  378. package/fesm2022/ng-nest-ui-form.mjs +23 -27
  379. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  380. package/fesm2022/ng-nest-ui-highlight.mjs +12 -13
  381. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  382. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  383. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  384. package/fesm2022/ng-nest-ui-image.mjs +31 -26
  385. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  386. package/fesm2022/ng-nest-ui-inner.mjs +11 -12
  387. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  388. package/fesm2022/ng-nest-ui-input-number.mjs +13 -14
  389. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  390. package/fesm2022/ng-nest-ui-input.mjs +20 -21
  391. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  392. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  393. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  394. package/fesm2022/ng-nest-ui-link.mjs +12 -13
  395. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  396. package/fesm2022/ng-nest-ui-list.mjs +26 -28
  397. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  398. package/fesm2022/ng-nest-ui-loading.mjs +12 -13
  399. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  400. package/fesm2022/ng-nest-ui-menu.mjs +20 -24
  401. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  402. package/fesm2022/ng-nest-ui-message-box.mjs +12 -15
  403. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  404. package/fesm2022/ng-nest-ui-message.mjs +11 -16
  405. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  406. package/fesm2022/ng-nest-ui-notification.mjs +11 -16
  407. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  408. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  409. package/fesm2022/ng-nest-ui-page-header.mjs +11 -13
  410. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  411. package/fesm2022/ng-nest-ui-pagination.mjs +12 -18
  412. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  413. package/fesm2022/ng-nest-ui-pattern.mjs +8 -9
  414. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -13
  416. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  417. package/fesm2022/ng-nest-ui-popover.mjs +15 -16
  418. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  420. package/fesm2022/ng-nest-ui-progress.mjs +12 -13
  421. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  422. package/fesm2022/ng-nest-ui-radio.mjs +22 -16
  423. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  424. package/fesm2022/ng-nest-ui-rate.mjs +12 -13
  425. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  426. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  427. package/fesm2022/ng-nest-ui-result.mjs +12 -13
  428. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  429. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  430. package/fesm2022/ng-nest-ui-select.mjs +17 -18
  431. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  432. package/fesm2022/ng-nest-ui-skeleton.mjs +12 -13
  433. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  434. package/fesm2022/ng-nest-ui-slider-select.mjs +15 -15
  435. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  436. package/fesm2022/ng-nest-ui-slider.mjs +12 -16
  437. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  438. package/fesm2022/ng-nest-ui-statistic.mjs +18 -19
  439. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  440. package/fesm2022/ng-nest-ui-steps.mjs +12 -16
  441. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  442. package/fesm2022/ng-nest-ui-switch.mjs +12 -13
  443. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  444. package/fesm2022/ng-nest-ui-table.mjs +45 -46
  445. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  446. package/fesm2022/ng-nest-ui-tabs.mjs +29 -30
  447. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  448. package/fesm2022/ng-nest-ui-tag.mjs +12 -13
  449. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  450. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -13
  451. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  452. package/fesm2022/ng-nest-ui-textarea.mjs +13 -14
  453. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  454. package/fesm2022/ng-nest-ui-theme.mjs +12 -15
  455. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  456. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  457. package/fesm2022/ng-nest-ui-time-picker.mjs +20 -21
  458. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  459. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  460. package/fesm2022/ng-nest-ui-timeline.mjs +12 -13
  461. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  462. package/fesm2022/ng-nest-ui-tooltip.mjs +15 -16
  463. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  464. package/fesm2022/ng-nest-ui-transfer.mjs +17 -16
  465. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  466. package/fesm2022/ng-nest-ui-tree-file.mjs +13 -14
  467. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  468. package/fesm2022/ng-nest-ui-tree-select.mjs +17 -18
  469. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  470. package/fesm2022/ng-nest-ui-tree.mjs +26 -27
  471. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  472. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  473. package/fesm2022/ng-nest-ui-upload.mjs +17 -21
  474. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  475. package/find/find.component.d.ts +0 -1
  476. package/form/form.component.d.ts +1 -2
  477. package/image/image-group.component.d.ts +2 -0
  478. package/menu/menu.component.d.ts +0 -1
  479. package/message/message.component.d.ts +0 -1
  480. package/notification/notification.component.d.ts +0 -1
  481. package/package.json +60 -60
  482. package/pagination/pagination.component.d.ts +0 -1
  483. package/radio/radio.component.d.ts +0 -1
  484. package/radio/radio.property.d.ts +6 -1
  485. package/slider/slider.component.d.ts +0 -1
  486. package/steps/steps.component.d.ts +0 -1
  487. package/table/table-head.component.d.ts +0 -1
  488. package/upload/upload.component.d.ts +1 -2
@@ -4,8 +4,7 @@ import { __decorate } from 'tslib';
4
4
  import { XProperty, XInputNumber, XWithConfig, XInputBoolean, XConfigService, XResize, XIsChange, XIsUndefined, XIsEmpty, XDropAnimation } from '@ng-nest/ui/core';
5
5
  import { Subject, BehaviorSubject, takeUntil as takeUntil$1 } from 'rxjs';
6
6
  import { debounceTime, takeUntil } from 'rxjs/operators';
7
- import * as i1 from '@angular/common';
8
- import { isPlatformBrowser, CommonModule } from '@angular/common';
7
+ import { isPlatformBrowser, NgClass } from '@angular/common';
9
8
  import { XButtonComponent } from '@ng-nest/ui/button';
10
9
  import { XProgressComponent } from '@ng-nest/ui/progress';
11
10
 
@@ -43,8 +42,8 @@ class XCarouselProperty extends XProperty {
43
42
  */
44
43
  this.activeChange = new EventEmitter();
45
44
  }
46
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
47
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCarouselProperty, selector: "x-carousel-property", inputs: { active: "active", height: "height", trigger: "trigger", arrow: "arrow", direction: "direction", autoplay: "autoplay", interval: "interval", outside: "outside", card: "card", text: "text", progress: "progress", progressColor: "progressColor", current: "current" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
45
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
46
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XCarouselProperty, selector: "x-carousel-property", inputs: { active: "active", height: "height", trigger: "trigger", arrow: "arrow", direction: "direction", autoplay: "autoplay", interval: "interval", outside: "outside", card: "card", text: "text", progress: "progress", progressColor: "progressColor", current: "current" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
48
47
  }
49
48
  __decorate([
50
49
  XInputNumber()
@@ -76,7 +75,7 @@ __decorate([
76
75
  __decorate([
77
76
  XInputBoolean()
78
77
  ], XCarouselProperty.prototype, "current", void 0);
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselProperty, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselProperty, decorators: [{
80
79
  type: Component,
81
80
  args: [{ selector: `${XCarouselPrefix}-property`, template: '' }]
82
81
  }], propDecorators: { active: [{
@@ -118,13 +117,13 @@ const XCarouselPanelPrefix = 'x-carousel-panel';
118
117
  * Carousel Panel Property
119
118
  */
120
119
  class XCarouselPanelProperty extends XProperty {
121
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselPanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
122
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCarouselPanelProperty, selector: "x-carousel-panel-property", inputs: { active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
120
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselPanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
121
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XCarouselPanelProperty, selector: "x-carousel-panel-property", inputs: { active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
123
122
  }
124
123
  __decorate([
125
124
  XInputBoolean()
126
125
  ], XCarouselPanelProperty.prototype, "active", void 0);
127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselPanelProperty, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselPanelProperty, decorators: [{
128
127
  type: Component,
129
128
  args: [{ selector: `${XCarouselPanelPrefix}-property`, template: '' }]
130
129
  }], propDecorators: { active: [{
@@ -210,15 +209,12 @@ class XCarouselComponent extends XCarouselProperty {
210
209
  getActivated(index) {
211
210
  return Number(this.active) === index;
212
211
  }
213
- trackByPanel(index, _item) {
214
- return index;
215
- }
216
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
217
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCarouselComponent, isStandalone: true, selector: "x-carousel", viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n <div class=\"x-carousel-text\" *ngIf=\"text\">{{ text }}</div>\r\n <div class=\"x-carousel-current\" *ngIf=\"current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n <div class=\"x-carousel-progress\" *ngIf=\"progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative}.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate3D(-15px,-50%,0)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate3D(15px,-50%,0)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translate(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:transparent;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside .x-carousel-indicator{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside .x-carousel-indicator>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside .x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#00000080}.x-carousel:hover .x-carousel-content>x-button,.x-carousel-arrow-always .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left{transform:translate3D(0,-50%,0)}.x-carousel:hover .x-carousel-content>x-button.arrow-right,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right{transform:translate3D(0,-50%,0)}.x-carousel-horizontal,.x-carousel-vertical{overflow:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}.x-carousel-text{position:absolute;bottom:0;z-index:10;font-size:1rem;padding:.5rem .75rem}.x-carousel-progress{position:absolute;bottom:0;z-index:11;width:100%;height:.5rem}.x-carousel-progress x-progress{position:relative;height:.5rem;display:block;top:0}.x-carousel-progress x-progress .x-progress{position:relative;top:-.5625rem}.x-carousel-progress x-progress .x-progress-rail,.x-carousel-progress x-progress .x-progress-bg{border-radius:0}.x-carousel-progress x-progress .x-progress-rail{background-color:transparent}.x-carousel-current{position:absolute;bottom:0;right:0;z-index:11;padding:.5rem .75rem;font-size:var(--x-font-size-big)}.x-carousel-active{color:var(--x-primary);font-weight:600;font-size:1.5rem}.x-carousel-count{color:var(--x-text);font-weight:600}.x-carousel-has-current .x-carousel-text{padding-right:5rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XProgressComponent, selector: "x-progress" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
212
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
213
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: XCarouselComponent, isStandalone: true, selector: "x-carousel", viewQueries: [{ propertyName: "carousel", first: true, predicate: ["carousel"], descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n @if (arrow !== 'never' && direction !== 'vertical') {\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n }\r\n <ng-content></ng-content>\r\n @if (text) {\r\n <div class=\"x-carousel-text\">{{ text }}</div>\r\n }\r\n @if (current) {\r\n <div class=\"x-carousel-current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n }\r\n @if (progress) {\r\n <div class=\"x-carousel-progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n }\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n @for (panel of panelChanges; track i; let i = $index) {\r\n <li [class.x-activated]=\"getActivated(i)\" (click)=\"action(i, 0, 'click')\" (mouseenter)=\"action(i, 0, 'hover')\">\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative}.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate3D(-15px,-50%,0)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate3D(15px,-50%,0)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translate(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:transparent;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside .x-carousel-indicator{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside .x-carousel-indicator>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside .x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#00000080}.x-carousel:hover .x-carousel-content>x-button,.x-carousel-arrow-always .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left{transform:translate3D(0,-50%,0)}.x-carousel:hover .x-carousel-content>x-button.arrow-right,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right{transform:translate3D(0,-50%,0)}.x-carousel-horizontal,.x-carousel-vertical{overflow:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}.x-carousel-text{position:absolute;bottom:0;z-index:10;font-size:1rem;padding:.5rem .75rem}.x-carousel-progress{position:absolute;bottom:0;z-index:11;width:100%;height:.5rem}.x-carousel-progress x-progress{position:relative;height:.5rem;display:block;top:0}.x-carousel-progress x-progress .x-progress{position:relative;top:-.5625rem}.x-carousel-progress x-progress .x-progress-rail,.x-carousel-progress x-progress .x-progress-bg{border-radius:0}.x-carousel-progress x-progress .x-progress-rail{background-color:transparent}.x-carousel-current{position:absolute;bottom:0;right:0;z-index:11;padding:.5rem .75rem;font-size:var(--x-font-size-big)}.x-carousel-active{color:var(--x-primary);font-weight:600;font-size:1.5rem}.x-carousel-count{color:var(--x-text);font-weight:600}.x-carousel-has-current .x-carousel-text{padding-right:5rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XProgressComponent, selector: "x-progress" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
218
214
  }
219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselComponent, decorators: [{
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselComponent, decorators: [{
220
216
  type: Component,
221
- args: [{ selector: `${XCarouselPrefix}`, standalone: true, imports: [CommonModule, XButtonComponent, XProgressComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n <div class=\"x-carousel-text\" *ngIf=\"text\">{{ text }}</div>\r\n <div class=\"x-carousel-current\" *ngIf=\"current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n <div class=\"x-carousel-progress\" *ngIf=\"progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative}.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate3D(-15px,-50%,0)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate3D(15px,-50%,0)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translate(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:transparent;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside .x-carousel-indicator{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside .x-carousel-indicator>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside .x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#00000080}.x-carousel:hover .x-carousel-content>x-button,.x-carousel-arrow-always .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left{transform:translate3D(0,-50%,0)}.x-carousel:hover .x-carousel-content>x-button.arrow-right,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right{transform:translate3D(0,-50%,0)}.x-carousel-horizontal,.x-carousel-vertical{overflow:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}.x-carousel-text{position:absolute;bottom:0;z-index:10;font-size:1rem;padding:.5rem .75rem}.x-carousel-progress{position:absolute;bottom:0;z-index:11;width:100%;height:.5rem}.x-carousel-progress x-progress{position:relative;height:.5rem;display:block;top:0}.x-carousel-progress x-progress .x-progress{position:relative;top:-.5625rem}.x-carousel-progress x-progress .x-progress-rail,.x-carousel-progress x-progress .x-progress-bg{border-radius:0}.x-carousel-progress x-progress .x-progress-rail{background-color:transparent}.x-carousel-current{position:absolute;bottom:0;right:0;z-index:11;padding:.5rem .75rem;font-size:var(--x-font-size-big)}.x-carousel-active{color:var(--x-primary);font-weight:600;font-size:1.5rem}.x-carousel-count{color:var(--x-text);font-weight:600}.x-carousel-has-current .x-carousel-text{padding-right:5rem}\n"] }]
217
+ args: [{ selector: `${XCarouselPrefix}`, standalone: true, imports: [NgClass, XButtonComponent, XProgressComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n @if (arrow !== 'never' && direction !== 'vertical') {\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n }\r\n <ng-content></ng-content>\r\n @if (text) {\r\n <div class=\"x-carousel-text\">{{ text }}</div>\r\n }\r\n @if (current) {\r\n <div class=\"x-carousel-current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n }\r\n @if (progress) {\r\n <div class=\"x-carousel-progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n }\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n @for (panel of panelChanges; track i; let i = $index) {\r\n <li [class.x-activated]=\"getActivated(i)\" (click)=\"action(i, 0, 'click')\" (mouseenter)=\"action(i, 0, 'hover')\">\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n", styles: [".x-carousel{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative}.x-carousel-content{position:relative}.x-carousel-content>x-button{opacity:0;visibility:hidden;top:50%;z-index:10;transform:translateY(-50%);position:absolute;transition:var(--x-animation-duration-base) ease-out}.x-carousel-content>x-button .x-button{border:none;outline:none;padding:0;margin:0;height:2.25rem;width:2.25rem;border-radius:50%;background-color:#1f2d3d26;color:var(--x-background-100);text-align:center}.x-carousel-content>x-button .x-button:hover{color:var(--x-background-100);background-color:#1f2d3d40}.x-carousel-content>x-button.arrow-left{left:1rem;transform:translate3D(-15px,-50%,0)}.x-carousel-content>x-button.arrow-right{right:1rem;transform:translate3D(15px,-50%,0)}.x-carousel-content>x-carousel-panel{position:absolute;top:0;left:0;width:100%;height:100%;display:inline-block;overflow:hidden;background-color:var(--x-background-a100);z-index:0}.x-carousel-content>x-carousel-panel.x-carousel-animating{transition:.4s ease-in-out}.x-carousel-content>x-carousel-panel.x-carousel-card{width:50%}.x-carousel-content>x-carousel-panel.x-carousel-in-stage{cursor:pointer;z-index:1}.x-carousel-content>x-carousel-panel.x-carousel-in-stage .x-carousel-mask{position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(--x-background);opacity:.24;transition:.2s}.x-carousel-content>x-carousel-panel.x-carousel-in-stage:hover .x-carousel-mask{opacity:.12}.x-carousel-content>x-carousel-panel.x-activated{z-index:2}.x-carousel-indicator{bottom:.25rem;left:50%;transform:translate(-50%);position:absolute;z-index:2;display:inline-flex}.x-carousel-indicator>li{cursor:pointer;background-color:transparent;display:inline-flex;padding:.75rem .25rem}.x-carousel-indicator>li>x-button .x-button{padding:0;width:1.875rem;height:.125rem;background-color:#1f2d3d26;transition:.3s}.x-carousel-indicator>li:hover>x-button .x-button{background-color:#1f2d3d40}.x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#ffffffe6}.x-carousel-indicator-outside .x-carousel-indicator{position:static;transform:none;display:flex;align-items:center;justify-content:center}.x-carousel-indicator-outside .x-carousel-indicator>li>x-button .x-button{background-color:var(--x-text-700)}.x-carousel-indicator-outside .x-carousel-indicator>li.x-activated>x-button .x-button{background-color:#00000080}.x-carousel:hover .x-carousel-content>x-button,.x-carousel-arrow-always .x-carousel-content>x-button{opacity:1;visibility:inherit}.x-carousel:hover .x-carousel-content>x-button.arrow-left,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-left{transform:translate3D(0,-50%,0)}.x-carousel:hover .x-carousel-content>x-button.arrow-right,.x-carousel-arrow-always .x-carousel-content>x-button.arrow-right{transform:translate3D(0,-50%,0)}.x-carousel-horizontal,.x-carousel-vertical{overflow:hidden}.x-carousel-vertical>.x-carousel-indicator{right:0;top:50%;left:inherit;bottom:inherit;flex-direction:column;transform:translateY(-50%)}.x-carousel-vertical>.x-carousel-indicator>li{padding:.25rem .75rem}.x-carousel-vertical>.x-carousel-indicator>li>x-button .x-button{width:.125rem;height:1rem}.x-carousel-text{position:absolute;bottom:0;z-index:10;font-size:1rem;padding:.5rem .75rem}.x-carousel-progress{position:absolute;bottom:0;z-index:11;width:100%;height:.5rem}.x-carousel-progress x-progress{position:relative;height:.5rem;display:block;top:0}.x-carousel-progress x-progress .x-progress{position:relative;top:-.5625rem}.x-carousel-progress x-progress .x-progress-rail,.x-carousel-progress x-progress .x-progress-bg{border-radius:0}.x-carousel-progress x-progress .x-progress-rail{background-color:transparent}.x-carousel-current{position:absolute;bottom:0;right:0;z-index:11;padding:.5rem .75rem;font-size:var(--x-font-size-big)}.x-carousel-active{color:var(--x-primary);font-weight:600;font-size:1.5rem}.x-carousel-count{color:var(--x-text);font-weight:600}.x-carousel-has-current .x-carousel-text{padding-right:5rem}\n"] }]
222
218
  }], propDecorators: { carousel: [{
223
219
  type: ViewChild,
224
220
  args: ['carousel']
@@ -348,20 +344,20 @@ class XCarouselPanelComponent extends XCarouselPanelProperty {
348
344
  else
349
345
  this.renderer.removeClass(this.elementRef.nativeElement, cls);
350
346
  }
351
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
352
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCarouselPanelComponent, isStandalone: true, selector: "x-carousel-panel", usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
347
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
348
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: XCarouselPanelComponent, isStandalone: true, selector: "x-carousel-panel", usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (carousel?.card) {\r\n <div [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
353
349
  }
354
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
355
351
  type: Component,
356
- args: [{ selector: `${XCarouselPanelPrefix}`, standalone: true, imports: [CommonModule], animations: [XDropAnimation], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"] }]
352
+ args: [{ selector: `${XCarouselPanelPrefix}`, standalone: true, animations: [XDropAnimation], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (carousel?.card) {\r\n <div [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"] }]
357
353
  }] });
358
354
 
359
355
  class XCarouselModule {
360
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
361
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: XCarouselModule, imports: [XCarouselComponent, XCarouselPanelComponent], exports: [XCarouselComponent, XCarouselPanelComponent] }); }
362
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselModule, imports: [XCarouselComponent, XCarouselPanelComponent] }); }
356
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
357
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XCarouselModule, imports: [XCarouselComponent, XCarouselPanelComponent], exports: [XCarouselComponent, XCarouselPanelComponent] }); }
358
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselModule, imports: [XCarouselComponent] }); }
363
359
  }
364
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCarouselModule, decorators: [{
360
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCarouselModule, decorators: [{
365
361
  type: NgModule,
366
362
  args: [{
367
363
  imports: [XCarouselComponent, XCarouselPanelComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-carousel.mjs","sources":["../../../../lib/ng-nest/ui/carousel/carousel.property.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.html","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.html","../../../../lib/ng-nest/ui/carousel/carousel.module.ts","../../../../lib/ng-nest/ui/carousel/ng-nest-ui-carousel.ts"],"sourcesContent":["import {\r\n XProperty,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XWithConfig,\r\n XShadow,\r\n XDisplayDirection,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Carousel\r\n * @selector x-carousel\r\n * @decorator component\r\n */\r\nexport const XCarouselPrefix = 'x-carousel';\r\nconst X_CONFIG_NAME = 'carousel';\r\n\r\n/**\r\n * Carousel Property\r\n */\r\n@Component({ selector: `${XCarouselPrefix}-property`, template: '' })\r\nexport class XCarouselProperty extends XProperty {\r\n /**\r\n * @zh_CN 当前激活的幻灯片索引\r\n * @en_US Index of the currently active slide\r\n */\r\n @Input() @XInputNumber() active: XNumber = 0;\r\n /**\r\n * @zh_CN 幻灯片高度\r\n * @en_US Slide height\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '15rem') height?: string;\r\n /**\r\n * @zh_CN 切换器触发方式\r\n * @en_US Switcher trigger method\r\n */\r\n @Input() @XWithConfig<XCarouselTrigger>(X_CONFIG_NAME, 'hover') trigger?: XCarouselTrigger;\r\n /**\r\n * @zh_CN 箭头显示影藏方式\r\n * @en_US Arrow shows how to hide\r\n */\r\n @Input() @XWithConfig<XCarouselArrow>(X_CONFIG_NAME, 'hover') arrow?: XCarouselArrow;\r\n /**\r\n * @zh_CN 幻灯片轮播方向\r\n * @en_US Slide rotation direction\r\n */\r\n @Input()\r\n @XWithConfig<XCarouselDirection>(X_CONFIG_NAME, 'horizontal')\r\n direction?: XCarouselDirection;\r\n /**\r\n * @zh_CN 自动切换\r\n * @en_US Automatic switching\r\n */\r\n @Input() @XInputBoolean() autoplay: XBoolean = true;\r\n /**\r\n * @zh_CN 自动切换时间间隔\r\n * @en_US Automatic switching time interval\r\n */\r\n @Input() interval: XNumber = 3000;\r\n /**\r\n * @zh_CN 切换器否显示在外面\r\n * @en_US Whether the switcher is displayed outside\r\n */\r\n @Input() @XInputBoolean() outside?: XBoolean;\r\n /**\r\n * @zh_CN 是否以卡片的方式显示幻灯片\r\n * @en_US Whether to display the slideshow as a card\r\n */\r\n @Input() @XInputBoolean() card?: XBoolean;\r\n /**\r\n * @zh_CN 显示文字\r\n * @en_US Display text\r\n */\r\n @Input() text?: string;\r\n /**\r\n * @zh_CN 显示进度条\r\n * @en_US Show progress\r\n */\r\n @Input() @XInputBoolean() progress?: XBoolean;\r\n /**\r\n * @zh_CN 进度条颜色\r\n * @en_US Progress color\r\n */\r\n @Input() progressColor?: string;\r\n /**\r\n * @zh_CN 显示当前页面\r\n * @en_US Show current page\r\n */\r\n @Input() @XInputBoolean() current?: XBoolean;\r\n /**\r\n * @zh_CN 激活的序号改变的事件\r\n * @en_US The activated sequence number changed event\r\n */\r\n @Output() activeChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN 指示器切换方式\r\n * @en_US Indicator switching method\r\n */\r\nexport type XCarouselTrigger = XTrigger;\r\n\r\n/**\r\n * @zh_CN 切换箭头显示方式\r\n * @en_US Toggle arrow display\r\n */\r\nexport type XCarouselArrow = XShadow;\r\n\r\n/**\r\n * @zh_CN 走马灯展示的方向\r\n * @en_US The direction of the revolving lantern\r\n */\r\nexport type XCarouselDirection = XDisplayDirection;\r\n\r\n/**\r\n * Carousel Panel\r\n * @selector x-carousel-panel\r\n * @decorator component\r\n */\r\nexport const XCarouselPanelPrefix = 'x-carousel-panel';\r\n\r\n/**\r\n * Carousel Panel Property\r\n */\r\n@Component({ selector: `${XCarouselPanelPrefix}-property`, template: '' })\r\nexport class XCarouselPanelProperty extends XProperty {\r\n /**\r\n * @zh_CN 激活当前幻灯片\r\n * @en_US Activate the current slide\r\n */\r\n @Input() @XInputBoolean() active?: XBoolean;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewChild,\r\n PLATFORM_ID,\r\n inject\r\n} from '@angular/core';\r\nimport { XCarouselPrefix, XCarouselProperty } from './carousel.property';\r\nimport {\r\n XIsUndefined,\r\n XIsChange,\r\n XIsEmpty,\r\n XNumber,\r\n XResize,\r\n XConfigService,\r\n XResizeObserver\r\n} from '@ng-nest/ui/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil, debounceTime } from 'rxjs/operators';\r\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XProgressComponent } from '@ng-nest/ui/progress';\r\n\r\n@Component({\r\n selector: `${XCarouselPrefix}`,\r\n standalone: true,\r\n imports: [CommonModule, XButtonComponent, XProgressComponent],\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselComponent extends XCarouselProperty implements OnInit, OnChanges {\r\n @ViewChild('carousel') carousel!: ElementRef<HTMLElement>;\r\n @ViewChild('content') content!: ElementRef<HTMLElement>;\r\n start: number = -1;\r\n before!: number;\r\n timer: any;\r\n precentTimer: any;\r\n panelChanges: BehaviorSubject<any>[] = [];\r\n platformId = inject(PLATFORM_ID);\r\n isBrowser = true;\r\n percent = 0;\r\n count = 0;\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: XResizeObserver;\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n get page() {\r\n return Number(this.active) + 1;\r\n }\r\n\r\n ngOnInit() {\r\n this.isBrowser = isPlatformBrowser(this.platformId);\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.autoplay && this.resetInterval();\r\n XResize(this.content.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this._resizeObserver = x.resizeObserver;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges): void {\r\n const { active } = simples;\r\n XIsChange(active) && this.setActiveItem(Number(this.active));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.panelChanges.forEach((x) => x.complete());\r\n this._unSubject.complete();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n action(index: XNumber, increase: number, event?: string): void {\r\n if (!XIsUndefined(event) && this.trigger !== event) return;\r\n this.autoplay && this.resetInterval();\r\n this.setActiveItem(Number(index) + increase);\r\n }\r\n\r\n resetInterval(): void {\r\n if (!this.isBrowser) return;\r\n this.timer && clearInterval(this.timer);\r\n this.precentTimer && clearInterval(this.precentTimer);\r\n this.percent = 0;\r\n const js = Number(this.interval) / 100;\r\n this.precentTimer = setInterval(() => {\r\n this.percent += 1;\r\n this.cdr.detectChanges();\r\n }, js);\r\n this.timer = setInterval(() => {\r\n this.percent = 0;\r\n this.setActiveItem(Number(this.active) + 1);\r\n }, Number(this.interval));\r\n }\r\n\r\n setActiveItem(index: number): void {\r\n if (this.start === -1) return;\r\n this.before = Number(this.active);\r\n const nextValue = index > this.start ? 0 : index < 0 ? this.start : index;\r\n this.active = nextValue;\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XCarouselPrefix}-${this.direction}`] = !XIsEmpty(this.direction);\r\n }\r\n\r\n getActivated(index: number) {\r\n return Number(this.active) === index;\r\n }\r\n\r\n trackByPanel(index: number, _item: any) {\r\n return index;\r\n }\r\n}\r\n","<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n <ng-container *ngIf=\"arrow !== 'never' && direction !== 'vertical'\">\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n <div class=\"x-carousel-text\" *ngIf=\"text\">{{ text }}</div>\r\n <div class=\"x-carousel-current\" *ngIf=\"current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n <div class=\"x-carousel-progress\" *ngIf=\"progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n <li\r\n *ngFor=\"let panel of panelChanges; let i = index; trackBy: trackByPanel\"\r\n [class.x-activated]=\"getActivated(i)\"\r\n (click)=\"action(i, 0, 'click')\"\r\n (mouseenter)=\"action(i, 0, 'hover')\"\r\n >\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n </ul>\r\n</div>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XCarouselPanelPrefix, XCarouselPanelProperty } from './carousel.property';\r\nimport { XDropAnimation, XConfigService } from '@ng-nest/ui/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XCarouselPanelPrefix}`,\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './carousel-panel.component.html',\r\n styleUrls: ['./carousel-panel.component.scss'],\r\n animations: [XDropAnimation],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselPanelComponent extends XCarouselPanelProperty implements OnInit, OnDestroy {\r\n index!: number;\r\n width!: number;\r\n height!: number;\r\n animating!: boolean;\r\n preTranslate!: number;\r\n cardScale = 0.83;\r\n scale = 1;\r\n inStage = false;\r\n updateSub = new BehaviorSubject(false);\r\n unSubject = new Subject<void>();\r\n carousel = inject(XCarouselComponent, { optional: true, host: true });\r\n private renderer = inject(Renderer2);\r\n private elementRef = inject(ElementRef);\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n if (this.carousel) {\r\n this.carousel.count++;\r\n this.carousel.start++;\r\n this.index = this.carousel.start;\r\n this.setClass('x-carousel-card', Boolean(this.carousel.card));\r\n this.carousel.panelChanges.push(this.updateSub);\r\n }\r\n this.updateSub.pipe(takeUntil(this.unSubject)).subscribe((x) => {\r\n if (x) this.update();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.carousel) {\r\n this.carousel.start--;\r\n const idx = this.carousel.panelChanges.indexOf(this.updateSub);\r\n this.carousel.panelChanges.splice(idx, 1);\r\n }\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setActive() {\r\n const isActive: boolean = this.carousel?.active === this.index;\r\n if (this.active !== isActive) {\r\n this.active = isActive;\r\n this.setClass('x-activated', this.active);\r\n }\r\n }\r\n\r\n setStyles() {\r\n if (!this.carousel) return;\r\n this.width = this.elementRef.nativeElement.offsetWidth;\r\n this.height = this.elementRef.nativeElement.offsetHeight;\r\n let translate: number;\r\n let offset: number = Number(this.carousel.active) - this.index;\r\n let distance = this.width;\r\n let translateType = 'translateX';\r\n if (this.carousel.card) {\r\n if (this.carousel.direction === 'vertical') {\r\n console.warn('[x-carousel] vertical direction is not supported in card mode');\r\n }\r\n this.inStage = Math.round(Math.abs(offset)) <= 1;\r\n this.setClass('x-carousel-in-stage', this.inStage);\r\n translate = this.calcCardTranslate(this.index, Number(this.carousel.active))!;\r\n this.scale = offset === 0 ? 1 : this.cardScale;\r\n } else {\r\n if (this.carousel?.direction === 'vertical') {\r\n distance = this.height;\r\n translateType = 'translateY';\r\n }\r\n const map: any = {\r\n '-2': -distance,\r\n '-1': distance,\r\n '0': 0,\r\n '1': 0 - distance,\r\n '2': distance\r\n };\r\n offset = offset < -2 ? -2 : offset > 2 ? 2 : offset;\r\n translate = map[offset];\r\n }\r\n this.animating =\r\n this.carousel.active === this.index ||\r\n this.carousel.before === this.index ||\r\n this.carousel.start === Math.abs(offset) ||\r\n Boolean(this.carousel.card);\r\n this.setClass('x-carousel-animating', this.animating);\r\n this.renderer.setStyle(\r\n this.elementRef.nativeElement,\r\n 'transform',\r\n `${translateType}(${translate}px) scale(${this.scale})`\r\n );\r\n }\r\n\r\n calcCardTranslate(index: number, activeIndex: number) {\r\n if (!this.carousel) return;\r\n const parentWidth = this.carousel.carousel.nativeElement.offsetWidth;\r\n let offset: number = index - activeIndex;\r\n let activeFirstOrLast = this.carousel.start > 1 && this.carousel.start === Math.abs(offset);\r\n if (this.inStage || activeFirstOrLast) {\r\n if (activeFirstOrLast) offset = offset < 0 ? 1 : -1;\r\n return (parentWidth * ((2 - this.cardScale) * offset + 1)) / 4;\r\n } else if (index < activeIndex) {\r\n return (-(1 + this.cardScale) * parentWidth) / 4;\r\n } else {\r\n return ((3 + this.cardScale) * parentWidth) / 4;\r\n }\r\n }\r\n\r\n update() {\r\n this.setActive();\r\n this.setStyles();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n panelClick() {\r\n if (!this.carousel) return;\r\n if (this.carousel.card && this.carousel.active !== this.index) {\r\n this.carousel.autoplay && this.carousel.resetInterval();\r\n this.carousel.setActiveItem(this.index);\r\n }\r\n }\r\n\r\n setClass(cls: string, value: boolean) {\r\n if (value) this.renderer.addClass(this.elementRef.nativeElement, cls);\r\n else this.renderer.removeClass(this.elementRef.nativeElement, cls);\r\n }\r\n}\r\n","<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n <div *ngIf=\"carousel?.card\" [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { XCarouselPanelComponent } from './carousel-panel.component';\r\n\r\n@NgModule({\r\n imports: [XCarouselComponent, XCarouselPanelComponent],\r\n exports: [XCarouselComponent, XCarouselPanelComponent]\r\n})\r\nexport class XCarouselModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["takeUntil"],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-carousel.mjs","sources":["../../../../lib/ng-nest/ui/carousel/carousel.property.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel.component.html","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.ts","../../../../lib/ng-nest/ui/carousel/carousel-panel.component.html","../../../../lib/ng-nest/ui/carousel/carousel.module.ts","../../../../lib/ng-nest/ui/carousel/ng-nest-ui-carousel.ts"],"sourcesContent":["import {\r\n XProperty,\r\n XInputNumber,\r\n XInputBoolean,\r\n XNumber,\r\n XBoolean,\r\n XWithConfig,\r\n XShadow,\r\n XDisplayDirection,\r\n XTrigger\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\n\r\n/**\r\n * Carousel\r\n * @selector x-carousel\r\n * @decorator component\r\n */\r\nexport const XCarouselPrefix = 'x-carousel';\r\nconst X_CONFIG_NAME = 'carousel';\r\n\r\n/**\r\n * Carousel Property\r\n */\r\n@Component({ selector: `${XCarouselPrefix}-property`, template: '' })\r\nexport class XCarouselProperty extends XProperty {\r\n /**\r\n * @zh_CN 当前激活的幻灯片索引\r\n * @en_US Index of the currently active slide\r\n */\r\n @Input() @XInputNumber() active: XNumber = 0;\r\n /**\r\n * @zh_CN 幻灯片高度\r\n * @en_US Slide height\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '15rem') height?: string;\r\n /**\r\n * @zh_CN 切换器触发方式\r\n * @en_US Switcher trigger method\r\n */\r\n @Input() @XWithConfig<XCarouselTrigger>(X_CONFIG_NAME, 'hover') trigger?: XCarouselTrigger;\r\n /**\r\n * @zh_CN 箭头显示影藏方式\r\n * @en_US Arrow shows how to hide\r\n */\r\n @Input() @XWithConfig<XCarouselArrow>(X_CONFIG_NAME, 'hover') arrow?: XCarouselArrow;\r\n /**\r\n * @zh_CN 幻灯片轮播方向\r\n * @en_US Slide rotation direction\r\n */\r\n @Input() @XWithConfig<XCarouselDirection>(X_CONFIG_NAME, 'horizontal') direction?: XCarouselDirection;\r\n /**\r\n * @zh_CN 自动切换\r\n * @en_US Automatic switching\r\n */\r\n @Input() @XInputBoolean() autoplay: XBoolean = true;\r\n /**\r\n * @zh_CN 自动切换时间间隔\r\n * @en_US Automatic switching time interval\r\n */\r\n @Input() interval: XNumber = 3000;\r\n /**\r\n * @zh_CN 切换器否显示在外面\r\n * @en_US Whether the switcher is displayed outside\r\n */\r\n @Input() @XInputBoolean() outside?: XBoolean;\r\n /**\r\n * @zh_CN 是否以卡片的方式显示幻灯片\r\n * @en_US Whether to display the slideshow as a card\r\n */\r\n @Input() @XInputBoolean() card?: XBoolean;\r\n /**\r\n * @zh_CN 显示文字\r\n * @en_US Display text\r\n */\r\n @Input() text?: string;\r\n /**\r\n * @zh_CN 显示进度条\r\n * @en_US Show progress\r\n */\r\n @Input() @XInputBoolean() progress?: XBoolean;\r\n /**\r\n * @zh_CN 进度条颜色\r\n * @en_US Progress color\r\n */\r\n @Input() progressColor?: string;\r\n /**\r\n * @zh_CN 显示当前页面\r\n * @en_US Show current page\r\n */\r\n @Input() @XInputBoolean() current?: XBoolean;\r\n /**\r\n * @zh_CN 激活的序号改变的事件\r\n * @en_US The activated sequence number changed event\r\n */\r\n @Output() activeChange = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * @zh_CN 指示器切换方式\r\n * @en_US Indicator switching method\r\n */\r\nexport type XCarouselTrigger = XTrigger;\r\n\r\n/**\r\n * @zh_CN 切换箭头显示方式\r\n * @en_US Toggle arrow display\r\n */\r\nexport type XCarouselArrow = XShadow;\r\n\r\n/**\r\n * @zh_CN 走马灯展示的方向\r\n * @en_US The direction of the revolving lantern\r\n */\r\nexport type XCarouselDirection = XDisplayDirection;\r\n\r\n/**\r\n * Carousel Panel\r\n * @selector x-carousel-panel\r\n * @decorator component\r\n */\r\nexport const XCarouselPanelPrefix = 'x-carousel-panel';\r\n\r\n/**\r\n * Carousel Panel Property\r\n */\r\n@Component({ selector: `${XCarouselPanelPrefix}-property`, template: '' })\r\nexport class XCarouselPanelProperty extends XProperty {\r\n /**\r\n * @zh_CN 激活当前幻灯片\r\n * @en_US Activate the current slide\r\n */\r\n @Input() @XInputBoolean() active?: XBoolean;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewChild,\r\n PLATFORM_ID,\r\n inject\r\n} from '@angular/core';\r\nimport { XCarouselPrefix, XCarouselProperty } from './carousel.property';\r\nimport { XIsUndefined, XIsChange, XIsEmpty, XNumber, XResize, XConfigService, XResizeObserver } from '@ng-nest/ui/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { takeUntil, debounceTime } from 'rxjs/operators';\r\nimport { NgClass, isPlatformBrowser } from '@angular/common';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { XProgressComponent } from '@ng-nest/ui/progress';\r\n\r\n@Component({\r\n selector: `${XCarouselPrefix}`,\r\n standalone: true,\r\n imports: [NgClass, XButtonComponent, XProgressComponent],\r\n templateUrl: './carousel.component.html',\r\n styleUrls: ['./carousel.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselComponent extends XCarouselProperty implements OnInit, OnChanges {\r\n @ViewChild('carousel') carousel!: ElementRef<HTMLElement>;\r\n @ViewChild('content') content!: ElementRef<HTMLElement>;\r\n start: number = -1;\r\n before!: number;\r\n timer: any;\r\n precentTimer: any;\r\n panelChanges: BehaviorSubject<any>[] = [];\r\n platformId = inject(PLATFORM_ID);\r\n isBrowser = true;\r\n percent = 0;\r\n count = 0;\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: XResizeObserver;\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n get page() {\r\n return Number(this.active) + 1;\r\n }\r\n\r\n ngOnInit() {\r\n this.isBrowser = isPlatformBrowser(this.platformId);\r\n this.setClassMap();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.autoplay && this.resetInterval();\r\n XResize(this.content.nativeElement)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this._resizeObserver = x.resizeObserver;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges): void {\r\n const { active } = simples;\r\n XIsChange(active) && this.setActiveItem(Number(this.active));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.timer && clearInterval(this.timer);\r\n this.panelChanges.forEach((x) => x.complete());\r\n this._unSubject.complete();\r\n this._unSubject.unsubscribe();\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n action(index: XNumber, increase: number, event?: string): void {\r\n if (!XIsUndefined(event) && this.trigger !== event) return;\r\n this.autoplay && this.resetInterval();\r\n this.setActiveItem(Number(index) + increase);\r\n }\r\n\r\n resetInterval(): void {\r\n if (!this.isBrowser) return;\r\n this.timer && clearInterval(this.timer);\r\n this.precentTimer && clearInterval(this.precentTimer);\r\n this.percent = 0;\r\n const js = Number(this.interval) / 100;\r\n this.precentTimer = setInterval(() => {\r\n this.percent += 1;\r\n this.cdr.detectChanges();\r\n }, js);\r\n this.timer = setInterval(() => {\r\n this.percent = 0;\r\n this.setActiveItem(Number(this.active) + 1);\r\n }, Number(this.interval));\r\n }\r\n\r\n setActiveItem(index: number): void {\r\n if (this.start === -1) return;\r\n this.before = Number(this.active);\r\n const nextValue = index > this.start ? 0 : index < 0 ? this.start : index;\r\n this.active = nextValue;\r\n this.panelChanges.forEach((sub) => sub.next(true));\r\n this.activeChange.emit(this.active);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setClassMap() {\r\n this.classMap[`${XCarouselPrefix}-${this.direction}`] = !XIsEmpty(this.direction);\r\n }\r\n\r\n getActivated(index: number) {\r\n return Number(this.active) === index;\r\n }\r\n}\r\n","<div\r\n #carousel\r\n class=\"x-carousel\"\r\n [ngClass]=\"classMap\"\r\n [class.x-carousel-arrow-always]=\"arrow === 'always'\"\r\n [class.x-carousel-has-current]=\"current\"\r\n [class.x-carousel-indicator-outside]=\"outside || card\"\r\n>\r\n <div #content class=\"x-carousel-content\" [style.height]=\"height\">\r\n @if (arrow !== 'never' && direction !== 'vertical') {\r\n <x-button class=\"arrow-left\" icon=\"fto-chevron-left\" (click)=\"action(active, -1)\"></x-button>\r\n <x-button class=\"arrow-right\" icon=\"fto-chevron-right\" (click)=\"action(active, 1)\"></x-button>\r\n }\r\n <ng-content></ng-content>\r\n @if (text) {\r\n <div class=\"x-carousel-text\">{{ text }}</div>\r\n }\r\n @if (current) {\r\n <div class=\"x-carousel-current\">\r\n <span class=\"x-carousel-active\">{{ page }}</span> /\r\n <span class=\"x-carousel-count\">{{ count }}</span>\r\n </div>\r\n }\r\n @if (progress) {\r\n <div class=\"x-carousel-progress\">\r\n <x-progress [percent]=\"percent\" [color]=\"progressColor\" [info]=\"false\" height=\"0.325rem\"></x-progress>\r\n </div>\r\n }\r\n </div>\r\n <ul class=\"x-carousel-indicator\">\r\n @for (panel of panelChanges; track i; let i = $index) {\r\n <li [class.x-activated]=\"getActivated(i)\" (click)=\"action(i, 0, 'click')\" (mouseenter)=\"action(i, 0, 'hover')\">\r\n <x-button type=\"text\"></x-button>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XCarouselPanelPrefix, XCarouselPanelProperty } from './carousel.property';\r\nimport { XDropAnimation, XConfigService } from '@ng-nest/ui/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { BehaviorSubject, Subject, takeUntil } from 'rxjs';\r\n\r\n@Component({\r\n selector: `${XCarouselPanelPrefix}`,\r\n standalone: true,\r\n templateUrl: './carousel-panel.component.html',\r\n styleUrls: ['./carousel-panel.component.scss'],\r\n animations: [XDropAnimation],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XCarouselPanelComponent extends XCarouselPanelProperty implements OnInit, OnDestroy {\r\n index!: number;\r\n width!: number;\r\n height!: number;\r\n animating!: boolean;\r\n preTranslate!: number;\r\n cardScale = 0.83;\r\n scale = 1;\r\n inStage = false;\r\n updateSub = new BehaviorSubject(false);\r\n unSubject = new Subject<void>();\r\n carousel = inject(XCarouselComponent, { optional: true, host: true });\r\n private renderer = inject(Renderer2);\r\n private elementRef = inject(ElementRef);\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n if (this.carousel) {\r\n this.carousel.count++;\r\n this.carousel.start++;\r\n this.index = this.carousel.start;\r\n this.setClass('x-carousel-card', Boolean(this.carousel.card));\r\n this.carousel.panelChanges.push(this.updateSub);\r\n }\r\n this.updateSub.pipe(takeUntil(this.unSubject)).subscribe((x) => {\r\n if (x) this.update();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.carousel) {\r\n this.carousel.start--;\r\n const idx = this.carousel.panelChanges.indexOf(this.updateSub);\r\n this.carousel.panelChanges.splice(idx, 1);\r\n }\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setActive() {\r\n const isActive: boolean = this.carousel?.active === this.index;\r\n if (this.active !== isActive) {\r\n this.active = isActive;\r\n this.setClass('x-activated', this.active);\r\n }\r\n }\r\n\r\n setStyles() {\r\n if (!this.carousel) return;\r\n this.width = this.elementRef.nativeElement.offsetWidth;\r\n this.height = this.elementRef.nativeElement.offsetHeight;\r\n let translate: number;\r\n let offset: number = Number(this.carousel.active) - this.index;\r\n let distance = this.width;\r\n let translateType = 'translateX';\r\n if (this.carousel.card) {\r\n if (this.carousel.direction === 'vertical') {\r\n console.warn('[x-carousel] vertical direction is not supported in card mode');\r\n }\r\n this.inStage = Math.round(Math.abs(offset)) <= 1;\r\n this.setClass('x-carousel-in-stage', this.inStage);\r\n translate = this.calcCardTranslate(this.index, Number(this.carousel.active))!;\r\n this.scale = offset === 0 ? 1 : this.cardScale;\r\n } else {\r\n if (this.carousel?.direction === 'vertical') {\r\n distance = this.height;\r\n translateType = 'translateY';\r\n }\r\n const map: any = {\r\n '-2': -distance,\r\n '-1': distance,\r\n '0': 0,\r\n '1': 0 - distance,\r\n '2': distance\r\n };\r\n offset = offset < -2 ? -2 : offset > 2 ? 2 : offset;\r\n translate = map[offset];\r\n }\r\n this.animating =\r\n this.carousel.active === this.index ||\r\n this.carousel.before === this.index ||\r\n this.carousel.start === Math.abs(offset) ||\r\n Boolean(this.carousel.card);\r\n this.setClass('x-carousel-animating', this.animating);\r\n this.renderer.setStyle(\r\n this.elementRef.nativeElement,\r\n 'transform',\r\n `${translateType}(${translate}px) scale(${this.scale})`\r\n );\r\n }\r\n\r\n calcCardTranslate(index: number, activeIndex: number) {\r\n if (!this.carousel) return;\r\n const parentWidth = this.carousel.carousel.nativeElement.offsetWidth;\r\n let offset: number = index - activeIndex;\r\n let activeFirstOrLast = this.carousel.start > 1 && this.carousel.start === Math.abs(offset);\r\n if (this.inStage || activeFirstOrLast) {\r\n if (activeFirstOrLast) offset = offset < 0 ? 1 : -1;\r\n return (parentWidth * ((2 - this.cardScale) * offset + 1)) / 4;\r\n } else if (index < activeIndex) {\r\n return (-(1 + this.cardScale) * parentWidth) / 4;\r\n } else {\r\n return ((3 + this.cardScale) * parentWidth) / 4;\r\n }\r\n }\r\n\r\n update() {\r\n this.setActive();\r\n this.setStyles();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n panelClick() {\r\n if (!this.carousel) return;\r\n if (this.carousel.card && this.carousel.active !== this.index) {\r\n this.carousel.autoplay && this.carousel.resetInterval();\r\n this.carousel.setActiveItem(this.index);\r\n }\r\n }\r\n\r\n setClass(cls: string, value: boolean) {\r\n if (value) this.renderer.addClass(this.elementRef.nativeElement, cls);\r\n else this.renderer.removeClass(this.elementRef.nativeElement, cls);\r\n }\r\n}\r\n","<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (carousel?.card) {\r\n <div [hidden]=\"active\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XCarouselComponent } from './carousel.component';\r\nimport { XCarouselPanelComponent } from './carousel-panel.component';\r\n\r\n@NgModule({\r\n imports: [XCarouselComponent, XCarouselPanelComponent],\r\n exports: [XCarouselComponent, XCarouselPanelComponent]\r\n})\r\nexport class XCarouselModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["takeUntil"],"mappings":"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"}
@@ -3,16 +3,15 @@ import { NgZone, inject, ChangeDetectorRef, Component, ViewEncapsulation, Change
3
3
  import { XIsEmpty, XConnectBaseAnimation, XDataConvert, XWithConfig, XInputBoolean, XConfigService, XIsChange, XClearClass, XGetChildren, XSetData, XParents } from '@ng-nest/ui/core';
4
4
  import { Subject, of, fromEvent } from 'rxjs';
5
5
  import { takeUntil, delay, filter } from 'rxjs/operators';
6
- import * as i1 from '@angular/common';
7
- import { CommonModule, DOCUMENT } from '@angular/common';
8
6
  import { XListComponent } from '@ng-nest/ui/list';
9
- import * as i1$1 from '@angular/forms';
7
+ import * as i1 from '@angular/forms';
10
8
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
11
9
  import { __decorate } from 'tslib';
12
10
  import { XControlValueAccessor, XValueAccessor } from '@ng-nest/ui/base-form';
13
11
  import { XPortalService, XPortalConnectedPosition } from '@ng-nest/ui/portal';
14
12
  import { XInputComponent } from '@ng-nest/ui/input';
15
13
  import { Overlay } from '@angular/cdk/overlay';
14
+ import { DOCUMENT } from '@angular/common';
16
15
 
17
16
  class XCascadePortalComponent {
18
17
  constructor() {
@@ -113,12 +112,12 @@ class XCascadePortalComponent {
113
112
  }
114
113
  });
115
114
  }
116
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
117
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCascadePortalComponent, isStandalone: true, selector: "x-cascade-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-cascade-portal\" tabindex=\"-1\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <ng-container *ngFor=\"let list of nodes\">\r\n <x-list\r\n [data]=\"list\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"values\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (nodeMouseenter)=\"nodeTrigger === 'hover' && nodeMouseenter($event)\"\r\n (nodeMouseleave)=\"nodeTrigger === 'hover' && nodeMouseleave()\"\r\n checked\r\n ></x-list>\r\n </ng-container>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal:focus{outline:none}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
115
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadePortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
116
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: XCascadePortalComponent, isStandalone: true, selector: "x-cascade-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-cascade-portal\" tabindex=\"-1\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n @for (list of nodes; track i; let i = $index) {\r\n <x-list\r\n [data]=\"list\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"values\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (nodeMouseenter)=\"nodeTrigger === 'hover' && nodeMouseenter($event)\"\r\n (nodeMouseleave)=\"nodeTrigger === 'hover' && nodeMouseleave()\"\r\n checked\r\n ></x-list>\r\n }\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal:focus{outline:none}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
118
117
  }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadePortalComponent, decorators: [{
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadePortalComponent, decorators: [{
120
119
  type: Component,
121
- args: [{ selector: 'x-cascade-portal', standalone: true, imports: [CommonModule, FormsModule, XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div class=\"x-cascade-portal\" tabindex=\"-1\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <ng-container *ngFor=\"let list of nodes\">\r\n <x-list\r\n [data]=\"list\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"values\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (nodeMouseenter)=\"nodeTrigger === 'hover' && nodeMouseenter($event)\"\r\n (nodeMouseleave)=\"nodeTrigger === 'hover' && nodeMouseleave()\"\r\n checked\r\n ></x-list>\r\n </ng-container>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal:focus{outline:none}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}\n"] }]
120
+ args: [{ selector: 'x-cascade-portal', standalone: true, imports: [FormsModule, XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div class=\"x-cascade-portal\" tabindex=\"-1\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n @for (list of nodes; track i; let i = $index) {\r\n <x-list\r\n [data]=\"list\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"values\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (nodeMouseenter)=\"nodeTrigger === 'hover' && nodeMouseenter($event)\"\r\n (nodeMouseleave)=\"nodeTrigger === 'hover' && nodeMouseleave()\"\r\n checked\r\n ></x-list>\r\n }\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-cascade-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);display:flex}.x-cascade-portal:focus{outline:none}.x-cascade-portal>x-list .x-list-option{min-width:8rem}.x-cascade-portal>x-list:not(:first-child){border-left:var(--x-border-width) solid var(--x-border)}\n"] }]
122
121
  }], propDecorators: { placement: [{
123
122
  type: HostBinding,
124
123
  args: ['@x-connect-base-animation']
@@ -154,8 +153,8 @@ class XCascadeProperty extends XControlValueAccessor {
154
153
  */
155
154
  this.nodeEmit = new EventEmitter();
156
155
  }
157
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
158
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCascadeProperty, selector: "x-cascade-property", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered", nodeTrigger: "nodeTrigger", nodeHoverDelay: "nodeHoverDelay", nodeTpl: "nodeTpl" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
156
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
157
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XCascadeProperty, selector: "x-cascade-property", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered", nodeTrigger: "nodeTrigger", nodeHoverDelay: "nodeHoverDelay", nodeTpl: "nodeTpl" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
159
158
  }
160
159
  __decorate([
161
160
  XDataConvert()
@@ -176,7 +175,7 @@ __decorate([
176
175
  __decorate([
177
176
  XWithConfig(X_CONFIG_NAME, 200)
178
177
  ], XCascadeProperty.prototype, "nodeHoverDelay", void 0);
179
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeProperty, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeProperty, decorators: [{
180
179
  type: Component,
181
180
  args: [{ selector: `${XCascadePrefix}-property`, template: '' }]
182
181
  }], propDecorators: { data: [{
@@ -369,9 +368,7 @@ class XCascadeComponent extends XCascadeProperty {
369
368
  }
370
369
  setPosition(config) {
371
370
  let position = config.positionStrategy;
372
- position.positionChanges
373
- .pipe(takeUntil(this._unSubject))
374
- .subscribe((pos) => {
371
+ position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos) => {
375
372
  const place = XPortalConnectedPosition.get(pos.connectionPair);
376
373
  if (place !== this.placement) {
377
374
  this.positionChange.next(place);
@@ -448,12 +445,12 @@ class XCascadeComponent extends XCascadeProperty {
448
445
  this.setDisplayValue();
449
446
  this.cdr.detectChanges();
450
447
  }
451
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
452
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XCascadeComponent, isStandalone: true, selector: "x-cascade", providers: [XValueAccessor(XCascadeComponent)], viewQueries: [{ propertyName: "cascade", first: true, predicate: ["cascade"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
448
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
449
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XCascadeComponent, isStandalone: true, selector: "x-cascade", providers: [XValueAccessor(XCascadeComponent)], viewQueries: [{ propertyName: "cascade", first: true, predicate: ["cascade"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
453
450
  }
454
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeComponent, decorators: [{
451
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeComponent, decorators: [{
455
452
  type: Component,
456
- args: [{ selector: 'x-cascade', standalone: true, imports: [CommonModule, FormsModule, ReactiveFormsModule, XInputComponent, XControlValueAccessor], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XCascadeComponent)], template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"] }]
453
+ args: [{ selector: 'x-cascade', standalone: true, imports: [FormsModule, ReactiveFormsModule, XInputComponent, XControlValueAccessor], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XCascadeComponent)], template: "<div #cascade class=\"x-cascade\">\r\n <div class=\"x-cascade-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"] }]
457
454
  }], propDecorators: { cascade: [{
458
455
  type: ViewChild,
459
456
  args: ['cascade', { static: true }]
@@ -463,11 +460,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
463
460
  }] } });
464
461
 
465
462
  class XCascadeModule {
466
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
467
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: XCascadeModule, imports: [XCascadeComponent], exports: [XCascadeComponent] }); }
468
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeModule, imports: [XCascadeComponent] }); }
463
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
464
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XCascadeModule, imports: [XCascadeComponent], exports: [XCascadeComponent] }); }
465
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeModule, imports: [XCascadeComponent] }); }
469
466
  }
470
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XCascadeModule, decorators: [{
467
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XCascadeModule, decorators: [{
471
468
  type: NgModule,
472
469
  args: [{
473
470
  exports: [XCascadeComponent],