@ng-nest/ui 17.0.10 → 17.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/base-form/base-form.property.d.ts +1 -5
  2. package/esm2022/affix/affix.component.mjs +4 -4
  3. package/esm2022/affix/affix.module.mjs +5 -5
  4. package/esm2022/affix/affix.property.mjs +4 -4
  5. package/esm2022/alert/alert.component.mjs +4 -4
  6. package/esm2022/alert/alert.module.mjs +5 -5
  7. package/esm2022/alert/alert.property.mjs +4 -4
  8. package/esm2022/anchor/anchor-inner.component.mjs +4 -4
  9. package/esm2022/anchor/anchor.component.mjs +4 -4
  10. package/esm2022/anchor/anchor.module.mjs +5 -5
  11. package/esm2022/anchor/anchor.property.mjs +7 -7
  12. package/esm2022/api/api.component.mjs +4 -4
  13. package/esm2022/api/api.module.mjs +5 -5
  14. package/esm2022/auto-complete/auto-complete-portal.component.mjs +4 -4
  15. package/esm2022/auto-complete/auto-complete.component.mjs +4 -4
  16. package/esm2022/auto-complete/auto-complete.module.mjs +5 -5
  17. package/esm2022/auto-complete/auto-complete.property.mjs +4 -4
  18. package/esm2022/avatar/avatar-group.component.mjs +4 -4
  19. package/esm2022/avatar/avatar.component.mjs +4 -4
  20. package/esm2022/avatar/avatar.module.mjs +5 -5
  21. package/esm2022/avatar/avatar.property.mjs +7 -7
  22. package/esm2022/back-top/back-top.component.mjs +4 -4
  23. package/esm2022/back-top/back-top.module.mjs +5 -5
  24. package/esm2022/back-top/back-top.property.mjs +4 -4
  25. package/esm2022/badge/badge.component.mjs +4 -4
  26. package/esm2022/badge/badge.module.mjs +5 -5
  27. package/esm2022/badge/badge.property.mjs +4 -4
  28. package/esm2022/base-form/base-form.component.mjs +4 -4
  29. package/esm2022/base-form/base-form.module.mjs +5 -5
  30. package/esm2022/base-form/base-form.property.mjs +4 -10
  31. package/esm2022/border/border.component.mjs +4 -4
  32. package/esm2022/border/border.module.mjs +5 -5
  33. package/esm2022/button/button.component.mjs +4 -4
  34. package/esm2022/button/button.module.mjs +5 -5
  35. package/esm2022/button/button.property.mjs +7 -7
  36. package/esm2022/button/buttons.component.mjs +4 -4
  37. package/esm2022/calendar/calendar.component.mjs +4 -4
  38. package/esm2022/calendar/calendar.module.mjs +5 -5
  39. package/esm2022/calendar/calendar.property.mjs +4 -4
  40. package/esm2022/card/card.component.mjs +4 -4
  41. package/esm2022/card/card.module.mjs +5 -5
  42. package/esm2022/card/card.property.mjs +4 -4
  43. package/esm2022/carousel/carousel-panel.component.mjs +4 -4
  44. package/esm2022/carousel/carousel.component.mjs +4 -4
  45. package/esm2022/carousel/carousel.module.mjs +5 -5
  46. package/esm2022/carousel/carousel.property.mjs +7 -7
  47. package/esm2022/cascade/cascade-portal.component.mjs +4 -4
  48. package/esm2022/cascade/cascade.component.mjs +4 -4
  49. package/esm2022/cascade/cascade.module.mjs +5 -5
  50. package/esm2022/cascade/cascade.property.mjs +4 -4
  51. package/esm2022/checkbox/checkbox.component.mjs +4 -4
  52. package/esm2022/checkbox/checkbox.module.mjs +5 -5
  53. package/esm2022/checkbox/checkbox.property.mjs +4 -4
  54. package/esm2022/collapse/collapse-panel.component.mjs +4 -4
  55. package/esm2022/collapse/collapse.component.mjs +4 -4
  56. package/esm2022/collapse/collapse.module.mjs +5 -5
  57. package/esm2022/collapse/collapse.property.mjs +7 -7
  58. package/esm2022/color/color.component.mjs +4 -4
  59. package/esm2022/color/color.module.mjs +5 -5
  60. package/esm2022/color/color.property.mjs +4 -4
  61. package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
  62. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  63. package/esm2022/color-picker/color-picker.module.mjs +5 -5
  64. package/esm2022/color-picker/color-picker.property.mjs +4 -4
  65. package/esm2022/comment/comment-reply.component.mjs +4 -4
  66. package/esm2022/comment/comment.component.mjs +4 -4
  67. package/esm2022/comment/comment.module.mjs +5 -5
  68. package/esm2022/comment/comment.property.mjs +7 -7
  69. package/esm2022/container/aside.component.mjs +4 -4
  70. package/esm2022/container/container.component.mjs +4 -4
  71. package/esm2022/container/container.module.mjs +5 -5
  72. package/esm2022/container/container.property.mjs +13 -13
  73. package/esm2022/container/footer.component.mjs +4 -4
  74. package/esm2022/container/header.component.mjs +4 -4
  75. package/esm2022/container/main.component.mjs +4 -4
  76. package/esm2022/core/config/config.service.mjs +4 -4
  77. package/esm2022/core/services/http.service.mjs +4 -4
  78. package/esm2022/core/services/preloading-strategy.service.mjs +4 -4
  79. package/esm2022/core/services/storage.service.mjs +4 -4
  80. package/esm2022/core/theme/theme.service.mjs +4 -4
  81. package/esm2022/crumb/crumb.component.mjs +4 -4
  82. package/esm2022/crumb/crumb.module.mjs +5 -5
  83. package/esm2022/crumb/crumb.property.mjs +4 -4
  84. package/esm2022/date-picker/date-picker-portal.component.mjs +4 -4
  85. package/esm2022/date-picker/date-picker.component.mjs +4 -4
  86. package/esm2022/date-picker/date-picker.module.mjs +5 -5
  87. package/esm2022/date-picker/date-picker.property.mjs +19 -19
  88. package/esm2022/date-picker/date-quarter.pipe.mjs +4 -4
  89. package/esm2022/date-picker/date-range-portal.component.mjs +4 -4
  90. package/esm2022/date-picker/date-range.component.mjs +4 -4
  91. package/esm2022/date-picker/picker-date.component.mjs +4 -4
  92. package/esm2022/date-picker/picker-month.component.mjs +4 -4
  93. package/esm2022/date-picker/picker-quarter.component.mjs +4 -4
  94. package/esm2022/date-picker/picker-year.component.mjs +4 -4
  95. package/esm2022/description/description-item.component.mjs +4 -4
  96. package/esm2022/description/description.component.mjs +4 -4
  97. package/esm2022/description/description.module.mjs +5 -5
  98. package/esm2022/description/description.property.mjs +7 -7
  99. package/esm2022/dialog/dialog-container.component.mjs +4 -4
  100. package/esm2022/dialog/dialog-portal.component.mjs +4 -4
  101. package/esm2022/dialog/dialog-portal.directives.mjs +19 -19
  102. package/esm2022/dialog/dialog.component.mjs +4 -4
  103. package/esm2022/dialog/dialog.module.mjs +5 -5
  104. package/esm2022/dialog/dialog.property.mjs +7 -7
  105. package/esm2022/dialog/dialog.service.mjs +4 -4
  106. package/esm2022/doc/doc.component.mjs +4 -4
  107. package/esm2022/doc/doc.module.mjs +5 -5
  108. package/esm2022/drag/drag.directive.mjs +4 -4
  109. package/esm2022/drag/drag.module.mjs +5 -5
  110. package/esm2022/drag/drag.property.mjs +4 -4
  111. package/esm2022/drawer/drawer-container.component.mjs +4 -4
  112. package/esm2022/drawer/drawer-portal.component.mjs +4 -4
  113. package/esm2022/drawer/drawer-portal.directives.mjs +10 -10
  114. package/esm2022/drawer/drawer.component.mjs +4 -4
  115. package/esm2022/drawer/drawer.module.mjs +5 -5
  116. package/esm2022/drawer/drawer.property.mjs +7 -7
  117. package/esm2022/drawer/drawer.service.mjs +4 -4
  118. package/esm2022/dropdown/dropdown-portal.component.mjs +4 -4
  119. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  120. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  121. package/esm2022/dropdown/dropdown.property.mjs +4 -4
  122. package/esm2022/empty/empty.component.mjs +4 -4
  123. package/esm2022/empty/empty.module.mjs +5 -5
  124. package/esm2022/empty/empty.property.mjs +4 -4
  125. package/esm2022/examples/examples.component.mjs +4 -4
  126. package/esm2022/examples/examples.module.mjs +5 -5
  127. package/esm2022/find/find.component.mjs +4 -4
  128. package/esm2022/find/find.module.mjs +5 -5
  129. package/esm2022/find/find.property.mjs +4 -4
  130. package/esm2022/form/control.component.mjs +4 -4
  131. package/esm2022/form/form.component.mjs +4 -4
  132. package/esm2022/form/form.module.mjs +5 -5
  133. package/esm2022/form/form.property.mjs +7 -7
  134. package/esm2022/highlight/highlight.component.mjs +4 -4
  135. package/esm2022/highlight/highlight.module.mjs +5 -5
  136. package/esm2022/highlight/highlight.property.mjs +4 -4
  137. package/esm2022/i18n/i18n.directive.mjs +4 -4
  138. package/esm2022/i18n/i18n.module.mjs +5 -5
  139. package/esm2022/i18n/i18n.pipe.mjs +4 -4
  140. package/esm2022/i18n/i18n.service.mjs +4 -4
  141. package/esm2022/icon/icon.component.mjs +4 -4
  142. package/esm2022/icon/icon.module.mjs +5 -5
  143. package/esm2022/icon/icon.property.mjs +4 -4
  144. package/esm2022/icon/icon.service.mjs +4 -4
  145. package/esm2022/image/image-group.component.mjs +4 -4
  146. package/esm2022/image/image-preview.component.mjs +4 -4
  147. package/esm2022/image/image.component.mjs +4 -4
  148. package/esm2022/image/image.module.mjs +5 -5
  149. package/esm2022/image/image.property.mjs +7 -7
  150. package/esm2022/inner/inner.component.mjs +4 -4
  151. package/esm2022/inner/inner.module.mjs +5 -5
  152. package/esm2022/inner/inner.property.mjs +4 -4
  153. package/esm2022/input/input-group.component.mjs +4 -4
  154. package/esm2022/input/input.component.mjs +4 -4
  155. package/esm2022/input/input.module.mjs +5 -5
  156. package/esm2022/input/input.property.mjs +7 -7
  157. package/esm2022/input-number/input-number.component.mjs +4 -4
  158. package/esm2022/input-number/input-number.module.mjs +5 -5
  159. package/esm2022/input-number/input-number.property.mjs +4 -4
  160. package/esm2022/keyword/keyword.directive.mjs +4 -4
  161. package/esm2022/keyword/keyword.module.mjs +5 -5
  162. package/esm2022/keyword/keyword.property.mjs +4 -4
  163. package/esm2022/layout/col.component.mjs +4 -4
  164. package/esm2022/layout/layout.module.mjs +5 -5
  165. package/esm2022/layout/layout.property.mjs +7 -7
  166. package/esm2022/layout/row.component.mjs +4 -4
  167. package/esm2022/link/link.component.mjs +4 -4
  168. package/esm2022/link/link.module.mjs +5 -5
  169. package/esm2022/link/link.property.mjs +4 -4
  170. package/esm2022/list/list-drop-group.directive.mjs +4 -4
  171. package/esm2022/list/list-option.component.mjs +4 -4
  172. package/esm2022/list/list.component.mjs +4 -4
  173. package/esm2022/list/list.module.mjs +5 -5
  174. package/esm2022/list/list.property.mjs +7 -7
  175. package/esm2022/loading/loading.component.mjs +4 -4
  176. package/esm2022/loading/loading.module.mjs +5 -5
  177. package/esm2022/loading/loading.property.mjs +4 -4
  178. package/esm2022/menu/menu-node.component.mjs +4 -4
  179. package/esm2022/menu/menu.component.mjs +4 -4
  180. package/esm2022/menu/menu.module.mjs +5 -5
  181. package/esm2022/menu/menu.property.mjs +7 -7
  182. package/esm2022/message/message.component.mjs +4 -4
  183. package/esm2022/message/message.module.mjs +5 -5
  184. package/esm2022/message/message.service.mjs +4 -4
  185. package/esm2022/message-box/message-box.component.mjs +4 -4
  186. package/esm2022/message-box/message-box.module.mjs +5 -5
  187. package/esm2022/message-box/message-box.service.mjs +4 -4
  188. package/esm2022/notification/notification.component.mjs +4 -4
  189. package/esm2022/notification/notification.module.mjs +5 -5
  190. package/esm2022/notification/notification.service.mjs +4 -4
  191. package/esm2022/outlet/outlet.directive.mjs +4 -4
  192. package/esm2022/outlet/outlet.module.mjs +5 -5
  193. package/esm2022/page-header/page-header.component.mjs +4 -4
  194. package/esm2022/page-header/page-header.module.mjs +5 -5
  195. package/esm2022/page-header/page-header.property.mjs +4 -4
  196. package/esm2022/pagination/pagination.component.mjs +4 -4
  197. package/esm2022/pagination/pagination.module.mjs +5 -5
  198. package/esm2022/pagination/pagination.property.mjs +4 -4
  199. package/esm2022/pattern/pattern.component.mjs +4 -4
  200. package/esm2022/pattern/pattern.module.mjs +5 -5
  201. package/esm2022/popconfirm/popconfirm.component.mjs +4 -4
  202. package/esm2022/popconfirm/popconfirm.module.mjs +5 -5
  203. package/esm2022/popconfirm/popconfirm.property.mjs +4 -4
  204. package/esm2022/popover/popover-portal.component.mjs +4 -4
  205. package/esm2022/popover/popover.directive.mjs +4 -4
  206. package/esm2022/popover/popover.module.mjs +5 -5
  207. package/esm2022/popover/popover.property.mjs +4 -4
  208. package/esm2022/portal/portal.module.mjs +5 -5
  209. package/esm2022/portal/portal.service.mjs +4 -4
  210. package/esm2022/progress/progress.component.mjs +4 -4
  211. package/esm2022/progress/progress.module.mjs +5 -5
  212. package/esm2022/progress/progress.property.mjs +4 -4
  213. package/esm2022/radio/radio.component.mjs +4 -4
  214. package/esm2022/radio/radio.module.mjs +5 -5
  215. package/esm2022/radio/radio.property.mjs +4 -4
  216. package/esm2022/rate/rate.component.mjs +4 -4
  217. package/esm2022/rate/rate.module.mjs +5 -5
  218. package/esm2022/rate/rate.property.mjs +4 -4
  219. package/esm2022/resizable/resizable.directive.mjs +4 -4
  220. package/esm2022/resizable/resizable.module.mjs +5 -5
  221. package/esm2022/resizable/resizable.property.mjs +4 -4
  222. package/esm2022/result/result.component.mjs +4 -4
  223. package/esm2022/result/result.module.mjs +5 -5
  224. package/esm2022/result/result.property.mjs +4 -4
  225. package/esm2022/ripple/ripple.directive.mjs +4 -4
  226. package/esm2022/ripple/ripple.module.mjs +5 -5
  227. package/esm2022/ripple/ripple.property.mjs +4 -4
  228. package/esm2022/select/select-portal.component.mjs +4 -4
  229. package/esm2022/select/select.component.mjs +5 -5
  230. package/esm2022/select/select.module.mjs +5 -5
  231. package/esm2022/select/select.property.mjs +4 -4
  232. package/esm2022/skeleton/skeleton.component.mjs +4 -4
  233. package/esm2022/skeleton/skeleton.module.mjs +5 -5
  234. package/esm2022/skeleton/skeleton.property.mjs +4 -4
  235. package/esm2022/slider/slider.component.mjs +4 -4
  236. package/esm2022/slider/slider.module.mjs +5 -5
  237. package/esm2022/slider/slider.property.mjs +4 -4
  238. package/esm2022/slider-select/slider-select.component.mjs +4 -4
  239. package/esm2022/slider-select/slider-select.module.mjs +5 -5
  240. package/esm2022/slider-select/slider-select.property.mjs +4 -4
  241. package/esm2022/statistic/countdown.component.mjs +4 -4
  242. package/esm2022/statistic/statistic.component.mjs +4 -4
  243. package/esm2022/statistic/statistic.module.mjs +5 -5
  244. package/esm2022/statistic/statistic.property.mjs +7 -7
  245. package/esm2022/steps/steps.component.mjs +4 -4
  246. package/esm2022/steps/steps.module.mjs +5 -5
  247. package/esm2022/steps/steps.property.mjs +4 -4
  248. package/esm2022/switch/switch.component.mjs +4 -4
  249. package/esm2022/switch/switch.module.mjs +5 -5
  250. package/esm2022/switch/switch.property.mjs +4 -4
  251. package/esm2022/table/table-body.component.mjs +4 -4
  252. package/esm2022/table/table-foot.component.mjs +4 -4
  253. package/esm2022/table/table-head.component.mjs +4 -4
  254. package/esm2022/table/table.component.mjs +4 -4
  255. package/esm2022/table/table.module.mjs +5 -5
  256. package/esm2022/table/table.property.mjs +13 -13
  257. package/esm2022/tabs/tab-content.component.mjs +4 -4
  258. package/esm2022/tabs/tab-link.directive.mjs +7 -7
  259. package/esm2022/tabs/tab.component.mjs +4 -4
  260. package/esm2022/tabs/tabs.component.mjs +4 -4
  261. package/esm2022/tabs/tabs.module.mjs +5 -5
  262. package/esm2022/tabs/tabs.property.mjs +7 -7
  263. package/esm2022/tag/tag.component.mjs +4 -4
  264. package/esm2022/tag/tag.module.mjs +5 -5
  265. package/esm2022/tag/tag.property.mjs +4 -4
  266. package/esm2022/text-retract/text-retract.component.mjs +4 -4
  267. package/esm2022/text-retract/text-retract.module.mjs +5 -5
  268. package/esm2022/text-retract/text-retract.property.mjs +4 -4
  269. package/esm2022/textarea/textarea.component.mjs +4 -4
  270. package/esm2022/textarea/textarea.module.mjs +5 -5
  271. package/esm2022/textarea/textarea.property.mjs +9 -4
  272. package/esm2022/theme/theme.component.mjs +4 -4
  273. package/esm2022/theme/theme.module.mjs +5 -5
  274. package/esm2022/theme/theme.property.mjs +4 -4
  275. package/esm2022/time-ago/time-ago.module.mjs +5 -5
  276. package/esm2022/time-ago/time-ago.pipe.mjs +4 -4
  277. package/esm2022/time-picker/time-picker-frame.component.mjs +4 -4
  278. package/esm2022/time-picker/time-picker-portal.component.mjs +4 -4
  279. package/esm2022/time-picker/time-picker.component.mjs +4 -4
  280. package/esm2022/time-picker/time-picker.module.mjs +5 -5
  281. package/esm2022/time-picker/time-picker.property.mjs +4 -4
  282. package/esm2022/time-range/time-range.module.mjs +5 -5
  283. package/esm2022/time-range/time-range.pipe.mjs +4 -4
  284. package/esm2022/timeline/timeline.component.mjs +4 -4
  285. package/esm2022/timeline/timeline.module.mjs +5 -5
  286. package/esm2022/timeline/timeline.property.mjs +4 -4
  287. package/esm2022/tooltip/tooltip-portal.component.mjs +4 -4
  288. package/esm2022/tooltip/tooltip.directive.mjs +4 -4
  289. package/esm2022/tooltip/tooltip.module.mjs +5 -5
  290. package/esm2022/tooltip/tooltip.property.mjs +4 -4
  291. package/esm2022/transfer/transfer.component.mjs +4 -4
  292. package/esm2022/transfer/transfer.module.mjs +5 -5
  293. package/esm2022/transfer/transfer.property.mjs +4 -4
  294. package/esm2022/tree/tree-node.component.mjs +4 -4
  295. package/esm2022/tree/tree.component.mjs +4 -4
  296. package/esm2022/tree/tree.module.mjs +5 -5
  297. package/esm2022/tree/tree.property.mjs +7 -7
  298. package/esm2022/tree/tree.service.mjs +4 -4
  299. package/esm2022/tree-file/tree-file.component.mjs +4 -4
  300. package/esm2022/tree-file/tree-file.module.mjs +5 -5
  301. package/esm2022/tree-file/tree-file.property.mjs +4 -4
  302. package/esm2022/tree-select/tree-select-portal.component.mjs +4 -4
  303. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  304. package/esm2022/tree-select/tree-select.module.mjs +5 -5
  305. package/esm2022/tree-select/tree-select.property.mjs +4 -4
  306. package/esm2022/typography/typography.component.mjs +4 -4
  307. package/esm2022/typography/typography.module.mjs +5 -5
  308. package/esm2022/typography/typography.property.mjs +4 -4
  309. package/esm2022/upload/upload-portal.component.mjs +4 -4
  310. package/esm2022/upload/upload.component.mjs +4 -4
  311. package/esm2022/upload/upload.module.mjs +5 -5
  312. package/esm2022/upload/upload.property.mjs +4 -4
  313. package/fesm2022/ng-nest-ui-affix.mjs +10 -10
  314. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  315. package/fesm2022/ng-nest-ui-alert.mjs +10 -10
  316. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  317. package/fesm2022/ng-nest-ui-anchor.mjs +16 -16
  318. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  319. package/fesm2022/ng-nest-ui-api.mjs +7 -7
  320. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  321. package/fesm2022/ng-nest-ui-auto-complete.mjs +13 -13
  322. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  323. package/fesm2022/ng-nest-ui-avatar.mjs +16 -16
  324. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  325. package/fesm2022/ng-nest-ui-back-top.mjs +10 -10
  326. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  327. package/fesm2022/ng-nest-ui-badge.mjs +10 -10
  328. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  329. package/fesm2022/ng-nest-ui-base-form.mjs +10 -16
  330. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  331. package/fesm2022/ng-nest-ui-border.mjs +7 -7
  332. package/fesm2022/ng-nest-ui-border.mjs.map +1 -1
  333. package/fesm2022/ng-nest-ui-button.mjs +16 -16
  334. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  335. package/fesm2022/ng-nest-ui-calendar.mjs +10 -10
  336. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  337. package/fesm2022/ng-nest-ui-card.mjs +10 -10
  338. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  339. package/fesm2022/ng-nest-ui-carousel.mjs +16 -16
  340. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  341. package/fesm2022/ng-nest-ui-cascade.mjs +13 -13
  342. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  343. package/fesm2022/ng-nest-ui-checkbox.mjs +10 -10
  344. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  345. package/fesm2022/ng-nest-ui-collapse.mjs +16 -16
  346. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  347. package/fesm2022/ng-nest-ui-color-picker.mjs +13 -13
  348. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  349. package/fesm2022/ng-nest-ui-color.mjs +10 -10
  350. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  351. package/fesm2022/ng-nest-ui-comment.mjs +16 -16
  352. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  353. package/fesm2022/ng-nest-ui-container.mjs +31 -31
  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-core.mjs.map +1 -1
  357. package/fesm2022/ng-nest-ui-crumb.mjs +10 -10
  358. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  359. package/fesm2022/ng-nest-ui-date-picker.mjs +49 -49
  360. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  361. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  362. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  363. package/fesm2022/ng-nest-ui-dialog.mjs +40 -40
  364. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  365. package/fesm2022/ng-nest-ui-doc.mjs +7 -7
  366. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  368. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  369. package/fesm2022/ng-nest-ui-drawer.mjs +31 -31
  370. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  371. package/fesm2022/ng-nest-ui-dropdown.mjs +13 -13
  372. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  373. package/fesm2022/ng-nest-ui-empty.mjs +10 -10
  374. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  375. package/fesm2022/ng-nest-ui-examples.mjs +7 -7
  376. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  377. package/fesm2022/ng-nest-ui-find.mjs +10 -10
  378. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  379. package/fesm2022/ng-nest-ui-form.mjs +16 -16
  380. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  381. package/fesm2022/ng-nest-ui-highlight.mjs +10 -10
  382. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  383. package/fesm2022/ng-nest-ui-i18n.mjs +13 -13
  384. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  385. package/fesm2022/ng-nest-ui-icon.mjs +13 -13
  386. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  387. package/fesm2022/ng-nest-ui-image.mjs +19 -19
  388. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-inner.mjs +10 -10
  390. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  391. package/fesm2022/ng-nest-ui-input-number.mjs +10 -10
  392. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  393. package/fesm2022/ng-nest-ui-input.mjs +16 -16
  394. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  395. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  396. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  397. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  398. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  399. package/fesm2022/ng-nest-ui-link.mjs +10 -10
  400. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  401. package/fesm2022/ng-nest-ui-list.mjs +19 -19
  402. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  403. package/fesm2022/ng-nest-ui-loading.mjs +10 -10
  404. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  405. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  406. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  407. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  408. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  409. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  410. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  411. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  412. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  413. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  414. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-page-header.mjs +10 -10
  416. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  417. package/fesm2022/ng-nest-ui-pagination.mjs +10 -10
  418. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
  420. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  421. package/fesm2022/ng-nest-ui-popconfirm.mjs +10 -10
  422. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  423. package/fesm2022/ng-nest-ui-popover.mjs +13 -13
  424. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  425. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  426. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  427. package/fesm2022/ng-nest-ui-progress.mjs +10 -10
  428. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  429. package/fesm2022/ng-nest-ui-radio.mjs +10 -10
  430. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  431. package/fesm2022/ng-nest-ui-rate.mjs +10 -10
  432. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  433. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  434. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  435. package/fesm2022/ng-nest-ui-result.mjs +10 -10
  436. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  437. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  438. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  439. package/fesm2022/ng-nest-ui-select.mjs +14 -14
  440. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  441. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  442. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  443. package/fesm2022/ng-nest-ui-slider-select.mjs +10 -10
  444. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  445. package/fesm2022/ng-nest-ui-slider.mjs +10 -10
  446. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  447. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  448. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  449. package/fesm2022/ng-nest-ui-steps.mjs +10 -10
  450. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  451. package/fesm2022/ng-nest-ui-switch.mjs +10 -10
  452. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  453. package/fesm2022/ng-nest-ui-table.mjs +28 -28
  454. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  455. package/fesm2022/ng-nest-ui-tabs.mjs +25 -25
  456. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  457. package/fesm2022/ng-nest-ui-tag.mjs +10 -10
  458. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  459. package/fesm2022/ng-nest-ui-text-retract.mjs +10 -10
  460. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  461. package/fesm2022/ng-nest-ui-textarea.mjs +15 -10
  462. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  463. package/fesm2022/ng-nest-ui-theme.mjs +10 -10
  464. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  465. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  466. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  467. package/fesm2022/ng-nest-ui-time-picker.mjs +16 -16
  468. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  469. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  470. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  471. package/fesm2022/ng-nest-ui-timeline.mjs +10 -10
  472. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  473. package/fesm2022/ng-nest-ui-tooltip.mjs +13 -13
  474. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  475. package/fesm2022/ng-nest-ui-transfer.mjs +10 -10
  476. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  477. package/fesm2022/ng-nest-ui-tree-file.mjs +10 -10
  478. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  479. package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
  480. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  481. package/fesm2022/ng-nest-ui-tree.mjs +19 -19
  482. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  483. package/fesm2022/ng-nest-ui-typography.mjs +10 -10
  484. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  485. package/fesm2022/ng-nest-ui-upload.mjs +13 -13
  486. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  487. package/package.json +113 -113
  488. package/textarea/textarea.property.d.ts +6 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-time-picker.mjs","sources":["../../../../lib/ng-nest/ui/time-picker/time-picker.property.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-frame.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-frame.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker-portal.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-portal.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker.module.ts","../../../../lib/ng-nest/ui/time-picker/ng-nest-ui-time-picker.ts"],"sourcesContent":["import {\r\n XBoolean,\r\n XCorner,\r\n XData,\r\n XDataConvert,\r\n XIdentityProperty,\r\n XInputBoolean,\r\n XInputNumber,\r\n XNumber,\r\n XSize,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * TimePicker\r\n * @selector x-time-picker\r\n * @decorator component\r\n */\r\nexport const XTimePickerPrefix = 'x-time-picker';\r\nconst X_CONFIG_NAME = 'timePicker';\r\n\r\n/**\r\n * TimePicker Property\r\n */\r\n@Component({ selector: `${XTimePickerPrefix}-property`, template: '' })\r\nexport class XTimePickerProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 时间类型\r\n * @en_US Time type\r\n */\r\n @Input() type: XTimePickerType = 'time';\r\n /**\r\n * @zh_CN 格式化\r\n * @en_US Format\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, 'HH:mm:ss') format?: string;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XCorner>(X_CONFIG_NAME, 'bottom-start') placement?: XCorner;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') override size!: XSize;\r\n /**\r\n * @zh_CN 使用12小时制\r\n * @en_US Use 12 hour clock\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, false) use12Hours!: XBoolean;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) bordered!: XBoolean;\r\n /**\r\n * @zh_CN 小时选项间隔\r\n * @en_US Hour option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) hourStep!: XNumber;\r\n /**\r\n * @zh_CN 分钟选项间隔\r\n * @en_US Minute option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) minuteStep!: XNumber;\r\n /**\r\n * @zh_CN 秒选项间隔\r\n * @en_US Second option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) secondStep!: XNumber;\r\n /**\r\n * @zh_CN 快捷选择按钮,支持此刻以及自定义\r\n * @en_US Quick selection button, support now and custom\r\n */\r\n @Input() @XDataConvert() preset: XData<XTimePickerPreset> = [];\r\n /**\r\n * @zh_CN 禁用的时间\r\n * @en_US Disabled time\r\n */\r\n @Input() disabledTime?: XTimePickerDisabledTime;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeEmit = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * TimePicker Option\r\n * @undocument true\r\n */\r\nexport interface XTimePickerOption extends XFormOption {\r\n /**\r\n * @zh_CN 时间类型\r\n * @en_US Time type\r\n */\r\n type?: XTimePickerType;\r\n /**\r\n * @zh_CN 格式化\r\n * @en_US Format\r\n */\r\n format?: string;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n nodeClick?: (date: number) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 时间选择\r\n * @en_US Time selection\r\n */\r\nexport type XTimePickerType = 'time' | 'hour' | 'minute';\r\n\r\n/**\r\n * @zh_CN 快捷选择按钮\r\n * @en_US Quick selection button\r\n */\r\nexport interface XTimePickerPreset extends XIdentityProperty {\r\n /**\r\n * @zh_CN 自定义函数\r\n * @en_US Custom function\r\n */\r\n func: () => Date;\r\n}\r\n\r\n/**\r\n * TimePickerPortal\r\n * @selector x-time-picker-portal\r\n * @decorator component\r\n */\r\nexport const XTimePickerPortalPrefix = 'x-time-picker-portal';\r\n\r\n/**\r\n * TimePickerFrame\r\n * @selector x-time-picker-frame\r\n * @decorator component\r\n */\r\nexport const XTimePickerFramePrefix = 'x-time-picker-frame';\r\n\r\n/**\r\n * @zh_CN 禁用时间的自定义类型\r\n * @en_US Disable custom type of time\r\n */\r\nexport type XTimePickerDisabledTime = (param?: any) => XTimePickerDisabledTimeFn;\r\n\r\n/**\r\n * @zh_CN 禁用时间的自定义函数\r\n * @en_US Disable custom type of time\r\n */\r\nexport type XTimePickerDisabledTimeFn = {\r\n /**\r\n * @zh_CN 禁用小时的自定义函数\r\n * @en_US Disable custom type of hours\r\n */\r\n disabledHours?: () => number[];\r\n /**\r\n * @zh_CN 禁用分钟的自定义函数\r\n * @en_US Disable custom type of minutes\r\n */\r\n disabledMinutes?: () => number[];\r\n /**\r\n * @zh_CN 禁用秒的自定义函数\r\n * @en_US Disable custom type of seconds\r\n */\r\n disabledSeconds?: () => number[];\r\n};\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n ViewEncapsulation,\r\n inject\r\n} from '@angular/core';\r\nimport { XTimePickerDisabledTime, XTimePickerFramePrefix, XTimePickerType } from './time-picker.property';\r\nimport {\r\n reqAnimFrame,\r\n XBoolean,\r\n XIdentity,\r\n XIsChange,\r\n XIsEmpty,\r\n XIsFunction,\r\n XIsNull,\r\n XIsNumber\r\n} from '@ng-nest/ui/core';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { takeUntil, map } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { XListComponent } from '@ng-nest/ui/list';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XTimePickerFramePrefix}`,\r\n standalone: true,\r\n imports: [FormsModule, XListComponent],\r\n templateUrl: './time-picker-frame.component.html',\r\n styleUrls: ['./time-picker-frame.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XTimePickerFrameComponent {\r\n @Input() type: XTimePickerType = 'time';\r\n @Input() value!: number | null;\r\n @Input() use12Hours!: XBoolean;\r\n @Input() hourStep = 1;\r\n @Input() minuteStep = 1;\r\n @Input() secondStep = 1;\r\n @Input() defaultNow = true;\r\n @Input() disabledTime?: XTimePickerDisabledTime;\r\n @Input() disabledTimeParam?: any;\r\n @Output() nodeEmit = new EventEmitter<Date>();\r\n @ViewChild('hourRef') hourRef?: ElementRef<HTMLElement>;\r\n @ViewChild('minuteRef') minuteRef?: ElementRef<HTMLElement>;\r\n @ViewChild('secondRef') secondRef?: ElementRef<HTMLElement>;\r\n @ViewChild('use12HoursRef') use12HoursRef?: ElementRef<HTMLElement>;\r\n model!: Date;\r\n hour!: number | null;\r\n minute!: number | null;\r\n second!: number | null;\r\n use12Hour: string = 'am';\r\n scrollAnimating: { [key: string]: boolean } = {};\r\n hourData: XIdentity[] = [];\r\n minuteData: XIdentity[] = [];\r\n secondData: XIdentity[] = [];\r\n use12HoursData: XIdentity[] = [];\r\n locale: XI18nTimePicker = {};\r\n isInit = false;\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { value, disabledTimeParam } = changes;\r\n if (XIsChange(value)) {\r\n // this.setDataInit();\r\n this.init();\r\n this.setScrollTop(true);\r\n }\r\n XIsChange(disabledTimeParam) && this.setDataInit();\r\n }\r\n\r\n ngOnInit() {\r\n this.setDataInit();\r\n this.init();\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n if (this.use12Hours) {\r\n this.setUse12HoursData();\r\n }\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setScrollTop();\r\n }\r\n\r\n setDataInit() {\r\n this.setHourData();\r\n this.setMinuteData();\r\n this.setSecondData();\r\n this.setUse12HoursData();\r\n }\r\n\r\n setDisabled(type: 'hours' | 'minutes' | 'seconds', num: number) {\r\n if (this.disabledTime && XIsFunction(this.disabledTime)) {\r\n const disabledMap = this.disabledTime(this.disabledTimeParam);\r\n const { disabledHours, disabledMinutes, disabledSeconds } = disabledMap;\r\n let disabledNums: number[] = [];\r\n if (type === 'hours') {\r\n disabledNums = disabledHours ? disabledHours() : [];\r\n } else if (type === 'minutes') {\r\n disabledNums = disabledMinutes ? disabledMinutes() : [];\r\n } else if (type === 'seconds') {\r\n disabledNums = disabledSeconds ? disabledSeconds() : [];\r\n }\r\n return disabledNums.includes(num);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n setHourData() {\r\n let length = this.use12Hours ? 12 : 24;\r\n this.hourData = Array.from({ length: Math.ceil(length / this.hourStep) }).map((_, i) => {\r\n if (this.use12Hours && i === 0) {\r\n i = 12;\r\n return {\r\n disabled: this.setDisabled('hours', i),\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n } else {\r\n const num = i * this.hourStep;\r\n return {\r\n disabled: this.setDisabled('hours', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n }\r\n });\r\n }\r\n\r\n setMinuteData() {\r\n this.minuteData = Array.from({ length: Math.ceil(60 / this.minuteStep) }).map((_, i) => {\r\n const num = i * this.minuteStep;\r\n return {\r\n disabled: this.setDisabled('minutes', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n });\r\n }\r\n\r\n setSecondData() {\r\n this.secondData = Array.from({ length: Math.ceil(60 / this.secondStep) }).map((_, i) => {\r\n const num: number = i * this.secondStep;\r\n return {\r\n disabled: this.setDisabled('seconds', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n });\r\n }\r\n\r\n setUse12HoursData() {\r\n this.use12HoursData = [\r\n {\r\n id: 'am',\r\n label: this.locale.am\r\n },\r\n {\r\n id: 'pm',\r\n label: this.locale.pm\r\n }\r\n ];\r\n }\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n this.setTime(this.model);\r\n } else {\r\n if (this.defaultNow) {\r\n this.model = this.setNow();\r\n } else {\r\n this.hour = null;\r\n this.minute = null;\r\n this.second = null;\r\n }\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setDefault() {\r\n this.model = new Date(this.value!);\r\n }\r\n\r\n setNow() {\r\n const def = new Date('1970-01-01');\r\n const now = new Date();\r\n return new Date(\r\n def.getFullYear(),\r\n def.getMonth(),\r\n def.getDate(),\r\n now.getHours(),\r\n now.getMinutes(),\r\n now.getSeconds()\r\n );\r\n }\r\n\r\n setZero() {\r\n const def = new Date('1970-01-01');\r\n return new Date(def.getFullYear(), def.getMonth(), def.getDate(), 0, 0, 0);\r\n }\r\n\r\n setTime(date: Date) {\r\n if (this.use12Hours) {\r\n let hour = date.getHours();\r\n if (hour > 12) {\r\n this.hour = hour - 12;\r\n this.use12Hour = 'pm';\r\n } else if (hour === 12) {\r\n this.hour = 12;\r\n this.use12Hour = 'pm';\r\n } else {\r\n this.hour = hour === 0 ? 12 : hour;\r\n this.use12Hour = 'am';\r\n }\r\n } else {\r\n this.hour = date.getHours();\r\n }\r\n this.minute = date.getMinutes();\r\n this.second = date.getSeconds();\r\n }\r\n\r\n prefixZero(num: number, n: number) {\r\n return (Array(n).join('0') + num).slice(-n);\r\n }\r\n\r\n setScrollTop(animating = false) {\r\n this.selected('hour', this.hourRef?.nativeElement, this.hour!, animating);\r\n this.selected('minute', this.minuteRef?.nativeElement, this.minute!, animating);\r\n this.selected('second', this.secondRef?.nativeElement, this.second!, animating);\r\n this.selected('use12Hour', this.use12HoursRef?.nativeElement, this.use12Hour, animating);\r\n }\r\n\r\n selected(\r\n type: 'hour' | 'minute' | 'second' | 'use12Hour',\r\n ele?: HTMLElement,\r\n num?: number | string,\r\n animating = false\r\n ) {\r\n if (!ele || XIsNull(num)) return;\r\n if (this.scrollAnimating[ele.className]) return;\r\n let len = Number(num);\r\n switch (type) {\r\n case 'hour':\r\n len = this.hourData.findIndex((x) => x.id === num);\r\n break;\r\n case 'minute':\r\n len = this.minuteData.findIndex((x) => x.id === num);\r\n break;\r\n case 'second':\r\n len = this.secondData.findIndex((x) => x.id === num);\r\n break;\r\n case 'use12Hour':\r\n len = this.use12HoursData.findIndex((x) => x.id === num);\r\n break;\r\n }\r\n let current = ele.querySelector(`.x-list x-list-option:nth-child(${len + 1})`) as HTMLElement;\r\n if (current) {\r\n if (animating) {\r\n this.scrollTo(ele, current.offsetTop, 120);\r\n } else {\r\n ele.scrollTop = current.offsetTop;\r\n }\r\n }\r\n }\r\n\r\n isLastItem(data: XIdentity[], item: XIdentity) {\r\n return data.indexOf(item) === data.length - 1;\r\n }\r\n\r\n itemClick(type: 'hour' | 'minute' | 'second' | 'use12Hours') {\r\n if (XIsEmpty(this.model)) {\r\n this.model = this.setZero();\r\n }\r\n switch (type) {\r\n case 'minute':\r\n this.model.setMinutes(this.minute!);\r\n break;\r\n case 'second':\r\n this.model.setSeconds(this.second!);\r\n break;\r\n case 'hour':\r\n if (this.use12Hours) {\r\n if (this.use12Hour === 'pm' && this.hour !== 12) {\r\n this.model.setHours(this.hour! + 12);\r\n } else if (this.use12Hour === 'am' && this.hour === 12) {\r\n this.model.setHours(0);\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n break;\r\n case 'use12Hours':\r\n if (this.use12Hour === 'pm' && this.hour !== 12) {\r\n this.model.setHours(this.hour! + 12);\r\n } else if (this.use12Hour === 'am' && this.hour === 12) {\r\n this.model.setHours(0);\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n break;\r\n }\r\n this.setScrollTop(true);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private scrollTo(element: HTMLElement, to: number, duration: number): void {\r\n const clsName = element.className;\r\n const difference = to - element.scrollTop;\r\n const perTick = (difference / duration) * 10;\r\n this.scrollAnimating[clsName] = true;\r\n reqAnimFrame(() => {\r\n const num = element.scrollTop + perTick;\r\n if (XIsNumber(num) && num !== Infinity) {\r\n element.scrollTop = num;\r\n }\r\n if (element.scrollTop === to || duration <= 0) {\r\n this.scrollAnimating[clsName] = false;\r\n return;\r\n } else {\r\n this.scrollTo(element, to, duration - 10);\r\n }\r\n });\r\n }\r\n}\r\n","<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourData\" [(ngModel)]=\"hour\" (nodeClick)=\"itemClick('hour')\"></x-list>\r\n </div>\r\n @if (type !== 'hour') {\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef>\r\n <x-list [data]=\"minuteData\" [(ngModel)]=\"minute\" (nodeClick)=\"itemClick('minute')\"></x-list>\r\n </div>\r\n }\r\n @if (type === 'time') {\r\n <div class=\"x-time-picker-frame-second\" #secondRef>\r\n <x-list [data]=\"secondData\" [(ngModel)]=\"second\" (nodeClick)=\"itemClick('second')\"></x-list>\r\n </div>\r\n }\r\n @if (use12Hours) {\r\n <div class=\"x-time-picker-frame-use12Hours\" #use12HoursRef>\r\n <x-list [data]=\"use12HoursData\" [(ngModel)]=\"use12Hour\" (nodeClick)=\"itemClick('use12Hours')\"></x-list>\r\n </div>\r\n }\r\n</div>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener,\r\n inject\r\n} from '@angular/core';\r\nimport {\r\n XTimePickerDisabledTime,\r\n XTimePickerPortalPrefix,\r\n XTimePickerPreset,\r\n XTimePickerType\r\n} from './time-picker.property';\r\nimport { XBoolean, XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\n\r\n@Component({\r\n selector: `${XTimePickerPortalPrefix}`,\r\n standalone: true,\r\n imports: [XTimePickerFrameComponent, XButtonComponent],\r\n templateUrl: './time-picker-portal.component.html',\r\n styleUrls: ['./time-picker-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XTimePickerPortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement!: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n this.animating(true);\r\n }\r\n type: XTimePickerType = 'time';\r\n value: any;\r\n valueChange!: Subject<any>;\r\n positionChange!: Subject<any>;\r\n closePortal!: Function;\r\n destroyPortal!: Function;\r\n animating!: Function;\r\n inputCom!: XInputComponent;\r\n use12Hours!: XBoolean;\r\n hourStep!: number;\r\n minuteStep!: number;\r\n secondStep!: number;\r\n preset: XTimePickerPreset[] = [];\r\n disabledTime!: XTimePickerDisabledTime;\r\n nodeEmit!: (date: Date) => void;\r\n locale: XI18nTimePicker = {};\r\n\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnInit(): void {\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x: any) => {\r\n this.value = x;\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n onPresetFunc(item: XTimePickerPreset) {\r\n let date = item.func();\r\n this.valueChange.next(date);\r\n this.nodeEmit(date);\r\n }\r\n\r\n onNow() {\r\n let date = new Date();\r\n this.valueChange.next(date);\r\n this.nodeEmit(date);\r\n }\r\n}\r\n","<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame\r\n [type]=\"type\"\r\n [value]=\"value\"\r\n [use12Hours]=\"use12Hours\"\r\n [hourStep]=\"hourStep\"\r\n [minuteStep]=\"minuteStep\"\r\n [secondStep]=\"secondStep\"\r\n [disabledTime]=\"disabledTime\"\r\n (nodeEmit)=\"nodeEmit($event)\"\r\n ></x-time-picker-frame>\r\n @if (preset) {\r\n <div class=\"x-time-picker-portal-preset\">\r\n @for (item of preset; track item) {\r\n @if (!!item.func) {\r\n <x-button type=\"text\" (click)=\"onPresetFunc(item)\">{{ item.label }}</x-button>\r\n } @else if (!item.func && item.id === 'now') {\r\n <x-button type=\"text\" (click)=\"onNow()\">{{ locale.now }}</x-button>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n","import { XTimePickerPortalComponent } from './time-picker-portal.component';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { Subject, fromEvent } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewContainerRef,\r\n ViewChild,\r\n inject,\r\n AfterViewInit,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XTimePickerPrefix, XTimePickerProperty } from './time-picker.property';\r\nimport { XIsEmpty, XIsDate, XIsNumber, XCorner, XClearClass, XIsString, XParents } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DOCUMENT, DatePipe } from '@angular/common';\r\nimport {\r\n Overlay,\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange\r\n} from '@angular/cdk/overlay';\r\nimport { takeUntil, map, filter } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XTimePickerPrefix}`,\r\n standalone: true,\r\n imports: [FormsModule, XInputComponent],\r\n templateUrl: './time-picker.component.html',\r\n styleUrls: ['./time-picker.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XTimePickerComponent), DatePipe]\r\n})\r\nexport class XTimePickerComponent extends XTimePickerProperty implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild('datePicker', { static: true }) datePicker!: ElementRef<HTMLElement>;\r\n @ViewChild('inputCom', { static: true }) inputCom!: XInputComponent;\r\n\r\n override writeValue(value: any) {\r\n if (XIsDate(value)) {\r\n this.value = value.getTime();\r\n this.valueType = 'date';\r\n } else if (XIsNumber(value)) {\r\n this.value = value;\r\n this.valueType = 'number';\r\n } else if (XIsString(value)) {\r\n this.value = new Date(value).getTime();\r\n this.valueType = 'string';\r\n } else if (XIsEmpty(value)) {\r\n this.value = '';\r\n }\r\n this.setDisplayValue(this.value);\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n override readonly: boolean = true;\r\n clearable: boolean = false;\r\n enter: boolean = false;\r\n animating = false;\r\n displayValue: any = '';\r\n portal!: XPortalOverlayRef<XTimePickerPortalComponent>;\r\n icon: string = 'fto-clock';\r\n box!: DOMRect;\r\n protalHeight!: number;\r\n maxNodes: number = 8;\r\n protalTobottom: boolean = true;\r\n valueChange: Subject<any> = new Subject();\r\n dataChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n valueType: 'date' | 'number' | 'string' = 'date';\r\n locale: XI18nTimePicker = {};\r\n private _unSubject = new Subject<void>();\r\n document = inject(DOCUMENT);\r\n\r\n get getPlaceholder() {\r\n if (this.placeholder) return this.placeholder;\r\n if (this.type === 'time') {\r\n return this.locale.selectTime;\r\n } else if (this.type === 'hour') {\r\n return this.locale.selectHour;\r\n } else if (this.type === 'minute') {\r\n return this.locale.selectMinute;\r\n } else {\r\n return this.locale.selectTime;\r\n }\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n private elementRef = inject(ElementRef);\r\n override cdr = inject(ChangeDetectorRef);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private datePipe = inject(DatePipe);\r\n private overlay = inject(Overlay);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnInit() {\r\n this.setFlex(this.datePicker.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setFormat();\r\n this.setClassMap();\r\n this.setSubject();\r\n this.setParantScroll();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setFormat() {\r\n if (this.format === 'HH:mm:ss') {\r\n if (this.type === 'hour') {\r\n this.format = 'HH';\r\n } else if (this.type === 'minute') {\r\n this.format = 'HH:mm';\r\n }\r\n }\r\n }\r\n\r\n setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portal?.overlayRef?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n if (this.use12Hours) {\r\n this.setDisplayValue(this.value);\r\n }\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-clock';\r\n this.clearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.active = false;\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.animating) return;\r\n this.active = true;\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XTimePickerPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n place !== this.placement && this.positionChange.next(place);\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal?.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n type: this.type,\r\n value: this.value,\r\n placement: this.placement,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n inputCom: this.inputCom,\r\n use12Hours: this.use12Hours,\r\n hourStep: this.hourStep,\r\n minuteStep: this.minuteStep,\r\n secondStep: this.secondStep,\r\n preset: this.preset,\r\n disabledTime: this.disabledTime,\r\n closePortal: () => this.closeSubject.next(),\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: Date) => this.onNodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n onNodeClick(date: Date) {\r\n this.value = this.setValue(date);\r\n this.setDisplayValue(date);\r\n this.cdr.detectChanges();\r\n if (this.onChange) this.onChange(this.value);\r\n this.formControlValidator();\r\n this.nodeEmit.emit(this.value);\r\n }\r\n\r\n setValue(value: Date) {\r\n return ['date', 'string'].includes(this.valueType) ? new Date(value) : value.getTime();\r\n }\r\n\r\n setDisplayValue(date: Date | number) {\r\n if (!date) return;\r\n if (this.use12Hours) {\r\n let dt = new Date(date);\r\n let hour = dt.getHours();\r\n let suffix = hour >= 12 ? this.locale.pm : this.locale.am;\r\n this.displayValue = `${this.datePipe.transform(\r\n dt.setHours(hour === 0 ? 12 : hour > 12 ? hour - 12 : hour),\r\n this.format\r\n )} ${suffix}`;\r\n } else {\r\n this.displayValue = this.datePipe.transform(date, this.format);\r\n }\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputRef,\r\n placement: [this.placement as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-time-picker-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n if (this.portalAttached()) {\r\n this.portal.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<div #datePicker class=\"x-time-picker\">\r\n <div class=\"x-time-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [required]=\"required\"\r\n [validator]=\"validator\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"getPlaceholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimePickerComponent } from './time-picker.component';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\n\r\n@NgModule({\r\n exports: [XTimePickerComponent, XTimePickerFrameComponent],\r\n imports: [XTimePickerComponent, XTimePickerFrameComponent]\r\n})\r\nexport class XTimePickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-time-picker.mjs","sources":["../../../../lib/ng-nest/ui/time-picker/time-picker.property.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-frame.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-frame.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker-portal.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker-portal.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker.component.ts","../../../../lib/ng-nest/ui/time-picker/time-picker.component.html","../../../../lib/ng-nest/ui/time-picker/time-picker.module.ts","../../../../lib/ng-nest/ui/time-picker/ng-nest-ui-time-picker.ts"],"sourcesContent":["import {\r\n XBoolean,\r\n XCorner,\r\n XData,\r\n XDataConvert,\r\n XIdentityProperty,\r\n XInputBoolean,\r\n XInputNumber,\r\n XNumber,\r\n XSize,\r\n XWithConfig\r\n} from '@ng-nest/ui/core';\r\nimport { Input, Output, EventEmitter, Component } from '@angular/core';\r\nimport { XControlValueAccessor, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * TimePicker\r\n * @selector x-time-picker\r\n * @decorator component\r\n */\r\nexport const XTimePickerPrefix = 'x-time-picker';\r\nconst X_CONFIG_NAME = 'timePicker';\r\n\r\n/**\r\n * TimePicker Property\r\n */\r\n@Component({ selector: `${XTimePickerPrefix}-property`, template: '' })\r\nexport class XTimePickerProperty extends XControlValueAccessor<any> {\r\n /**\r\n * @zh_CN 时间类型\r\n * @en_US Time type\r\n */\r\n @Input() type: XTimePickerType = 'time';\r\n /**\r\n * @zh_CN 格式化\r\n * @en_US Format\r\n */\r\n @Input() @XWithConfig<string>(X_CONFIG_NAME, 'HH:mm:ss') format?: string;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n @Input() @XWithConfig<XCorner>(X_CONFIG_NAME, 'bottom-start') placement?: XCorner;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') size!: XSize;\r\n /**\r\n * @zh_CN 使用12小时制\r\n * @en_US Use 12 hour clock\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, false) use12Hours!: XBoolean;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n @Input() @XInputBoolean() @XWithConfig<XBoolean>(X_CONFIG_NAME, true) bordered!: XBoolean;\r\n /**\r\n * @zh_CN 小时选项间隔\r\n * @en_US Hour option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) hourStep!: XNumber;\r\n /**\r\n * @zh_CN 分钟选项间隔\r\n * @en_US Minute option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) minuteStep!: XNumber;\r\n /**\r\n * @zh_CN 秒选项间隔\r\n * @en_US Second option interval\r\n */\r\n @Input() @XInputNumber() @XWithConfig<XNumber>(X_CONFIG_NAME, 1) secondStep!: XNumber;\r\n /**\r\n * @zh_CN 快捷选择按钮,支持此刻以及自定义\r\n * @en_US Quick selection button, support now and custom\r\n */\r\n @Input() @XDataConvert() preset: XData<XTimePickerPreset> = [];\r\n /**\r\n * @zh_CN 禁用的时间\r\n * @en_US Disabled time\r\n */\r\n @Input() disabledTime?: XTimePickerDisabledTime;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n @Output() nodeEmit = new EventEmitter<number>();\r\n}\r\n\r\n/**\r\n * TimePicker Option\r\n * @undocument true\r\n */\r\nexport interface XTimePickerOption extends XFormOption {\r\n /**\r\n * @zh_CN 时间类型\r\n * @en_US Time type\r\n */\r\n type?: XTimePickerType;\r\n /**\r\n * @zh_CN 格式化\r\n * @en_US Format\r\n */\r\n format?: string;\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 节点点击的事件\r\n * @en_US Node click event\r\n */\r\n nodeClick?: (date: number) => void;\r\n}\r\n\r\n/**\r\n * @zh_CN 时间选择\r\n * @en_US Time selection\r\n */\r\nexport type XTimePickerType = 'time' | 'hour' | 'minute';\r\n\r\n/**\r\n * @zh_CN 快捷选择按钮\r\n * @en_US Quick selection button\r\n */\r\nexport interface XTimePickerPreset extends XIdentityProperty {\r\n /**\r\n * @zh_CN 自定义函数\r\n * @en_US Custom function\r\n */\r\n func: () => Date;\r\n}\r\n\r\n/**\r\n * TimePickerPortal\r\n * @selector x-time-picker-portal\r\n * @decorator component\r\n */\r\nexport const XTimePickerPortalPrefix = 'x-time-picker-portal';\r\n\r\n/**\r\n * TimePickerFrame\r\n * @selector x-time-picker-frame\r\n * @decorator component\r\n */\r\nexport const XTimePickerFramePrefix = 'x-time-picker-frame';\r\n\r\n/**\r\n * @zh_CN 禁用时间的自定义类型\r\n * @en_US Disable custom type of time\r\n */\r\nexport type XTimePickerDisabledTime = (param?: any) => XTimePickerDisabledTimeFn;\r\n\r\n/**\r\n * @zh_CN 禁用时间的自定义函数\r\n * @en_US Disable custom type of time\r\n */\r\nexport type XTimePickerDisabledTimeFn = {\r\n /**\r\n * @zh_CN 禁用小时的自定义函数\r\n * @en_US Disable custom type of hours\r\n */\r\n disabledHours?: () => number[];\r\n /**\r\n * @zh_CN 禁用分钟的自定义函数\r\n * @en_US Disable custom type of minutes\r\n */\r\n disabledMinutes?: () => number[];\r\n /**\r\n * @zh_CN 禁用秒的自定义函数\r\n * @en_US Disable custom type of seconds\r\n */\r\n disabledSeconds?: () => number[];\r\n};\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n SimpleChanges,\r\n ViewChild,\r\n ViewEncapsulation,\r\n inject\r\n} from '@angular/core';\r\nimport { XTimePickerDisabledTime, XTimePickerFramePrefix, XTimePickerType } from './time-picker.property';\r\nimport {\r\n reqAnimFrame,\r\n XBoolean,\r\n XIdentity,\r\n XIsChange,\r\n XIsEmpty,\r\n XIsFunction,\r\n XIsNull,\r\n XIsNumber\r\n} from '@ng-nest/ui/core';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { takeUntil, map } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { XListComponent } from '@ng-nest/ui/list';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XTimePickerFramePrefix}`,\r\n standalone: true,\r\n imports: [FormsModule, XListComponent],\r\n templateUrl: './time-picker-frame.component.html',\r\n styleUrls: ['./time-picker-frame.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XTimePickerFrameComponent {\r\n @Input() type: XTimePickerType = 'time';\r\n @Input() value!: number | null;\r\n @Input() use12Hours!: XBoolean;\r\n @Input() hourStep = 1;\r\n @Input() minuteStep = 1;\r\n @Input() secondStep = 1;\r\n @Input() defaultNow = true;\r\n @Input() disabledTime?: XTimePickerDisabledTime;\r\n @Input() disabledTimeParam?: any;\r\n @Output() nodeEmit = new EventEmitter<Date>();\r\n @ViewChild('hourRef') hourRef?: ElementRef<HTMLElement>;\r\n @ViewChild('minuteRef') minuteRef?: ElementRef<HTMLElement>;\r\n @ViewChild('secondRef') secondRef?: ElementRef<HTMLElement>;\r\n @ViewChild('use12HoursRef') use12HoursRef?: ElementRef<HTMLElement>;\r\n model!: Date;\r\n hour!: number | null;\r\n minute!: number | null;\r\n second!: number | null;\r\n use12Hour: string = 'am';\r\n scrollAnimating: { [key: string]: boolean } = {};\r\n hourData: XIdentity[] = [];\r\n minuteData: XIdentity[] = [];\r\n secondData: XIdentity[] = [];\r\n use12HoursData: XIdentity[] = [];\r\n locale: XI18nTimePicker = {};\r\n isInit = false;\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { value, disabledTimeParam } = changes;\r\n if (XIsChange(value)) {\r\n // this.setDataInit();\r\n this.init();\r\n this.setScrollTop(true);\r\n }\r\n XIsChange(disabledTimeParam) && this.setDataInit();\r\n }\r\n\r\n ngOnInit() {\r\n this.setDataInit();\r\n this.init();\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n if (this.use12Hours) {\r\n this.setUse12HoursData();\r\n }\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setScrollTop();\r\n }\r\n\r\n setDataInit() {\r\n this.setHourData();\r\n this.setMinuteData();\r\n this.setSecondData();\r\n this.setUse12HoursData();\r\n }\r\n\r\n setDisabled(type: 'hours' | 'minutes' | 'seconds', num: number) {\r\n if (this.disabledTime && XIsFunction(this.disabledTime)) {\r\n const disabledMap = this.disabledTime(this.disabledTimeParam);\r\n const { disabledHours, disabledMinutes, disabledSeconds } = disabledMap;\r\n let disabledNums: number[] = [];\r\n if (type === 'hours') {\r\n disabledNums = disabledHours ? disabledHours() : [];\r\n } else if (type === 'minutes') {\r\n disabledNums = disabledMinutes ? disabledMinutes() : [];\r\n } else if (type === 'seconds') {\r\n disabledNums = disabledSeconds ? disabledSeconds() : [];\r\n }\r\n return disabledNums.includes(num);\r\n }\r\n\r\n return false;\r\n }\r\n\r\n setHourData() {\r\n let length = this.use12Hours ? 12 : 24;\r\n this.hourData = Array.from({ length: Math.ceil(length / this.hourStep) }).map((_, i) => {\r\n if (this.use12Hours && i === 0) {\r\n i = 12;\r\n return {\r\n disabled: this.setDisabled('hours', i),\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n } else {\r\n const num = i * this.hourStep;\r\n return {\r\n disabled: this.setDisabled('hours', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n }\r\n });\r\n }\r\n\r\n setMinuteData() {\r\n this.minuteData = Array.from({ length: Math.ceil(60 / this.minuteStep) }).map((_, i) => {\r\n const num = i * this.minuteStep;\r\n return {\r\n disabled: this.setDisabled('minutes', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n });\r\n }\r\n\r\n setSecondData() {\r\n this.secondData = Array.from({ length: Math.ceil(60 / this.secondStep) }).map((_, i) => {\r\n const num: number = i * this.secondStep;\r\n return {\r\n disabled: this.setDisabled('seconds', num),\r\n label: this.prefixZero(num, 2),\r\n id: num\r\n };\r\n });\r\n }\r\n\r\n setUse12HoursData() {\r\n this.use12HoursData = [\r\n {\r\n id: 'am',\r\n label: this.locale.am\r\n },\r\n {\r\n id: 'pm',\r\n label: this.locale.pm\r\n }\r\n ];\r\n }\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n this.setTime(this.model);\r\n } else {\r\n if (this.defaultNow) {\r\n this.model = this.setNow();\r\n } else {\r\n this.hour = null;\r\n this.minute = null;\r\n this.second = null;\r\n }\r\n }\r\n this.cdr.detectChanges();\r\n }\r\n\r\n setDefault() {\r\n this.model = new Date(this.value!);\r\n }\r\n\r\n setNow() {\r\n const def = new Date('1970-01-01');\r\n const now = new Date();\r\n return new Date(\r\n def.getFullYear(),\r\n def.getMonth(),\r\n def.getDate(),\r\n now.getHours(),\r\n now.getMinutes(),\r\n now.getSeconds()\r\n );\r\n }\r\n\r\n setZero() {\r\n const def = new Date('1970-01-01');\r\n return new Date(def.getFullYear(), def.getMonth(), def.getDate(), 0, 0, 0);\r\n }\r\n\r\n setTime(date: Date) {\r\n if (this.use12Hours) {\r\n let hour = date.getHours();\r\n if (hour > 12) {\r\n this.hour = hour - 12;\r\n this.use12Hour = 'pm';\r\n } else if (hour === 12) {\r\n this.hour = 12;\r\n this.use12Hour = 'pm';\r\n } else {\r\n this.hour = hour === 0 ? 12 : hour;\r\n this.use12Hour = 'am';\r\n }\r\n } else {\r\n this.hour = date.getHours();\r\n }\r\n this.minute = date.getMinutes();\r\n this.second = date.getSeconds();\r\n }\r\n\r\n prefixZero(num: number, n: number) {\r\n return (Array(n).join('0') + num).slice(-n);\r\n }\r\n\r\n setScrollTop(animating = false) {\r\n this.selected('hour', this.hourRef?.nativeElement, this.hour!, animating);\r\n this.selected('minute', this.minuteRef?.nativeElement, this.minute!, animating);\r\n this.selected('second', this.secondRef?.nativeElement, this.second!, animating);\r\n this.selected('use12Hour', this.use12HoursRef?.nativeElement, this.use12Hour, animating);\r\n }\r\n\r\n selected(\r\n type: 'hour' | 'minute' | 'second' | 'use12Hour',\r\n ele?: HTMLElement,\r\n num?: number | string,\r\n animating = false\r\n ) {\r\n if (!ele || XIsNull(num)) return;\r\n if (this.scrollAnimating[ele.className]) return;\r\n let len = Number(num);\r\n switch (type) {\r\n case 'hour':\r\n len = this.hourData.findIndex((x) => x.id === num);\r\n break;\r\n case 'minute':\r\n len = this.minuteData.findIndex((x) => x.id === num);\r\n break;\r\n case 'second':\r\n len = this.secondData.findIndex((x) => x.id === num);\r\n break;\r\n case 'use12Hour':\r\n len = this.use12HoursData.findIndex((x) => x.id === num);\r\n break;\r\n }\r\n let current = ele.querySelector(`.x-list x-list-option:nth-child(${len + 1})`) as HTMLElement;\r\n if (current) {\r\n if (animating) {\r\n this.scrollTo(ele, current.offsetTop, 120);\r\n } else {\r\n ele.scrollTop = current.offsetTop;\r\n }\r\n }\r\n }\r\n\r\n isLastItem(data: XIdentity[], item: XIdentity) {\r\n return data.indexOf(item) === data.length - 1;\r\n }\r\n\r\n itemClick(type: 'hour' | 'minute' | 'second' | 'use12Hours') {\r\n if (XIsEmpty(this.model)) {\r\n this.model = this.setZero();\r\n }\r\n switch (type) {\r\n case 'minute':\r\n this.model.setMinutes(this.minute!);\r\n break;\r\n case 'second':\r\n this.model.setSeconds(this.second!);\r\n break;\r\n case 'hour':\r\n if (this.use12Hours) {\r\n if (this.use12Hour === 'pm' && this.hour !== 12) {\r\n this.model.setHours(this.hour! + 12);\r\n } else if (this.use12Hour === 'am' && this.hour === 12) {\r\n this.model.setHours(0);\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n break;\r\n case 'use12Hours':\r\n if (this.use12Hour === 'pm' && this.hour !== 12) {\r\n this.model.setHours(this.hour! + 12);\r\n } else if (this.use12Hour === 'am' && this.hour === 12) {\r\n this.model.setHours(0);\r\n } else {\r\n this.model.setHours(this.hour!);\r\n }\r\n break;\r\n }\r\n this.setScrollTop(true);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private scrollTo(element: HTMLElement, to: number, duration: number): void {\r\n const clsName = element.className;\r\n const difference = to - element.scrollTop;\r\n const perTick = (difference / duration) * 10;\r\n this.scrollAnimating[clsName] = true;\r\n reqAnimFrame(() => {\r\n const num = element.scrollTop + perTick;\r\n if (XIsNumber(num) && num !== Infinity) {\r\n element.scrollTop = num;\r\n }\r\n if (element.scrollTop === to || duration <= 0) {\r\n this.scrollAnimating[clsName] = false;\r\n return;\r\n } else {\r\n this.scrollTo(element, to, duration - 10);\r\n }\r\n });\r\n }\r\n}\r\n","<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourData\" [(ngModel)]=\"hour\" (nodeClick)=\"itemClick('hour')\"></x-list>\r\n </div>\r\n @if (type !== 'hour') {\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef>\r\n <x-list [data]=\"minuteData\" [(ngModel)]=\"minute\" (nodeClick)=\"itemClick('minute')\"></x-list>\r\n </div>\r\n }\r\n @if (type === 'time') {\r\n <div class=\"x-time-picker-frame-second\" #secondRef>\r\n <x-list [data]=\"secondData\" [(ngModel)]=\"second\" (nodeClick)=\"itemClick('second')\"></x-list>\r\n </div>\r\n }\r\n @if (use12Hours) {\r\n <div class=\"x-time-picker-frame-use12Hours\" #use12HoursRef>\r\n <x-list [data]=\"use12HoursData\" [(ngModel)]=\"use12Hour\" (nodeClick)=\"itemClick('use12Hours')\"></x-list>\r\n </div>\r\n }\r\n</div>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener,\r\n inject\r\n} from '@angular/core';\r\nimport {\r\n XTimePickerDisabledTime,\r\n XTimePickerPortalPrefix,\r\n XTimePickerPreset,\r\n XTimePickerType\r\n} from './time-picker.property';\r\nimport { XBoolean, XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\n\r\n@Component({\r\n selector: `${XTimePickerPortalPrefix}`,\r\n standalone: true,\r\n imports: [XTimePickerFrameComponent, XButtonComponent],\r\n templateUrl: './time-picker-portal.component.html',\r\n styleUrls: ['./time-picker-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XTimePickerPortalComponent implements OnInit, OnDestroy {\r\n @HostBinding('@x-connect-base-animation') public placement!: XPositionTopBottom;\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done(event: { toState: any }) {\r\n this.animating(false);\r\n event.toState === 'void' && this.destroyPortal();\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n this.animating(true);\r\n }\r\n type: XTimePickerType = 'time';\r\n value: any;\r\n valueChange!: Subject<any>;\r\n positionChange!: Subject<any>;\r\n closePortal!: Function;\r\n destroyPortal!: Function;\r\n animating!: Function;\r\n inputCom!: XInputComponent;\r\n use12Hours!: XBoolean;\r\n hourStep!: number;\r\n minuteStep!: number;\r\n secondStep!: number;\r\n preset: XTimePickerPreset[] = [];\r\n disabledTime!: XTimePickerDisabledTime;\r\n nodeEmit!: (date: Date) => void;\r\n locale: XI18nTimePicker = {};\r\n\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnInit(): void {\r\n this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x: any) => {\r\n this.value = x;\r\n });\r\n this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {\r\n this.placement = x;\r\n this.cdr.detectChanges();\r\n });\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n onPresetFunc(item: XTimePickerPreset) {\r\n let date = item.func();\r\n this.valueChange.next(date);\r\n this.nodeEmit(date);\r\n }\r\n\r\n onNow() {\r\n let date = new Date();\r\n this.valueChange.next(date);\r\n this.nodeEmit(date);\r\n }\r\n}\r\n","<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame\r\n [type]=\"type\"\r\n [value]=\"value\"\r\n [use12Hours]=\"use12Hours\"\r\n [hourStep]=\"hourStep\"\r\n [minuteStep]=\"minuteStep\"\r\n [secondStep]=\"secondStep\"\r\n [disabledTime]=\"disabledTime\"\r\n (nodeEmit)=\"nodeEmit($event)\"\r\n ></x-time-picker-frame>\r\n @if (preset) {\r\n <div class=\"x-time-picker-portal-preset\">\r\n @for (item of preset; track item) {\r\n @if (!!item.func) {\r\n <x-button type=\"text\" (click)=\"onPresetFunc(item)\">{{ item.label }}</x-button>\r\n } @else if (!item.func && item.id === 'now') {\r\n <x-button type=\"text\" (click)=\"onNow()\">{{ locale.now }}</x-button>\r\n }\r\n }\r\n </div>\r\n }\r\n</div>\r\n","import { XTimePickerPortalComponent } from './time-picker-portal.component';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { Subject, fromEvent } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Renderer2,\r\n ElementRef,\r\n ViewContainerRef,\r\n ViewChild,\r\n inject,\r\n AfterViewInit,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XTimePickerPrefix, XTimePickerProperty } from './time-picker.property';\r\nimport { XIsEmpty, XIsDate, XIsNumber, XCorner, XClearClass, XIsString, XParents } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DOCUMENT, DatePipe } from '@angular/common';\r\nimport {\r\n Overlay,\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange\r\n} from '@angular/cdk/overlay';\r\nimport { takeUntil, map, filter } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XI18nService, XI18nTimePicker } from '@ng-nest/ui/i18n';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XTimePickerPrefix}`,\r\n standalone: true,\r\n imports: [FormsModule, XInputComponent],\r\n templateUrl: './time-picker.component.html',\r\n styleUrls: ['./time-picker.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XTimePickerComponent), DatePipe]\r\n})\r\nexport class XTimePickerComponent extends XTimePickerProperty implements OnInit, AfterViewInit, OnDestroy {\r\n @ViewChild('datePicker', { static: true }) datePicker!: ElementRef<HTMLElement>;\r\n @ViewChild('inputCom', { static: true }) inputCom!: XInputComponent;\r\n\r\n override writeValue(value: any) {\r\n if (XIsDate(value)) {\r\n this.value = value.getTime();\r\n this.valueType = 'date';\r\n } else if (XIsNumber(value)) {\r\n this.value = value;\r\n this.valueType = 'number';\r\n } else if (XIsString(value)) {\r\n this.value = new Date(value).getTime();\r\n this.valueType = 'string';\r\n } else if (XIsEmpty(value)) {\r\n this.value = '';\r\n }\r\n this.setDisplayValue(this.value);\r\n this.valueChange.next(this.value);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n override readonly: boolean = true;\r\n clearable: boolean = false;\r\n enter: boolean = false;\r\n animating = false;\r\n displayValue: any = '';\r\n portal!: XPortalOverlayRef<XTimePickerPortalComponent>;\r\n icon: string = 'fto-clock';\r\n box!: DOMRect;\r\n protalHeight!: number;\r\n maxNodes: number = 8;\r\n protalTobottom: boolean = true;\r\n valueChange: Subject<any> = new Subject();\r\n dataChange: Subject<any> = new Subject();\r\n positionChange: Subject<any> = new Subject();\r\n closeSubject: Subject<void> = new Subject();\r\n valueType: 'date' | 'number' | 'string' = 'date';\r\n locale: XI18nTimePicker = {};\r\n private _unSubject = new Subject<void>();\r\n document = inject(DOCUMENT);\r\n\r\n get getPlaceholder() {\r\n if (this.placeholder) return this.placeholder;\r\n if (this.type === 'time') {\r\n return this.locale.selectTime;\r\n } else if (this.type === 'hour') {\r\n return this.locale.selectHour;\r\n } else if (this.type === 'minute') {\r\n return this.locale.selectMinute;\r\n } else {\r\n return this.locale.selectTime;\r\n }\r\n }\r\n\r\n private renderer = inject(Renderer2);\r\n private elementRef = inject(ElementRef);\r\n override cdr = inject(ChangeDetectorRef);\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private datePipe = inject(DatePipe);\r\n private overlay = inject(Overlay);\r\n private i18n = inject(XI18nService);\r\n\r\n ngOnInit() {\r\n this.setFlex(this.datePicker.nativeElement, this.renderer, this.justify, this.align, this.direction);\r\n this.setFormat();\r\n this.setClassMap();\r\n this.setSubject();\r\n this.setParantScroll();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.labelMap);\r\n this.labelMap[`x-text-align-${this.labelAlign}`] = this.labelAlign ? true : false;\r\n }\r\n\r\n setFormat() {\r\n if (this.format === 'HH:mm:ss') {\r\n if (this.type === 'hour') {\r\n this.format = 'HH';\r\n } else if (this.type === 'minute') {\r\n this.format = 'HH:mm';\r\n }\r\n }\r\n }\r\n\r\n setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portal?.overlayRef?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n this.i18n.localeChange\r\n .pipe(\r\n map((x) => x.timePicker as XI18nTimePicker),\r\n takeUntil(this._unSubject)\r\n )\r\n .subscribe((x) => {\r\n this.locale = x;\r\n if (this.use12Hours) {\r\n this.setDisplayValue(this.value);\r\n }\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-clock';\r\n this.clearable = false;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value = '';\r\n this.displayValue = '';\r\n this.mleave();\r\n this.valueChange.next(this.value);\r\n if (this.onChange) this.onChange(this.value);\r\n }\r\n\r\n portalAttached() {\r\n return this.portal?.overlayRef?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portal?.overlayRef?.detach();\r\n this.active = false;\r\n this.cdr.detectChanges();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portal?.overlayRef?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabled || this.animating) return;\r\n this.active = true;\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XTimePickerPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this._unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this._unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n place !== this.placement && this.positionChange.next(place);\r\n });\r\n }\r\n\r\n setInstance() {\r\n let componentRef = this.portal?.componentRef;\r\n if (!componentRef) return;\r\n Object.assign(componentRef.instance, {\r\n type: this.type,\r\n value: this.value,\r\n placement: this.placement,\r\n valueChange: this.valueChange,\r\n positionChange: this.positionChange,\r\n inputCom: this.inputCom,\r\n use12Hours: this.use12Hours,\r\n hourStep: this.hourStep,\r\n minuteStep: this.minuteStep,\r\n secondStep: this.secondStep,\r\n preset: this.preset,\r\n disabledTime: this.disabledTime,\r\n closePortal: () => this.closeSubject.next(),\r\n destroyPortal: () => this.destroyPortal(),\r\n nodeEmit: (node: Date) => this.onNodeClick(node),\r\n animating: (ing: boolean) => (this.animating = ing)\r\n });\r\n componentRef.changeDetectorRef.detectChanges();\r\n }\r\n\r\n onNodeClick(date: Date) {\r\n this.value = this.setValue(date);\r\n this.setDisplayValue(date);\r\n this.cdr.detectChanges();\r\n if (this.onChange) this.onChange(this.value);\r\n this.formControlValidator();\r\n this.nodeEmit.emit(this.value);\r\n }\r\n\r\n setValue(value: Date) {\r\n return ['date', 'string'].includes(this.valueType) ? new Date(value) : value.getTime();\r\n }\r\n\r\n setDisplayValue(date: Date | number) {\r\n if (!date) return;\r\n if (this.use12Hours) {\r\n let dt = new Date(date);\r\n let hour = dt.getHours();\r\n let suffix = hour >= 12 ? this.locale.pm : this.locale.am;\r\n this.displayValue = `${this.datePipe.transform(\r\n dt.setHours(hour === 0 ? 12 : hour > 12 ? hour - 12 : hour),\r\n this.format\r\n )} ${suffix}`;\r\n } else {\r\n this.displayValue = this.datePipe.transform(date, this.format);\r\n }\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom.inputRef,\r\n placement: [this.placement as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-time-picker-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n if (this.portalAttached()) {\r\n this.portal.overlayRef?.updatePositionStrategy(this.setPlacement());\r\n }\r\n }\r\n\r\n formControlChanges() {\r\n this.ngOnInit();\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n","<div #datePicker class=\"x-time-picker\">\r\n <div class=\"x-time-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label\"\r\n [labelWidth]=\"labelWidth\"\r\n [labelAlign]=\"labelAlign\"\r\n [justify]=\"justify\"\r\n [align]=\"align\"\r\n [direction]=\"direction\"\r\n [disabled]=\"disabled\"\r\n [required]=\"required\"\r\n [validator]=\"validator\"\r\n [icon]=\"icon\"\r\n [placeholder]=\"getPlaceholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimePickerComponent } from './time-picker.component';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\n\r\n@NgModule({\r\n exports: [XTimePickerComponent, XTimePickerFrameComponent],\r\n imports: [XTimePickerComponent, XTimePickerFrameComponent]\r\n})\r\nexport class XTimePickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -41,20 +41,20 @@ class XTimeRangePipe {
41
41
  getRepeatedElement(length, element) {
42
42
  return Array(length).fill(element).join('');
43
43
  }
44
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
45
- /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangePipe, isStandalone: true, name: "xTimeRange" }); }
44
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
45
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangePipe, isStandalone: true, name: "xTimeRange" }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangePipe, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangePipe, decorators: [{
48
48
  type: Pipe,
49
49
  args: [{ name: `${XTimeRangePrefix}`, standalone: true }]
50
50
  }] });
51
51
 
52
52
  class XTimeRangeModule {
53
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangeModule, imports: [XTimeRangePipe], exports: [XTimeRangePipe] }); }
55
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangeModule }); }
53
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangeModule, imports: [XTimeRangePipe], exports: [XTimeRangePipe] }); }
55
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangeModule }); }
56
56
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimeRangeModule, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimeRangeModule, decorators: [{
58
58
  type: NgModule,
59
59
  args: [{
60
60
  exports: [XTimeRangePipe],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-time-range.mjs","sources":["../../../../lib/ng-nest/ui/time-range/time-range.property.ts","../../../../lib/ng-nest/ui/time-range/time-range.pipe.ts","../../../../lib/ng-nest/ui/time-range/time-range.module.ts","../../../../lib/ng-nest/ui/time-range/ng-nest-ui-time-range.ts"],"sourcesContent":["/**\r\n * TimeRange\r\n * @selector xTimeRange\r\n * @decorator Pipe\r\n */\r\nexport const XTimeRangePrefix = 'xTimeRange';\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { XTimeRangePrefix } from './time-range.property';\r\n\r\nexport const timeUnits: Array<[string, number]> = [\r\n ['Y', 1000 * 60 * 60 * 24 * 365], // years\r\n ['M', 1000 * 60 * 60 * 24 * 30], // months\r\n ['D', 1000 * 60 * 60 * 24], // days\r\n ['H', 1000 * 60 * 60], // hours\r\n ['m', 1000 * 60], // minutes\r\n ['s', 1000], // seconds\r\n ['S', 1] // million seconds\r\n];\r\n\r\n@Pipe({ name: `${XTimeRangePrefix}`, standalone: true })\r\nexport class XTimeRangePipe implements PipeTransform {\r\n transform(value: string | number, format: string = 'HH:mm:ss'): string {\r\n let duration = Number(value || 0);\r\n\r\n return timeUnits.reduce((current, [name, unit]) => {\r\n if (current.indexOf(name) !== -1) {\r\n const v = Math.floor(duration / unit);\r\n duration -= v * unit;\r\n return current.replace(new RegExp(`${name}+`, 'g'), (match: string) => {\r\n return this.padStart(v.toString(), match.length, '0');\r\n });\r\n }\r\n return current;\r\n }, format);\r\n }\r\n\r\n padStart(toPad: string, length: number, element: string): string {\r\n if (toPad.length > length) {\r\n return toPad;\r\n }\r\n const joined = `${this.getRepeatedElement(length, element)}${toPad}`;\r\n return joined.slice(joined.length - length, joined.length);\r\n }\r\n\r\n getRepeatedElement(length: number, element: string): string {\r\n return Array(length).fill(element).join('');\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimeRangePipe } from './time-range.pipe';\r\n\r\n@NgModule({\r\n exports: [XTimeRangePipe],\r\n imports: [XTimeRangePipe]\r\n})\r\nexport class XTimeRangeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-time-range.mjs","sources":["../../../../lib/ng-nest/ui/time-range/time-range.property.ts","../../../../lib/ng-nest/ui/time-range/time-range.pipe.ts","../../../../lib/ng-nest/ui/time-range/time-range.module.ts","../../../../lib/ng-nest/ui/time-range/ng-nest-ui-time-range.ts"],"sourcesContent":["/**\r\n * TimeRange\r\n * @selector xTimeRange\r\n * @decorator Pipe\r\n */\r\nexport const XTimeRangePrefix = 'xTimeRange';\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { XTimeRangePrefix } from './time-range.property';\r\n\r\nexport const timeUnits: Array<[string, number]> = [\r\n ['Y', 1000 * 60 * 60 * 24 * 365], // years\r\n ['M', 1000 * 60 * 60 * 24 * 30], // months\r\n ['D', 1000 * 60 * 60 * 24], // days\r\n ['H', 1000 * 60 * 60], // hours\r\n ['m', 1000 * 60], // minutes\r\n ['s', 1000], // seconds\r\n ['S', 1] // million seconds\r\n];\r\n\r\n@Pipe({ name: `${XTimeRangePrefix}`, standalone: true })\r\nexport class XTimeRangePipe implements PipeTransform {\r\n transform(value: string | number, format: string = 'HH:mm:ss'): string {\r\n let duration = Number(value || 0);\r\n\r\n return timeUnits.reduce((current, [name, unit]) => {\r\n if (current.indexOf(name) !== -1) {\r\n const v = Math.floor(duration / unit);\r\n duration -= v * unit;\r\n return current.replace(new RegExp(`${name}+`, 'g'), (match: string) => {\r\n return this.padStart(v.toString(), match.length, '0');\r\n });\r\n }\r\n return current;\r\n }, format);\r\n }\r\n\r\n padStart(toPad: string, length: number, element: string): string {\r\n if (toPad.length > length) {\r\n return toPad;\r\n }\r\n const joined = `${this.getRepeatedElement(length, element)}${toPad}`;\r\n return joined.slice(joined.length - length, joined.length);\r\n }\r\n\r\n getRepeatedElement(length: number, element: string): string {\r\n return Array(length).fill(element).join('');\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimeRangePipe } from './time-range.pipe';\r\n\r\n@NgModule({\r\n exports: [XTimeRangePipe],\r\n imports: [XTimeRangePipe]\r\n})\r\nexport class XTimeRangeModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -28,8 +28,8 @@ class XTimelineProperty extends XProperty {
28
28
  */
29
29
  this.data = [];
30
30
  }
31
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
32
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: XTimelineProperty, selector: "x-timeline-property", inputs: { data: "data", type: "type", size: "size", wrapper: "wrapper", mode: "mode" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
31
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
32
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: XTimelineProperty, selector: "x-timeline-property", inputs: { data: "data", type: "type", size: "size", wrapper: "wrapper", mode: "mode" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
33
33
  }
34
34
  __decorate([
35
35
  XDataConvert()
@@ -40,7 +40,7 @@ __decorate([
40
40
  __decorate([
41
41
  XWithConfig(X_CONFIG_NAME, 'left')
42
42
  ], XTimelineProperty.prototype, "mode", void 0);
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineProperty, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineProperty, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: `${XTimelinePrefix}-property`, template: '' }]
46
46
  }], propDecorators: { data: [{
@@ -106,20 +106,20 @@ class XTimelineComponent extends XTimelineProperty {
106
106
  }
107
107
  }
108
108
  }
109
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
110
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: XTimelineComponent, isStandalone: true, selector: "x-timeline", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #timeline class=\"x-timeline\" [ngClass]=\"classMap\">\r\n <ul>\r\n @for (node of nodes; track node.id) {\r\n <li [class.x-timeline-loading]=\"node.loading\">\r\n <div class=\"x-timeline-tail\" [class.x-timeline-tail-dashed]=\"node.dashed\"></div>\r\n <div\r\n class=\"x-timeline-icon {{ node.type ? 'x-timeline-' + node.type : '' }} {{\r\n node.size ? 'x-timeline-' + node.size : ''\r\n }}\"\r\n [style.background-color]=\"node.color\"\r\n >\r\n @if (node.icon && !node.loading) {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading) {\r\n <x-icon type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n </div>\r\n <div class=\"x-timeline-wrapper\">\r\n <ng-container *xOutlet=\"wrapper; context: { $node: node }\">\r\n <div class=\"x-timeline-label\">\r\n @if (node.label) {\r\n <x-link>{{ node.label }}</x-link>\r\n }\r\n <span class=\"x-timeline-time\" [title]=\"node.time | date: 'yyyy-MM-dd HH:mm:ss'\">{{\r\n node.time | xTimeAgo\r\n }}</span>\r\n </div>\r\n <div class=\"x-timeline-content\">{{ node.content }}</div>\r\n </ng-container>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n", styles: [".x-timeline{margin:0;padding:0;display:block}.x-timeline ul,.x-timeline li{margin:0;padding:0;list-style:none}.x-timeline>ul{padding-left:.625rem}.x-timeline>ul>li{padding-bottom:1rem;position:relative}.x-timeline>ul>li:last-child .x-timeline-tail{border-left-color:transparent}.x-timeline>ul>li:first-child .x-timeline-tail{top:1.25rem}.x-timeline-tail{position:absolute;height:100%;border-left:.125rem solid var(--x-border)}.x-timeline-tail-dashed{border-left-style:dashed}.x-timeline-icon{position:absolute;background-color:var(--x-border);border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--x-white);width:1.375rem;height:1.375rem;border:.0625rem solid var(--x-background-100)}.x-timeline-wrapper{position:relative}.x-timeline-label{display:flex;align-items:center;margin-bottom:.125rem}.x-timeline-label>x-link{margin-right:.325rem}.x-timeline-content{color:var(--x-text-300)}.x-timeline-time{font-size:.75rem;color:var(--x-text-400)}.x-timeline-loading .x-timeline-icon{color:var(--x-text-400);font-size:1.25rem;background-color:transparent!important}.x-timeline-left .x-timeline-icon{left:-.625rem}.x-timeline-left .x-timeline-wrapper{padding-left:1.625rem}.x-timeline-right .x-timeline-icon{right:-.625rem}.x-timeline-right .x-timeline-wrapper{padding-right:1.625rem;text-align:right}.x-timeline-right .x-timeline-tail{right:0}.x-timeline-right .x-timeline-label{justify-content:flex-end}.x-timeline-right .x-timeline-content{text-align:right}.x-timeline-alternate .x-timeline-icon{left:50%;margin-left:-.6875rem}.x-timeline-alternate .x-timeline-tail{left:50%;margin-left:-.0625rem}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-wrapper{width:50%;padding-right:1.625rem;text-align:right}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-label{justify-content:flex-end}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-content{text-align:right}.x-timeline-alternate>ul>li:nth-child(2n) .x-timeline-wrapper{left:50%;width:50%;padding-left:1.625rem}.x-timeline-primary{background-color:var(--x-primary)}.x-timeline-success{background-color:var(--x-success)}.x-timeline-warning{background-color:var(--x-warning)}.x-timeline-danger{background-color:var(--x-danger)}.x-timeline-info{background-color:var(--x-info)}.x-timeline-big{width:2.175rem;height:2.175rem;left:-1.025rem;font-size:1.55rem}.x-timeline-large{width:1.875rem;height:1.875rem;left:-.875rem;font-size:1.25rem}.x-timeline-medium{width:1.675rem;height:1.675rem;left:-.775rem;font-size:1.05rem}.x-timeline-small{width:1.5rem;height:1.5rem;left:-.6875rem;font-size:.875rem}.x-timeline-mini{width:1.375rem;height:1.375rem;left:-.625rem;font-size:.75rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "pipe", type: XTimeAgoPipe, name: "xTimeAgo" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
109
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
110
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: XTimelineComponent, isStandalone: true, selector: "x-timeline", usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #timeline class=\"x-timeline\" [ngClass]=\"classMap\">\r\n <ul>\r\n @for (node of nodes; track node.id) {\r\n <li [class.x-timeline-loading]=\"node.loading\">\r\n <div class=\"x-timeline-tail\" [class.x-timeline-tail-dashed]=\"node.dashed\"></div>\r\n <div\r\n class=\"x-timeline-icon {{ node.type ? 'x-timeline-' + node.type : '' }} {{\r\n node.size ? 'x-timeline-' + node.size : ''\r\n }}\"\r\n [style.background-color]=\"node.color\"\r\n >\r\n @if (node.icon && !node.loading) {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading) {\r\n <x-icon type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n </div>\r\n <div class=\"x-timeline-wrapper\">\r\n <ng-container *xOutlet=\"wrapper; context: { $node: node }\">\r\n <div class=\"x-timeline-label\">\r\n @if (node.label) {\r\n <x-link>{{ node.label }}</x-link>\r\n }\r\n <span class=\"x-timeline-time\" [title]=\"node.time | date: 'yyyy-MM-dd HH:mm:ss'\">{{\r\n node.time | xTimeAgo\r\n }}</span>\r\n </div>\r\n <div class=\"x-timeline-content\">{{ node.content }}</div>\r\n </ng-container>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n", styles: [".x-timeline{margin:0;padding:0;display:block}.x-timeline ul,.x-timeline li{margin:0;padding:0;list-style:none}.x-timeline>ul{padding-left:.625rem}.x-timeline>ul>li{padding-bottom:1rem;position:relative}.x-timeline>ul>li:last-child .x-timeline-tail{border-left-color:transparent}.x-timeline>ul>li:first-child .x-timeline-tail{top:1.25rem}.x-timeline-tail{position:absolute;height:100%;border-left:.125rem solid var(--x-border)}.x-timeline-tail-dashed{border-left-style:dashed}.x-timeline-icon{position:absolute;background-color:var(--x-border);border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--x-white);width:1.375rem;height:1.375rem;border:.0625rem solid var(--x-background-100)}.x-timeline-wrapper{position:relative}.x-timeline-label{display:flex;align-items:center;margin-bottom:.125rem}.x-timeline-label>x-link{margin-right:.325rem}.x-timeline-content{color:var(--x-text-300)}.x-timeline-time{font-size:.75rem;color:var(--x-text-400)}.x-timeline-loading .x-timeline-icon{color:var(--x-text-400);font-size:1.25rem;background-color:transparent!important}.x-timeline-left .x-timeline-icon{left:-.625rem}.x-timeline-left .x-timeline-wrapper{padding-left:1.625rem}.x-timeline-right .x-timeline-icon{right:-.625rem}.x-timeline-right .x-timeline-wrapper{padding-right:1.625rem;text-align:right}.x-timeline-right .x-timeline-tail{right:0}.x-timeline-right .x-timeline-label{justify-content:flex-end}.x-timeline-right .x-timeline-content{text-align:right}.x-timeline-alternate .x-timeline-icon{left:50%;margin-left:-.6875rem}.x-timeline-alternate .x-timeline-tail{left:50%;margin-left:-.0625rem}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-wrapper{width:50%;padding-right:1.625rem;text-align:right}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-label{justify-content:flex-end}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-content{text-align:right}.x-timeline-alternate>ul>li:nth-child(2n) .x-timeline-wrapper{left:50%;width:50%;padding-left:1.625rem}.x-timeline-primary{background-color:var(--x-primary)}.x-timeline-success{background-color:var(--x-success)}.x-timeline-warning{background-color:var(--x-warning)}.x-timeline-danger{background-color:var(--x-danger)}.x-timeline-info{background-color:var(--x-info)}.x-timeline-big{width:2.175rem;height:2.175rem;left:-1.025rem;font-size:1.55rem}.x-timeline-large{width:1.875rem;height:1.875rem;left:-.875rem;font-size:1.25rem}.x-timeline-medium{width:1.675rem;height:1.675rem;left:-.775rem;font-size:1.05rem}.x-timeline-small{width:1.5rem;height:1.5rem;left:-.6875rem;font-size:.875rem}.x-timeline-mini{width:1.375rem;height:1.375rem;left:-.625rem;font-size:.75rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "pipe", type: XTimeAgoPipe, name: "xTimeAgo" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
111
111
  }
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineComponent, decorators: [{
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineComponent, decorators: [{
113
113
  type: Component,
114
114
  args: [{ selector: `${XTimelinePrefix}`, standalone: true, imports: [NgClass, DatePipe, XIconComponent, XTimeAgoPipe, XLinkComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #timeline class=\"x-timeline\" [ngClass]=\"classMap\">\r\n <ul>\r\n @for (node of nodes; track node.id) {\r\n <li [class.x-timeline-loading]=\"node.loading\">\r\n <div class=\"x-timeline-tail\" [class.x-timeline-tail-dashed]=\"node.dashed\"></div>\r\n <div\r\n class=\"x-timeline-icon {{ node.type ? 'x-timeline-' + node.type : '' }} {{\r\n node.size ? 'x-timeline-' + node.size : ''\r\n }}\"\r\n [style.background-color]=\"node.color\"\r\n >\r\n @if (node.icon && !node.loading) {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading) {\r\n <x-icon type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n </div>\r\n <div class=\"x-timeline-wrapper\">\r\n <ng-container *xOutlet=\"wrapper; context: { $node: node }\">\r\n <div class=\"x-timeline-label\">\r\n @if (node.label) {\r\n <x-link>{{ node.label }}</x-link>\r\n }\r\n <span class=\"x-timeline-time\" [title]=\"node.time | date: 'yyyy-MM-dd HH:mm:ss'\">{{\r\n node.time | xTimeAgo\r\n }}</span>\r\n </div>\r\n <div class=\"x-timeline-content\">{{ node.content }}</div>\r\n </ng-container>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n", styles: [".x-timeline{margin:0;padding:0;display:block}.x-timeline ul,.x-timeline li{margin:0;padding:0;list-style:none}.x-timeline>ul{padding-left:.625rem}.x-timeline>ul>li{padding-bottom:1rem;position:relative}.x-timeline>ul>li:last-child .x-timeline-tail{border-left-color:transparent}.x-timeline>ul>li:first-child .x-timeline-tail{top:1.25rem}.x-timeline-tail{position:absolute;height:100%;border-left:.125rem solid var(--x-border)}.x-timeline-tail-dashed{border-left-style:dashed}.x-timeline-icon{position:absolute;background-color:var(--x-border);border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--x-white);width:1.375rem;height:1.375rem;border:.0625rem solid var(--x-background-100)}.x-timeline-wrapper{position:relative}.x-timeline-label{display:flex;align-items:center;margin-bottom:.125rem}.x-timeline-label>x-link{margin-right:.325rem}.x-timeline-content{color:var(--x-text-300)}.x-timeline-time{font-size:.75rem;color:var(--x-text-400)}.x-timeline-loading .x-timeline-icon{color:var(--x-text-400);font-size:1.25rem;background-color:transparent!important}.x-timeline-left .x-timeline-icon{left:-.625rem}.x-timeline-left .x-timeline-wrapper{padding-left:1.625rem}.x-timeline-right .x-timeline-icon{right:-.625rem}.x-timeline-right .x-timeline-wrapper{padding-right:1.625rem;text-align:right}.x-timeline-right .x-timeline-tail{right:0}.x-timeline-right .x-timeline-label{justify-content:flex-end}.x-timeline-right .x-timeline-content{text-align:right}.x-timeline-alternate .x-timeline-icon{left:50%;margin-left:-.6875rem}.x-timeline-alternate .x-timeline-tail{left:50%;margin-left:-.0625rem}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-wrapper{width:50%;padding-right:1.625rem;text-align:right}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-label{justify-content:flex-end}.x-timeline-alternate>ul>li:nth-child(odd) .x-timeline-content{text-align:right}.x-timeline-alternate>ul>li:nth-child(2n) .x-timeline-wrapper{left:50%;width:50%;padding-left:1.625rem}.x-timeline-primary{background-color:var(--x-primary)}.x-timeline-success{background-color:var(--x-success)}.x-timeline-warning{background-color:var(--x-warning)}.x-timeline-danger{background-color:var(--x-danger)}.x-timeline-info{background-color:var(--x-info)}.x-timeline-big{width:2.175rem;height:2.175rem;left:-1.025rem;font-size:1.55rem}.x-timeline-large{width:1.875rem;height:1.875rem;left:-.875rem;font-size:1.25rem}.x-timeline-medium{width:1.675rem;height:1.675rem;left:-.775rem;font-size:1.05rem}.x-timeline-small{width:1.5rem;height:1.5rem;left:-.6875rem;font-size:.875rem}.x-timeline-mini{width:1.375rem;height:1.375rem;left:-.625rem;font-size:.75rem}\n"] }]
115
115
  }] });
116
116
 
117
117
  class XTimelineModule {
118
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
119
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: XTimelineModule, imports: [XTimelineComponent], exports: [XTimelineComponent] }); }
120
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineModule, imports: [XTimelineComponent] }); }
118
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
119
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: XTimelineModule, imports: [XTimelineComponent], exports: [XTimelineComponent] }); }
120
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineModule, imports: [XTimelineComponent] }); }
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: XTimelineModule, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XTimelineModule, decorators: [{
123
123
  type: NgModule,
124
124
  args: [{
125
125
  exports: [XTimelineComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-timeline.mjs","sources":["../../../../lib/ng-nest/ui/timeline/timeline.property.ts","../../../../lib/ng-nest/ui/timeline/timeline.component.ts","../../../../lib/ng-nest/ui/timeline/timeline.component.html","../../../../lib/ng-nest/ui/timeline/timeline.module.ts","../../../../lib/ng-nest/ui/timeline/ng-nest-ui-timeline.ts"],"sourcesContent":["import { XType, XSize, XData, XTemplate, XProperty, XIdentityProperty, XDataConvert, XWithConfig, XDate } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Timeline\r\n * @selector x-timeline\r\n * @decorator component\r\n */\r\nexport const XTimelinePrefix = 'x-timeline';\r\nconst X_CONFIG_NAME = 'timeline';\r\n\r\n/**\r\n * Timeline Property\r\n */\r\n@Component({ selector: `${XTimelinePrefix}-property`, template: '' })\r\nexport class XTimelineProperty extends XProperty {\r\n /**\r\n * @zh_CN 数据\r\n * @en_US Date\r\n */\r\n @Input() @XDataConvert() data: XData<XTimelineNode> = [];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\n @Input() type?: XType;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') size?: XSize;\r\n /**\r\n * @zh_CN 内容模板\r\n * @en_US Content template\r\n */\r\n @Input() wrapper?: XTemplate;\r\n /**\r\n * @zh_CN 时间轴的相对位置\r\n * @en_US Content and timeline relative position\r\n */\r\n @Input() @XWithConfig<XTimelineMode>(X_CONFIG_NAME, 'left') mode?: XTimelineMode;\r\n}\r\n\r\n/**\r\n * @zh_CN Timeline 数据对象\r\n * @en_US Timeline node data\r\n */\r\nexport interface XTimelineNode extends XIdentityProperty {\r\n /**\r\n * @zh_CN 时间\r\n * @en_US Time\r\n */\r\n time?: XDate;\r\n /**\r\n * @zh_CN 内容\r\n * @en_US Content\r\n */\r\n content?: string;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\n type?: XType;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 颜色\r\n * @en_US Color\r\n */\r\n color?: string;\r\n /**\r\n * @zh_CN 加载中\r\n * @en_US Loading\r\n */\r\n loading?: boolean;\r\n /**\r\n * @zh_CN 连接线显示虚线,针对下一个节点,下一个节点为 loading 状态也会显示虚线\r\n * @en_US The connecting line displays a dotted line. For the next node, the dotted line will also be displayed when the next node is in loading status\r\n */\r\n dashed?: boolean;\r\n /**\r\n * @zh_CN 其它自定义属性\r\n * @en_US Other property\r\n */\r\n [property: string]: any;\r\n}\r\n\r\n/**\r\n * @zh_CN 时间轴的相对位置\r\n * @en_US Content and timeline relative position\r\n */\r\nexport type XTimelineMode = 'left' | 'right' | 'alternate';\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XTimelinePrefix, XTimelineNode, XTimelineProperty } from './timeline.property';\r\nimport { XIsChange, XSetData, XConfigService, XClearClass } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { DatePipe, NgClass } from '@angular/common';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XTimeAgoPipe } from '@ng-nest/ui/time-ago';\r\nimport { XLinkComponent } from '@ng-nest/ui/link';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\n\r\n@Component({\r\n selector: `${XTimelinePrefix}`,\r\n standalone: true,\r\n imports: [NgClass, DatePipe, XIconComponent, XTimeAgoPipe, XLinkComponent, XOutletDirective],\r\n templateUrl: './timeline.component.html',\r\n styleUrls: ['./timeline.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XTimelineComponent extends XTimelineProperty implements OnInit, OnChanges, OnDestroy {\r\n nodes: XTimelineNode[] = [];\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data, mode } = changes;\r\n XIsChange(data) && this.setData();\r\n XIsChange(mode) && this.setClassMap();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap[`${XTimelinePrefix}-${this.mode}`] = this.mode ? true : false;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n trackByNode(_index: number, item: XTimelineNode) {\r\n return item.id;\r\n }\r\n\r\n private setData() {\r\n XSetData<XTimelineNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.setDashed(x);\r\n this.nodes = x;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n private setDashed(nodes: XTimelineNode[]) {\r\n const len = nodes.length;\r\n if (len <= 1) return;\r\n for (let i = 0; i < nodes.length; i++) {\r\n let node = nodes[i];\r\n if (!node.loading) continue;\r\n if (i === 0) {\r\n node.dashed = true;\r\n } else if (i > 0) {\r\n nodes[i - 1].dashed = true;\r\n }\r\n }\r\n }\r\n}\r\n","<div #timeline class=\"x-timeline\" [ngClass]=\"classMap\">\r\n <ul>\r\n @for (node of nodes; track node.id) {\r\n <li [class.x-timeline-loading]=\"node.loading\">\r\n <div class=\"x-timeline-tail\" [class.x-timeline-tail-dashed]=\"node.dashed\"></div>\r\n <div\r\n class=\"x-timeline-icon {{ node.type ? 'x-timeline-' + node.type : '' }} {{\r\n node.size ? 'x-timeline-' + node.size : ''\r\n }}\"\r\n [style.background-color]=\"node.color\"\r\n >\r\n @if (node.icon && !node.loading) {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading) {\r\n <x-icon type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n </div>\r\n <div class=\"x-timeline-wrapper\">\r\n <ng-container *xOutlet=\"wrapper; context: { $node: node }\">\r\n <div class=\"x-timeline-label\">\r\n @if (node.label) {\r\n <x-link>{{ node.label }}</x-link>\r\n }\r\n <span class=\"x-timeline-time\" [title]=\"node.time | date: 'yyyy-MM-dd HH:mm:ss'\">{{\r\n node.time | xTimeAgo\r\n }}</span>\r\n </div>\r\n <div class=\"x-timeline-content\">{{ node.content }}</div>\r\n </ng-container>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimelineComponent } from './timeline.component';\r\n\r\n@NgModule({\r\n exports: [XTimelineComponent],\r\n imports: [XTimelineComponent]\r\n})\r\nexport class XTimelineModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-timeline.mjs","sources":["../../../../lib/ng-nest/ui/timeline/timeline.property.ts","../../../../lib/ng-nest/ui/timeline/timeline.component.ts","../../../../lib/ng-nest/ui/timeline/timeline.component.html","../../../../lib/ng-nest/ui/timeline/timeline.module.ts","../../../../lib/ng-nest/ui/timeline/ng-nest-ui-timeline.ts"],"sourcesContent":["import { XType, XSize, XData, XTemplate, XProperty, XIdentityProperty, XDataConvert, XWithConfig, XDate } from '@ng-nest/ui/core';\r\nimport { Input, Component } from '@angular/core';\r\n\r\n/**\r\n * Timeline\r\n * @selector x-timeline\r\n * @decorator component\r\n */\r\nexport const XTimelinePrefix = 'x-timeline';\r\nconst X_CONFIG_NAME = 'timeline';\r\n\r\n/**\r\n * Timeline Property\r\n */\r\n@Component({ selector: `${XTimelinePrefix}-property`, template: '' })\r\nexport class XTimelineProperty extends XProperty {\r\n /**\r\n * @zh_CN 数据\r\n * @en_US Date\r\n */\r\n @Input() @XDataConvert() data: XData<XTimelineNode> = [];\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\n @Input() type?: XType;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n @Input() @XWithConfig<XSize>(X_CONFIG_NAME, 'medium') size?: XSize;\r\n /**\r\n * @zh_CN 内容模板\r\n * @en_US Content template\r\n */\r\n @Input() wrapper?: XTemplate;\r\n /**\r\n * @zh_CN 时间轴的相对位置\r\n * @en_US Content and timeline relative position\r\n */\r\n @Input() @XWithConfig<XTimelineMode>(X_CONFIG_NAME, 'left') mode?: XTimelineMode;\r\n}\r\n\r\n/**\r\n * @zh_CN Timeline 数据对象\r\n * @en_US Timeline node data\r\n */\r\nexport interface XTimelineNode extends XIdentityProperty {\r\n /**\r\n * @zh_CN 时间\r\n * @en_US Time\r\n */\r\n time?: XDate;\r\n /**\r\n * @zh_CN 内容\r\n * @en_US Content\r\n */\r\n content?: string;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Type\r\n */\r\n type?: XType;\r\n /**\r\n * @zh_CN 图标\r\n * @en_US Icon\r\n */\r\n icon?: string;\r\n /**\r\n * @zh_CN 颜色\r\n * @en_US Color\r\n */\r\n color?: string;\r\n /**\r\n * @zh_CN 加载中\r\n * @en_US Loading\r\n */\r\n loading?: boolean;\r\n /**\r\n * @zh_CN 连接线显示虚线,针对下一个节点,下一个节点为 loading 状态也会显示虚线\r\n * @en_US The connecting line displays a dotted line. For the next node, the dotted line will also be displayed when the next node is in loading status\r\n */\r\n dashed?: boolean;\r\n /**\r\n * @zh_CN 其它自定义属性\r\n * @en_US Other property\r\n */\r\n [property: string]: any;\r\n}\r\n\r\n/**\r\n * @zh_CN 时间轴的相对位置\r\n * @en_US Content and timeline relative position\r\n */\r\nexport type XTimelineMode = 'left' | 'right' | 'alternate';\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n SimpleChanges,\r\n OnChanges,\r\n inject,\r\n OnDestroy\r\n} from '@angular/core';\r\nimport { XTimelinePrefix, XTimelineNode, XTimelineProperty } from './timeline.property';\r\nimport { XIsChange, XSetData, XConfigService, XClearClass } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { DatePipe, NgClass } from '@angular/common';\r\nimport { XIconComponent } from '@ng-nest/ui/icon';\r\nimport { XTimeAgoPipe } from '@ng-nest/ui/time-ago';\r\nimport { XLinkComponent } from '@ng-nest/ui/link';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\n\r\n@Component({\r\n selector: `${XTimelinePrefix}`,\r\n standalone: true,\r\n imports: [NgClass, DatePipe, XIconComponent, XTimeAgoPipe, XLinkComponent, XOutletDirective],\r\n templateUrl: './timeline.component.html',\r\n styleUrls: ['./timeline.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XTimelineComponent extends XTimelineProperty implements OnInit, OnChanges, OnDestroy {\r\n nodes: XTimelineNode[] = [];\r\n private _unSubject = new Subject<void>();\r\n private cdr = inject(ChangeDetectorRef);\r\n configService = inject(XConfigService);\r\n\r\n ngOnInit() {\r\n this.setClassMap();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { data, mode } = changes;\r\n XIsChange(data) && this.setData();\r\n XIsChange(mode) && this.setClassMap();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unSubject.next();\r\n this._unSubject.unsubscribe();\r\n }\r\n\r\n setClassMap() {\r\n XClearClass(this.classMap);\r\n this.classMap[`${XTimelinePrefix}-${this.mode}`] = this.mode ? true : false;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n trackByNode(_index: number, item: XTimelineNode) {\r\n return item.id;\r\n }\r\n\r\n private setData() {\r\n XSetData<XTimelineNode>(this.data, this._unSubject).subscribe((x) => {\r\n this.setDashed(x);\r\n this.nodes = x;\r\n this.cdr.detectChanges();\r\n });\r\n }\r\n\r\n private setDashed(nodes: XTimelineNode[]) {\r\n const len = nodes.length;\r\n if (len <= 1) return;\r\n for (let i = 0; i < nodes.length; i++) {\r\n let node = nodes[i];\r\n if (!node.loading) continue;\r\n if (i === 0) {\r\n node.dashed = true;\r\n } else if (i > 0) {\r\n nodes[i - 1].dashed = true;\r\n }\r\n }\r\n }\r\n}\r\n","<div #timeline class=\"x-timeline\" [ngClass]=\"classMap\">\r\n <ul>\r\n @for (node of nodes; track node.id) {\r\n <li [class.x-timeline-loading]=\"node.loading\">\r\n <div class=\"x-timeline-tail\" [class.x-timeline-tail-dashed]=\"node.dashed\"></div>\r\n <div\r\n class=\"x-timeline-icon {{ node.type ? 'x-timeline-' + node.type : '' }} {{\r\n node.size ? 'x-timeline-' + node.size : ''\r\n }}\"\r\n [style.background-color]=\"node.color\"\r\n >\r\n @if (node.icon && !node.loading) {\r\n <x-icon [type]=\"node.icon\"></x-icon>\r\n }\r\n @if (node.loading) {\r\n <x-icon type=\"fto-loader\" [spin]=\"true\"></x-icon>\r\n }\r\n </div>\r\n <div class=\"x-timeline-wrapper\">\r\n <ng-container *xOutlet=\"wrapper; context: { $node: node }\">\r\n <div class=\"x-timeline-label\">\r\n @if (node.label) {\r\n <x-link>{{ node.label }}</x-link>\r\n }\r\n <span class=\"x-timeline-time\" [title]=\"node.time | date: 'yyyy-MM-dd HH:mm:ss'\">{{\r\n node.time | xTimeAgo\r\n }}</span>\r\n </div>\r\n <div class=\"x-timeline-content\">{{ node.content }}</div>\r\n </ng-container>\r\n </div>\r\n </li>\r\n }\r\n </ul>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XTimelineComponent } from './timeline.component';\r\n\r\n@NgModule({\r\n exports: [XTimelineComponent],\r\n imports: [XTimelineComponent]\r\n})\r\nexport class XTimelineModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}