@ng-nest/ui 17.0.3 → 17.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/checkbox/checkbox.component.d.ts +0 -1
  2. package/checkbox/checkbox.property.d.ts +11 -1
  3. package/esm2022/affix/affix.component.mjs +3 -3
  4. package/esm2022/affix/affix.module.mjs +4 -4
  5. package/esm2022/affix/affix.property.mjs +3 -3
  6. package/esm2022/alert/alert.component.mjs +5 -5
  7. package/esm2022/alert/alert.module.mjs +4 -4
  8. package/esm2022/alert/alert.property.mjs +3 -3
  9. package/esm2022/anchor/anchor-inner.component.mjs +3 -3
  10. package/esm2022/anchor/anchor.component.mjs +3 -3
  11. package/esm2022/anchor/anchor.module.mjs +4 -4
  12. package/esm2022/anchor/anchor.property.mjs +6 -6
  13. package/esm2022/api/api.component.mjs +3 -3
  14. package/esm2022/api/api.module.mjs +4 -4
  15. package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
  16. package/esm2022/auto-complete/auto-complete.component.mjs +3 -3
  17. package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
  18. package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
  19. package/esm2022/avatar/avatar-group.component.mjs +3 -3
  20. package/esm2022/avatar/avatar.component.mjs +3 -3
  21. package/esm2022/avatar/avatar.module.mjs +4 -4
  22. package/esm2022/avatar/avatar.property.mjs +6 -6
  23. package/esm2022/back-top/back-top.component.mjs +3 -3
  24. package/esm2022/back-top/back-top.module.mjs +4 -4
  25. package/esm2022/back-top/back-top.property.mjs +3 -3
  26. package/esm2022/badge/badge.component.mjs +3 -3
  27. package/esm2022/badge/badge.module.mjs +4 -4
  28. package/esm2022/badge/badge.property.mjs +3 -3
  29. package/esm2022/base-form/base-form.component.mjs +3 -3
  30. package/esm2022/base-form/base-form.module.mjs +4 -4
  31. package/esm2022/base-form/base-form.property.mjs +3 -3
  32. package/esm2022/border/border.component.mjs +3 -3
  33. package/esm2022/border/border.module.mjs +4 -4
  34. package/esm2022/button/button.component.mjs +5 -4
  35. package/esm2022/button/button.module.mjs +4 -4
  36. package/esm2022/button/button.property.mjs +6 -6
  37. package/esm2022/button/buttons.component.mjs +3 -3
  38. package/esm2022/calendar/calendar.component.mjs +3 -3
  39. package/esm2022/calendar/calendar.module.mjs +4 -4
  40. package/esm2022/calendar/calendar.property.mjs +3 -3
  41. package/esm2022/card/card.component.mjs +3 -3
  42. package/esm2022/card/card.module.mjs +4 -4
  43. package/esm2022/card/card.property.mjs +3 -3
  44. package/esm2022/carousel/carousel-panel.component.mjs +3 -3
  45. package/esm2022/carousel/carousel.component.mjs +3 -3
  46. package/esm2022/carousel/carousel.module.mjs +4 -4
  47. package/esm2022/carousel/carousel.property.mjs +6 -6
  48. package/esm2022/cascade/cascade-portal.component.mjs +3 -3
  49. package/esm2022/cascade/cascade.component.mjs +3 -3
  50. package/esm2022/cascade/cascade.module.mjs +4 -4
  51. package/esm2022/cascade/cascade.property.mjs +3 -3
  52. package/esm2022/checkbox/checkbox.component.mjs +5 -7
  53. package/esm2022/checkbox/checkbox.module.mjs +4 -4
  54. package/esm2022/checkbox/checkbox.property.mjs +30 -4
  55. package/esm2022/collapse/collapse-panel.component.mjs +3 -3
  56. package/esm2022/collapse/collapse.component.mjs +3 -3
  57. package/esm2022/collapse/collapse.module.mjs +4 -4
  58. package/esm2022/collapse/collapse.property.mjs +6 -6
  59. package/esm2022/color/color.component.mjs +3 -3
  60. package/esm2022/color/color.module.mjs +4 -4
  61. package/esm2022/color/color.property.mjs +3 -3
  62. package/esm2022/color-picker/color-picker-portal.component.mjs +5 -5
  63. package/esm2022/color-picker/color-picker.component.mjs +3 -3
  64. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  65. package/esm2022/color-picker/color-picker.property.mjs +3 -3
  66. package/esm2022/comment/comment-reply.component.mjs +3 -3
  67. package/esm2022/comment/comment.component.mjs +3 -3
  68. package/esm2022/comment/comment.module.mjs +4 -4
  69. package/esm2022/comment/comment.property.mjs +6 -6
  70. package/esm2022/container/aside.component.mjs +3 -3
  71. package/esm2022/container/container.component.mjs +3 -3
  72. package/esm2022/container/container.module.mjs +4 -4
  73. package/esm2022/container/container.property.mjs +12 -12
  74. package/esm2022/container/footer.component.mjs +3 -3
  75. package/esm2022/container/header.component.mjs +3 -3
  76. package/esm2022/container/main.component.mjs +3 -3
  77. package/esm2022/core/config/config.service.mjs +3 -3
  78. package/esm2022/core/services/http.service.mjs +3 -3
  79. package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
  80. package/esm2022/core/services/storage.service.mjs +3 -3
  81. package/esm2022/core/theme/theme.service.mjs +3 -3
  82. package/esm2022/crumb/crumb.component.mjs +3 -3
  83. package/esm2022/crumb/crumb.module.mjs +4 -4
  84. package/esm2022/crumb/crumb.property.mjs +3 -3
  85. package/esm2022/date-picker/date-picker-portal.component.mjs +3 -3
  86. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  87. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  88. package/esm2022/date-picker/date-picker.property.mjs +18 -18
  89. package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
  90. package/esm2022/date-picker/date-range-portal.component.mjs +3 -3
  91. package/esm2022/date-picker/date-range.component.mjs +3 -3
  92. package/esm2022/date-picker/picker-date.component.mjs +3 -3
  93. package/esm2022/date-picker/picker-month.component.mjs +3 -3
  94. package/esm2022/date-picker/picker-quarter.component.mjs +3 -3
  95. package/esm2022/date-picker/picker-year.component.mjs +3 -3
  96. package/esm2022/description/description-item.component.mjs +3 -3
  97. package/esm2022/description/description.component.mjs +3 -3
  98. package/esm2022/description/description.module.mjs +4 -4
  99. package/esm2022/description/description.property.mjs +6 -6
  100. package/esm2022/dialog/dialog-container.component.mjs +5 -5
  101. package/esm2022/dialog/dialog-portal.component.mjs +3 -3
  102. package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
  103. package/esm2022/dialog/dialog.component.mjs +5 -5
  104. package/esm2022/dialog/dialog.module.mjs +4 -4
  105. package/esm2022/dialog/dialog.property.mjs +6 -6
  106. package/esm2022/dialog/dialog.service.mjs +3 -3
  107. package/esm2022/doc/doc.component.mjs +3 -3
  108. package/esm2022/doc/doc.module.mjs +4 -4
  109. package/esm2022/drag/drag.directive.mjs +3 -3
  110. package/esm2022/drag/drag.module.mjs +4 -4
  111. package/esm2022/drag/drag.property.mjs +3 -3
  112. package/esm2022/drawer/drawer-container.component.mjs +5 -5
  113. package/esm2022/drawer/drawer-portal.component.mjs +3 -3
  114. package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
  115. package/esm2022/drawer/drawer.component.mjs +3 -3
  116. package/esm2022/drawer/drawer.module.mjs +4 -4
  117. package/esm2022/drawer/drawer.property.mjs +6 -6
  118. package/esm2022/drawer/drawer.service.mjs +3 -3
  119. package/esm2022/dropdown/dropdown-portal.component.mjs +3 -3
  120. package/esm2022/dropdown/dropdown.component.mjs +3 -3
  121. package/esm2022/dropdown/dropdown.module.mjs +4 -4
  122. package/esm2022/dropdown/dropdown.property.mjs +3 -3
  123. package/esm2022/empty/empty.component.mjs +3 -3
  124. package/esm2022/empty/empty.module.mjs +4 -4
  125. package/esm2022/empty/empty.property.mjs +3 -3
  126. package/esm2022/examples/examples.component.mjs +4 -4
  127. package/esm2022/examples/examples.module.mjs +4 -4
  128. package/esm2022/find/find.component.mjs +5 -5
  129. package/esm2022/find/find.module.mjs +4 -4
  130. package/esm2022/find/find.property.mjs +3 -3
  131. package/esm2022/form/control.component.mjs +3 -3
  132. package/esm2022/form/form.component.mjs +3 -3
  133. package/esm2022/form/form.module.mjs +4 -4
  134. package/esm2022/form/form.property.mjs +6 -6
  135. package/esm2022/highlight/highlight.component.mjs +3 -3
  136. package/esm2022/highlight/highlight.module.mjs +4 -4
  137. package/esm2022/highlight/highlight.property.mjs +3 -3
  138. package/esm2022/i18n/i18n.directive.mjs +3 -3
  139. package/esm2022/i18n/i18n.module.mjs +4 -4
  140. package/esm2022/i18n/i18n.pipe.mjs +3 -3
  141. package/esm2022/i18n/i18n.service.mjs +3 -3
  142. package/esm2022/icon/icon.component.mjs +3 -3
  143. package/esm2022/icon/icon.module.mjs +4 -4
  144. package/esm2022/icon/icon.property.mjs +3 -3
  145. package/esm2022/icon/icon.service.mjs +3 -3
  146. package/esm2022/image/image-group.component.mjs +3 -3
  147. package/esm2022/image/image-preview.component.mjs +3 -3
  148. package/esm2022/image/image.component.mjs +5 -5
  149. package/esm2022/image/image.module.mjs +4 -4
  150. package/esm2022/image/image.property.mjs +6 -6
  151. package/esm2022/inner/inner.component.mjs +3 -3
  152. package/esm2022/inner/inner.module.mjs +4 -4
  153. package/esm2022/inner/inner.property.mjs +3 -3
  154. package/esm2022/input/input-group.component.mjs +3 -3
  155. package/esm2022/input/input.component.mjs +5 -5
  156. package/esm2022/input/input.module.mjs +4 -4
  157. package/esm2022/input/input.property.mjs +6 -6
  158. package/esm2022/input-number/input-number.component.mjs +16 -11
  159. package/esm2022/input-number/input-number.module.mjs +4 -4
  160. package/esm2022/input-number/input-number.property.mjs +3 -3
  161. package/esm2022/keyword/keyword.directive.mjs +3 -3
  162. package/esm2022/keyword/keyword.module.mjs +4 -4
  163. package/esm2022/keyword/keyword.property.mjs +3 -3
  164. package/esm2022/layout/col.component.mjs +3 -3
  165. package/esm2022/layout/layout.module.mjs +4 -4
  166. package/esm2022/layout/layout.property.mjs +6 -6
  167. package/esm2022/layout/row.component.mjs +3 -3
  168. package/esm2022/link/link.component.mjs +3 -3
  169. package/esm2022/link/link.module.mjs +4 -4
  170. package/esm2022/link/link.property.mjs +3 -3
  171. package/esm2022/list/list-drop-group.directive.mjs +3 -3
  172. package/esm2022/list/list-option.component.mjs +3 -3
  173. package/esm2022/list/list.component.mjs +3 -3
  174. package/esm2022/list/list.module.mjs +4 -4
  175. package/esm2022/list/list.property.mjs +6 -6
  176. package/esm2022/loading/loading.component.mjs +3 -3
  177. package/esm2022/loading/loading.module.mjs +4 -4
  178. package/esm2022/loading/loading.property.mjs +3 -3
  179. package/esm2022/menu/menu-node.component.mjs +3 -3
  180. package/esm2022/menu/menu.component.mjs +5 -5
  181. package/esm2022/menu/menu.module.mjs +4 -4
  182. package/esm2022/menu/menu.property.mjs +6 -6
  183. package/esm2022/message/message.component.mjs +3 -3
  184. package/esm2022/message/message.module.mjs +4 -4
  185. package/esm2022/message/message.property.mjs +1 -1
  186. package/esm2022/message/message.service.mjs +4 -5
  187. package/esm2022/message-box/message-box.component.mjs +7 -5
  188. package/esm2022/message-box/message-box.module.mjs +4 -4
  189. package/esm2022/message-box/message-box.service.mjs +3 -3
  190. package/esm2022/notification/notification.component.mjs +3 -3
  191. package/esm2022/notification/notification.module.mjs +4 -4
  192. package/esm2022/notification/notification.service.mjs +3 -3
  193. package/esm2022/outlet/outlet.directive.mjs +3 -3
  194. package/esm2022/outlet/outlet.module.mjs +4 -4
  195. package/esm2022/page-header/page-header.component.mjs +3 -3
  196. package/esm2022/page-header/page-header.module.mjs +4 -4
  197. package/esm2022/page-header/page-header.property.mjs +3 -3
  198. package/esm2022/pagination/pagination.component.mjs +3 -3
  199. package/esm2022/pagination/pagination.module.mjs +4 -4
  200. package/esm2022/pagination/pagination.property.mjs +3 -3
  201. package/esm2022/pattern/pattern.component.mjs +3 -3
  202. package/esm2022/pattern/pattern.module.mjs +4 -4
  203. package/esm2022/popconfirm/popconfirm.component.mjs +3 -3
  204. package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
  205. package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
  206. package/esm2022/popover/popover-portal.component.mjs +3 -3
  207. package/esm2022/popover/popover.directive.mjs +3 -3
  208. package/esm2022/popover/popover.module.mjs +4 -4
  209. package/esm2022/popover/popover.property.mjs +3 -3
  210. package/esm2022/portal/portal.module.mjs +4 -4
  211. package/esm2022/portal/portal.service.mjs +3 -3
  212. package/esm2022/progress/progress.component.mjs +3 -3
  213. package/esm2022/progress/progress.module.mjs +4 -4
  214. package/esm2022/progress/progress.property.mjs +3 -3
  215. package/esm2022/radio/radio.component.mjs +5 -5
  216. package/esm2022/radio/radio.module.mjs +4 -4
  217. package/esm2022/radio/radio.property.mjs +14 -4
  218. package/esm2022/rate/rate.component.mjs +3 -3
  219. package/esm2022/rate/rate.module.mjs +4 -4
  220. package/esm2022/rate/rate.property.mjs +3 -3
  221. package/esm2022/resizable/resizable.directive.mjs +3 -3
  222. package/esm2022/resizable/resizable.module.mjs +4 -4
  223. package/esm2022/resizable/resizable.property.mjs +3 -3
  224. package/esm2022/result/result.component.mjs +3 -3
  225. package/esm2022/result/result.module.mjs +4 -4
  226. package/esm2022/result/result.property.mjs +3 -3
  227. package/esm2022/ripple/ripple.directive.mjs +3 -3
  228. package/esm2022/ripple/ripple.module.mjs +4 -4
  229. package/esm2022/ripple/ripple.property.mjs +3 -3
  230. package/esm2022/select/select-portal.component.mjs +3 -3
  231. package/esm2022/select/select.component.mjs +3 -3
  232. package/esm2022/select/select.module.mjs +4 -4
  233. package/esm2022/select/select.property.mjs +3 -3
  234. package/esm2022/skeleton/skeleton.component.mjs +3 -3
  235. package/esm2022/skeleton/skeleton.module.mjs +4 -4
  236. package/esm2022/skeleton/skeleton.property.mjs +3 -3
  237. package/esm2022/slider/slider.component.mjs +3 -3
  238. package/esm2022/slider/slider.module.mjs +4 -4
  239. package/esm2022/slider/slider.property.mjs +3 -3
  240. package/esm2022/slider-select/slider-select.component.mjs +3 -3
  241. package/esm2022/slider-select/slider-select.module.mjs +4 -4
  242. package/esm2022/slider-select/slider-select.property.mjs +3 -3
  243. package/esm2022/statistic/countdown.component.mjs +3 -3
  244. package/esm2022/statistic/statistic.component.mjs +3 -3
  245. package/esm2022/statistic/statistic.module.mjs +4 -4
  246. package/esm2022/statistic/statistic.property.mjs +6 -6
  247. package/esm2022/steps/steps.component.mjs +3 -3
  248. package/esm2022/steps/steps.module.mjs +4 -4
  249. package/esm2022/steps/steps.property.mjs +3 -3
  250. package/esm2022/switch/switch.component.mjs +3 -3
  251. package/esm2022/switch/switch.module.mjs +4 -4
  252. package/esm2022/switch/switch.property.mjs +3 -3
  253. package/esm2022/table/table-body.component.mjs +9 -7
  254. package/esm2022/table/table-foot.component.mjs +3 -3
  255. package/esm2022/table/table-head.component.mjs +5 -5
  256. package/esm2022/table/table.component.mjs +16 -6
  257. package/esm2022/table/table.module.mjs +4 -4
  258. package/esm2022/table/table.property.mjs +12 -12
  259. package/esm2022/tabs/tab-content.component.mjs +3 -3
  260. package/esm2022/tabs/tab-link.directive.mjs +6 -6
  261. package/esm2022/tabs/tab.component.mjs +3 -3
  262. package/esm2022/tabs/tabs.component.mjs +5 -5
  263. package/esm2022/tabs/tabs.module.mjs +4 -4
  264. package/esm2022/tabs/tabs.property.mjs +6 -6
  265. package/esm2022/tag/tag.component.mjs +3 -3
  266. package/esm2022/tag/tag.module.mjs +4 -4
  267. package/esm2022/tag/tag.property.mjs +3 -3
  268. package/esm2022/text-retract/text-retract.component.mjs +3 -3
  269. package/esm2022/text-retract/text-retract.module.mjs +4 -4
  270. package/esm2022/text-retract/text-retract.property.mjs +3 -3
  271. package/esm2022/textarea/textarea.component.mjs +3 -3
  272. package/esm2022/textarea/textarea.module.mjs +4 -4
  273. package/esm2022/textarea/textarea.property.mjs +3 -3
  274. package/esm2022/theme/theme.component.mjs +3 -3
  275. package/esm2022/theme/theme.module.mjs +4 -4
  276. package/esm2022/theme/theme.property.mjs +3 -3
  277. package/esm2022/time-ago/time-ago.module.mjs +4 -4
  278. package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
  279. package/esm2022/time-picker/time-picker-frame.component.mjs +3 -3
  280. package/esm2022/time-picker/time-picker-portal.component.mjs +3 -3
  281. package/esm2022/time-picker/time-picker.component.mjs +3 -3
  282. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  283. package/esm2022/time-picker/time-picker.property.mjs +3 -3
  284. package/esm2022/time-range/time-range.module.mjs +4 -4
  285. package/esm2022/time-range/time-range.pipe.mjs +3 -3
  286. package/esm2022/timeline/timeline.component.mjs +3 -3
  287. package/esm2022/timeline/timeline.module.mjs +4 -4
  288. package/esm2022/timeline/timeline.property.mjs +3 -3
  289. package/esm2022/tooltip/tooltip-portal.component.mjs +3 -3
  290. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  291. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  292. package/esm2022/tooltip/tooltip.property.mjs +3 -3
  293. package/esm2022/transfer/transfer.component.mjs +5 -5
  294. package/esm2022/transfer/transfer.module.mjs +4 -4
  295. package/esm2022/transfer/transfer.property.mjs +3 -3
  296. package/esm2022/tree/tree-node.component.mjs +5 -5
  297. package/esm2022/tree/tree.component.mjs +3 -3
  298. package/esm2022/tree/tree.module.mjs +4 -4
  299. package/esm2022/tree/tree.property.mjs +6 -6
  300. package/esm2022/tree/tree.service.mjs +3 -3
  301. package/esm2022/tree-file/tree-file.component.mjs +3 -3
  302. package/esm2022/tree-file/tree-file.module.mjs +4 -4
  303. package/esm2022/tree-file/tree-file.property.mjs +3 -3
  304. package/esm2022/tree-select/tree-select-portal.component.mjs +3 -3
  305. package/esm2022/tree-select/tree-select.component.mjs +3 -3
  306. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  307. package/esm2022/tree-select/tree-select.property.mjs +3 -3
  308. package/esm2022/typography/typography.component.mjs +3 -3
  309. package/esm2022/typography/typography.module.mjs +4 -4
  310. package/esm2022/typography/typography.property.mjs +3 -3
  311. package/esm2022/upload/upload-portal.component.mjs +5 -5
  312. package/esm2022/upload/upload.component.mjs +3 -3
  313. package/esm2022/upload/upload.module.mjs +4 -4
  314. package/esm2022/upload/upload.property.mjs +3 -3
  315. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  316. package/fesm2022/ng-nest-ui-alert.mjs +12 -12
  317. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  318. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  319. package/fesm2022/ng-nest-ui-api.mjs +8 -8
  320. package/fesm2022/ng-nest-ui-auto-complete.mjs +14 -14
  321. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  322. package/fesm2022/ng-nest-ui-back-top.mjs +11 -11
  323. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  324. package/fesm2022/ng-nest-ui-base-form.mjs +11 -11
  325. package/fesm2022/ng-nest-ui-border.mjs +8 -8
  326. package/fesm2022/ng-nest-ui-button.mjs +19 -18
  327. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  328. package/fesm2022/ng-nest-ui-calendar.mjs +11 -11
  329. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  330. package/fesm2022/ng-nest-ui-carousel.mjs +17 -17
  331. package/fesm2022/ng-nest-ui-cascade.mjs +15 -15
  332. package/fesm2022/ng-nest-ui-checkbox.mjs +38 -14
  333. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  334. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  335. package/fesm2022/ng-nest-ui-color-picker.mjs +14 -14
  336. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  337. package/fesm2022/ng-nest-ui-color.mjs +11 -11
  338. package/fesm2022/ng-nest-ui-comment.mjs +18 -18
  339. package/fesm2022/ng-nest-ui-container.mjs +32 -32
  340. package/fesm2022/ng-nest-ui-core.mjs +16 -16
  341. package/fesm2022/ng-nest-ui-crumb.mjs +11 -11
  342. package/fesm2022/ng-nest-ui-date-picker.mjs +50 -50
  343. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  344. package/fesm2022/ng-nest-ui-dialog.mjs +44 -44
  345. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  346. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  347. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  348. package/fesm2022/ng-nest-ui-drawer.mjs +33 -33
  349. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  350. package/fesm2022/ng-nest-ui-dropdown.mjs +15 -15
  351. package/fesm2022/ng-nest-ui-empty.mjs +11 -11
  352. package/fesm2022/ng-nest-ui-examples.mjs +9 -9
  353. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  354. package/fesm2022/ng-nest-ui-find.mjs +12 -12
  355. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  356. package/fesm2022/ng-nest-ui-form.mjs +17 -17
  357. package/fesm2022/ng-nest-ui-highlight.mjs +12 -12
  358. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  359. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  360. package/fesm2022/ng-nest-ui-image.mjs +20 -20
  361. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  362. package/fesm2022/ng-nest-ui-inner.mjs +11 -11
  363. package/fesm2022/ng-nest-ui-input-number.mjs +22 -17
  364. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  365. package/fesm2022/ng-nest-ui-input.mjs +17 -17
  366. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-keyword.mjs +11 -11
  368. package/fesm2022/ng-nest-ui-layout.mjs +17 -17
  369. package/fesm2022/ng-nest-ui-link.mjs +11 -11
  370. package/fesm2022/ng-nest-ui-list.mjs +20 -20
  371. package/fesm2022/ng-nest-ui-loading.mjs +11 -11
  372. package/fesm2022/ng-nest-ui-menu.mjs +18 -18
  373. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  374. package/fesm2022/ng-nest-ui-message-box.mjs +14 -12
  375. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  376. package/fesm2022/ng-nest-ui-message.mjs +11 -12
  377. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  378. package/fesm2022/ng-nest-ui-notification.mjs +11 -11
  379. package/fesm2022/ng-nest-ui-outlet.mjs +8 -8
  380. package/fesm2022/ng-nest-ui-page-header.mjs +11 -11
  381. package/fesm2022/ng-nest-ui-pagination.mjs +11 -11
  382. package/fesm2022/ng-nest-ui-pattern.mjs +8 -8
  383. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -11
  384. package/fesm2022/ng-nest-ui-popover.mjs +14 -14
  385. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  386. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  387. package/fesm2022/ng-nest-ui-radio.mjs +22 -12
  388. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-rate.mjs +11 -11
  390. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  391. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  392. package/fesm2022/ng-nest-ui-ripple.mjs +13 -13
  393. package/fesm2022/ng-nest-ui-select.mjs +13 -13
  394. package/fesm2022/ng-nest-ui-skeleton.mjs +11 -11
  395. package/fesm2022/ng-nest-ui-slider-select.mjs +11 -11
  396. package/fesm2022/ng-nest-ui-slider.mjs +11 -11
  397. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  398. package/fesm2022/ng-nest-ui-steps.mjs +11 -11
  399. package/fesm2022/ng-nest-ui-switch.mjs +11 -11
  400. package/fesm2022/ng-nest-ui-table.mjs +47 -35
  401. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  402. package/fesm2022/ng-nest-ui-tabs.mjs +26 -26
  403. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  404. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  405. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -11
  406. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  407. package/fesm2022/ng-nest-ui-theme.mjs +11 -11
  408. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  409. package/fesm2022/ng-nest-ui-time-picker.mjs +18 -18
  410. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  411. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  412. package/fesm2022/ng-nest-ui-tooltip.mjs +14 -14
  413. package/fesm2022/ng-nest-ui-transfer.mjs +12 -12
  414. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-tree-file.mjs +11 -11
  416. package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
  417. package/fesm2022/ng-nest-ui-tree.mjs +21 -21
  418. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-typography.mjs +11 -11
  420. package/fesm2022/ng-nest-ui-upload.mjs +15 -15
  421. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  422. package/input-number/input-number.component.d.ts +1 -1
  423. package/message/message.property.d.ts +0 -1
  424. package/package.json +30 -30
  425. package/radio/radio.property.d.ts +6 -1
  426. package/table/table.component.d.ts +1 -0
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Renderer2, inject, ElementRef, Component, ViewEncapsulation, ChangeDetectionStrategy, NgModule } from '@angular/core';
2
+ import { inject, Renderer2, ElementRef, Component, ViewEncapsulation, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
 
4
4
  /**
5
5
  * Examples
@@ -16,20 +16,20 @@ class XExamplesComponent {
16
16
  ngOnInit() {
17
17
  this.renderer.addClass(this.elementRef.nativeElement, XExamplesPrefix);
18
18
  }
19
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XExamplesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XExamplesComponent, isStandalone: true, selector: "x-examples", ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-examples{margin:0;padding:0;display:block}.x-examples .x-examples-html{padding:1rem;margin:1rem 0;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;position:relative}.x-examples .x-examples-tools{position:absolute;bottom:-.875rem;left:0;display:flex;width:100%;justify-content:center}.x-examples .x-examples-tools .x-buttons{background-color:var(--x-background);padding:0 .25rem}.x-examples .x-examples-code{padding:1rem 0}.x-examples .x-examples-code>x-tabs>.x-tabs{border-radius:.125rem}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight{border-top:0}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight>pre{background-color:transparent}.x-examples .x-examples-info{padding:1rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;background-color:var(--x-background-a100)}.x-examples .x-examples-info>p{margin:.25rem 0 0}.x-examples .x-examples-info>p:first-of-type{margin-top:0}.x-examples .x-examples-info>ul{margin:.25rem 0}.x-examples .x-examples-info>ul>li{list-style-type:square;margin-left:1.25rem;line-height:1.75rem}.x-examples>x-tabs>.x-tabs{width:100%}.x-examples>x-tabs>.x-tabs>.x-tabs-list{border:none}.x-examples>x-tabs>.x-tabs-top>.x-tabs-list{border:none;background:rgba(0,0,0,.05)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight{border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list{padding:0}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider>.x-slider-scroll>ul{min-width:6rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
19
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XExamplesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.0", type: XExamplesComponent, isStandalone: true, selector: "x-examples", ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-examples{margin:0;padding:0;display:block}.x-examples .x-examples-html{padding:1rem;margin:1rem 0;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;position:relative}.x-examples .x-examples-tools{position:absolute;bottom:-.875rem;left:0;display:flex;width:100%;justify-content:center}.x-examples .x-examples-tools .x-buttons{background-color:var(--x-background);padding:0 .25rem}.x-examples .x-examples-code{padding:1rem 0}.x-examples .x-examples-code>x-tabs>.x-tabs{border-radius:.125rem}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight{border-top:0}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight>pre{background-color:transparent}.x-examples .x-examples-info{padding:1rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;background-color:var(--x-background-a100)}.x-examples .x-examples-info>p{margin:.25rem 0 0}.x-examples .x-examples-info>p:first-of-type{margin-top:0}.x-examples .x-examples-info>ul{margin:.25rem 0}.x-examples .x-examples-info>ul>li{list-style-type:square;margin-left:1.25rem;line-height:1.75rem}.x-examples>x-tabs>.x-tabs{width:100%}.x-examples>x-tabs>.x-tabs>.x-tabs-list{border:none}.x-examples>x-tabs>.x-tabs-top>.x-tabs-list{border:none;background:#0000000d}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight{border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list{padding:0}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider>.x-slider-scroll>ul{min-width:6rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XExamplesComponent, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XExamplesComponent, decorators: [{
23
23
  type: Component,
24
- args: [{ selector: `${XExamplesPrefix}`, standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-examples{margin:0;padding:0;display:block}.x-examples .x-examples-html{padding:1rem;margin:1rem 0;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;position:relative}.x-examples .x-examples-tools{position:absolute;bottom:-.875rem;left:0;display:flex;width:100%;justify-content:center}.x-examples .x-examples-tools .x-buttons{background-color:var(--x-background);padding:0 .25rem}.x-examples .x-examples-code{padding:1rem 0}.x-examples .x-examples-code>x-tabs>.x-tabs{border-radius:.125rem}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight{border-top:0}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight>pre{background-color:transparent}.x-examples .x-examples-info{padding:1rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;background-color:var(--x-background-a100)}.x-examples .x-examples-info>p{margin:.25rem 0 0}.x-examples .x-examples-info>p:first-of-type{margin-top:0}.x-examples .x-examples-info>ul{margin:.25rem 0}.x-examples .x-examples-info>ul>li{list-style-type:square;margin-left:1.25rem;line-height:1.75rem}.x-examples>x-tabs>.x-tabs{width:100%}.x-examples>x-tabs>.x-tabs>.x-tabs-list{border:none}.x-examples>x-tabs>.x-tabs-top>.x-tabs-list{border:none;background:rgba(0,0,0,.05)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight{border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list{padding:0}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider>.x-slider-scroll>ul{min-width:6rem}\n"] }]
24
+ args: [{ selector: `${XExamplesPrefix}`, standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-examples{margin:0;padding:0;display:block}.x-examples .x-examples-html{padding:1rem;margin:1rem 0;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;position:relative}.x-examples .x-examples-tools{position:absolute;bottom:-.875rem;left:0;display:flex;width:100%;justify-content:center}.x-examples .x-examples-tools .x-buttons{background-color:var(--x-background);padding:0 .25rem}.x-examples .x-examples-code{padding:1rem 0}.x-examples .x-examples-code>x-tabs>.x-tabs{border-radius:.125rem}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight{border-top:0}.x-examples .x-examples-code>x-tabs>.x-tabs>.x-tabs-contents>.x-tab-content>.x-highlight>pre{background-color:transparent}.x-examples .x-examples-info{padding:1rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:.125rem;background-color:var(--x-background-a100)}.x-examples .x-examples-info>p{margin:.25rem 0 0}.x-examples .x-examples-info>p:first-of-type{margin-top:0}.x-examples .x-examples-info>ul{margin:.25rem 0}.x-examples .x-examples-info>ul>li{list-style-type:square;margin-left:1.25rem;line-height:1.75rem}.x-examples>x-tabs>.x-tabs{width:100%}.x-examples>x-tabs>.x-tabs>.x-tabs-list{border:none}.x-examples>x-tabs>.x-tabs-top>.x-tabs-list{border:none;background:#0000000d}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-row>.x-slider-scroll>ul>li.x-slider-highlight,.x-examples>x-tabs>.x-tabs-top>.x-tabs-list>x-slider>.x-slider-column>.x-slider-scroll>ul>li.x-slider-highlight{border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list{padding:0}.x-examples>x-tabs>.x-tabs-left>.x-tabs-list>x-slider>.x-slider>.x-slider-scroll>ul{min-width:6rem}\n"] }]
25
25
  }] });
26
26
 
27
27
  class XExamplesModule {
28
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XExamplesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
29
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XExamplesModule, imports: [XExamplesComponent], exports: [XExamplesComponent] }); }
30
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XExamplesModule }); }
28
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XExamplesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
29
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: XExamplesModule, imports: [XExamplesComponent], exports: [XExamplesComponent] }); }
30
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XExamplesModule }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XExamplesModule, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XExamplesModule, decorators: [{
33
33
  type: NgModule,
34
34
  args: [{
35
35
  exports: [XExamplesComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-examples.mjs","sources":["../../../../lib/ng-nest/ui/examples/examples.property.ts","../../../../lib/ng-nest/ui/examples/examples.component.ts","../../../../lib/ng-nest/ui/examples/examples.component.html","../../../../lib/ng-nest/ui/examples/examples.module.ts","../../../../lib/ng-nest/ui/examples/ng-nest-ui-examples.ts"],"sourcesContent":["/**\r\n * Examples\r\n * @selector x-examples\r\n * @decorator component\r\n */\r\nexport const XExamplesPrefix = 'x-examples';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n inject,\r\n OnInit\r\n} from '@angular/core';\r\nimport { XExamplesPrefix } from './examples.property';\r\n\r\n@Component({\r\n selector: `${XExamplesPrefix}`,\r\n standalone: true,\r\n templateUrl: './examples.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XExamplesComponent implements OnInit {\r\n renderer = inject(Renderer2);\r\n elementRef = inject(ElementRef);\r\n ngOnInit(): void {\r\n this.renderer.addClass(this.elementRef.nativeElement, XExamplesPrefix);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XExamplesComponent } from './examples.component';\r\n\r\n@NgModule({\r\n exports: [XExamplesComponent],\r\n imports: [XExamplesComponent]\r\n})\r\nexport class XExamplesModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAA;;;;AAIG;AACI,MAAM,eAAe,GAAG;;MCclB,kBAAkB,CAAA;AAR/B,IAAA,WAAA,GAAA;AASE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAIjC,KAAA;IAHC,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;KACxE;iIALU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,sECnB/B,+BACA,EAAA,MAAA,EAAA,CAAA,4gEAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDkBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;+BACE,CAAG,EAAA,eAAe,CAAE,CAAA,EAAA,UAAA,EAClB,IAAI,EAAA,aAAA,EAGD,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,4gEAAA,CAAA,EAAA,CAAA;;;MEVpC,eAAe,CAAA;iIAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;kIAAf,eAAe,EAAA,OAAA,EAAA,CAFhB,kBAAkB,CAAA,EAAA,OAAA,EAAA,CADlB,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA;kIAGjB,eAAe,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAC9B,iBAAA,CAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-nest-ui-examples.mjs","sources":["../../../../lib/ng-nest/ui/examples/examples.property.ts","../../../../lib/ng-nest/ui/examples/examples.component.ts","../../../../lib/ng-nest/ui/examples/examples.component.html","../../../../lib/ng-nest/ui/examples/examples.module.ts","../../../../lib/ng-nest/ui/examples/ng-nest-ui-examples.ts"],"sourcesContent":["/**\r\n * Examples\r\n * @selector x-examples\r\n * @decorator component\r\n */\r\nexport const XExamplesPrefix = 'x-examples';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n inject,\r\n OnInit\r\n} from '@angular/core';\r\nimport { XExamplesPrefix } from './examples.property';\r\n\r\n@Component({\r\n selector: `${XExamplesPrefix}`,\r\n standalone: true,\r\n templateUrl: './examples.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XExamplesComponent implements OnInit {\r\n renderer = inject(Renderer2);\r\n elementRef = inject(ElementRef);\r\n ngOnInit(): void {\r\n this.renderer.addClass(this.elementRef.nativeElement, XExamplesPrefix);\r\n }\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XExamplesComponent } from './examples.component';\r\n\r\n@NgModule({\r\n exports: [XExamplesComponent],\r\n imports: [XExamplesComponent]\r\n})\r\nexport class XExamplesModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAA;;;;AAIG;AACI,MAAM,eAAe,GAAG;;MCclB,kBAAkB,CAAA;AAR/B,IAAA,WAAA,GAAA;AASE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAIjC,KAAA;IAHC,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;KACxE;iIALU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,sECnB/B,+BACA,EAAA,MAAA,EAAA,CAAA,sgEAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDkBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;+BACE,CAAG,EAAA,eAAe,CAAE,CAAA,EAAA,UAAA,EAClB,IAAI,EAAA,aAAA,EAGD,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,sgEAAA,CAAA,EAAA,CAAA;;;MEVpC,eAAe,CAAA;iIAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;kIAAf,eAAe,EAAA,OAAA,EAAA,CAFhB,kBAAkB,CAAA,EAAA,OAAA,EAAA,CADlB,kBAAkB,CAAA,EAAA,CAAA,CAAA,EAAA;kIAGjB,eAAe,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,kBAAkB,CAAC;oBAC7B,OAAO,EAAE,CAAC,kBAAkB,CAAC;AAC9B,iBAAA,CAAA;;;ACND;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, Input, Output, Renderer2, inject, ChangeDetectorRef, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, NgModule } from '@angular/core';
2
+ import { EventEmitter, Component, Input, Output, inject, Renderer2, ChangeDetectorRef, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, NgModule } from '@angular/core';
3
3
  import { __decorate } from 'tslib';
4
4
  import { XWithConfig, XInputBoolean, XInputNumber, XDataConvert, XConfigService, XIsChange, XClearClass, XIsEmpty, XResize, XIsUndefined } from '@ng-nest/ui/core';
5
5
  import { XControlValueAccessor, XValueAccessor } from '@ng-nest/ui/base-form';
@@ -121,8 +121,8 @@ class XFindProperty extends XControlValueAccessor {
121
121
  */
122
122
  this.treeChecked = [];
123
123
  }
124
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
125
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XFindProperty, selector: "x-find-property", inputs: { size: "size", bordered: "bordered", multiple: "multiple", columnLabel: "columnLabel", dialogTitle: "dialogTitle", dialogCheckboxLabel: "dialogCheckboxLabel", dialogCheckboxWidth: "dialogCheckboxWidth", dialogEmptyContent: "dialogEmptyContent", dialogWidth: "dialogWidth", dialogHeight: "dialogHeight", dialogVisible: "dialogVisible", dialogButtonsCenter: "dialogButtonsCenter", tableData: "tableData", tableIndex: "tableIndex", tableSize: "tableSize", tableQuery: "tableQuery", tableTotal: "tableTotal", tableColumns: "tableColumns", tableActivatedRow: "tableActivatedRow", tableCheckedRow: "tableCheckedRow", tableLoading: "tableLoading", tableVirtualScroll: "tableVirtualScroll", tableBodyHeight: "tableBodyHeight", tableMinBufferPx: "tableMinBufferPx", tableMaxBufferPx: "tableMaxBufferPx", tableAdaptionHeight: "tableAdaptionHeight", tableDocPercent: "tableDocPercent", tableRowHeight: "tableRowHeight", treeData: "treeData", treeActivatedId: "treeActivatedId", treeExpandedLevel: "treeExpandedLevel", treeChecked: "treeChecked", treeCheckbox: "treeCheckbox", treeTableConnect: "treeTableConnect", search: "search" }, outputs: { dialogVisibleChange: "dialogVisibleChange", tableIndexChange: "tableIndexChange", tableSizeChange: "tableSizeChange", tableSortChange: "tableSortChange", tableRowEmit: "tableRowEmit", treeActivatedChange: "treeActivatedChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
124
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
125
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.0", type: XFindProperty, selector: "x-find-property", inputs: { size: "size", bordered: "bordered", multiple: "multiple", columnLabel: "columnLabel", dialogTitle: "dialogTitle", dialogCheckboxLabel: "dialogCheckboxLabel", dialogCheckboxWidth: "dialogCheckboxWidth", dialogEmptyContent: "dialogEmptyContent", dialogWidth: "dialogWidth", dialogHeight: "dialogHeight", dialogVisible: "dialogVisible", dialogButtonsCenter: "dialogButtonsCenter", tableData: "tableData", tableIndex: "tableIndex", tableSize: "tableSize", tableQuery: "tableQuery", tableTotal: "tableTotal", tableColumns: "tableColumns", tableActivatedRow: "tableActivatedRow", tableCheckedRow: "tableCheckedRow", tableLoading: "tableLoading", tableVirtualScroll: "tableVirtualScroll", tableBodyHeight: "tableBodyHeight", tableMinBufferPx: "tableMinBufferPx", tableMaxBufferPx: "tableMaxBufferPx", tableAdaptionHeight: "tableAdaptionHeight", tableDocPercent: "tableDocPercent", tableRowHeight: "tableRowHeight", treeData: "treeData", treeActivatedId: "treeActivatedId", treeExpandedLevel: "treeExpandedLevel", treeChecked: "treeChecked", treeCheckbox: "treeCheckbox", treeTableConnect: "treeTableConnect", search: "search" }, outputs: { dialogVisibleChange: "dialogVisibleChange", tableIndexChange: "tableIndexChange", tableSizeChange: "tableSizeChange", tableSortChange: "tableSortChange", tableRowEmit: "tableRowEmit", treeActivatedChange: "treeActivatedChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
126
126
  }
127
127
  __decorate([
128
128
  XWithConfig(X_CONFIG_NAME, 'medium')
@@ -194,7 +194,7 @@ __decorate([
194
194
  __decorate([
195
195
  XInputBoolean()
196
196
  ], XFindProperty.prototype, "treeCheckbox", void 0);
197
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindProperty, decorators: [{
197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindProperty, decorators: [{
198
198
  type: Component,
199
199
  args: [{ selector: `${XFindPrefix}-property`, template: '' }]
200
200
  }], propDecorators: { size: [{
@@ -595,10 +595,10 @@ class XFindComponent extends XFindProperty {
595
595
  this.tableCom.change(1);
596
596
  this.cdr.detectChanges();
597
597
  }
598
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
599
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: XFindComponent, isStandalone: true, selector: "x-find", providers: [XValueAccessor(XFindComponent)], viewQueries: [{ propertyName: "find", first: true, predicate: ["find"], descendants: true, static: true }, { propertyName: "dialogCom", first: true, predicate: ["dialogCom"], descendants: true }, { propertyName: "tableCom", first: true, predicate: ["tableCom"], descendants: true }, { propertyName: "treeCom", first: true, predicate: ["treeCom"], descendants: true }, { propertyName: "buttonCom", first: true, predicate: ["buttonCom"], descendants: true }, { propertyName: "tableRef", first: true, predicate: ["tableRef"], descendants: true }, { propertyName: "treeRef", first: true, predicate: ["treeRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '\u67E5\u8BE2' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-find{margin:0;padding:0;width:100%}.x-find.x-flex{display:flex}.x-find.x-justify-start{justify-content:flex-start}.x-find.x-justify-center{justify-content:center}.x-find.x-justify-end{justify-content:flex-end}.x-find.x-justify-space-between{justify-content:space-between}.x-find.x-justify-space-around{justify-content:space-around}.x-find.x-align-start{align-items:flex-start}.x-find.x-align-center{align-items:center}.x-find.x-align-end{align-items:flex-end}.x-find.x-direction-column{flex-direction:column}.x-find.x-direction-column-reverse{flex-direction:column-reverse}.x-find.x-direction-row{flex-direction:row}.x-find.x-direction-row-reverse{flex-direction:row-reverse}.x-find>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-find>label.x-text-align-start{text-align:start}.x-find>label.x-text-align-center{text-align:center}.x-find>label.x-text-align-end{text-align:end}.x-find-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-find-row{flex:1;display:flex;align-items:flex-start;position:relative}.x-find-tags{margin:-.0625rem -.0625rem -.0625rem .4375rem}.x-find-tags>x-tag{margin:.0625rem}.x-find.x-required>label{color:var(--x-danger)}.x-find.x-direction-row>label{padding:0 .5rem 0 0}.x-find.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-find.x-direction-column,.x-find.x-direction-column-reverse{align-items:inherit}.x-find-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-find-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-find-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-find-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-find-small .x-find-tags{margin-top:-.1875rem}.x-find-small .x-find-tags>x-tag{margin-top:.125rem}.x-find-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-find-mini .x-find-tags{margin-top:-.25rem}.x-find-mini .x-find-tags>x-tag{margin-top:.125rem}.x-find-dialog{flex:1;display:flex}.x-find-dialog-table{flex:1;min-height:18.75rem;height:-moz-fit-content;height:fit-content}.x-find-dialog-tree{flex:1;min-height:18.75rem;max-height:25rem;overflow-y:auto}.x-find-dialog-tree .x-tree-node-content.x-activated{color:var(--x-primary)}.x-find-dialog-tree-node{flex:1;display:flex;align-items:center;justify-content:space-between}.x-find-dialog-tree-node>span{flex:1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}.x-find-dialog-tree-table .x-find-dialog-tree{flex:initial;min-height:initial;max-height:initial;width:14rem;margin-right:1rem;padding-right:1rem;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-find-dialog-checked{margin-left:1rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:1rem;width:10rem;overflow-y:auto;height:100%}.x-find-dialog-checked x-tag{display:block}.x-find-dialog-checked x-tag:not(:first-child){margin-top:.5rem}.x-find-dialog-checked x-tag .x-tag{width:100%;display:flex;justify-content:space-between}.x-find-dialog-checked x-tag .x-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-find-dialog-checked.x-find-empty{display:flex;align-items:center;justify-content:center}.x-find-dialog-container .x-dialog-content{overflow:initial}.x-find-search{display:flex;padding:.3rem}.x-find-search .x-input,.x-find-search x-input{width:15rem}.x-find-search .x-button{margin-left:.5rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XTagComponent, selector: "x-tag" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XDialogComponent, selector: "x-dialog" }, { kind: "component", type: XTableComponent, selector: "x-table" }, { kind: "component", type: XTreeComponent, selector: "x-tree" }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XEmptyComponent, selector: "x-empty" }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
598
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
599
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.0", type: XFindComponent, isStandalone: true, selector: "x-find", providers: [XValueAccessor(XFindComponent)], viewQueries: [{ propertyName: "find", first: true, predicate: ["find"], descendants: true, static: true }, { propertyName: "dialogCom", first: true, predicate: ["dialogCom"], descendants: true }, { propertyName: "tableCom", first: true, predicate: ["tableCom"], descendants: true }, { propertyName: "treeCom", first: true, predicate: ["treeCom"], descendants: true }, { propertyName: "buttonCom", first: true, predicate: ["buttonCom"], descendants: true }, { propertyName: "tableRef", first: true, predicate: ["tableRef"], descendants: true }, { propertyName: "treeRef", first: true, predicate: ["treeRef"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '\u67E5\u8BE2' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-find{margin:0;padding:0;width:100%}.x-find.x-flex{display:flex}.x-find.x-justify-start{justify-content:flex-start}.x-find.x-justify-center{justify-content:center}.x-find.x-justify-end{justify-content:flex-end}.x-find.x-justify-space-between{justify-content:space-between}.x-find.x-justify-space-around{justify-content:space-around}.x-find.x-align-start{align-items:flex-start}.x-find.x-align-center{align-items:center}.x-find.x-align-end{align-items:flex-end}.x-find.x-direction-column{flex-direction:column}.x-find.x-direction-column-reverse{flex-direction:column-reverse}.x-find.x-direction-row{flex-direction:row}.x-find.x-direction-row-reverse{flex-direction:row-reverse}.x-find>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-find>label.x-text-align-start{text-align:start}.x-find>label.x-text-align-center{text-align:center}.x-find>label.x-text-align-end{text-align:end}.x-find-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-find-row{flex:1;display:flex;align-items:flex-start;position:relative}.x-find-tags{margin:-.0625rem -.0625rem -.0625rem .4375rem}.x-find-tags>x-tag{margin:.0625rem}.x-find.x-required>label{color:var(--x-danger)}.x-find.x-direction-row>label{padding:0 .5rem 0 0}.x-find.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-find.x-direction-column,.x-find.x-direction-column-reverse{align-items:inherit}.x-find-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-find-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-find-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-find-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-find-small .x-find-tags{margin-top:-.1875rem}.x-find-small .x-find-tags>x-tag{margin-top:.125rem}.x-find-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-find-mini .x-find-tags{margin-top:-.25rem}.x-find-mini .x-find-tags>x-tag{margin-top:.125rem}.x-find-dialog{flex:1;display:flex}.x-find-dialog-table{flex:1;min-height:18.75rem;height:fit-content}.x-find-dialog-tree{flex:1;min-height:18.75rem;max-height:25rem;overflow-y:auto}.x-find-dialog-tree .x-tree-node-content.x-activated{color:var(--x-primary)}.x-find-dialog-tree-node{flex:1;display:flex;align-items:center;justify-content:space-between}.x-find-dialog-tree-node>span{flex:1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}.x-find-dialog-tree-table .x-find-dialog-tree{flex:initial;min-height:initial;max-height:initial;width:14rem;margin-right:1rem;padding-right:1rem;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-find-dialog-checked{margin-left:1rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:1rem;width:10rem;overflow-y:auto;height:100%}.x-find-dialog-checked x-tag{display:block}.x-find-dialog-checked x-tag:not(:first-child){margin-top:.5rem}.x-find-dialog-checked x-tag .x-tag{width:100%;display:flex;justify-content:space-between}.x-find-dialog-checked x-tag .x-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-find-dialog-checked.x-find-empty{display:flex;align-items:center;justify-content:center}.x-find-dialog-container .x-dialog-content{overflow:initial}.x-find-search{display:flex;padding:.3rem}.x-find-search .x-input,.x-find-search x-input{width:15rem}.x-find-search .x-button{margin-left:.5rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XTagComponent, selector: "x-tag" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XDialogComponent, selector: "x-dialog" }, { kind: "component", type: XTableComponent, selector: "x-table" }, { kind: "component", type: XTreeComponent, selector: "x-tree" }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "component", type: XEmptyComponent, selector: "x-empty" }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
600
600
  }
601
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindComponent, decorators: [{
601
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindComponent, decorators: [{
602
602
  type: Component,
603
603
  args: [{ selector: `${XFindPrefix}`, standalone: true, imports: [
604
604
  NgClass,
@@ -613,7 +613,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImpor
613
613
  XEmptyComponent,
614
614
  XInputComponent,
615
615
  XControlValueAccessor
616
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XFindComponent)], template: "<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '\u67E5\u8BE2' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-find{margin:0;padding:0;width:100%}.x-find.x-flex{display:flex}.x-find.x-justify-start{justify-content:flex-start}.x-find.x-justify-center{justify-content:center}.x-find.x-justify-end{justify-content:flex-end}.x-find.x-justify-space-between{justify-content:space-between}.x-find.x-justify-space-around{justify-content:space-around}.x-find.x-align-start{align-items:flex-start}.x-find.x-align-center{align-items:center}.x-find.x-align-end{align-items:flex-end}.x-find.x-direction-column{flex-direction:column}.x-find.x-direction-column-reverse{flex-direction:column-reverse}.x-find.x-direction-row{flex-direction:row}.x-find.x-direction-row-reverse{flex-direction:row-reverse}.x-find>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-find>label.x-text-align-start{text-align:start}.x-find>label.x-text-align-center{text-align:center}.x-find>label.x-text-align-end{text-align:end}.x-find-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-find-row{flex:1;display:flex;align-items:flex-start;position:relative}.x-find-tags{margin:-.0625rem -.0625rem -.0625rem .4375rem}.x-find-tags>x-tag{margin:.0625rem}.x-find.x-required>label{color:var(--x-danger)}.x-find.x-direction-row>label{padding:0 .5rem 0 0}.x-find.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-find.x-direction-column,.x-find.x-direction-column-reverse{align-items:inherit}.x-find-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-find-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-find-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-find-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-find-small .x-find-tags{margin-top:-.1875rem}.x-find-small .x-find-tags>x-tag{margin-top:.125rem}.x-find-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-find-mini .x-find-tags{margin-top:-.25rem}.x-find-mini .x-find-tags>x-tag{margin-top:.125rem}.x-find-dialog{flex:1;display:flex}.x-find-dialog-table{flex:1;min-height:18.75rem;height:-moz-fit-content;height:fit-content}.x-find-dialog-tree{flex:1;min-height:18.75rem;max-height:25rem;overflow-y:auto}.x-find-dialog-tree .x-tree-node-content.x-activated{color:var(--x-primary)}.x-find-dialog-tree-node{flex:1;display:flex;align-items:center;justify-content:space-between}.x-find-dialog-tree-node>span{flex:1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}.x-find-dialog-tree-table .x-find-dialog-tree{flex:initial;min-height:initial;max-height:initial;width:14rem;margin-right:1rem;padding-right:1rem;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-find-dialog-checked{margin-left:1rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:1rem;width:10rem;overflow-y:auto;height:100%}.x-find-dialog-checked x-tag{display:block}.x-find-dialog-checked x-tag:not(:first-child){margin-top:.5rem}.x-find-dialog-checked x-tag .x-tag{width:100%;display:flex;justify-content:space-between}.x-find-dialog-checked x-tag .x-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-find-dialog-checked.x-find-empty{display:flex;align-items:center;justify-content:center}.x-find-dialog-container .x-dialog-content{overflow:initial}.x-find-search{display:flex;padding:.3rem}.x-find-search .x-input,.x-find-search x-input{width:15rem}.x-find-search .x-button{margin-left:.5rem}\n"] }]
616
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XFindComponent)], template: "<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '\u67E5\u8BE2' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["@charset \"UTF-8\";.x-find{margin:0;padding:0;width:100%}.x-find.x-flex{display:flex}.x-find.x-justify-start{justify-content:flex-start}.x-find.x-justify-center{justify-content:center}.x-find.x-justify-end{justify-content:flex-end}.x-find.x-justify-space-between{justify-content:space-between}.x-find.x-justify-space-around{justify-content:space-around}.x-find.x-align-start{align-items:flex-start}.x-find.x-align-center{align-items:center}.x-find.x-align-end{align-items:flex-end}.x-find.x-direction-column{flex-direction:column}.x-find.x-direction-column-reverse{flex-direction:column-reverse}.x-find.x-direction-row{flex-direction:row}.x-find.x-direction-row-reverse{flex-direction:row-reverse}.x-find>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-find>label.x-text-align-start{text-align:start}.x-find>label.x-text-align-center{text-align:center}.x-find>label.x-text-align-end{text-align:end}.x-find-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-find-row{flex:1;display:flex;align-items:flex-start;position:relative}.x-find-tags{margin:-.0625rem -.0625rem -.0625rem .4375rem}.x-find-tags>x-tag{margin:.0625rem}.x-find.x-required>label{color:var(--x-danger)}.x-find.x-direction-row>label{padding:0 .5rem 0 0}.x-find.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-find.x-direction-column,.x-find.x-direction-column-reverse{align-items:inherit}.x-find-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-find-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-find-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-find-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-find-small .x-find-tags{margin-top:-.1875rem}.x-find-small .x-find-tags>x-tag{margin-top:.125rem}.x-find-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-find-mini .x-find-tags{margin-top:-.25rem}.x-find-mini .x-find-tags>x-tag{margin-top:.125rem}.x-find-dialog{flex:1;display:flex}.x-find-dialog-table{flex:1;min-height:18.75rem;height:fit-content}.x-find-dialog-tree{flex:1;min-height:18.75rem;max-height:25rem;overflow-y:auto}.x-find-dialog-tree .x-tree-node-content.x-activated{color:var(--x-primary)}.x-find-dialog-tree-node{flex:1;display:flex;align-items:center;justify-content:space-between}.x-find-dialog-tree-node>span{flex:1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}.x-find-dialog-tree-table .x-find-dialog-tree{flex:initial;min-height:initial;max-height:initial;width:14rem;margin-right:1rem;padding-right:1rem;border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-find-dialog-checked{margin-left:1rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);padding-left:1rem;width:10rem;overflow-y:auto;height:100%}.x-find-dialog-checked x-tag{display:block}.x-find-dialog-checked x-tag:not(:first-child){margin-top:.5rem}.x-find-dialog-checked x-tag .x-tag{width:100%;display:flex;justify-content:space-between}.x-find-dialog-checked x-tag .x-tag>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-find-dialog-checked.x-find-empty{display:flex;align-items:center;justify-content:center}.x-find-dialog-container .x-dialog-content{overflow:initial}.x-find-search{display:flex;padding:.3rem}.x-find-search .x-input,.x-find-search x-input{width:15rem}.x-find-search .x-button{margin-left:.5rem}\n"] }]
617
617
  }], propDecorators: { find: [{
618
618
  type: ViewChild,
619
619
  args: ['find', { static: true }]
@@ -638,11 +638,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImpor
638
638
  }] } });
639
639
 
640
640
  class XFindModule {
641
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
642
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XFindModule, imports: [XFindComponent], exports: [XFindComponent] }); }
643
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindModule, imports: [XFindComponent] }); }
641
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
642
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.0", ngImport: i0, type: XFindModule, imports: [XFindComponent], exports: [XFindComponent] }); }
643
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindModule, imports: [XFindComponent] }); }
644
644
  }
645
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XFindModule, decorators: [{
645
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.0", ngImport: i0, type: XFindModule, decorators: [{
646
646
  type: NgModule,
647
647
  args: [{
648
648
  exports: [XFindComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-find.mjs","sources":["../../../../lib/ng-nest/ui/find/find.property.ts","../../../../lib/ng-nest/ui/find/find.component.ts","../../../../lib/ng-nest/ui/find/find.component.html","../../../../lib/ng-nest/ui/find/find.module.ts","../../../../lib/ng-nest/ui/find/ng-nest-ui-find.ts"],"sourcesContent":["import {\r\n XInputBoolean,\r\n XBoolean,\r\n XDataConvert,\r\n XData,\r\n XInputNumber,\r\n XNumber,\r\n XSort,\r\n XQuery,\r\n XWithConfig,\r\n XFilter,\r\n XSize\r\n} from '@ng-nest/ui/core';\r\nimport { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { XTableColumn, XTableRow } from '@ng-nest/ui/table';\r\nimport { XTreeNode } from '@ng-nest/ui/tree';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Find\r\n * @selector x-find\r\n * @decorator component\r\n */\r\nexport const XFindPrefix = 'x-find';\r\nconst X_CONFIG_NAME = 'find';\r\n\r\nexport interface XFindSearchOption extends XFilter {\r\n label?: string;\r\n button?: string;\r\n}\r\n\r\n/**\r\n * Find Property\r\n */\r\n@Component({ selector: `${XFindPrefix}-property`, template: '' })\r\nexport class XFindProperty extends XControlValueAccessor<any | any[]> implements XFindOption {\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 Multiple choice\r\n */\r\n @Input() @XInputBoolean() multiple: XBoolean = false;\r\n /**\r\n * @zh_CN 选中 label 名称字段\r\n * @en_US Check the label name field\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, 'label') columnLabel!: string;\r\n /**\r\n * @zh_CN 弹框标题\r\n * @en_US Bullet title\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '查找选择') dialogTitle!: string;\r\n /**\r\n * @zh_CN 弹框表格选择列头名称\r\n * @en_US Ball Form Select List Name\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '选择') dialogCheckboxLabel!: string;\r\n /**\r\n * @zh_CN 弹框表格选择列宽\r\n * @en_US Ball Form Select List width\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 60) @XInputNumber() dialogCheckboxWidth!: number;\r\n /**\r\n * @zh_CN 弹框选择数据为空的提示信息\r\n * @en_US Ball box selection data empty prompt information\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '请选择数据') dialogEmptyContent!: string;\r\n /**\r\n * @zh_CN 弹框宽度\r\n * @en_US Bullet frame width\r\n */\r\n @Input() dialogWidth?: string;\r\n /**\r\n * @zh_CN 弹框高度\r\n * @en_US Height of bullet frame\r\n */\r\n @Input() dialogHeight?: string;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box display, hide\r\n */\r\n @Input() @XInputBoolean() dialogVisible: boolean = false;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box display, hide\r\n */\r\n @Output() dialogVisibleChange = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button centered\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() dialogButtonsCenter?: XBoolean;\r\n\r\n /**\r\n * @zh_CN 表格行数据\r\n * @en_US Table row data\r\n */\r\n @Input() tableData: XData<XTableRow> = [];\r\n /**\r\n * @zh_CN 表格页码\r\n * @en_US Table page number\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 1) tableIndex!: number;\r\n /**\r\n * @zh_CN 表每页数据条数\r\n * @en_US Number of data items per page\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 10) tableSize!: number;\r\n /**\r\n * @zh_CN 表格查询条件\r\n * @en_US Number of data items per page\r\n */\r\n @Input() tableQuery: XQuery = {};\r\n /**\r\n * @zh_CN 表格数据总条数\r\n * @en_US Total number of table data\r\n */\r\n @Input() tableTotal: number = 0;\r\n /**\r\n * @zh_CN 页码变化的事件\r\n * @en_US Page number change event\r\n */\r\n @Output() tableIndexChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 每页显示条数变化的事件\r\n * @en_US Show the number of events on each page\r\n */\r\n @Output() tableSizeChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 排序点击的事件\r\n * @en_US Sort click events\r\n */\r\n @Output() tableSortChange = new EventEmitter<XSort[]>();\r\n /**\r\n * @zh_CN 表格列参数\r\n * @en_US Table column parameters\r\n */\r\n @Input() tableColumns: XTableColumn[] = [];\r\n /**\r\n * @zh_CN 当前选中行数据\r\n * @en_US Currently selected row data\r\n */\r\n @Input() tableActivatedRow?: any;\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n @Output() tableRowEmit = new EventEmitter<any>();\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n @Input() tableCheckedRow: { [property: string]: any[] } = {};\r\n /**\r\n * @zh_CN 是否启用加载 loading\r\n * @en_US Whether to enable loading loading\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME, false) @XInputBoolean() tableLoading!: XBoolean;\r\n /**\r\n * @zh_CN 表格开启虚拟滚动\r\n * @en_US Table opens virtual scrolling\r\n */\r\n @Input() @XWithConfig<boolean>(X_CONFIG_NAME, false) @XInputBoolean() tableVirtualScroll!: boolean;\r\n /**\r\n * @zh_CN 表格 body 数据高度\r\n * @en_US Table body data height\r\n */\r\n @Input() @XInputNumber() tableBodyHeight?: number;\r\n /**\r\n * @zh_CN 表格超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US The table exceeds the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() tableMinBufferPx: number = 100;\r\n /**\r\n * @zh_CN 表格渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US The pixels of the new data buffer for the table rendering, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() tableMaxBufferPx: number = 200;\r\n /**\r\n * @zh_CN 表格自适应高度,table 高度等于屏幕高度减掉此处设置的数值\r\n * @en_US Table adaptive height, table height is equal to the screen height minus the value set here\r\n */\r\n @Input() @XInputNumber() tableAdaptionHeight?: XNumber;\r\n /**\r\n * @zh_CN 表格文档高度百分比,弹窗百分比高度用到\r\n * @en_US Table document height percentage, used for pop-up window percentage height\r\n */\r\n @Input() @XInputNumber() tableDocPercent: XNumber = 1;\r\n /**\r\n * @zh_CN 表格行高度,单位 px\r\n * @en_US Table row height, unit px\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 42) @XInputNumber() tableRowHeight!: number;\r\n /**\r\n * @zh_CN 树节点数据\r\n * @en_US Tree node data\r\n */\r\n @Input() @XDataConvert() treeData: XData<XTreeNode> = [];\r\n /**\r\n * @zh_CN 树当前点击选中的节点变化的事件\r\n * @en_US The event of the tree currently clicked on the selected node change\r\n */\r\n @Output() treeActivatedChange = new EventEmitter<XTreeNode>();\r\n /**\r\n * @zh_CN 树当前激活的节点 Id\r\n * @en_US Id of the currently active node of the tree\r\n */\r\n @Input() treeActivatedId: any;\r\n /**\r\n * @zh_CN 树默认展开的层级\r\n * @en_US The level of the tree expanded by default\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 0) @XInputNumber() treeExpandedLevel!: XNumber;\r\n /**\r\n * @zh_CN 树 checkbox 选中的节点\r\n * @en_US Tree checkbox selected node\r\n */\r\n @Input() treeChecked: any[] = [];\r\n /**\r\n * @zh_CN 树显示多选框\r\n * @en_US Tree display checkbox\r\n */\r\n @Input() @XInputBoolean() treeCheckbox?: XBoolean;\r\n /**\r\n * @zh_CN 树和表格同时存在的时候,树节点 id 对应表格的属性,用来做表格数据过滤\r\n * @en_US When the tree and the table exist at the same time, the tree node id corresponds to the attribute of the table, which is used to filter the table data\r\n */\r\n @Input() treeTableConnect: any;\r\n /**\r\n * @zh_CN 数据查询过滤表单\r\n * @en_US form for data filter\r\n */\r\n @Input() search!: XFindSearchOption;\r\n}\r\n\r\n/**\r\n * Find Option\r\n * @undocument true\r\n */\r\nexport interface XFindOption extends XFormOption {\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: XBoolean;\r\n /**\r\n * @zh_CN 多选\r\n * @en_US Multiple select\r\n */\r\n multiple?: XBoolean;\r\n /**\r\n * @zh_CN 选中 label 名称字段\r\n * @en_US Check the label name field\r\n */\r\n columnLabel?: string;\r\n /**\r\n * @zh_CN 弹框标题\r\n * @en_US Bullet title\r\n */\r\n dialogTitle?: string;\r\n /**\r\n * @zh_CN 弹框表格选择框列头名称\r\n * @en_US Ball Form Select Box List Name\r\n */\r\n dialogCheckboxLabel?: string;\r\n /**\r\n * @zh_CN 弹框表格选择框列头宽度\r\n * @en_US Ball Form Select Box List width\r\n */\r\n dialogCheckboxWidth?: number;\r\n /**\r\n * @zh_CN 弹框选择数据为空的提示内容\r\n * @en_US Ball box selection data empty prompt information\r\n */\r\n dialogEmptyContent?: string;\r\n /**\r\n * @zh_CN 弹框宽度\r\n * @en_US Bullet frame width\r\n */\r\n dialogWidth?: string;\r\n /**\r\n * @zh_CN 弹框高度\r\n * @en_US Height of bullet frame\r\n */\r\n dialogHeight?: string;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box show, hide\r\n */\r\n dialogVisible?: boolean;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box show, hide\r\n */\r\n // dialogVisibleChange = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button center\r\n */\r\n dialogButtonsCenter?: XBoolean;\r\n\r\n /**\r\n * @zh_CN 表格行数据\r\n * @en_US Table row data\r\n */\r\n tableData?: XData<XTableRow>;\r\n /**\r\n * @zh_CN 表格页码\r\n * @en_US Table page number\r\n */\r\n tableIndex?: number;\r\n /**\r\n * @zh_CN 表每页数据条数\r\n * @en_US Number of data items per page\r\n */\r\n tableSize?: number;\r\n /**\r\n * @zh_CN 表格数据总条数\r\n * @en_US Total number of table data\r\n */\r\n tableTotal?: number;\r\n /**\r\n * @zh_CN 页码变化的事件\r\n * @en_US Page number change event\r\n */\r\n // tableIndexChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 每页显示条数变化的事件\r\n * @en_US Show the number of events on each page\r\n */\r\n // tableSizeChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 排序点击的事件\r\n * @en_US Sort click events\r\n */\r\n // tableSortChange = new EventEmitter<XSort[]>();\r\n /**\r\n * @zh_CN 表格列参数\r\n * @en_US Table column parameters\r\n */\r\n tableColumns?: XTableColumn[];\r\n /**\r\n * @zh_CN 当前选中行数据\r\n * @en_US Currently selected row data\r\n */\r\n tableActivatedRow?: any;\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n // tableRowEmit = new EventEmitter<any>();\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n tableCheckedRow?: { [property: string]: any[] };\r\n /**\r\n * @zh_CN 是否启用加载 loading\r\n * @en_US Whether to enable loading\r\n */\r\n tableLoading?: XBoolean;\r\n /**\r\n * @zh_CN 表格开启虚拟滚动\r\n * @en_US Table opens virtual scrolling\r\n */\r\n tableVirtualScroll?: boolean;\r\n /**\r\n * @zh_CN 表格 body 数据高度\r\n * @en_US Table body data height\r\n */\r\n tableBodyHeight?: number;\r\n /**\r\n * @zh_CN 表格超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US The table exceeds the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n tableMinBufferPx?: number;\r\n /**\r\n * @zh_CN 表格渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US The pixels of the new data buffer for the table rendering, corresponding to the parameters in cdk scroll\r\n */\r\n tableMaxBufferPx?: number;\r\n /**\r\n * @zh_CN 表格自适应高度,table 高度等于屏幕高度减掉此处设置的数值\r\n * @en_US Table adaptive height, table height is equal to the screen height minus the value set here\r\n */\r\n tableAdaptionHeight?: XNumber;\r\n /**\r\n * @zh_CN 表格文档高度百分比,弹窗百分比高度用到\r\n * @en_US Table document height percentage, used for pop-up window percentage height\r\n */\r\n tableDocPercent?: XNumber;\r\n /**\r\n * @zh_CN 表格行高度,单位 px\r\n * @en_US Table row height, unit px\r\n */\r\n tableRowHeight?: XNumber;\r\n\r\n /**\r\n * @zh_CN 树节点数据\r\n * @en_US Tree node data\r\n */\r\n treeData?: XData<XTreeNode>;\r\n /**\r\n * @zh_CN 树当前点击选中的节点变化的事件\r\n * @en_US The event of the tree currently clicked on the selected node change\r\n */\r\n // treeActivatedChange = new EventEmitter<XTreeNode>();\r\n /**\r\n * @zh_CN 树当前激活的节点 Id\r\n * @en_US Id of the currently active node of the tree\r\n */\r\n treeActivatedId?: any;\r\n /**\r\n * @zh_CN 树默认展开的层级\r\n * @en_US The level of the tree expanded by default\r\n */\r\n treeExpandedLevel?: XNumber;\r\n /**\r\n * @zh_CN 树 checkbox 选中的节点\r\n * @en_US Tree checkbox selected node\r\n */\r\n treeChecked?: any[];\r\n /**\r\n * @zh_CN 树显示多选框\r\n * @en_US Tree display checkbox\r\n */\r\n treeCheckbox?: XBoolean;\r\n /**\r\n * @zh_CN 树和表格同时存在的时候,树节点 id 对应表格的属性,用来做表格数据过滤\r\n * @en_US When the tree and the table exist at the same time, the tree node id corresponds to the attribute of the table, which is used to filter the table data\r\n */\r\n treeTableConnect?: any;\r\n\r\n /**\r\n * @zh_CN 数据查询过滤表单\r\n * @en_US form for data filter\r\n */\r\n search?: XFindSearchOption;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewChild,\r\n SimpleChanges,\r\n inject,\r\n OnChanges,\r\n AfterViewInit,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XFindProperty, XFindPrefix } from './find.property';\r\nimport {\r\n XClearClass,\r\n XResize,\r\n XIsUndefined,\r\n XIsChange,\r\n XConfigService,\r\n XIsEmpty,\r\n XResizeObserver\r\n} from '@ng-nest/ui/core';\r\nimport { XTableComponent, XTableRow } from '@ng-nest/ui/table';\r\nimport { XDialogComponent } from '@ng-nest/ui/dialog';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { XTreeNode, XTreeComponent } from '@ng-nest/ui/tree';\r\nimport { XValueAccessor, XControlValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XTagComponent } from '@ng-nest/ui/tag';\r\nimport { XEmptyComponent } from '@ng-nest/ui/empty';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { NgClass } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XFindPrefix}`,\r\n standalone: true,\r\n imports: [\r\n NgClass,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XTagComponent,\r\n XButtonComponent,\r\n XDialogComponent,\r\n XTableComponent,\r\n XTreeComponent,\r\n XIconComponent,\r\n XEmptyComponent,\r\n XInputComponent,\r\n XControlValueAccessor\r\n ],\r\n templateUrl: './find.component.html',\r\n styleUrls: ['./find.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XFindComponent)]\r\n})\r\nexport class XFindComponent extends XFindProperty implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n @ViewChild('find', { static: true }) find!: ElementRef<HTMLElement>;\r\n @ViewChild('dialogCom') dialogCom!: XDialogComponent;\r\n @ViewChild('tableCom') tableCom!: XTableComponent;\r\n @ViewChild('treeCom') treeCom!: XTreeComponent;\r\n @ViewChild('buttonCom') buttonCom!: XButtonComponent;\r\n\r\n private _tableRef!: ElementRef<HTMLElement>;\r\n public get tableRef(): ElementRef {\r\n return this._tableRef;\r\n }\r\n @ViewChild('tableRef')\r\n public set tableRef(value: ElementRef) {\r\n this._tableRef = value;\r\n if (value && this.multiple) {\r\n this.setSubscribe();\r\n }\r\n }\r\n\r\n private _treeRef!: ElementRef<HTMLElement>;\r\n public get treeRef(): ElementRef {\r\n return this._treeRef;\r\n }\r\n @ViewChild('treeRef')\r\n public set treeRef(value: ElementRef) {\r\n this._treeRef = value;\r\n if (value && this.multiple) {\r\n this.setSubscribe();\r\n }\r\n }\r\n\r\n get getEmpty() {\r\n return !this.temp || this.temp.length === 0;\r\n }\r\n\r\n get hasTable() {\r\n return this.tableColumns?.length > 0;\r\n }\r\n\r\n get hasTree() {\r\n return (\r\n (Array.isArray(this.treeData) && this.treeData.length > 0) ||\r\n this.treeData instanceof Function ||\r\n this.treeData instanceof Observable\r\n );\r\n }\r\n\r\n get hasTreeTable() {\r\n return this.hasTable && this.hasTree;\r\n }\r\n\r\n get hasTreeMultiple() {\r\n return this.hasTree && !this.hasTreeTable && this.multiple;\r\n }\r\n\r\n get hasSearch() {\r\n return this.search && this.hasTable;\r\n }\r\n\r\n temp: any;\r\n height = 100;\r\n\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: XResizeObserver;\r\n\r\n override writeValue(value: any) {\r\n this.value = value;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n override cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnChanges(simples: SimpleChanges) {\r\n const { tableData, labelAlign, size } = simples;\r\n XIsChange(tableData) && this.setTableCheckedRow();\r\n XIsChange(labelAlign, size) && this.setClassMap();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.find.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setMultiple();\r\n this.setWidth();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.value) this.cdr.detectChanges();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap, this.classMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n this.classMap[`x-find-${this.size}`] = !XIsEmpty(this.size);\r\n }\r\n\r\n setSubscribe() {\r\n let resizeRef: Element[] = [];\r\n if (this.hasTable) {\r\n resizeRef = [this.tableRef?.nativeElement];\r\n }\r\n if (this.hasTree && !this.hasTreeTable) {\r\n resizeRef.push(this.treeRef?.nativeElement);\r\n }\r\n this._unSubject.next();\r\n XResize(...resizeRef)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n if (this.tableRef) {\r\n this.height = this.tableRef.nativeElement.clientHeight;\r\n } else if (this.hasTree) {\r\n this.height = this.treeRef?.nativeElement.clientHeight;\r\n }\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setMultiple() {\r\n if (!this.multiple) return;\r\n if (this.hasTable) {\r\n if (!this.tableColumns.find((x) => x.rowChecked)) {\r\n this.tableColumns = [\r\n {\r\n id: '$checked',\r\n label: this.dialogCheckboxLabel,\r\n rowChecked: true,\r\n type: 'checkbox',\r\n width: this.dialogCheckboxWidth\r\n },\r\n ...this.tableColumns\r\n ];\r\n }\r\n }\r\n }\r\n\r\n setWidth() {\r\n if (XIsUndefined(this.dialogWidth)) {\r\n if ((this.hasTable && this.hasTree) || this.hasTable) {\r\n this.dialogWidth = '50rem';\r\n } else if (this.hasTree && this.multiple) {\r\n this.dialogWidth = '30rem';\r\n } else if (this.hasTree) {\r\n this.dialogWidth = '20rem';\r\n }\r\n }\r\n }\r\n\r\n showModal() {\r\n if (this.disabled) return;\r\n this.dialogVisible = true;\r\n this.dialogVisibleChange.emit(this.dialogVisible);\r\n if (this.value) {\r\n if (this.multiple) {\r\n this.temp = (this.value as Array<any>).map((x) => Object.assign({}, x));\r\n this.setTableCheckedRow();\r\n this.setTreeChecked();\r\n } else {\r\n this.tableActivatedRow = this.value;\r\n if (!this.hasTreeTable && this.hasTree) {\r\n this.treeActivatedId = this.value.id;\r\n }\r\n }\r\n } else {\r\n this.temp = this.multiple ? [] : null;\r\n }\r\n if (this.hasTable) {\r\n this.tableCom.virtualBody?.scrollToIndex(0);\r\n this.tableCom.virtualBody?.checkViewportSize();\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setTableCheckedRow() {\r\n if (!this.multiple || XIsUndefined(this.temp)) return;\r\n const ids = (this.temp as Array<any>).map((x) => x.id);\r\n this.tableCheckedRow = {\r\n ...this.tableCheckedRow,\r\n $checked: ids\r\n };\r\n }\r\n\r\n setTreeChecked() {\r\n if (this.hasTreeMultiple) this.treeChecked = this.temp.map((x: any) => x.id);\r\n }\r\n\r\n sure() {\r\n this.value = this.temp;\r\n this.onChange(this.value);\r\n this.formControlValidator();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n closeModal() {\r\n this.cdr.detectChanges();\r\n }\r\n\r\n dialogCloseDone() {\r\n if (this.hasTree) {\r\n this.treeActivatedId = null;\r\n this.temp = null;\r\n }\r\n }\r\n\r\n tempClose(index: number, item: any) {\r\n this.temp.splice(index, 1);\r\n if (this.hasTable) {\r\n let it = this.tableCom?.tableData.find((x) => item.id === x.id);\r\n if (it) {\r\n it['$checked'] = false;\r\n this.tableCom?.bodyChange();\r\n }\r\n } else if (this.hasTree) {\r\n let it = this.treeCom?.treeData.find((x) => item.id === x.id);\r\n if (it) {\r\n it.checked = false;\r\n it.change && it.change();\r\n this.treeCom?.cdr.detectChanges();\r\n }\r\n }\r\n\r\n this.cdr.detectChanges();\r\n }\r\n\r\n tagClose(index: number = -1) {\r\n if (index >= 0) {\r\n this.value.splice(index, 1);\r\n } else {\r\n this.value = null;\r\n this.tableActivatedRow = null;\r\n if (!this.hasTreeTable && this.hasTree) {\r\n this.treeActivatedId = null;\r\n }\r\n }\r\n this.onChange(this.value);\r\n this.formControlValidator();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n tableActivatedRowChange(data: XTableRow) {\r\n if (this.multiple) {\r\n this.rowMultiple(data);\r\n } else {\r\n this.temp = data;\r\n this.dialogVisible = false;\r\n this.sure();\r\n }\r\n }\r\n\r\n rowMultiple(data: XTableRow) {\r\n if (typeof this.temp === 'undefined') this.temp = [];\r\n // data['$checked'] = !data['$checked'];\r\n if (data['$checked']) {\r\n this.temp = [...this.temp, data];\r\n } else {\r\n this.temp.splice(\r\n (this.temp as Array<any>).findIndex((x) => x.id === data.id),\r\n 1\r\n );\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeMultiple(node: XTreeNode) {\r\n if (typeof this.temp === 'undefined') this.temp = [];\r\n // node.$checked = !node.$checked;\r\n if (node.checked) {\r\n this.temp = [...this.temp, node];\r\n } else {\r\n this.temp.splice(\r\n (this.temp as Array<any>).findIndex((x) => x.id === node.id),\r\n 1\r\n );\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeActivatedClick(node: XTreeNode) {\r\n if (!this.hasTreeTable && this.hasTree) {\r\n if (this.multiple) {\r\n // this.treeMultiple(node);\r\n } else {\r\n this.temp = node;\r\n }\r\n } else if (this.hasTreeTable && this.treeTableConnect) {\r\n if (!this.tableQuery) this.tableQuery = {};\r\n if (!this.tableQuery.filter) this.tableQuery.filter = [];\r\n let field = this.tableQuery.filter.find((x) => x.field === this.treeTableConnect);\r\n if (field) {\r\n field.value = node.id;\r\n field.operation = '=';\r\n } else {\r\n this.tableQuery.filter = [\r\n ...this.tableQuery.filter,\r\n { field: this.treeTableConnect, value: node.id, operation: '=' }\r\n ];\r\n }\r\n this.tableCom.change(1);\r\n this.treeActivatedId = node.id;\r\n }\r\n this.treeActivatedChange.emit(node);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeCheckboxChange(node: XTreeNode) {\r\n this.treeMultiple(node);\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.ngAfterViewInit();\r\n this.treeCom?.setData();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n searchKeyDown(event: KeyboardEvent): void {\r\n if (event.key === 'Enter') {\r\n this.searchClick();\r\n } else if (event.key === 'Delete') {\r\n this.search.value = '';\r\n }\r\n }\r\n\r\n searchClick(): void {\r\n if (!this.hasSearch) {\r\n return;\r\n }\r\n\r\n this.tableQuery = this.tableQuery || [];\r\n this.tableQuery.filter = this.tableQuery.filter || [];\r\n const field = this.tableQuery.filter.find((x) => x.field === this.search.field);\r\n\r\n if (field) {\r\n field.value = this.search.value || '';\r\n } else {\r\n this.tableQuery.filter = [...this.tableQuery?.filter, this.search];\r\n }\r\n\r\n this.tableCom.change(1);\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '查询' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XFindComponent } from './find.component';\r\n\r\n@NgModule({\r\n exports: [XFindComponent],\r\n imports: [XFindComponent]\r\n})\r\nexport class XFindModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-find.mjs","sources":["../../../../lib/ng-nest/ui/find/find.property.ts","../../../../lib/ng-nest/ui/find/find.component.ts","../../../../lib/ng-nest/ui/find/find.component.html","../../../../lib/ng-nest/ui/find/find.module.ts","../../../../lib/ng-nest/ui/find/ng-nest-ui-find.ts"],"sourcesContent":["import {\r\n XInputBoolean,\r\n XBoolean,\r\n XDataConvert,\r\n XData,\r\n XInputNumber,\r\n XNumber,\r\n XSort,\r\n XQuery,\r\n XWithConfig,\r\n XFilter,\r\n XSize\r\n} from '@ng-nest/ui/core';\r\nimport { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { XTableColumn, XTableRow } from '@ng-nest/ui/table';\r\nimport { XTreeNode } from '@ng-nest/ui/tree';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * Find\r\n * @selector x-find\r\n * @decorator component\r\n */\r\nexport const XFindPrefix = 'x-find';\r\nconst X_CONFIG_NAME = 'find';\r\n\r\nexport interface XFindSearchOption extends XFilter {\r\n label?: string;\r\n button?: string;\r\n}\r\n\r\n/**\r\n * Find Property\r\n */\r\n@Component({ selector: `${XFindPrefix}-property`, template: '' })\r\nexport class XFindProperty extends XControlValueAccessor<any | any[]> implements XFindOption {\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 Multiple choice\r\n */\r\n @Input() @XInputBoolean() multiple: XBoolean = false;\r\n /**\r\n * @zh_CN 选中 label 名称字段\r\n * @en_US Check the label name field\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, 'label') columnLabel!: string;\r\n /**\r\n * @zh_CN 弹框标题\r\n * @en_US Bullet title\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '查找选择') dialogTitle!: string;\r\n /**\r\n * @zh_CN 弹框表格选择列头名称\r\n * @en_US Ball Form Select List Name\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '选择') dialogCheckboxLabel!: string;\r\n /**\r\n * @zh_CN 弹框表格选择列宽\r\n * @en_US Ball Form Select List width\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 60) @XInputNumber() dialogCheckboxWidth!: number;\r\n /**\r\n * @zh_CN 弹框选择数据为空的提示信息\r\n * @en_US Ball box selection data empty prompt information\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, '请选择数据') dialogEmptyContent!: string;\r\n /**\r\n * @zh_CN 弹框宽度\r\n * @en_US Bullet frame width\r\n */\r\n @Input() dialogWidth?: string;\r\n /**\r\n * @zh_CN 弹框高度\r\n * @en_US Height of bullet frame\r\n */\r\n @Input() dialogHeight?: string;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box display, hide\r\n */\r\n @Input() @XInputBoolean() dialogVisible: boolean = false;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box display, hide\r\n */\r\n @Output() dialogVisibleChange = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button centered\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME) @XInputBoolean() dialogButtonsCenter?: XBoolean;\r\n\r\n /**\r\n * @zh_CN 表格行数据\r\n * @en_US Table row data\r\n */\r\n @Input() tableData: XData<XTableRow> = [];\r\n /**\r\n * @zh_CN 表格页码\r\n * @en_US Table page number\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 1) tableIndex!: number;\r\n /**\r\n * @zh_CN 表每页数据条数\r\n * @en_US Number of data items per page\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 10) tableSize!: number;\r\n /**\r\n * @zh_CN 表格查询条件\r\n * @en_US Number of data items per page\r\n */\r\n @Input() tableQuery: XQuery = {};\r\n /**\r\n * @zh_CN 表格数据总条数\r\n * @en_US Total number of table data\r\n */\r\n @Input() tableTotal: number = 0;\r\n /**\r\n * @zh_CN 页码变化的事件\r\n * @en_US Page number change event\r\n */\r\n @Output() tableIndexChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 每页显示条数变化的事件\r\n * @en_US Show the number of events on each page\r\n */\r\n @Output() tableSizeChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 排序点击的事件\r\n * @en_US Sort click events\r\n */\r\n @Output() tableSortChange = new EventEmitter<XSort[]>();\r\n /**\r\n * @zh_CN 表格列参数\r\n * @en_US Table column parameters\r\n */\r\n @Input() tableColumns: XTableColumn[] = [];\r\n /**\r\n * @zh_CN 当前选中行数据\r\n * @en_US Currently selected row data\r\n */\r\n @Input() tableActivatedRow?: any;\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n @Output() tableRowEmit = new EventEmitter<any>();\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n @Input() tableCheckedRow: { [property: string]: any[] } = {};\r\n /**\r\n * @zh_CN 是否启用加载 loading\r\n * @en_US Whether to enable loading loading\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_CONFIG_NAME, false) @XInputBoolean() tableLoading!: XBoolean;\r\n /**\r\n * @zh_CN 表格开启虚拟滚动\r\n * @en_US Table opens virtual scrolling\r\n */\r\n @Input() @XWithConfig<boolean>(X_CONFIG_NAME, false) @XInputBoolean() tableVirtualScroll!: boolean;\r\n /**\r\n * @zh_CN 表格 body 数据高度\r\n * @en_US Table body data height\r\n */\r\n @Input() @XInputNumber() tableBodyHeight?: number;\r\n /**\r\n * @zh_CN 表格超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US The table exceeds the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() tableMinBufferPx: number = 100;\r\n /**\r\n * @zh_CN 表格渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US The pixels of the new data buffer for the table rendering, corresponding to the parameters in cdk scroll\r\n */\r\n @Input() tableMaxBufferPx: number = 200;\r\n /**\r\n * @zh_CN 表格自适应高度,table 高度等于屏幕高度减掉此处设置的数值\r\n * @en_US Table adaptive height, table height is equal to the screen height minus the value set here\r\n */\r\n @Input() @XInputNumber() tableAdaptionHeight?: XNumber;\r\n /**\r\n * @zh_CN 表格文档高度百分比,弹窗百分比高度用到\r\n * @en_US Table document height percentage, used for pop-up window percentage height\r\n */\r\n @Input() @XInputNumber() tableDocPercent: XNumber = 1;\r\n /**\r\n * @zh_CN 表格行高度,单位 px\r\n * @en_US Table row height, unit px\r\n */\r\n @Input() @XWithConfig<number>(X_CONFIG_NAME, 42) @XInputNumber() tableRowHeight!: number;\r\n /**\r\n * @zh_CN 树节点数据\r\n * @en_US Tree node data\r\n */\r\n @Input() @XDataConvert() treeData: XData<XTreeNode> = [];\r\n /**\r\n * @zh_CN 树当前点击选中的节点变化的事件\r\n * @en_US The event of the tree currently clicked on the selected node change\r\n */\r\n @Output() treeActivatedChange = new EventEmitter<XTreeNode>();\r\n /**\r\n * @zh_CN 树当前激活的节点 Id\r\n * @en_US Id of the currently active node of the tree\r\n */\r\n @Input() treeActivatedId: any;\r\n /**\r\n * @zh_CN 树默认展开的层级\r\n * @en_US The level of the tree expanded by default\r\n */\r\n @Input() @XWithConfig<XNumber>(X_CONFIG_NAME, 0) @XInputNumber() treeExpandedLevel!: XNumber;\r\n /**\r\n * @zh_CN 树 checkbox 选中的节点\r\n * @en_US Tree checkbox selected node\r\n */\r\n @Input() treeChecked: any[] = [];\r\n /**\r\n * @zh_CN 树显示多选框\r\n * @en_US Tree display checkbox\r\n */\r\n @Input() @XInputBoolean() treeCheckbox?: XBoolean;\r\n /**\r\n * @zh_CN 树和表格同时存在的时候,树节点 id 对应表格的属性,用来做表格数据过滤\r\n * @en_US When the tree and the table exist at the same time, the tree node id corresponds to the attribute of the table, which is used to filter the table data\r\n */\r\n @Input() treeTableConnect: any;\r\n /**\r\n * @zh_CN 数据查询过滤表单\r\n * @en_US form for data filter\r\n */\r\n @Input() search!: XFindSearchOption;\r\n}\r\n\r\n/**\r\n * Find Option\r\n * @undocument true\r\n */\r\nexport interface XFindOption extends XFormOption {\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: XBoolean;\r\n /**\r\n * @zh_CN 多选\r\n * @en_US Multiple select\r\n */\r\n multiple?: XBoolean;\r\n /**\r\n * @zh_CN 选中 label 名称字段\r\n * @en_US Check the label name field\r\n */\r\n columnLabel?: string;\r\n /**\r\n * @zh_CN 弹框标题\r\n * @en_US Bullet title\r\n */\r\n dialogTitle?: string;\r\n /**\r\n * @zh_CN 弹框表格选择框列头名称\r\n * @en_US Ball Form Select Box List Name\r\n */\r\n dialogCheckboxLabel?: string;\r\n /**\r\n * @zh_CN 弹框表格选择框列头宽度\r\n * @en_US Ball Form Select Box List width\r\n */\r\n dialogCheckboxWidth?: number;\r\n /**\r\n * @zh_CN 弹框选择数据为空的提示内容\r\n * @en_US Ball box selection data empty prompt information\r\n */\r\n dialogEmptyContent?: string;\r\n /**\r\n * @zh_CN 弹框宽度\r\n * @en_US Bullet frame width\r\n */\r\n dialogWidth?: string;\r\n /**\r\n * @zh_CN 弹框高度\r\n * @en_US Height of bullet frame\r\n */\r\n dialogHeight?: string;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box show, hide\r\n */\r\n dialogVisible?: boolean;\r\n /**\r\n * @zh_CN 弹框显示,隐藏\r\n * @en_US Bullet box show, hide\r\n */\r\n // dialogVisibleChange = new EventEmitter<boolean>();\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button center\r\n */\r\n dialogButtonsCenter?: XBoolean;\r\n\r\n /**\r\n * @zh_CN 表格行数据\r\n * @en_US Table row data\r\n */\r\n tableData?: XData<XTableRow>;\r\n /**\r\n * @zh_CN 表格页码\r\n * @en_US Table page number\r\n */\r\n tableIndex?: number;\r\n /**\r\n * @zh_CN 表每页数据条数\r\n * @en_US Number of data items per page\r\n */\r\n tableSize?: number;\r\n /**\r\n * @zh_CN 表格数据总条数\r\n * @en_US Total number of table data\r\n */\r\n tableTotal?: number;\r\n /**\r\n * @zh_CN 页码变化的事件\r\n * @en_US Page number change event\r\n */\r\n // tableIndexChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 每页显示条数变化的事件\r\n * @en_US Show the number of events on each page\r\n */\r\n // tableSizeChange = new EventEmitter<number>();\r\n /**\r\n * @zh_CN 排序点击的事件\r\n * @en_US Sort click events\r\n */\r\n // tableSortChange = new EventEmitter<XSort[]>();\r\n /**\r\n * @zh_CN 表格列参数\r\n * @en_US Table column parameters\r\n */\r\n tableColumns?: XTableColumn[];\r\n /**\r\n * @zh_CN 当前选中行数据\r\n * @en_US Currently selected row data\r\n */\r\n tableActivatedRow?: any;\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n // tableRowEmit = new EventEmitter<any>();\r\n /**\r\n * @zh_CN 表格行点击事件\r\n * @en_US Table row click event\r\n */\r\n tableCheckedRow?: { [property: string]: any[] };\r\n /**\r\n * @zh_CN 是否启用加载 loading\r\n * @en_US Whether to enable loading\r\n */\r\n tableLoading?: XBoolean;\r\n /**\r\n * @zh_CN 表格开启虚拟滚动\r\n * @en_US Table opens virtual scrolling\r\n */\r\n tableVirtualScroll?: boolean;\r\n /**\r\n * @zh_CN 表格 body 数据高度\r\n * @en_US Table body data height\r\n */\r\n tableBodyHeight?: number;\r\n /**\r\n * @zh_CN 表格超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数\r\n * @en_US The table exceeds the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll\r\n */\r\n tableMinBufferPx?: number;\r\n /**\r\n * @zh_CN 表格渲染新数据缓冲区的像素,对应 cdk scroll 中的参数\r\n * @en_US The pixels of the new data buffer for the table rendering, corresponding to the parameters in cdk scroll\r\n */\r\n tableMaxBufferPx?: number;\r\n /**\r\n * @zh_CN 表格自适应高度,table 高度等于屏幕高度减掉此处设置的数值\r\n * @en_US Table adaptive height, table height is equal to the screen height minus the value set here\r\n */\r\n tableAdaptionHeight?: XNumber;\r\n /**\r\n * @zh_CN 表格文档高度百分比,弹窗百分比高度用到\r\n * @en_US Table document height percentage, used for pop-up window percentage height\r\n */\r\n tableDocPercent?: XNumber;\r\n /**\r\n * @zh_CN 表格行高度,单位 px\r\n * @en_US Table row height, unit px\r\n */\r\n tableRowHeight?: XNumber;\r\n\r\n /**\r\n * @zh_CN 树节点数据\r\n * @en_US Tree node data\r\n */\r\n treeData?: XData<XTreeNode>;\r\n /**\r\n * @zh_CN 树当前点击选中的节点变化的事件\r\n * @en_US The event of the tree currently clicked on the selected node change\r\n */\r\n // treeActivatedChange = new EventEmitter<XTreeNode>();\r\n /**\r\n * @zh_CN 树当前激活的节点 Id\r\n * @en_US Id of the currently active node of the tree\r\n */\r\n treeActivatedId?: any;\r\n /**\r\n * @zh_CN 树默认展开的层级\r\n * @en_US The level of the tree expanded by default\r\n */\r\n treeExpandedLevel?: XNumber;\r\n /**\r\n * @zh_CN 树 checkbox 选中的节点\r\n * @en_US Tree checkbox selected node\r\n */\r\n treeChecked?: any[];\r\n /**\r\n * @zh_CN 树显示多选框\r\n * @en_US Tree display checkbox\r\n */\r\n treeCheckbox?: XBoolean;\r\n /**\r\n * @zh_CN 树和表格同时存在的时候,树节点 id 对应表格的属性,用来做表格数据过滤\r\n * @en_US When the tree and the table exist at the same time, the tree node id corresponds to the attribute of the table, which is used to filter the table data\r\n */\r\n treeTableConnect?: any;\r\n\r\n /**\r\n * @zh_CN 数据查询过滤表单\r\n * @en_US form for data filter\r\n */\r\n search?: XFindSearchOption;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewChild,\r\n SimpleChanges,\r\n inject,\r\n OnChanges,\r\n AfterViewInit,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XFindProperty, XFindPrefix } from './find.property';\r\nimport {\r\n XClearClass,\r\n XResize,\r\n XIsUndefined,\r\n XIsChange,\r\n XConfigService,\r\n XIsEmpty,\r\n XResizeObserver\r\n} from '@ng-nest/ui/core';\r\nimport { XTableComponent, XTableRow } from '@ng-nest/ui/table';\r\nimport { XDialogComponent } from '@ng-nest/ui/dialog';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { debounceTime, takeUntil } from 'rxjs/operators';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { XTreeNode, XTreeComponent } from '@ng-nest/ui/tree';\r\nimport { XValueAccessor, XControlValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XTagComponent } from '@ng-nest/ui/tag';\r\nimport { XEmptyComponent } from '@ng-nest/ui/empty';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { NgClass } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XFindPrefix}`,\r\n standalone: true,\r\n imports: [\r\n NgClass,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XTagComponent,\r\n XButtonComponent,\r\n XDialogComponent,\r\n XTableComponent,\r\n XTreeComponent,\r\n XIconComponent,\r\n XEmptyComponent,\r\n XInputComponent,\r\n XControlValueAccessor\r\n ],\r\n templateUrl: './find.component.html',\r\n styleUrls: ['./find.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XFindComponent)]\r\n})\r\nexport class XFindComponent extends XFindProperty implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n @ViewChild('find', { static: true }) find!: ElementRef<HTMLElement>;\r\n @ViewChild('dialogCom') dialogCom!: XDialogComponent;\r\n @ViewChild('tableCom') tableCom!: XTableComponent;\r\n @ViewChild('treeCom') treeCom!: XTreeComponent;\r\n @ViewChild('buttonCom') buttonCom!: XButtonComponent;\r\n\r\n private _tableRef!: ElementRef<HTMLElement>;\r\n public get tableRef(): ElementRef {\r\n return this._tableRef;\r\n }\r\n @ViewChild('tableRef')\r\n public set tableRef(value: ElementRef) {\r\n this._tableRef = value;\r\n if (value && this.multiple) {\r\n this.setSubscribe();\r\n }\r\n }\r\n\r\n private _treeRef!: ElementRef<HTMLElement>;\r\n public get treeRef(): ElementRef {\r\n return this._treeRef;\r\n }\r\n @ViewChild('treeRef')\r\n public set treeRef(value: ElementRef) {\r\n this._treeRef = value;\r\n if (value && this.multiple) {\r\n this.setSubscribe();\r\n }\r\n }\r\n\r\n get getEmpty() {\r\n return !this.temp || this.temp.length === 0;\r\n }\r\n\r\n get hasTable() {\r\n return this.tableColumns?.length > 0;\r\n }\r\n\r\n get hasTree() {\r\n return (\r\n (Array.isArray(this.treeData) && this.treeData.length > 0) ||\r\n this.treeData instanceof Function ||\r\n this.treeData instanceof Observable\r\n );\r\n }\r\n\r\n get hasTreeTable() {\r\n return this.hasTable && this.hasTree;\r\n }\r\n\r\n get hasTreeMultiple() {\r\n return this.hasTree && !this.hasTreeTable && this.multiple;\r\n }\r\n\r\n get hasSearch() {\r\n return this.search && this.hasTable;\r\n }\r\n\r\n temp: any;\r\n height = 100;\r\n\r\n private _unSubject = new Subject<void>();\r\n private _resizeObserver!: XResizeObserver;\r\n\r\n override writeValue(value: any) {\r\n this.value = value;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n override cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnChanges(simples: SimpleChanges) {\r\n const { tableData, labelAlign, size } = simples;\r\n XIsChange(tableData) && this.setTableCheckedRow();\r\n XIsChange(labelAlign, size) && this.setClassMap();\r\n }\r\n\r\n ngOnInit() {\r\n this.setFlex(this.find.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setClassMap();\r\n this.setMultiple();\r\n this.setWidth();\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.value) this.cdr.detectChanges();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._resizeObserver?.disconnect();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap, this.classMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n this.classMap[`x-find-${this.size}`] = !XIsEmpty(this.size);\r\n }\r\n\r\n setSubscribe() {\r\n let resizeRef: Element[] = [];\r\n if (this.hasTable) {\r\n resizeRef = [this.tableRef?.nativeElement];\r\n }\r\n if (this.hasTree && !this.hasTreeTable) {\r\n resizeRef.push(this.treeRef?.nativeElement);\r\n }\r\n this._unSubject.next();\r\n XResize(...resizeRef)\r\n .pipe(debounceTime(30), takeUntil(this._unSubject))\r\n .subscribe((x) => {\r\n this._resizeObserver = x.resizeObserver;\r\n if (this.tableRef) {\r\n this.height = this.tableRef.nativeElement.clientHeight;\r\n } else if (this.hasTree) {\r\n this.height = this.treeRef?.nativeElement.clientHeight;\r\n }\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n setMultiple() {\r\n if (!this.multiple) return;\r\n if (this.hasTable) {\r\n if (!this.tableColumns.find((x) => x.rowChecked)) {\r\n this.tableColumns = [\r\n {\r\n id: '$checked',\r\n label: this.dialogCheckboxLabel,\r\n rowChecked: true,\r\n type: 'checkbox',\r\n width: this.dialogCheckboxWidth\r\n },\r\n ...this.tableColumns\r\n ];\r\n }\r\n }\r\n }\r\n\r\n setWidth() {\r\n if (XIsUndefined(this.dialogWidth)) {\r\n if ((this.hasTable && this.hasTree) || this.hasTable) {\r\n this.dialogWidth = '50rem';\r\n } else if (this.hasTree && this.multiple) {\r\n this.dialogWidth = '30rem';\r\n } else if (this.hasTree) {\r\n this.dialogWidth = '20rem';\r\n }\r\n }\r\n }\r\n\r\n showModal() {\r\n if (this.disabled) return;\r\n this.dialogVisible = true;\r\n this.dialogVisibleChange.emit(this.dialogVisible);\r\n if (this.value) {\r\n if (this.multiple) {\r\n this.temp = (this.value as Array<any>).map((x) => Object.assign({}, x));\r\n this.setTableCheckedRow();\r\n this.setTreeChecked();\r\n } else {\r\n this.tableActivatedRow = this.value;\r\n if (!this.hasTreeTable && this.hasTree) {\r\n this.treeActivatedId = this.value.id;\r\n }\r\n }\r\n } else {\r\n this.temp = this.multiple ? [] : null;\r\n }\r\n if (this.hasTable) {\r\n this.tableCom.virtualBody?.scrollToIndex(0);\r\n this.tableCom.virtualBody?.checkViewportSize();\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setTableCheckedRow() {\r\n if (!this.multiple || XIsUndefined(this.temp)) return;\r\n const ids = (this.temp as Array<any>).map((x) => x.id);\r\n this.tableCheckedRow = {\r\n ...this.tableCheckedRow,\r\n $checked: ids\r\n };\r\n }\r\n\r\n setTreeChecked() {\r\n if (this.hasTreeMultiple) this.treeChecked = this.temp.map((x: any) => x.id);\r\n }\r\n\r\n sure() {\r\n this.value = this.temp;\r\n this.onChange(this.value);\r\n this.formControlValidator();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n closeModal() {\r\n this.cdr.detectChanges();\r\n }\r\n\r\n dialogCloseDone() {\r\n if (this.hasTree) {\r\n this.treeActivatedId = null;\r\n this.temp = null;\r\n }\r\n }\r\n\r\n tempClose(index: number, item: any) {\r\n this.temp.splice(index, 1);\r\n if (this.hasTable) {\r\n let it = this.tableCom?.tableData.find((x) => item.id === x.id);\r\n if (it) {\r\n it['$checked'] = false;\r\n this.tableCom?.bodyChange();\r\n }\r\n } else if (this.hasTree) {\r\n let it = this.treeCom?.treeData.find((x) => item.id === x.id);\r\n if (it) {\r\n it.checked = false;\r\n it.change && it.change();\r\n this.treeCom?.cdr.detectChanges();\r\n }\r\n }\r\n\r\n this.cdr.detectChanges();\r\n }\r\n\r\n tagClose(index: number = -1) {\r\n if (index >= 0) {\r\n this.value.splice(index, 1);\r\n } else {\r\n this.value = null;\r\n this.tableActivatedRow = null;\r\n if (!this.hasTreeTable && this.hasTree) {\r\n this.treeActivatedId = null;\r\n }\r\n }\r\n this.onChange(this.value);\r\n this.formControlValidator();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n tableActivatedRowChange(data: XTableRow) {\r\n if (this.multiple) {\r\n this.rowMultiple(data);\r\n } else {\r\n this.temp = data;\r\n this.dialogVisible = false;\r\n this.sure();\r\n }\r\n }\r\n\r\n rowMultiple(data: XTableRow) {\r\n if (typeof this.temp === 'undefined') this.temp = [];\r\n // data['$checked'] = !data['$checked'];\r\n if (data['$checked']) {\r\n this.temp = [...this.temp, data];\r\n } else {\r\n this.temp.splice(\r\n (this.temp as Array<any>).findIndex((x) => x.id === data.id),\r\n 1\r\n );\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeMultiple(node: XTreeNode) {\r\n if (typeof this.temp === 'undefined') this.temp = [];\r\n // node.$checked = !node.$checked;\r\n if (node.checked) {\r\n this.temp = [...this.temp, node];\r\n } else {\r\n this.temp.splice(\r\n (this.temp as Array<any>).findIndex((x) => x.id === node.id),\r\n 1\r\n );\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeActivatedClick(node: XTreeNode) {\r\n if (!this.hasTreeTable && this.hasTree) {\r\n if (this.multiple) {\r\n // this.treeMultiple(node);\r\n } else {\r\n this.temp = node;\r\n }\r\n } else if (this.hasTreeTable && this.treeTableConnect) {\r\n if (!this.tableQuery) this.tableQuery = {};\r\n if (!this.tableQuery.filter) this.tableQuery.filter = [];\r\n let field = this.tableQuery.filter.find((x) => x.field === this.treeTableConnect);\r\n if (field) {\r\n field.value = node.id;\r\n field.operation = '=';\r\n } else {\r\n this.tableQuery.filter = [\r\n ...this.tableQuery.filter,\r\n { field: this.treeTableConnect, value: node.id, operation: '=' }\r\n ];\r\n }\r\n this.tableCom.change(1);\r\n this.treeActivatedId = node.id;\r\n }\r\n this.treeActivatedChange.emit(node);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n treeCheckboxChange(node: XTreeNode) {\r\n this.treeMultiple(node);\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.ngAfterViewInit();\r\n this.treeCom?.setData();\r\n this.cdr.detectChanges();\r\n }\r\n\r\n searchKeyDown(event: KeyboardEvent): void {\r\n if (event.key === 'Enter') {\r\n this.searchClick();\r\n } else if (event.key === 'Delete') {\r\n this.search.value = '';\r\n }\r\n }\r\n\r\n searchClick(): void {\r\n if (!this.hasSearch) {\r\n return;\r\n }\r\n\r\n this.tableQuery = this.tableQuery || [];\r\n this.tableQuery.filter = this.tableQuery.filter || [];\r\n const field = this.tableQuery.filter.find((x) => x.field === this.search.field);\r\n\r\n if (field) {\r\n field.value = this.search.value || '';\r\n } else {\r\n this.tableQuery.filter = [...this.tableQuery?.filter, this.search];\r\n }\r\n\r\n this.tableCom.change(1);\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<div\r\n #find\r\n class=\"x-find\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-checked]=\"value\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [ngClass]=\"classMap\"\r\n>\r\n @if (label) {\r\n <label [class.x-find-label-required]=\"required\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n }\r\n <div class=\"x-find-row\">\r\n <x-button\r\n #buttonCom\r\n icon=\"fto-search\"\r\n [onlyIcon]=\"!bordered\"\r\n [size]=\"size\"\r\n [disabled]=\"disabled\"\r\n attrType=\"button\"\r\n (click)=\"showModal()\"\r\n ></x-button>\r\n <div class=\"x-find-tags\">\r\n @if (multiple) {\r\n @for (item of value; track item.id; let i = $index) {\r\n <x-tag closable [size]=\"size\" [bordered]=\"bordered\" [disabled]=\"disabled\" (close)=\"tagClose(i)\">{{\r\n item[columnLabel]\r\n }}</x-tag>\r\n }\r\n } @else if (value) {\r\n <x-tag closable [disabled]=\"disabled\" [bordered]=\"bordered\" [size]=\"size\" (close)=\"tagClose()\">{{\r\n value[columnLabel]\r\n }}</x-tag>\r\n }\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<x-dialog\r\n #dialogCom\r\n [title]=\"dialogTitle\"\r\n [width]=\"dialogWidth\"\r\n [height]=\"dialogHeight\"\r\n [buttonsCenter]=\"dialogButtonsCenter\"\r\n [className]=\"'x-find-dialog-container'\"\r\n [(visible)]=\"dialogVisible\"\r\n (visibleChange)=\"dialogVisibleChange.emit($event)\"\r\n (closeDone)=\"dialogCloseDone()\"\r\n (cancel)=\"closeModal()\"\r\n (close)=\"closeModal()\"\r\n (confirm)=\"sure()\"\r\n>\r\n <div class=\"x-find-dialog\" [class.x-find-dialog-tree-table]=\"hasTable && hasTree\">\r\n @if (hasTree) {\r\n <div class=\"x-find-dialog-tree\" #treeRef [style.height.px]=\"hasTreeTable && multiple && height\">\r\n <x-tree\r\n #treeCom\r\n [data]=\"treeData\"\r\n nodeHeight=\"1.8\"\r\n [(manual)]=\"dialogVisible\"\r\n [activatedId]=\"treeActivatedId\"\r\n [expandedLevel]=\"treeExpandedLevel\"\r\n (activatedChange)=\"treeActivatedClick($event)\"\r\n [checkbox]=\"hasTreeMultiple\"\r\n [checked]=\"treeChecked\"\r\n (checkboxChange)=\"treeCheckboxChange($event)\"\r\n [levelCheck]=\"!hasTreeMultiple\"\r\n ></x-tree>\r\n </div>\r\n }\r\n @if (hasTable) {\r\n <div class=\"x-find-dialog-table\" #tableRef>\r\n @if (hasSearch) {\r\n <div class=\"x-find-search\">\r\n <x-input\r\n [label]=\"search.label\"\r\n direction=\"row\"\r\n (xKeydown)=\"searchKeyDown($event)\"\r\n [(ngModel)]=\"search.value\"\r\n ></x-input>\r\n <x-button type=\"primary\" plain (click)=\"searchClick()\">{{ search.button || '查询' }}</x-button>\r\n </div>\r\n }\r\n <x-table\r\n #tableCom\r\n [data]=\"tableData\"\r\n [columns]=\"tableColumns\"\r\n [(manual)]=\"dialogVisible\"\r\n [(index)]=\"tableIndex\"\r\n [(size)]=\"tableSize\"\r\n [query]=\"tableQuery\"\r\n [total]=\"tableTotal\"\r\n [allowSelectRow]=\"!multiple\"\r\n [allowCheckRow]=\"multiple\"\r\n [checkedRow]=\"tableCheckedRow\"\r\n [loading]=\"tableLoading\"\r\n (indexChange)=\"tableIndexChange.emit($event)\"\r\n (sortChange)=\"tableSortChange.emit($event)\"\r\n [(activatedRow)]=\"tableActivatedRow\"\r\n (activatedRowChange)=\"tableActivatedRowChange($event)\"\r\n [rowHeight]=\"tableRowHeight\"\r\n [bodyHeight]=\"tableBodyHeight\"\r\n [virtualScroll]=\"tableVirtualScroll\"\r\n [minBufferPx]=\"tableMinBufferPx\"\r\n [maxBufferPx]=\"tableMaxBufferPx\"\r\n [adaptionHeight]=\"tableAdaptionHeight\"\r\n [docPercent]=\"tableDocPercent\"\r\n ></x-table>\r\n </div>\r\n }\r\n @if (multiple) {\r\n <div class=\"x-find-dialog-checked\" [class.x-find-empty]=\"getEmpty\" [style.height.px]=\"height\">\r\n @if (getEmpty) {\r\n <x-empty [content]=\"dialogEmptyContent\"></x-empty>\r\n }\r\n <div class=\"x-find-dialog-tags\">\r\n @for (item of temp; track item.id; let i = $index) {\r\n <x-tag closable (close)=\"tempClose(i, item)\">\r\n <span>{{ item[columnLabel] }}</span>\r\n </x-tag>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</x-dialog>\r\n\r\n<ng-template #treeLabelTpl let-node=\"$node\">\r\n <div class=\"x-find-dialog-tree-node\">\r\n <span>{{ node.label }} </span>\r\n @if (node.$checked) {\r\n <x-icon type=\"fto-check\"></x-icon>\r\n }\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XFindComponent } from './find.component';\r\n\r\n@NgModule({\r\n exports: [XFindComponent],\r\n imports: [XFindComponent]\r\n})\r\nexport class XFindModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}