@ng-nest/ui 13.0.4 → 13.0.5

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 (523) hide show
  1. package/alert/alert.component.d.ts +2 -1
  2. package/core/interfaces/layout.type.d.ts +1 -1
  3. package/dialog/{dialog-container.component.d.ts → dialog-portal.component.d.ts} +3 -3
  4. package/dialog/{dialog-container.directives.d.ts → dialog-portal.directives.d.ts} +0 -0
  5. package/dialog/dialog-ref.d.ts +3 -3
  6. package/dialog/dialog.module.d.ts +3 -3
  7. package/dialog/dialog.property.d.ts +3 -3
  8. package/dialog/public-api.d.ts +2 -2
  9. package/drawer/drawer-container.component.d.ts +3 -13
  10. package/drawer/drawer-portal.component.d.ts +18 -0
  11. package/drawer/{drawer-container.directives.d.ts → drawer-portal.directives.d.ts} +0 -0
  12. package/drawer/drawer-ref.d.ts +3 -3
  13. package/drawer/drawer.component.d.ts +10 -3
  14. package/drawer/drawer.module.d.ts +9 -8
  15. package/drawer/drawer.property.d.ts +16 -2
  16. package/drawer/examples/en_US/default/container/README.md +6 -0
  17. package/drawer/examples/zh_CN/default/container/README.md +6 -0
  18. package/drawer/public-api.d.ts +3 -2
  19. package/esm2020/affix/affix.component.mjs +3 -3
  20. package/esm2020/affix/affix.module.mjs +4 -4
  21. package/esm2020/affix/affix.property.mjs +3 -3
  22. package/esm2020/alert/alert.component.mjs +11 -6
  23. package/esm2020/alert/alert.module.mjs +4 -4
  24. package/esm2020/alert/alert.property.mjs +3 -3
  25. package/esm2020/anchor/anchor.component.mjs +3 -3
  26. package/esm2020/anchor/anchor.module.mjs +4 -4
  27. package/esm2020/anchor/anchor.property.mjs +3 -3
  28. package/esm2020/api/api.component.mjs +3 -3
  29. package/esm2020/api/api.module.mjs +4 -4
  30. package/esm2020/auto-complete/auto-complete-portal.component.mjs +3 -3
  31. package/esm2020/auto-complete/auto-complete.component.mjs +3 -3
  32. package/esm2020/auto-complete/auto-complete.module.mjs +6 -7
  33. package/esm2020/auto-complete/auto-complete.property.mjs +3 -3
  34. package/esm2020/avatar/avatar.component.mjs +3 -3
  35. package/esm2020/avatar/avatar.module.mjs +4 -4
  36. package/esm2020/avatar/avatar.property.mjs +3 -3
  37. package/esm2020/back-top/back-top.component.mjs +3 -3
  38. package/esm2020/back-top/back-top.module.mjs +4 -4
  39. package/esm2020/back-top/back-top.property.mjs +3 -3
  40. package/esm2020/badge/badge.component.mjs +3 -3
  41. package/esm2020/badge/badge.module.mjs +4 -4
  42. package/esm2020/badge/badge.property.mjs +3 -3
  43. package/esm2020/base-form/base-form.component.mjs +3 -3
  44. package/esm2020/base-form/base-form.module.mjs +4 -4
  45. package/esm2020/base-form/base-form.property.mjs +3 -3
  46. package/esm2020/border/border.component.mjs +3 -3
  47. package/esm2020/border/border.module.mjs +4 -4
  48. package/esm2020/button/button.component.mjs +3 -3
  49. package/esm2020/button/button.module.mjs +4 -4
  50. package/esm2020/button/button.property.mjs +6 -6
  51. package/esm2020/button/buttons.component.mjs +3 -3
  52. package/esm2020/calendar/calendar.component.mjs +3 -3
  53. package/esm2020/calendar/calendar.module.mjs +4 -4
  54. package/esm2020/calendar/calendar.property.mjs +3 -3
  55. package/esm2020/card/card.component.mjs +3 -3
  56. package/esm2020/card/card.module.mjs +4 -4
  57. package/esm2020/card/card.property.mjs +3 -3
  58. package/esm2020/carousel/carousel-panel.component.mjs +3 -3
  59. package/esm2020/carousel/carousel.component.mjs +3 -3
  60. package/esm2020/carousel/carousel.module.mjs +4 -4
  61. package/esm2020/carousel/carousel.property.mjs +6 -6
  62. package/esm2020/cascade/cascade-portal.component.mjs +3 -3
  63. package/esm2020/cascade/cascade.component.mjs +3 -3
  64. package/esm2020/cascade/cascade.module.mjs +6 -7
  65. package/esm2020/cascade/cascade.property.mjs +3 -3
  66. package/esm2020/checkbox/checkbox.component.mjs +3 -3
  67. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  68. package/esm2020/checkbox/checkbox.property.mjs +3 -3
  69. package/esm2020/collapse/collapse-panel.component.mjs +3 -3
  70. package/esm2020/collapse/collapse.component.mjs +3 -3
  71. package/esm2020/collapse/collapse.module.mjs +4 -4
  72. package/esm2020/collapse/collapse.property.mjs +6 -6
  73. package/esm2020/color/color.component.mjs +3 -3
  74. package/esm2020/color/color.module.mjs +4 -4
  75. package/esm2020/color/color.property.mjs +3 -3
  76. package/esm2020/color-picker/color-picker-portal.component.mjs +3 -3
  77. package/esm2020/color-picker/color-picker.component.mjs +3 -3
  78. package/esm2020/color-picker/color-picker.module.mjs +6 -7
  79. package/esm2020/color-picker/color-picker.property.mjs +3 -3
  80. package/esm2020/comment/comment-reply.component.mjs +3 -3
  81. package/esm2020/comment/comment.component.mjs +3 -3
  82. package/esm2020/comment/comment.module.mjs +4 -4
  83. package/esm2020/comment/comment.property.mjs +6 -6
  84. package/esm2020/container/aside.component.mjs +3 -3
  85. package/esm2020/container/container.component.mjs +3 -3
  86. package/esm2020/container/container.module.mjs +4 -4
  87. package/esm2020/container/container.property.mjs +12 -12
  88. package/esm2020/container/footer.component.mjs +3 -3
  89. package/esm2020/container/header.component.mjs +3 -3
  90. package/esm2020/container/main.component.mjs +3 -3
  91. package/esm2020/core/config/config.service.mjs +3 -3
  92. package/esm2020/core/interfaces/layout.type.mjs +1 -1
  93. package/esm2020/core/services/http.service.mjs +3 -3
  94. package/esm2020/core/services/preloading-strategy.service.mjs +3 -3
  95. package/esm2020/core/services/storage.service.mjs +3 -3
  96. package/esm2020/core/theme/theme.service.mjs +3 -3
  97. package/esm2020/crumb/crumb.component.mjs +3 -3
  98. package/esm2020/crumb/crumb.module.mjs +4 -4
  99. package/esm2020/crumb/crumb.property.mjs +3 -3
  100. package/esm2020/date-picker/date-picker-portal.component.mjs +3 -3
  101. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  102. package/esm2020/date-picker/date-picker.module.mjs +6 -7
  103. package/esm2020/date-picker/date-picker.property.mjs +15 -15
  104. package/esm2020/date-picker/date-range-portal.component.mjs +3 -3
  105. package/esm2020/date-picker/date-range.component.mjs +3 -3
  106. package/esm2020/date-picker/picker-date.component.mjs +3 -3
  107. package/esm2020/date-picker/picker-month.component.mjs +3 -3
  108. package/esm2020/date-picker/picker-year.component.mjs +3 -3
  109. package/esm2020/description/description-item.component.mjs +3 -3
  110. package/esm2020/description/description.component.mjs +3 -3
  111. package/esm2020/description/description.module.mjs +4 -4
  112. package/esm2020/description/description.property.mjs +6 -6
  113. package/esm2020/dialog/dialog-portal.component.mjs +52 -0
  114. package/esm2020/dialog/dialog-portal.directives.mjs +73 -0
  115. package/esm2020/dialog/dialog-ref.mjs +1 -1
  116. package/esm2020/dialog/dialog.component.mjs +7 -7
  117. package/esm2020/dialog/dialog.module.mjs +11 -11
  118. package/esm2020/dialog/dialog.property.mjs +5 -5
  119. package/esm2020/dialog/dialog.service.mjs +6 -6
  120. package/esm2020/dialog/public-api.mjs +3 -3
  121. package/esm2020/doc/doc.component.mjs +3 -3
  122. package/esm2020/doc/doc.module.mjs +4 -4
  123. package/esm2020/drawer/drawer-container.component.mjs +18 -41
  124. package/esm2020/drawer/drawer-portal.component.mjs +52 -0
  125. package/esm2020/drawer/drawer-portal.directives.mjs +57 -0
  126. package/esm2020/drawer/drawer-ref.mjs +1 -1
  127. package/esm2020/drawer/drawer.component.mjs +55 -19
  128. package/esm2020/drawer/drawer.module.mjs +27 -10
  129. package/esm2020/drawer/drawer.property.mjs +22 -4
  130. package/esm2020/drawer/drawer.service.mjs +7 -7
  131. package/esm2020/drawer/public-api.mjs +4 -3
  132. package/esm2020/dropdown/dropdown-portal.component.mjs +3 -3
  133. package/esm2020/dropdown/dropdown.component.mjs +3 -3
  134. package/esm2020/dropdown/dropdown.module.mjs +6 -7
  135. package/esm2020/dropdown/dropdown.property.mjs +3 -3
  136. package/esm2020/empty/empty.component.mjs +3 -3
  137. package/esm2020/empty/empty.module.mjs +4 -4
  138. package/esm2020/empty/empty.property.mjs +3 -3
  139. package/esm2020/examples/examples.component.mjs +3 -3
  140. package/esm2020/examples/examples.module.mjs +4 -4
  141. package/esm2020/find/find.component.mjs +3 -3
  142. package/esm2020/find/find.module.mjs +4 -4
  143. package/esm2020/find/find.property.mjs +3 -3
  144. package/esm2020/form/control.component.mjs +3 -3
  145. package/esm2020/form/form.component.mjs +3 -3
  146. package/esm2020/form/form.module.mjs +4 -4
  147. package/esm2020/form/form.property.mjs +6 -6
  148. package/esm2020/highlight/highlight.component.mjs +3 -3
  149. package/esm2020/highlight/highlight.module.mjs +4 -4
  150. package/esm2020/highlight/highlight.property.mjs +3 -3
  151. package/esm2020/i18n/i18n.directive.mjs +3 -3
  152. package/esm2020/i18n/i18n.module.mjs +4 -4
  153. package/esm2020/i18n/i18n.pipe.mjs +3 -3
  154. package/esm2020/i18n/i18n.service.mjs +3 -3
  155. package/esm2020/icon/icon.component.mjs +3 -3
  156. package/esm2020/icon/icon.module.mjs +4 -4
  157. package/esm2020/icon/icon.property.mjs +3 -3
  158. package/esm2020/icon/icon.service.mjs +3 -3
  159. package/esm2020/inner/inner.component.mjs +3 -3
  160. package/esm2020/inner/inner.module.mjs +4 -4
  161. package/esm2020/inner/inner.property.mjs +3 -3
  162. package/esm2020/input/input-group.component.mjs +3 -3
  163. package/esm2020/input/input.component.mjs +3 -3
  164. package/esm2020/input/input.module.mjs +4 -4
  165. package/esm2020/input/input.property.mjs +6 -6
  166. package/esm2020/input-number/input-number.component.mjs +3 -3
  167. package/esm2020/input-number/input-number.module.mjs +4 -4
  168. package/esm2020/input-number/input-number.property.mjs +3 -3
  169. package/esm2020/layout/col.component.mjs +3 -3
  170. package/esm2020/layout/layout.module.mjs +4 -4
  171. package/esm2020/layout/layout.property.mjs +6 -6
  172. package/esm2020/layout/row.component.mjs +3 -3
  173. package/esm2020/link/link.component.mjs +3 -3
  174. package/esm2020/link/link.module.mjs +4 -4
  175. package/esm2020/link/link.property.mjs +3 -3
  176. package/esm2020/list/list-option.component.mjs +3 -3
  177. package/esm2020/list/list.component.mjs +3 -3
  178. package/esm2020/list/list.module.mjs +4 -4
  179. package/esm2020/list/list.property.mjs +6 -6
  180. package/esm2020/loading/loading.component.mjs +3 -3
  181. package/esm2020/loading/loading.module.mjs +4 -4
  182. package/esm2020/loading/loading.property.mjs +3 -3
  183. package/esm2020/menu/menu-node.component.mjs +3 -3
  184. package/esm2020/menu/menu.component.mjs +3 -3
  185. package/esm2020/menu/menu.module.mjs +4 -4
  186. package/esm2020/menu/menu.property.mjs +6 -6
  187. package/esm2020/message/message-ref.mjs +12 -0
  188. package/esm2020/message/message.component.mjs +6 -6
  189. package/esm2020/message/message.module.mjs +4 -4
  190. package/esm2020/message/message.property.mjs +1 -1
  191. package/esm2020/message/message.service.mjs +37 -16
  192. package/esm2020/message/public-api.mjs +2 -1
  193. package/esm2020/message-box/message-box.component.mjs +3 -3
  194. package/esm2020/message-box/message-box.module.mjs +4 -4
  195. package/esm2020/message-box/message-box.service.mjs +3 -3
  196. package/esm2020/notification/notification.component.mjs +3 -3
  197. package/esm2020/notification/notification.module.mjs +4 -4
  198. package/esm2020/notification/notification.service.mjs +3 -3
  199. package/esm2020/outlet/outlet.directive.mjs +3 -3
  200. package/esm2020/outlet/outlet.module.mjs +4 -4
  201. package/esm2020/page-header/page-header.component.mjs +3 -3
  202. package/esm2020/page-header/page-header.module.mjs +4 -4
  203. package/esm2020/page-header/page-header.property.mjs +3 -3
  204. package/esm2020/pagination/pagination.component.mjs +3 -3
  205. package/esm2020/pagination/pagination.module.mjs +4 -4
  206. package/esm2020/pagination/pagination.property.mjs +3 -3
  207. package/esm2020/pattern/pattern.component.mjs +3 -3
  208. package/esm2020/pattern/pattern.module.mjs +4 -4
  209. package/esm2020/popconfirm/popconfirm.component.mjs +28 -7
  210. package/esm2020/popconfirm/popconfirm.module.mjs +4 -4
  211. package/esm2020/popconfirm/popconfirm.property.mjs +12 -5
  212. package/esm2020/popover/popover-portal.component.mjs +3 -3
  213. package/esm2020/popover/popover.directive.mjs +11 -5
  214. package/esm2020/popover/popover.module.mjs +6 -7
  215. package/esm2020/popover/popover.property.mjs +9 -4
  216. package/esm2020/portal/portal.module.mjs +4 -4
  217. package/esm2020/portal/portal.service.mjs +3 -3
  218. package/esm2020/progress/progress.component.mjs +3 -3
  219. package/esm2020/progress/progress.module.mjs +4 -4
  220. package/esm2020/progress/progress.property.mjs +3 -3
  221. package/esm2020/radio/radio.component.mjs +3 -3
  222. package/esm2020/radio/radio.module.mjs +4 -4
  223. package/esm2020/radio/radio.property.mjs +3 -3
  224. package/esm2020/rate/rate.component.mjs +3 -3
  225. package/esm2020/rate/rate.module.mjs +4 -4
  226. package/esm2020/rate/rate.property.mjs +3 -3
  227. package/esm2020/result/result.component.mjs +3 -3
  228. package/esm2020/result/result.module.mjs +4 -4
  229. package/esm2020/result/result.property.mjs +3 -3
  230. package/esm2020/ripple/ripple.directive.mjs +3 -3
  231. package/esm2020/ripple/ripple.module.mjs +4 -4
  232. package/esm2020/ripple/ripple.property.mjs +3 -3
  233. package/esm2020/select/select-portal.component.mjs +3 -3
  234. package/esm2020/select/select.component.mjs +3 -3
  235. package/esm2020/select/select.module.mjs +6 -7
  236. package/esm2020/select/select.property.mjs +3 -3
  237. package/esm2020/skeleton/skeleton.component.mjs +3 -3
  238. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  239. package/esm2020/skeleton/skeleton.property.mjs +3 -3
  240. package/esm2020/slider/slider.component.mjs +3 -3
  241. package/esm2020/slider/slider.module.mjs +4 -4
  242. package/esm2020/slider/slider.property.mjs +3 -3
  243. package/esm2020/slider-select/slider-select.component.mjs +3 -3
  244. package/esm2020/slider-select/slider-select.module.mjs +4 -4
  245. package/esm2020/slider-select/slider-select.property.mjs +3 -3
  246. package/esm2020/statistic/countdown.component.mjs +3 -3
  247. package/esm2020/statistic/statistic.component.mjs +3 -3
  248. package/esm2020/statistic/statistic.module.mjs +4 -4
  249. package/esm2020/statistic/statistic.property.mjs +6 -6
  250. package/esm2020/steps/steps.component.mjs +3 -3
  251. package/esm2020/steps/steps.module.mjs +4 -4
  252. package/esm2020/steps/steps.property.mjs +3 -3
  253. package/esm2020/switch/switch.component.mjs +3 -3
  254. package/esm2020/switch/switch.module.mjs +4 -4
  255. package/esm2020/switch/switch.property.mjs +3 -3
  256. package/esm2020/table/drag.directive.mjs +3 -3
  257. package/esm2020/table/table-body.component.mjs +3 -3
  258. package/esm2020/table/table-foot.component.mjs +3 -3
  259. package/esm2020/table/table-head.component.mjs +3 -3
  260. package/esm2020/table/table.component.mjs +3 -3
  261. package/esm2020/table/table.module.mjs +4 -4
  262. package/esm2020/table/table.property.mjs +12 -12
  263. package/esm2020/tabs/tab-content.component.mjs +3 -3
  264. package/esm2020/tabs/tab.component.mjs +3 -3
  265. package/esm2020/tabs/tabs.component.mjs +3 -3
  266. package/esm2020/tabs/tabs.module.mjs +4 -4
  267. package/esm2020/tabs/tabs.property.mjs +6 -6
  268. package/esm2020/tag/tag.component.mjs +3 -3
  269. package/esm2020/tag/tag.module.mjs +4 -4
  270. package/esm2020/tag/tag.property.mjs +3 -3
  271. package/esm2020/text-retract/text-retract.component.mjs +3 -3
  272. package/esm2020/text-retract/text-retract.module.mjs +4 -4
  273. package/esm2020/text-retract/text-retract.property.mjs +3 -3
  274. package/esm2020/textarea/textarea.component.mjs +3 -3
  275. package/esm2020/textarea/textarea.module.mjs +4 -4
  276. package/esm2020/textarea/textarea.property.mjs +3 -3
  277. package/esm2020/theme/theme.component.mjs +3 -3
  278. package/esm2020/theme/theme.module.mjs +4 -4
  279. package/esm2020/theme/theme.property.mjs +3 -3
  280. package/esm2020/time-ago/time-ago.module.mjs +4 -4
  281. package/esm2020/time-ago/time-ago.pipe.mjs +3 -3
  282. package/esm2020/time-picker/time-picker-frame.component.mjs +3 -3
  283. package/esm2020/time-picker/time-picker-portal.component.mjs +3 -3
  284. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  285. package/esm2020/time-picker/time-picker.module.mjs +6 -7
  286. package/esm2020/time-picker/time-picker.property.mjs +3 -3
  287. package/esm2020/time-range/time-range.module.mjs +4 -4
  288. package/esm2020/time-range/time-range.pipe.mjs +3 -3
  289. package/esm2020/timeline/timeline.component.mjs +3 -3
  290. package/esm2020/timeline/timeline.module.mjs +4 -4
  291. package/esm2020/timeline/timeline.property.mjs +3 -3
  292. package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
  293. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  294. package/esm2020/tooltip/tooltip.module.mjs +6 -7
  295. package/esm2020/tooltip/tooltip.property.mjs +3 -3
  296. package/esm2020/transfer/transfer.component.mjs +3 -3
  297. package/esm2020/transfer/transfer.module.mjs +4 -4
  298. package/esm2020/transfer/transfer.property.mjs +3 -3
  299. package/esm2020/tree/tree-node.component.mjs +3 -3
  300. package/esm2020/tree/tree.component.mjs +3 -3
  301. package/esm2020/tree/tree.module.mjs +4 -4
  302. package/esm2020/tree/tree.property.mjs +6 -6
  303. package/esm2020/tree-file/tree-file.component.mjs +3 -3
  304. package/esm2020/tree-file/tree-file.module.mjs +4 -4
  305. package/esm2020/tree-file/tree-file.property.mjs +3 -3
  306. package/esm2020/typography/typography.component.mjs +3 -3
  307. package/esm2020/typography/typography.module.mjs +4 -4
  308. package/esm2020/typography/typography.property.mjs +3 -3
  309. package/esm2020/upload/upload-portal.component.mjs +3 -3
  310. package/esm2020/upload/upload.component.mjs +3 -3
  311. package/esm2020/upload/upload.module.mjs +4 -4
  312. package/esm2020/upload/upload.property.mjs +3 -3
  313. package/fesm2015/ng-nest-ui-affix.mjs +10 -10
  314. package/fesm2015/ng-nest-ui-alert.mjs +17 -12
  315. package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
  316. package/fesm2015/ng-nest-ui-anchor.mjs +10 -10
  317. package/fesm2015/ng-nest-ui-api.mjs +7 -7
  318. package/fesm2015/ng-nest-ui-auto-complete.mjs +14 -15
  319. package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
  320. package/fesm2015/ng-nest-ui-avatar.mjs +10 -10
  321. package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
  322. package/fesm2015/ng-nest-ui-badge.mjs +10 -10
  323. package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
  324. package/fesm2015/ng-nest-ui-border.mjs +7 -7
  325. package/fesm2015/ng-nest-ui-button.mjs +16 -16
  326. package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
  327. package/fesm2015/ng-nest-ui-card.mjs +10 -10
  328. package/fesm2015/ng-nest-ui-carousel.mjs +16 -16
  329. package/fesm2015/ng-nest-ui-cascade.mjs +14 -15
  330. package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
  331. package/fesm2015/ng-nest-ui-checkbox.mjs +10 -10
  332. package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
  333. package/fesm2015/ng-nest-ui-color-picker.mjs +14 -15
  334. package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
  335. package/fesm2015/ng-nest-ui-color.mjs +10 -10
  336. package/fesm2015/ng-nest-ui-comment.mjs +16 -16
  337. package/fesm2015/ng-nest-ui-container.mjs +31 -31
  338. package/fesm2015/ng-nest-ui-core.mjs +15 -15
  339. package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
  340. package/fesm2015/ng-nest-ui-date-picker.mjs +41 -42
  341. package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
  342. package/fesm2015/ng-nest-ui-description.mjs +16 -16
  343. package/fesm2015/ng-nest-ui-dialog.mjs +43 -43
  344. package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
  345. package/fesm2015/ng-nest-ui-doc.mjs +7 -7
  346. package/fesm2015/ng-nest-ui-drawer.mjs +147 -50
  347. package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
  348. package/fesm2015/ng-nest-ui-dropdown.mjs +14 -15
  349. package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
  350. package/fesm2015/ng-nest-ui-empty.mjs +10 -10
  351. package/fesm2015/ng-nest-ui-examples.mjs +7 -7
  352. package/fesm2015/ng-nest-ui-find.mjs +10 -10
  353. package/fesm2015/ng-nest-ui-form.mjs +16 -16
  354. package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
  355. package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
  356. package/fesm2015/ng-nest-ui-icon.mjs +13 -13
  357. package/fesm2015/ng-nest-ui-inner.mjs +10 -10
  358. package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
  359. package/fesm2015/ng-nest-ui-input.mjs +16 -16
  360. package/fesm2015/ng-nest-ui-layout.mjs +16 -16
  361. package/fesm2015/ng-nest-ui-link.mjs +10 -10
  362. package/fesm2015/ng-nest-ui-list.mjs +16 -16
  363. package/fesm2015/ng-nest-ui-loading.mjs +10 -10
  364. package/fesm2015/ng-nest-ui-menu.mjs +16 -16
  365. package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
  366. package/fesm2015/ng-nest-ui-message.mjs +58 -25
  367. package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
  368. package/fesm2015/ng-nest-ui-notification.mjs +10 -10
  369. package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
  370. package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
  371. package/fesm2015/ng-nest-ui-pagination.mjs +10 -10
  372. package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
  373. package/fesm2015/ng-nest-ui-popconfirm.mjs +42 -14
  374. package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
  375. package/fesm2015/ng-nest-ui-popover.mjs +26 -16
  376. package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
  377. package/fesm2015/ng-nest-ui-portal.mjs +7 -7
  378. package/fesm2015/ng-nest-ui-progress.mjs +10 -10
  379. package/fesm2015/ng-nest-ui-radio.mjs +10 -10
  380. package/fesm2015/ng-nest-ui-rate.mjs +10 -10
  381. package/fesm2015/ng-nest-ui-result.mjs +10 -10
  382. package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
  383. package/fesm2015/ng-nest-ui-select.mjs +14 -15
  384. package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
  385. package/fesm2015/ng-nest-ui-skeleton.mjs +10 -10
  386. package/fesm2015/ng-nest-ui-slider-select.mjs +10 -10
  387. package/fesm2015/ng-nest-ui-slider.mjs +10 -10
  388. package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
  389. package/fesm2015/ng-nest-ui-steps.mjs +10 -10
  390. package/fesm2015/ng-nest-ui-switch.mjs +10 -10
  391. package/fesm2015/ng-nest-ui-table.mjs +31 -31
  392. package/fesm2015/ng-nest-ui-tabs.mjs +19 -19
  393. package/fesm2015/ng-nest-ui-tag.mjs +10 -10
  394. package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
  395. package/fesm2015/ng-nest-ui-textarea.mjs +10 -10
  396. package/fesm2015/ng-nest-ui-theme.mjs +10 -10
  397. package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
  398. package/fesm2015/ng-nest-ui-time-picker.mjs +17 -18
  399. package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
  400. package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
  401. package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
  402. package/fesm2015/ng-nest-ui-tooltip.mjs +14 -15
  403. package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
  404. package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
  405. package/fesm2015/ng-nest-ui-tree-file.mjs +10 -10
  406. package/fesm2015/ng-nest-ui-tree.mjs +16 -16
  407. package/fesm2015/ng-nest-ui-typography.mjs +10 -10
  408. package/fesm2015/ng-nest-ui-upload.mjs +13 -13
  409. package/fesm2020/ng-nest-ui-affix.mjs +10 -10
  410. package/fesm2020/ng-nest-ui-alert.mjs +17 -12
  411. package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
  412. package/fesm2020/ng-nest-ui-anchor.mjs +10 -10
  413. package/fesm2020/ng-nest-ui-api.mjs +7 -7
  414. package/fesm2020/ng-nest-ui-auto-complete.mjs +14 -15
  415. package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
  416. package/fesm2020/ng-nest-ui-avatar.mjs +10 -10
  417. package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
  418. package/fesm2020/ng-nest-ui-badge.mjs +10 -10
  419. package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
  420. package/fesm2020/ng-nest-ui-border.mjs +7 -7
  421. package/fesm2020/ng-nest-ui-button.mjs +16 -16
  422. package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
  423. package/fesm2020/ng-nest-ui-card.mjs +10 -10
  424. package/fesm2020/ng-nest-ui-carousel.mjs +16 -16
  425. package/fesm2020/ng-nest-ui-cascade.mjs +14 -15
  426. package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
  427. package/fesm2020/ng-nest-ui-checkbox.mjs +10 -10
  428. package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
  429. package/fesm2020/ng-nest-ui-color-picker.mjs +14 -15
  430. package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
  431. package/fesm2020/ng-nest-ui-color.mjs +10 -10
  432. package/fesm2020/ng-nest-ui-comment.mjs +16 -16
  433. package/fesm2020/ng-nest-ui-container.mjs +31 -31
  434. package/fesm2020/ng-nest-ui-core.mjs +15 -15
  435. package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
  436. package/fesm2020/ng-nest-ui-date-picker.mjs +41 -42
  437. package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
  438. package/fesm2020/ng-nest-ui-description.mjs +16 -16
  439. package/fesm2020/ng-nest-ui-dialog.mjs +43 -43
  440. package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
  441. package/fesm2020/ng-nest-ui-doc.mjs +7 -7
  442. package/fesm2020/ng-nest-ui-drawer.mjs +145 -50
  443. package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
  444. package/fesm2020/ng-nest-ui-dropdown.mjs +14 -15
  445. package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
  446. package/fesm2020/ng-nest-ui-empty.mjs +10 -10
  447. package/fesm2020/ng-nest-ui-examples.mjs +7 -7
  448. package/fesm2020/ng-nest-ui-find.mjs +10 -10
  449. package/fesm2020/ng-nest-ui-form.mjs +16 -16
  450. package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
  451. package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
  452. package/fesm2020/ng-nest-ui-icon.mjs +13 -13
  453. package/fesm2020/ng-nest-ui-inner.mjs +10 -10
  454. package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
  455. package/fesm2020/ng-nest-ui-input.mjs +16 -16
  456. package/fesm2020/ng-nest-ui-layout.mjs +16 -16
  457. package/fesm2020/ng-nest-ui-link.mjs +10 -10
  458. package/fesm2020/ng-nest-ui-list.mjs +16 -16
  459. package/fesm2020/ng-nest-ui-loading.mjs +10 -10
  460. package/fesm2020/ng-nest-ui-menu.mjs +16 -16
  461. package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
  462. package/fesm2020/ng-nest-ui-message.mjs +57 -25
  463. package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
  464. package/fesm2020/ng-nest-ui-notification.mjs +10 -10
  465. package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
  466. package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
  467. package/fesm2020/ng-nest-ui-pagination.mjs +10 -10
  468. package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
  469. package/fesm2020/ng-nest-ui-popconfirm.mjs +42 -14
  470. package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
  471. package/fesm2020/ng-nest-ui-popover.mjs +26 -16
  472. package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
  473. package/fesm2020/ng-nest-ui-portal.mjs +7 -7
  474. package/fesm2020/ng-nest-ui-progress.mjs +10 -10
  475. package/fesm2020/ng-nest-ui-radio.mjs +10 -10
  476. package/fesm2020/ng-nest-ui-rate.mjs +10 -10
  477. package/fesm2020/ng-nest-ui-result.mjs +10 -10
  478. package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
  479. package/fesm2020/ng-nest-ui-select.mjs +14 -15
  480. package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
  481. package/fesm2020/ng-nest-ui-skeleton.mjs +10 -10
  482. package/fesm2020/ng-nest-ui-slider-select.mjs +10 -10
  483. package/fesm2020/ng-nest-ui-slider.mjs +10 -10
  484. package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
  485. package/fesm2020/ng-nest-ui-steps.mjs +10 -10
  486. package/fesm2020/ng-nest-ui-switch.mjs +10 -10
  487. package/fesm2020/ng-nest-ui-table.mjs +31 -31
  488. package/fesm2020/ng-nest-ui-tabs.mjs +19 -19
  489. package/fesm2020/ng-nest-ui-tag.mjs +10 -10
  490. package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
  491. package/fesm2020/ng-nest-ui-textarea.mjs +10 -10
  492. package/fesm2020/ng-nest-ui-theme.mjs +10 -10
  493. package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
  494. package/fesm2020/ng-nest-ui-time-picker.mjs +17 -18
  495. package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
  496. package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
  497. package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
  498. package/fesm2020/ng-nest-ui-tooltip.mjs +14 -15
  499. package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
  500. package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
  501. package/fesm2020/ng-nest-ui-tree-file.mjs +10 -10
  502. package/fesm2020/ng-nest-ui-tree.mjs +16 -16
  503. package/fesm2020/ng-nest-ui-typography.mjs +10 -10
  504. package/fesm2020/ng-nest-ui-upload.mjs +13 -13
  505. package/message/examples/en_US/default/loading/README.md +6 -0
  506. package/message/examples/zh_CN/default/loading/README.md +6 -0
  507. package/message/message-ref.d.ts +8 -0
  508. package/message/message.component.d.ts +3 -3
  509. package/message/message.property.d.ts +23 -3
  510. package/message/message.service.d.ts +4 -1
  511. package/message/public-api.d.ts +1 -0
  512. package/package.json +7 -7
  513. package/popconfirm/examples/en_US/default/async-close/README.md +6 -0
  514. package/popconfirm/examples/en_US/default/condition/README.md +6 -0
  515. package/popconfirm/examples/zh_CN/default/async-close/README.md +6 -0
  516. package/popconfirm/examples/zh_CN/default/condition/README.md +6 -0
  517. package/popconfirm/popconfirm.component.d.ts +6 -2
  518. package/popconfirm/popconfirm.property.d.ts +13 -2
  519. package/popover/popover.property.d.ts +6 -1
  520. package/steps/examples/zh_CN/default/node-status/README.md +1 -1
  521. package/esm2020/dialog/dialog-container.component.mjs +0 -52
  522. package/esm2020/dialog/dialog-container.directives.mjs +0 -73
  523. package/esm2020/drawer/drawer-container.directives.mjs +0 -57
@@ -117,9 +117,9 @@ class XCascadePortalComponent {
117
117
  });
118
118
  }
119
119
  }
120
- /** @nocollapse */ /** @nocollapse */ XCascadePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
121
- /** @nocollapse */ /** @nocollapse */ XCascadePortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCascadePortalComponent, 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"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadePortalComponent, decorators: [{
120
+ /** @nocollapse */ /** @nocollapse */ XCascadePortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
121
+ /** @nocollapse */ /** @nocollapse */ XCascadePortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCascadePortalComponent, 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"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadePortalComponent, decorators: [{
123
123
  type: Component,
124
124
  args: [{ selector: 'x-cascade-portal', 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"] }]
125
125
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { placement: [{
@@ -158,8 +158,8 @@ class XCascadeProperty extends XControlValueAccessor {
158
158
  this.nodeEmit = new EventEmitter();
159
159
  }
160
160
  }
161
- /** @nocollapse */ /** @nocollapse */ XCascadeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
162
- /** @nocollapse */ /** @nocollapse */ XCascadeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCascadeProperty, selector: "ng-component", 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 });
161
+ /** @nocollapse */ /** @nocollapse */ XCascadeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
162
+ /** @nocollapse */ /** @nocollapse */ XCascadeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCascadeProperty, selector: "ng-component", 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 });
163
163
  __decorate([
164
164
  XDataConvert()
165
165
  ], XCascadeProperty.prototype, "data", void 0);
@@ -179,7 +179,7 @@ __decorate([
179
179
  __decorate([
180
180
  XWithConfig(X_CONFIG_NAME, 200)
181
181
  ], XCascadeProperty.prototype, "nodeHoverDelay", void 0);
182
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeProperty, decorators: [{
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeProperty, decorators: [{
183
183
  type: Component,
184
184
  args: [{ template: '' }]
185
185
  }], propDecorators: { data: [{
@@ -419,9 +419,9 @@ class XCascadeComponent extends XCascadeProperty {
419
419
  this.cdr.detectChanges();
420
420
  }
421
421
  }
422
- /** @nocollapse */ /** @nocollapse */ XCascadeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2$1.Overlay }], target: i0.ɵɵFactoryTarget.Component });
423
- /** @nocollapse */ /** @nocollapse */ XCascadeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCascadeComponent, 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 [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}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], components: [{ type: i3.XInputComponent, selector: "x-input" }], directives: [{ type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
424
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeComponent, decorators: [{
422
+ /** @nocollapse */ /** @nocollapse */ XCascadeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2$1.Overlay }], target: i0.ɵɵFactoryTarget.Component });
423
+ /** @nocollapse */ /** @nocollapse */ XCascadeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCascadeComponent, 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 [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}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], components: [{ type: i3.XInputComponent, selector: "x-input" }], directives: [{ type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeComponent, decorators: [{
425
425
  type: Component,
426
426
  args: [{ selector: 'x-cascade', 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 [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}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"] }]
427
427
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.XPortalService }, { type: i0.ViewContainerRef }, { type: i2$1.Overlay }]; }, propDecorators: { cascade: [{
@@ -434,16 +434,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
434
434
 
435
435
  class XCascadeModule {
436
436
  }
437
- /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
438
- /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] });
439
- /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeModule, imports: [[CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]] });
440
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCascadeModule, decorators: [{
437
+ /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
438
+ /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] });
439
+ /** @nocollapse */ /** @nocollapse */ XCascadeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeModule, imports: [[CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]] });
440
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCascadeModule, decorators: [{
441
441
  type: NgModule,
442
442
  args: [{
443
443
  declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty],
444
444
  exports: [XCascadeComponent, XCascadePortalComponent],
445
- imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule],
446
- entryComponents: [XCascadePortalComponent]
445
+ imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]
447
446
  }]
448
447
  }] });
449
448
 
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-cascade.mjs","sources":["../../../../lib/ng-nest/ui/cascade/cascade-portal.component.ts","../../../../lib/ng-nest/ui/cascade/cascade-portal.component.html","../../../../lib/ng-nest/ui/cascade/cascade.property.ts","../../../../lib/ng-nest/ui/cascade/cascade.component.ts","../../../../lib/ng-nest/ui/cascade/cascade.component.html","../../../../lib/ng-nest/ui/cascade/cascade.module.ts","../../../../lib/ng-nest/ui/cascade/ng-nest-ui-cascade.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n NgZone,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener,\r\n TemplateRef\r\n} from '@angular/core';\r\nimport { XCascadeNode, XCascadeNodeTrigger } from './cascade.property';\r\nimport { XIsEmpty, XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { of, Subject } from 'rxjs';\r\nimport { delay, takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\n\r\n@Component({\r\n selector: 'x-cascade-portal',\r\n templateUrl: './cascade-portal.component.html',\r\n styleUrls: ['./cascade-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XCascadePortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement!: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n this.animating(true);\r\n }\r\n\r\n nodes: XCascadeNode[][] = [];\r\n datas: XCascadeNode[] = [];\r\n selecteds: XCascadeNode[] = [];\r\n value: any;\r\n valueChange!: Subject<any>;\r\n positionChange!: Subject<any>;\r\n closePortal!: Function;\r\n destroyPortal!: Function;\r\n animating!: Function;\r\n nodeEmit!: Function;\r\n values: XCascadeNode[] = [];\r\n nodeTpl!: TemplateRef<any>;\r\n nodeTrigger!: XCascadeNodeTrigger;\r\n nodeHoverDelay!: number;\r\n hoverDelayUnSub = new Subject<void>();\r\n inputCom!: XInputComponent;\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public ngZone: NgZone, public cdr: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.init();\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.value = x;\r\n this.init();\r\n this.cdr.detectChanges();\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n } else {\r\n this.values = [];\r\n }\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n setDefault() {\r\n let node = this.datas.find((x) => x.id === this.value) as XCascadeNode;\r\n this.selecteds = [node];\r\n this.nodes = [this.datas.filter((x) => x.pid === node.pid)];\r\n while (!XIsEmpty(node.pid)) {\r\n node = this.datas.find((x) => x.id === node.pid) as XCascadeNode;\r\n this.selecteds = [node, ...this.selecteds];\r\n this.nodes = [this.datas.filter((x) => x.pid === node.pid), ...this.nodes];\r\n }\r\n this.values = this.selecteds.map((x) => x.id) as XCascadeNode[];\r\n }\r\n\r\n nodeMouseenter(node: XCascadeNode) {\r\n of(true)\r\n .pipe(delay(this.nodeHoverDelay), takeUntil(this.hoverDelayUnSub))\r\n .subscribe(() => this.nodeExpansion(node, false));\r\n }\r\n\r\n nodeMouseleave() {\r\n this.hoverDelayUnSub.next();\r\n }\r\n\r\n nodeClick(node: XCascadeNode) {\r\n this.nodeExpansion(node);\r\n }\r\n\r\n nodeExpansion(node: XCascadeNode, click = true) {\r\n const level = Number(node.level);\r\n this.ngZone.run(() => {\r\n if (node.leaf) {\r\n if (this.nodes.length === level) {\r\n this.nodes = [...this.nodes, node.children] as XCascadeNode[][];\r\n this.selecteds = [...this.selecteds, node];\r\n } else {\r\n if (this.nodes.length > Number(level) + 1) {\r\n this.nodes = this.nodes.splice(0, level + 1);\r\n this.selecteds = this.selecteds.splice(0, level + 1);\r\n }\r\n this.nodes[level + 1] = node.children as XCascadeNode[];\r\n this.selecteds[level] = node;\r\n }\r\n this.values = this.selecteds.map((x) => x.id);\r\n this.cdr.detectChanges();\r\n } else if (click) {\r\n if (this.selecteds.length >= level + 1) {\r\n this.selecteds = this.selecteds.splice(0, level);\r\n }\r\n this.selecteds = [...this.selecteds, node];\r\n this.nodeEmit({\r\n node: node,\r\n nodes: this.selecteds,\r\n label: this.selecteds.map((x) => x.label).join(` / `)\r\n });\r\n }\r\n });\r\n }\r\n}\r\n","<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","import {\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XData,\r\n XCorner,\r\n XWithConfig,\r\n XSize,\r\n XInputBoolean,\r\n XBoolean,\r\n XTrigger,\r\n XNumber\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component, TemplateRef } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Cascade\r\n * @selector x-cascade\r\n * @decorator component\r\n */\r\nexport const XCascadePrefix = 'x-cascade';\r\nconst X_CONFIG_NAME = 'cascade';\r\n\r\n/**\r\n * Cascade Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCascadeProperty extends XControlValueAccessor<any> implements XCascadeOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XCascadeNode> = [];\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XCorner>(X_CONFIG_NAME, 'bottom-start') placement?: XCorner;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') override size!: XSize;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) bordered!: XBoolean;\r\n /**\r\n * @zh_CN 子节点触发方式\r\n * @en_US Sub node triggering method\r\n */\r\n @Input() @XWithConfig<XCascadeNodeTrigger>(X_CONFIG_NAME, 'click') nodeTrigger?: XCascadeNodeTrigger;\r\n /**\r\n * @zh_CN 子节点触发方式为 hover 时的延迟时间\r\n * @en_US Sub node triggering method\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 200) nodeHoverDelay?: XNumber;\r\n /**\r\n * @zh_CN 节点模板\r\n * @en_US Node template\r\n */\r\n @Input() nodeTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeEmit = new EventEmitter<XCascadeNode>();\r\n}\r\n\r\n/**\r\n * Cascade Option\r\n * @undocument true\r\n */\r\nexport interface XCascadeOption extends XFormOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n data?: XData<XCascadeNode>;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n nodeClick?: (node: XCascadeNode) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN Cascade 数据对象\r\n * @en_US Cascade data object\r\n */\r\nexport interface XCascadeNode extends XParentIdentityProperty<XCascadeNode> {}\r\n\r\n/**\r\n * @zh_CN 子节点触发方式\r\n * @en_US Sub node triggering method\r\n */\r\nexport type XCascadeNodeTrigger = XTrigger;\r\n\r\n/**\r\n * Cascade-Portal\r\n * @selector x-cascade-portal\r\n * @decorator component\r\n */\r\nexport const XCascadePortalPrefix = 'x-cascade-portal';\r\n","import { XCascadePortalComponent } from './cascade-portal.component';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewContainerRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XCascadePrefix, XCascadeNode, XCascadeProperty } from './cascade.property';\r\nimport { XIsEmpty, XIsChange, XSetData, XGetChildren, XCorner, XClearClass } from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { Overlay, OverlayConfig, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: 'x-cascade',\r\n templateUrl: './cascade.component.html',\r\n styleUrls: ['./cascade.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XCascadeComponent)]\r\n})\r\nexport class XCascadeComponent extends XCascadeProperty implements OnInit, OnChanges {\r\n @ViewChild('cascade', { static: true }) cascade!: ElementRef;\r\n @ViewChild('inputCom', { static: true }) inputCom!: XInputComponent;\r\n\r\n override writeValue(value: any) {\r\n this.value = value;\r\n this.setDisplayValue();\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n override readonly: boolean = true;\r\n clearable: boolean = false;\r\n enter: boolean = false;\r\n animating = false;\r\n displayValue: any = '';\r\n datas: XCascadeNode[] = [];\r\n nodes: XCascadeNode[] = [];\r\n portal!: XPortalOverlayRef<XCascadePortalComponent>;\r\n icon: string = 'fto-chevron-down';\r\n box!: DOMRect;\r\n protalHeight!: number;\r\n maxNodes: number = 6;\r\n protalTobottom: boolean = true;\r\n override valueTplContext: { $node: any; $nodes: any; $isValue: boolean } = { $node: null, $nodes: null, $isValue: true };\r\n valueChange: Subject<any> = new Subject();\r\n dataChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n private elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private overlay: Overlay\r\n ) {\r\n super();\r\n this.renderer.addClass(this.elementRef.nativeElement, XCascadePrefix);\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.cascade.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setSubject();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data } = changes;\r\n XIsChange(data) && this.setData();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setData() {\r\n XSetData<XCascadeNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.datas = x;\r\n this.nodes = x.filter((y) => XIsEmpty(y.pid)).map((y) => XGetChildren<XCascadeNode>(x, y, 0));\r\n this.setPortal();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-chevron-down';\r\n this.clearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.valueTplContext.$nodes = null;\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.active = false;\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.animating) return;\r\n this.active = true;\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XCascadePortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n if (place !== this.placement) {\r\n this.positionChange.next(place);\r\n this.cdr.detectChanges();\r\n }\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n datas: this.datas,\r\n nodes: [this.nodes],\r\n value: this.value,\r\n placement: this.placement,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n nodeTpl: this.nodeTpl,\r\n nodeTrigger: this.nodeTrigger,\r\n nodeHoverDelay: this.nodeHoverDelay,\r\n inputCom: this.inputCom,\r\n closePortal: () => this.closeSubject.next(),\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: { node: XCascadeNode; nodes: XCascadeNode[]; label: string }) => this.onNodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n onNodeClick(selected: { node: XCascadeNode; nodes: XCascadeNode[]; label: string }) {\r\n this.value = selected.node.id;\r\n this.displayValue = selected.label;\r\n this.valueTplContext.$node = selected;\r\n this.valueTplContext.$nodes = selected.nodes;\r\n this.closeSubject.next();\r\n this.inputCom.inputFocus();\r\n if (this.onChange) this.onChange(this.value);\r\n this.nodeEmit.emit(selected);\r\n }\r\n\r\n setDisplayValue() {\r\n let node = this.datas.find((x) => x.id === this.value) as XCascadeNode;\r\n if (typeof node === 'undefined') {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.valueTplContext.$nodes = null;\r\n return;\r\n } else {\r\n let selecteds = [node];\r\n while (!XIsEmpty(node.pid)) {\r\n node = this.datas.find((x) => x.id === node.pid) as XCascadeNode;\r\n selecteds = [node, ...selecteds];\r\n }\r\n this.displayValue = selecteds.map((x) => x.label).join(` / `);\r\n this.valueTplContext.$node = node;\r\n this.valueTplContext.$nodes = selecteds;\r\n }\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputRef,\r\n placement: [this.placement as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-cascade-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portal?.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.setData();\r\n this.setDisplayValue();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<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 [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","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XCascadeComponent } from './cascade.component';\r\nimport { XCascadePortalComponent } from './cascade-portal.component';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XCascadeProperty } from './cascade.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty],\r\n exports: [XCascadeComponent, XCascadePortalComponent],\r\n imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule],\r\n entryComponents: [XCascadePortalComponent]\r\n})\r\nexport class XCascadeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-cascade.mjs","sources":["../../../../lib/ng-nest/ui/cascade/cascade-portal.component.ts","../../../../lib/ng-nest/ui/cascade/cascade-portal.component.html","../../../../lib/ng-nest/ui/cascade/cascade.property.ts","../../../../lib/ng-nest/ui/cascade/cascade.component.ts","../../../../lib/ng-nest/ui/cascade/cascade.component.html","../../../../lib/ng-nest/ui/cascade/cascade.module.ts","../../../../lib/ng-nest/ui/cascade/ng-nest-ui-cascade.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n NgZone,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener,\r\n TemplateRef\r\n} from '@angular/core';\r\nimport { XCascadeNode, XCascadeNodeTrigger } from './cascade.property';\r\nimport { XIsEmpty, XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { of, Subject } from 'rxjs';\r\nimport { delay, takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\n\r\n@Component({\r\n selector: 'x-cascade-portal',\r\n templateUrl: './cascade-portal.component.html',\r\n styleUrls: ['./cascade-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XCascadePortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement!: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n this.animating(true);\r\n }\r\n\r\n nodes: XCascadeNode[][] = [];\r\n datas: XCascadeNode[] = [];\r\n selecteds: XCascadeNode[] = [];\r\n value: any;\r\n valueChange!: Subject<any>;\r\n positionChange!: Subject<any>;\r\n closePortal!: Function;\r\n destroyPortal!: Function;\r\n animating!: Function;\r\n nodeEmit!: Function;\r\n values: XCascadeNode[] = [];\r\n nodeTpl!: TemplateRef<any>;\r\n nodeTrigger!: XCascadeNodeTrigger;\r\n nodeHoverDelay!: number;\r\n hoverDelayUnSub = new Subject<void>();\r\n inputCom!: XInputComponent;\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public ngZone: NgZone, public cdr: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.init();\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.value = x;\r\n this.init();\r\n this.cdr.detectChanges();\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n } else {\r\n this.values = [];\r\n }\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n setDefault() {\r\n let node = this.datas.find((x) => x.id === this.value) as XCascadeNode;\r\n this.selecteds = [node];\r\n this.nodes = [this.datas.filter((x) => x.pid === node.pid)];\r\n while (!XIsEmpty(node.pid)) {\r\n node = this.datas.find((x) => x.id === node.pid) as XCascadeNode;\r\n this.selecteds = [node, ...this.selecteds];\r\n this.nodes = [this.datas.filter((x) => x.pid === node.pid), ...this.nodes];\r\n }\r\n this.values = this.selecteds.map((x) => x.id) as XCascadeNode[];\r\n }\r\n\r\n nodeMouseenter(node: XCascadeNode) {\r\n of(true)\r\n .pipe(delay(this.nodeHoverDelay), takeUntil(this.hoverDelayUnSub))\r\n .subscribe(() => this.nodeExpansion(node, false));\r\n }\r\n\r\n nodeMouseleave() {\r\n this.hoverDelayUnSub.next();\r\n }\r\n\r\n nodeClick(node: XCascadeNode) {\r\n this.nodeExpansion(node);\r\n }\r\n\r\n nodeExpansion(node: XCascadeNode, click = true) {\r\n const level = Number(node.level);\r\n this.ngZone.run(() => {\r\n if (node.leaf) {\r\n if (this.nodes.length === level) {\r\n this.nodes = [...this.nodes, node.children] as XCascadeNode[][];\r\n this.selecteds = [...this.selecteds, node];\r\n } else {\r\n if (this.nodes.length > Number(level) + 1) {\r\n this.nodes = this.nodes.splice(0, level + 1);\r\n this.selecteds = this.selecteds.splice(0, level + 1);\r\n }\r\n this.nodes[level + 1] = node.children as XCascadeNode[];\r\n this.selecteds[level] = node;\r\n }\r\n this.values = this.selecteds.map((x) => x.id);\r\n this.cdr.detectChanges();\r\n } else if (click) {\r\n if (this.selecteds.length >= level + 1) {\r\n this.selecteds = this.selecteds.splice(0, level);\r\n }\r\n this.selecteds = [...this.selecteds, node];\r\n this.nodeEmit({\r\n node: node,\r\n nodes: this.selecteds,\r\n label: this.selecteds.map((x) => x.label).join(` / `)\r\n });\r\n }\r\n });\r\n }\r\n}\r\n","<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","import {\r\n XParentIdentityProperty,\r\n XDataConvert,\r\n XData,\r\n XCorner,\r\n XWithConfig,\r\n XSize,\r\n XInputBoolean,\r\n XBoolean,\r\n XTrigger,\r\n XNumber\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component, TemplateRef } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Cascade\r\n * @selector x-cascade\r\n * @decorator component\r\n */\r\nexport const XCascadePrefix = 'x-cascade';\r\nconst X_CONFIG_NAME = 'cascade';\r\n\r\n/**\r\n * Cascade Property\r\n */\r\n@Component({ template: '' })\r\nexport class XCascadeProperty extends XControlValueAccessor<any> implements XCascadeOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n @Input() @XDataConvert() data: XData<XCascadeNode> = [];\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XCorner>(X_CONFIG_NAME, 'bottom-start') placement?: XCorner;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') override size!: XSize;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) bordered!: XBoolean;\r\n /**\r\n * @zh_CN 子节点触发方式\r\n * @en_US Sub node triggering method\r\n */\r\n @Input() @XWithConfig<XCascadeNodeTrigger>(X_CONFIG_NAME, 'click') nodeTrigger?: XCascadeNodeTrigger;\r\n /**\r\n * @zh_CN 子节点触发方式为 hover 时的延迟时间\r\n * @en_US Sub node triggering method\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 200) nodeHoverDelay?: XNumber;\r\n /**\r\n * @zh_CN 节点模板\r\n * @en_US Node template\r\n */\r\n @Input() nodeTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeEmit = new EventEmitter<XCascadeNode>();\r\n}\r\n\r\n/**\r\n * Cascade Option\r\n * @undocument true\r\n */\r\nexport interface XCascadeOption extends XFormOption {\r\n /**\r\n * @zh_CN 节点数据\r\n * @en_US Node data\r\n */\r\n data?: XData<XCascadeNode>;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n nodeClick?: (node: XCascadeNode) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN Cascade 数据对象\r\n * @en_US Cascade data object\r\n */\r\nexport interface XCascadeNode extends XParentIdentityProperty<XCascadeNode> {}\r\n\r\n/**\r\n * @zh_CN 子节点触发方式\r\n * @en_US Sub node triggering method\r\n */\r\nexport type XCascadeNodeTrigger = XTrigger;\r\n\r\n/**\r\n * Cascade-Portal\r\n * @selector x-cascade-portal\r\n * @decorator component\r\n */\r\nexport const XCascadePortalPrefix = 'x-cascade-portal';\r\n","import { XCascadePortalComponent } from './cascade-portal.component';\r\nimport { Subject } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n SimpleChanges,\r\n OnChanges,\r\n ViewContainerRef,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { XCascadePrefix, XCascadeNode, XCascadeProperty } from './cascade.property';\r\nimport { XIsEmpty, XIsChange, XSetData, XGetChildren, XCorner, XClearClass } from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { Overlay, OverlayConfig, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: 'x-cascade',\r\n templateUrl: './cascade.component.html',\r\n styleUrls: ['./cascade.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XCascadeComponent)]\r\n})\r\nexport class XCascadeComponent extends XCascadeProperty implements OnInit, OnChanges {\r\n @ViewChild('cascade', { static: true }) cascade!: ElementRef;\r\n @ViewChild('inputCom', { static: true }) inputCom!: XInputComponent;\r\n\r\n override writeValue(value: any) {\r\n this.value = value;\r\n this.setDisplayValue();\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n override readonly: boolean = true;\r\n clearable: boolean = false;\r\n enter: boolean = false;\r\n animating = false;\r\n displayValue: any = '';\r\n datas: XCascadeNode[] = [];\r\n nodes: XCascadeNode[] = [];\r\n portal!: XPortalOverlayRef<XCascadePortalComponent>;\r\n icon: string = 'fto-chevron-down';\r\n box!: DOMRect;\r\n protalHeight!: number;\r\n maxNodes: number = 6;\r\n protalTobottom: boolean = true;\r\n override valueTplContext: { $node: any; $nodes: any; $isValue: boolean } = { $node: null, $nodes: null, $isValue: true };\r\n valueChange: Subject<any> = new Subject();\r\n dataChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n private elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private overlay: Overlay\r\n ) {\r\n super();\r\n this.renderer.addClass(this.elementRef.nativeElement, XCascadePrefix);\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.cascade.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setSubject();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data } = changes;\r\n XIsChange(data) && this.setData();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setData() {\r\n XSetData<XCascadeNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.datas = x;\r\n this.nodes = x.filter((y) => XIsEmpty(y.pid)).map((y) => XGetChildren<XCascadeNode>(x, y, 0));\r\n this.setPortal();\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-chevron-down';\r\n this.clearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.valueTplContext.$nodes = null;\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.active = false;\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.animating) return;\r\n this.active = true;\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XCascadePortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n if (place !== this.placement) {\r\n this.positionChange.next(place);\r\n this.cdr.detectChanges();\r\n }\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n datas: this.datas,\r\n nodes: [this.nodes],\r\n value: this.value,\r\n placement: this.placement,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n nodeTpl: this.nodeTpl,\r\n nodeTrigger: this.nodeTrigger,\r\n nodeHoverDelay: this.nodeHoverDelay,\r\n inputCom: this.inputCom,\r\n closePortal: () => this.closeSubject.next(),\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: { node: XCascadeNode; nodes: XCascadeNode[]; label: string }) => this.onNodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n onNodeClick(selected: { node: XCascadeNode; nodes: XCascadeNode[]; label: string }) {\r\n this.value = selected.node.id;\r\n this.displayValue = selected.label;\r\n this.valueTplContext.$node = selected;\r\n this.valueTplContext.$nodes = selected.nodes;\r\n this.closeSubject.next();\r\n this.inputCom.inputFocus();\r\n if (this.onChange) this.onChange(this.value);\r\n this.nodeEmit.emit(selected);\r\n }\r\n\r\n setDisplayValue() {\r\n let node = this.datas.find((x) => x.id === this.value) as XCascadeNode;\r\n if (typeof node === 'undefined') {\r\n this.displayValue = '';\r\n this.valueTplContext.$node = null;\r\n this.valueTplContext.$nodes = null;\r\n return;\r\n } else {\r\n let selecteds = [node];\r\n while (!XIsEmpty(node.pid)) {\r\n node = this.datas.find((x) => x.id === node.pid) as XCascadeNode;\r\n selecteds = [node, ...selecteds];\r\n }\r\n this.displayValue = selecteds.map((x) => x.label).join(` / `);\r\n this.valueTplContext.$node = node;\r\n this.valueTplContext.$nodes = selecteds;\r\n }\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputRef,\r\n placement: [this.placement as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-cascade-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portal?.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.setData();\r\n this.setDisplayValue();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<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 [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","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XCascadeComponent } from './cascade.component';\r\nimport { XCascadePortalComponent } from './cascade-portal.component';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XCascadeProperty } from './cascade.property';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\n\r\n@NgModule({\r\n declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty],\r\n exports: [XCascadeComponent, XCascadePortalComponent],\r\n imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule]\r\n})\r\nexport class XCascadeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -33,8 +33,8 @@ class XCheckboxProperty extends XControlValueAccessor {
33
33
  this.data = [];
34
34
  }
35
35
  }
36
- /** @nocollapse */ /** @nocollapse */ XCheckboxProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
37
- /** @nocollapse */ /** @nocollapse */ XCheckboxProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCheckboxProperty, selector: "ng-component", inputs: { data: "data", button: "button", icon: "icon", indeterminate: "indeterminate", size: "size" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
36
+ /** @nocollapse */ /** @nocollapse */ XCheckboxProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
37
+ /** @nocollapse */ /** @nocollapse */ XCheckboxProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCheckboxProperty, selector: "ng-component", inputs: { data: "data", button: "button", icon: "icon", indeterminate: "indeterminate", size: "size" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
38
38
  __decorate([
39
39
  XDataConvert()
40
40
  ], XCheckboxProperty.prototype, "data", void 0);
@@ -50,7 +50,7 @@ __decorate([
50
50
  __decorate([
51
51
  XWithConfig(X_CONFIG_NAME, 'medium')
52
52
  ], XCheckboxProperty.prototype, "size", void 0);
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxProperty, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxProperty, decorators: [{
54
54
  type: Component,
55
55
  args: [{ template: '' }]
56
56
  }], propDecorators: { data: [{
@@ -142,9 +142,9 @@ class XCheckboxComponent extends XCheckboxProperty {
142
142
  this.cdr.detectChanges();
143
143
  }
144
144
  }
145
- /** @nocollapse */ /** @nocollapse */ XCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
146
- /** @nocollapse */ /** @nocollapse */ XCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCheckboxComponent, selector: "x-checkbox", providers: [XValueAccessor(XCheckboxComponent)], viewQueries: [{ propertyName: "checkbox", first: true, predicate: ["checkbox"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #checkbox\r\n class=\"x-checkbox\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <ng-container *ngIf=\"button || icon; else default\">\r\n <x-buttons>\r\n <x-button\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [icon]=\"item.icon\"\r\n [title]=\"item.title\"\r\n [size]=\"size\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #default>\r\n <div class=\"x-checkbox-row\">\r\n <div\r\n class=\"x-checkbox-item\"\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [class.x-checked]=\"getChecked(item.id)\"\r\n [class.x-disabled]=\"disabled || item.disabled\"\r\n [class.x-indeterminate]=\"indeterminate\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >\r\n <span class=\"x-checkbox-box\"></span>\r\n <span class=\"x-checkbox-label\">\r\n <ng-container *xOutlet=\"item.label; context: { $node: item }\">{{ item.label }}</ng-container>\r\n </span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-checkbox{margin:0;padding:0;width:100%}.x-checkbox.x-flex{display:flex}.x-checkbox.x-justify-start{justify-content:flex-start}.x-checkbox.x-justify-center{justify-content:center}.x-checkbox.x-justify-end{justify-content:flex-end}.x-checkbox.x-justify-space-between{justify-content:space-between}.x-checkbox.x-justify-space-around{justify-content:space-around}.x-checkbox.x-align-start{align-items:flex-start}.x-checkbox.x-align-center{align-items:center}.x-checkbox.x-align-end{align-items:flex-end}.x-checkbox.x-direction-column{flex-direction:column}.x-checkbox.x-direction-column-reverse{flex-direction:column-reverse}.x-checkbox.x-direction-row{flex-direction:row}.x-checkbox.x-direction-row-reverse{flex-direction:row-reverse}.x-checkbox>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-checkbox>label.x-text-align-start{text-align:start}.x-checkbox>label.x-text-align-center{text-align:center}.x-checkbox>label.x-text-align-end{text-align:end}.x-checkbox-row{flex:1;display:flex;align-items:center;flex-wrap:wrap;position:relative;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-item{position:relative;display:inline-flex;align-items:center;white-space:nowrap;outline:none;margin-right:.875rem;font-size:.875rem;cursor:pointer;transition:all .3s}.x-checkbox-item:hover{color:var(--x-primary)}.x-checkbox-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item:last-child{margin-right:0}.x-checkbox-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item.x-indeterminate .x-checkbox-box:after{top:50%;left:50%;width:.5rem;height:.5rem;background-color:var(--x-primary);border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:\" \"}.x-checkbox-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-item.x-checked .x-checkbox-box:after{border:.125rem solid var(--x-background-100);border-top:0;border-left:0;top:.3875rem;left:.1875rem;width:.3125rem;height:.625rem;transform:rotate(40deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s;content:\" \"}.x-checkbox-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-box{border:var(--x-border-width) solid var(--x-border);width:1rem;height:1rem;border-radius:.0625rem;background-color:var(--x-background-a100);position:relative;display:inline-block;box-sizing:border-box;transition:all .3s}.x-checkbox-box:hover{border-color:var(--x-primary)}.x-checkbox-box:after{position:absolute;top:.35rem;left:.175rem;display:inline-block;width:.3rem;height:.6rem;border:.125rem solid var(--x-background-a100);border-top:0;border-left:0;transform:rotate(40deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .3s;content:\" \"}.x-checkbox-label{margin-left:.325rem;-webkit-user-select:none;user-select:none}.x-checkbox.x-disabled .x-checkbox-item{color:var(--x-text-400);cursor:not-allowed}.x-checkbox.x-disabled .x-checkbox-item.x-indeterminate .x-checkbox-box:after{background-color:var(--x-text-400)}.x-checkbox.x-disabled .x-checkbox-item.x-checked .x-checkbox-box:after{background-color:transparent}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox.x-invalid>label,.x-checkbox.x-required>label{color:var(--x-danger)}.x-checkbox.x-direction-row>label{padding:0 .5rem 0 0}.x-checkbox.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-checkbox.x-direction-column,.x-checkbox.x-direction-column-reverse{align-items:inherit}\n"], components: [{ type: i2.XButtonsComponent, selector: "x-buttons" }, { type: i2.XButtonComponent, selector: "x-button" }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxComponent, decorators: [{
145
+ /** @nocollapse */ /** @nocollapse */ XCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
146
+ /** @nocollapse */ /** @nocollapse */ XCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCheckboxComponent, selector: "x-checkbox", providers: [XValueAccessor(XCheckboxComponent)], viewQueries: [{ propertyName: "checkbox", first: true, predicate: ["checkbox"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #checkbox\r\n class=\"x-checkbox\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <ng-container *ngIf=\"button || icon; else default\">\r\n <x-buttons>\r\n <x-button\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [icon]=\"item.icon\"\r\n [title]=\"item.title\"\r\n [size]=\"size\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #default>\r\n <div class=\"x-checkbox-row\">\r\n <div\r\n class=\"x-checkbox-item\"\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [class.x-checked]=\"getChecked(item.id)\"\r\n [class.x-disabled]=\"disabled || item.disabled\"\r\n [class.x-indeterminate]=\"indeterminate\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >\r\n <span class=\"x-checkbox-box\"></span>\r\n <span class=\"x-checkbox-label\">\r\n <ng-container *xOutlet=\"item.label; context: { $node: item }\">{{ item.label }}</ng-container>\r\n </span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-checkbox{margin:0;padding:0;width:100%}.x-checkbox.x-flex{display:flex}.x-checkbox.x-justify-start{justify-content:flex-start}.x-checkbox.x-justify-center{justify-content:center}.x-checkbox.x-justify-end{justify-content:flex-end}.x-checkbox.x-justify-space-between{justify-content:space-between}.x-checkbox.x-justify-space-around{justify-content:space-around}.x-checkbox.x-align-start{align-items:flex-start}.x-checkbox.x-align-center{align-items:center}.x-checkbox.x-align-end{align-items:flex-end}.x-checkbox.x-direction-column{flex-direction:column}.x-checkbox.x-direction-column-reverse{flex-direction:column-reverse}.x-checkbox.x-direction-row{flex-direction:row}.x-checkbox.x-direction-row-reverse{flex-direction:row-reverse}.x-checkbox>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-checkbox>label.x-text-align-start{text-align:start}.x-checkbox>label.x-text-align-center{text-align:center}.x-checkbox>label.x-text-align-end{text-align:end}.x-checkbox-row{flex:1;display:flex;align-items:center;flex-wrap:wrap;position:relative;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-item{position:relative;display:inline-flex;align-items:center;white-space:nowrap;outline:none;margin-right:.875rem;font-size:.875rem;cursor:pointer;transition:all .3s}.x-checkbox-item:hover{color:var(--x-primary)}.x-checkbox-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item:last-child{margin-right:0}.x-checkbox-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item.x-indeterminate .x-checkbox-box:after{top:50%;left:50%;width:.5rem;height:.5rem;background-color:var(--x-primary);border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:\" \"}.x-checkbox-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-item.x-checked .x-checkbox-box:after{border:.125rem solid var(--x-background-100);border-top:0;border-left:0;top:.3875rem;left:.1875rem;width:.3125rem;height:.625rem;transform:rotate(40deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s;content:\" \"}.x-checkbox-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-box{border:var(--x-border-width) solid var(--x-border);width:1rem;height:1rem;border-radius:.0625rem;background-color:var(--x-background-a100);position:relative;display:inline-block;box-sizing:border-box;transition:all .3s}.x-checkbox-box:hover{border-color:var(--x-primary)}.x-checkbox-box:after{position:absolute;top:.35rem;left:.175rem;display:inline-block;width:.3rem;height:.6rem;border:.125rem solid var(--x-background-a100);border-top:0;border-left:0;transform:rotate(40deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .3s;content:\" \"}.x-checkbox-label{margin-left:.325rem;-webkit-user-select:none;user-select:none}.x-checkbox.x-disabled .x-checkbox-item{color:var(--x-text-400);cursor:not-allowed}.x-checkbox.x-disabled .x-checkbox-item.x-indeterminate .x-checkbox-box:after{background-color:var(--x-text-400)}.x-checkbox.x-disabled .x-checkbox-item.x-checked .x-checkbox-box:after{background-color:transparent}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox.x-invalid>label,.x-checkbox.x-required>label{color:var(--x-danger)}.x-checkbox.x-direction-row>label{padding:0 .5rem 0 0}.x-checkbox.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-checkbox.x-direction-column,.x-checkbox.x-direction-column-reverse{align-items:inherit}\n"], components: [{ type: i2.XButtonsComponent, selector: "x-buttons" }, { type: i2.XButtonComponent, selector: "x-button" }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxComponent, decorators: [{
148
148
  type: Component,
149
149
  args: [{ selector: `${XCheckboxPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XCheckboxComponent)], template: "<div\r\n #checkbox\r\n class=\"x-checkbox\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <ng-container *ngIf=\"button || icon; else default\">\r\n <x-buttons>\r\n <x-button\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [icon]=\"item.icon\"\r\n [title]=\"item.title\"\r\n [size]=\"size\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #default>\r\n <div class=\"x-checkbox-row\">\r\n <div\r\n class=\"x-checkbox-item\"\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n [class.x-checked]=\"getChecked(item.id)\"\r\n [class.x-disabled]=\"disabled || item.disabled\"\r\n [class.x-indeterminate]=\"indeterminate\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >\r\n <span class=\"x-checkbox-box\"></span>\r\n <span class=\"x-checkbox-label\">\r\n <ng-container *xOutlet=\"item.label; context: { $node: item }\">{{ item.label }}</ng-container>\r\n </span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [".x-checkbox{margin:0;padding:0;width:100%}.x-checkbox.x-flex{display:flex}.x-checkbox.x-justify-start{justify-content:flex-start}.x-checkbox.x-justify-center{justify-content:center}.x-checkbox.x-justify-end{justify-content:flex-end}.x-checkbox.x-justify-space-between{justify-content:space-between}.x-checkbox.x-justify-space-around{justify-content:space-around}.x-checkbox.x-align-start{align-items:flex-start}.x-checkbox.x-align-center{align-items:center}.x-checkbox.x-align-end{align-items:flex-end}.x-checkbox.x-direction-column{flex-direction:column}.x-checkbox.x-direction-column-reverse{flex-direction:column-reverse}.x-checkbox.x-direction-row{flex-direction:row}.x-checkbox.x-direction-row-reverse{flex-direction:row-reverse}.x-checkbox>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-checkbox>label.x-text-align-start{text-align:start}.x-checkbox>label.x-text-align-center{text-align:center}.x-checkbox>label.x-text-align-end{text-align:end}.x-checkbox-row{flex:1;display:flex;align-items:center;flex-wrap:wrap;position:relative;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-item{position:relative;display:inline-flex;align-items:center;white-space:nowrap;outline:none;margin-right:.875rem;font-size:.875rem;cursor:pointer;transition:all .3s}.x-checkbox-item:hover{color:var(--x-primary)}.x-checkbox-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item:last-child{margin-right:0}.x-checkbox-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-item.x-indeterminate .x-checkbox-box:after{top:50%;left:50%;width:.5rem;height:.5rem;background-color:var(--x-primary);border:0;transform:translate(-50%,-50%) scale(1);opacity:1;content:\" \"}.x-checkbox-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-item.x-checked .x-checkbox-box:after{border:.125rem solid var(--x-background-100);border-top:0;border-left:0;top:.3875rem;left:.1875rem;width:.3125rem;height:.625rem;transform:rotate(40deg) scale(1) translate(-50%,-50%);opacity:1;transition:all .2s;content:\" \"}.x-checkbox-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-box{border:var(--x-border-width) solid var(--x-border);width:1rem;height:1rem;border-radius:.0625rem;background-color:var(--x-background-a100);position:relative;display:inline-block;box-sizing:border-box;transition:all .3s}.x-checkbox-box:hover{border-color:var(--x-primary)}.x-checkbox-box:after{position:absolute;top:.35rem;left:.175rem;display:inline-block;width:.3rem;height:.6rem;border:.125rem solid var(--x-background-a100);border-top:0;border-left:0;transform:rotate(40deg) scale(0) translate(-50%,-50%);opacity:0;transition:all .3s;content:\" \"}.x-checkbox-label{margin-left:.325rem;-webkit-user-select:none;user-select:none}.x-checkbox.x-disabled .x-checkbox-item{color:var(--x-text-400);cursor:not-allowed}.x-checkbox.x-disabled .x-checkbox-item.x-indeterminate .x-checkbox-box:after{background-color:var(--x-text-400)}.x-checkbox.x-disabled .x-checkbox-item.x-checked .x-checkbox-box:after{background-color:transparent}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox.x-disabled .x-checkbox-item .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox.x-invalid>label,.x-checkbox.x-required>label{color:var(--x-danger)}.x-checkbox.x-direction-row>label{padding:0 .5rem 0 0}.x-checkbox.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-checkbox.x-direction-column,.x-checkbox.x-direction-column-reverse{align-items:inherit}\n"] }]
150
150
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { checkbox: [{
@@ -154,10 +154,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
154
154
 
155
155
  class XCheckboxModule {
156
156
  }
157
- /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
158
- /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxModule, declarations: [XCheckboxComponent, XCheckboxProperty], imports: [CommonModule, FormsModule, XButtonModule, XOutletModule, XBaseFormModule], exports: [XCheckboxComponent] });
159
- /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxModule, imports: [[CommonModule, FormsModule, XButtonModule, XOutletModule, XBaseFormModule]] });
160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCheckboxModule, decorators: [{
157
+ /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
158
+ /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxModule, declarations: [XCheckboxComponent, XCheckboxProperty], imports: [CommonModule, FormsModule, XButtonModule, XOutletModule, XBaseFormModule], exports: [XCheckboxComponent] });
159
+ /** @nocollapse */ /** @nocollapse */ XCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxModule, imports: [[CommonModule, FormsModule, XButtonModule, XOutletModule, XBaseFormModule]] });
160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCheckboxModule, decorators: [{
161
161
  type: NgModule,
162
162
  args: [{
163
163
  declarations: [XCheckboxComponent, XCheckboxProperty],
@@ -33,12 +33,12 @@ class XCollapseProperty extends XProperty {
33
33
  this.activeChange = new EventEmitter();
34
34
  }
35
35
  }
36
- /** @nocollapse */ /** @nocollapse */ XCollapseProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
37
- /** @nocollapse */ /** @nocollapse */ XCollapseProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCollapseProperty, selector: "ng-component", inputs: { accordion: "accordion", active: "active" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
36
+ /** @nocollapse */ /** @nocollapse */ XCollapseProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
37
+ /** @nocollapse */ /** @nocollapse */ XCollapseProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCollapseProperty, selector: "ng-component", inputs: { accordion: "accordion", active: "active" }, outputs: { activeChange: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
38
38
  __decorate([
39
39
  XInputBoolean()
40
40
  ], XCollapseProperty.prototype, "accordion", void 0);
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseProperty, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseProperty, decorators: [{
42
42
  type: Component,
43
43
  args: [{ template: '' }]
44
44
  }], propDecorators: { accordion: [{
@@ -59,12 +59,12 @@ const XCollapsePanelPrefix = 'x-collapse-panel';
59
59
  */
60
60
  class XCollapsePanelProperty extends XProperty {
61
61
  }
62
- /** @nocollapse */ /** @nocollapse */ XCollapsePanelProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapsePanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
63
- /** @nocollapse */ /** @nocollapse */ XCollapsePanelProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCollapsePanelProperty, selector: "ng-component", inputs: { label: "label", active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
62
+ /** @nocollapse */ /** @nocollapse */ XCollapsePanelProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapsePanelProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
63
+ /** @nocollapse */ /** @nocollapse */ XCollapsePanelProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCollapsePanelProperty, selector: "ng-component", inputs: { label: "label", active: "active" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
64
64
  __decorate([
65
65
  XInputBoolean()
66
66
  ], XCollapsePanelProperty.prototype, "active", void 0);
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapsePanelProperty, decorators: [{
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapsePanelProperty, decorators: [{
68
68
  type: Component,
69
69
  args: [{ template: '' }]
70
70
  }], propDecorators: { label: [{
@@ -108,9 +108,9 @@ class XCollapseComponent extends XCollapseProperty {
108
108
  this.activeChange.emit(this.active);
109
109
  }
110
110
  }
111
- /** @nocollapse */ /** @nocollapse */ XCollapseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
112
- /** @nocollapse */ /** @nocollapse */ XCollapseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCollapseComponent, selector: "x-collapse", usesInheritance: true, ngImport: i0, template: "<div #collapse class=\"x-collapse\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-collapse{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-collapse x-collapse-panel:last-child .x-collapse-panel-header{border-bottom-color:transparent}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseComponent, decorators: [{
111
+ /** @nocollapse */ /** @nocollapse */ XCollapseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
112
+ /** @nocollapse */ /** @nocollapse */ XCollapseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCollapseComponent, selector: "x-collapse", usesInheritance: true, ngImport: i0, template: "<div #collapse class=\"x-collapse\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-collapse{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-collapse x-collapse-panel:last-child .x-collapse-panel-header{border-bottom-color:transparent}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseComponent, decorators: [{
114
114
  type: Component,
115
115
  args: [{ selector: `${XCollapsePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #collapse class=\"x-collapse\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-collapse{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-collapse x-collapse-panel:last-child .x-collapse-panel-header{border-bottom-color:transparent}\n"] }]
116
116
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; } });
@@ -144,9 +144,9 @@ class XCollapsePanelComponent extends XCollapsePanelProperty {
144
144
  this.cdr.detectChanges();
145
145
  }
146
146
  }
147
- /** @nocollapse */ /** @nocollapse */ XCollapsePanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapsePanelComponent, deps: [{ token: XCollapseComponent, host: true, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
148
- /** @nocollapse */ /** @nocollapse */ XCollapsePanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: XCollapsePanelComponent, selector: "x-collapse-panel", usesInheritance: true, ngImport: i0, template: "<div class=\"x-collapse-panel\" [class.x-activated]=\"active\">\r\n <div class=\"x-collapse-panel-header\" (click)=\"headerClick()\">\r\n <div>\r\n <ng-container *xOutlet=\"label\">{{ label }}</ng-container>\r\n </div>\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n <div class=\"x-collapse-panel-body\">\r\n <div class=\"x-collapse-panel-content\" [@x-drop-animation]=\"active\"><ng-content></ng-content></div>\r\n </div>\r\n</div>\r\n", styles: [".x-collapse-panel{margin:0;padding:0;box-sizing:border-box}.x-collapse-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 0;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);transition:border-color .3s;cursor:pointer}.x-collapse-panel-header>.x-icon{margin-right:.125rem;color:var(--x-text-300);transition:transform .3s}.x-collapse-panel-body{overflow:hidden;border-bottom:.0625rem solid transparent;transition:border-color .3s}.x-collapse-panel-content{padding-bottom:.625rem}.x-collapse-panel.x-activated .x-collapse-panel-header{border-bottom-color:transparent}.x-collapse-panel.x-activated .x-collapse-panel-header>.x-icon{transform:rotate(90deg)}.x-collapse-panel.x-activated .x-collapse-panel-body{border-bottom-color:var(--x-border)}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
149
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapsePanelComponent, decorators: [{
147
+ /** @nocollapse */ /** @nocollapse */ XCollapsePanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapsePanelComponent, deps: [{ token: XCollapseComponent, host: true, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
148
+ /** @nocollapse */ /** @nocollapse */ XCollapsePanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XCollapsePanelComponent, selector: "x-collapse-panel", usesInheritance: true, ngImport: i0, template: "<div class=\"x-collapse-panel\" [class.x-activated]=\"active\">\r\n <div class=\"x-collapse-panel-header\" (click)=\"headerClick()\">\r\n <div>\r\n <ng-container *xOutlet=\"label\">{{ label }}</ng-container>\r\n </div>\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n <div class=\"x-collapse-panel-body\">\r\n <div class=\"x-collapse-panel-content\" [@x-drop-animation]=\"active\"><ng-content></ng-content></div>\r\n </div>\r\n</div>\r\n", styles: [".x-collapse-panel{margin:0;padding:0;box-sizing:border-box}.x-collapse-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 0;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);transition:border-color .3s;cursor:pointer}.x-collapse-panel-header>.x-icon{margin-right:.125rem;color:var(--x-text-300);transition:transform .3s}.x-collapse-panel-body{overflow:hidden;border-bottom:.0625rem solid transparent;transition:border-color .3s}.x-collapse-panel-content{padding-bottom:.625rem}.x-collapse-panel.x-activated .x-collapse-panel-header{border-bottom-color:transparent}.x-collapse-panel.x-activated .x-collapse-panel-header>.x-icon{transform:rotate(90deg)}.x-collapse-panel.x-activated .x-collapse-panel-body{border-bottom-color:var(--x-border)}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapsePanelComponent, decorators: [{
150
150
  type: Component,
151
151
  args: [{ selector: `${XCollapsePanelPrefix}`, animations: [XDropAnimation], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-collapse-panel\" [class.x-activated]=\"active\">\r\n <div class=\"x-collapse-panel-header\" (click)=\"headerClick()\">\r\n <div>\r\n <ng-container *xOutlet=\"label\">{{ label }}</ng-container>\r\n </div>\r\n <x-icon type=\"fto-chevron-right\"></x-icon>\r\n </div>\r\n <div class=\"x-collapse-panel-body\">\r\n <div class=\"x-collapse-panel-content\" [@x-drop-animation]=\"active\"><ng-content></ng-content></div>\r\n </div>\r\n</div>\r\n", styles: [".x-collapse-panel{margin:0;padding:0;box-sizing:border-box}.x-collapse-panel-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem 0;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);transition:border-color .3s;cursor:pointer}.x-collapse-panel-header>.x-icon{margin-right:.125rem;color:var(--x-text-300);transition:transform .3s}.x-collapse-panel-body{overflow:hidden;border-bottom:.0625rem solid transparent;transition:border-color .3s}.x-collapse-panel-content{padding-bottom:.625rem}.x-collapse-panel.x-activated .x-collapse-panel-header{border-bottom-color:transparent}.x-collapse-panel.x-activated .x-collapse-panel-header>.x-icon{transform:rotate(90deg)}.x-collapse-panel.x-activated .x-collapse-panel-body{border-bottom-color:var(--x-border)}\n"] }]
152
152
  }], ctorParameters: function () { return [{ type: XCollapseComponent, decorators: [{
@@ -157,10 +157,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImpor
157
157
 
158
158
  class XCollapseModule {
159
159
  }
160
- /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
161
- /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseModule, declarations: [XCollapseComponent, XCollapsePanelComponent, XCollapseProperty, XCollapsePanelProperty], imports: [CommonModule, XIconModule, XOutletModule], exports: [XCollapseComponent, XCollapsePanelComponent] });
162
- /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseModule, imports: [[CommonModule, XIconModule, XOutletModule]] });
163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: XCollapseModule, decorators: [{
160
+ /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
161
+ /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseModule, declarations: [XCollapseComponent, XCollapsePanelComponent, XCollapseProperty, XCollapsePanelProperty], imports: [CommonModule, XIconModule, XOutletModule], exports: [XCollapseComponent, XCollapsePanelComponent] });
162
+ /** @nocollapse */ /** @nocollapse */ XCollapseModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseModule, imports: [[CommonModule, XIconModule, XOutletModule]] });
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XCollapseModule, decorators: [{
164
164
  type: NgModule,
165
165
  args: [{
166
166
  declarations: [XCollapseComponent, XCollapsePanelComponent, XCollapseProperty, XCollapsePanelProperty],