@ng-nest/ui 17.0.2 → 17.0.3

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 (486) hide show
  1. package/calendar/calendar.component.d.ts +0 -1
  2. package/carousel/carousel.component.d.ts +0 -1
  3. package/checkbox/checkbox.component.d.ts +0 -1
  4. package/color/color.component.d.ts +0 -1
  5. package/crumb/crumb.component.d.ts +0 -1
  6. package/date-picker/picker-date.component.d.ts +0 -1
  7. package/esm2022/affix/affix.component.mjs +3 -3
  8. package/esm2022/affix/affix.module.mjs +4 -4
  9. package/esm2022/affix/affix.property.mjs +3 -3
  10. package/esm2022/alert/alert.component.mjs +7 -15
  11. package/esm2022/alert/alert.module.mjs +4 -4
  12. package/esm2022/alert/alert.property.mjs +3 -3
  13. package/esm2022/anchor/anchor-inner.component.mjs +3 -3
  14. package/esm2022/anchor/anchor.component.mjs +7 -10
  15. package/esm2022/anchor/anchor.module.mjs +4 -4
  16. package/esm2022/anchor/anchor.property.mjs +6 -6
  17. package/esm2022/api/api.component.mjs +3 -3
  18. package/esm2022/api/api.module.mjs +4 -4
  19. package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
  20. package/esm2022/auto-complete/auto-complete.component.mjs +3 -3
  21. package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
  22. package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
  23. package/esm2022/avatar/avatar-group.component.mjs +3 -3
  24. package/esm2022/avatar/avatar.component.mjs +6 -7
  25. package/esm2022/avatar/avatar.module.mjs +4 -4
  26. package/esm2022/avatar/avatar.property.mjs +6 -6
  27. package/esm2022/back-top/back-top.component.mjs +7 -9
  28. package/esm2022/back-top/back-top.module.mjs +4 -4
  29. package/esm2022/back-top/back-top.property.mjs +3 -3
  30. package/esm2022/badge/badge.component.mjs +6 -7
  31. package/esm2022/badge/badge.module.mjs +5 -5
  32. package/esm2022/badge/badge.property.mjs +3 -3
  33. package/esm2022/base-form/base-form.component.mjs +3 -3
  34. package/esm2022/base-form/base-form.module.mjs +4 -4
  35. package/esm2022/base-form/base-form.property.mjs +3 -3
  36. package/esm2022/border/border.component.mjs +3 -3
  37. package/esm2022/border/border.module.mjs +4 -4
  38. package/esm2022/button/button.component.mjs +6 -7
  39. package/esm2022/button/button.module.mjs +5 -5
  40. package/esm2022/button/button.property.mjs +6 -6
  41. package/esm2022/button/buttons.component.mjs +5 -6
  42. package/esm2022/calendar/calendar.component.mjs +10 -12
  43. package/esm2022/calendar/calendar.module.mjs +4 -4
  44. package/esm2022/calendar/calendar.property.mjs +3 -3
  45. package/esm2022/card/card.component.mjs +6 -7
  46. package/esm2022/card/card.module.mjs +4 -4
  47. package/esm2022/card/card.property.mjs +3 -3
  48. package/esm2022/carousel/carousel-panel.component.mjs +5 -7
  49. package/esm2022/carousel/carousel.component.mjs +6 -10
  50. package/esm2022/carousel/carousel.module.mjs +5 -5
  51. package/esm2022/carousel/carousel.property.mjs +7 -7
  52. package/esm2022/cascade/cascade-portal.component.mjs +6 -8
  53. package/esm2022/cascade/cascade.component.mjs +7 -9
  54. package/esm2022/cascade/cascade.module.mjs +4 -4
  55. package/esm2022/cascade/cascade.property.mjs +3 -3
  56. package/esm2022/checkbox/checkbox.component.mjs +7 -11
  57. package/esm2022/checkbox/checkbox.module.mjs +4 -4
  58. package/esm2022/checkbox/checkbox.property.mjs +3 -3
  59. package/esm2022/collapse/collapse-panel.component.mjs +5 -7
  60. package/esm2022/collapse/collapse.component.mjs +5 -6
  61. package/esm2022/collapse/collapse.module.mjs +5 -5
  62. package/esm2022/collapse/collapse.property.mjs +6 -6
  63. package/esm2022/color/color.component.mjs +6 -10
  64. package/esm2022/color/color.module.mjs +5 -5
  65. package/esm2022/color/color.property.mjs +3 -3
  66. package/esm2022/color-picker/color-picker-portal.component.mjs +6 -14
  67. package/esm2022/color-picker/color-picker.component.mjs +6 -6
  68. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  69. package/esm2022/color-picker/color-picker.property.mjs +3 -3
  70. package/esm2022/comment/comment-reply.component.mjs +5 -6
  71. package/esm2022/comment/comment.component.mjs +5 -8
  72. package/esm2022/comment/comment.module.mjs +4 -4
  73. package/esm2022/comment/comment.property.mjs +6 -6
  74. package/esm2022/container/aside.component.mjs +5 -6
  75. package/esm2022/container/container.component.mjs +5 -6
  76. package/esm2022/container/container.module.mjs +5 -5
  77. package/esm2022/container/container.property.mjs +12 -12
  78. package/esm2022/container/footer.component.mjs +5 -6
  79. package/esm2022/container/header.component.mjs +5 -6
  80. package/esm2022/container/main.component.mjs +5 -6
  81. package/esm2022/core/config/config.service.mjs +3 -3
  82. package/esm2022/core/services/http.service.mjs +3 -3
  83. package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
  84. package/esm2022/core/services/storage.service.mjs +3 -3
  85. package/esm2022/core/theme/theme.service.mjs +3 -3
  86. package/esm2022/crumb/crumb.component.mjs +6 -10
  87. package/esm2022/crumb/crumb.module.mjs +4 -4
  88. package/esm2022/crumb/crumb.property.mjs +3 -3
  89. package/esm2022/date-picker/date-picker-portal.component.mjs +9 -9
  90. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  91. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  92. package/esm2022/date-picker/date-picker.property.mjs +18 -18
  93. package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
  94. package/esm2022/date-picker/date-range-portal.component.mjs +8 -7
  95. package/esm2022/date-picker/date-range.component.mjs +8 -11
  96. package/esm2022/date-picker/picker-date.component.mjs +6 -10
  97. package/esm2022/date-picker/picker-month.component.mjs +6 -7
  98. package/esm2022/date-picker/picker-quarter.component.mjs +6 -7
  99. package/esm2022/date-picker/picker-year.component.mjs +6 -7
  100. package/esm2022/description/description-item.component.mjs +6 -7
  101. package/esm2022/description/description.component.mjs +6 -7
  102. package/esm2022/description/description.module.mjs +5 -5
  103. package/esm2022/description/description.property.mjs +6 -6
  104. package/esm2022/dialog/dialog-container.component.mjs +6 -7
  105. package/esm2022/dialog/dialog-portal.component.mjs +7 -12
  106. package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
  107. package/esm2022/dialog/dialog.component.mjs +6 -7
  108. package/esm2022/dialog/dialog.module.mjs +5 -6
  109. package/esm2022/dialog/dialog.property.mjs +6 -6
  110. package/esm2022/dialog/dialog.service.mjs +3 -3
  111. package/esm2022/doc/doc.component.mjs +5 -6
  112. package/esm2022/doc/doc.module.mjs +5 -5
  113. package/esm2022/drag/drag.directive.mjs +3 -3
  114. package/esm2022/drag/drag.module.mjs +4 -4
  115. package/esm2022/drag/drag.property.mjs +3 -3
  116. package/esm2022/drawer/drawer-container.component.mjs +6 -7
  117. package/esm2022/drawer/drawer-portal.component.mjs +5 -6
  118. package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
  119. package/esm2022/drawer/drawer.component.mjs +6 -7
  120. package/esm2022/drawer/drawer.module.mjs +5 -6
  121. package/esm2022/drawer/drawer.property.mjs +6 -6
  122. package/esm2022/drawer/drawer.service.mjs +3 -3
  123. package/esm2022/dropdown/dropdown-portal.component.mjs +5 -6
  124. package/esm2022/dropdown/dropdown.component.mjs +9 -20
  125. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  126. package/esm2022/dropdown/dropdown.property.mjs +3 -3
  127. package/esm2022/empty/empty.component.mjs +5 -7
  128. package/esm2022/empty/empty.module.mjs +4 -4
  129. package/esm2022/empty/empty.property.mjs +3 -3
  130. package/esm2022/examples/examples.component.mjs +5 -6
  131. package/esm2022/examples/examples.module.mjs +5 -5
  132. package/esm2022/find/find.component.mjs +8 -12
  133. package/esm2022/find/find.module.mjs +4 -4
  134. package/esm2022/find/find.property.mjs +3 -3
  135. package/esm2022/form/control.component.mjs +7 -10
  136. package/esm2022/form/form.component.mjs +9 -12
  137. package/esm2022/form/form.module.mjs +4 -4
  138. package/esm2022/form/form.property.mjs +6 -6
  139. package/esm2022/highlight/highlight.component.mjs +6 -7
  140. package/esm2022/highlight/highlight.module.mjs +4 -4
  141. package/esm2022/highlight/highlight.property.mjs +3 -3
  142. package/esm2022/i18n/i18n.directive.mjs +3 -3
  143. package/esm2022/i18n/i18n.module.mjs +4 -4
  144. package/esm2022/i18n/i18n.pipe.mjs +3 -3
  145. package/esm2022/i18n/i18n.service.mjs +3 -3
  146. package/esm2022/icon/icon.component.mjs +3 -3
  147. package/esm2022/icon/icon.module.mjs +4 -4
  148. package/esm2022/icon/icon.property.mjs +3 -3
  149. package/esm2022/icon/icon.service.mjs +3 -3
  150. package/esm2022/image/image-group.component.mjs +12 -7
  151. package/esm2022/image/image-preview.component.mjs +7 -8
  152. package/esm2022/image/image.component.mjs +6 -7
  153. package/esm2022/image/image.module.mjs +5 -5
  154. package/esm2022/image/image.property.mjs +6 -6
  155. package/esm2022/inner/inner.component.mjs +5 -6
  156. package/esm2022/inner/inner.module.mjs +5 -5
  157. package/esm2022/inner/inner.property.mjs +3 -3
  158. package/esm2022/input/input-group.component.mjs +5 -6
  159. package/esm2022/input/input.component.mjs +7 -8
  160. package/esm2022/input/input.module.mjs +5 -5
  161. package/esm2022/input/input.property.mjs +6 -6
  162. package/esm2022/input-number/input-number.component.mjs +7 -8
  163. package/esm2022/input-number/input-number.module.mjs +4 -4
  164. package/esm2022/input-number/input-number.property.mjs +3 -3
  165. package/esm2022/keyword/keyword.directive.mjs +3 -3
  166. package/esm2022/keyword/keyword.module.mjs +4 -4
  167. package/esm2022/keyword/keyword.property.mjs +3 -3
  168. package/esm2022/layout/col.component.mjs +3 -3
  169. package/esm2022/layout/layout.module.mjs +4 -4
  170. package/esm2022/layout/layout.property.mjs +6 -6
  171. package/esm2022/layout/row.component.mjs +3 -3
  172. package/esm2022/link/link.component.mjs +6 -7
  173. package/esm2022/link/link.module.mjs +4 -4
  174. package/esm2022/link/link.property.mjs +3 -3
  175. package/esm2022/list/list-drop-group.directive.mjs +3 -3
  176. package/esm2022/list/list-option.component.mjs +6 -7
  177. package/esm2022/list/list.component.mjs +9 -12
  178. package/esm2022/list/list.module.mjs +4 -4
  179. package/esm2022/list/list.property.mjs +6 -6
  180. package/esm2022/loading/loading.component.mjs +6 -7
  181. package/esm2022/loading/loading.module.mjs +4 -4
  182. package/esm2022/loading/loading.property.mjs +3 -3
  183. package/esm2022/menu/menu-node.component.mjs +7 -8
  184. package/esm2022/menu/menu.component.mjs +6 -10
  185. package/esm2022/menu/menu.module.mjs +4 -4
  186. package/esm2022/menu/menu.property.mjs +6 -6
  187. package/esm2022/message/message.component.mjs +5 -10
  188. package/esm2022/message/message.module.mjs +4 -4
  189. package/esm2022/message/message.service.mjs +3 -3
  190. package/esm2022/message-box/message-box.component.mjs +6 -9
  191. package/esm2022/message-box/message-box.module.mjs +4 -4
  192. package/esm2022/message-box/message-box.service.mjs +3 -3
  193. package/esm2022/notification/notification.component.mjs +5 -10
  194. package/esm2022/notification/notification.module.mjs +4 -4
  195. package/esm2022/notification/notification.service.mjs +3 -3
  196. package/esm2022/outlet/outlet.directive.mjs +3 -3
  197. package/esm2022/outlet/outlet.module.mjs +4 -4
  198. package/esm2022/page-header/page-header.component.mjs +5 -7
  199. package/esm2022/page-header/page-header.module.mjs +4 -4
  200. package/esm2022/page-header/page-header.property.mjs +3 -3
  201. package/esm2022/pagination/pagination.component.mjs +6 -12
  202. package/esm2022/pagination/pagination.module.mjs +4 -4
  203. package/esm2022/pagination/pagination.property.mjs +3 -3
  204. package/esm2022/pattern/pattern.component.mjs +5 -6
  205. package/esm2022/pattern/pattern.module.mjs +5 -5
  206. package/esm2022/popconfirm/popconfirm.component.mjs +5 -7
  207. package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
  208. package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
  209. package/esm2022/popover/popover-portal.component.mjs +6 -7
  210. package/esm2022/popover/popover.directive.mjs +3 -3
  211. package/esm2022/popover/popover.module.mjs +4 -4
  212. package/esm2022/popover/popover.property.mjs +3 -3
  213. package/esm2022/portal/portal.module.mjs +4 -4
  214. package/esm2022/portal/portal.service.mjs +3 -3
  215. package/esm2022/progress/progress.component.mjs +6 -7
  216. package/esm2022/progress/progress.module.mjs +4 -4
  217. package/esm2022/progress/progress.property.mjs +3 -3
  218. package/esm2022/radio/radio.component.mjs +6 -10
  219. package/esm2022/radio/radio.module.mjs +4 -4
  220. package/esm2022/radio/radio.property.mjs +3 -3
  221. package/esm2022/rate/rate.component.mjs +6 -7
  222. package/esm2022/rate/rate.module.mjs +4 -4
  223. package/esm2022/rate/rate.property.mjs +3 -3
  224. package/esm2022/resizable/resizable.directive.mjs +3 -3
  225. package/esm2022/resizable/resizable.module.mjs +4 -4
  226. package/esm2022/resizable/resizable.property.mjs +3 -3
  227. package/esm2022/result/result.component.mjs +6 -7
  228. package/esm2022/result/result.module.mjs +4 -4
  229. package/esm2022/result/result.property.mjs +3 -3
  230. package/esm2022/ripple/ripple.directive.mjs +3 -3
  231. package/esm2022/ripple/ripple.module.mjs +4 -4
  232. package/esm2022/ripple/ripple.property.mjs +3 -3
  233. package/esm2022/select/select-portal.component.mjs +5 -6
  234. package/esm2022/select/select.component.mjs +7 -8
  235. package/esm2022/select/select.module.mjs +4 -4
  236. package/esm2022/select/select.property.mjs +3 -3
  237. package/esm2022/skeleton/skeleton.component.mjs +6 -7
  238. package/esm2022/skeleton/skeleton.module.mjs +4 -4
  239. package/esm2022/skeleton/skeleton.property.mjs +3 -3
  240. package/esm2022/slider/slider.component.mjs +6 -10
  241. package/esm2022/slider/slider.module.mjs +4 -4
  242. package/esm2022/slider/slider.property.mjs +3 -3
  243. package/esm2022/slider-select/slider-select.component.mjs +9 -9
  244. package/esm2022/slider-select/slider-select.module.mjs +4 -4
  245. package/esm2022/slider-select/slider-select.property.mjs +3 -3
  246. package/esm2022/statistic/countdown.component.mjs +3 -3
  247. package/esm2022/statistic/statistic.component.mjs +6 -7
  248. package/esm2022/statistic/statistic.module.mjs +5 -5
  249. package/esm2022/statistic/statistic.property.mjs +6 -6
  250. package/esm2022/steps/steps.component.mjs +6 -10
  251. package/esm2022/steps/steps.module.mjs +4 -4
  252. package/esm2022/steps/steps.property.mjs +3 -3
  253. package/esm2022/switch/switch.component.mjs +6 -7
  254. package/esm2022/switch/switch.module.mjs +4 -4
  255. package/esm2022/switch/switch.property.mjs +3 -3
  256. package/esm2022/table/table-body.component.mjs +10 -10
  257. package/esm2022/table/table-foot.component.mjs +5 -6
  258. package/esm2022/table/table-head.component.mjs +11 -13
  259. package/esm2022/table/table.component.mjs +7 -8
  260. package/esm2022/table/table.module.mjs +5 -5
  261. package/esm2022/table/table.property.mjs +12 -12
  262. package/esm2022/tabs/tab-content.component.mjs +6 -7
  263. package/esm2022/tabs/tab-link.directive.mjs +6 -6
  264. package/esm2022/tabs/tab.component.mjs +5 -6
  265. package/esm2022/tabs/tabs.component.mjs +6 -7
  266. package/esm2022/tabs/tabs.module.mjs +5 -5
  267. package/esm2022/tabs/tabs.property.mjs +6 -6
  268. package/esm2022/tag/tag.component.mjs +6 -7
  269. package/esm2022/tag/tag.module.mjs +4 -4
  270. package/esm2022/tag/tag.property.mjs +3 -3
  271. package/esm2022/text-retract/text-retract.component.mjs +5 -7
  272. package/esm2022/text-retract/text-retract.module.mjs +4 -4
  273. package/esm2022/text-retract/text-retract.property.mjs +3 -3
  274. package/esm2022/textarea/textarea.component.mjs +7 -8
  275. package/esm2022/textarea/textarea.module.mjs +4 -4
  276. package/esm2022/textarea/textarea.property.mjs +3 -3
  277. package/esm2022/theme/theme.component.mjs +6 -9
  278. package/esm2022/theme/theme.module.mjs +4 -4
  279. package/esm2022/theme/theme.property.mjs +3 -3
  280. package/esm2022/time-ago/time-ago.module.mjs +4 -4
  281. package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
  282. package/esm2022/time-picker/time-picker-frame.component.mjs +6 -8
  283. package/esm2022/time-picker/time-picker-portal.component.mjs +5 -7
  284. package/esm2022/time-picker/time-picker.component.mjs +3 -3
  285. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  286. package/esm2022/time-picker/time-picker.property.mjs +3 -3
  287. package/esm2022/time-range/time-range.module.mjs +4 -4
  288. package/esm2022/time-range/time-range.pipe.mjs +3 -3
  289. package/esm2022/timeline/timeline.component.mjs +6 -7
  290. package/esm2022/timeline/timeline.module.mjs +4 -4
  291. package/esm2022/timeline/timeline.property.mjs +3 -3
  292. package/esm2022/tooltip/tooltip-portal.component.mjs +6 -7
  293. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  294. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  295. package/esm2022/tooltip/tooltip.property.mjs +3 -3
  296. package/esm2022/transfer/transfer.component.mjs +11 -10
  297. package/esm2022/transfer/transfer.module.mjs +4 -4
  298. package/esm2022/transfer/transfer.property.mjs +3 -3
  299. package/esm2022/tree/tree-node.component.mjs +8 -9
  300. package/esm2022/tree/tree.component.mjs +7 -9
  301. package/esm2022/tree/tree.module.mjs +4 -4
  302. package/esm2022/tree/tree.property.mjs +6 -6
  303. package/esm2022/tree/tree.service.mjs +3 -3
  304. package/esm2022/tree-file/tree-file.component.mjs +7 -8
  305. package/esm2022/tree-file/tree-file.module.mjs +4 -4
  306. package/esm2022/tree-file/tree-file.property.mjs +3 -3
  307. package/esm2022/tree-select/tree-select-portal.component.mjs +5 -7
  308. package/esm2022/tree-select/tree-select.component.mjs +7 -8
  309. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  310. package/esm2022/tree-select/tree-select.property.mjs +3 -3
  311. package/esm2022/typography/typography.component.mjs +3 -3
  312. package/esm2022/typography/typography.module.mjs +4 -4
  313. package/esm2022/typography/typography.property.mjs +3 -3
  314. package/esm2022/upload/upload-portal.component.mjs +6 -6
  315. package/esm2022/upload/upload.component.mjs +7 -11
  316. package/esm2022/upload/upload.module.mjs +4 -4
  317. package/esm2022/upload/upload.property.mjs +3 -3
  318. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  319. package/fesm2022/ng-nest-ui-alert.mjs +13 -21
  320. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  321. package/fesm2022/ng-nest-ui-anchor.mjs +19 -22
  322. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  323. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  324. package/fesm2022/ng-nest-ui-auto-complete.mjs +13 -13
  325. package/fesm2022/ng-nest-ui-avatar.mjs +18 -19
  326. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  327. package/fesm2022/ng-nest-ui-back-top.mjs +13 -15
  328. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  329. package/fesm2022/ng-nest-ui-badge.mjs +12 -13
  330. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  331. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  332. package/fesm2022/ng-nest-ui-border.mjs +7 -7
  333. package/fesm2022/ng-nest-ui-button.mjs +19 -20
  334. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  335. package/fesm2022/ng-nest-ui-calendar.mjs +16 -18
  336. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  337. package/fesm2022/ng-nest-ui-card.mjs +12 -13
  338. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  339. package/fesm2022/ng-nest-ui-carousel.mjs +19 -23
  340. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  341. package/fesm2022/ng-nest-ui-cascade.mjs +18 -21
  342. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  343. package/fesm2022/ng-nest-ui-checkbox.mjs +13 -17
  344. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  345. package/fesm2022/ng-nest-ui-collapse.mjs +18 -20
  346. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  347. package/fesm2022/ng-nest-ui-color-picker.mjs +16 -24
  348. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  349. package/fesm2022/ng-nest-ui-color.mjs +12 -16
  350. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  351. package/fesm2022/ng-nest-ui-comment.mjs +18 -21
  352. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  353. package/fesm2022/ng-nest-ui-container.mjs +36 -37
  354. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  355. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  356. package/fesm2022/ng-nest-ui-crumb.mjs +12 -16
  357. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  358. package/fesm2022/ng-nest-ui-date-picker.mjs +66 -69
  359. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  360. package/fesm2022/ng-nest-ui-description.mjs +20 -21
  361. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  362. package/fesm2022/ng-nest-ui-dialog.mjs +48 -54
  363. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  364. package/fesm2022/ng-nest-ui-doc.mjs +8 -9
  365. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  366. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  367. package/fesm2022/ng-nest-ui-drawer.mjs +37 -39
  368. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  369. package/fesm2022/ng-nest-ui-dropdown.mjs +19 -30
  370. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  371. package/fesm2022/ng-nest-ui-empty.mjs +11 -13
  372. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  373. package/fesm2022/ng-nest-ui-examples.mjs +8 -9
  374. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  375. package/fesm2022/ng-nest-ui-find.mjs +14 -18
  376. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  377. package/fesm2022/ng-nest-ui-form.mjs +23 -27
  378. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  379. package/fesm2022/ng-nest-ui-highlight.mjs +12 -13
  380. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  381. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  382. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  383. package/fesm2022/ng-nest-ui-image.mjs +31 -26
  384. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  385. package/fesm2022/ng-nest-ui-inner.mjs +11 -12
  386. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  387. package/fesm2022/ng-nest-ui-input-number.mjs +13 -14
  388. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-input.mjs +20 -21
  390. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  391. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  392. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  393. package/fesm2022/ng-nest-ui-link.mjs +12 -13
  394. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  395. package/fesm2022/ng-nest-ui-list.mjs +26 -28
  396. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  397. package/fesm2022/ng-nest-ui-loading.mjs +12 -13
  398. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  399. package/fesm2022/ng-nest-ui-menu.mjs +20 -24
  400. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  401. package/fesm2022/ng-nest-ui-message-box.mjs +12 -15
  402. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  403. package/fesm2022/ng-nest-ui-message.mjs +11 -16
  404. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  405. package/fesm2022/ng-nest-ui-notification.mjs +11 -16
  406. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  407. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  408. package/fesm2022/ng-nest-ui-page-header.mjs +11 -13
  409. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  410. package/fesm2022/ng-nest-ui-pagination.mjs +12 -18
  411. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  412. package/fesm2022/ng-nest-ui-pattern.mjs +8 -9
  413. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  414. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -13
  415. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  416. package/fesm2022/ng-nest-ui-popover.mjs +15 -16
  417. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  418. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  419. package/fesm2022/ng-nest-ui-progress.mjs +12 -13
  420. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  421. package/fesm2022/ng-nest-ui-radio.mjs +12 -16
  422. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  423. package/fesm2022/ng-nest-ui-rate.mjs +12 -13
  424. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  425. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  426. package/fesm2022/ng-nest-ui-result.mjs +12 -13
  427. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  428. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  429. package/fesm2022/ng-nest-ui-select.mjs +17 -18
  430. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  431. package/fesm2022/ng-nest-ui-skeleton.mjs +12 -13
  432. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  433. package/fesm2022/ng-nest-ui-slider-select.mjs +15 -15
  434. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  435. package/fesm2022/ng-nest-ui-slider.mjs +12 -16
  436. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  437. package/fesm2022/ng-nest-ui-statistic.mjs +18 -19
  438. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  439. package/fesm2022/ng-nest-ui-steps.mjs +12 -16
  440. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  441. package/fesm2022/ng-nest-ui-switch.mjs +12 -13
  442. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  443. package/fesm2022/ng-nest-ui-table.mjs +45 -46
  444. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  445. package/fesm2022/ng-nest-ui-tabs.mjs +29 -30
  446. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  447. package/fesm2022/ng-nest-ui-tag.mjs +12 -13
  448. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  449. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -13
  450. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  451. package/fesm2022/ng-nest-ui-textarea.mjs +13 -14
  452. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  453. package/fesm2022/ng-nest-ui-theme.mjs +12 -15
  454. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  455. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  456. package/fesm2022/ng-nest-ui-time-picker.mjs +20 -21
  457. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  458. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  459. package/fesm2022/ng-nest-ui-timeline.mjs +12 -13
  460. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  461. package/fesm2022/ng-nest-ui-tooltip.mjs +15 -16
  462. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  463. package/fesm2022/ng-nest-ui-transfer.mjs +17 -16
  464. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  465. package/fesm2022/ng-nest-ui-tree-file.mjs +13 -14
  466. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  467. package/fesm2022/ng-nest-ui-tree-select.mjs +17 -18
  468. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  469. package/fesm2022/ng-nest-ui-tree.mjs +26 -27
  470. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  471. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  472. package/fesm2022/ng-nest-ui-upload.mjs +17 -21
  473. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  474. package/find/find.component.d.ts +0 -1
  475. package/form/form.component.d.ts +1 -2
  476. package/image/image-group.component.d.ts +2 -0
  477. package/menu/menu.component.d.ts +0 -1
  478. package/message/message.component.d.ts +0 -1
  479. package/notification/notification.component.d.ts +0 -1
  480. package/package.json +59 -59
  481. package/pagination/pagination.component.d.ts +0 -1
  482. package/radio/radio.component.d.ts +0 -1
  483. package/slider/slider.component.d.ts +0 -1
  484. package/steps/steps.component.d.ts +0 -1
  485. package/table/table-head.component.d.ts +0 -1
  486. package/upload/upload.component.d.ts +1 -2
@@ -5,10 +5,9 @@ import { XProperty, XInputBoolean, XWithConfig, XConfigService, XIsChange, XClea
5
5
  import { XPortalService } from '@ng-nest/ui/portal';
6
6
  import { Overlay } from '@angular/cdk/overlay';
7
7
  import { XOutletDirective } from '@ng-nest/ui/outlet';
8
- import * as i1 from '@angular/common';
9
- import { CommonModule } from '@angular/common';
10
8
  import { XButtonComponent } from '@ng-nest/ui/button';
11
- import * as i1$1 from '@angular/cdk/portal';
9
+ import { NgClass, NgTemplateOutlet } from '@angular/common';
10
+ import * as i1 from '@angular/cdk/portal';
12
11
  import { BasePortalOutlet, CdkPortalOutlet, PortalModule, TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
13
12
  import { filter, take } from 'rxjs';
14
13
 
@@ -37,8 +36,8 @@ class XDrawerProperty extends XProperty {
37
36
  */
38
37
  this.visibleChange = new EventEmitter();
39
38
  }
40
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
41
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerProperty, selector: "x-drawer-property", inputs: { title: "title", visible: "visible", placement: "placement", size: "size", backdropClose: "backdropClose", hasBackdrop: "hasBackdrop", className: "className" }, outputs: { close: "close", visibleChange: "visibleChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
39
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
40
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerProperty, selector: "x-drawer-property", inputs: { title: "title", visible: "visible", placement: "placement", size: "size", backdropClose: "backdropClose", hasBackdrop: "hasBackdrop", className: "className" }, outputs: { close: "close", visibleChange: "visibleChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
42
41
  }
43
42
  __decorate([
44
43
  XInputBoolean()
@@ -58,7 +57,7 @@ __decorate([
58
57
  __decorate([
59
58
  XWithConfig(X_DRAWER_CONFIG_NAME, '')
60
59
  ], XDrawerProperty.prototype, "className", void 0);
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerProperty, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerProperty, decorators: [{
62
61
  type: Component,
63
62
  args: [{ selector: `${XDrawerPrefix}-property`, template: '' }]
64
63
  }], propDecorators: { title: [{
@@ -91,10 +90,10 @@ const X_DRAWER_CONTAINER = new InjectionToken('X_DRAWER_CONTAINER');
91
90
  * Drawer Container Property
92
91
  */
93
92
  class XDrawerContainerProperty extends XProperty {
94
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContainerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
95
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerContainerProperty, selector: "x-drawer-container-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
93
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContainerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
94
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerContainerProperty, selector: "x-drawer-container-property", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
96
95
  }
97
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContainerProperty, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContainerProperty, decorators: [{
98
97
  type: Component,
99
98
  args: [{ selector: `${XDrawerContainerPrefix}-property`, template: '' }]
100
99
  }] });
@@ -190,12 +189,12 @@ class XDrawerComponent extends XDrawerProperty {
190
189
  }
191
190
  }
192
191
  }
193
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
194
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerComponent, isStandalone: true, selector: "x-drawer", host: { properties: { "class.x-drawer-visible": "this.getVisible" } }, viewQueries: [{ propertyName: "drawerTpl", first: true, predicate: ["drawerTpl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #drawerTpl>\r\n <div class=\"x-drawer-backdrop\" *ngIf=\"container\" (click)=\"closePortal()\"></div>\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n <div class=\"x-drawer-header\" *ngIf=\"title\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-container *ngIf=\"container\">\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n</ng-container>\r\n", styles: [".x-drawer{margin:0;padding:0;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-drawer-header{padding:1rem 1rem .5rem}.x-drawer-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-close{position:absolute;top:.425rem;right:.425rem}.x-drawer-title{padding:0}.x-drawer-content{padding:0 1rem 1rem;height:calc(100% - 3rem);overflow:auto}.x-drawer-no-title .x-drawer-content{padding:.5rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }], animations: [XSlideAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
192
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
193
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.7", type: XDrawerComponent, isStandalone: true, selector: "x-drawer", host: { properties: { "class.x-drawer-visible": "this.getVisible" } }, viewQueries: [{ propertyName: "drawerTpl", first: true, predicate: ["drawerTpl"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #drawerTpl>\r\n @if (container) {\r\n <div class=\"x-drawer-backdrop\" (click)=\"closePortal()\"></div>\r\n }\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n @if (title) {\r\n <div class=\"x-drawer-header\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n }\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n@if (container) {\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n}\r\n", styles: [".x-drawer{margin:0;padding:0;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-drawer-header{padding:1rem 1rem .5rem}.x-drawer-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-close{position:absolute;top:.425rem;right:.425rem}.x-drawer-title{padding:0}.x-drawer-content{padding:0 1rem 1rem;height:calc(100% - 3rem);overflow:auto}.x-drawer-no-title .x-drawer-content{padding:.5rem 1rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }], animations: [XSlideAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
195
194
  }
196
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerComponent, decorators: [{
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerComponent, decorators: [{
197
196
  type: Component,
198
- args: [{ selector: `${XDrawerPrefix}`, standalone: true, imports: [CommonModule, XOutletDirective, XButtonComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XSlideAnimation], template: "<ng-template #drawerTpl>\r\n <div class=\"x-drawer-backdrop\" *ngIf=\"container\" (click)=\"closePortal()\"></div>\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n <div class=\"x-drawer-header\" *ngIf=\"title\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-container *ngIf=\"container\">\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n</ng-container>\r\n", styles: [".x-drawer{margin:0;padding:0;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-drawer-header{padding:1rem 1rem .5rem}.x-drawer-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-close{position:absolute;top:.425rem;right:.425rem}.x-drawer-title{padding:0}.x-drawer-content{padding:0 1rem 1rem;height:calc(100% - 3rem);overflow:auto}.x-drawer-no-title .x-drawer-content{padding:.5rem 1rem}\n"] }]
197
+ args: [{ selector: `${XDrawerPrefix}`, standalone: true, imports: [NgClass, NgTemplateOutlet, XOutletDirective, XButtonComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XSlideAnimation], template: "<ng-template #drawerTpl>\r\n @if (container) {\r\n <div class=\"x-drawer-backdrop\" (click)=\"closePortal()\"></div>\r\n }\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n @if (title) {\r\n <div class=\"x-drawer-header\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n }\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n@if (container) {\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n}\r\n", styles: [".x-drawer{margin:0;padding:0;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color)}.x-drawer-header{padding:1rem 1rem .5rem}.x-drawer-title{font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-close{position:absolute;top:.425rem;right:.425rem}.x-drawer-title{padding:0}.x-drawer-content{padding:0 1rem 1rem;height:calc(100% - 3rem);overflow:auto}.x-drawer-no-title .x-drawer-content{padding:.5rem 1rem}\n"] }]
199
198
  }], propDecorators: { getVisible: [{
200
199
  type: HostBinding,
201
200
  args: ['class.x-drawer-visible']
@@ -228,12 +227,12 @@ class XDrawerPortalComponent extends BasePortalOutlet {
228
227
  }
229
228
  return this.portalOutlet.attachTemplatePortal(portal);
230
229
  }
231
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerPortalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
232
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerPortalComponent, isStandalone: true, selector: "x-drawer-portal", host: { listeners: { "@x-slide-animation.done": "done($event)", "@x-slide-animation.start": "start($event)" }, properties: { "class.x-drawer-portal": "this._has", "@x-slide-animation": "this.placement" } }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\r\n", styles: [".x-drawer-portal{margin:0;padding:0;height:100%;width:100%;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto;padding:1rem}.x-drawer-portal-title{display:block;margin:0 0 .5rem;font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-portal-content{display:block;margin:0 -1rem;padding:0 1rem;overflow:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1$1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [XSlideAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
230
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerPortalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
231
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerPortalComponent, isStandalone: true, selector: "x-drawer-portal", host: { listeners: { "@x-slide-animation.done": "done($event)", "@x-slide-animation.start": "start($event)" }, properties: { "class.x-drawer-portal": "this._has", "@x-slide-animation": "this.placement" } }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template cdkPortalOutlet></ng-template>\r\n", styles: [".x-drawer-portal{margin:0;padding:0;height:100%;width:100%;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto;padding:1rem}.x-drawer-portal-title{display:block;margin:0 0 .5rem;font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-portal-content{display:block;margin:0 -1rem;padding:0 1rem;overflow:auto}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [XSlideAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
233
232
  }
234
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerPortalComponent, decorators: [{
233
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerPortalComponent, decorators: [{
235
234
  type: Component,
236
- args: [{ selector: 'x-drawer-portal', standalone: true, imports: [CommonModule, PortalModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XSlideAnimation], template: "<ng-template cdkPortalOutlet></ng-template>\r\n", styles: [".x-drawer-portal{margin:0;padding:0;height:100%;width:100%;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto;padding:1rem}.x-drawer-portal-title{display:block;margin:0 0 .5rem;font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-portal-content{display:block;margin:0 -1rem;padding:0 1rem;overflow:auto}\n"] }]
235
+ args: [{ selector: 'x-drawer-portal', standalone: true, imports: [PortalModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XSlideAnimation], template: "<ng-template cdkPortalOutlet></ng-template>\r\n", styles: [".x-drawer-portal{margin:0;padding:0;height:100%;width:100%;background-color:var(--x-background);position:relative;box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto;padding:1rem}.x-drawer-portal-title{display:block;margin:0 0 .5rem;font-weight:600;color:var(--x-text-300);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-drawer-portal-content{display:block;margin:0 -1rem;padding:0 1rem;overflow:auto}\n"] }]
237
236
  }], propDecorators: { _has: [{
238
237
  type: HostBinding,
239
238
  args: ['class.x-drawer-portal']
@@ -274,10 +273,10 @@ class XDrawerCloseDirective {
274
273
  onCloseClick() {
275
274
  this.drawerRef && this.drawerRef.close();
276
275
  }
277
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
278
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerCloseDirective, isStandalone: true, selector: "[x-drawer-close]", host: { listeners: { "click": "onCloseClick($event)" } }, ngImport: i0 }); }
276
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
277
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerCloseDirective, isStandalone: true, selector: "[x-drawer-close]", host: { listeners: { "click": "onCloseClick($event)" } }, ngImport: i0 }); }
279
278
  }
280
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerCloseDirective, decorators: [{
279
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerCloseDirective, decorators: [{
281
280
  type: Directive,
282
281
  args: [{
283
282
  selector: `[x-drawer-close]`,
@@ -291,10 +290,10 @@ class XDrawerTitleDirective {
291
290
  constructor() {
292
291
  this._has = true;
293
292
  }
294
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
295
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerTitleDirective, isStandalone: true, selector: "[x-drawer-title]", host: { properties: { "class.x-drawer-portal-title": "this._has" } }, ngImport: i0 }); }
293
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
294
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerTitleDirective, isStandalone: true, selector: "[x-drawer-title]", host: { properties: { "class.x-drawer-portal-title": "this._has" } }, ngImport: i0 }); }
296
295
  }
297
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerTitleDirective, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerTitleDirective, decorators: [{
298
297
  type: Directive,
299
298
  args: [{
300
299
  selector: `[x-drawer-title]`,
@@ -308,10 +307,10 @@ class XDrawerContentDirective {
308
307
  constructor() {
309
308
  this._has = true;
310
309
  }
311
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
312
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerContentDirective, isStandalone: true, selector: "[x-drawer-content], x-drawer-content", host: { properties: { "class.x-drawer-portal-content": "this._has" } }, ngImport: i0 }); }
310
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
311
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerContentDirective, isStandalone: true, selector: "[x-drawer-content], x-drawer-content", host: { properties: { "class.x-drawer-portal-content": "this._has" } }, ngImport: i0 }); }
313
312
  }
314
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContentDirective, decorators: [{
313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContentDirective, decorators: [{
315
314
  type: Directive,
316
315
  args: [{
317
316
  selector: `[x-drawer-content], x-drawer-content`,
@@ -327,17 +326,17 @@ class XDrawerContainerComponent extends XDrawerContainerProperty {
327
326
  super(...arguments);
328
327
  this._has = true;
329
328
  }
330
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
331
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDrawerContainerComponent, isStandalone: true, selector: "x-drawer-container", host: { properties: { "class.x-drawer-container": "this._has" } }, providers: [
329
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
330
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDrawerContainerComponent, isStandalone: true, selector: "x-drawer-container", host: { properties: { "class.x-drawer-container": "this._has" } }, providers: [
332
331
  {
333
332
  provide: X_DRAWER_CONTAINER,
334
333
  useExisting: XDrawerContainerComponent
335
334
  }
336
- ], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-drawer-container{margin:0;padding:0;position:relative;z-index:1;box-sizing:border-box;display:block;overflow:hidden}.x-drawer-container .x-drawer{position:absolute;display:block;outline:0;z-index:2;transition:transform .2s ease-in,visibility .2s ease-in;visibility:hidden}.x-drawer-container .x-drawer-left{transform:translate3d(-100%,0,0);left:0;top:0}.x-drawer-container .x-drawer-right{transform:translate3d(100%,0,0);right:0;top:0}.x-drawer-container .x-drawer-top{transform:translate3d(0,-100%,0);top:0;left:0}.x-drawer-container .x-drawer-bottom{transform:translate3d(0,100%,0);bottom:0;left:0}.x-drawer-container .x-drawer-visible{transform:translateZ(0);visibility:inherit}.x-drawer-container .x-drawer-visible .x-drawer-backdrop{opacity:1;z-index:1}.x-drawer-container .x-drawer-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:auto;background:rgba(0,0,0,.32);transition:opacity .4s cubic-bezier(.25,.8,.25,1),z-index 0 ease-in .4s;opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
335
+ ], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-drawer-container{margin:0;padding:0;position:relative;z-index:1;box-sizing:border-box;display:block;overflow:hidden}.x-drawer-container .x-drawer{position:absolute;display:block;outline:0;z-index:2;transition:transform .2s ease-in,visibility .2s ease-in;visibility:hidden}.x-drawer-container .x-drawer-left{transform:translate3d(-100%,0,0);left:0;top:0}.x-drawer-container .x-drawer-right{transform:translate3d(100%,0,0);right:0;top:0}.x-drawer-container .x-drawer-top{transform:translate3d(0,-100%,0);top:0;left:0}.x-drawer-container .x-drawer-bottom{transform:translate3d(0,100%,0);bottom:0;left:0}.x-drawer-container .x-drawer-visible{transform:translateZ(0);visibility:inherit}.x-drawer-container .x-drawer-visible .x-drawer-backdrop{opacity:1;z-index:1}.x-drawer-container .x-drawer-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:auto;background:rgba(0,0,0,.32);transition:opacity .4s cubic-bezier(.25,.8,.25,1),z-index 0 ease-in .4s;opacity:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
337
336
  }
338
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerContainerComponent, decorators: [{
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerContainerComponent, decorators: [{
339
338
  type: Component,
340
- args: [{ selector: 'x-drawer-container', standalone: true, imports: [CommonModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
339
+ args: [{ selector: 'x-drawer-container', standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
341
340
  {
342
341
  provide: X_DRAWER_CONTAINER,
343
342
  useExisting: XDrawerContainerComponent
@@ -349,8 +348,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
349
348
  }] } });
350
349
 
351
350
  class XDrawerModule {
352
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
353
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: XDrawerModule, imports: [XDrawerComponent,
351
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
352
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XDrawerModule, imports: [XDrawerComponent,
354
353
  XDrawerCloseDirective,
355
354
  XDrawerTitleDirective,
356
355
  XDrawerContentDirective,
@@ -359,10 +358,9 @@ class XDrawerModule {
359
358
  XDrawerTitleDirective,
360
359
  XDrawerContentDirective,
361
360
  XDrawerContainerComponent] }); }
362
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerModule, imports: [XDrawerComponent,
363
- XDrawerContainerComponent] }); }
361
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerModule, imports: [XDrawerComponent] }); }
364
362
  }
365
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerModule, decorators: [{
363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerModule, decorators: [{
366
364
  type: NgModule,
367
365
  args: [{
368
366
  exports: [
@@ -430,10 +428,10 @@ class XDrawerService {
430
428
  });
431
429
  return drawerRef;
432
430
  }
433
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
434
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerService, providedIn: 'root' }); }
431
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
432
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerService, providedIn: 'root' }); }
435
433
  }
436
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDrawerService, decorators: [{
434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDrawerService, decorators: [{
437
435
  type: Injectable,
438
436
  args: [{ providedIn: 'root' }]
439
437
  }], ctorParameters: () => [] });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-drawer.mjs","sources":["../../../../lib/ng-nest/ui/drawer/drawer.property.ts","../../../../lib/ng-nest/ui/drawer/drawer.component.ts","../../../../lib/ng-nest/ui/drawer/drawer.component.html","../../../../lib/ng-nest/ui/drawer/drawer-portal.component.ts","../../../../lib/ng-nest/ui/drawer/drawer-portal.component.html","../../../../lib/ng-nest/ui/drawer/drawer-ref.ts","../../../../lib/ng-nest/ui/drawer/drawer-portal.directives.ts","../../../../lib/ng-nest/ui/drawer/drawer-container.component.ts","../../../../lib/ng-nest/ui/drawer/drawer-container.component.html","../../../../lib/ng-nest/ui/drawer/drawer.module.ts","../../../../lib/ng-nest/ui/drawer/drawer.service.ts","../../../../lib/ng-nest/ui/drawer/ng-nest-ui-drawer.ts"],"sourcesContent":["import {\r\n XTemplate,\r\n XPosition,\r\n XProperty,\r\n XInputBoolean,\r\n XBoolean,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport {\r\n Input,\r\n Output,\r\n EventEmitter,\r\n Component,\r\n InjectionToken,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XDrawerRef } from './drawer-ref';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\n\r\n/**\r\n * Drawer\r\n * @selector x-drawer\r\n * @decorator component\r\n */\r\nexport const XDrawerPrefix = 'x-drawer';\r\nexport const X_DRAWER_CONFIG_NAME = 'drawer';\r\nexport const X_DRAWER_DATA = new InjectionToken<any>('XDrawerData');\r\n\r\n/**\r\n * Drawer Property\r\n */\r\n@Component({ selector: `${XDrawerPrefix}-property`, template: '' })\r\nexport class XDrawerProperty extends XProperty {\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n */\r\n @Input() title?: XTemplate;\r\n /**\r\n * @zh_CN 显示/隐藏\r\n * @en_US Show/hide\r\n */\r\n @Input() @XInputBoolean() visible?: XBoolean;\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n */\r\n @Input() @XWithConfig<XPosition>(X_DRAWER_CONFIG_NAME, 'right') placement?: XPosition;\r\n /**\r\n * @zh_CN 尺寸,支持固定值\r\n * @en_US Size, supports fixed value\r\n */\r\n @Input() @XWithConfig<string>(X_DRAWER_CONFIG_NAME, '30%') size?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_DRAWER_CONFIG_NAME, true) backdropClose!: XBoolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_DRAWER_CONFIG_NAME, true) hasBackdrop!: XBoolean;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n @Input() @XWithConfig<string>(X_DRAWER_CONFIG_NAME, '') className!: string;\r\n /**\r\n * @zh_CN 关闭的事件\r\n * @en_US Closed event\r\n */\r\n @Output() close = new EventEmitter();\r\n /**\r\n * @zh_CN 显示/隐藏的事件\r\n * @en_US Show/hide event\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n}\r\n\r\n/**\r\n * Drawer Option\r\n */\r\nexport interface XDrawerOption {\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n * @default 'right'\r\n * @withConfig true\r\n */\r\n placement?: XPosition;\r\n /**\r\n * @zh_CN 尺寸,支持固定值\r\n * @en_US Size, supports fixed value\r\n * @default '30%'\r\n * @withConfig true\r\n */\r\n size?: string;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n className?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default true\r\n * @withConfig true\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n * @default true\r\n * @withConfig true\r\n */\r\n hasBackdrop?: boolean;\r\n /**\r\n * @zh_CN 数据,通过 \"@Inject(X_DRAWER_DATA)\" 来接收数据\r\n * @en_US Data. Receive data by \"@Inject(X_DRAWER_DATA)\"\r\n */\r\n data?: any;\r\n /**\r\n * @zh_CN 视图容器实例可以包含其他视图容器。\r\n * @en_US A view container instance can contain other view containers.\r\n */\r\n viewContainerRef?: ViewContainerRef;\r\n}\r\n\r\n/**\r\n * Drawer Container\r\n * @selector x-drawer-container\r\n * @decorator component\r\n */\r\nexport const XDrawerContainerPrefix = 'x-drawer-container';\r\nexport const X_DRAWER_CONTAINER = new InjectionToken('X_DRAWER_CONTAINER');\r\n\r\n/**\r\n * Drawer Container Property\r\n */\r\n@Component({ selector: `${XDrawerContainerPrefix}-property`, template: '' })\r\nexport class XDrawerContainerProperty extends XProperty {}\r\n\r\n/**\r\n * @zh_CN 创建的抽屉对象\r\n * @en_US Drawer object created\r\n */\r\nexport interface XDrawerPortalOverlayRef extends XPortalOverlayRef<XDrawerPortalComponent> {\r\n drawerRef?: XDrawerRef<any>;\r\n}\r\n\r\nexport type XDrawerAnimationState = XPosition | 'void';\r\n\r\nexport interface XDrawerAnimationEvent {\r\n state: XDrawerAnimationState;\r\n action: 'start' | 'done';\r\n totalTime: number;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n SimpleChanges,\r\n OnChanges,\r\n TemplateRef,\r\n ViewContainerRef,\r\n HostBinding,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XDrawerPrefix, XDrawerProperty, X_DRAWER_CONTAINER } from './drawer.property';\r\nimport { XIsChange, XIsEmpty, XSlideAnimation, XConfigService, XClearClass } from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { Subscription } from 'rxjs';\r\nimport { Overlay } from '@angular/cdk/overlay';\r\nimport { XDrawerContainerComponent } from './drawer-container.component';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { CommonModule } from '@angular/common';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\n\r\n@Component({\r\n selector: `${XDrawerPrefix}`,\r\n standalone: true,\r\n imports: [CommonModule, XOutletDirective, XButtonComponent],\r\n templateUrl: './drawer.component.html',\r\n styleUrls: ['./drawer.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XSlideAnimation]\r\n})\r\nexport class XDrawerComponent extends XDrawerProperty implements OnInit, OnChanges, OnDestroy {\r\n @HostBinding('class.x-drawer-visible') get getVisible() {\r\n return this.visible;\r\n }\r\n @ViewChild('drawerTpl', { static: true }) drawerTpl!: TemplateRef<void>;\r\n portal!: XPortalOverlayRef<any>;\r\n back$: Subscription | null = null;\r\n width = '100%';\r\n height = '100%';\r\n\r\n private overlay = inject(Overlay);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n container = inject<XDrawerContainerComponent>(X_DRAWER_CONTAINER, { optional: true });\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n this.setSize();\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges) {\r\n const { visible, placement } = simples;\r\n XIsChange(visible) && this.setVisible();\r\n if (XIsChange(placement)) {\r\n this.setClassMap();\r\n this.setSize();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unsubscribe();\r\n }\r\n\r\n unsubscribe() {\r\n this.back$?.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap = {\r\n [`${XDrawerPrefix}-${this.placement}`]: !XIsEmpty(this.placement),\r\n [`${XDrawerPrefix}-no-title`]: XIsEmpty(this.title)\r\n };\r\n }\r\n\r\n setSize() {\r\n if (this.container) [this.width, this.height] = this.getSize();\r\n }\r\n\r\n getSize(): string[] {\r\n return [\r\n this.placement === 'left' || this.placement === 'right' ? this.size! : '100%',\r\n this.placement === 'top' || this.placement === 'bottom' ? this.size! : '100%'\r\n ];\r\n }\r\n\r\n setVisible() {\r\n if (this.visible) {\r\n this.createPortal();\r\n } else {\r\n this.closePortal();\r\n }\r\n }\r\n\r\n createPortal() {\r\n if (this.container) return;\r\n const [width, height] = this.getSize();\r\n this.portal = this.portalService.attach({\r\n content: this.drawerTpl,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: true,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n positionStrategy: this.portalService.setPosition(this.placement, width, height)\r\n }\r\n });\r\n if (this.portal.overlayRef) this.back$ = this.portal.overlayRef.backdropClick().subscribe(() => this.closePortal());\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.container) {\r\n this.visibleChange.emit(this.visible as boolean);\r\n this.close.emit();\r\n } else {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.unsubscribe();\r\n this.visibleChange.emit(this.visible as boolean);\r\n this.close.emit();\r\n }\r\n }\r\n }\r\n}\r\n","<ng-template #drawerTpl>\r\n <div class=\"x-drawer-backdrop\" *ngIf=\"container\" (click)=\"closePortal()\"></div>\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n <div class=\"x-drawer-header\" *ngIf=\"title\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-container *ngIf=\"container\">\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n</ng-container>\r\n","import { BasePortalOutlet, PortalModule, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ComponentRef,\r\n EmbeddedViewRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport { XSlideAnimation } from '@ng-nest/ui/core';\r\nimport { XDrawerAnimationEvent, XDrawerAnimationState } from './drawer.property';\r\nimport { AnimationEvent } from '@angular/animations';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'x-drawer-portal',\r\n standalone: true,\r\n imports: [CommonModule, PortalModule],\r\n templateUrl: './drawer-portal.component.html',\r\n styleUrls: ['./drawer-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XSlideAnimation]\r\n})\r\nexport class XDrawerPortalComponent extends BasePortalOutlet {\r\n @HostBinding('class.x-drawer-portal') _has = true;\r\n @HostBinding('@x-slide-animation') public placement?: XDrawerAnimationState;\r\n @HostListener('@x-slide-animation.done', ['$event']) done({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({ action: 'done', state: toState as XDrawerAnimationState, totalTime });\r\n }\r\n @HostListener('@x-slide-animation.start', ['$event']) start({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({ action: 'start', state: toState as XDrawerAnimationState, totalTime });\r\n }\r\n @ViewChild(CdkPortalOutlet, { static: true }) portalOutlet!: CdkPortalOutlet;\r\n\r\n animationChanged = new EventEmitter<XDrawerAnimationEvent>();\r\n\r\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\r\n if (this.portalOutlet.hasAttached()) {\r\n throw Error('drawer portal has attached');\r\n }\r\n return this.portalOutlet.attachComponentPortal(portal);\r\n }\r\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\r\n if (this.portalOutlet.hasAttached()) {\r\n throw Error('drawer portal has attached');\r\n }\r\n return this.portalOutlet.attachTemplatePortal(portal);\r\n }\r\n}\r\n","<ng-template cdkPortalOutlet></ng-template>\r\n","import { OverlayRef } from '@angular/cdk/overlay';\r\nimport { filter, take } from 'rxjs';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\n\r\n// TODO: add more function\r\nexport class XDrawerRef<C> {\r\n componentInstance!: C;\r\n constructor(public overlayRef: OverlayRef, public containerInstance: XDrawerPortalComponent) {}\r\n close() {\r\n this.containerInstance.animationChanged\r\n .pipe(\r\n filter((event) => event.state === 'void' && event.action === 'done'),\r\n take(1)\r\n )\r\n .subscribe(() => {\r\n this.overlayRef.detach();\r\n });\r\n this.containerInstance.placement = 'void';\r\n }\r\n}\r\n","import { Directive, HostBinding, HostListener, inject } from '@angular/core';\r\nimport { XDrawerRef } from './drawer-ref';\r\n\r\n@Directive({\r\n selector: `[x-drawer-close]`,\r\n standalone: true\r\n})\r\nexport class XDrawerCloseDirective {\r\n @HostListener('click', ['$event']) onCloseClick() {\r\n this.drawerRef && this.drawerRef.close();\r\n }\r\n drawerRef = inject(XDrawerRef, { optional: true });\r\n}\r\n\r\n@Directive({\r\n selector: `[x-drawer-title]`,\r\n standalone: true\r\n})\r\nexport class XDrawerTitleDirective {\r\n @HostBinding('class.x-drawer-portal-title') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-drawer-content], x-drawer-content`,\r\n standalone: true\r\n})\r\nexport class XDrawerContentDirective {\r\n @HostBinding('class.x-drawer-portal-content') _has = true;\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';\r\nimport { XDrawerContainerProperty, X_DRAWER_CONTAINER } from './drawer.property';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'x-drawer-container',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './drawer-container.component.html',\r\n styleUrls: ['./drawer-container.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: X_DRAWER_CONTAINER,\r\n useExisting: XDrawerContainerComponent\r\n }\r\n ]\r\n})\r\nexport class XDrawerContainerComponent extends XDrawerContainerProperty {\r\n @HostBinding('class.x-drawer-container') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XDrawerComponent } from './drawer.component';\r\nimport { XDrawerCloseDirective, XDrawerContentDirective, XDrawerTitleDirective } from './drawer-portal.directives';\r\nimport { XDrawerContainerComponent } from './drawer-container.component';\r\n\r\n@NgModule({\r\n exports: [\r\n XDrawerComponent,\r\n XDrawerCloseDirective,\r\n XDrawerTitleDirective,\r\n XDrawerContentDirective,\r\n XDrawerContainerComponent\r\n ],\r\n imports: [\r\n XDrawerComponent,\r\n XDrawerCloseDirective,\r\n XDrawerTitleDirective,\r\n XDrawerContentDirective,\r\n XDrawerContainerComponent\r\n ]\r\n})\r\nexport class XDrawerModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\r\nimport { Injectable, TemplateRef, inject } from '@angular/core';\r\nimport { fillDefault, XConfigService, XDrawerConfig } from '@ng-nest/ui/core';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\nimport { XDrawerRef } from './drawer-ref';\r\nimport { XDrawerOption, X_DRAWER_CONFIG_NAME, X_DRAWER_DATA } from './drawer.property';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class XDrawerService {\r\n default: XDrawerOption = {\r\n placement: 'right',\r\n size: '30%',\r\n hasBackdrop: true,\r\n backdropClose: true\r\n };\r\n configDefault?: XDrawerConfig;\r\n private portalService = inject(XPortalService);\r\n private configService = inject(XConfigService);\r\n private overlay = inject(Overlay);\r\n\r\n constructor() {\r\n this.configDefault = this.configService.getConfigForComponent(X_DRAWER_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n create<T>(content: TemplateRef<any> | ComponentType<T>, option: XDrawerOption = {}): XDrawerRef<T> {\r\n fillDefault(option, this.default);\r\n const width = ['left', 'right'].includes(option.placement as string) ? option.size : '100%';\r\n const height = ['top', 'bottom'].includes(option.placement as string) ? option.size : '100%';\r\n const portal = this.portalService.attach<XDrawerPortalComponent>({\r\n content: XDrawerPortalComponent,\r\n viewContainerRef: option.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: option.hasBackdrop,\r\n panelClass: option.className,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n positionStrategy: this.portalService.setPosition(option.placement, width, height)\r\n }\r\n });\r\n const { overlayRef, componentRef } = portal || {};\r\n const { instance } = componentRef! || {};\r\n instance.placement = option.placement;\r\n const drawerRef = new XDrawerRef<T>(overlayRef!, instance);\r\n if (content instanceof TemplateRef) {\r\n instance.attachTemplatePortal(\r\n new TemplatePortal(content, option.viewContainerRef!, { $implicit: option.data, drawerRef: drawerRef })\r\n );\r\n } else {\r\n const injector = this.portalService.createInjector([\r\n { provide: X_DRAWER_DATA, useValue: option.data },\r\n { provide: XDrawerRef, useValue: drawerRef }\r\n ]);\r\n\r\n instance.attachComponentPortal(new ComponentPortal(content, option.viewContainerRef, injector));\r\n }\r\n if (option.hasBackdrop && option.backdropClose && overlayRef)\r\n overlayRef.backdropClick().subscribe(() => {\r\n drawerRef.close();\r\n });\r\n\r\n return drawerRef;\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-drawer.mjs","sources":["../../../../lib/ng-nest/ui/drawer/drawer.property.ts","../../../../lib/ng-nest/ui/drawer/drawer.component.ts","../../../../lib/ng-nest/ui/drawer/drawer.component.html","../../../../lib/ng-nest/ui/drawer/drawer-portal.component.ts","../../../../lib/ng-nest/ui/drawer/drawer-portal.component.html","../../../../lib/ng-nest/ui/drawer/drawer-ref.ts","../../../../lib/ng-nest/ui/drawer/drawer-portal.directives.ts","../../../../lib/ng-nest/ui/drawer/drawer-container.component.ts","../../../../lib/ng-nest/ui/drawer/drawer-container.component.html","../../../../lib/ng-nest/ui/drawer/drawer.module.ts","../../../../lib/ng-nest/ui/drawer/drawer.service.ts","../../../../lib/ng-nest/ui/drawer/ng-nest-ui-drawer.ts"],"sourcesContent":["import {\r\n XTemplate,\r\n XPosition,\r\n XProperty,\r\n XInputBoolean,\r\n XBoolean,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport {\r\n Input,\r\n Output,\r\n EventEmitter,\r\n Component,\r\n InjectionToken,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XDrawerRef } from './drawer-ref';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\n\r\n/**\r\n * Drawer\r\n * @selector x-drawer\r\n * @decorator component\r\n */\r\nexport const XDrawerPrefix = 'x-drawer';\r\nexport const X_DRAWER_CONFIG_NAME = 'drawer';\r\nexport const X_DRAWER_DATA = new InjectionToken<any>('XDrawerData');\r\n\r\n/**\r\n * Drawer Property\r\n */\r\n@Component({ selector: `${XDrawerPrefix}-property`, template: '' })\r\nexport class XDrawerProperty extends XProperty {\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n */\r\n @Input() title?: XTemplate;\r\n /**\r\n * @zh_CN 显示/隐藏\r\n * @en_US Show/hide\r\n */\r\n @Input() @XInputBoolean() visible?: XBoolean;\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n */\r\n @Input() @XWithConfig<XPosition>(X_DRAWER_CONFIG_NAME, 'right') placement?: XPosition;\r\n /**\r\n * @zh_CN 尺寸,支持固定值\r\n * @en_US Size, supports fixed value\r\n */\r\n @Input() @XWithConfig<string>(X_DRAWER_CONFIG_NAME, '30%') size?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_DRAWER_CONFIG_NAME, true) backdropClose!: XBoolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n */\r\n @Input() @XWithConfig<XBoolean>(X_DRAWER_CONFIG_NAME, true) hasBackdrop!: XBoolean;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n @Input() @XWithConfig<string>(X_DRAWER_CONFIG_NAME, '') className!: string;\r\n /**\r\n * @zh_CN 关闭的事件\r\n * @en_US Closed event\r\n */\r\n @Output() close = new EventEmitter();\r\n /**\r\n * @zh_CN 显示/隐藏的事件\r\n * @en_US Show/hide event\r\n */\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n}\r\n\r\n/**\r\n * Drawer Option\r\n */\r\nexport interface XDrawerOption {\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n * @default 'right'\r\n * @withConfig true\r\n */\r\n placement?: XPosition;\r\n /**\r\n * @zh_CN 尺寸,支持固定值\r\n * @en_US Size, supports fixed value\r\n * @default '30%'\r\n * @withConfig true\r\n */\r\n size?: string;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n className?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default true\r\n * @withConfig true\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n * @default true\r\n * @withConfig true\r\n */\r\n hasBackdrop?: boolean;\r\n /**\r\n * @zh_CN 数据,通过 \"@Inject(X_DRAWER_DATA)\" 来接收数据\r\n * @en_US Data. Receive data by \"@Inject(X_DRAWER_DATA)\"\r\n */\r\n data?: any;\r\n /**\r\n * @zh_CN 视图容器实例可以包含其他视图容器。\r\n * @en_US A view container instance can contain other view containers.\r\n */\r\n viewContainerRef?: ViewContainerRef;\r\n}\r\n\r\n/**\r\n * Drawer Container\r\n * @selector x-drawer-container\r\n * @decorator component\r\n */\r\nexport const XDrawerContainerPrefix = 'x-drawer-container';\r\nexport const X_DRAWER_CONTAINER = new InjectionToken('X_DRAWER_CONTAINER');\r\n\r\n/**\r\n * Drawer Container Property\r\n */\r\n@Component({ selector: `${XDrawerContainerPrefix}-property`, template: '' })\r\nexport class XDrawerContainerProperty extends XProperty {}\r\n\r\n/**\r\n * @zh_CN 创建的抽屉对象\r\n * @en_US Drawer object created\r\n */\r\nexport interface XDrawerPortalOverlayRef extends XPortalOverlayRef<XDrawerPortalComponent> {\r\n drawerRef?: XDrawerRef<any>;\r\n}\r\n\r\nexport type XDrawerAnimationState = XPosition | 'void';\r\n\r\nexport interface XDrawerAnimationEvent {\r\n state: XDrawerAnimationState;\r\n action: 'start' | 'done';\r\n totalTime: number;\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n SimpleChanges,\r\n OnChanges,\r\n TemplateRef,\r\n ViewContainerRef,\r\n HostBinding,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XDrawerPrefix, XDrawerProperty, X_DRAWER_CONTAINER } from './drawer.property';\r\nimport { XIsChange, XIsEmpty, XSlideAnimation, XConfigService, XClearClass } from '@ng-nest/ui/core';\r\nimport { XPortalService, XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { Subscription } from 'rxjs';\r\nimport { Overlay } from '@angular/cdk/overlay';\r\nimport { XDrawerContainerComponent } from './drawer-container.component';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XDrawerPrefix}`,\r\n standalone: true,\r\n imports: [NgClass, NgTemplateOutlet, XOutletDirective, XButtonComponent],\r\n templateUrl: './drawer.component.html',\r\n styleUrls: ['./drawer.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XSlideAnimation]\r\n})\r\nexport class XDrawerComponent extends XDrawerProperty implements OnInit, OnChanges, OnDestroy {\r\n @HostBinding('class.x-drawer-visible') get getVisible() {\r\n return this.visible;\r\n }\r\n @ViewChild('drawerTpl', { static: true }) drawerTpl!: TemplateRef<void>;\r\n portal!: XPortalOverlayRef<any>;\r\n back$: Subscription | null = null;\r\n width = '100%';\r\n height = '100%';\r\n\r\n private overlay = inject(Overlay);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n container = inject<XDrawerContainerComponent>(X_DRAWER_CONTAINER, { optional: true });\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n this.setSize();\r\n }\r\n\r\n ngOnChanges(simples: SimpleChanges) {\r\n const { visible, placement } = simples;\r\n XIsChange(visible) && this.setVisible();\r\n if (XIsChange(placement)) {\r\n this.setClassMap();\r\n this.setSize();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unsubscribe();\r\n }\r\n\r\n unsubscribe() {\r\n this.back$?.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap = {\r\n [`${XDrawerPrefix}-${this.placement}`]: !XIsEmpty(this.placement),\r\n [`${XDrawerPrefix}-no-title`]: XIsEmpty(this.title)\r\n };\r\n }\r\n\r\n setSize() {\r\n if (this.container) [this.width, this.height] = this.getSize();\r\n }\r\n\r\n getSize(): string[] {\r\n return [\r\n this.placement === 'left' || this.placement === 'right' ? this.size! : '100%',\r\n this.placement === 'top' || this.placement === 'bottom' ? this.size! : '100%'\r\n ];\r\n }\r\n\r\n setVisible() {\r\n if (this.visible) {\r\n this.createPortal();\r\n } else {\r\n this.closePortal();\r\n }\r\n }\r\n\r\n createPortal() {\r\n if (this.container) return;\r\n const [width, height] = this.getSize();\r\n this.portal = this.portalService.attach({\r\n content: this.drawerTpl,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: true,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n positionStrategy: this.portalService.setPosition(this.placement, width, height)\r\n }\r\n });\r\n if (this.portal.overlayRef) this.back$ = this.portal.overlayRef.backdropClick().subscribe(() => this.closePortal());\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.container) {\r\n this.visibleChange.emit(this.visible as boolean);\r\n this.close.emit();\r\n } else {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.unsubscribe();\r\n this.visibleChange.emit(this.visible as boolean);\r\n this.close.emit();\r\n }\r\n }\r\n }\r\n}\r\n","<ng-template #drawerTpl>\r\n @if (container) {\r\n <div class=\"x-drawer-backdrop\" (click)=\"closePortal()\"></div>\r\n }\r\n <div\r\n class=\"x-drawer\"\r\n [ngClass]=\"classMap\"\r\n [style.width]=\"width\"\r\n [style.height]=\"height\"\r\n [class.x-drawer-visible]=\"visible\"\r\n [@x-slide-animation]=\"placement\"\r\n >\r\n @if (title) {\r\n <div class=\"x-drawer-header\">\r\n <div class=\"x-drawer-title\">\r\n <ng-container *xOutlet=\"title\">{{ title }}</ng-container>\r\n </div>\r\n <x-button class=\"x-drawer-close\" icon=\"fto-x\" (click)=\"closePortal()\" onlyIcon closable></x-button>\r\n </div>\r\n }\r\n <div class=\"x-drawer-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</ng-template>\r\n@if (container) {\r\n <ng-container *ngTemplateOutlet=\"drawerTpl\"></ng-container>\r\n}\r\n","import { BasePortalOutlet, PortalModule, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ComponentRef,\r\n EmbeddedViewRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n ViewChild,\r\n ViewEncapsulation\r\n} from '@angular/core';\r\nimport { XSlideAnimation } from '@ng-nest/ui/core';\r\nimport { XDrawerAnimationEvent, XDrawerAnimationState } from './drawer.property';\r\nimport { AnimationEvent } from '@angular/animations';\r\n\r\n@Component({\r\n selector: 'x-drawer-portal',\r\n standalone: true,\r\n imports: [PortalModule],\r\n templateUrl: './drawer-portal.component.html',\r\n styleUrls: ['./drawer-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XSlideAnimation]\r\n})\r\nexport class XDrawerPortalComponent extends BasePortalOutlet {\r\n @HostBinding('class.x-drawer-portal') _has = true;\r\n @HostBinding('@x-slide-animation') public placement?: XDrawerAnimationState;\r\n @HostListener('@x-slide-animation.done', ['$event']) done({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({ action: 'done', state: toState as XDrawerAnimationState, totalTime });\r\n }\r\n @HostListener('@x-slide-animation.start', ['$event']) start({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({ action: 'start', state: toState as XDrawerAnimationState, totalTime });\r\n }\r\n @ViewChild(CdkPortalOutlet, { static: true }) portalOutlet!: CdkPortalOutlet;\r\n\r\n animationChanged = new EventEmitter<XDrawerAnimationEvent>();\r\n\r\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\r\n if (this.portalOutlet.hasAttached()) {\r\n throw Error('drawer portal has attached');\r\n }\r\n return this.portalOutlet.attachComponentPortal(portal);\r\n }\r\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\r\n if (this.portalOutlet.hasAttached()) {\r\n throw Error('drawer portal has attached');\r\n }\r\n return this.portalOutlet.attachTemplatePortal(portal);\r\n }\r\n}\r\n","<ng-template cdkPortalOutlet></ng-template>\r\n","import { OverlayRef } from '@angular/cdk/overlay';\r\nimport { filter, take } from 'rxjs';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\n\r\n// TODO: add more function\r\nexport class XDrawerRef<C> {\r\n componentInstance!: C;\r\n constructor(public overlayRef: OverlayRef, public containerInstance: XDrawerPortalComponent) {}\r\n close() {\r\n this.containerInstance.animationChanged\r\n .pipe(\r\n filter((event) => event.state === 'void' && event.action === 'done'),\r\n take(1)\r\n )\r\n .subscribe(() => {\r\n this.overlayRef.detach();\r\n });\r\n this.containerInstance.placement = 'void';\r\n }\r\n}\r\n","import { Directive, HostBinding, HostListener, inject } from '@angular/core';\r\nimport { XDrawerRef } from './drawer-ref';\r\n\r\n@Directive({\r\n selector: `[x-drawer-close]`,\r\n standalone: true\r\n})\r\nexport class XDrawerCloseDirective {\r\n @HostListener('click', ['$event']) onCloseClick() {\r\n this.drawerRef && this.drawerRef.close();\r\n }\r\n drawerRef = inject(XDrawerRef, { optional: true });\r\n}\r\n\r\n@Directive({\r\n selector: `[x-drawer-title]`,\r\n standalone: true\r\n})\r\nexport class XDrawerTitleDirective {\r\n @HostBinding('class.x-drawer-portal-title') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-drawer-content], x-drawer-content`,\r\n standalone: true\r\n})\r\nexport class XDrawerContentDirective {\r\n @HostBinding('class.x-drawer-portal-content') _has = true;\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';\r\nimport { XDrawerContainerProperty, X_DRAWER_CONTAINER } from './drawer.property';\r\n\r\n@Component({\r\n selector: 'x-drawer-container',\r\n standalone: true,\r\n templateUrl: './drawer-container.component.html',\r\n styleUrls: ['./drawer-container.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: X_DRAWER_CONTAINER,\r\n useExisting: XDrawerContainerComponent\r\n }\r\n ]\r\n})\r\nexport class XDrawerContainerComponent extends XDrawerContainerProperty {\r\n @HostBinding('class.x-drawer-container') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XDrawerComponent } from './drawer.component';\r\nimport { XDrawerCloseDirective, XDrawerContentDirective, XDrawerTitleDirective } from './drawer-portal.directives';\r\nimport { XDrawerContainerComponent } from './drawer-container.component';\r\n\r\n@NgModule({\r\n exports: [\r\n XDrawerComponent,\r\n XDrawerCloseDirective,\r\n XDrawerTitleDirective,\r\n XDrawerContentDirective,\r\n XDrawerContainerComponent\r\n ],\r\n imports: [\r\n XDrawerComponent,\r\n XDrawerCloseDirective,\r\n XDrawerTitleDirective,\r\n XDrawerContentDirective,\r\n XDrawerContainerComponent\r\n ]\r\n})\r\nexport class XDrawerModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\r\nimport { Injectable, TemplateRef, inject } from '@angular/core';\r\nimport { fillDefault, XConfigService, XDrawerConfig } from '@ng-nest/ui/core';\r\nimport { XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDrawerPortalComponent } from './drawer-portal.component';\r\nimport { XDrawerRef } from './drawer-ref';\r\nimport { XDrawerOption, X_DRAWER_CONFIG_NAME, X_DRAWER_DATA } from './drawer.property';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class XDrawerService {\r\n default: XDrawerOption = {\r\n placement: 'right',\r\n size: '30%',\r\n hasBackdrop: true,\r\n backdropClose: true\r\n };\r\n configDefault?: XDrawerConfig;\r\n private portalService = inject(XPortalService);\r\n private configService = inject(XConfigService);\r\n private overlay = inject(Overlay);\r\n\r\n constructor() {\r\n this.configDefault = this.configService.getConfigForComponent(X_DRAWER_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n create<T>(content: TemplateRef<any> | ComponentType<T>, option: XDrawerOption = {}): XDrawerRef<T> {\r\n fillDefault(option, this.default);\r\n const width = ['left', 'right'].includes(option.placement as string) ? option.size : '100%';\r\n const height = ['top', 'bottom'].includes(option.placement as string) ? option.size : '100%';\r\n const portal = this.portalService.attach<XDrawerPortalComponent>({\r\n content: XDrawerPortalComponent,\r\n viewContainerRef: option.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: option.hasBackdrop,\r\n panelClass: option.className,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n positionStrategy: this.portalService.setPosition(option.placement, width, height)\r\n }\r\n });\r\n const { overlayRef, componentRef } = portal || {};\r\n const { instance } = componentRef! || {};\r\n instance.placement = option.placement;\r\n const drawerRef = new XDrawerRef<T>(overlayRef!, instance);\r\n if (content instanceof TemplateRef) {\r\n instance.attachTemplatePortal(\r\n new TemplatePortal(content, option.viewContainerRef!, { $implicit: option.data, drawerRef: drawerRef })\r\n );\r\n } else {\r\n const injector = this.portalService.createInjector([\r\n { provide: X_DRAWER_DATA, useValue: option.data },\r\n { provide: XDrawerRef, useValue: drawerRef }\r\n ]);\r\n\r\n instance.attachComponentPortal(new ComponentPortal(content, option.viewContainerRef, injector));\r\n }\r\n if (option.hasBackdrop && option.backdropClose && overlayRef)\r\n overlayRef.backdropClick().subscribe(() => {\r\n drawerRef.close();\r\n });\r\n\r\n return drawerRef;\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -6,13 +6,12 @@ import { Subject, of } from 'rxjs';
6
6
  import * as i1 from '@ng-nest/ui/portal';
7
7
  import { XPortalConnectedPosition, XPortalService } from '@ng-nest/ui/portal';
8
8
  import { takeUntil, delay, debounceTime } from 'rxjs/operators';
9
- import * as i1$1 from '@angular/common';
10
- import { CommonModule } from '@angular/common';
11
9
  import { XListComponent } from '@ng-nest/ui/list';
12
10
  import * as i3 from '@angular/forms';
13
11
  import { FormsModule } from '@angular/forms';
14
12
  import * as i2 from '@angular/cdk/overlay';
15
13
  import { Overlay } from '@angular/cdk/overlay';
14
+ import { NgClass } from '@angular/common';
16
15
 
17
16
  /**
18
17
  * Dropdown
@@ -48,8 +47,8 @@ class XDropdownProperty extends XProperty {
48
47
  */
49
48
  this.activatedIdChange = new EventEmitter();
50
49
  }
51
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
52
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDropdownProperty, selector: "x-dropdown-property", inputs: { data: "data", trigger: "trigger", placement: "placement", disabled: "disabled", children: "children", portalMinWidth: "portalMinWidth", portalMaxWidth: "portalMaxWidth", portalMinHeight: "portalMinHeight", portalMaxHeight: "portalMaxHeight", hoverDelay: "hoverDelay", activatedId: "activatedId" }, outputs: { nodeClick: "nodeClick", activatedIdChange: "activatedIdChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
50
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
51
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDropdownProperty, selector: "x-dropdown-property", inputs: { data: "data", trigger: "trigger", placement: "placement", disabled: "disabled", children: "children", portalMinWidth: "portalMinWidth", portalMaxWidth: "portalMaxWidth", portalMinHeight: "portalMinHeight", portalMaxHeight: "portalMaxHeight", hoverDelay: "hoverDelay", activatedId: "activatedId" }, outputs: { nodeClick: "nodeClick", activatedIdChange: "activatedIdChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
53
52
  }
54
53
  __decorate([
55
54
  XDataConvert()
@@ -66,7 +65,7 @@ __decorate([
66
65
  __decorate([
67
66
  XInputBoolean()
68
67
  ], XDropdownProperty.prototype, "children", void 0);
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownProperty, decorators: [{
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownProperty, decorators: [{
70
69
  type: Component,
71
70
  args: [{ selector: `${XDropdownPrefix}-property`, template: '' }]
72
71
  }], propDecorators: { data: [{
@@ -264,12 +263,12 @@ class XDropdownPortalComponent {
264
263
  this.openNode.change && this.openNode.change();
265
264
  }
266
265
  }
267
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XPortalService }, { token: i2.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
268
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDropdownPortalComponent, isStandalone: true, selector: "x-dropdown-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)", "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div\r\n #dropdownPortal\r\n class=\"x-dropdown-portal\"\r\n [style.minWidth]=\"getMinWidth\"\r\n [style.maxWidth]=\"getMaxWidth\"\r\n [style.minHeight]=\"getMinHeight\"\r\n [style.maxHeight]=\"getMaxHeight\"\r\n>\r\n <x-list\r\n [data]=\"data\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [(ngModel)]=\"activatedId\"\r\n (nodeMouseenter)=\"onEnter($event)\"\r\n (nodeMouseleave)=\"onLeave()\"\r\n ></x-list>\r\n</div>\r\n", styles: ["x-dropdown-portal{width:100%}.x-dropdown-portal{margin:.0625rem 0;padding:.325rem 0;background-color:var(--x-background);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto}.x-dropdown-portal .x-open-portal{background-color:var(--x-background-a200)}.x-dropdown-portal-child{margin-top:-.3875rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
266
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XPortalService }, { token: i2.Overlay }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
267
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDropdownPortalComponent, isStandalone: true, selector: "x-dropdown-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)", "mouseenter": "mouseenter()", "mouseleave": "mouseleave()" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div\r\n #dropdownPortal\r\n class=\"x-dropdown-portal\"\r\n [style.minWidth]=\"getMinWidth\"\r\n [style.maxWidth]=\"getMaxWidth\"\r\n [style.minHeight]=\"getMinHeight\"\r\n [style.maxHeight]=\"getMaxHeight\"\r\n>\r\n <x-list\r\n [data]=\"data\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [(ngModel)]=\"activatedId\"\r\n (nodeMouseenter)=\"onEnter($event)\"\r\n (nodeMouseleave)=\"onLeave()\"\r\n ></x-list>\r\n</div>\r\n", styles: ["x-dropdown-portal{width:100%}.x-dropdown-portal{margin:.0625rem 0;padding:.325rem 0;background-color:var(--x-background);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto}.x-dropdown-portal .x-open-portal{background-color:var(--x-background-a200)}.x-dropdown-portal-child{margin-top:-.3875rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XListComponent, selector: "x-list" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
269
268
  }
270
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownPortalComponent, decorators: [{
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownPortalComponent, decorators: [{
271
270
  type: Component,
272
- args: [{ selector: `${XDropdownPortalPrefix}`, standalone: true, imports: [CommonModule, FormsModule, XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div\r\n #dropdownPortal\r\n class=\"x-dropdown-portal\"\r\n [style.minWidth]=\"getMinWidth\"\r\n [style.maxWidth]=\"getMaxWidth\"\r\n [style.minHeight]=\"getMinHeight\"\r\n [style.maxHeight]=\"getMaxHeight\"\r\n>\r\n <x-list\r\n [data]=\"data\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [(ngModel)]=\"activatedId\"\r\n (nodeMouseenter)=\"onEnter($event)\"\r\n (nodeMouseleave)=\"onLeave()\"\r\n ></x-list>\r\n</div>\r\n", styles: ["x-dropdown-portal{width:100%}.x-dropdown-portal{margin:.0625rem 0;padding:.325rem 0;background-color:var(--x-background);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto}.x-dropdown-portal .x-open-portal{background-color:var(--x-background-a200)}.x-dropdown-portal-child{margin-top:-.3875rem}\n"] }]
271
+ args: [{ selector: `${XDropdownPortalPrefix}`, standalone: true, imports: [FormsModule, XListComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div\r\n #dropdownPortal\r\n class=\"x-dropdown-portal\"\r\n [style.minWidth]=\"getMinWidth\"\r\n [style.maxWidth]=\"getMaxWidth\"\r\n [style.minHeight]=\"getMinHeight\"\r\n [style.maxHeight]=\"getMaxHeight\"\r\n>\r\n <x-list\r\n [data]=\"data\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [(ngModel)]=\"activatedId\"\r\n (nodeMouseenter)=\"onEnter($event)\"\r\n (nodeMouseleave)=\"onLeave()\"\r\n ></x-list>\r\n</div>\r\n", styles: ["x-dropdown-portal{width:100%}.x-dropdown-portal{margin:.0625rem 0;padding:.325rem 0;background-color:var(--x-background);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);overflow:auto}.x-dropdown-portal .x-open-portal{background-color:var(--x-background-a200)}.x-dropdown-portal-child{margin-top:-.3875rem}\n"] }]
273
272
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XPortalService }, { type: i2.Overlay }, { type: i0.ViewContainerRef }], propDecorators: { placement: [{
274
273
  type: HostBinding,
275
274
  args: ['@x-connect-base-animation']
@@ -407,9 +406,7 @@ class XDropdownComponent extends XDropdownProperty {
407
406
  }
408
407
  setPosition(config) {
409
408
  let position = config.positionStrategy;
410
- position.positionChanges
411
- .pipe(takeUntil(this._unSubject))
412
- .subscribe((pos) => {
409
+ position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos) => {
413
410
  const place = XPortalConnectedPosition.get(pos.connectionPair);
414
411
  place !== this.placement && this.positionChange.next(place);
415
412
  });
@@ -447,13 +444,7 @@ class XDropdownComponent extends XDropdownProperty {
447
444
  setPlacement() {
448
445
  return this.portalService.setPlacement({
449
446
  elementRef: this.dropdown,
450
- placement: [
451
- this.placement,
452
- 'bottom-start',
453
- 'top-start',
454
- 'bottom-end',
455
- 'top-end'
456
- ],
447
+ placement: [this.placement, 'bottom-start', 'top-start', 'bottom-end', 'top-end'],
457
448
  transformOriginOn: 'x-dropdown-portal'
458
449
  });
459
450
  }
@@ -461,9 +452,7 @@ class XDropdownComponent extends XDropdownProperty {
461
452
  XSetData(this.data, this._unSubject).subscribe((x) => {
462
453
  this.datas = x;
463
454
  if (!this.children) {
464
- this.nodes = x
465
- .filter((y) => XIsEmpty(y.pid))
466
- .map((y) => XGetChildren(x, y, 0));
455
+ this.nodes = x.filter((y) => XIsEmpty(y.pid)).map((y) => XGetChildren(x, y, 0));
467
456
  }
468
457
  else {
469
458
  this.nodes = x;
@@ -471,23 +460,23 @@ class XDropdownComponent extends XDropdownProperty {
471
460
  this.cdr.detectChanges();
472
461
  });
473
462
  }
474
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
475
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: XDropdownComponent, isStandalone: true, selector: "x-dropdown", viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #dropdown\r\n class=\"x-dropdown\"\r\n [ngClass]=\"classMap\"\r\n [class.x-visible]=\"visible\"\r\n (mouseenter)=\"onEnter()\"\r\n (mouseleave)=\"onLeave()\"\r\n (click)=\"showPortal()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-dropdown{margin:0;padding:0;display:inline-block}.x-dropdown.x-visible{color:var(--x-primary)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
463
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
464
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.7", type: XDropdownComponent, isStandalone: true, selector: "x-dropdown", viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #dropdown\r\n class=\"x-dropdown\"\r\n [ngClass]=\"classMap\"\r\n [class.x-visible]=\"visible\"\r\n (mouseenter)=\"onEnter()\"\r\n (mouseleave)=\"onLeave()\"\r\n (click)=\"showPortal()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-dropdown{margin:0;padding:0;display:inline-block}.x-dropdown.x-visible{color:var(--x-primary)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
476
465
  }
477
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownComponent, decorators: [{
466
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownComponent, decorators: [{
478
467
  type: Component,
479
- args: [{ selector: `${XDropdownPrefix}`, standalone: true, imports: [CommonModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #dropdown\r\n class=\"x-dropdown\"\r\n [ngClass]=\"classMap\"\r\n [class.x-visible]=\"visible\"\r\n (mouseenter)=\"onEnter()\"\r\n (mouseleave)=\"onLeave()\"\r\n (click)=\"showPortal()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-dropdown{margin:0;padding:0;display:inline-block}.x-dropdown.x-visible{color:var(--x-primary)}\n"] }]
468
+ args: [{ selector: `${XDropdownPrefix}`, standalone: true, imports: [NgClass], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n #dropdown\r\n class=\"x-dropdown\"\r\n [ngClass]=\"classMap\"\r\n [class.x-visible]=\"visible\"\r\n (mouseenter)=\"onEnter()\"\r\n (mouseleave)=\"onLeave()\"\r\n (click)=\"showPortal()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-dropdown{margin:0;padding:0;display:inline-block}.x-dropdown.x-visible{color:var(--x-primary)}\n"] }]
480
469
  }], propDecorators: { dropdown: [{
481
470
  type: ViewChild,
482
471
  args: ['dropdown', { static: true }]
483
472
  }] } });
484
473
 
485
474
  class XDropdownModule {
486
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
487
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: XDropdownModule, imports: [XDropdownComponent], exports: [XDropdownComponent] }); }
488
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownModule, imports: [XDropdownComponent] }); }
475
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
476
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.7", ngImport: i0, type: XDropdownModule, imports: [XDropdownComponent], exports: [XDropdownComponent] }); }
477
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownModule }); }
489
478
  }
490
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: XDropdownModule, decorators: [{
479
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.7", ngImport: i0, type: XDropdownModule, decorators: [{
491
480
  type: NgModule,
492
481
  args: [{
493
482
  imports: [XDropdownComponent],