@ng-nest/ui 13.0.2 → 13.0.6

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 (575) hide show
  1. package/alert/alert.component.d.ts +2 -1
  2. package/carousel/carousel-panel.component.d.ts +2 -3
  3. package/core/config/config.d.ts +7 -0
  4. package/core/interfaces/layout.type.d.ts +1 -1
  5. package/date-picker/date-picker.property.d.ts +51 -1
  6. package/date-picker/date-range-portal.component.d.ts +7 -5
  7. package/date-picker/date-range.component.d.ts +5 -1
  8. package/date-picker/examples/en_US/default/disabled/README.md +1 -1
  9. package/date-picker/examples/en_US/default/time/README.md +6 -0
  10. package/date-picker/examples/zh_CN/default/disabled/README.md +1 -1
  11. package/date-picker/examples/zh_CN/default/time/README.md +6 -0
  12. package/date-picker/picker-date.component.d.ts +3 -0
  13. package/dialog/dialog-portal.component.d.ts +18 -0
  14. package/dialog/dialog-portal.directives.d.ts +24 -0
  15. package/dialog/dialog-ref.d.ts +9 -0
  16. package/dialog/dialog.module.d.ts +13 -11
  17. package/dialog/dialog.property.d.ts +85 -7
  18. package/dialog/dialog.service.d.ts +19 -0
  19. package/dialog/examples/en_US/default/service/README.md +6 -0
  20. package/dialog/examples/zh_CN/default/service/README.md +6 -0
  21. package/dialog/public-api.d.ts +4 -0
  22. package/drawer/drawer-container.component.d.ts +8 -0
  23. package/drawer/drawer-portal.component.d.ts +18 -0
  24. package/drawer/drawer-portal.directives.d.ts +19 -0
  25. package/drawer/drawer-ref.d.ts +9 -0
  26. package/drawer/drawer.component.d.ts +10 -3
  27. package/drawer/drawer.module.d.ts +9 -6
  28. package/drawer/drawer.property.d.ts +97 -2
  29. package/drawer/drawer.service.d.ts +19 -0
  30. package/drawer/examples/en_US/default/container/README.md +6 -0
  31. package/drawer/examples/en_US/default/service/README.md +6 -0
  32. package/drawer/examples/zh_CN/default/container/README.md +6 -0
  33. package/drawer/examples/zh_CN/default/service/README.md +6 -0
  34. package/drawer/public-api.d.ts +6 -0
  35. package/esm2020/affix/affix.component.mjs +3 -3
  36. package/esm2020/affix/affix.module.mjs +4 -4
  37. package/esm2020/affix/affix.property.mjs +3 -3
  38. package/esm2020/alert/alert.component.mjs +11 -6
  39. package/esm2020/alert/alert.module.mjs +4 -4
  40. package/esm2020/alert/alert.property.mjs +3 -3
  41. package/esm2020/anchor/anchor.component.mjs +3 -3
  42. package/esm2020/anchor/anchor.module.mjs +4 -4
  43. package/esm2020/anchor/anchor.property.mjs +3 -3
  44. package/esm2020/api/api.component.mjs +3 -3
  45. package/esm2020/api/api.module.mjs +4 -4
  46. package/esm2020/auto-complete/auto-complete-portal.component.mjs +3 -3
  47. package/esm2020/auto-complete/auto-complete.component.mjs +3 -3
  48. package/esm2020/auto-complete/auto-complete.module.mjs +6 -7
  49. package/esm2020/auto-complete/auto-complete.property.mjs +3 -3
  50. package/esm2020/avatar/avatar.component.mjs +3 -3
  51. package/esm2020/avatar/avatar.module.mjs +4 -4
  52. package/esm2020/avatar/avatar.property.mjs +3 -3
  53. package/esm2020/back-top/back-top.component.mjs +3 -3
  54. package/esm2020/back-top/back-top.module.mjs +4 -4
  55. package/esm2020/back-top/back-top.property.mjs +3 -3
  56. package/esm2020/badge/badge.component.mjs +3 -3
  57. package/esm2020/badge/badge.module.mjs +4 -4
  58. package/esm2020/badge/badge.property.mjs +3 -3
  59. package/esm2020/base-form/base-form.component.mjs +3 -3
  60. package/esm2020/base-form/base-form.module.mjs +4 -4
  61. package/esm2020/base-form/base-form.property.mjs +3 -3
  62. package/esm2020/border/border.component.mjs +3 -3
  63. package/esm2020/border/border.module.mjs +4 -4
  64. package/esm2020/button/button.component.mjs +4 -4
  65. package/esm2020/button/button.module.mjs +4 -4
  66. package/esm2020/button/button.property.mjs +6 -6
  67. package/esm2020/button/buttons.component.mjs +3 -3
  68. package/esm2020/calendar/calendar.component.mjs +3 -3
  69. package/esm2020/calendar/calendar.module.mjs +4 -4
  70. package/esm2020/calendar/calendar.property.mjs +3 -3
  71. package/esm2020/card/card.component.mjs +4 -4
  72. package/esm2020/card/card.module.mjs +4 -4
  73. package/esm2020/card/card.property.mjs +3 -3
  74. package/esm2020/carousel/carousel-panel.component.mjs +14 -13
  75. package/esm2020/carousel/carousel.component.mjs +3 -3
  76. package/esm2020/carousel/carousel.module.mjs +4 -4
  77. package/esm2020/carousel/carousel.property.mjs +6 -6
  78. package/esm2020/cascade/cascade-portal.component.mjs +3 -3
  79. package/esm2020/cascade/cascade.component.mjs +3 -3
  80. package/esm2020/cascade/cascade.module.mjs +6 -7
  81. package/esm2020/cascade/cascade.property.mjs +3 -3
  82. package/esm2020/checkbox/checkbox.component.mjs +4 -4
  83. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  84. package/esm2020/checkbox/checkbox.property.mjs +3 -3
  85. package/esm2020/collapse/collapse-panel.component.mjs +3 -3
  86. package/esm2020/collapse/collapse.component.mjs +3 -3
  87. package/esm2020/collapse/collapse.module.mjs +4 -4
  88. package/esm2020/collapse/collapse.property.mjs +6 -6
  89. package/esm2020/color/color.component.mjs +3 -3
  90. package/esm2020/color/color.module.mjs +4 -4
  91. package/esm2020/color/color.property.mjs +3 -3
  92. package/esm2020/color-picker/color-picker-portal.component.mjs +3 -3
  93. package/esm2020/color-picker/color-picker.component.mjs +3 -3
  94. package/esm2020/color-picker/color-picker.module.mjs +6 -7
  95. package/esm2020/color-picker/color-picker.property.mjs +3 -3
  96. package/esm2020/comment/comment-reply.component.mjs +3 -3
  97. package/esm2020/comment/comment.component.mjs +3 -3
  98. package/esm2020/comment/comment.module.mjs +4 -4
  99. package/esm2020/comment/comment.property.mjs +6 -6
  100. package/esm2020/container/aside.component.mjs +3 -3
  101. package/esm2020/container/container.component.mjs +3 -3
  102. package/esm2020/container/container.module.mjs +4 -4
  103. package/esm2020/container/container.property.mjs +12 -12
  104. package/esm2020/container/footer.component.mjs +4 -4
  105. package/esm2020/container/header.component.mjs +4 -4
  106. package/esm2020/container/main.component.mjs +4 -4
  107. package/esm2020/core/config/config.mjs +1 -1
  108. package/esm2020/core/config/config.service.mjs +3 -3
  109. package/esm2020/core/interfaces/layout.type.mjs +1 -1
  110. package/esm2020/core/services/http.service.mjs +3 -3
  111. package/esm2020/core/services/preloading-strategy.service.mjs +3 -3
  112. package/esm2020/core/services/storage.service.mjs +3 -3
  113. package/esm2020/core/theme/theme.service.mjs +3 -3
  114. package/esm2020/crumb/crumb.component.mjs +3 -3
  115. package/esm2020/crumb/crumb.module.mjs +4 -4
  116. package/esm2020/crumb/crumb.property.mjs +3 -3
  117. package/esm2020/date-picker/date-picker-portal.component.mjs +3 -3
  118. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  119. package/esm2020/date-picker/date-picker.module.mjs +6 -7
  120. package/esm2020/date-picker/date-picker.property.mjs +86 -16
  121. package/esm2020/date-picker/date-range-portal.component.mjs +47 -28
  122. package/esm2020/date-picker/date-range.component.mjs +33 -10
  123. package/esm2020/date-picker/picker-date.component.mjs +33 -6
  124. package/esm2020/date-picker/picker-month.component.mjs +3 -3
  125. package/esm2020/date-picker/picker-year.component.mjs +3 -3
  126. package/esm2020/description/description-item.component.mjs +3 -3
  127. package/esm2020/description/description.component.mjs +3 -3
  128. package/esm2020/description/description.module.mjs +4 -4
  129. package/esm2020/description/description.property.mjs +6 -6
  130. package/esm2020/dialog/dialog-portal.component.mjs +52 -0
  131. package/esm2020/dialog/dialog-portal.directives.mjs +73 -0
  132. package/esm2020/dialog/dialog-ref.mjs +17 -0
  133. package/esm2020/dialog/dialog.component.mjs +7 -7
  134. package/esm2020/dialog/dialog.module.mjs +39 -9
  135. package/esm2020/dialog/dialog.property.mjs +21 -20
  136. package/esm2020/dialog/dialog.service.mjs +67 -0
  137. package/esm2020/dialog/public-api.mjs +5 -1
  138. package/esm2020/doc/doc.component.mjs +4 -4
  139. package/esm2020/doc/doc.module.mjs +4 -4
  140. package/esm2020/drawer/drawer-container.component.mjs +29 -0
  141. package/esm2020/drawer/drawer-portal.component.mjs +52 -0
  142. package/esm2020/drawer/drawer-portal.directives.mjs +57 -0
  143. package/esm2020/drawer/drawer-ref.mjs +17 -0
  144. package/esm2020/drawer/drawer.component.mjs +55 -19
  145. package/esm2020/drawer/drawer.module.mjs +42 -9
  146. package/esm2020/drawer/drawer.property.mjs +42 -8
  147. package/esm2020/drawer/drawer.service.mjs +65 -0
  148. package/esm2020/drawer/public-api.mjs +7 -1
  149. package/esm2020/dropdown/dropdown-portal.component.mjs +3 -3
  150. package/esm2020/dropdown/dropdown.component.mjs +3 -3
  151. package/esm2020/dropdown/dropdown.module.mjs +6 -7
  152. package/esm2020/dropdown/dropdown.property.mjs +3 -3
  153. package/esm2020/empty/empty.component.mjs +3 -3
  154. package/esm2020/empty/empty.module.mjs +4 -4
  155. package/esm2020/empty/empty.property.mjs +3 -3
  156. package/esm2020/examples/examples.component.mjs +3 -3
  157. package/esm2020/examples/examples.module.mjs +4 -4
  158. package/esm2020/find/find.component.mjs +15 -6
  159. package/esm2020/find/find.module.mjs +4 -4
  160. package/esm2020/find/find.property.mjs +20 -4
  161. package/esm2020/form/control.component.mjs +3 -3
  162. package/esm2020/form/form.component.mjs +3 -3
  163. package/esm2020/form/form.module.mjs +4 -4
  164. package/esm2020/form/form.property.mjs +6 -6
  165. package/esm2020/highlight/highlight.component.mjs +3 -3
  166. package/esm2020/highlight/highlight.module.mjs +4 -4
  167. package/esm2020/highlight/highlight.property.mjs +3 -3
  168. package/esm2020/i18n/i18n.directive.mjs +3 -3
  169. package/esm2020/i18n/i18n.module.mjs +4 -4
  170. package/esm2020/i18n/i18n.pipe.mjs +3 -3
  171. package/esm2020/i18n/i18n.service.mjs +3 -3
  172. package/esm2020/icon/icon.component.mjs +3 -3
  173. package/esm2020/icon/icon.module.mjs +4 -4
  174. package/esm2020/icon/icon.property.mjs +3 -3
  175. package/esm2020/icon/icon.service.mjs +3 -3
  176. package/esm2020/inner/inner.component.mjs +3 -3
  177. package/esm2020/inner/inner.module.mjs +4 -4
  178. package/esm2020/inner/inner.property.mjs +3 -3
  179. package/esm2020/input/input-group.component.mjs +3 -3
  180. package/esm2020/input/input.component.mjs +6 -5
  181. package/esm2020/input/input.module.mjs +4 -4
  182. package/esm2020/input/input.property.mjs +6 -6
  183. package/esm2020/input-number/input-number.component.mjs +3 -3
  184. package/esm2020/input-number/input-number.module.mjs +4 -4
  185. package/esm2020/input-number/input-number.property.mjs +3 -3
  186. package/esm2020/layout/col.component.mjs +3 -3
  187. package/esm2020/layout/layout.module.mjs +4 -4
  188. package/esm2020/layout/layout.property.mjs +6 -6
  189. package/esm2020/layout/row.component.mjs +3 -3
  190. package/esm2020/link/link.component.mjs +3 -3
  191. package/esm2020/link/link.module.mjs +4 -4
  192. package/esm2020/link/link.property.mjs +3 -3
  193. package/esm2020/list/list-option.component.mjs +3 -3
  194. package/esm2020/list/list.component.mjs +3 -3
  195. package/esm2020/list/list.module.mjs +4 -4
  196. package/esm2020/list/list.property.mjs +6 -6
  197. package/esm2020/loading/loading.component.mjs +3 -3
  198. package/esm2020/loading/loading.module.mjs +4 -4
  199. package/esm2020/loading/loading.property.mjs +3 -3
  200. package/esm2020/menu/menu-node.component.mjs +3 -3
  201. package/esm2020/menu/menu.component.mjs +5 -5
  202. package/esm2020/menu/menu.module.mjs +4 -4
  203. package/esm2020/menu/menu.property.mjs +6 -6
  204. package/esm2020/message/message-ref.mjs +12 -0
  205. package/esm2020/message/message.component.mjs +6 -6
  206. package/esm2020/message/message.module.mjs +4 -4
  207. package/esm2020/message/message.property.mjs +2 -2
  208. package/esm2020/message/message.service.mjs +39 -18
  209. package/esm2020/message/public-api.mjs +2 -1
  210. package/esm2020/message-box/message-box.component.mjs +3 -3
  211. package/esm2020/message-box/message-box.module.mjs +4 -4
  212. package/esm2020/message-box/message-box.service.mjs +3 -3
  213. package/esm2020/notification/notification.component.mjs +3 -3
  214. package/esm2020/notification/notification.module.mjs +4 -4
  215. package/esm2020/notification/notification.service.mjs +3 -3
  216. package/esm2020/outlet/outlet.directive.mjs +3 -3
  217. package/esm2020/outlet/outlet.module.mjs +4 -4
  218. package/esm2020/page-header/page-header.component.mjs +3 -3
  219. package/esm2020/page-header/page-header.module.mjs +4 -4
  220. package/esm2020/page-header/page-header.property.mjs +3 -3
  221. package/esm2020/pagination/pagination.component.mjs +4 -4
  222. package/esm2020/pagination/pagination.module.mjs +4 -4
  223. package/esm2020/pagination/pagination.property.mjs +3 -3
  224. package/esm2020/pattern/pattern.component.mjs +3 -3
  225. package/esm2020/pattern/pattern.module.mjs +4 -4
  226. package/esm2020/popconfirm/popconfirm.component.mjs +28 -7
  227. package/esm2020/popconfirm/popconfirm.module.mjs +4 -4
  228. package/esm2020/popconfirm/popconfirm.property.mjs +12 -5
  229. package/esm2020/popover/popover-portal.component.mjs +3 -3
  230. package/esm2020/popover/popover.directive.mjs +11 -5
  231. package/esm2020/popover/popover.module.mjs +6 -7
  232. package/esm2020/popover/popover.property.mjs +9 -4
  233. package/esm2020/portal/portal.module.mjs +6 -5
  234. package/esm2020/portal/portal.service.mjs +11 -12
  235. package/esm2020/progress/progress.component.mjs +179 -18
  236. package/esm2020/progress/progress.module.mjs +4 -4
  237. package/esm2020/progress/progress.property.mjs +52 -5
  238. package/esm2020/radio/radio.component.mjs +4 -4
  239. package/esm2020/radio/radio.module.mjs +4 -4
  240. package/esm2020/radio/radio.property.mjs +3 -3
  241. package/esm2020/rate/rate.component.mjs +4 -4
  242. package/esm2020/rate/rate.module.mjs +4 -4
  243. package/esm2020/rate/rate.property.mjs +3 -3
  244. package/esm2020/result/result.component.mjs +4 -4
  245. package/esm2020/result/result.module.mjs +4 -4
  246. package/esm2020/result/result.property.mjs +3 -3
  247. package/esm2020/ripple/ripple.directive.mjs +3 -3
  248. package/esm2020/ripple/ripple.module.mjs +4 -4
  249. package/esm2020/ripple/ripple.property.mjs +3 -3
  250. package/esm2020/select/select-portal.component.mjs +3 -3
  251. package/esm2020/select/select.component.mjs +3 -3
  252. package/esm2020/select/select.module.mjs +6 -7
  253. package/esm2020/select/select.property.mjs +3 -3
  254. package/esm2020/skeleton/skeleton.component.mjs +3 -3
  255. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  256. package/esm2020/skeleton/skeleton.property.mjs +3 -3
  257. package/esm2020/slider/slider.component.mjs +3 -3
  258. package/esm2020/slider/slider.module.mjs +4 -4
  259. package/esm2020/slider/slider.property.mjs +3 -3
  260. package/esm2020/slider-select/slider-select.component.mjs +4 -4
  261. package/esm2020/slider-select/slider-select.module.mjs +4 -4
  262. package/esm2020/slider-select/slider-select.property.mjs +3 -3
  263. package/esm2020/statistic/countdown.component.mjs +3 -3
  264. package/esm2020/statistic/statistic.component.mjs +3 -3
  265. package/esm2020/statistic/statistic.module.mjs +4 -4
  266. package/esm2020/statistic/statistic.property.mjs +6 -6
  267. package/esm2020/steps/steps.component.mjs +18 -11
  268. package/esm2020/steps/steps.module.mjs +4 -4
  269. package/esm2020/steps/steps.property.mjs +10 -5
  270. package/esm2020/switch/switch.component.mjs +4 -4
  271. package/esm2020/switch/switch.module.mjs +4 -4
  272. package/esm2020/switch/switch.property.mjs +3 -3
  273. package/esm2020/table/drag.directive.mjs +3 -3
  274. package/esm2020/table/table-body.component.mjs +3 -3
  275. package/esm2020/table/table-foot.component.mjs +3 -3
  276. package/esm2020/table/table-head.component.mjs +3 -3
  277. package/esm2020/table/table.component.mjs +3 -3
  278. package/esm2020/table/table.module.mjs +4 -4
  279. package/esm2020/table/table.property.mjs +13 -13
  280. package/esm2020/tabs/tab-content.component.mjs +3 -3
  281. package/esm2020/tabs/tab.component.mjs +3 -3
  282. package/esm2020/tabs/tabs.component.mjs +3 -3
  283. package/esm2020/tabs/tabs.module.mjs +4 -4
  284. package/esm2020/tabs/tabs.property.mjs +6 -6
  285. package/esm2020/tag/tag.component.mjs +4 -4
  286. package/esm2020/tag/tag.module.mjs +4 -4
  287. package/esm2020/tag/tag.property.mjs +3 -3
  288. package/esm2020/text-retract/text-retract.component.mjs +3 -3
  289. package/esm2020/text-retract/text-retract.module.mjs +4 -4
  290. package/esm2020/text-retract/text-retract.property.mjs +3 -3
  291. package/esm2020/textarea/textarea.component.mjs +4 -4
  292. package/esm2020/textarea/textarea.module.mjs +4 -4
  293. package/esm2020/textarea/textarea.property.mjs +3 -3
  294. package/esm2020/theme/theme.component.mjs +3 -3
  295. package/esm2020/theme/theme.module.mjs +4 -4
  296. package/esm2020/theme/theme.property.mjs +3 -3
  297. package/esm2020/time-ago/time-ago.module.mjs +4 -4
  298. package/esm2020/time-ago/time-ago.pipe.mjs +3 -3
  299. package/esm2020/time-picker/time-picker-frame.component.mjs +4 -4
  300. package/esm2020/time-picker/time-picker-portal.component.mjs +3 -3
  301. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  302. package/esm2020/time-picker/time-picker.module.mjs +6 -7
  303. package/esm2020/time-picker/time-picker.property.mjs +3 -3
  304. package/esm2020/time-range/time-range.module.mjs +4 -4
  305. package/esm2020/time-range/time-range.pipe.mjs +3 -3
  306. package/esm2020/timeline/timeline.component.mjs +3 -3
  307. package/esm2020/timeline/timeline.module.mjs +4 -4
  308. package/esm2020/timeline/timeline.property.mjs +3 -3
  309. package/esm2020/tooltip/tooltip-portal.component.mjs +3 -3
  310. package/esm2020/tooltip/tooltip.directive.mjs +3 -3
  311. package/esm2020/tooltip/tooltip.module.mjs +6 -7
  312. package/esm2020/tooltip/tooltip.property.mjs +3 -3
  313. package/esm2020/transfer/transfer.component.mjs +3 -3
  314. package/esm2020/transfer/transfer.module.mjs +4 -4
  315. package/esm2020/transfer/transfer.property.mjs +3 -3
  316. package/esm2020/tree/tree-node.component.mjs +3 -3
  317. package/esm2020/tree/tree.component.mjs +3 -3
  318. package/esm2020/tree/tree.module.mjs +4 -4
  319. package/esm2020/tree/tree.property.mjs +6 -6
  320. package/esm2020/tree-file/tree-file.component.mjs +4 -4
  321. package/esm2020/tree-file/tree-file.module.mjs +4 -4
  322. package/esm2020/tree-file/tree-file.property.mjs +3 -3
  323. package/esm2020/typography/typography.component.mjs +3 -3
  324. package/esm2020/typography/typography.module.mjs +4 -4
  325. package/esm2020/typography/typography.property.mjs +3 -3
  326. package/esm2020/upload/upload-portal.component.mjs +4 -4
  327. package/esm2020/upload/upload.component.mjs +3 -3
  328. package/esm2020/upload/upload.module.mjs +4 -4
  329. package/esm2020/upload/upload.property.mjs +3 -3
  330. package/fesm2015/ng-nest-ui-affix.mjs +10 -10
  331. package/fesm2015/ng-nest-ui-alert.mjs +17 -12
  332. package/fesm2015/ng-nest-ui-alert.mjs.map +1 -1
  333. package/fesm2015/ng-nest-ui-anchor.mjs +10 -10
  334. package/fesm2015/ng-nest-ui-api.mjs +7 -7
  335. package/fesm2015/ng-nest-ui-auto-complete.mjs +14 -15
  336. package/fesm2015/ng-nest-ui-auto-complete.mjs.map +1 -1
  337. package/fesm2015/ng-nest-ui-avatar.mjs +10 -10
  338. package/fesm2015/ng-nest-ui-back-top.mjs +10 -10
  339. package/fesm2015/ng-nest-ui-badge.mjs +10 -10
  340. package/fesm2015/ng-nest-ui-base-form.mjs +10 -10
  341. package/fesm2015/ng-nest-ui-border.mjs +7 -7
  342. package/fesm2015/ng-nest-ui-button.mjs +17 -17
  343. package/fesm2015/ng-nest-ui-calendar.mjs +10 -10
  344. package/fesm2015/ng-nest-ui-card.mjs +11 -11
  345. package/fesm2015/ng-nest-ui-carousel.mjs +26 -26
  346. package/fesm2015/ng-nest-ui-carousel.mjs.map +1 -1
  347. package/fesm2015/ng-nest-ui-cascade.mjs +14 -15
  348. package/fesm2015/ng-nest-ui-cascade.mjs.map +1 -1
  349. package/fesm2015/ng-nest-ui-checkbox.mjs +11 -11
  350. package/fesm2015/ng-nest-ui-collapse.mjs +16 -16
  351. package/fesm2015/ng-nest-ui-color-picker.mjs +14 -15
  352. package/fesm2015/ng-nest-ui-color-picker.mjs.map +1 -1
  353. package/fesm2015/ng-nest-ui-color.mjs +10 -10
  354. package/fesm2015/ng-nest-ui-comment.mjs +16 -16
  355. package/fesm2015/ng-nest-ui-container.mjs +34 -34
  356. package/fesm2015/ng-nest-ui-core.mjs +15 -15
  357. package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
  358. package/fesm2015/ng-nest-ui-crumb.mjs +10 -10
  359. package/fesm2015/ng-nest-ui-date-picker.mjs +212 -74
  360. package/fesm2015/ng-nest-ui-date-picker.mjs.map +1 -1
  361. package/fesm2015/ng-nest-ui-description.mjs +16 -16
  362. package/fesm2015/ng-nest-ui-dialog.mjs +259 -35
  363. package/fesm2015/ng-nest-ui-dialog.mjs.map +1 -1
  364. package/fesm2015/ng-nest-ui-doc.mjs +8 -8
  365. package/fesm2015/ng-nest-ui-drawer.mjs +334 -31
  366. package/fesm2015/ng-nest-ui-drawer.mjs.map +1 -1
  367. package/fesm2015/ng-nest-ui-dropdown.mjs +14 -15
  368. package/fesm2015/ng-nest-ui-dropdown.mjs.map +1 -1
  369. package/fesm2015/ng-nest-ui-empty.mjs +10 -10
  370. package/fesm2015/ng-nest-ui-examples.mjs +7 -7
  371. package/fesm2015/ng-nest-ui-find.mjs +37 -12
  372. package/fesm2015/ng-nest-ui-find.mjs.map +1 -1
  373. package/fesm2015/ng-nest-ui-form.mjs +16 -16
  374. package/fesm2015/ng-nest-ui-highlight.mjs +10 -10
  375. package/fesm2015/ng-nest-ui-i18n.mjs +13 -13
  376. package/fesm2015/ng-nest-ui-icon.mjs +13 -13
  377. package/fesm2015/ng-nest-ui-inner.mjs +10 -10
  378. package/fesm2015/ng-nest-ui-input-number.mjs +10 -10
  379. package/fesm2015/ng-nest-ui-input.mjs +18 -17
  380. package/fesm2015/ng-nest-ui-input.mjs.map +1 -1
  381. package/fesm2015/ng-nest-ui-layout.mjs +16 -16
  382. package/fesm2015/ng-nest-ui-link.mjs +10 -10
  383. package/fesm2015/ng-nest-ui-list.mjs +16 -16
  384. package/fesm2015/ng-nest-ui-loading.mjs +10 -10
  385. package/fesm2015/ng-nest-ui-menu.mjs +17 -17
  386. package/fesm2015/ng-nest-ui-menu.mjs.map +1 -1
  387. package/fesm2015/ng-nest-ui-message-box.mjs +10 -10
  388. package/fesm2015/ng-nest-ui-message.mjs +60 -27
  389. package/fesm2015/ng-nest-ui-message.mjs.map +1 -1
  390. package/fesm2015/ng-nest-ui-notification.mjs +10 -10
  391. package/fesm2015/ng-nest-ui-outlet.mjs +7 -7
  392. package/fesm2015/ng-nest-ui-page-header.mjs +10 -10
  393. package/fesm2015/ng-nest-ui-pagination.mjs +11 -11
  394. package/fesm2015/ng-nest-ui-pattern.mjs +7 -7
  395. package/fesm2015/ng-nest-ui-popconfirm.mjs +42 -14
  396. package/fesm2015/ng-nest-ui-popconfirm.mjs.map +1 -1
  397. package/fesm2015/ng-nest-ui-popover.mjs +26 -16
  398. package/fesm2015/ng-nest-ui-popover.mjs.map +1 -1
  399. package/fesm2015/ng-nest-ui-portal.mjs +15 -15
  400. package/fesm2015/ng-nest-ui-portal.mjs.map +1 -1
  401. package/fesm2015/ng-nest-ui-progress.mjs +234 -26
  402. package/fesm2015/ng-nest-ui-progress.mjs.map +1 -1
  403. package/fesm2015/ng-nest-ui-radio.mjs +11 -11
  404. package/fesm2015/ng-nest-ui-rate.mjs +11 -11
  405. package/fesm2015/ng-nest-ui-result.mjs +11 -11
  406. package/fesm2015/ng-nest-ui-ripple.mjs +10 -10
  407. package/fesm2015/ng-nest-ui-select.mjs +14 -15
  408. package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
  409. package/fesm2015/ng-nest-ui-skeleton.mjs +10 -10
  410. package/fesm2015/ng-nest-ui-slider-select.mjs +11 -11
  411. package/fesm2015/ng-nest-ui-slider.mjs +10 -10
  412. package/fesm2015/ng-nest-ui-statistic.mjs +16 -16
  413. package/fesm2015/ng-nest-ui-steps.mjs +30 -18
  414. package/fesm2015/ng-nest-ui-steps.mjs.map +1 -1
  415. package/fesm2015/ng-nest-ui-switch.mjs +11 -11
  416. package/fesm2015/ng-nest-ui-table.mjs +31 -31
  417. package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
  418. package/fesm2015/ng-nest-ui-tabs.mjs +19 -19
  419. package/fesm2015/ng-nest-ui-tag.mjs +11 -11
  420. package/fesm2015/ng-nest-ui-text-retract.mjs +10 -10
  421. package/fesm2015/ng-nest-ui-textarea.mjs +11 -11
  422. package/fesm2015/ng-nest-ui-theme.mjs +10 -10
  423. package/fesm2015/ng-nest-ui-time-ago.mjs +7 -7
  424. package/fesm2015/ng-nest-ui-time-picker.mjs +18 -19
  425. package/fesm2015/ng-nest-ui-time-picker.mjs.map +1 -1
  426. package/fesm2015/ng-nest-ui-time-range.mjs +7 -7
  427. package/fesm2015/ng-nest-ui-timeline.mjs +10 -10
  428. package/fesm2015/ng-nest-ui-tooltip.mjs +14 -15
  429. package/fesm2015/ng-nest-ui-tooltip.mjs.map +1 -1
  430. package/fesm2015/ng-nest-ui-transfer.mjs +10 -10
  431. package/fesm2015/ng-nest-ui-tree-file.mjs +11 -11
  432. package/fesm2015/ng-nest-ui-tree.mjs +16 -16
  433. package/fesm2015/ng-nest-ui-typography.mjs +10 -10
  434. package/fesm2015/ng-nest-ui-upload.mjs +14 -14
  435. package/fesm2020/ng-nest-ui-affix.mjs +10 -10
  436. package/fesm2020/ng-nest-ui-alert.mjs +17 -12
  437. package/fesm2020/ng-nest-ui-alert.mjs.map +1 -1
  438. package/fesm2020/ng-nest-ui-anchor.mjs +10 -10
  439. package/fesm2020/ng-nest-ui-api.mjs +7 -7
  440. package/fesm2020/ng-nest-ui-auto-complete.mjs +14 -15
  441. package/fesm2020/ng-nest-ui-auto-complete.mjs.map +1 -1
  442. package/fesm2020/ng-nest-ui-avatar.mjs +10 -10
  443. package/fesm2020/ng-nest-ui-back-top.mjs +10 -10
  444. package/fesm2020/ng-nest-ui-badge.mjs +10 -10
  445. package/fesm2020/ng-nest-ui-base-form.mjs +10 -10
  446. package/fesm2020/ng-nest-ui-border.mjs +7 -7
  447. package/fesm2020/ng-nest-ui-button.mjs +17 -17
  448. package/fesm2020/ng-nest-ui-calendar.mjs +10 -10
  449. package/fesm2020/ng-nest-ui-card.mjs +11 -11
  450. package/fesm2020/ng-nest-ui-carousel.mjs +26 -25
  451. package/fesm2020/ng-nest-ui-carousel.mjs.map +1 -1
  452. package/fesm2020/ng-nest-ui-cascade.mjs +14 -15
  453. package/fesm2020/ng-nest-ui-cascade.mjs.map +1 -1
  454. package/fesm2020/ng-nest-ui-checkbox.mjs +11 -11
  455. package/fesm2020/ng-nest-ui-collapse.mjs +16 -16
  456. package/fesm2020/ng-nest-ui-color-picker.mjs +14 -15
  457. package/fesm2020/ng-nest-ui-color-picker.mjs.map +1 -1
  458. package/fesm2020/ng-nest-ui-color.mjs +10 -10
  459. package/fesm2020/ng-nest-ui-comment.mjs +16 -16
  460. package/fesm2020/ng-nest-ui-container.mjs +34 -34
  461. package/fesm2020/ng-nest-ui-core.mjs +15 -15
  462. package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
  463. package/fesm2020/ng-nest-ui-crumb.mjs +10 -10
  464. package/fesm2020/ng-nest-ui-date-picker.mjs +212 -74
  465. package/fesm2020/ng-nest-ui-date-picker.mjs.map +1 -1
  466. package/fesm2020/ng-nest-ui-description.mjs +16 -16
  467. package/fesm2020/ng-nest-ui-dialog.mjs +257 -35
  468. package/fesm2020/ng-nest-ui-dialog.mjs.map +1 -1
  469. package/fesm2020/ng-nest-ui-doc.mjs +8 -8
  470. package/fesm2020/ng-nest-ui-drawer.mjs +330 -31
  471. package/fesm2020/ng-nest-ui-drawer.mjs.map +1 -1
  472. package/fesm2020/ng-nest-ui-dropdown.mjs +14 -15
  473. package/fesm2020/ng-nest-ui-dropdown.mjs.map +1 -1
  474. package/fesm2020/ng-nest-ui-empty.mjs +10 -10
  475. package/fesm2020/ng-nest-ui-examples.mjs +7 -7
  476. package/fesm2020/ng-nest-ui-find.mjs +37 -12
  477. package/fesm2020/ng-nest-ui-find.mjs.map +1 -1
  478. package/fesm2020/ng-nest-ui-form.mjs +16 -16
  479. package/fesm2020/ng-nest-ui-highlight.mjs +10 -10
  480. package/fesm2020/ng-nest-ui-i18n.mjs +13 -13
  481. package/fesm2020/ng-nest-ui-icon.mjs +13 -13
  482. package/fesm2020/ng-nest-ui-inner.mjs +10 -10
  483. package/fesm2020/ng-nest-ui-input-number.mjs +10 -10
  484. package/fesm2020/ng-nest-ui-input.mjs +18 -17
  485. package/fesm2020/ng-nest-ui-input.mjs.map +1 -1
  486. package/fesm2020/ng-nest-ui-layout.mjs +16 -16
  487. package/fesm2020/ng-nest-ui-link.mjs +10 -10
  488. package/fesm2020/ng-nest-ui-list.mjs +16 -16
  489. package/fesm2020/ng-nest-ui-loading.mjs +10 -10
  490. package/fesm2020/ng-nest-ui-menu.mjs +17 -17
  491. package/fesm2020/ng-nest-ui-menu.mjs.map +1 -1
  492. package/fesm2020/ng-nest-ui-message-box.mjs +10 -10
  493. package/fesm2020/ng-nest-ui-message.mjs +59 -27
  494. package/fesm2020/ng-nest-ui-message.mjs.map +1 -1
  495. package/fesm2020/ng-nest-ui-notification.mjs +10 -10
  496. package/fesm2020/ng-nest-ui-outlet.mjs +7 -7
  497. package/fesm2020/ng-nest-ui-page-header.mjs +10 -10
  498. package/fesm2020/ng-nest-ui-pagination.mjs +11 -11
  499. package/fesm2020/ng-nest-ui-pattern.mjs +7 -7
  500. package/fesm2020/ng-nest-ui-popconfirm.mjs +42 -14
  501. package/fesm2020/ng-nest-ui-popconfirm.mjs.map +1 -1
  502. package/fesm2020/ng-nest-ui-popover.mjs +26 -16
  503. package/fesm2020/ng-nest-ui-popover.mjs.map +1 -1
  504. package/fesm2020/ng-nest-ui-portal.mjs +15 -15
  505. package/fesm2020/ng-nest-ui-portal.mjs.map +1 -1
  506. package/fesm2020/ng-nest-ui-progress.mjs +233 -25
  507. package/fesm2020/ng-nest-ui-progress.mjs.map +1 -1
  508. package/fesm2020/ng-nest-ui-radio.mjs +11 -11
  509. package/fesm2020/ng-nest-ui-rate.mjs +11 -11
  510. package/fesm2020/ng-nest-ui-result.mjs +11 -11
  511. package/fesm2020/ng-nest-ui-ripple.mjs +10 -10
  512. package/fesm2020/ng-nest-ui-select.mjs +14 -15
  513. package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
  514. package/fesm2020/ng-nest-ui-skeleton.mjs +10 -10
  515. package/fesm2020/ng-nest-ui-slider-select.mjs +11 -11
  516. package/fesm2020/ng-nest-ui-slider.mjs +10 -10
  517. package/fesm2020/ng-nest-ui-statistic.mjs +16 -16
  518. package/fesm2020/ng-nest-ui-steps.mjs +30 -18
  519. package/fesm2020/ng-nest-ui-steps.mjs.map +1 -1
  520. package/fesm2020/ng-nest-ui-switch.mjs +11 -11
  521. package/fesm2020/ng-nest-ui-table.mjs +31 -31
  522. package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
  523. package/fesm2020/ng-nest-ui-tabs.mjs +19 -19
  524. package/fesm2020/ng-nest-ui-tag.mjs +11 -11
  525. package/fesm2020/ng-nest-ui-text-retract.mjs +10 -10
  526. package/fesm2020/ng-nest-ui-textarea.mjs +11 -11
  527. package/fesm2020/ng-nest-ui-theme.mjs +10 -10
  528. package/fesm2020/ng-nest-ui-time-ago.mjs +7 -7
  529. package/fesm2020/ng-nest-ui-time-picker.mjs +18 -19
  530. package/fesm2020/ng-nest-ui-time-picker.mjs.map +1 -1
  531. package/fesm2020/ng-nest-ui-time-range.mjs +7 -7
  532. package/fesm2020/ng-nest-ui-timeline.mjs +10 -10
  533. package/fesm2020/ng-nest-ui-tooltip.mjs +14 -15
  534. package/fesm2020/ng-nest-ui-tooltip.mjs.map +1 -1
  535. package/fesm2020/ng-nest-ui-transfer.mjs +10 -10
  536. package/fesm2020/ng-nest-ui-tree-file.mjs +11 -11
  537. package/fesm2020/ng-nest-ui-tree.mjs +16 -16
  538. package/fesm2020/ng-nest-ui-typography.mjs +10 -10
  539. package/fesm2020/ng-nest-ui-upload.mjs +14 -14
  540. package/find/find.property.d.ts +31 -1
  541. package/layout/examples/en_US/default/flex/README.md +1 -1
  542. package/layout/examples/zh_CN/default/flex/README.md +1 -1
  543. package/message/examples/en_US/default/loading/README.md +6 -0
  544. package/message/examples/zh_CN/default/loading/README.md +6 -0
  545. package/message/message-ref.d.ts +8 -0
  546. package/message/message.component.d.ts +3 -3
  547. package/message/message.property.d.ts +24 -4
  548. package/message/message.service.d.ts +4 -1
  549. package/message/public-api.d.ts +1 -0
  550. package/package.json +7 -7
  551. package/popconfirm/examples/en_US/default/async-close/README.md +6 -0
  552. package/popconfirm/examples/en_US/default/condition/README.md +6 -0
  553. package/popconfirm/examples/zh_CN/default/async-close/README.md +6 -0
  554. package/popconfirm/examples/zh_CN/default/condition/README.md +6 -0
  555. package/popconfirm/popconfirm.component.d.ts +6 -2
  556. package/popconfirm/popconfirm.property.d.ts +13 -2
  557. package/popover/popover.property.d.ts +6 -1
  558. package/portal/portal.module.d.ts +1 -1
  559. package/portal/portal.service.d.ts +2 -3
  560. package/progress/examples/en_US/default/circle/README.md +6 -0
  561. package/progress/examples/en_US/default/dashboard/README.md +6 -0
  562. package/progress/examples/en_US/default/gradient/README.md +6 -0
  563. package/progress/examples/en_US/default/steps/README.md +6 -0
  564. package/progress/examples/en_US/default/subsection/README.md +6 -0
  565. package/progress/examples/zh_CN/default/circle/README.md +6 -0
  566. package/progress/examples/zh_CN/default/dashboard/README.md +6 -0
  567. package/progress/examples/zh_CN/default/gradient/README.md +6 -0
  568. package/progress/examples/zh_CN/default/steps/README.md +6 -0
  569. package/progress/examples/zh_CN/default/subsection/README.md +6 -0
  570. package/progress/progress.component.d.ts +31 -3
  571. package/progress/progress.property.d.ts +80 -5
  572. package/steps/examples/en_US/default/node-status/README.md +6 -0
  573. package/steps/examples/zh_CN/default/node-status/README.md +6 -0
  574. package/steps/steps.property.d.ts +7 -2
  575. package/table/table.property.d.ts +1 -1
@@ -51,8 +51,8 @@ class XTextareaProperty extends XControlValueAccessor {
51
51
  this.clearEmit = new EventEmitter();
52
52
  }
53
53
  }
54
- /** @nocollapse */ /** @nocollapse */ XTextareaProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
55
- /** @nocollapse */ /** @nocollapse */ XTextareaProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTextareaProperty, selector: "ng-component", inputs: { clearable: "clearable", icon: "icon", iconLayout: "iconLayout", iconSpin: "iconSpin", maxlength: "maxlength", height: "height" }, outputs: { clearEmit: "clearEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
54
+ /** @nocollapse */ /** @nocollapse */ XTextareaProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
55
+ /** @nocollapse */ /** @nocollapse */ XTextareaProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTextareaProperty, selector: "ng-component", inputs: { clearable: "clearable", icon: "icon", iconLayout: "iconLayout", iconSpin: "iconSpin", maxlength: "maxlength", height: "height" }, outputs: { clearEmit: "clearEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
56
56
  __decorate([
57
57
  XWithConfig(X_CONFIG_NAME, false),
58
58
  XInputBoolean()
@@ -66,7 +66,7 @@ __decorate([
66
66
  __decorate([
67
67
  XInputNumber()
68
68
  ], XTextareaProperty.prototype, "maxlength", void 0);
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaProperty, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaProperty, decorators: [{
70
70
  type: Component,
71
71
  args: [{ template: '' }]
72
72
  }], propDecorators: { clearable: [{
@@ -166,11 +166,11 @@ class XTextareaComponent extends XTextareaProperty {
166
166
  this.cdr.detectChanges();
167
167
  }
168
168
  }
169
- /** @nocollapse */ /** @nocollapse */ XTextareaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
170
- /** @nocollapse */ /** @nocollapse */ XTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTextareaComponent, selector: "x-textarea", providers: [XValueAccessor(XTextareaComponent)], viewQueries: [{ propertyName: "textarea", first: true, predicate: ["textarea"], descendants: true, static: true }, { propertyName: "textareaRef", first: true, predicate: ["textareaRef"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-clearable]=\"clearable\"\r\n [class.x-clear-show]=\"clearShow\"\r\n [class.x-textarea-icon]=\"getIcon\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight\"\r\n [ngClass]=\"classMap\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [maxlength]=\"maxlength\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.padding-right.rem]=\"paddingRight\"\r\n ></textarea>\r\n <x-icon *ngIf=\"clearShow\" class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n <x-icon *ngIf=\"icon && ((!clearShow && getIconLayoutRight) || getIconLayoutLeft)\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n <span class=\"x-textarea-max-length\" *ngIf=\"maxlength\">{{ lengthTotal }}</span>\r\n <span class=\"x-textarea-error-message\" *ngIf=\"invalid\">{{ invalidMessage }}</span>\r\n <ng-container *ngIf=\"requiredIsEmpty || invalid\">\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:100%}.x-textarea{width:100%;margin:0;padding:0}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea>.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea>.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .325rem);padding:.4rem}.x-textarea>.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea>.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea>.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea>.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea>.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size) + .45rem) * -1);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.5rem;width:.5rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.4rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column{align-items:inherit}.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.4rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:var(--x-font-size-medium).8rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaComponent, decorators: [{
169
+ /** @nocollapse */ /** @nocollapse */ XTextareaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.XConfigService }], target: i0.ɵɵFactoryTarget.Component });
170
+ /** @nocollapse */ /** @nocollapse */ XTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTextareaComponent, selector: "x-textarea", providers: [XValueAccessor(XTextareaComponent)], viewQueries: [{ propertyName: "textarea", first: true, predicate: ["textarea"], descendants: true, static: true }, { propertyName: "textareaRef", first: true, predicate: ["textareaRef"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-clearable]=\"clearable\"\r\n [class.x-clear-show]=\"clearShow\"\r\n [class.x-textarea-icon]=\"getIcon\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight\"\r\n [ngClass]=\"classMap\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [maxlength]=\"maxlength\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.padding-right.rem]=\"paddingRight\"\r\n ></textarea>\r\n <x-icon *ngIf=\"clearShow\" class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n <x-icon *ngIf=\"icon && ((!clearShow && getIconLayoutRight) || getIconLayoutLeft)\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n <span class=\"x-textarea-max-length\" *ngIf=\"maxlength\">{{ lengthTotal }}</span>\r\n <span class=\"x-textarea-error-message\" *ngIf=\"invalid\">{{ invalidMessage }}</span>\r\n <ng-container *ngIf=\"requiredIsEmpty || invalid\">\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:100%}.x-textarea{width:100%;margin:0;padding:0}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea>.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea>.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .325rem);padding:.4rem}.x-textarea>.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea>.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea>.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea>.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea>.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size) + .45rem) * -1);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.5rem;width:.5rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.4rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column,.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.4rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:var(--x-font-size-medium).8rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}\n"], components: [{ type: i2.XIconComponent, selector: "x-icon" }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaComponent, decorators: [{
172
172
  type: Component,
173
- args: [{ selector: `${XTextareaPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTextareaComponent)], template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-clearable]=\"clearable\"\r\n [class.x-clear-show]=\"clearShow\"\r\n [class.x-textarea-icon]=\"getIcon\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight\"\r\n [ngClass]=\"classMap\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [maxlength]=\"maxlength\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.padding-right.rem]=\"paddingRight\"\r\n ></textarea>\r\n <x-icon *ngIf=\"clearShow\" class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n <x-icon *ngIf=\"icon && ((!clearShow && getIconLayoutRight) || getIconLayoutLeft)\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n <span class=\"x-textarea-max-length\" *ngIf=\"maxlength\">{{ lengthTotal }}</span>\r\n <span class=\"x-textarea-error-message\" *ngIf=\"invalid\">{{ invalidMessage }}</span>\r\n <ng-container *ngIf=\"requiredIsEmpty || invalid\">\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:100%}.x-textarea{width:100%;margin:0;padding:0}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea>.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea>.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .325rem);padding:.4rem}.x-textarea>.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea>.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea>.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea>.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea>.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size) + .45rem) * -1);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.5rem;width:.5rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.4rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column{align-items:inherit}.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.4rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:var(--x-font-size-medium).8rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}\n"] }]
173
+ args: [{ selector: `${XTextareaPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTextareaComponent)], template: "<div\r\n #textarea\r\n class=\"x-textarea\"\r\n [class.x-flex]=\"justify || align || direction\"\r\n [class.x-disabled]=\"disabled\"\r\n [class.x-required]=\"requiredIsEmpty\"\r\n [class.x-invalid]=\"invalid\"\r\n [class.x-clearable]=\"clearable\"\r\n [class.x-clear-show]=\"clearShow\"\r\n [class.x-textarea-icon]=\"getIcon\"\r\n [class.x-textarea-icon-left]=\"getIconLayoutLeft\"\r\n [class.x-textarea-icon-right]=\"getIconLayoutRight\"\r\n [ngClass]=\"classMap\"\r\n>\r\n <label *ngIf=\"label\" [style.width]=\"labelWidth\" [ngClass]=\"labelMap\">{{ label }}</label>\r\n <div class=\"x-textarea-row\">\r\n <textarea\r\n #textareaRef\r\n [placeholder]=\"placeholder\"\r\n [required]=\"required\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly\"\r\n [maxlength]=\"maxlength\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"change($event)\"\r\n [style.height]=\"height\"\r\n [style.padding-left.rem]=\"paddingLeft\"\r\n [style.padding-right.rem]=\"paddingRight\"\r\n ></textarea>\r\n <x-icon *ngIf=\"clearShow\" class=\"x-textarea-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n <x-icon *ngIf=\"icon && ((!clearShow && getIconLayoutRight) || getIconLayoutLeft)\" [type]=\"icon\" [spin]=\"iconSpin\"></x-icon>\r\n <span class=\"x-textarea-max-length\" *ngIf=\"maxlength\">{{ lengthTotal }}</span>\r\n <span class=\"x-textarea-error-message\" *ngIf=\"invalid\">{{ invalidMessage }}</span>\r\n <ng-container *ngIf=\"requiredIsEmpty || invalid\">\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-textarea{display:inline-block;width:100%}.x-textarea{width:100%;margin:0;padding:0}.x-textarea.x-flex{display:flex}.x-textarea.x-justify-start{justify-content:flex-start}.x-textarea.x-justify-center{justify-content:center}.x-textarea.x-justify-end{justify-content:flex-end}.x-textarea.x-justify-space-between{justify-content:space-between}.x-textarea.x-justify-space-around{justify-content:space-around}.x-textarea.x-align-start{align-items:flex-start}.x-textarea.x-align-center{align-items:center}.x-textarea.x-align-end{align-items:flex-end}.x-textarea.x-direction-column{flex-direction:column}.x-textarea.x-direction-column-reverse{flex-direction:column-reverse}.x-textarea.x-direction-row{flex-direction:row}.x-textarea.x-direction-row-reverse{flex-direction:row-reverse}.x-textarea>label{display:inline-block;white-space:nowrap;height:calc(var(--x-font-size) + .875rem);line-height:calc(var(--x-font-size) + .875rem);position:relative;color:var(--x-text-300);font-weight:600}.x-textarea>label.x-text-align-start{text-align:start}.x-textarea>label.x-text-align-center{text-align:center}.x-textarea>label.x-text-align-end{text-align:end}.x-textarea>.x-textarea-row{flex:1;display:flex;align-items:center;position:relative}.x-textarea>.x-textarea-row>textarea{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) transparent;transition:all var(--x-animation-duration-slow);line-height:calc(var(--x-font-size) + .325rem);padding:.4rem}.x-textarea>.x-textarea-row>textarea::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-textarea>.x-textarea-row>textarea:-ms-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea::-webkit-input-placeholder{color:var(--x-text-700)}.x-textarea>.x-textarea-row>textarea:hover{border-color:var(--x-primary-300)}.x-textarea>.x-textarea-row>textarea:focus{border-color:var(--x-primary);outline:0}.x-textarea>.x-textarea-row>textarea[disabled]{color:var(--x-text-500)}.x-textarea>.x-textarea-row>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base)}.x-textarea-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size) + .45rem) * -1);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-textarea.x-invalid>label,.x-textarea.x-required>label{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row>x-icon,.x-textarea.x-required>.x-textarea-row>x-icon{color:var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error,.x-textarea.x-required>.x-textarea-row .x-border-error{position:absolute;height:.5rem;width:.5rem;z-index:10}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-top-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-left,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-invalid>.x-textarea-row .x-border-error.x-bottom-right,.x-textarea.x-required>.x-textarea-row .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-textarea.x-disabled>.x-textarea-row>x-icon{color:var(--x-text-400)}.x-textarea.x-disabled>.x-textarea-row>textarea{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);padding:.4rem;top:0;right:0;left:inherit;opacity:0;cursor:pointer}.x-textarea.x-clearable>.x-textarea-row>.x-textarea-clear:hover{color:var(--x-text-300)}.x-textarea.x-clearable>.x-textarea-row>textarea:hover+.x-textarea-clear,.x-textarea.x-clearable>.x-textarea-row>textarea:focus+.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>.x-textarea-clear{opacity:1}.x-textarea.x-clearable.x-clear-show>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem!important}.x-textarea-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:.25rem;bottom:.25rem}.x-textarea.x-direction-row>label{padding:0 .5rem 0 0}.x-textarea.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-textarea.x-direction-column,.x-textarea.x-direction-column-reverse{align-items:inherit}.x-textarea-icon>.x-textarea-row>x-icon{position:absolute;font-size:var(--x-font-size-medium);padding:.4rem}.x-textarea-icon-left>.x-textarea-row>textarea{padding-left:var(--x-font-size-medium).8rem}.x-textarea-icon-left>.x-textarea-row>x-icon{left:0;top:0}.x-textarea-icon-right>.x-textarea-row>textarea{padding-right:var(--x-font-size-medium).8rem}.x-textarea-icon-right>.x-textarea-row>x-icon{right:0;top:0}.x-textarea-icon-right>.x-textarea-row>.x-textarea-max-length{right:inherit;left:0;bottom:0}\n"] }]
174
174
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.XConfigService }]; }, propDecorators: { textarea: [{
175
175
  type: ViewChild,
176
176
  args: ['textarea', { static: true }]
@@ -181,10 +181,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
181
181
 
182
182
  class XTextareaModule {
183
183
  }
184
- /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
185
- /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaModule, declarations: [XTextareaComponent, XTextareaProperty], imports: [CommonModule, FormsModule, ReactiveFormsModule, XIconModule, XBaseFormModule], exports: [XTextareaComponent] });
186
- /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaModule, imports: [[CommonModule, FormsModule, ReactiveFormsModule, XIconModule, XBaseFormModule]] });
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTextareaModule, decorators: [{
184
+ /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
185
+ /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaModule, declarations: [XTextareaComponent, XTextareaProperty], imports: [CommonModule, FormsModule, ReactiveFormsModule, XIconModule, XBaseFormModule], exports: [XTextareaComponent] });
186
+ /** @nocollapse */ /** @nocollapse */ XTextareaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaModule, imports: [[CommonModule, FormsModule, ReactiveFormsModule, XIconModule, XBaseFormModule]] });
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTextareaModule, decorators: [{
188
188
  type: NgModule,
189
189
  args: [{
190
190
  declarations: [XTextareaComponent, XTextareaProperty],
@@ -57,8 +57,8 @@ class XThemeProperty extends XControlValueAccessor {
57
57
  this.darkChange = new EventEmitter();
58
58
  }
59
59
  }
60
- /** @nocollapse */ /** @nocollapse */ XThemeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
61
- /** @nocollapse */ /** @nocollapse */ XThemeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XThemeProperty, selector: "ng-component", inputs: { prefix: "prefix", amounts: "amounts", showDark: "showDark", showDetail: "showDetail", dark: "dark" }, outputs: { defaultClick: "defaultClick", darkChange: "darkChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
60
+ /** @nocollapse */ /** @nocollapse */ XThemeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
61
+ /** @nocollapse */ /** @nocollapse */ XThemeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XThemeProperty, selector: "ng-component", inputs: { prefix: "prefix", amounts: "amounts", showDark: "showDark", showDetail: "showDetail", dark: "dark" }, outputs: { defaultClick: "defaultClick", darkChange: "darkChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
62
62
  __decorate([
63
63
  XWithConfig(X_CONFIG_NAME, XThemeAmounts)
64
64
  ], XThemeProperty.prototype, "amounts", void 0);
@@ -71,7 +71,7 @@ __decorate([
71
71
  __decorate([
72
72
  XInputBoolean()
73
73
  ], XThemeProperty.prototype, "dark", void 0);
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeProperty, decorators: [{
74
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeProperty, decorators: [{
75
75
  type: Component,
76
76
  args: [{ template: '' }]
77
77
  }], propDecorators: { prefix: [{
@@ -230,17 +230,17 @@ class XThemeComponent extends XThemeProperty {
230
230
  this.darkChange.emit(this.dark);
231
231
  }
232
232
  }
233
- /** @nocollapse */ /** @nocollapse */ XThemeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeComponent, deps: [{ token: i1.XConfigService }, { token: i2.XI18nService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
234
- /** @nocollapse */ /** @nocollapse */ XThemeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XThemeComponent, selector: "x-theme", providers: [XValueAccessor(XThemeComponent)], usesInheritance: true, ngImport: i0, template: "<div class=\"x-theme\">\r\n <x-row>\r\n <x-col [style.width.rem]=\"8\" *ngIf=\"showDark\">\r\n <x-switch direction=\"row\" [label]=\"locale?.darkMode\" [(ngModel)]=\"dark\" (ngModelChange)=\"darkChanges()\"></x-switch>\r\n </x-col>\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale?.initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup\" [controls]=\"controls\" [width]=\"width\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n", styles: [".x-theme{margin:0;padding:0;display:inline-block}.x-theme x-color-picker:not(:first-child){margin-left:.125rem}.x-theme-darken,.x-theme-default,.x-theme-gradual{display:flex}.x-theme-default x-color-picker{width:9.25rem}\n"], components: [{ type: i3.XRowComponent, selector: "x-row" }, { type: i3.XColComponent, selector: "x-col" }, { type: i4.XSwitchComponent, selector: "x-switch" }, { type: i5.XButtonComponent, selector: "x-button" }, { type: i6.XFormComponent, selector: "x-form" }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
235
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeComponent, decorators: [{
233
+ /** @nocollapse */ /** @nocollapse */ XThemeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeComponent, deps: [{ token: i1.XConfigService }, { token: i2.XI18nService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
234
+ /** @nocollapse */ /** @nocollapse */ XThemeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XThemeComponent, selector: "x-theme", providers: [XValueAccessor(XThemeComponent)], usesInheritance: true, ngImport: i0, template: "<div class=\"x-theme\">\r\n <x-row>\r\n <x-col [style.width.rem]=\"8\" *ngIf=\"showDark\">\r\n <x-switch direction=\"row\" [label]=\"locale?.darkMode\" [(ngModel)]=\"dark\" (ngModelChange)=\"darkChanges()\"></x-switch>\r\n </x-col>\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale?.initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup\" [controls]=\"controls\" [width]=\"width\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n", styles: [".x-theme{margin:0;padding:0;display:inline-block}.x-theme x-color-picker:not(:first-child){margin-left:.125rem}.x-theme-darken,.x-theme-default,.x-theme-gradual{display:flex}.x-theme-default x-color-picker{width:9.25rem}\n"], components: [{ type: i3.XRowComponent, selector: "x-row" }, { type: i3.XColComponent, selector: "x-col" }, { type: i4.XSwitchComponent, selector: "x-switch" }, { type: i5.XButtonComponent, selector: "x-button" }, { type: i6.XFormComponent, selector: "x-form" }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
235
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeComponent, decorators: [{
236
236
  type: Component,
237
237
  args: [{ selector: 'x-theme', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XThemeComponent)], template: "<div class=\"x-theme\">\r\n <x-row>\r\n <x-col [style.width.rem]=\"8\" *ngIf=\"showDark\">\r\n <x-switch direction=\"row\" [label]=\"locale?.darkMode\" [(ngModel)]=\"dark\" (ngModelChange)=\"darkChanges()\"></x-switch>\r\n </x-col>\r\n <x-col [style.width.rem]=\"8\">\r\n <x-button (click)=\"default()\">{{ locale?.initDefault }}</x-button>\r\n </x-col>\r\n </x-row>\r\n <x-form [formGroup]=\"formGroup\" [controls]=\"controls\" [width]=\"width\" span=\"2\" space=\"1\"></x-form>\r\n</div>\r\n", styles: [".x-theme{margin:0;padding:0;display:inline-block}.x-theme x-color-picker:not(:first-child){margin-left:.125rem}.x-theme-darken,.x-theme-default,.x-theme-gradual{display:flex}.x-theme-default x-color-picker{width:9.25rem}\n"] }]
238
238
  }], ctorParameters: function () { return [{ type: i1.XConfigService }, { type: i2.XI18nService }, { type: i0.ChangeDetectorRef }]; } });
239
239
 
240
240
  class XThemeModule {
241
241
  }
242
- /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
243
- /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeModule, declarations: [XThemeComponent, XThemeProperty], imports: [CommonModule,
242
+ /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
243
+ /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeModule, declarations: [XThemeComponent, XThemeProperty], imports: [CommonModule,
244
244
  FormsModule,
245
245
  ReactiveFormsModule,
246
246
  XSwitchModule,
@@ -249,7 +249,7 @@ class XThemeModule {
249
249
  XFormModule,
250
250
  XI18nModule,
251
251
  XBaseFormModule], exports: [XThemeComponent] });
252
- /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeModule, imports: [[
252
+ /** @nocollapse */ /** @nocollapse */ XThemeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeModule, imports: [[
253
253
  CommonModule,
254
254
  FormsModule,
255
255
  ReactiveFormsModule,
@@ -260,7 +260,7 @@ class XThemeModule {
260
260
  XI18nModule,
261
261
  XBaseFormModule
262
262
  ]] });
263
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XThemeModule, decorators: [{
263
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XThemeModule, decorators: [{
264
264
  type: NgModule,
265
265
  args: [{
266
266
  declarations: [XThemeComponent, XThemeProperty],
@@ -68,19 +68,19 @@ class XTimeAgoPipe {
68
68
  return result;
69
69
  }
70
70
  }
71
- /** @nocollapse */ /** @nocollapse */ XTimeAgoPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoPipe, deps: [{ token: i1.DatePipe }, { token: i2.XI18nService }], target: i0.ɵɵFactoryTarget.Pipe });
72
- /** @nocollapse */ /** @nocollapse */ XTimeAgoPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoPipe, name: "xTimeAgo", pure: false });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoPipe, decorators: [{
71
+ /** @nocollapse */ /** @nocollapse */ XTimeAgoPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoPipe, deps: [{ token: i1.DatePipe }, { token: i2.XI18nService }], target: i0.ɵɵFactoryTarget.Pipe });
72
+ /** @nocollapse */ /** @nocollapse */ XTimeAgoPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoPipe, name: "xTimeAgo", pure: false });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoPipe, decorators: [{
74
74
  type: Pipe,
75
75
  args: [{ name: `${XTimeAgoPrefix}`, pure: false }]
76
76
  }], ctorParameters: function () { return [{ type: i1.DatePipe }, { type: i2.XI18nService }]; } });
77
77
 
78
78
  class XTimeAgoModule {
79
79
  }
80
- /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
81
- /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoModule, declarations: [XTimeAgoPipe], exports: [XTimeAgoPipe] });
82
- /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoModule, providers: [DatePipe] });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimeAgoModule, decorators: [{
80
+ /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
81
+ /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoModule, declarations: [XTimeAgoPipe], exports: [XTimeAgoPipe] });
82
+ /** @nocollapse */ /** @nocollapse */ XTimeAgoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoModule, providers: [DatePipe] });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimeAgoModule, decorators: [{
84
84
  type: NgModule,
85
85
  args: [{
86
86
  declarations: [XTimeAgoPipe],
@@ -44,8 +44,8 @@ class XTimePickerProperty extends XControlValueAccessor {
44
44
  this.nodeEmit = new EventEmitter();
45
45
  }
46
46
  }
47
- /** @nocollapse */ /** @nocollapse */ XTimePickerProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
48
- /** @nocollapse */ /** @nocollapse */ XTimePickerProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTimePickerProperty, selector: "ng-component", inputs: { type: "type", format: "format", placement: "placement", size: "size", bordered: "bordered" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
47
+ /** @nocollapse */ /** @nocollapse */ XTimePickerProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
48
+ /** @nocollapse */ /** @nocollapse */ XTimePickerProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTimePickerProperty, selector: "ng-component", inputs: { type: "type", format: "format", placement: "placement", size: "size", bordered: "bordered" }, outputs: { nodeEmit: "nodeEmit" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
49
49
  __decorate([
50
50
  XWithConfig(X_CONFIG_NAME, 'HH:mm:ss')
51
51
  ], XTimePickerProperty.prototype, "format", void 0);
@@ -59,7 +59,7 @@ __decorate([
59
59
  XInputBoolean(),
60
60
  XWithConfig(X_CONFIG_NAME, true)
61
61
  ], XTimePickerProperty.prototype, "bordered", void 0);
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerProperty, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerProperty, decorators: [{
63
63
  type: Component,
64
64
  args: [{ template: '' }]
65
65
  }], propDecorators: { type: [{
@@ -203,11 +203,11 @@ class XTimePickerFrameComponent {
203
203
  });
204
204
  }
205
205
  }
206
- /** @nocollapse */ /** @nocollapse */ XTimePickerFrameComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerFrameComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
207
- /** @nocollapse */ /** @nocollapse */ XTimePickerFrameComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: { type: "type", value: "value" }, outputs: { nodeEmit: "nodeEmit" }, viewQueries: [{ propertyName: "hourRef", first: true, predicate: ["hourRef"], descendants: true }, { propertyName: "minuteRef", first: true, predicate: ["minuteRef"], descendants: true }, { propertyName: "secondRef", first: true, predicate: ["secondRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-frame{padding:0;margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);font-size:var(--x-font-size-small);display:block;height:100%}.x-time-picker-frame>div:not(:first-child){border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-time-picker-frame-hour,.x-time-picker-frame-minute,.x-time-picker-frame-second{position:relative;float:left;overflow:hidden;width:3.625rem;max-height:15rem;padding-bottom:13.125rem}.x-time-picker-frame-hour:hover,.x-time-picker-frame-minute:hover,.x-time-picker-frame-second:hover{overflow-y:auto}.x-time-picker-frame-hour>x-list>.x-list,.x-time-picker-frame-minute>x-list>.x-list,.x-time-picker-frame-second>x-list>.x-list{width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option{min-width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option{padding-left:.6rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option:not(:first-child){margin-top:0}\n"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
208
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerFrameComponent, decorators: [{
206
+ /** @nocollapse */ /** @nocollapse */ XTimePickerFrameComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerFrameComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
207
+ /** @nocollapse */ /** @nocollapse */ XTimePickerFrameComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: { type: "type", value: "value" }, outputs: { nodeEmit: "nodeEmit" }, viewQueries: [{ propertyName: "hourRef", first: true, predicate: ["hourRef"], descendants: true }, { propertyName: "minuteRef", first: true, predicate: ["minuteRef"], descendants: true }, { propertyName: "secondRef", first: true, predicate: ["secondRef"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-frame{margin:0;padding:0;margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);font-size:var(--x-font-size-small);display:block;height:100%}.x-time-picker-frame>div:not(:first-child){border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-time-picker-frame-hour,.x-time-picker-frame-minute,.x-time-picker-frame-second{position:relative;float:left;overflow:hidden;width:3.625rem;max-height:15rem;padding-bottom:13.125rem}.x-time-picker-frame-hour:hover,.x-time-picker-frame-minute:hover,.x-time-picker-frame-second:hover{overflow-y:auto}.x-time-picker-frame-hour>x-list>.x-list,.x-time-picker-frame-minute>x-list>.x-list,.x-time-picker-frame-second>x-list>.x-list{width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option{min-width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option{padding-left:.6rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option:not(:first-child){margin-top:0}\n"], components: [{ type: i1.XListComponent, selector: "x-list" }], directives: [{ type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerFrameComponent, decorators: [{
209
209
  type: Component,
210
- args: [{ selector: `${XTimePickerFramePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-frame{padding:0;margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);font-size:var(--x-font-size-small);display:block;height:100%}.x-time-picker-frame>div:not(:first-child){border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-time-picker-frame-hour,.x-time-picker-frame-minute,.x-time-picker-frame-second{position:relative;float:left;overflow:hidden;width:3.625rem;max-height:15rem;padding-bottom:13.125rem}.x-time-picker-frame-hour:hover,.x-time-picker-frame-minute:hover,.x-time-picker-frame-second:hover{overflow-y:auto}.x-time-picker-frame-hour>x-list>.x-list,.x-time-picker-frame-minute>x-list>.x-list,.x-time-picker-frame-second>x-list>.x-list{width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option{min-width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option{padding-left:.6rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option:not(:first-child){margin-top:0}\n"] }]
210
+ args: [{ selector: `${XTimePickerFramePrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-time-picker-frame\">\r\n <div class=\"x-time-picker-frame-hour\" #hourRef>\r\n <x-list [data]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-frame{margin:0;padding:0;margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);background-color:var(--x-background);font-size:var(--x-font-size-small);display:block;height:100%}.x-time-picker-frame>div:not(:first-child){border-left:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-time-picker-frame-hour,.x-time-picker-frame-minute,.x-time-picker-frame-second{position:relative;float:left;overflow:hidden;width:3.625rem;max-height:15rem;padding-bottom:13.125rem}.x-time-picker-frame-hour:hover,.x-time-picker-frame-minute:hover,.x-time-picker-frame-second:hover{overflow-y:auto}.x-time-picker-frame-hour>x-list>.x-list,.x-time-picker-frame-minute>x-list>.x-list,.x-time-picker-frame-second>x-list>.x-list{width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option{min-width:3.625rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option,.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option{padding-left:.6rem}.x-time-picker-frame-hour>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-minute>x-list>.x-list>x-list-option>.x-list-option:not(:first-child),.x-time-picker-frame-second>x-list>.x-list>x-list-option>.x-list-option:not(:first-child){margin-top:0}\n"] }]
211
211
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { type: [{
212
212
  type: Input
213
213
  }], value: [{
@@ -256,9 +256,9 @@ class XTimePickerPortalComponent {
256
256
  event.stopPropagation();
257
257
  }
258
258
  }
259
- /** @nocollapse */ /** @nocollapse */ XTimePickerPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
260
- /** @nocollapse */ /** @nocollapse */ XTimePickerPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTimePickerPortalComponent, selector: "x-time-picker-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame [type]=\"type\" [value]=\"value\" (nodeEmit)=\"nodeEmit($event)\"></x-time-picker-frame>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-portal{display:block;height:100%}\n"], components: [{ type: XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value"], outputs: ["nodeEmit"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
261
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerPortalComponent, decorators: [{
259
+ /** @nocollapse */ /** @nocollapse */ XTimePickerPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
260
+ /** @nocollapse */ /** @nocollapse */ XTimePickerPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTimePickerPortalComponent, selector: "x-time-picker-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, ngImport: i0, template: "<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame [type]=\"type\" [value]=\"value\" (nodeEmit)=\"nodeEmit($event)\"></x-time-picker-frame>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-portal{display:block;height:100%}\n"], components: [{ type: XTimePickerFrameComponent, selector: "x-time-picker-frame", inputs: ["type", "value"], outputs: ["nodeEmit"] }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerPortalComponent, decorators: [{
262
262
  type: Component,
263
263
  args: [{ selector: `${XTimePickerPortalPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame [type]=\"type\" [value]=\"value\" (nodeEmit)=\"nodeEmit($event)\"></x-time-picker-frame>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-time-picker-portal{display:block;height:100%}\n"] }]
264
264
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { placement: [{
@@ -474,9 +474,9 @@ class XTimePickerComponent extends XTimePickerProperty {
474
474
  this.cdr.detectChanges();
475
475
  }
476
476
  }
477
- /** @nocollapse */ /** @nocollapse */ XTimePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.DatePipe }, { token: i3.Overlay }], target: i0.ɵɵFactoryTarget.Component });
478
- /** @nocollapse */ /** @nocollapse */ XTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: XTimePickerComponent, selector: "x-time-picker", providers: [XValueAccessor(XTimePickerComponent), DatePipe], viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<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 [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-time-picker{display:inline-block}.x-time-picker{margin:0;padding:0;width:100%}.x-time-picker x-input{width:100%}\n"], components: [{ type: i4.XInputComponent, selector: "x-input" }], directives: [{ type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
479
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerComponent, decorators: [{
477
+ /** @nocollapse */ /** @nocollapse */ XTimePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$1.XPortalService }, { token: i0.ViewContainerRef }, { token: i2.DatePipe }, { token: i3.Overlay }], target: i0.ɵɵFactoryTarget.Component });
478
+ /** @nocollapse */ /** @nocollapse */ XTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: XTimePickerComponent, selector: "x-time-picker", providers: [XValueAccessor(XTimePickerComponent), DatePipe], viewQueries: [{ propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true, static: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<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 [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-time-picker{display:inline-block}.x-time-picker{margin:0;padding:0;width:100%}.x-time-picker x-input{width:100%}\n"], components: [{ type: i4.XInputComponent, selector: "x-input" }], directives: [{ type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
479
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerComponent, decorators: [{
480
480
  type: Component,
481
481
  args: [{ selector: `${XTimePickerPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XTimePickerComponent), DatePipe], template: "<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 [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-time-picker{display:inline-block}.x-time-picker{margin:0;padding:0;width:100%}.x-time-picker x-input{width:100%}\n"] }]
482
482
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$1.XPortalService }, { type: i0.ViewContainerRef }, { type: i2.DatePipe }, { type: i3.Overlay }]; }, propDecorators: { datePicker: [{
@@ -489,8 +489,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
489
489
 
490
490
  class XTimePickerModule {
491
491
  }
492
- /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
493
- /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerModule, declarations: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent, XTimePickerProperty], imports: [CommonModule,
492
+ /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
493
+ /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerModule, declarations: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent, XTimePickerProperty], imports: [CommonModule,
494
494
  FormsModule,
495
495
  ReactiveFormsModule,
496
496
  XPortalModule,
@@ -499,7 +499,7 @@ class XTimePickerModule {
499
499
  XButtonModule,
500
500
  XIconModule,
501
501
  XBaseFormModule], exports: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent] });
502
- /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerModule, imports: [[
502
+ /** @nocollapse */ /** @nocollapse */ XTimePickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerModule, imports: [[
503
503
  CommonModule,
504
504
  FormsModule,
505
505
  ReactiveFormsModule,
@@ -510,7 +510,7 @@ class XTimePickerModule {
510
510
  XIconModule,
511
511
  XBaseFormModule
512
512
  ]] });
513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: XTimePickerModule, decorators: [{
513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: XTimePickerModule, decorators: [{
514
514
  type: NgModule,
515
515
  args: [{
516
516
  declarations: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent, XTimePickerProperty],
@@ -525,8 +525,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
525
525
  XButtonModule,
526
526
  XIconModule,
527
527
  XBaseFormModule
528
- ],
529
- entryComponents: [XTimePickerPortalComponent]
528
+ ]
530
529
  }]
531
530
  }] });
532
531
 
@@ -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 { XBoolean, XCorner, XInputBoolean, XSize, XWithConfig } 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({ 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 显示边框\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 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 * 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","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} from '@angular/core';\r\nimport { XTimePickerFramePrefix, XTimePickerType } from './time-picker.property';\r\nimport { XListNode } from '@ng-nest/ui/list';\r\nimport { reqAnimFrame, XIsChange, XIsEmpty } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XTimePickerFramePrefix}`,\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;\r\n @Output() nodeEmit = new EventEmitter<Date>();\r\n @ViewChild('hourRef', { static: false }) hourRef!: ElementRef;\r\n @ViewChild('minuteRef', { static: false }) minuteRef!: ElementRef;\r\n @ViewChild('secondRef', { static: false }) secondRef!: ElementRef;\r\n model!: Date;\r\n now = new Date();\r\n hour: number = 0;\r\n minute: number = 0;\r\n second: number = 0;\r\n scrollAnimating: { [key: string]: boolean } = {};\r\n hourDate = Array.from({ length: 24 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n minuteDate = Array.from({ length: 60 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n secondDate = Array.from({ length: 60 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { value } = changes;\r\n if (XIsChange(value)) {\r\n this.init();\r\n this.setScrollTop();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.init();\r\n }\r\n\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n } else {\r\n const def = new Date('1970-01-01');\r\n this.model = new Date(\r\n def.getFullYear(),\r\n def.getMonth(),\r\n def.getDate(),\r\n this.now.getHours(),\r\n this.now.getMinutes(),\r\n this.now.getSeconds()\r\n );\r\n }\r\n this.setTime(this.model);\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 setTime(date: Date) {\r\n this.hour = date.getHours();\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() {\r\n this.selected(this.hourRef.nativeElement, this.hour);\r\n this.selected(this.minuteRef.nativeElement, this.minute);\r\n this.selected(this.secondRef.nativeElement, this.second);\r\n }\r\n\r\n selected(ele: HTMLElement, num: number) {\r\n if (this.scrollAnimating[ele.className]) return;\r\n let current = ele.querySelector(`.x-list x-list-option:nth-child(${num + 1})`) as HTMLElement;\r\n if (current) {\r\n ele.scrollTop = current.offsetTop;\r\n }\r\n }\r\n\r\n hourClick(date: XListNode) {\r\n this.hour = date.id;\r\n this.model.setHours(this.hour);\r\n this.scrollTo(this.hourRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n minuteClick(date: XListNode) {\r\n this.minute = date.id;\r\n this.model.setMinutes(this.minute);\r\n this.scrollTo(this.minuteRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n secondClick(date: XListNode) {\r\n this.second = date.id;\r\n this.model.setSeconds(this.second);\r\n this.scrollTo(this.secondRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\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 element.scrollTop = element.scrollTop + perTick;\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]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n Renderer2,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener\r\n} from '@angular/core';\r\nimport { XTimePickerPortalPrefix, XTimePickerType } from './time-picker.property';\r\nimport { XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\n\r\n@Component({\r\n selector: `${XTimePickerPortalPrefix}`,\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 nodeEmit!: (date: Date) => void;\r\n\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public renderer: Renderer2, public cdr: ChangeDetectorRef) {}\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 }\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","<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame [type]=\"type\" [value]=\"value\" (nodeEmit)=\"nodeEmit($event)\"></x-time-picker-frame>\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 } 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} from '@angular/core';\r\nimport { XTimePickerPrefix, XTimePickerProperty } from './time-picker.property';\r\nimport { XIsEmpty, XIsDate, XIsNumber, XCorner, XClearClass, XIsString } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Overlay, OverlayConfig, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XTimePickerPrefix}`,\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 {\r\n @ViewChild('datePicker', { static: true }) datePicker!: ElementRef;\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 private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private datePipe: DatePipe,\r\n private overlay: Overlay\r\n ) {\r\n super();\r\n }\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 }\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 setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-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 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.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 this.displayValue = this.datePipe.transform(date, this.format);\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 [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (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 { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\nimport { XTimePickerComponent } from './time-picker.component';\r\nimport { XTimePickerPortalComponent } from './time-picker-portal.component';\r\nimport { XTimePickerProperty } from './time-picker.property';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\n\r\n@NgModule({\r\n declarations: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent, XTimePickerProperty],\r\n exports: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XPortalModule,\r\n XInputModule,\r\n XListModule,\r\n XButtonModule,\r\n XIconModule,\r\n XBaseFormModule\r\n ],\r\n entryComponents: [XTimePickerPortalComponent]\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 { XBoolean, XCorner, XInputBoolean, XSize, XWithConfig } 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({ 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 显示边框\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 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 * 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","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} from '@angular/core';\r\nimport { XTimePickerFramePrefix, XTimePickerType } from './time-picker.property';\r\nimport { XListNode } from '@ng-nest/ui/list';\r\nimport { reqAnimFrame, XIsChange, XIsEmpty } from '@ng-nest/ui/core';\r\n\r\n@Component({\r\n selector: `${XTimePickerFramePrefix}`,\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;\r\n @Output() nodeEmit = new EventEmitter<Date>();\r\n @ViewChild('hourRef', { static: false }) hourRef!: ElementRef;\r\n @ViewChild('minuteRef', { static: false }) minuteRef!: ElementRef;\r\n @ViewChild('secondRef', { static: false }) secondRef!: ElementRef;\r\n model!: Date;\r\n now = new Date();\r\n hour: number = 0;\r\n minute: number = 0;\r\n second: number = 0;\r\n scrollAnimating: { [key: string]: boolean } = {};\r\n hourDate = Array.from({ length: 24 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n minuteDate = Array.from({ length: 60 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n secondDate = Array.from({ length: 60 }).map((_, i) => {\r\n return {\r\n label: this.prefixZero(i, 2),\r\n id: i\r\n };\r\n });\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { value } = changes;\r\n if (XIsChange(value)) {\r\n this.init();\r\n this.setScrollTop();\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.init();\r\n }\r\n\r\n constructor(private cdr: ChangeDetectorRef) {}\r\n\r\n init() {\r\n if (!XIsEmpty(this.value)) {\r\n this.setDefault();\r\n } else {\r\n const def = new Date('1970-01-01');\r\n this.model = new Date(\r\n def.getFullYear(),\r\n def.getMonth(),\r\n def.getDate(),\r\n this.now.getHours(),\r\n this.now.getMinutes(),\r\n this.now.getSeconds()\r\n );\r\n }\r\n this.setTime(this.model);\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 setTime(date: Date) {\r\n this.hour = date.getHours();\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() {\r\n this.selected(this.hourRef.nativeElement, this.hour);\r\n this.selected(this.minuteRef.nativeElement, this.minute);\r\n this.selected(this.secondRef.nativeElement, this.second);\r\n }\r\n\r\n selected(ele: HTMLElement, num: number) {\r\n if (this.scrollAnimating[ele.className]) return;\r\n let current = ele.querySelector(`.x-list x-list-option:nth-child(${num + 1})`) as HTMLElement;\r\n if (current) {\r\n ele.scrollTop = current.offsetTop;\r\n }\r\n }\r\n\r\n hourClick(date: XListNode) {\r\n this.hour = date.id;\r\n this.model.setHours(this.hour);\r\n this.scrollTo(this.hourRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n minuteClick(date: XListNode) {\r\n this.minute = date.id;\r\n this.model.setMinutes(this.minute);\r\n this.scrollTo(this.minuteRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\r\n this.nodeEmit.emit(this.model);\r\n this.cdr.detectChanges();\r\n }\r\n\r\n secondClick(date: XListNode) {\r\n this.second = date.id;\r\n this.model.setSeconds(this.second);\r\n this.scrollTo(this.secondRef.nativeElement, (date.event?.srcElement as HTMLElement).offsetTop, 120);\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 element.scrollTop = element.scrollTop + perTick;\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]=\"hourDate\" [(ngModel)]=\"hour\" (nodeClick)=\"hourClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-minute\" #minuteRef [hidden]=\"type === 'hour'\">\r\n <x-list [data]=\"minuteDate\" [(ngModel)]=\"minute\" (nodeClick)=\"minuteClick($event)\"></x-list>\r\n </div>\r\n <div class=\"x-time-picker-frame-second\" #secondRef [hidden]=\"type !== 'time'\">\r\n <x-list [data]=\"secondDate\" [(ngModel)]=\"second\" (nodeClick)=\"secondClick($event)\"></x-list>\r\n </div>\r\n</div>\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n OnInit,\r\n Renderer2,\r\n OnDestroy,\r\n HostBinding,\r\n HostListener\r\n} from '@angular/core';\r\nimport { XTimePickerPortalPrefix, XTimePickerType } from './time-picker.property';\r\nimport { XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\n\r\n@Component({\r\n selector: `${XTimePickerPortalPrefix}`,\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 nodeEmit!: (date: Date) => void;\r\n\r\n private _unSubject = new Subject<void>();\r\n\r\n constructor(public renderer: Renderer2, public cdr: ChangeDetectorRef) {}\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 }\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","<div class=\"x-time-picker-portal\" (click)=\"inputCom.inputFocus(); stopPropagation($event)\">\r\n <x-time-picker-frame [type]=\"type\" [value]=\"value\" (nodeEmit)=\"nodeEmit($event)\"></x-time-picker-frame>\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 } 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} from '@angular/core';\r\nimport { XTimePickerPrefix, XTimePickerProperty } from './time-picker.property';\r\nimport { XIsEmpty, XIsDate, XIsNumber, XCorner, XClearClass, XIsString } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Overlay, OverlayConfig, FlexibleConnectedPositionStrategy, ConnectedOverlayPositionChange } from '@angular/cdk/overlay';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\n\r\n@Component({\r\n selector: `${XTimePickerPrefix}`,\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 {\r\n @ViewChild('datePicker', { static: true }) datePicker!: ElementRef;\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 private _unSubject = new Subject<void>();\r\n\r\n constructor(\r\n public renderer: Renderer2,\r\n public elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private portalService: XPortalService,\r\n private viewContainerRef: ViewContainerRef,\r\n private datePipe: DatePipe,\r\n private overlay: Overlay\r\n ) {\r\n super();\r\n }\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 }\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 setSubject() {\r\n this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabled) return;\r\n this.enter = true;\r\n if (!XIsEmpty(this.value)) {\r\n this.icon = '';\r\n this.clearable = true;\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabled) return;\r\n this.enter = false;\r\n if (this.clearable) {\r\n this.icon = 'fto-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 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.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 this.displayValue = this.datePipe.transform(date, this.format);\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 [icon]=\"icon\"\r\n [placeholder]=\"placeholder\"\r\n [readonly]=\"readonly\"\r\n [clearable]=\"clearable\"\r\n [(ngModel)]=\"displayValue\"\r\n [valueTpl]=\"valueTpl\"\r\n [valueTplContext]=\"valueTplContext\"\r\n [size]=\"size\"\r\n [bordered]=\"bordered\"\r\n [before]=\"before\"\r\n [after]=\"after\"\r\n [pattern]=\"pattern\"\r\n [message]=\"message\"\r\n [pointer]=\"true\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (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 { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XInputModule } from '@ng-nest/ui/input';\r\nimport { XPortalModule } from '@ng-nest/ui/portal';\r\nimport { XIconModule } from '@ng-nest/ui/icon';\r\nimport { XButtonModule } from '@ng-nest/ui/button';\r\nimport { XListModule } from '@ng-nest/ui/list';\r\nimport { XBaseFormModule } from '@ng-nest/ui/base-form';\r\nimport { XTimePickerComponent } from './time-picker.component';\r\nimport { XTimePickerPortalComponent } from './time-picker-portal.component';\r\nimport { XTimePickerProperty } from './time-picker.property';\r\nimport { XTimePickerFrameComponent } from './time-picker-frame.component';\r\n\r\n@NgModule({\r\n declarations: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent, XTimePickerProperty],\r\n exports: [XTimePickerComponent, XTimePickerPortalComponent, XTimePickerFrameComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n XPortalModule,\r\n XInputModule,\r\n XListModule,\r\n XButtonModule,\r\n XIconModule,\r\n XBaseFormModule\r\n ]\r\n})\r\nexport class XTimePickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAIA;;;;;MAKa,iBAAiB,GAAG,gBAAgB;AACjD,MAAM,aAAa,GAAG,YAAY,CAAC;AAEnC;;;MAIa,4BAA4B,qBAA0B;IADnE;;;;;;QAMW,SAAI,GAAoB,MAAM,CAAC;;;;;QAyB9B,aAAQ,GAAG,IAAI,YAAY,EAAU,CAAC;KACjD;;sJA/BY,mBAAmB;0IAAnB,mBAAmB,sNADT,EAAE;AAWkC;IAA/C,WAAW,CAAS,aAAa,EAAE,UAAU,CAAC;mDAAiB;AAKX;IAApD,WAAW,CAAU,aAAa,EAAE,cAAc,CAAC;sDAAqB;AAK5B;IAA5C,WAAW,CAAQ,aAAa,EAAE,QAAQ,CAAC;iDAAuB;AAKN;IAA5D,aAAa,EAAE;IAAE,WAAW,CAAW,aAAa,EAAE,IAAI,CAAC;qDAAqB;2FAzB/E,mBAAmB;kBAD/B,SAAS;mBAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;8BAMhB,IAAI;sBAAZ,KAAK;gBAKmD,MAAM;sBAA9D,KAAK;gBAKwD,SAAS;sBAAtE,KAAK;gBAKyD,IAAI;sBAAlE,KAAK;gBAKgE,QAAQ;sBAA7E,KAAK;gBAKI,QAAQ;sBAAjB,MAAM;;AAoCT;;;;;MAKa,uBAAuB,GAAG,uBAAuB;AAE9D;;;;;MAKa,sBAAsB,GAAG;;MCvEzB,yBAAyB;IA2CpC,YAAoB,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QA1CjC,SAAI,GAAoB,MAAM,CAAC;QAE9B,aAAQ,GAAG,IAAI,YAAY,EAAQ,CAAC;QAK9C,QAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACjB,SAAI,GAAW,CAAC,CAAC;QACjB,WAAM,GAAW,CAAC,CAAC;QACnB,WAAM,GAAW,CAAC,CAAC;QACnB,oBAAe,GAA+B,EAAE,CAAC;QACjD,aAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,CAAC;aACN,CAAC;SACH,CAAC,CAAC;QACH,eAAU,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,CAAC;aACN,CAAC;SACH,CAAC,CAAC;QACH,eAAU,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,CAAC;aACN,CAAC;SACH,CAAC,CAAC;KAa2C;IAZ9C,WAAW,CAAC,OAAsB;QAChC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YACpB,IAAI,CAAC,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC,YAAY,EAAE,CAAC;SACrB;KACF;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;IAID,IAAI;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;aAAM;YACL,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CACnB,GAAG,CAAC,WAAW,EAAE,EACjB,GAAG,CAAC,QAAQ,EAAE,EACd,GAAG,CAAC,OAAO,EAAE,EACb,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EACnB,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,EACrB,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CACtB,CAAC;SACH;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,UAAU;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACnC;IAED,OAAO,CAAC,IAAU;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;KACjC;IAED,UAAU,CAAC,GAAW,EAAE,CAAS;QAC/B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;KAC7C;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;KAC1D;IAED,QAAQ,CAAC,GAAgB,EAAE,GAAW;QACpC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QAChD,IAAI,OAAO,GAAG,GAAG,CAAC,aAAa,CAAC,mCAAmC,GAAG,GAAG,CAAC,GAAG,CAAgB,CAAC;QAC9F,IAAI,OAAO,EAAE;YACX,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;SACnC;KACF;IAED,SAAS,CAAC,IAAe;;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,UAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAClG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,WAAW,CAAC,IAAe;;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,UAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACpG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,WAAW,CAAC,IAAe;;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,UAA0B,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACpG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAEO,QAAQ,CAAC,OAAoB,EAAE,EAAU,EAAE,QAAgB;QACjE,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;QAClC,MAAM,UAAU,GAAG,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;QAC1C,MAAM,OAAO,GAAG,CAAC,UAAU,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACrC,YAAY,CAAC;YACX,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC;YAChD,IAAI,OAAO,CAAC,SAAS,KAAK,EAAE,IAAI,QAAQ,IAAI,CAAC,EAAE;gBAC7C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;gBACtC,OAAO;aACR;iBAAM;gBACL,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;aAC3C;SACF,CAAC,CAAC;KACJ;;4JAjIU,yBAAyB;gJAAzB,yBAAyB,mbCvBtC,snBAWA;2FDYa,yBAAyB;kBAPrC,SAAS;+BACE,GAAG,sBAAsB,EAAE,iBAGtB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;wGAGtC,IAAI;sBAAZ,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACI,QAAQ;sBAAjB,MAAM;gBACkC,OAAO;sBAA/C,SAAS;uBAAC,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;gBACI,SAAS;sBAAnD,SAAS;uBAAC,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;gBACE,SAAS;sBAAnD,SAAS;uBAAC,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;;MEJ9B,0BAA0B;IAqBrC,YAAmB,QAAmB,EAAS,GAAsB;QAAlD,aAAQ,GAAR,QAAQ,CAAW;QAAS,QAAG,GAAH,GAAG,CAAmB;QAZrE,SAAI,GAAoB,MAAM,CAAC;QAUvB,eAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;KAEgC;IAnBb,IAAI,CAAC,KAAuB;QACtF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACtB,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;KAClD;IAC4D,KAAK;QAChE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;KACtB;IAeD,QAAQ;QACN,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAM;YACjE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B,CAAC,CAAC;KACJ;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,eAAe,CAAC,KAAY;QAC1B,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB;;6JAxCU,0BAA0B;iJAA1B,0BAA0B,0PCzBvC,kOAGA,uODoBc,CAAC,qBAAqB,CAAC;2FAExB,0BAA0B;kBARtC,SAAS;+BACE,GAAG,uBAAuB,EAAE,iBAGvB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,cACnC,CAAC,qBAAqB,CAAC;gIAGc,SAAS;sBAAzD,WAAW;uBAAC,2BAA2B;gBACoB,IAAI;sBAA/D,YAAY;uBAAC,gCAAgC,EAAE,CAAC,QAAQ,CAAC;gBAIG,KAAK;sBAAjE,YAAY;uBAAC,iCAAiC,EAAE,CAAC,QAAQ,CAAC;;;MEDhD,6BAA6B,mBAAmB;IAwC3D,YACS,QAAmB,EACnB,UAAsB,EACrB,GAAsB,EACtB,aAA6B,EAC7B,gBAAkC,EAClC,QAAkB,EAClB,OAAgB;QAExB,KAAK,EAAE,CAAC;QARD,aAAQ,GAAR,QAAQ,CAAW;QACnB,eAAU,GAAV,UAAU,CAAY;QACrB,QAAG,GAAH,GAAG,CAAmB;QACtB,kBAAa,GAAb,aAAa,CAAgB;QAC7B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAS;QAzBjB,aAAQ,GAAY,IAAI,CAAC;QAClC,cAAS,GAAY,KAAK,CAAC;QAC3B,UAAK,GAAY,KAAK,CAAC;QACvB,cAAS,GAAG,KAAK,CAAC;QAClB,iBAAY,GAAQ,EAAE,CAAC;QAEvB,SAAI,GAAW,WAAW,CAAC;QAG3B,aAAQ,GAAW,CAAC,CAAC;QACrB,mBAAc,GAAY,IAAI,CAAC;QAC/B,gBAAW,GAAiB,IAAI,OAAO,EAAE,CAAC;QAC1C,eAAU,GAAiB,IAAI,OAAO,EAAE,CAAC;QACzC,mBAAc,GAAiB,IAAI,OAAO,EAAE,CAAC;QAC7C,iBAAY,GAAkB,IAAI,OAAO,EAAE,CAAC;QAC5C,cAAS,GAAiC,MAAM,CAAC;QACzC,eAAU,GAAG,IAAI,OAAO,EAAQ,CAAC;KAYxC;IA9CQ,UAAU,CAAC,KAAU;QAC5B,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;SACzB;aAAM,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;SAC3B;aAAM,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;SAC3B;aAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;SACjB;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAgCD,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrG,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,EAAE,CAAC;KACnB;IAED,eAAe;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,WAAW;QACT,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,KAAK,CAAC;KACnF;IAED,SAAS;QACP,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE;YAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;gBACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACpB;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;aACvB;SACF;KACF;IAED,UAAU;QACR,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB,CAAC,CAAC;KACJ;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;YACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;SAC1B;KACF;IAED,SAAS;QACP,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC9C;IAED,cAAc;;QACZ,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,WAAW,EAAE,CAAC;KAC/C;IAED,WAAW;;QACT,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;KACd;IAED,aAAa;;QACX,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,0CAAE,OAAO,EAAE,CAAC;KACpC;IAED,UAAU;;QACR,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,MAAM,MAAM,GAAkB;YAC5B,aAAa,EAAE,EAAE;YACjB,gBAAgB,EAAE,IAAI,CAAC,YAAY,EAAE;YACrC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE;SAC3D,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;YACtC,OAAO,EAAE,0BAA0B;YACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,aAAa,EAAE,MAAM;SACtB,CAAC,CAAC;QACH,MAAA,IAAI,CAAC,MAAM,CAAC,UAAU,0CAClB,oBAAoB,GACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,EAC/B,SAAS,CAAC;YACT,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;SAC1B,CAAC,CAAC;QACL,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW,CAAC,MAAqB;QAC/B,IAAI,QAAQ,GAAG,MAAM,CAAC,gBAAqD,CAAC;QAC5E,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAmC;YACtG,MAAM,KAAK,GAAG,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAY,CAAC;YAC1E,KAAK,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC7D,CAAC,CAAC;KACJ;IAED,WAAW;;QACT,IAAI,YAAY,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,YAAY,CAAC;QAC7C,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE;YACnC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC3C,aAAa,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE;YACzC,QAAQ,EAAE,CAAC,IAAU,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YAChD,SAAS,EAAE,CAAC,GAAY,MAAM,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;SACpD,CAAC,CAAC;QACH,YAAY,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;KAChD;IAED,WAAW,CAAC,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;IAED,QAAQ,CAAC,KAAW;QAClB,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;KACxF;IAED,eAAe,CAAC,IAAmB;QACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;KAChE;IAED,YAAY;QACV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;YACrC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAClC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAoB,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,CAAC;YAC5F,iBAAiB,EAAE,sBAAsB;SAC1C,CAAC,CAAC;KACJ;IAED,SAAS;;QACP,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;YACzB,MAAA,IAAI,CAAC,MAAM,CAAC,UAAU,0CAAE,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;SACrE;KACF;IAED,kBAAkB;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;;uJAzNU,oBAAoB;2IAApB,oBAAoB,wCAFpB,CAAC,cAAc,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,8QC5B7D,kjCAmCA;2FDLa,oBAAoB;kBARhC,SAAS;+BACE,GAAG,iBAAiB,EAAE,iBAGjB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,aACpC,CAAC,cAAc,sBAAsB,EAAE,QAAQ,CAAC;oQAGhB,UAAU;sBAApD,SAAS;uBAAC,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBACA,QAAQ;sBAAhD,SAAS;uBAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;MEH5B,iBAAiB;;oJAAjB,iBAAiB;qJAAjB,iBAAiB,iBAdX,oBAAoB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,mBAAmB,aAG3G,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,aAAa;QACb,YAAY;QACZ,WAAW;QACX,aAAa;QACb,WAAW;QACX,eAAe,aAVT,oBAAoB,EAAE,0BAA0B,EAAE,yBAAyB;qJAa5E,iBAAiB,YAZjB;YACL,YAAY;YACZ,WAAW;YACX,mBAAmB;YACnB,aAAa;YACb,YAAY;YACZ,WAAW;YACX,aAAa;YACb,WAAW;YACX,eAAe;SAClB;2FAEQ,iBAAiB;kBAf7B,QAAQ;mBAAC;oBACN,YAAY,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,mBAAmB,CAAC;oBAChH,OAAO,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,yBAAyB,CAAC;oBACtF,OAAO,EAAE;wBACL,YAAY;wBACZ,WAAW;wBACX,mBAAmB;wBACnB,aAAa;wBACb,YAAY;wBACZ,WAAW;wBACX,aAAa;wBACb,WAAW;wBACX,eAAe;qBAClB;iBACJ;;;AC5BD;;;;;;"}