@ng-nest/ui 16.0.10 → 16.0.12

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 (494) hide show
  1. package/checkbox/checkbox.component.d.ts +0 -1
  2. package/checkbox/checkbox.property.d.ts +16 -1
  3. package/date-picker/date-range.component.d.ts +1 -1
  4. package/esm2022/affix/affix.component.mjs +4 -4
  5. package/esm2022/affix/affix.module.mjs +5 -5
  6. package/esm2022/affix/affix.property.mjs +4 -4
  7. package/esm2022/alert/alert.component.mjs +4 -4
  8. package/esm2022/alert/alert.module.mjs +5 -5
  9. package/esm2022/alert/alert.property.mjs +4 -4
  10. package/esm2022/anchor/anchor-inner.component.mjs +4 -4
  11. package/esm2022/anchor/anchor.component.mjs +4 -4
  12. package/esm2022/anchor/anchor.module.mjs +5 -5
  13. package/esm2022/anchor/anchor.property.mjs +7 -7
  14. package/esm2022/api/api.component.mjs +4 -4
  15. package/esm2022/api/api.module.mjs +5 -5
  16. package/esm2022/auto-complete/auto-complete-portal.component.mjs +5 -5
  17. package/esm2022/auto-complete/auto-complete.component.mjs +5 -5
  18. package/esm2022/auto-complete/auto-complete.module.mjs +5 -5
  19. package/esm2022/auto-complete/auto-complete.property.mjs +4 -4
  20. package/esm2022/avatar/avatar-group.component.mjs +4 -4
  21. package/esm2022/avatar/avatar.component.mjs +4 -4
  22. package/esm2022/avatar/avatar.module.mjs +5 -5
  23. package/esm2022/avatar/avatar.property.mjs +7 -7
  24. package/esm2022/back-top/back-top.component.mjs +4 -4
  25. package/esm2022/back-top/back-top.module.mjs +5 -5
  26. package/esm2022/back-top/back-top.property.mjs +4 -4
  27. package/esm2022/badge/badge.component.mjs +4 -4
  28. package/esm2022/badge/badge.module.mjs +5 -5
  29. package/esm2022/badge/badge.property.mjs +4 -4
  30. package/esm2022/base-form/base-form.component.mjs +4 -4
  31. package/esm2022/base-form/base-form.module.mjs +5 -5
  32. package/esm2022/base-form/base-form.property.mjs +4 -4
  33. package/esm2022/border/border.component.mjs +4 -4
  34. package/esm2022/border/border.module.mjs +5 -5
  35. package/esm2022/button/button.component.mjs +4 -4
  36. package/esm2022/button/button.module.mjs +5 -5
  37. package/esm2022/button/button.property.mjs +7 -7
  38. package/esm2022/button/buttons.component.mjs +4 -4
  39. package/esm2022/calendar/calendar.component.mjs +4 -4
  40. package/esm2022/calendar/calendar.module.mjs +5 -5
  41. package/esm2022/calendar/calendar.property.mjs +4 -4
  42. package/esm2022/card/card.component.mjs +4 -4
  43. package/esm2022/card/card.module.mjs +5 -5
  44. package/esm2022/card/card.property.mjs +4 -4
  45. package/esm2022/carousel/carousel-panel.component.mjs +4 -4
  46. package/esm2022/carousel/carousel.component.mjs +4 -4
  47. package/esm2022/carousel/carousel.module.mjs +5 -5
  48. package/esm2022/carousel/carousel.property.mjs +7 -7
  49. package/esm2022/cascade/cascade-portal.component.mjs +4 -4
  50. package/esm2022/cascade/cascade.component.mjs +4 -4
  51. package/esm2022/cascade/cascade.module.mjs +5 -5
  52. package/esm2022/cascade/cascade.property.mjs +4 -4
  53. package/esm2022/checkbox/checkbox.component.mjs +5 -7
  54. package/esm2022/checkbox/checkbox.module.mjs +5 -5
  55. package/esm2022/checkbox/checkbox.property.mjs +30 -4
  56. package/esm2022/collapse/collapse-panel.component.mjs +4 -4
  57. package/esm2022/collapse/collapse.component.mjs +4 -4
  58. package/esm2022/collapse/collapse.module.mjs +5 -5
  59. package/esm2022/collapse/collapse.property.mjs +7 -7
  60. package/esm2022/color/color.component.mjs +4 -4
  61. package/esm2022/color/color.module.mjs +5 -5
  62. package/esm2022/color/color.property.mjs +4 -4
  63. package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
  64. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  65. package/esm2022/color-picker/color-picker.module.mjs +5 -5
  66. package/esm2022/color-picker/color-picker.property.mjs +4 -4
  67. package/esm2022/comment/comment-reply.component.mjs +4 -4
  68. package/esm2022/comment/comment.component.mjs +4 -4
  69. package/esm2022/comment/comment.module.mjs +5 -5
  70. package/esm2022/comment/comment.property.mjs +7 -7
  71. package/esm2022/container/aside.component.mjs +4 -4
  72. package/esm2022/container/container.component.mjs +4 -4
  73. package/esm2022/container/container.module.mjs +5 -5
  74. package/esm2022/container/container.property.mjs +13 -13
  75. package/esm2022/container/footer.component.mjs +4 -4
  76. package/esm2022/container/header.component.mjs +4 -4
  77. package/esm2022/container/main.component.mjs +4 -4
  78. package/esm2022/core/config/config.service.mjs +4 -4
  79. package/esm2022/core/services/http.service.mjs +4 -4
  80. package/esm2022/core/services/preloading-strategy.service.mjs +4 -4
  81. package/esm2022/core/services/storage.service.mjs +4 -4
  82. package/esm2022/core/theme/theme.service.mjs +4 -4
  83. package/esm2022/crumb/crumb.component.mjs +4 -4
  84. package/esm2022/crumb/crumb.module.mjs +5 -5
  85. package/esm2022/crumb/crumb.property.mjs +4 -4
  86. package/esm2022/date-picker/date-picker-portal.component.mjs +4 -4
  87. package/esm2022/date-picker/date-picker.component.mjs +4 -4
  88. package/esm2022/date-picker/date-picker.module.mjs +5 -5
  89. package/esm2022/date-picker/date-picker.property.mjs +19 -19
  90. package/esm2022/date-picker/date-quarter.pipe.mjs +4 -4
  91. package/esm2022/date-picker/date-range-portal.component.mjs +4 -4
  92. package/esm2022/date-picker/date-range.component.mjs +4 -4
  93. package/esm2022/date-picker/picker-date.component.mjs +4 -4
  94. package/esm2022/date-picker/picker-month.component.mjs +4 -4
  95. package/esm2022/date-picker/picker-quarter.component.mjs +4 -4
  96. package/esm2022/date-picker/picker-year.component.mjs +4 -4
  97. package/esm2022/description/description-item.component.mjs +4 -4
  98. package/esm2022/description/description.component.mjs +4 -4
  99. package/esm2022/description/description.module.mjs +5 -5
  100. package/esm2022/description/description.property.mjs +7 -7
  101. package/esm2022/dialog/dialog-container.component.mjs +4 -4
  102. package/esm2022/dialog/dialog-portal.component.mjs +4 -4
  103. package/esm2022/dialog/dialog-portal.directives.mjs +19 -19
  104. package/esm2022/dialog/dialog.component.mjs +4 -4
  105. package/esm2022/dialog/dialog.module.mjs +5 -5
  106. package/esm2022/dialog/dialog.property.mjs +7 -7
  107. package/esm2022/dialog/dialog.service.mjs +4 -4
  108. package/esm2022/doc/doc.component.mjs +5 -5
  109. package/esm2022/doc/doc.module.mjs +5 -5
  110. package/esm2022/drag/drag.directive.mjs +4 -4
  111. package/esm2022/drag/drag.module.mjs +5 -5
  112. package/esm2022/drag/drag.property.mjs +4 -4
  113. package/esm2022/drawer/drawer-container.component.mjs +4 -4
  114. package/esm2022/drawer/drawer-portal.component.mjs +4 -4
  115. package/esm2022/drawer/drawer-portal.directives.mjs +10 -10
  116. package/esm2022/drawer/drawer.component.mjs +4 -4
  117. package/esm2022/drawer/drawer.module.mjs +5 -5
  118. package/esm2022/drawer/drawer.property.mjs +7 -7
  119. package/esm2022/drawer/drawer.service.mjs +4 -4
  120. package/esm2022/dropdown/dropdown-portal.component.mjs +4 -4
  121. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  122. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  123. package/esm2022/dropdown/dropdown.property.mjs +4 -4
  124. package/esm2022/empty/empty.component.mjs +4 -4
  125. package/esm2022/empty/empty.module.mjs +5 -5
  126. package/esm2022/empty/empty.property.mjs +4 -4
  127. package/esm2022/examples/examples.component.mjs +4 -4
  128. package/esm2022/examples/examples.module.mjs +5 -5
  129. package/esm2022/find/find.component.mjs +4 -4
  130. package/esm2022/find/find.module.mjs +5 -5
  131. package/esm2022/find/find.property.mjs +4 -4
  132. package/esm2022/form/control.component.mjs +4 -4
  133. package/esm2022/form/form.component.mjs +4 -4
  134. package/esm2022/form/form.module.mjs +5 -5
  135. package/esm2022/form/form.property.mjs +7 -7
  136. package/esm2022/highlight/highlight.component.mjs +4 -4
  137. package/esm2022/highlight/highlight.module.mjs +5 -5
  138. package/esm2022/highlight/highlight.property.mjs +4 -4
  139. package/esm2022/i18n/i18n.directive.mjs +4 -4
  140. package/esm2022/i18n/i18n.module.mjs +5 -5
  141. package/esm2022/i18n/i18n.pipe.mjs +4 -4
  142. package/esm2022/i18n/i18n.service.mjs +4 -4
  143. package/esm2022/icon/icon.component.mjs +4 -4
  144. package/esm2022/icon/icon.module.mjs +5 -5
  145. package/esm2022/icon/icon.property.mjs +4 -4
  146. package/esm2022/icon/icon.service.mjs +4 -4
  147. package/esm2022/image/image-group.component.mjs +4 -4
  148. package/esm2022/image/image-preview.component.mjs +4 -4
  149. package/esm2022/image/image.component.mjs +4 -4
  150. package/esm2022/image/image.module.mjs +5 -5
  151. package/esm2022/image/image.property.mjs +7 -7
  152. package/esm2022/inner/inner.component.mjs +4 -4
  153. package/esm2022/inner/inner.module.mjs +5 -5
  154. package/esm2022/inner/inner.property.mjs +4 -4
  155. package/esm2022/input/input-group.component.mjs +4 -4
  156. package/esm2022/input/input.component.mjs +4 -4
  157. package/esm2022/input/input.module.mjs +5 -5
  158. package/esm2022/input/input.property.mjs +7 -7
  159. package/esm2022/input-number/input-number.component.mjs +4 -4
  160. package/esm2022/input-number/input-number.module.mjs +5 -5
  161. package/esm2022/input-number/input-number.property.mjs +4 -4
  162. package/esm2022/keyword/keyword.directive.mjs +4 -4
  163. package/esm2022/keyword/keyword.module.mjs +5 -5
  164. package/esm2022/keyword/keyword.property.mjs +4 -4
  165. package/esm2022/layout/col.component.mjs +4 -4
  166. package/esm2022/layout/layout.module.mjs +5 -5
  167. package/esm2022/layout/layout.property.mjs +7 -7
  168. package/esm2022/layout/row.component.mjs +4 -4
  169. package/esm2022/link/link.component.mjs +4 -4
  170. package/esm2022/link/link.module.mjs +5 -5
  171. package/esm2022/link/link.property.mjs +4 -4
  172. package/esm2022/list/list-drop-group.directive.mjs +4 -4
  173. package/esm2022/list/list-option.component.mjs +4 -4
  174. package/esm2022/list/list.component.mjs +4 -4
  175. package/esm2022/list/list.module.mjs +5 -5
  176. package/esm2022/list/list.property.mjs +7 -7
  177. package/esm2022/loading/loading.component.mjs +4 -4
  178. package/esm2022/loading/loading.module.mjs +5 -5
  179. package/esm2022/loading/loading.property.mjs +4 -4
  180. package/esm2022/menu/menu-node.component.mjs +4 -4
  181. package/esm2022/menu/menu.component.mjs +4 -4
  182. package/esm2022/menu/menu.module.mjs +5 -5
  183. package/esm2022/menu/menu.property.mjs +7 -7
  184. package/esm2022/message/message.component.mjs +4 -4
  185. package/esm2022/message/message.module.mjs +5 -5
  186. package/esm2022/message/message.service.mjs +4 -4
  187. package/esm2022/message-box/message-box.component.mjs +4 -4
  188. package/esm2022/message-box/message-box.module.mjs +5 -5
  189. package/esm2022/message-box/message-box.service.mjs +4 -4
  190. package/esm2022/notification/notification.component.mjs +4 -4
  191. package/esm2022/notification/notification.module.mjs +5 -5
  192. package/esm2022/notification/notification.service.mjs +4 -4
  193. package/esm2022/outlet/outlet.directive.mjs +4 -4
  194. package/esm2022/outlet/outlet.module.mjs +5 -5
  195. package/esm2022/page-header/page-header.component.mjs +4 -4
  196. package/esm2022/page-header/page-header.module.mjs +5 -5
  197. package/esm2022/page-header/page-header.property.mjs +4 -4
  198. package/esm2022/pagination/pagination.component.mjs +4 -4
  199. package/esm2022/pagination/pagination.module.mjs +5 -5
  200. package/esm2022/pagination/pagination.property.mjs +4 -4
  201. package/esm2022/pattern/pattern.component.mjs +4 -4
  202. package/esm2022/pattern/pattern.module.mjs +5 -5
  203. package/esm2022/popconfirm/popconfirm.component.mjs +4 -4
  204. package/esm2022/popconfirm/popconfirm.module.mjs +5 -5
  205. package/esm2022/popconfirm/popconfirm.property.mjs +4 -4
  206. package/esm2022/popover/popover-portal.component.mjs +4 -4
  207. package/esm2022/popover/popover.directive.mjs +4 -4
  208. package/esm2022/popover/popover.module.mjs +5 -5
  209. package/esm2022/popover/popover.property.mjs +4 -4
  210. package/esm2022/portal/portal.module.mjs +5 -5
  211. package/esm2022/portal/portal.service.mjs +4 -4
  212. package/esm2022/progress/progress.component.mjs +4 -4
  213. package/esm2022/progress/progress.module.mjs +5 -5
  214. package/esm2022/progress/progress.property.mjs +4 -4
  215. package/esm2022/radio/radio.component.mjs +5 -5
  216. package/esm2022/radio/radio.module.mjs +5 -5
  217. package/esm2022/radio/radio.property.mjs +14 -4
  218. package/esm2022/rate/rate.component.mjs +4 -4
  219. package/esm2022/rate/rate.module.mjs +5 -5
  220. package/esm2022/rate/rate.property.mjs +4 -4
  221. package/esm2022/resizable/resizable.directive.mjs +4 -4
  222. package/esm2022/resizable/resizable.module.mjs +5 -5
  223. package/esm2022/resizable/resizable.property.mjs +4 -4
  224. package/esm2022/result/result.component.mjs +4 -4
  225. package/esm2022/result/result.module.mjs +5 -5
  226. package/esm2022/result/result.property.mjs +4 -4
  227. package/esm2022/ripple/ripple.directive.mjs +4 -4
  228. package/esm2022/ripple/ripple.module.mjs +5 -5
  229. package/esm2022/ripple/ripple.property.mjs +4 -4
  230. package/esm2022/select/select-portal.component.mjs +5 -5
  231. package/esm2022/select/select.component.mjs +5 -5
  232. package/esm2022/select/select.module.mjs +5 -5
  233. package/esm2022/select/select.property.mjs +4 -4
  234. package/esm2022/skeleton/skeleton.component.mjs +4 -4
  235. package/esm2022/skeleton/skeleton.module.mjs +5 -5
  236. package/esm2022/skeleton/skeleton.property.mjs +4 -4
  237. package/esm2022/slider/slider.component.mjs +4 -4
  238. package/esm2022/slider/slider.module.mjs +5 -5
  239. package/esm2022/slider/slider.property.mjs +4 -4
  240. package/esm2022/slider-select/slider-select.component.mjs +8 -8
  241. package/esm2022/slider-select/slider-select.module.mjs +5 -5
  242. package/esm2022/slider-select/slider-select.property.mjs +6 -4
  243. package/esm2022/statistic/countdown.component.mjs +4 -4
  244. package/esm2022/statistic/statistic.component.mjs +4 -4
  245. package/esm2022/statistic/statistic.module.mjs +5 -5
  246. package/esm2022/statistic/statistic.property.mjs +7 -7
  247. package/esm2022/steps/steps.component.mjs +4 -4
  248. package/esm2022/steps/steps.module.mjs +5 -5
  249. package/esm2022/steps/steps.property.mjs +4 -4
  250. package/esm2022/switch/switch.component.mjs +4 -4
  251. package/esm2022/switch/switch.module.mjs +5 -5
  252. package/esm2022/switch/switch.property.mjs +4 -4
  253. package/esm2022/table/table-body.component.mjs +5 -5
  254. package/esm2022/table/table-foot.component.mjs +4 -4
  255. package/esm2022/table/table-head.component.mjs +5 -5
  256. package/esm2022/table/table.component.mjs +4 -4
  257. package/esm2022/table/table.module.mjs +5 -5
  258. package/esm2022/table/table.property.mjs +13 -13
  259. package/esm2022/tabs/tab-content.component.mjs +4 -4
  260. package/esm2022/tabs/tab-link.directive.mjs +7 -7
  261. package/esm2022/tabs/tab.component.mjs +4 -4
  262. package/esm2022/tabs/tabs.component.mjs +4 -4
  263. package/esm2022/tabs/tabs.module.mjs +5 -5
  264. package/esm2022/tabs/tabs.property.mjs +7 -7
  265. package/esm2022/tag/tag.component.mjs +4 -4
  266. package/esm2022/tag/tag.module.mjs +5 -5
  267. package/esm2022/tag/tag.property.mjs +4 -4
  268. package/esm2022/text-retract/text-retract.component.mjs +4 -4
  269. package/esm2022/text-retract/text-retract.module.mjs +5 -5
  270. package/esm2022/text-retract/text-retract.property.mjs +4 -4
  271. package/esm2022/textarea/textarea.component.mjs +4 -4
  272. package/esm2022/textarea/textarea.module.mjs +5 -5
  273. package/esm2022/textarea/textarea.property.mjs +4 -4
  274. package/esm2022/theme/theme.component.mjs +4 -4
  275. package/esm2022/theme/theme.module.mjs +5 -5
  276. package/esm2022/theme/theme.property.mjs +4 -4
  277. package/esm2022/time-ago/time-ago.module.mjs +5 -5
  278. package/esm2022/time-ago/time-ago.pipe.mjs +4 -4
  279. package/esm2022/time-picker/time-picker-frame.component.mjs +4 -4
  280. package/esm2022/time-picker/time-picker-portal.component.mjs +4 -4
  281. package/esm2022/time-picker/time-picker.component.mjs +4 -4
  282. package/esm2022/time-picker/time-picker.module.mjs +5 -5
  283. package/esm2022/time-picker/time-picker.property.mjs +4 -4
  284. package/esm2022/time-range/time-range.module.mjs +5 -5
  285. package/esm2022/time-range/time-range.pipe.mjs +4 -4
  286. package/esm2022/timeline/timeline.component.mjs +5 -5
  287. package/esm2022/timeline/timeline.module.mjs +5 -5
  288. package/esm2022/timeline/timeline.property.mjs +4 -4
  289. package/esm2022/tooltip/tooltip-portal.component.mjs +6 -5
  290. package/esm2022/tooltip/tooltip.directive.mjs +4 -4
  291. package/esm2022/tooltip/tooltip.module.mjs +7 -6
  292. package/esm2022/tooltip/tooltip.property.mjs +4 -4
  293. package/esm2022/transfer/transfer.component.mjs +5 -5
  294. package/esm2022/transfer/transfer.module.mjs +5 -5
  295. package/esm2022/transfer/transfer.property.mjs +4 -4
  296. package/esm2022/tree/tree-node.component.mjs +5 -5
  297. package/esm2022/tree/tree.component.mjs +4 -4
  298. package/esm2022/tree/tree.module.mjs +5 -5
  299. package/esm2022/tree/tree.property.mjs +7 -7
  300. package/esm2022/tree/tree.service.mjs +4 -4
  301. package/esm2022/tree-file/tree-file.component.mjs +4 -4
  302. package/esm2022/tree-file/tree-file.module.mjs +5 -5
  303. package/esm2022/tree-file/tree-file.property.mjs +4 -4
  304. package/esm2022/tree-select/tree-select-portal.component.mjs +5 -5
  305. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  306. package/esm2022/tree-select/tree-select.module.mjs +5 -5
  307. package/esm2022/tree-select/tree-select.property.mjs +4 -4
  308. package/esm2022/typography/typography.component.mjs +4 -4
  309. package/esm2022/typography/typography.module.mjs +5 -5
  310. package/esm2022/typography/typography.property.mjs +4 -4
  311. package/esm2022/upload/upload-portal.component.mjs +4 -4
  312. package/esm2022/upload/upload.component.mjs +4 -4
  313. package/esm2022/upload/upload.module.mjs +5 -5
  314. package/esm2022/upload/upload.property.mjs +4 -4
  315. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  316. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  317. package/fesm2022/ng-nest-ui-alert.mjs +10 -10
  318. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  319. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  320. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  321. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  322. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  323. package/fesm2022/ng-nest-ui-auto-complete.mjs +15 -15
  324. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  325. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  326. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  327. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  328. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  329. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  330. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  331. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  332. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  333. package/fesm2022/ng-nest-ui-border.mjs +7 -7
  334. package/fesm2022/ng-nest-ui-border.mjs.map +1 -1
  335. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  336. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  337. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  338. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  339. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  340. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  341. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  342. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  343. package/fesm2022/ng-nest-ui-cascade.mjs +13 -13
  344. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  345. package/fesm2022/ng-nest-ui-checkbox.mjs +37 -13
  346. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  347. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  348. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  349. package/fesm2022/ng-nest-ui-color-picker.mjs +13 -13
  350. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  351. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  352. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  353. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  354. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  355. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  356. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  357. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  358. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  359. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  360. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  361. package/fesm2022/ng-nest-ui-date-picker.mjs +49 -49
  362. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  363. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  364. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  365. package/fesm2022/ng-nest-ui-dialog.mjs +40 -40
  366. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  368. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  369. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  370. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  371. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  372. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  373. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  374. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  375. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  376. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  377. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  378. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  379. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  380. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  381. package/fesm2022/ng-nest-ui-form.mjs +16 -16
  382. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  383. package/fesm2022/ng-nest-ui-highlight.mjs +10 -10
  384. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  385. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  386. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  387. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  388. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-image.mjs +19 -19
  390. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  391. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  392. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  393. package/fesm2022/ng-nest-ui-input-number.mjs +10 -10
  394. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  395. package/fesm2022/ng-nest-ui-input.mjs +16 -16
  396. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  397. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  398. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  399. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  400. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  401. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  402. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  403. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  404. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  405. package/fesm2022/ng-nest-ui-loading.mjs +10 -10
  406. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  407. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  408. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  409. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  410. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  411. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  412. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  413. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  414. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  416. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  417. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  418. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  420. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  421. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  422. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  423. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  424. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  425. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  426. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  427. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  428. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  429. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  430. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  431. package/fesm2022/ng-nest-ui-radio.mjs +21 -11
  432. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  433. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  434. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  435. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  436. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  437. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  438. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  439. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  440. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  441. package/fesm2022/ng-nest-ui-select.mjs +15 -15
  442. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  443. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  444. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  445. package/fesm2022/ng-nest-ui-slider-select.mjs +16 -14
  446. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  447. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  448. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  449. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  450. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  451. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  452. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  453. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  454. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  455. package/fesm2022/ng-nest-ui-table.mjs +30 -30
  456. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  457. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  458. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  459. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  460. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  461. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  462. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  463. package/fesm2022/ng-nest-ui-textarea.mjs +10 -10
  464. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  465. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  466. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  467. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  468. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  469. package/fesm2022/ng-nest-ui-time-picker.mjs +16 -16
  470. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  471. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  472. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  473. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  474. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  475. package/fesm2022/ng-nest-ui-tooltip.mjs +19 -17
  476. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  477. package/fesm2022/ng-nest-ui-transfer.mjs +11 -11
  478. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  479. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  480. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  481. package/fesm2022/ng-nest-ui-tree-select.mjs +15 -15
  482. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  483. package/fesm2022/ng-nest-ui-tree.mjs +20 -20
  484. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  485. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  486. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  487. package/fesm2022/ng-nest-ui-upload.mjs +13 -13
  488. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  489. package/package.json +37 -37
  490. package/radio/radio.property.d.ts +6 -1
  491. package/slider-select/slider-select.property.d.ts +6 -1
  492. package/tooltip/tooltip-portal.component.d.ts +2 -2
  493. package/tooltip/tooltip.module.d.ts +2 -1
  494. package/tooltip/tooltip.property.d.ts +2 -2
@@ -116,10 +116,10 @@ class XCascadePortalComponent {
116
116
  }
117
117
  });
118
118
  }
119
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
120
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", 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"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
119
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadePortalComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
120
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", 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"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadePortalComponent, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", 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: [{
@@ -157,8 +157,8 @@ class XCascadeProperty extends XControlValueAccessor {
157
157
  */
158
158
  this.nodeEmit = new EventEmitter();
159
159
  }
160
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
161
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XCascadeProperty, selector: "x-cascade-property", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered", nodeTrigger: "nodeTrigger", nodeHoverDelay: "nodeHoverDelay", nodeTpl: "nodeTpl" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
160
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
161
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XCascadeProperty, selector: "x-cascade-property", inputs: { data: "data", placement: "placement", size: "size", bordered: "bordered", nodeTrigger: "nodeTrigger", nodeHoverDelay: "nodeHoverDelay", nodeTpl: "nodeTpl" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
162
162
  }
163
163
  __decorate([
164
164
  XDataConvert()
@@ -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: "16.0.5", ngImport: i0, type: XCascadeProperty, decorators: [{
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeProperty, decorators: [{
183
183
  type: Component,
184
184
  args: [{ selector: `${XCascadePrefix}-property`, template: '' }]
185
185
  }], propDecorators: { data: [{
@@ -444,10 +444,10 @@ class XCascadeComponent extends XCascadeProperty {
444
444
  this.setDisplayValue();
445
445
  this.cdr.detectChanges();
446
446
  }
447
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component }); }
448
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", 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 [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
447
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component }); }
448
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", 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 [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
449
449
  }
450
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeComponent, decorators: [{
450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeComponent, decorators: [{
451
451
  type: Component,
452
452
  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 [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-cascade{display:inline-block;width:12rem}.x-cascade{margin:0;padding:0;width:100%}.x-cascade x-input{width:100%}\n"] }]
453
453
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i1$1.XPortalService }, { type: i0.ViewContainerRef }, { type: i0.ElementRef }, { type: i2.Overlay }]; }, propDecorators: { cascade: [{
@@ -459,11 +459,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
459
459
  }] } });
460
460
 
461
461
  class XCascadeModule {
462
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
463
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] }); }
464
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeModule, imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule] }); }
462
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
463
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: XCascadeModule, declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty], imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule], exports: [XCascadeComponent, XCascadePortalComponent] }); }
464
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeModule, imports: [CommonModule, FormsModule, XPortalModule, ReactiveFormsModule, XInputModule, XListModule, XBaseFormModule] }); }
465
465
  }
466
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCascadeModule, decorators: [{
466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCascadeModule, decorators: [{
467
467
  type: NgModule,
468
468
  args: [{
469
469
  declarations: [XCascadeComponent, XCascadePortalComponent, XCascadeProperty],
@@ -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({ selector: `${XCascadePrefix}-property`, 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, fromEvent } 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 inject\r\n} from '@angular/core';\r\nimport { XCascadeNode, XCascadeProperty } from './cascade.property';\r\nimport { XIsEmpty, XIsChange, XSetData, XGetChildren, XCorner, XClearClass, XParents } 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 { filter, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { DOCUMENT } from '@angular/common';\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<HTMLElement>;\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 document = inject(DOCUMENT);\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public override cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n public elementRef: ElementRef,\r\n private overlay: Overlay\r\n ) {\r\n super();\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 this.setParantScroll();\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 setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portal?.overlayRef?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\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.formControlValidator();\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 [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n","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":["i2","i3","i1"],"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({ selector: `${XCascadePrefix}-property`, 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, fromEvent } 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 inject\r\n} from '@angular/core';\r\nimport { XCascadeNode, XCascadeProperty } from './cascade.property';\r\nimport { XIsEmpty, XIsChange, XSetData, XGetChildren, XCorner, XClearClass, XParents } 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 { filter, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { DOCUMENT } from '@angular/common';\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<HTMLElement>;\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 document = inject(DOCUMENT);\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public override cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n public elementRef: ElementRef,\r\n private overlay: Overlay\r\n ) {\r\n super();\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 this.setParantScroll();\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 setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portal?.overlayRef?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\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.formControlValidator();\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 [validator]=\"validator\"\r\n [required]=\"required\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (click)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n","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":["i2","i3","i1"],"mappings":"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"}
@@ -48,9 +48,19 @@ class XCheckboxProperty extends XControlValueAccessor {
48
48
  * @en_US Tag dark theme
49
49
  */
50
50
  this.tagDark = false;
51
+ /**
52
+ * @zh_CN 只有一个选项,启动此参数时,value 的值为 true / false
53
+ * @en_US There is only one option, when this parameter is activated, the value is true or false
54
+ */
55
+ this.single = false;
56
+ /**
57
+ * @zh_CN 垂直布局,不支持 button 和 icon 样式
58
+ * @en_US Vertical layout, does not support button and icon styles
59
+ */
60
+ this.vertical = false;
51
61
  }
52
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
53
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", type: XCheckboxProperty, selector: "x-checkbox-property", inputs: { data: "data", button: "button", icon: "icon", tag: "tag", indeterminate: "indeterminate", size: "size", type: "type", tagBordered: "tagBordered", tagDark: "tagDark", before: "before", after: "after" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
62
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
63
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: XCheckboxProperty, selector: "x-checkbox-property", inputs: { data: "data", button: "button", icon: "icon", tag: "tag", indeterminate: "indeterminate", size: "size", type: "type", tagBordered: "tagBordered", tagDark: "tagDark", single: "single", vertical: "vertical", before: "before", after: "after" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
54
64
  }
55
65
  __decorate([
56
66
  XDataConvert()
@@ -70,7 +80,19 @@ __decorate([
70
80
  __decorate([
71
81
  XWithConfig(X_CONFIG_NAME, 'medium')
72
82
  ], XCheckboxProperty.prototype, "size", void 0);
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxProperty, decorators: [{
83
+ __decorate([
84
+ XInputBoolean()
85
+ ], XCheckboxProperty.prototype, "tagBordered", void 0);
86
+ __decorate([
87
+ XInputBoolean()
88
+ ], XCheckboxProperty.prototype, "tagDark", void 0);
89
+ __decorate([
90
+ XInputBoolean()
91
+ ], XCheckboxProperty.prototype, "single", void 0);
92
+ __decorate([
93
+ XInputBoolean()
94
+ ], XCheckboxProperty.prototype, "vertical", void 0);
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxProperty, decorators: [{
74
96
  type: Component,
75
97
  args: [{ selector: `${XCheckboxPrefix}-property`, template: '' }]
76
98
  }], propDecorators: { data: [{
@@ -91,6 +113,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
91
113
  type: Input
92
114
  }], tagDark: [{
93
115
  type: Input
116
+ }], single: [{
117
+ type: Input
118
+ }], vertical: [{
119
+ type: Input
94
120
  }], before: [{
95
121
  type: Input
96
122
  }], after: [{
@@ -118,7 +144,6 @@ class XCheckboxComponent extends XCheckboxProperty {
118
144
  this.cdr = cdr;
119
145
  this.configService = configService;
120
146
  this.nodes = [];
121
- this.single = false;
122
147
  this._unSubject = new Subject();
123
148
  }
124
149
  ngOnInit() {
@@ -184,7 +209,6 @@ class XCheckboxComponent extends XCheckboxProperty {
184
209
  setData() {
185
210
  XSetData(this.data, this._unSubject).subscribe((x) => {
186
211
  this.nodes = x;
187
- this.single = this.nodes.length === 1;
188
212
  this.cdr.detectChanges();
189
213
  });
190
214
  }
@@ -196,23 +220,23 @@ class XCheckboxComponent extends XCheckboxProperty {
196
220
  this.ngOnInit();
197
221
  this.cdr.detectChanges();
198
222
  }
199
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
200
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.5", 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 [class.x-checkbox-button]=\"button\"\r\n [class.x-checkbox-icon]=\"icon\"\r\n [class.x-checkbox-after]=\"after\"\r\n [class.x-checkbox-before]=\"before\"\r\n [class.x-checkbox-after-template]=\"afterIsTemplate\"\r\n [class.x-checkbox-before-template]=\"beforeIsTemplate\"\r\n>\r\n <label *ngIf=\"label\" [class.x-checkbox-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-checkbox-row\">\r\n <div class=\"x-checkbox-row-before\" *ngIf=\"before\">\r\n <ng-container *xOutlet=\"before\">{{ before }}</ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-list\" [ngSwitch]=\"checkboxType\">\r\n <ng-container *ngSwitchCase=\"'initial'\">\r\n <div\r\n class=\"x-checkbox-row-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 </ng-container>\r\n <ng-container *ngSwitchCase=\"'button'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'icon'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tag'\">\r\n <x-tag\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n checked\r\n manual\r\n [type]=\"type\"\r\n [size]=\"size\"\r\n [bordered]=\"tagBordered\"\r\n [dark]=\"tagDark\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n [selected]=\"getChecked(item.id)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-tag\r\n >\r\n </ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-after\" *ngIf=\"after\">\r\n <ng-container *xOutlet=\"after\">{{ after }}</ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #default> </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;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-row .x-checkbox-row-before,.x-checkbox-row .x-checkbox-row-after{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-background-a100);padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-checkbox-row-list{position:relative;display:inline-flex;align-items:center}.x-checkbox-row-list x-tag:not(:first-child){margin-left:.875rem}.x-checkbox-row-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-row-item:hover{color:var(--x-primary)}.x-checkbox-row-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-item:last-child{margin-right:0}.x-checkbox-row-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-row-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-row-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-button .x-checkbox-row-before,.x-checkbox-icon .x-checkbox-row-before{margin-right:0}.x-checkbox-button .x-checkbox-row-after,.x-checkbox-icon .x-checkbox-row-after{margin-left:0}.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-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-checkbox-before:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-before{margin-right:var(--x-padding-medium)}.x-checkbox-before.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button,.x-checkbox-before.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-before.x-checkbox-button .x-checkbox-row-before,.x-checkbox-before.x-checkbox-icon .x-checkbox-row-before{margin-right:0;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-before-template .x-checkbox-row-before{display:contents}.x-checkbox-before-template .x-checkbox-row-list{margin-left:var(--x-padding-medium)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list{margin-left:0}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-left:calc(var(--x-border-width) * -1)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-after{margin-left:var(--x-padding-medium)}.x-checkbox-after.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button,.x-checkbox-after.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after.x-checkbox-button .x-checkbox-row-after,.x-checkbox-after.x-checkbox-icon .x-checkbox-row-after{margin-left:0;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-after-template .x-checkbox-row-after{display:contents}.x-checkbox-after-template .x-checkbox-row-list{margin-right:var(--x-padding-medium)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list{margin-right:0}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-right:calc(var(--x-border-width) * -1)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.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"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.XButtonComponent, selector: "x-button" }, { kind: "component", type: i3.XButtonsComponent, selector: "x-buttons" }, { kind: "component", type: i4.XTagComponent, selector: "x-tag" }, { kind: "directive", type: i5.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
223
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
224
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", 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 [class.x-checkbox-button]=\"button\"\r\n [class.x-checkbox-icon]=\"icon\"\r\n [class.x-checkbox-vertical]=\"vertical\"\r\n [class.x-checkbox-after]=\"after\"\r\n [class.x-checkbox-before]=\"before\"\r\n [class.x-checkbox-after-template]=\"afterIsTemplate\"\r\n [class.x-checkbox-before-template]=\"beforeIsTemplate\"\r\n>\r\n <label\r\n *ngIf=\"label\"\r\n [class.x-checkbox-label-required]=\"required\"\r\n [style.width]=\"labelWidth\"\r\n [ngClass]=\"labelMap\"\r\n >{{ label }}</label\r\n >\r\n <div class=\"x-checkbox-row\">\r\n <div class=\"x-checkbox-row-before\" *ngIf=\"before\">\r\n <ng-container *xOutlet=\"before\">{{ before }}</ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-list\" [ngSwitch]=\"checkboxType\">\r\n <ng-container *ngSwitchCase=\"'initial'\">\r\n <div\r\n class=\"x-checkbox-row-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 }\">{{\r\n item.label\r\n }}</ng-container>\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'button'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'icon'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tag'\">\r\n <x-tag\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n checked\r\n manual\r\n [type]=\"type\"\r\n [size]=\"size\"\r\n [bordered]=\"tagBordered\"\r\n [dark]=\"tagDark\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n [selected]=\"getChecked(item.id)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-tag\r\n >\r\n </ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-after\" *ngIf=\"after\">\r\n <ng-container *xOutlet=\"after\">{{ after }}</ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #default> </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;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-row .x-checkbox-row-before,.x-checkbox-row .x-checkbox-row-after{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-background-a100);padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-checkbox-row-list{position:relative;display:inline-flex;align-items:center}.x-checkbox-row-list x-tag:not(:first-child){margin-left:.875rem}.x-checkbox-row-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-row-item:hover{color:var(--x-primary)}.x-checkbox-row-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-item:last-child{margin-right:0}.x-checkbox-row-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-row-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-row-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-button .x-checkbox-row-before,.x-checkbox-icon .x-checkbox-row-before{margin-right:0}.x-checkbox-button .x-checkbox-row-after,.x-checkbox-icon .x-checkbox-row-after{margin-left:0}.x-checkbox-vertical .x-checkbox-row-list{flex-direction:column;align-items:flex-start}.x-checkbox-vertical .x-checkbox-row-list x-tag{margin-left:0}.x-checkbox-vertical .x-checkbox-row-list x-tag:not(:first-child){margin-top:.25rem}.x-checkbox-vertical .x-checkbox-row-item{margin-right:0}.x-checkbox-vertical .x-checkbox-row-item:not(:first-child){margin-top:.25rem}.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-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-checkbox-before:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-before{margin-right:var(--x-padding-medium)}.x-checkbox-before.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button,.x-checkbox-before.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-before.x-checkbox-button .x-checkbox-row-before,.x-checkbox-before.x-checkbox-icon .x-checkbox-row-before{margin-right:0;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-before-template .x-checkbox-row-before{display:contents}.x-checkbox-before-template .x-checkbox-row-list{margin-left:var(--x-padding-medium)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list{margin-left:0}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-left:calc(var(--x-border-width) * -1)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-after{margin-left:var(--x-padding-medium)}.x-checkbox-after.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button,.x-checkbox-after.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after.x-checkbox-button .x-checkbox-row-after,.x-checkbox-after.x-checkbox-icon .x-checkbox-row-after{margin-left:0;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-after-template .x-checkbox-row-after{display:contents}.x-checkbox-after-template .x-checkbox-row-list{margin-right:var(--x-padding-medium)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list{margin-right:0}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-right:calc(var(--x-border-width) * -1)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.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"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.XButtonComponent, selector: "x-button" }, { kind: "component", type: i3.XButtonsComponent, selector: "x-buttons" }, { kind: "component", type: i4.XTagComponent, selector: "x-tag" }, { kind: "directive", type: i5.XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
201
225
  }
202
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxComponent, decorators: [{
226
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxComponent, decorators: [{
203
227
  type: Component,
204
- 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 [class.x-checkbox-button]=\"button\"\r\n [class.x-checkbox-icon]=\"icon\"\r\n [class.x-checkbox-after]=\"after\"\r\n [class.x-checkbox-before]=\"before\"\r\n [class.x-checkbox-after-template]=\"afterIsTemplate\"\r\n [class.x-checkbox-before-template]=\"beforeIsTemplate\"\r\n>\r\n <label *ngIf=\"label\" [class.x-checkbox-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-checkbox-row\">\r\n <div class=\"x-checkbox-row-before\" *ngIf=\"before\">\r\n <ng-container *xOutlet=\"before\">{{ before }}</ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-list\" [ngSwitch]=\"checkboxType\">\r\n <ng-container *ngSwitchCase=\"'initial'\">\r\n <div\r\n class=\"x-checkbox-row-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 </ng-container>\r\n <ng-container *ngSwitchCase=\"'button'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'icon'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tag'\">\r\n <x-tag\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n checked\r\n manual\r\n [type]=\"type\"\r\n [size]=\"size\"\r\n [bordered]=\"tagBordered\"\r\n [dark]=\"tagDark\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n [selected]=\"getChecked(item.id)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-tag\r\n >\r\n </ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-after\" *ngIf=\"after\">\r\n <ng-container *xOutlet=\"after\">{{ after }}</ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #default> </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;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-row .x-checkbox-row-before,.x-checkbox-row .x-checkbox-row-after{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-background-a100);padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-checkbox-row-list{position:relative;display:inline-flex;align-items:center}.x-checkbox-row-list x-tag:not(:first-child){margin-left:.875rem}.x-checkbox-row-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-row-item:hover{color:var(--x-primary)}.x-checkbox-row-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-item:last-child{margin-right:0}.x-checkbox-row-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-row-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-row-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-button .x-checkbox-row-before,.x-checkbox-icon .x-checkbox-row-before{margin-right:0}.x-checkbox-button .x-checkbox-row-after,.x-checkbox-icon .x-checkbox-row-after{margin-left:0}.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-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-checkbox-before:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-before{margin-right:var(--x-padding-medium)}.x-checkbox-before.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button,.x-checkbox-before.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-before.x-checkbox-button .x-checkbox-row-before,.x-checkbox-before.x-checkbox-icon .x-checkbox-row-before{margin-right:0;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-before-template .x-checkbox-row-before{display:contents}.x-checkbox-before-template .x-checkbox-row-list{margin-left:var(--x-padding-medium)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list{margin-left:0}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-left:calc(var(--x-border-width) * -1)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-after{margin-left:var(--x-padding-medium)}.x-checkbox-after.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button,.x-checkbox-after.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after.x-checkbox-button .x-checkbox-row-after,.x-checkbox-after.x-checkbox-icon .x-checkbox-row-after{margin-left:0;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-after-template .x-checkbox-row-after{display:contents}.x-checkbox-after-template .x-checkbox-row-list{margin-right:var(--x-padding-medium)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list{margin-right:0}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-right:calc(var(--x-border-width) * -1)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.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"] }]
228
+ 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 [class.x-checkbox-button]=\"button\"\r\n [class.x-checkbox-icon]=\"icon\"\r\n [class.x-checkbox-vertical]=\"vertical\"\r\n [class.x-checkbox-after]=\"after\"\r\n [class.x-checkbox-before]=\"before\"\r\n [class.x-checkbox-after-template]=\"afterIsTemplate\"\r\n [class.x-checkbox-before-template]=\"beforeIsTemplate\"\r\n>\r\n <label\r\n *ngIf=\"label\"\r\n [class.x-checkbox-label-required]=\"required\"\r\n [style.width]=\"labelWidth\"\r\n [ngClass]=\"labelMap\"\r\n >{{ label }}</label\r\n >\r\n <div class=\"x-checkbox-row\">\r\n <div class=\"x-checkbox-row-before\" *ngIf=\"before\">\r\n <ng-container *xOutlet=\"before\">{{ before }}</ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-list\" [ngSwitch]=\"checkboxType\">\r\n <ng-container *ngSwitchCase=\"'initial'\">\r\n <div\r\n class=\"x-checkbox-row-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 }\">{{\r\n item.label\r\n }}</ng-container>\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'button'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'icon'\">\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 [type]=\"type\"\r\n [activated]=\"getChecked(item.id)\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n attrType=\"button\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-button\r\n >\r\n </x-buttons>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'tag'\">\r\n <x-tag\r\n *ngFor=\"let item of nodes; trackBy: trackByItem\"\r\n checked\r\n manual\r\n [type]=\"type\"\r\n [size]=\"size\"\r\n [bordered]=\"tagBordered\"\r\n [dark]=\"tagDark\"\r\n [disabled]=\"getDisabled(item.disabled)\"\r\n [selected]=\"getChecked(item.id)\"\r\n (click)=\"checkboxClick($event, item)\"\r\n >{{ item.label }}</x-tag\r\n >\r\n </ng-container>\r\n </div>\r\n <div class=\"x-checkbox-row-after\" *ngIf=\"after\">\r\n <ng-container *xOutlet=\"after\">{{ after }}</ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #default> </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;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem)}.x-checkbox-row .x-checkbox-row-before,.x-checkbox-row .x-checkbox-row-after{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);background-color:var(--x-background-a100);padding:0 var(--x-padding-medium);height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-checkbox-row-list{position:relative;display:inline-flex;align-items:center}.x-checkbox-row-list x-tag:not(:first-child){margin-left:.875rem}.x-checkbox-row-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-row-item:hover{color:var(--x-primary)}.x-checkbox-row-item:hover .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-item:last-child{margin-right:0}.x-checkbox-row-item.x-indeterminate .x-checkbox-box{border-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-checked .x-checkbox-box{border-color:var(--x-primary);background-color:var(--x-primary)}.x-checkbox-row-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-row-item.x-disabled{color:var(--x-text-400);cursor:not-allowed}.x-checkbox-row-item.x-disabled .x-checkbox-box{border-color:var(--x-border-100);background-color:var(--x-border-300)}.x-checkbox-row-item.x-disabled .x-checkbox-box:after{border-color:var(--x-text-400);background-color:transparent}.x-checkbox-button .x-checkbox-row-before,.x-checkbox-icon .x-checkbox-row-before{margin-right:0}.x-checkbox-button .x-checkbox-row-after,.x-checkbox-icon .x-checkbox-row-after{margin-left:0}.x-checkbox-vertical .x-checkbox-row-list{flex-direction:column;align-items:flex-start}.x-checkbox-vertical .x-checkbox-row-list x-tag{margin-left:0}.x-checkbox-vertical .x-checkbox-row-list x-tag:not(:first-child){margin-top:.25rem}.x-checkbox-vertical .x-checkbox-row-item{margin-right:0}.x-checkbox-vertical .x-checkbox-row-item:not(:first-child){margin-top:.25rem}.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-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-checkbox-before:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-before{margin-right:var(--x-padding-medium)}.x-checkbox-before.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button,.x-checkbox-before.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-before.x-checkbox-button .x-checkbox-row-before,.x-checkbox-before.x-checkbox-icon .x-checkbox-row-before{margin-right:0;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-before-template .x-checkbox-row-before{display:contents}.x-checkbox-before-template .x-checkbox-row-list{margin-left:var(--x-padding-medium)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list{margin-left:0}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-left:calc(var(--x-border-width) * -1)}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input:focus,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:hover,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button:focus{z-index:1}.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-button .x-checkbox-row-before .x-button,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before input,.x-checkbox-before-template.x-checkbox-icon .x-checkbox-row-before .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after:not(.x-checkbox-before-template,.x-checkbox-button,.x-checkbox-icon) .x-checkbox-row-after{margin-left:var(--x-padding-medium)}.x-checkbox-after.x-checkbox-button .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button,.x-checkbox-after.x-checkbox-icon .x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:0;border-bottom-right-radius:0}.x-checkbox-after.x-checkbox-button .x-checkbox-row-after,.x-checkbox-after.x-checkbox-icon .x-checkbox-row-after{margin-left:0;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.x-checkbox-after-template .x-checkbox-row-after{display:contents}.x-checkbox-after-template .x-checkbox-row-list{margin-right:var(--x-padding-medium)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list{margin-right:0}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button{margin-right:calc(var(--x-border-width) * -1)}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-list .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-list .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input:focus,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:hover,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button:focus{z-index:1}.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-button .x-checkbox-row-after .x-button,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after input,.x-checkbox-after-template.x-checkbox-icon .x-checkbox-row-after .x-button{border-top-left-radius:0;border-bottom-left-radius:0}.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"] }]
205
229
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { checkbox: [{
206
230
  type: ViewChild,
207
231
  args: ['checkbox', { static: true }]
208
232
  }] } });
209
233
 
210
234
  class XCheckboxModule {
211
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
212
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxModule, declarations: [XCheckboxComponent, XCheckboxProperty], imports: [CommonModule, FormsModule, XButtonModule, XTagModule, XOutletModule, XBaseFormModule], exports: [XCheckboxComponent] }); }
213
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxModule, imports: [CommonModule, FormsModule, XButtonModule, XTagModule, XOutletModule, XBaseFormModule] }); }
235
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
236
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxModule, declarations: [XCheckboxComponent, XCheckboxProperty], imports: [CommonModule, FormsModule, XButtonModule, XTagModule, XOutletModule, XBaseFormModule], exports: [XCheckboxComponent] }); }
237
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxModule, imports: [CommonModule, FormsModule, XButtonModule, XTagModule, XOutletModule, XBaseFormModule] }); }
214
238
  }
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImport: i0, type: XCheckboxModule, decorators: [{
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: XCheckboxModule, decorators: [{
216
240
  type: NgModule,
217
241
  args: [{
218
242
  declarations: [XCheckboxComponent, XCheckboxProperty],