@ng-nest/ui 18.0.5 → 18.0.7

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 (578) hide show
  1. package/checkbox/checkbox.component.d.ts +1 -1
  2. package/core/config/config.d.ts +6 -0
  3. package/esm2022/affix/affix.component.mjs +4 -4
  4. package/esm2022/affix/affix.module.mjs +4 -4
  5. package/esm2022/affix/affix.property.mjs +3 -3
  6. package/esm2022/alert/alert.component.mjs +5 -5
  7. package/esm2022/alert/alert.module.mjs +4 -4
  8. package/esm2022/alert/alert.property.mjs +3 -3
  9. package/esm2022/anchor/anchor-inner.component.mjs +3 -3
  10. package/esm2022/anchor/anchor.component.mjs +5 -5
  11. package/esm2022/anchor/anchor.module.mjs +4 -4
  12. package/esm2022/anchor/anchor.property.mjs +6 -6
  13. package/esm2022/api/api.component.mjs +4 -4
  14. package/esm2022/api/api.module.mjs +4 -4
  15. package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
  16. package/esm2022/auto-complete/auto-complete.component.mjs +5 -5
  17. package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
  18. package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
  19. package/esm2022/avatar/avatar-group.component.mjs +3 -3
  20. package/esm2022/avatar/avatar.component.mjs +5 -5
  21. package/esm2022/avatar/avatar.module.mjs +4 -4
  22. package/esm2022/avatar/avatar.property.mjs +6 -6
  23. package/esm2022/back-top/back-top.component.mjs +5 -5
  24. package/esm2022/back-top/back-top.module.mjs +4 -4
  25. package/esm2022/back-top/back-top.property.mjs +3 -3
  26. package/esm2022/badge/badge.component.mjs +5 -5
  27. package/esm2022/badge/badge.module.mjs +4 -4
  28. package/esm2022/badge/badge.property.mjs +3 -3
  29. package/esm2022/base-form/base-form.module.mjs +4 -4
  30. package/esm2022/base-form/base-form.property.mjs +6 -6
  31. package/esm2022/button/button.component.mjs +5 -5
  32. package/esm2022/button/button.module.mjs +4 -4
  33. package/esm2022/button/button.property.mjs +6 -6
  34. package/esm2022/button/buttons.component.mjs +4 -4
  35. package/esm2022/calendar/calendar.component.mjs +5 -5
  36. package/esm2022/calendar/calendar.module.mjs +4 -4
  37. package/esm2022/calendar/calendar.property.mjs +3 -3
  38. package/esm2022/card/card.component.mjs +5 -5
  39. package/esm2022/card/card.module.mjs +4 -4
  40. package/esm2022/card/card.property.mjs +3 -3
  41. package/esm2022/carousel/carousel-panel.component.mjs +5 -5
  42. package/esm2022/carousel/carousel.component.mjs +5 -5
  43. package/esm2022/carousel/carousel.module.mjs +4 -4
  44. package/esm2022/carousel/carousel.property.mjs +6 -6
  45. package/esm2022/cascade/cascade-portal.component.mjs +3 -3
  46. package/esm2022/cascade/cascade.component.mjs +5 -5
  47. package/esm2022/cascade/cascade.module.mjs +4 -4
  48. package/esm2022/cascade/cascade.property.mjs +3 -3
  49. package/esm2022/checkbox/checkbox.component.mjs +5 -5
  50. package/esm2022/checkbox/checkbox.module.mjs +4 -4
  51. package/esm2022/checkbox/checkbox.property.mjs +3 -3
  52. package/esm2022/collapse/collapse-panel.component.mjs +5 -5
  53. package/esm2022/collapse/collapse.component.mjs +4 -4
  54. package/esm2022/collapse/collapse.module.mjs +4 -4
  55. package/esm2022/collapse/collapse.property.mjs +6 -6
  56. package/esm2022/color/color.component.mjs +4 -4
  57. package/esm2022/color/color.module.mjs +4 -4
  58. package/esm2022/color/color.property.mjs +3 -3
  59. package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
  60. package/esm2022/color-picker/color-picker.component.mjs +5 -5
  61. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  62. package/esm2022/color-picker/color-picker.property.mjs +3 -3
  63. package/esm2022/comment/comment-reply.component.mjs +3 -3
  64. package/esm2022/comment/comment.component.mjs +5 -5
  65. package/esm2022/comment/comment.module.mjs +4 -4
  66. package/esm2022/comment/comment.property.mjs +6 -6
  67. package/esm2022/container/aside.component.mjs +4 -4
  68. package/esm2022/container/container.component.mjs +4 -4
  69. package/esm2022/container/container.module.mjs +4 -4
  70. package/esm2022/container/container.property.mjs +12 -12
  71. package/esm2022/container/footer.component.mjs +4 -4
  72. package/esm2022/container/header.component.mjs +4 -4
  73. package/esm2022/container/main.component.mjs +4 -4
  74. package/esm2022/core/config/config.mjs +1 -1
  75. package/esm2022/core/config/config.service.mjs +3 -3
  76. package/esm2022/core/services/http.service.mjs +3 -3
  77. package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
  78. package/esm2022/core/services/storage.service.mjs +3 -3
  79. package/esm2022/core/theme/theme.service.mjs +3 -3
  80. package/esm2022/crumb/crumb.component.mjs +5 -5
  81. package/esm2022/crumb/crumb.module.mjs +4 -4
  82. package/esm2022/crumb/crumb.property.mjs +3 -3
  83. package/esm2022/date-picker/date-picker-portal.component.mjs +3 -3
  84. package/esm2022/date-picker/date-picker.component.mjs +5 -5
  85. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  86. package/esm2022/date-picker/date-picker.property.mjs +18 -18
  87. package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
  88. package/esm2022/date-picker/date-range-portal.component.mjs +3 -3
  89. package/esm2022/date-picker/date-range.component.mjs +5 -5
  90. package/esm2022/date-picker/picker-date.component.mjs +3 -3
  91. package/esm2022/date-picker/picker-month.component.mjs +3 -3
  92. package/esm2022/date-picker/picker-quarter.component.mjs +3 -3
  93. package/esm2022/date-picker/picker-year.component.mjs +3 -3
  94. package/esm2022/description/description-item.component.mjs +3 -3
  95. package/esm2022/description/description.component.mjs +3 -3
  96. package/esm2022/description/description.module.mjs +4 -4
  97. package/esm2022/description/description.property.mjs +6 -6
  98. package/esm2022/dialog/dialog-container.component.mjs +5 -5
  99. package/esm2022/dialog/dialog-portal.component.mjs +5 -5
  100. package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
  101. package/esm2022/dialog/dialog.component.mjs +5 -5
  102. package/esm2022/dialog/dialog.module.mjs +4 -4
  103. package/esm2022/dialog/dialog.property.mjs +6 -6
  104. package/esm2022/dialog/dialog.service.mjs +3 -3
  105. package/esm2022/doc/doc.component.mjs +4 -4
  106. package/esm2022/doc/doc.module.mjs +4 -4
  107. package/esm2022/drag/drag.directive.mjs +3 -3
  108. package/esm2022/drag/drag.module.mjs +4 -4
  109. package/esm2022/drag/drag.property.mjs +3 -3
  110. package/esm2022/drawer/drawer-container.component.mjs +5 -5
  111. package/esm2022/drawer/drawer-portal.component.mjs +5 -5
  112. package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
  113. package/esm2022/drawer/drawer.component.mjs +5 -5
  114. package/esm2022/drawer/drawer.module.mjs +4 -4
  115. package/esm2022/drawer/drawer.property.mjs +6 -6
  116. package/esm2022/drawer/drawer.service.mjs +3 -3
  117. package/esm2022/dropdown/dropdown-portal.component.mjs +3 -3
  118. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  119. package/esm2022/dropdown/dropdown.module.mjs +4 -4
  120. package/esm2022/dropdown/dropdown.property.mjs +3 -3
  121. package/esm2022/empty/empty.component.mjs +5 -5
  122. package/esm2022/empty/empty.module.mjs +4 -4
  123. package/esm2022/empty/empty.property.mjs +3 -3
  124. package/esm2022/examples/examples.component.mjs +4 -4
  125. package/esm2022/examples/examples.module.mjs +4 -4
  126. package/esm2022/find/find.component.mjs +5 -5
  127. package/esm2022/find/find.module.mjs +4 -4
  128. package/esm2022/find/find.property.mjs +3 -3
  129. package/esm2022/form/control.component.mjs +3 -3
  130. package/esm2022/form/form.component.mjs +5 -5
  131. package/esm2022/form/form.module.mjs +4 -4
  132. package/esm2022/form/form.property.mjs +6 -6
  133. package/esm2022/highlight/highlight.component.mjs +5 -5
  134. package/esm2022/highlight/highlight.module.mjs +4 -4
  135. package/esm2022/highlight/highlight.property.mjs +3 -3
  136. package/esm2022/highlight/highlight.service.mjs +3 -3
  137. package/esm2022/i18n/i18n.directive.mjs +3 -3
  138. package/esm2022/i18n/i18n.module.mjs +4 -4
  139. package/esm2022/i18n/i18n.pipe.mjs +3 -3
  140. package/esm2022/i18n/i18n.property.mjs +1 -1
  141. package/esm2022/i18n/i18n.service.mjs +3 -3
  142. package/esm2022/i18n/languages/ar_EG.mjs +8 -2
  143. package/esm2022/i18n/languages/bg_BG.mjs +8 -2
  144. package/esm2022/i18n/languages/ca_ES.mjs +8 -2
  145. package/esm2022/i18n/languages/cs_CZ.mjs +8 -2
  146. package/esm2022/i18n/languages/da_DK.mjs +8 -2
  147. package/esm2022/i18n/languages/de_DE.mjs +8 -2
  148. package/esm2022/i18n/languages/el_GR.mjs +8 -2
  149. package/esm2022/i18n/languages/en_GB.mjs +8 -2
  150. package/esm2022/i18n/languages/en_US.mjs +8 -2
  151. package/esm2022/i18n/languages/es_ES.mjs +8 -2
  152. package/esm2022/i18n/languages/et_EE.mjs +8 -2
  153. package/esm2022/i18n/languages/fa_IR.mjs +8 -2
  154. package/esm2022/i18n/languages/fi_FI.mjs +8 -2
  155. package/esm2022/i18n/languages/fr_BE.mjs +8 -2
  156. package/esm2022/i18n/languages/fr_FR.mjs +8 -2
  157. package/esm2022/i18n/languages/he_IL.mjs +8 -2
  158. package/esm2022/i18n/languages/hi_IN.mjs +8 -2
  159. package/esm2022/i18n/languages/hr_HR.mjs +8 -2
  160. package/esm2022/i18n/languages/hu_HU.mjs +8 -2
  161. package/esm2022/i18n/languages/hy_AM.mjs +8 -2
  162. package/esm2022/i18n/languages/id_ID.mjs +8 -2
  163. package/esm2022/i18n/languages/is_IS.mjs +8 -2
  164. package/esm2022/i18n/languages/it_IT.mjs +8 -2
  165. package/esm2022/i18n/languages/ja_JP.mjs +8 -2
  166. package/esm2022/i18n/languages/ka_GE.mjs +8 -2
  167. package/esm2022/i18n/languages/kn_IN.mjs +8 -2
  168. package/esm2022/i18n/languages/ko_KR.mjs +8 -2
  169. package/esm2022/i18n/languages/ku_IQ.mjs +8 -2
  170. package/esm2022/i18n/languages/lv_LV.mjs +8 -2
  171. package/esm2022/i18n/languages/mn_MN.mjs +8 -2
  172. package/esm2022/i18n/languages/ms_MY.mjs +8 -2
  173. package/esm2022/i18n/languages/nb_NO.mjs +8 -2
  174. package/esm2022/i18n/languages/ne_NP.mjs +8 -2
  175. package/esm2022/i18n/languages/nl_BE.mjs +8 -2
  176. package/esm2022/i18n/languages/nl_NL.mjs +8 -2
  177. package/esm2022/i18n/languages/pl_PL.mjs +8 -2
  178. package/esm2022/i18n/languages/pt_BR.mjs +8 -2
  179. package/esm2022/i18n/languages/pt_PT.mjs +8 -2
  180. package/esm2022/i18n/languages/ro_RO.mjs +8 -2
  181. package/esm2022/i18n/languages/ru_RU.mjs +8 -2
  182. package/esm2022/i18n/languages/sk_SK.mjs +8 -2
  183. package/esm2022/i18n/languages/sl_SI.mjs +8 -2
  184. package/esm2022/i18n/languages/sr_RS.mjs +8 -2
  185. package/esm2022/i18n/languages/sv_SE.mjs +8 -2
  186. package/esm2022/i18n/languages/ta_IN.mjs +8 -2
  187. package/esm2022/i18n/languages/th_TH.mjs +8 -2
  188. package/esm2022/i18n/languages/tr_TR.mjs +8 -2
  189. package/esm2022/i18n/languages/uk_UA.mjs +8 -2
  190. package/esm2022/i18n/languages/vi_VN.mjs +8 -2
  191. package/esm2022/i18n/languages/zh_CN.mjs +8 -2
  192. package/esm2022/i18n/languages/zh_TW.mjs +8 -2
  193. package/esm2022/icon/icon.component.mjs +4 -4
  194. package/esm2022/icon/icon.module.mjs +4 -4
  195. package/esm2022/icon/icon.property.mjs +3 -3
  196. package/esm2022/icon/icon.service.mjs +3 -3
  197. package/esm2022/image/image-group.component.mjs +3 -3
  198. package/esm2022/image/image-preview.component.mjs +5 -5
  199. package/esm2022/image/image.component.mjs +5 -5
  200. package/esm2022/image/image.module.mjs +4 -4
  201. package/esm2022/image/image.property.mjs +6 -6
  202. package/esm2022/inner/inner.component.mjs +4 -4
  203. package/esm2022/inner/inner.module.mjs +4 -4
  204. package/esm2022/inner/inner.property.mjs +3 -3
  205. package/esm2022/input/input-group.component.mjs +3 -3
  206. package/esm2022/input/input.component.mjs +5 -5
  207. package/esm2022/input/input.module.mjs +4 -4
  208. package/esm2022/input/input.property.mjs +6 -6
  209. package/esm2022/input-number/input-number.component.mjs +5 -5
  210. package/esm2022/input-number/input-number.module.mjs +4 -4
  211. package/esm2022/input-number/input-number.property.mjs +3 -3
  212. package/esm2022/keyword/keyword.directive.mjs +3 -3
  213. package/esm2022/keyword/keyword.module.mjs +4 -4
  214. package/esm2022/keyword/keyword.property.mjs +3 -3
  215. package/esm2022/layout/col.component.mjs +3 -3
  216. package/esm2022/layout/layout.module.mjs +4 -4
  217. package/esm2022/layout/layout.property.mjs +6 -6
  218. package/esm2022/layout/row.component.mjs +3 -3
  219. package/esm2022/link/link.component.mjs +5 -5
  220. package/esm2022/link/link.module.mjs +4 -4
  221. package/esm2022/link/link.property.mjs +3 -3
  222. package/esm2022/list/list-drop-group.directive.mjs +3 -3
  223. package/esm2022/list/list-option.component.mjs +3 -3
  224. package/esm2022/list/list.component.mjs +11 -11
  225. package/esm2022/list/list.module.mjs +4 -4
  226. package/esm2022/list/list.property.mjs +6 -6
  227. package/esm2022/loading/loading.component.mjs +5 -5
  228. package/esm2022/loading/loading.module.mjs +4 -4
  229. package/esm2022/loading/loading.property.mjs +3 -3
  230. package/esm2022/menu/menu-node.component.mjs +3 -3
  231. package/esm2022/menu/menu.component.mjs +3 -3
  232. package/esm2022/menu/menu.module.mjs +4 -4
  233. package/esm2022/menu/menu.property.mjs +6 -6
  234. package/esm2022/message/message.component.mjs +3 -3
  235. package/esm2022/message/message.module.mjs +4 -4
  236. package/esm2022/message/message.service.mjs +3 -3
  237. package/esm2022/message-box/message-box.component.mjs +3 -3
  238. package/esm2022/message-box/message-box.module.mjs +4 -4
  239. package/esm2022/message-box/message-box.service.mjs +3 -3
  240. package/esm2022/notification/notification.component.mjs +3 -3
  241. package/esm2022/notification/notification.module.mjs +4 -4
  242. package/esm2022/notification/notification.service.mjs +3 -3
  243. package/esm2022/outlet/outlet.directive.mjs +3 -3
  244. package/esm2022/outlet/outlet.module.mjs +4 -4
  245. package/esm2022/page-header/page-header.component.mjs +5 -5
  246. package/esm2022/page-header/page-header.module.mjs +4 -4
  247. package/esm2022/page-header/page-header.property.mjs +3 -3
  248. package/esm2022/pagination/pagination.component.mjs +91 -29
  249. package/esm2022/pagination/pagination.module.mjs +4 -4
  250. package/esm2022/pagination/pagination.property.mjs +23 -8
  251. package/esm2022/pattern/pattern.component.mjs +4 -4
  252. package/esm2022/pattern/pattern.module.mjs +4 -4
  253. package/esm2022/popconfirm/popconfirm.component.mjs +5 -5
  254. package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
  255. package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
  256. package/esm2022/popover/popover-portal.component.mjs +5 -5
  257. package/esm2022/popover/popover.directive.mjs +3 -3
  258. package/esm2022/popover/popover.module.mjs +4 -4
  259. package/esm2022/popover/popover.property.mjs +3 -3
  260. package/esm2022/portal/portal.module.mjs +4 -4
  261. package/esm2022/portal/portal.service.mjs +3 -3
  262. package/esm2022/progress/progress.component.mjs +5 -5
  263. package/esm2022/progress/progress.module.mjs +4 -4
  264. package/esm2022/progress/progress.property.mjs +3 -3
  265. package/esm2022/radio/radio.component.mjs +5 -5
  266. package/esm2022/radio/radio.module.mjs +4 -4
  267. package/esm2022/radio/radio.property.mjs +3 -3
  268. package/esm2022/rate/rate.component.mjs +5 -5
  269. package/esm2022/rate/rate.module.mjs +4 -4
  270. package/esm2022/rate/rate.property.mjs +3 -3
  271. package/esm2022/resizable/resizable.directive.mjs +3 -3
  272. package/esm2022/resizable/resizable.module.mjs +4 -4
  273. package/esm2022/resizable/resizable.property.mjs +3 -3
  274. package/esm2022/result/result.component.mjs +5 -5
  275. package/esm2022/result/result.module.mjs +4 -4
  276. package/esm2022/result/result.property.mjs +3 -3
  277. package/esm2022/ripple/ripple.directive.mjs +3 -3
  278. package/esm2022/ripple/ripple.module.mjs +4 -4
  279. package/esm2022/ripple/ripple.property.mjs +3 -3
  280. package/esm2022/select/select-portal.component.mjs +3 -3
  281. package/esm2022/select/select.component.mjs +5 -5
  282. package/esm2022/select/select.module.mjs +4 -4
  283. package/esm2022/select/select.property.mjs +5 -5
  284. package/esm2022/skeleton/skeleton.component.mjs +3 -3
  285. package/esm2022/skeleton/skeleton.module.mjs +4 -4
  286. package/esm2022/skeleton/skeleton.property.mjs +3 -3
  287. package/esm2022/slider/slider.component.mjs +5 -5
  288. package/esm2022/slider/slider.module.mjs +4 -4
  289. package/esm2022/slider/slider.property.mjs +3 -3
  290. package/esm2022/slider-select/slider-select.component.mjs +5 -5
  291. package/esm2022/slider-select/slider-select.module.mjs +4 -4
  292. package/esm2022/slider-select/slider-select.property.mjs +3 -3
  293. package/esm2022/statistic/countdown.component.mjs +3 -3
  294. package/esm2022/statistic/statistic.component.mjs +3 -3
  295. package/esm2022/statistic/statistic.module.mjs +4 -4
  296. package/esm2022/statistic/statistic.property.mjs +6 -6
  297. package/esm2022/steps/steps.component.mjs +5 -5
  298. package/esm2022/steps/steps.module.mjs +4 -4
  299. package/esm2022/steps/steps.property.mjs +3 -3
  300. package/esm2022/switch/switch.component.mjs +5 -5
  301. package/esm2022/switch/switch.module.mjs +4 -4
  302. package/esm2022/switch/switch.property.mjs +3 -3
  303. package/esm2022/table/table-body.component.mjs +3 -3
  304. package/esm2022/table/table-foot.component.mjs +3 -3
  305. package/esm2022/table/table-head.component.mjs +4 -4
  306. package/esm2022/table/table.component.mjs +5 -5
  307. package/esm2022/table/table.module.mjs +4 -4
  308. package/esm2022/table/table.property.mjs +28 -13
  309. package/esm2022/tabs/tab-content.component.mjs +3 -3
  310. package/esm2022/tabs/tab-link.directive.mjs +6 -6
  311. package/esm2022/tabs/tab.component.mjs +3 -3
  312. package/esm2022/tabs/tabs.component.mjs +5 -5
  313. package/esm2022/tabs/tabs.module.mjs +4 -4
  314. package/esm2022/tabs/tabs.property.mjs +6 -6
  315. package/esm2022/tag/tag.component.mjs +5 -5
  316. package/esm2022/tag/tag.module.mjs +4 -4
  317. package/esm2022/tag/tag.property.mjs +3 -3
  318. package/esm2022/text-retract/text-retract.component.mjs +5 -5
  319. package/esm2022/text-retract/text-retract.module.mjs +4 -4
  320. package/esm2022/text-retract/text-retract.property.mjs +3 -3
  321. package/esm2022/textarea/textarea.component.mjs +5 -5
  322. package/esm2022/textarea/textarea.module.mjs +4 -4
  323. package/esm2022/textarea/textarea.property.mjs +3 -3
  324. package/esm2022/theme/theme.component.mjs +5 -5
  325. package/esm2022/theme/theme.module.mjs +4 -4
  326. package/esm2022/theme/theme.property.mjs +3 -3
  327. package/esm2022/time-ago/time-ago.module.mjs +4 -4
  328. package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
  329. package/esm2022/time-picker/time-picker-frame.component.mjs +5 -5
  330. package/esm2022/time-picker/time-picker-portal.component.mjs +3 -3
  331. package/esm2022/time-picker/time-picker.component.mjs +5 -5
  332. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  333. package/esm2022/time-picker/time-picker.property.mjs +3 -3
  334. package/esm2022/time-range/time-range.module.mjs +4 -4
  335. package/esm2022/time-range/time-range.pipe.mjs +3 -3
  336. package/esm2022/timeline/timeline.component.mjs +5 -5
  337. package/esm2022/timeline/timeline.module.mjs +4 -4
  338. package/esm2022/timeline/timeline.property.mjs +3 -3
  339. package/esm2022/tooltip/tooltip-portal.component.mjs +5 -5
  340. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  341. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  342. package/esm2022/tooltip/tooltip.property.mjs +3 -3
  343. package/esm2022/transfer/transfer.component.mjs +5 -5
  344. package/esm2022/transfer/transfer.module.mjs +4 -4
  345. package/esm2022/transfer/transfer.property.mjs +3 -3
  346. package/esm2022/tree/tree-node.component.mjs +5 -5
  347. package/esm2022/tree/tree.component.mjs +4 -4
  348. package/esm2022/tree/tree.module.mjs +4 -4
  349. package/esm2022/tree/tree.property.mjs +6 -6
  350. package/esm2022/tree/tree.service.mjs +3 -3
  351. package/esm2022/tree-file/tree-file.component.mjs +5 -5
  352. package/esm2022/tree-file/tree-file.module.mjs +4 -4
  353. package/esm2022/tree-file/tree-file.property.mjs +3 -3
  354. package/esm2022/tree-select/tree-select-portal.component.mjs +3 -3
  355. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  356. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  357. package/esm2022/tree-select/tree-select.property.mjs +3 -3
  358. package/esm2022/typography/typography.component.mjs +4 -4
  359. package/esm2022/typography/typography.module.mjs +4 -4
  360. package/esm2022/typography/typography.property.mjs +3 -3
  361. package/esm2022/upload/upload-portal.component.mjs +5 -5
  362. package/esm2022/upload/upload.component.mjs +5 -5
  363. package/esm2022/upload/upload.module.mjs +4 -4
  364. package/esm2022/upload/upload.property.mjs +3 -3
  365. package/fesm2022/ng-nest-ui-affix.mjs +11 -11
  366. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  367. package/fesm2022/ng-nest-ui-alert.mjs +11 -11
  368. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  369. package/fesm2022/ng-nest-ui-anchor.mjs +17 -17
  370. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  371. package/fesm2022/ng-nest-ui-api.mjs +8 -8
  372. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  373. package/fesm2022/ng-nest-ui-auto-complete.mjs +14 -14
  374. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  375. package/fesm2022/ng-nest-ui-avatar.mjs +17 -17
  376. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  377. package/fesm2022/ng-nest-ui-back-top.mjs +11 -11
  378. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  379. package/fesm2022/ng-nest-ui-badge.mjs +11 -11
  380. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  381. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  382. package/fesm2022/ng-nest-ui-button.mjs +18 -18
  383. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  384. package/fesm2022/ng-nest-ui-calendar.mjs +11 -11
  385. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  386. package/fesm2022/ng-nest-ui-card.mjs +11 -11
  387. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  388. package/fesm2022/ng-nest-ui-carousel.mjs +18 -18
  389. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  390. package/fesm2022/ng-nest-ui-cascade.mjs +14 -14
  391. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  392. package/fesm2022/ng-nest-ui-checkbox.mjs +11 -11
  393. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  394. package/fesm2022/ng-nest-ui-collapse.mjs +18 -18
  395. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  396. package/fesm2022/ng-nest-ui-color-picker.mjs +14 -14
  397. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  398. package/fesm2022/ng-nest-ui-color.mjs +11 -11
  399. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  400. package/fesm2022/ng-nest-ui-comment.mjs +17 -17
  401. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  402. package/fesm2022/ng-nest-ui-container.mjs +36 -36
  403. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  404. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  405. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  406. package/fesm2022/ng-nest-ui-crumb.mjs +11 -11
  407. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  408. package/fesm2022/ng-nest-ui-date-picker.mjs +51 -51
  409. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  410. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  411. package/fesm2022/ng-nest-ui-dialog.mjs +44 -44
  412. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  413. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  414. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  415. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  416. package/fesm2022/ng-nest-ui-drawer.mjs +35 -35
  417. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  418. package/fesm2022/ng-nest-ui-dropdown.mjs +14 -14
  419. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  420. package/fesm2022/ng-nest-ui-empty.mjs +11 -11
  421. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  422. package/fesm2022/ng-nest-ui-examples.mjs +8 -8
  423. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  424. package/fesm2022/ng-nest-ui-find.mjs +11 -11
  425. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  426. package/fesm2022/ng-nest-ui-form.mjs +17 -17
  427. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  428. package/fesm2022/ng-nest-ui-highlight.mjs +14 -14
  429. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  430. package/fesm2022/ng-nest-ui-i18n.mjs +370 -64
  431. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  432. package/fesm2022/ng-nest-ui-icon.mjs +14 -14
  433. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  434. package/fesm2022/ng-nest-ui-image.mjs +21 -21
  435. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  436. package/fesm2022/ng-nest-ui-inner.mjs +11 -11
  437. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  438. package/fesm2022/ng-nest-ui-input-number.mjs +11 -11
  439. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  440. package/fesm2022/ng-nest-ui-input.mjs +17 -17
  441. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  442. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  443. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  444. package/fesm2022/ng-nest-ui-link.mjs +11 -11
  445. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  446. package/fesm2022/ng-nest-ui-list.mjs +26 -26
  447. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  448. package/fesm2022/ng-nest-ui-loading.mjs +11 -11
  449. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  450. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  451. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  452. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  453. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  454. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  455. package/fesm2022/ng-nest-ui-page-header.mjs +11 -11
  456. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  457. package/fesm2022/ng-nest-ui-pagination.mjs +116 -39
  458. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  459. package/fesm2022/ng-nest-ui-pattern.mjs +8 -8
  460. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  461. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -11
  462. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  463. package/fesm2022/ng-nest-ui-popover.mjs +14 -14
  464. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  465. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  466. package/fesm2022/ng-nest-ui-progress.mjs +11 -11
  467. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  468. package/fesm2022/ng-nest-ui-radio.mjs +11 -11
  469. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  470. package/fesm2022/ng-nest-ui-rate.mjs +11 -11
  471. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  472. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  473. package/fesm2022/ng-nest-ui-result.mjs +11 -11
  474. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  475. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  476. package/fesm2022/ng-nest-ui-select.mjs +15 -15
  477. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  478. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  479. package/fesm2022/ng-nest-ui-slider-select.mjs +11 -11
  480. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  481. package/fesm2022/ng-nest-ui-slider.mjs +11 -11
  482. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  483. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  484. package/fesm2022/ng-nest-ui-steps.mjs +11 -11
  485. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  486. package/fesm2022/ng-nest-ui-switch.mjs +11 -11
  487. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  488. package/fesm2022/ng-nest-ui-table.mjs +44 -29
  489. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  490. package/fesm2022/ng-nest-ui-tabs.mjs +26 -26
  491. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  492. package/fesm2022/ng-nest-ui-tag.mjs +11 -11
  493. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  494. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -11
  495. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  496. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  497. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  498. package/fesm2022/ng-nest-ui-theme.mjs +11 -11
  499. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  500. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  501. package/fesm2022/ng-nest-ui-time-picker.mjs +18 -18
  502. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  503. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  504. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  505. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  506. package/fesm2022/ng-nest-ui-tooltip.mjs +14 -14
  507. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  508. package/fesm2022/ng-nest-ui-transfer.mjs +11 -11
  509. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  510. package/fesm2022/ng-nest-ui-tree-file.mjs +11 -11
  511. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  512. package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
  513. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  514. package/fesm2022/ng-nest-ui-tree.mjs +20 -20
  515. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  516. package/fesm2022/ng-nest-ui-typography.mjs +11 -11
  517. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  518. package/fesm2022/ng-nest-ui-upload.mjs +15 -15
  519. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  520. package/i18n/i18n.property.d.ts +6 -0
  521. package/i18n/languages/ar_EG.d.ts +6 -0
  522. package/i18n/languages/bg_BG.d.ts +6 -0
  523. package/i18n/languages/ca_ES.d.ts +6 -0
  524. package/i18n/languages/cs_CZ.d.ts +6 -0
  525. package/i18n/languages/da_DK.d.ts +6 -0
  526. package/i18n/languages/de_DE.d.ts +6 -0
  527. package/i18n/languages/el_GR.d.ts +6 -0
  528. package/i18n/languages/en_GB.d.ts +6 -0
  529. package/i18n/languages/en_US.d.ts +6 -0
  530. package/i18n/languages/es_ES.d.ts +6 -0
  531. package/i18n/languages/et_EE.d.ts +6 -0
  532. package/i18n/languages/fa_IR.d.ts +6 -0
  533. package/i18n/languages/fi_FI.d.ts +6 -0
  534. package/i18n/languages/fr_BE.d.ts +6 -0
  535. package/i18n/languages/fr_FR.d.ts +6 -0
  536. package/i18n/languages/he_IL.d.ts +6 -0
  537. package/i18n/languages/hi_IN.d.ts +6 -0
  538. package/i18n/languages/hr_HR.d.ts +6 -0
  539. package/i18n/languages/hu_HU.d.ts +6 -0
  540. package/i18n/languages/hy_AM.d.ts +6 -0
  541. package/i18n/languages/id_ID.d.ts +6 -0
  542. package/i18n/languages/is_IS.d.ts +6 -0
  543. package/i18n/languages/it_IT.d.ts +6 -0
  544. package/i18n/languages/ja_JP.d.ts +6 -0
  545. package/i18n/languages/ka_GE.d.ts +6 -0
  546. package/i18n/languages/kn_IN.d.ts +6 -0
  547. package/i18n/languages/ko_KR.d.ts +6 -0
  548. package/i18n/languages/ku_IQ.d.ts +6 -0
  549. package/i18n/languages/lv_LV.d.ts +6 -0
  550. package/i18n/languages/mn_MN.d.ts +6 -0
  551. package/i18n/languages/ms_MY.d.ts +6 -0
  552. package/i18n/languages/nb_NO.d.ts +6 -0
  553. package/i18n/languages/ne_NP.d.ts +6 -0
  554. package/i18n/languages/nl_BE.d.ts +6 -0
  555. package/i18n/languages/nl_NL.d.ts +6 -0
  556. package/i18n/languages/pl_PL.d.ts +6 -0
  557. package/i18n/languages/pt_BR.d.ts +6 -0
  558. package/i18n/languages/pt_PT.d.ts +6 -0
  559. package/i18n/languages/ro_RO.d.ts +6 -0
  560. package/i18n/languages/ru_RU.d.ts +6 -0
  561. package/i18n/languages/sk_SK.d.ts +6 -0
  562. package/i18n/languages/sl_SI.d.ts +6 -0
  563. package/i18n/languages/sr_RS.d.ts +6 -0
  564. package/i18n/languages/sv_SE.d.ts +6 -0
  565. package/i18n/languages/ta_IN.d.ts +6 -0
  566. package/i18n/languages/th_TH.d.ts +6 -0
  567. package/i18n/languages/tr_TR.d.ts +6 -0
  568. package/i18n/languages/uk_UA.d.ts +6 -0
  569. package/i18n/languages/vi_VN.d.ts +6 -0
  570. package/i18n/languages/zh_CN.d.ts +6 -0
  571. package/i18n/languages/zh_TW.d.ts +6 -0
  572. package/package.json +115 -115
  573. package/pagination/pagination.component.d.ts +24 -0
  574. package/pagination/pagination.property.d.ts +31 -5
  575. package/radio/radio.component.d.ts +1 -1
  576. package/select/select.property.d.ts +1 -4
  577. package/style/mixins/reset.scss +4 -2
  578. package/table/table.property.d.ts +17 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-dialog.mjs","sources":["../../../../lib/ng-nest/ui/dialog/dialog.property.ts","../../../../lib/ng-nest/ui/dialog/dialog.component.ts","../../../../lib/ng-nest/ui/dialog/dialog.component.html","../../../../lib/ng-nest/ui/dialog/dialog-container.component.ts","../../../../lib/ng-nest/ui/dialog/dialog-container.component.html","../../../../lib/ng-nest/ui/dialog/dialog-portal.component.ts","../../../../lib/ng-nest/ui/dialog/dialog-portal.component.html","../../../../lib/ng-nest/ui/dialog/dialog-ref.ts","../../../../lib/ng-nest/ui/dialog/dialog-portal.directives.ts","../../../../lib/ng-nest/ui/dialog/dialog.module.ts","../../../../lib/ng-nest/ui/dialog/dialog.service.ts","../../../../lib/ng-nest/ui/dialog/ng-nest-ui-dialog.ts"],"sourcesContent":["import { Component, ViewContainerRef, InjectionToken, input, model, output } from '@angular/core';\r\nimport { XProperty, XPropertyFunction, XToCssPixelValue, XToBoolean, XToNumber } from '@ng-nest/ui/core';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XDialogComponent } from './dialog.component';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport type { XStatus, XPlace, XTemplate, XEffect, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Dialog\r\n * @selector x-dialog\r\n * @decorator component\r\n */\r\nexport const XDialogPrefix = 'x-dialog';\r\nexport const X_DIALOG_CONFIG_NAME = 'dialog';\r\nexport const XDialogContainer = 'x-dialog-overlay';\r\nexport const X_DIALOG_DATA = new InjectionToken<any>('XDialogData');\r\n\r\n/**\r\n * Dialog Property\r\n */\r\n@Component({ selector: `${XDialogPrefix}-property`, template: '' })\r\nexport class XDialogProperty extends XPropertyFunction(X_DIALOG_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n */\r\n readonly title = input<XTemplate>();\r\n /**\r\n * @zh_CN 显示/隐藏\r\n * @en_US Show/hide\r\n */\r\n readonly visible = model<boolean>(false);\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n */\r\n readonly placement = input<XPlace>(this.config?.placement ?? 'center');\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n */\r\n readonly offset = input<string, XNumber>(this.config?.offset ?? '1rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\n readonly type = input<XDialogType>('info');\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n */\r\n readonly hideClose = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 使用文本关闭按钮\r\n * @en_US Use the text to close button\r\n */\r\n readonly closeText = input<string>();\r\n /**\r\n * @zh_CN 调整弹框的大小\r\n * @en_US Adjust the size of the box\r\n */\r\n readonly resizable = input<boolean, XBoolean>(this.config?.resizable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕左边\r\n * @en_US Open the resizable resize, offset screen left\r\n */\r\n readonly offsetLeft = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕顶部\r\n * @en_US Open the resizable resize, offset screen top\r\n */\r\n readonly offsetTop = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '32rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n readonly height = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '18rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n */\r\n readonly minHeight = input<string, XNumber>(this.config?.minHeight ?? '8rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 样式主题\r\n * @en_US Style theme\r\n */\r\n readonly effect = input<XEffect>(this.config?.effect ?? 'white');\r\n /**\r\n * @zh_CN 底部自定义模板\r\n * @en_US Custom template at the bottom\r\n */\r\n readonly footer = input<XTemplate>();\r\n /**\r\n * @zh_CN 显示取消按钮\r\n * @en_US Show cancel button\r\n */\r\n readonly showCancel = input<boolean, XBoolean>(this.config?.showCancel ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 取消按钮文字\r\n * @en_US Cancel button text\r\n * @default '取消'\r\n */\r\n readonly cancelText = input<string>(this.config?.cancelText ?? '');\r\n /**\r\n * @zh_CN 显示确认按钮\r\n * @en_US Show confirmation button\r\n */\r\n readonly showConfirm = input<boolean, XBoolean>(this.config?.showConfirm ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 确认按钮文字\r\n * @en_US Confirm button text\r\n * @default '确认'\r\n */\r\n readonly confirmText = input<string>(this.config?.confirmText ?? '');\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n */\r\n readonly backdropClose = input<boolean, XBoolean>(this.config?.backdropClose ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n */\r\n readonly hasBackdrop = input<boolean, XBoolean>(this.config?.hasBackdrop ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n readonly className = input<string>(this.config?.className ?? '');\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button center\r\n */\r\n readonly buttonsCenter = input<boolean, XBoolean>(this.config?.buttonsCenter ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 拖动对话框\r\n * @en_US Drag dialog\r\n */\r\n readonly draggable = input<boolean, XBoolean>(this.config?.draggable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 最大化弹出框按钮,当启用 resizable 时也会显示\r\n * @en_US Maximize the bullet box button, Will also display when resizable is enabled\r\n */\r\n readonly maximize = input<boolean, XBoolean>(this.config?.maximize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 关闭前处理函数\r\n * @en_US Processing function before closing\r\n */\r\n readonly beforeClose = input<(action: XDialogAction) => void>();\r\n /**\r\n * @zh_CN 取消按钮的事件\r\n * @en_US Cancel button event\r\n */\r\n readonly cancel = output();\r\n /**\r\n * @zh_CN 确认按钮的事件\r\n * @en_US Confirm button event\r\n */\r\n readonly confirm = output();\r\n /**\r\n * @zh_CN 确认按钮的事件\r\n * @en_US Confirm button event\r\n */\r\n readonly close = output();\r\n /**\r\n * @zh_CN 弹出完成动画加载\r\n * @en_US Pop up complete animation loading\r\n */\r\n readonly showDone = output<any>();\r\n /**\r\n * @zh_CN 关闭完成动画\r\n * @en_US Close complete animation\r\n */\r\n readonly closeDone = output<any>();\r\n}\r\n\r\n/**\r\n * Dialog Container\r\n * @selector x-dialog-container\r\n * @decorator component\r\n */\r\nexport const XDialogContainerPrefix = 'x-dialog-container';\r\nexport const X_DIALOG_CONTAINER = new InjectionToken('X_DIALOG_CONTAINER');\r\n\r\n/**\r\n * Dialog Container Property\r\n */\r\n@Component({ selector: `${XDialogContainerPrefix}-property`, template: '' })\r\nexport class XDialogContainerProperty extends XProperty {}\r\n\r\n/**\r\n * Dialog option by service\r\n */\r\nexport interface XDialogRefOption {\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n * @default 'center'\r\n * @withConfig true\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '1rem'\r\n * @withConfig true\r\n */\r\n offset?: string;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '32rem'\r\n * @withConfig true\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n className?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default true\r\n * @withConfig true\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n * @default true\r\n * @withConfig true\r\n */\r\n hasBackdrop?: boolean;\r\n /**\r\n * @zh_CN 拖动对话框\r\n * @en_US Drag dialog\r\n * @default false\r\n * @withConfig true\r\n */\r\n draggable?: boolean;\r\n /**\r\n * @zh_CN 调整弹框的大小\r\n * @en_US Adjust the size of the box\r\n * @default false\r\n * @withConfig true\r\n */\r\n resizable?: boolean;\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n * @default '18rem'\r\n * @withConfig true\r\n */\r\n minWidth?: string;\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n * @default '8rem'\r\n * @withConfig true\r\n */\r\n minHeight?: string;\r\n /**\r\n * @zh_CN 数据,通过 \"@Inject(X_DIALOG_DATA)\" 来接收数据\r\n * @en_US Data. Receive data by \"@Inject(X_DIALOG_DATA)\"\r\n */\r\n data?: any;\r\n /**\r\n * @zh_CN 视图容器实例可以包含其他视图容器。\r\n * @en_US A view container instance can contain other view containers.\r\n */\r\n viewContainerRef?: ViewContainerRef;\r\n}\r\n\r\n/**\r\n * @zh_CN 弹框动画状态\r\n * @en_US Dialog animation status\r\n */\r\nexport type XDialogAnimationState = XPlace | 'void';\r\n\r\n/**\r\n * @zh_CN 弹框动画事件\r\n * @en_US Dialog animation Event\r\n */\r\nexport interface XDialogAnimationEvent {\r\n state: XDialogAnimationState;\r\n action: 'start' | 'done';\r\n totalTime: number;\r\n}\r\n\r\n/**\r\n * @zh_CN 关闭的回调函数类型\r\n * @en_US Closed callback function type\r\n */\r\nexport interface XDialogCallback {\r\n (action: XDialogAction, message?: string): void;\r\n}\r\n\r\n/**\r\n * @zh_CN 触发关闭的类型\r\n * @en_US Type of trigger closure\r\n */\r\nexport type XDialogAction = 'confirm' | 'cancel' | 'close';\r\n\r\n/**\r\n * @zh_CN 创建的弹框对象\r\n * @en_US Dialog object created\r\n */\r\nexport interface XDialogOverlayRef extends XPortalOverlayRef<XDialogComponent> {}\r\n\r\n/**\r\n * @zh_CN 创建的弹框对象,通过服务\r\n * @en_US Dialog object created by service\r\n */\r\nexport interface XDialogPortalOverlayRef extends XPortalOverlayRef<XDialogPortalComponent> {}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XDialogType = XStatus;\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ChangeDetectionStrategy,\r\n TemplateRef,\r\n ViewContainerRef,\r\n OnDestroy,\r\n HostBinding,\r\n inject,\r\n OnInit,\r\n signal,\r\n computed,\r\n AfterViewInit,\r\n viewChild\r\n} from '@angular/core';\r\nimport { XMoveBoxAnimation, XIsFunction, XConfigService, XOpacityAnimation } from '@ng-nest/ui/core';\r\nimport {\r\n XDialogPrefix,\r\n XDialogOverlayRef,\r\n XDialogProperty,\r\n XDialogContainer,\r\n XDialogAction,\r\n X_DIALOG_CONTAINER\r\n} from './dialog.property';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { BlockScrollStrategy, Overlay } from '@angular/cdk/overlay';\r\nimport { XI18nDialog, XI18nService, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { XResizableEvent } from '@ng-nest/ui/resizable';\r\nimport { XDialogContainerComponent } from './dialog-container.component';\r\nimport { XAlertComponent } from '@ng-nest/ui/alert';\r\nimport { XButtonComponent, XButtonsComponent } from '@ng-nest/ui/button';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { NgStyle, NgTemplateOutlet } from '@angular/common';\r\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: `${XDialogPrefix}`,\r\n standalone: true,\r\n imports: [NgStyle, NgTemplateOutlet, XAlertComponent, XButtonComponent, XButtonsComponent, XOutletDirective],\r\n templateUrl: './dialog.component.html',\r\n styleUrls: ['./dialog.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation, XOpacityAnimation]\r\n})\r\nexport class XDialogComponent extends XDialogProperty implements OnInit, AfterViewInit, OnDestroy {\r\n private renderer = inject(Renderer2);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private protalService = inject(XPortalService);\r\n private overlay = inject(Overlay);\r\n private i18n = inject(XI18nService);\r\n private unSubject = new Subject<void>();\r\n\r\n @HostBinding('class.x-dialog-visible') get getVisible() {\r\n return this.visible();\r\n }\r\n\r\n @HostBinding('class') clsName = `${XDialogPrefix}-${this.placement()}`;\r\n\r\n dialogTpl = viewChild.required<TemplateRef<void>>('dialogTpl');\r\n dialogRef!: XDialogOverlayRef;\r\n backdropClick$!: Subscription;\r\n scrollStrategy!: BlockScrollStrategy;\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.dialog as XI18nDialog)), { initialValue: zh_CN.dialog });\r\n overlayElement = signal<HTMLElement | null>(null);\r\n dialogContent?: HTMLElement;\r\n initHeight? = 0;\r\n initContentHeight? = 0;\r\n isMaximize = signal(false);\r\n isDefaultMaximize = signal(false);\r\n dialogBox: { [key: string]: any } = {};\r\n contentBox: XResizableEvent = {};\r\n distance = { x: 0, y: 0 };\r\n viewInit = signal(false);\r\n action: XDialogAction | null = null;\r\n containerInit = false;\r\n resizableSignal = signal(false);\r\n draggableSignal = signal(false);\r\n maximizeSignal = signal(false);\r\n\r\n getCancelText = computed(() => {\r\n return this.cancelText() || this.locale().cancelText;\r\n });\r\n\r\n getConfirmText = computed(() => {\r\n return this.confirmText() || this.locale().confirmText;\r\n });\r\n\r\n getStyle = computed(() => {\r\n return this.container\r\n ? {\r\n ...this.protalService.setContainerStyle(this.placement(), this.offset()),\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight()\r\n }\r\n : {};\r\n });\r\n container = inject<XDialogContainerComponent>(X_DIALOG_CONTAINER, { optional: true });\r\n configService = inject(XConfigService);\r\n\r\n styleOffsetLeft = signal(0);\r\n styleOffsetTop = signal(0);\r\n\r\n visibleChanged = toObservable(this.visible);\r\n draggableChanged = toObservable(this.draggable);\r\n\r\n constructor() {\r\n super();\r\n this.visibleChanged.pipe(takeUntil(this.unSubject)).subscribe(() => {\r\n this.setVisible();\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.scrollStrategy = this.protalService.overlay.scrollStrategies.block();\r\n this.draggableSignal.set(this.draggable());\r\n this.resizableSignal.set(this.resizable());\r\n this.maximizeSignal.set(this.maximize());\r\n this.dialogBox['draggable'] = this.draggableSignal();\r\n this.dialogBox['resizable'] = this.resizableSignal();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.viewInit.set(true);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.backdropClick$?.unsubscribe();\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setVisible() {\r\n if (!this.viewInit()) return;\r\n if (this.visible()) {\r\n this.create();\r\n } else {\r\n this.onClose('close', false);\r\n }\r\n }\r\n\r\n create() {\r\n if (this.container) {\r\n this.containerInit = true;\r\n return;\r\n }\r\n this.dialogRef = this.protalService.attach({\r\n content: this.dialogTpl(),\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: {\r\n panelClass: [XDialogContainer, this.className()],\r\n hasBackdrop: this.hasBackdrop(),\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight(),\r\n positionStrategy: this.protalService.setPlace(this.placement(), this.offset())\r\n }\r\n });\r\n const { hostElement, overlayElement } = this.dialogRef.overlayRef!;\r\n this.overlayElement.set(overlayElement);\r\n this.setWidthHeight();\r\n Object.assign(this.dialogBox, {\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight()\r\n });\r\n if (this.resizableSignal() && !this.isDefaultMaximize()) {\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(this.dialogBox, this.protalService.setResizable(this.overlayElement()!, this.placement()));\r\n this.styleOffsetLeft.set(this.overlayElement()?.offsetLeft!);\r\n this.styleOffsetTop.set(this.overlayElement()?.offsetTop!);\r\n const dialogDraggable = this.overlayElement()?.querySelector('.x-alert-draggable')!;\r\n this.initHeight = dialogDraggable.clientHeight;\r\n this.dialogContent = this.overlayElement()?.querySelector('.x-dialog-content')!;\r\n this.initContentHeight = this.dialogContent.clientHeight;\r\n });\r\n }\r\n if (this.hasBackdrop() && this.backdropClose() && this.dialogRef?.overlayRef) {\r\n this.backdropClick$ = this.dialogRef.overlayRef.backdropClick().subscribe(() => this.onClose('close'));\r\n }\r\n }\r\n\r\n setWidthHeight() {\r\n const ws = ['100%', '100vw'];\r\n const hs = ['100%', '100vh'];\r\n if (ws.includes(this.width()) && hs.includes(this.height())) {\r\n this.isDefaultMaximize.set(true);\r\n this.resizableSignal.set(false);\r\n this.draggableSignal.set(false);\r\n this.maximizeSignal.set(false);\r\n }\r\n }\r\n\r\n portalAttached() {\r\n return this.dialogRef?.overlayRef?.hasAttached();\r\n }\r\n\r\n onClose(action: XDialogAction, execFunction = true) {\r\n if (!this.portalAttached() && !this.container) return;\r\n if (this.container && !this.containerInit) return;\r\n if (XIsFunction(this.beforeClose()) && execFunction) {\r\n this.beforeClose()?.(action);\r\n this.action = action;\r\n } else {\r\n this.visible.set(false);\r\n if (this.portalAttached()) {\r\n this.dialogRef?.overlayRef?.detach();\r\n this.backdropClick$?.unsubscribe();\r\n }\r\n if ([action, this.action].includes('confirm')) {\r\n this.confirm.emit();\r\n }\r\n if ([action, this.action].includes('cancel')) {\r\n this.cancel.emit();\r\n }\r\n this.containerInit = false;\r\n this.action = null;\r\n this.close.emit();\r\n }\r\n }\r\n\r\n onDragEnded($event: CdkDragEnd) {\r\n this.distance = { x: this.distance.x + $event.distance.x, y: this.distance.y + $event.distance.y };\r\n }\r\n\r\n onSize() {\r\n if (!this.dialogRef) return;\r\n this.isMaximize.update((x) => !x);\r\n if (this.isMaximize()) {\r\n this.onMaximize();\r\n } else {\r\n this.onMinimize();\r\n }\r\n }\r\n\r\n onMaximize() {\r\n this.dialogRef.overlayRef?.updateSize({\r\n width: '100%',\r\n height: '100%',\r\n minWidth: '100%',\r\n minHeight: '100%'\r\n });\r\n this.dialogBox['minWidth'] = '100%';\r\n this.dialogBox['minHeight'] = '100%';\r\n this.dialogBox['draggable'] = false;\r\n this.dialogBox['resizable'] = false;\r\n if (this.resizableSignal()) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin', '0 0 0 0');\r\n }\r\n if (this.draggableSignal()) {\r\n this.dialogBox['distance'] = { x: 0, y: 0 };\r\n }\r\n }\r\n\r\n onMinimize() {\r\n this.dialogBox['minWidth'] = this.minWidth();\r\n this.dialogBox['minHeight'] = this.minHeight();\r\n this.dialogBox['draggable'] = this.draggableSignal();\r\n this.dialogBox['resizable'] = this.resizableSignal();\r\n this.dialogRef.overlayRef?.updateSize({\r\n width: this.dialogBox['width'],\r\n height: this.dialogBox['height'],\r\n minWidth: this.dialogBox['minWidth'],\r\n minHeight: this.dialogBox['minHeight']\r\n });\r\n if (this.draggableSignal()) {\r\n this.dialogBox['distance'] = { ...this.distance };\r\n }\r\n if (this.resizableSignal()) {\r\n if (this.dialogBox['marginTop']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-top', `${this.dialogBox['marginTop']}`);\r\n }\r\n if (this.dialogBox['marginLeft']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-left', `${this.dialogBox['marginLeft']}`);\r\n }\r\n if (this.dialogBox['marginRight']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-right', `${this.dialogBox['marginRight']}`);\r\n }\r\n if (this.dialogBox['marginBottom']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-bottom', `${this.dialogBox['marginBottom']}`);\r\n }\r\n }\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void') {\r\n this.closeDone.emit($event);\r\n this.isMaximize.set(false);\r\n this.dialogBox = {\r\n draggable: this.draggableSignal(),\r\n resizable: this.resizableSignal()\r\n };\r\n this.distance = { x: 0, y: 0 };\r\n this.dialogRef?.overlayRef?.dispose();\r\n } else {\r\n this.showDone.emit($event);\r\n }\r\n }\r\n\r\n onResizing(event: XResizableEvent) {\r\n const contentHeight = Number(this.initContentHeight) + Number(event.clientHeight) - Number(this.initHeight);\r\n this.renderer.setStyle(this.dialogContent, 'max-height', 'initial');\r\n this.renderer.setStyle(this.dialogContent, 'flex', 'initial');\r\n if (['top-start', 'top-end', 'bottom', 'top', 'bottom-start', 'bottom-end'].includes(event.direction as string)) {\r\n this.renderer.setStyle(this.dialogContent, 'height', `${contentHeight}px`);\r\n }\r\n }\r\n}\r\n","<ng-template #dialogTpl>\r\n @if (container && hasBackdrop()) {\r\n <div class=\"x-dialog-backdrop\" [@x-opacity-animation]=\"visible()\" (click)=\"onClose('close')\"></div>\r\n }\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement()\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize()\"\r\n [class.x-dialog-resizable]=\"resizableSignal()\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize()\"\r\n [ngStyle]=\"getStyle()\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggableSignal() && dialogBox['draggable']\"\r\n [resizable]=\"resizableSignal() && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"styleOffsetLeft()\"\r\n [offsetTop]=\"styleOffsetTop()\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title()\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type()\"\r\n [effect]=\"effect()\"\r\n [hideClose]=\"hideClose()\"\r\n [closeText]=\"closeText()\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n [showIcon]=\"false\"\r\n [duration]=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter()\">\r\n <ng-container *xOutlet=\"footer()\">\r\n @if (showCancel() || showConfirm()) {\r\n <x-buttons space=\"0.5rem\">\r\n @if (showCancel()) {\r\n <x-button (click)=\"onClose('cancel')\" flat plain>{{ getCancelText() }}</x-button>\r\n }\r\n @if (showConfirm()) {\r\n <x-button type=\"primary\" flat (click)=\"onClose('confirm')\">{{ getConfirmText() }}</x-button>\r\n }\r\n </x-buttons>\r\n }\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n @if (maximizeSignal() || resizableSignal()) {\r\n <x-button\r\n size=\"small\"\r\n flat\r\n [icon]=\"isMaximize() ? 'fto-minimize' : 'fto-maximize'\"\r\n [onlyIcon]=\"true\"\r\n (click)=\"onSize()\"\r\n ></x-button>\r\n }\r\n</ng-template>\r\n\r\n@if (container && visible()) {\r\n <ng-container *ngTemplateOutlet=\"dialogTpl\"></ng-container>\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';\r\nimport { XDialogContainerProperty, X_DIALOG_CONTAINER } from './dialog.property';\r\n\r\n@Component({\r\n selector: 'x-dialog-container',\r\n standalone: true,\r\n templateUrl: './dialog-container.component.html',\r\n styleUrls: ['./dialog-container.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: X_DIALOG_CONTAINER,\r\n useExisting: XDialogContainerComponent\r\n }\r\n ]\r\n})\r\nexport class XDialogContainerComponent extends XDialogContainerProperty {\r\n @HostBinding('class.x-dialog-container') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, PortalModule, TemplatePortal } from '@angular/cdk/portal';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ComponentRef,\r\n EmbeddedViewRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Renderer2,\r\n ViewEncapsulation,\r\n contentChildren,\r\n inject,\r\n viewChild\r\n} from '@angular/core';\r\nimport { XMoveBoxAnimation } from '@ng-nest/ui/core';\r\nimport { XDialogAnimationEvent, XDialogAnimationState, XDialogRefOption } from './dialog.property';\r\nimport { AnimationEvent } from '@angular/animations';\r\nimport { CdkDrag, CdkDragEnd, CdkDragHandle, DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XDialogRef } from './dialog-ref';\r\nimport { XResizableDirective, XResizableEvent } from '@ng-nest/ui/resizable';\r\n\r\n@Component({\r\n selector: 'x-dialog-portal',\r\n standalone: true,\r\n imports: [DragDropModule, PortalModule, XResizableDirective],\r\n templateUrl: './dialog-portal.component.html',\r\n styleUrls: ['./dialog-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation]\r\n})\r\nexport class XDialogPortalComponent extends BasePortalOutlet {\r\n // @HostBinding('class.x-dialog-portal') _has = true;\r\n @HostBinding('@x-move-box-animation') public placement?: XDialogAnimationState;\r\n @HostListener('@x-move-box-animation.done', ['$event']) done({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({\r\n action: 'done',\r\n state: toState as XDialogAnimationState,\r\n totalTime\r\n });\r\n }\r\n @HostListener('@x-move-box-animation.start', ['$event']) start({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({\r\n action: 'start',\r\n state: toState as XDialogAnimationState,\r\n totalTime\r\n });\r\n }\r\n renderer = inject(Renderer2);\r\n portalOutlet = viewChild.required(CdkPortalOutlet);\r\n dragRef = viewChild.required(CdkDrag);\r\n handles = contentChildren(CdkDragHandle, { descendants: true });\r\n animationChanged = new EventEmitter<XDialogAnimationEvent>();\r\n option!: XDialogRefOption;\r\n dialogRef!: XDialogRef<any>;\r\n\r\n offsetLeft = 0;\r\n offsetTop = 0;\r\n minWidth = '0rem';\r\n minHeight = '0rem';\r\n initHeight = 0;\r\n initContentHeight = 0;\r\n dialogContent?: HTMLElement;\r\n defaultMaximize = false;\r\n overlayElement?: HTMLElement;\r\n hostElement?: HTMLElement;\r\n distance = { x: 0, y: 0 };\r\n\r\n dialogBox: { [key: string]: any } = {};\r\n\r\n ngOnInit() {\r\n this.dialogBox['draggable'] = this.defaultMaximize ? this.dialogBox['draggable'] : this.option.draggable;\r\n this.dialogBox['resizable'] = this.defaultMaximize ? this.dialogBox['resizable'] : this.option.resizable;\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.dialogRef.dragHandleRefs.length === 0) {\r\n this.dialogBox['draggable'] = false;\r\n this.option.draggable = false;\r\n return;\r\n }\r\n for (let item of this.dialogRef.dragHandleRefs) {\r\n this.dragRef()._addHandle(new CdkDragHandle(item, this.dragRef()));\r\n }\r\n }\r\n\r\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\r\n if (this.portalOutlet().hasAttached()) {\r\n throw Error('dialog portal has attached');\r\n }\r\n return this.portalOutlet().attachComponentPortal(portal);\r\n }\r\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\r\n if (this.portalOutlet().hasAttached()) {\r\n throw Error('dialog portal has attached');\r\n }\r\n return this.portalOutlet().attachTemplatePortal(portal);\r\n }\r\n\r\n resizing(event: XResizableEvent) {\r\n const contentHeight = Number(this.initContentHeight) + Number(event.clientHeight) - Number(this.initHeight);\r\n this.renderer.setStyle(this.dialogContent, 'max-height', 'initial');\r\n this.renderer.setStyle(this.dialogContent, 'flex', 'initial');\r\n if (['top-start', 'top-end', 'bottom', 'top', 'bottom-start', 'bottom-end'].includes(event.direction as string)) {\r\n this.renderer.setStyle(this.dialogContent, 'height', `${contentHeight}px`);\r\n }\r\n }\r\n\r\n onDragEnded(event: CdkDragEnd) {\r\n this.distance = {\r\n x: this.distance.x + event.distance.x,\r\n y: this.distance.y + event.distance.y\r\n };\r\n }\r\n}\r\n","<div\r\n class=\"x-dialog-portal\"\r\n #dragRef\r\n cdkDrag\r\n [cdkDragDisabled]=\"!option.draggable && !dialogBox['draggable']\"\r\n [cdkDragBoundary]=\"'.cdk-overlay-container'\"\r\n [cdkDragFreeDragPosition]=\"dialogBox['distance']\"\r\n [xResizable]=\"option.resizable && dialogBox['resizable']!\"\r\n (resizing)=\"resizing($event)\"\r\n (cdkDragEnded)=\"onDragEnded($event)\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [style.minWidth]=\"dialogBox['minWidth']\"\r\n [style.minHeight]=\"dialogBox['minHeight']\"\r\n [style.maxWidth]=\"dialogBox['maxWidth']\"\r\n [style.maxHeight]=\"dialogBox['maxHeight']\"\r\n>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n</div>\r\n","import { OverlayRef } from '@angular/cdk/overlay';\r\nimport { ElementRef, Renderer2 } from '@angular/core';\r\nimport { Subject, filter, take } from 'rxjs';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport { XDialogRefOption } from './dialog.property';\r\n\r\n// TODO: add more function\r\nexport class XDialogRef<C> {\r\n componentInstance!: C;\r\n option!: XDialogRefOption;\r\n fullscreen = false;\r\n dragHandleRefs: ElementRef<HTMLElement>[] = [];\r\n afterClose = new Subject<any>();\r\n private _isFristFullscreen = true;\r\n\r\n constructor(\r\n public overlayRef: OverlayRef,\r\n public containerInstance: XDialogPortalComponent,\r\n public renderer: Renderer2,\r\n public portalService: XPortalService\r\n ) {}\r\n\r\n close(result?: any) {\r\n this.containerInstance.animationChanged\r\n .pipe(\r\n filter((event) => event.state === 'void' && event.action === 'done'),\r\n take(1)\r\n )\r\n .subscribe(() => {\r\n this.overlayRef.detach();\r\n this.afterClose.next(result);\r\n });\r\n this.containerInstance.placement = 'void';\r\n }\r\n\r\n onFullscreen() {\r\n let { dialogBox, dialogRef, overlayElement, distance, hostElement, defaultMaximize } = this.containerInstance;\r\n if (!dialogRef.fullscreen) {\r\n dialogRef.overlayRef.updateSize({\r\n width: '100%',\r\n height: '100%',\r\n minWidth: '100%',\r\n minHeight: '100%'\r\n });\r\n dialogRef.fullscreen = true;\r\n dialogBox['minWidth'] = '100%';\r\n dialogBox['minHeight'] = '100%';\r\n dialogBox['draggable'] = false;\r\n dialogBox['resizable'] = false;\r\n if (this.option.resizable) {\r\n this.renderer.setStyle(overlayElement, 'margin', '0 0 0 0');\r\n }\r\n if (this.option.draggable) {\r\n dialogBox['distance'] = { x: 0, y: 0 };\r\n }\r\n this.renderer.addClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n } else {\r\n dialogBox['minWidth'] = this.option.minWidth;\r\n dialogBox['minHeight'] = this.option.minHeight;\r\n if (this._isFristFullscreen && defaultMaximize) {\r\n this.option.draggable = dialogBox['draggable'];\r\n this.option.resizable = dialogBox['resizable'];\r\n } else {\r\n dialogBox['draggable'] = this.option.draggable;\r\n dialogBox['resizable'] = this.option.resizable;\r\n }\r\n\r\n dialogRef.overlayRef?.updateSize({\r\n width: dialogBox['width'],\r\n height: dialogBox['height'],\r\n minWidth: dialogBox['minWidth'],\r\n minHeight: dialogBox['minHeight']\r\n });\r\n dialogRef.fullscreen = false;\r\n if (this.option.draggable) {\r\n dialogBox['distance'] = { ...distance };\r\n }\r\n if (this.option.resizable) {\r\n if (dialogBox['marginTop']) {\r\n this.renderer.setStyle(overlayElement, 'margin-top', `${dialogBox['marginTop']}`);\r\n }\r\n if (dialogBox['marginLeft']) {\r\n this.renderer.setStyle(overlayElement, 'margin-left', `${dialogBox['marginLeft']}`);\r\n }\r\n if (dialogBox['marginRight']) {\r\n this.renderer.setStyle(overlayElement, 'margin-right', `${dialogBox['marginRight']}`);\r\n }\r\n if (dialogBox['marginBottom']) {\r\n this.renderer.setStyle(overlayElement, 'margin-bottom', `${dialogBox['marginBottom']}`);\r\n }\r\n }\r\n this.renderer.removeClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n if (this._isFristFullscreen && defaultMaximize) {\r\n dialogRef.overlayRef?.updatePositionStrategy(\r\n this.portalService.setPlace(this.option.placement, this.option.offset!)\r\n );\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(dialogBox, this.portalService.setResizable(overlayElement!, this.option.placement));\r\n this.containerInstance.offsetLeft = overlayElement!.offsetLeft;\r\n this.containerInstance.offsetTop = overlayElement!.offsetTop;\r\n const dialogDraggable = overlayElement?.querySelector('.x-dialog-portal')!;\r\n this.containerInstance.initHeight = dialogDraggable.clientHeight;\r\n this.containerInstance.dialogContent = overlayElement?.querySelector('.x-dialog-portal-content')!;\r\n this.containerInstance.initContentHeight = this.containerInstance.dialogContent?.clientHeight;\r\n this.containerInstance.dialogBox = dialogBox;\r\n });\r\n }\r\n }\r\n this._isFristFullscreen = false;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, HostListener, inject } from '@angular/core';\r\nimport { XDialogRef } from './dialog-ref';\r\n\r\n@Directive({\r\n selector: `[x-dialog-close]`,\r\n standalone: true\r\n})\r\nexport class XDialogCloseDirective {\r\n @HostListener('click', ['$event']) onCloseClick() {\r\n this.dialogRef && this.dialogRef.close();\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-title], x-dialog-title`,\r\n standalone: true\r\n})\r\nexport class XDialogTitleDirective {\r\n @HostBinding('class.x-dialog-portal-title') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-content], x-dialog-content`,\r\n standalone: true\r\n})\r\nexport class XDialogContentDirective {\r\n @HostBinding('class.x-dialog-portal-content') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-actions], x-dialog-actions`,\r\n standalone: true\r\n})\r\nexport class XDialogActionsDirective {\r\n @HostBinding('class.x-dialog-portal-actions') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-drag-handle], x-dialog-drag-handle`,\r\n standalone: true\r\n})\r\nexport class XDialogDragHandleDirective {\r\n @HostBinding('class.x-dialog-portal-drag-handle') get getDraggable() {\r\n return !this.dialogRef?.fullscreen && this.dialogRef?.option.draggable;\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n private elementRef = inject(ElementRef);\r\n\r\n ngOnInit() {\r\n this.dialogRef?.dragHandleRefs.push(this.elementRef);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-fullscreen], x-dialog-fullscreen`,\r\n standalone: true\r\n})\r\nexport class XDialogFullscreenDirective {\r\n @HostListener('click', ['$event']) onFullscreenClick() {\r\n this.dialogRef && this.dialogRef.onFullscreen();\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XDialogComponent } from './dialog.component';\r\nimport {\r\n XDialogActionsDirective,\r\n XDialogCloseDirective,\r\n XDialogContentDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective,\r\n XDialogTitleDirective\r\n} from './dialog-portal.directives';\r\nimport { XDialogContainerComponent } from './dialog-container.component';\r\n\r\n@NgModule({\r\n exports: [\r\n XDialogComponent,\r\n XDialogContainerComponent,\r\n XDialogCloseDirective,\r\n XDialogTitleDirective,\r\n XDialogContentDirective,\r\n XDialogActionsDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective\r\n ],\r\n imports: [\r\n XDialogComponent,\r\n XDialogContainerComponent,\r\n XDialogCloseDirective,\r\n XDialogTitleDirective,\r\n XDialogContentDirective,\r\n XDialogActionsDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective\r\n ]\r\n})\r\nexport class XDialogModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\r\nimport { Injectable, RendererFactory2, TemplateRef, inject } from '@angular/core';\r\nimport { XFillDefault, XConfigService, XDialogConfig } from '@ng-nest/ui/core';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport { XDialogRef } from './dialog-ref';\r\nimport { XDialogRefOption, X_DIALOG_CONFIG_NAME, X_DIALOG_DATA } from './dialog.property';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class XDialogService {\r\n default: XDialogRefOption = {\r\n placement: 'center',\r\n offset: '1rem',\r\n width: '32rem',\r\n minWidth: '18rem',\r\n minHeight: '8rem',\r\n backdropClose: true,\r\n hasBackdrop: true,\r\n draggable: false,\r\n resizable: false\r\n };\r\n configDefault?: XDialogConfig;\r\n\r\n private portalService = inject(XPortalService);\r\n private configService = inject(XConfigService);\r\n private overlay = inject(Overlay);\r\n private rendererFactory = inject(RendererFactory2);\r\n private renderer = this.rendererFactory.createRenderer(null, null);\r\n\r\n constructor() {\r\n this.configDefault = this.configService.getConfigForComponent(X_DIALOG_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n create<T>(content: TemplateRef<any> | ComponentType<T>, option: XDialogRefOption = {}): XDialogRef<T> {\r\n XFillDefault(option, this.default);\r\n const portal = this.portalService.attach<XDialogPortalComponent>({\r\n content: XDialogPortalComponent,\r\n viewContainerRef: option.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: option.hasBackdrop,\r\n panelClass: option.className,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n width: option.width,\r\n height: option.height,\r\n minWidth: option.minWidth,\r\n minHeight: option.minHeight,\r\n positionStrategy: this.portalService.setPlace(option.placement, option.offset!)\r\n }\r\n });\r\n\r\n const { overlayRef, componentRef } = portal || {};\r\n const { instance } = componentRef! || {};\r\n const { hostElement, overlayElement } = overlayRef || {};\r\n const dialogRef = new XDialogRef<T>(overlayRef!, instance, this.renderer, this.portalService);\r\n let dialogBox = {\r\n draggable: option.draggable,\r\n resizable: option.resizable\r\n };\r\n let defaultMaximize = this.setMaximize(option);\r\n Object.assign(dialogBox, {\r\n width: defaultMaximize ? this.default.width : option.width,\r\n height: defaultMaximize ? null : option.height,\r\n minWidth: option.minWidth,\r\n minHeight: option.minHeight\r\n });\r\n instance.placement = option.placement;\r\n instance.option = option;\r\n instance.dialogRef = dialogRef;\r\n instance.defaultMaximize = defaultMaximize;\r\n instance.dialogBox = dialogBox;\r\n instance.hostElement = hostElement;\r\n instance.overlayElement = overlayElement;\r\n dialogRef.option = option;\r\n dialogRef.fullscreen = defaultMaximize;\r\n if (option.resizable && !defaultMaximize) {\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(dialogBox, this.portalService.setResizable(overlayElement!, option.placement));\r\n instance.offsetLeft = overlayElement!.offsetLeft;\r\n instance.offsetTop = overlayElement!.offsetTop;\r\n const dialogDraggable = overlayElement?.querySelector('.x-dialog-portal')!;\r\n instance.initHeight = dialogDraggable.clientHeight;\r\n instance.dialogContent = overlayElement?.querySelector('.x-dialog-portal-content')!;\r\n instance.initContentHeight = instance.dialogContent?.clientHeight;\r\n instance.dialogBox = dialogBox;\r\n });\r\n }\r\n if (defaultMaximize) {\r\n this.renderer.addClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n }\r\n if (content instanceof TemplateRef) {\r\n instance.attachTemplatePortal(\r\n new TemplatePortal(content, option.viewContainerRef!, { $implicit: option.data, dialogRef: dialogRef })\r\n );\r\n } else {\r\n const injector = this.portalService.createInjector([\r\n { provide: X_DIALOG_DATA, useValue: option.data },\r\n { provide: XDialogRef, useValue: dialogRef }\r\n ]);\r\n const comRef = instance.attachComponentPortal(new ComponentPortal(content, option.viewContainerRef, injector));\r\n dialogRef.componentInstance = comRef.instance;\r\n }\r\n\r\n if (option.hasBackdrop && option.backdropClose && overlayRef) {\r\n overlayRef.backdropClick().subscribe(() => {\r\n dialogRef.close();\r\n });\r\n }\r\n\r\n return dialogRef;\r\n }\r\n\r\n private setMaximize(option: XDialogRefOption = {}) {\r\n const ws = ['100%', '100vw'];\r\n const hs = ['100%', '100vh'];\r\n if (ws.includes(option.width as string) && hs.includes(option.height as string)) {\r\n option.resizable = false;\r\n option.draggable = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAOA;;;;AAIG;AACI,MAAM,aAAa,GAAG,WAAW;AACjC,MAAM,oBAAoB,GAAG,SAAS;AACtC,MAAM,gBAAgB,GAAG,mBAAmB;MACtC,aAAa,GAAG,IAAI,cAAc,CAAM,aAAa,EAAE;AAEpE;;AAEG;MAEU,eAAgB,SAAQ,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;AAD5E,IAAA,WAAA,GAAA;;AAEE;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAG,KAAK,EAAa,CAAC;AACpC;;;AAGG;AACM,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAU,KAAK,CAAC,CAAC;AACzC;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,KAAK,CAAS,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,QAAQ,CAAC,CAAC;AACvE;;;AAGG;AACM,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;AACzG;;;AAGG;AACM,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAc,MAAM,CAAC,CAAC;AAC3C;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,KAAK,CAAoB,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAChF;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,KAAK,EAAU,CAAC;AACrC;;;AAGG;AACM,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAC1G;;;AAGG;QACM,IAAU,CAAA,UAAA,GAAG,KAAK,CAAkB,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1E;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,KAAK,CAAkB,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;AACzE;;;AAGG;AACM,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,OAAO,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;AACxG;;;AAGG;QACM,IAAM,CAAA,MAAA,GAAG,KAAK,CAAkB,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC9E;;;AAGG;AACM,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,OAAO,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC9G;;;AAGG;AACM,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAkB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,MAAM,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC/G;;;AAGG;QACM,IAAM,CAAA,MAAA,GAAG,KAAK,CAAU,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,OAAO,CAAC,CAAC;AACjE;;;AAGG;QACM,IAAM,CAAA,MAAA,GAAG,KAAK,EAAa,CAAC;AACrC;;;AAGG;AACM,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAC3G;;;;AAIG;QACM,IAAU,CAAA,UAAA,GAAG,KAAK,CAAS,IAAI,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;AACnE;;;AAGG;AACM,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAC7G;;;;AAIG;QACM,IAAW,CAAA,WAAA,GAAG,KAAK,CAAS,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;AACrE;;;AAGG;AACM,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,aAAa,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AACjH;;;AAGG;AACM,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAC7G;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,KAAK,CAAS,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC;AACjE;;;AAGG;AACM,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,aAAa,IAAI,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAClH;;;AAGG;AACM,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AAC1G;;;AAGG;AACM,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAoB,IAAI,CAAC,MAAM,EAAE,QAAQ,IAAI,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AACxG;;;AAGG;QACM,IAAW,CAAA,WAAA,GAAG,KAAK,EAAmC,CAAC;AAChE;;;AAGG;QACM,IAAM,CAAA,MAAA,GAAG,MAAM,EAAE,CAAC;AAC3B;;;AAGG;QACM,IAAO,CAAA,OAAA,GAAG,MAAM,EAAE,CAAC;AAC5B;;;AAGG;QACM,IAAK,CAAA,KAAA,GAAG,MAAM,EAAE,CAAC;AAC1B;;;AAGG;QACM,IAAQ,CAAA,QAAA,GAAG,MAAM,EAAO,CAAC;AAClC;;;AAGG;QACM,IAAS,CAAA,SAAA,GAAG,MAAM,EAAO,CAAC;AACpC,KAAA;iIAnKY,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAf,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,qrHADkC,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FACnD,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,SAAS;mBAAC,EAAE,QAAQ,EAAE,CAAG,EAAA,aAAa,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;;AAsKlE;;;;AAIG;AACI,MAAM,sBAAsB,GAAG,qBAAqB;MAC9C,kBAAkB,GAAG,IAAI,cAAc,CAAC,oBAAoB,EAAE;AAE3E;;AAEG;AAEG,MAAO,wBAAyB,SAAQ,SAAS,CAAA;iIAA1C,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,0FADkC,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAC5D,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC,SAAS;mBAAC,EAAE,QAAQ,EAAE,CAAG,EAAA,sBAAsB,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;;;ACpJrE,MAAO,gBAAiB,SAAQ,eAAe,CAAA;AAQnD,IAAA,IAA2C,UAAU,GAAA;AACnD,QAAA,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;KACvB;AAqDD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE,CAAC;AA/DF,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC5C,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;AAC1B,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,OAAO,EAAQ,CAAC;QAMlB,IAAO,CAAA,OAAA,GAAG,GAAG,aAAa,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,EAAE,CAAA,CAAE,CAAC;AAEvE,QAAA,IAAA,CAAA,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAoB,WAAW,CAAC,CAAC;AAI/D,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAqB,CAAC,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AACpH,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;QAElD,IAAU,CAAA,UAAA,GAAI,CAAC,CAAC;QAChB,IAAiB,CAAA,iBAAA,GAAI,CAAC,CAAC;AACvB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3B,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,IAAS,CAAA,SAAA,GAA2B,EAAE,CAAC;QACvC,IAAU,CAAA,UAAA,GAAoB,EAAE,CAAC;QACjC,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC1B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,IAAM,CAAA,MAAA,GAAyB,IAAI,CAAC;QACpC,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC;AACtB,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAChC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAChC,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAE/B,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;YAC5B,OAAO,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC;AACvD,SAAC,CAAC,CAAC;AAEH,QAAA,IAAA,CAAA,cAAc,GAAG,QAAQ,CAAC,MAAK;YAC7B,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC;AACzD,SAAC,CAAC,CAAC;AAEH,QAAA,IAAA,CAAA,QAAQ,GAAG,QAAQ,CAAC,MAAK;YACvB,OAAO,IAAI,CAAC,SAAS;AACnB,kBAAE;AACE,oBAAA,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AACxE,oBAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,oBAAA,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;AACrB,oBAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,oBAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC5B,iBAAA;kBACD,EAAE,CAAC;AACT,SAAC,CAAC,CAAC;QACH,IAAS,CAAA,SAAA,GAAG,MAAM,CAA4B,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACtF,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAEvC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5B,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AAE3B,QAAA,IAAA,CAAA,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5C,QAAA,IAAA,CAAA,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAI9C,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;YACjE,IAAI,CAAC,UAAU,EAAE,CAAC;AACpB,SAAC,CAAC,CAAC;KACJ;IAED,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC1E,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;KACtD;IAED,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;KACzB;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC;AACnC,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;KAC3B;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAAE,OAAO;AAC7B,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;aAAM;AACL,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC9B;KACF;IAED,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC1B,OAAO;SACR;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;AACzC,YAAA,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE;YACzB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;AACvC,YAAA,aAAa,EAAE;gBACb,UAAU,EAAE,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;AAChD,gBAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC/B,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE;AACrD,gBAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,gBAAA,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;AACrB,gBAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,gBAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,gBAAA,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAC/E,aAAA;AACF,SAAA,CAAC,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAW,CAAC;AACnE,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACxC,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;AAC5B,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;AACnB,YAAA,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;AACrB,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC5B,SAAA,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE;YACvD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;YAC5D,UAAU,CAAC,MAAK;gBACd,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AACzG,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,UAAW,CAAC,CAAC;AAC7D,gBAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,SAAU,CAAC,CAAC;gBAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,oBAAoB,CAAE,CAAC;AACpF,gBAAA,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,YAAY,CAAC;AAC/C,gBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,CAAC,mBAAmB,CAAE,CAAC;gBAChF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;AAC3D,aAAC,CAAC,CAAC;SACJ;AACD,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE;YAC5E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;SACxG;KACF;IAED,cAAc,GAAA;AACZ,QAAA,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7B,QAAA,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7B,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE;AAC3D,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAChC,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SAChC;KACF;IAED,cAAc,GAAA;QACZ,OAAO,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;KAClD;AAED,IAAA,OAAO,CAAC,MAAqB,EAAE,YAAY,GAAG,IAAI,EAAA;QAChD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;AACtD,QAAA,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAClD,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,YAAY,EAAE;AACnD,YAAA,IAAI,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;AAC7B,YAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;SACtB;aAAM;AACL,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACxB,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;AACzB,gBAAA,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACrC,gBAAA,IAAI,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC;aACpC;AACD,YAAA,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AAC7C,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;aACrB;AACD,YAAA,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;AAC5C,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aACpB;AACD,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;AACnB,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SACnB;KACF;AAED,IAAA,WAAW,CAAC,MAAkB,EAAA;AAC5B,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;KACpG;IAED,MAAM,GAAA;QACJ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;AAC5B,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAClC,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;aAAM;YACL,IAAI,CAAC,UAAU,EAAE,CAAC;SACnB;KACF;IAED,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;AACpC,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,SAAS,EAAE,MAAM;AAClB,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;AACpC,QAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;AACrC,QAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;AACpC,QAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;AACpC,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;SACpE;AACD,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;SAC7C;KACF;IAED,UAAU,GAAA;QACR,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/C,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;AACrD,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;AACpC,YAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;AAC9B,YAAA,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;AAChC,YAAA,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;AACpC,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;AACvC,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnD;AACD,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE;AAC1B,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;gBAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,CAAA,EAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAE,CAAA,CAAC,CAAC;aAC/F;AACD,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;gBAChC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,aAAa,EAAE,CAAA,EAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAE,CAAA,CAAC,CAAC;aACjG;AACD,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;gBACjC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,cAAc,EAAE,CAAA,EAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAE,CAAA,CAAC,CAAC;aACnG;AACD,YAAA,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,eAAe,EAAE,CAAA,EAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAE,CAAA,CAAC,CAAC;aACrG;SACF;KACF;AAED,IAAA,QAAQ,CAAC,MAA2B,EAAA;AAClC,QAAA,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE;AAC7B,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3B,IAAI,CAAC,SAAS,GAAG;AACf,gBAAA,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE;AACjC,gBAAA,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE;aAClC,CAAC;AACF,YAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/B,YAAA,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;SACvC;aAAM;AACL,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC5B;KACF;AAED,IAAA,UAAU,CAAC,KAAsB,EAAA;QAC/B,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC5G,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AACpE,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAmB,CAAC,EAAE;AAC/G,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,CAAA,EAAG,aAAa,CAAA,EAAA,CAAI,CAAC,CAAC;SAC5E;KACF;iIA3QU,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,mTCjD7B,8qFA6EA,EAAA,MAAA,EAAA,CAAA,4sCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDnCY,OAAO,EAAE,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,gBAAgB,oJAAE,eAAe,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAE,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,iBAAiB,sDAAE,gBAAgB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAK/F,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAEvC,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAV5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAG,aAAa,CAAA,CAAE,EAChB,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,EAAA,aAAA,EAG7F,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,EAAA,QAAA,EAAA,8qFAAA,EAAA,MAAA,EAAA,CAAA,4sCAAA,CAAA,EAAA,CAAA;wDAUP,UAAU,EAAA,CAAA;sBAApD,WAAW;uBAAC,wBAAwB,CAAA;gBAIf,OAAO,EAAA,CAAA;sBAA5B,WAAW;uBAAC,OAAO,CAAA;;;AE5ChB,MAAO,yBAA0B,SAAQ,wBAAwB,CAAA;AAdvE,IAAA,WAAA,GAAA;;QAe2C,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;AACtD,KAAA;iIAFY,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAzB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,EAPzB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,0BAAA,EAAA,WAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,kBAAkB;AAC3B,gBAAA,WAAW,EAAE,yBAAyB;AACvC,aAAA;AACF,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECfH,+BACA,EAAA,MAAA,EAAA,CAAA,6yBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDgBa,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAdrC,SAAS;+BACE,oBAAoB,EAAA,UAAA,EAClB,IAAI,EAAA,aAAA,EAGD,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,WAAW,EAA2B,yBAAA;AACvC,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,6yBAAA,CAAA,EAAA,CAAA;8BAGwC,IAAI,EAAA,CAAA;sBAA5C,WAAW;uBAAC,0BAA0B,CAAA;;;AEcnC,MAAO,sBAAuB,SAAQ,gBAAgB,CAAA;AAV5D,IAAA,WAAA,GAAA;;AA2BE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACnD,QAAA,IAAA,CAAA,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACtC,IAAO,CAAA,OAAA,GAAG,eAAe,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAChE,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,YAAY,EAAyB,CAAC;QAI7D,IAAU,CAAA,UAAA,GAAG,CAAC,CAAC;QACf,IAAS,CAAA,SAAA,GAAG,CAAC,CAAC;QACd,IAAQ,CAAA,QAAA,GAAG,MAAM,CAAC;QAClB,IAAS,CAAA,SAAA,GAAG,MAAM,CAAC;QACnB,IAAU,CAAA,UAAA,GAAG,CAAC,CAAC;QACf,IAAiB,CAAA,iBAAA,GAAG,CAAC,CAAC;QAEtB,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QAGxB,IAAQ,CAAA,QAAA,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAE1B,IAAS,CAAA,SAAA,GAA2B,EAAE,CAAC;AA8CxC,KAAA;AAhFyD,IAAA,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAkB,EAAA;AACjG,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,KAAK,EAAE,OAAgC;YACvC,SAAS;AACV,SAAA,CAAC,CAAC;KACJ;AACwD,IAAA,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAkB,EAAA;AACnG,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,KAAK,EAAE,OAAgC;YACvC,SAAS;AACV,SAAA,CAAC,CAAC;KACJ;IAuBD,QAAQ,GAAA;QACN,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACzG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;KAC1G;IAED,eAAe,GAAA;QACb,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9C,YAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;AACpC,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;YAC9B,OAAO;SACR;QACD,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE;AAC9C,YAAA,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SACpE;KACF;AAED,IAAA,qBAAqB,CAAI,MAA0B,EAAA;QACjD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,EAAE;AACrC,YAAA,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;KAC1D;AACD,IAAA,oBAAoB,CAAI,MAAyB,EAAA;QAC/C,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,EAAE;AACrC,YAAA,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;KACzD;AAED,IAAA,QAAQ,CAAC,KAAsB,EAAA;QAC7B,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAC5G,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;AACpE,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAmB,CAAC,EAAE;AAC/G,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,CAAA,EAAG,aAAa,CAAA,EAAA,CAAI,CAAC,CAAC;SAC5E;KACF;AAED,IAAA,WAAW,CAAC,KAAiB,EAAA;QAC3B,IAAI,CAAC,QAAQ,GAAG;YACd,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;SACtC,CAAC;KACH;iIAlFU,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,qRAoBP,aAAa,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAFL,eAAe,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACpB,OAAO,ECnDtC,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,gtBAmBA,EDMY,MAAA,EAAA,CAAA,8zCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,cAAc,geAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,mBAAmB,EAK/C,QAAA,EAAA,cAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAC,iBAAiB,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAEpB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAVlC,SAAS;+BACE,iBAAiB,EAAA,UAAA,EACf,IAAI,EACP,OAAA,EAAA,CAAC,cAAc,EAAE,YAAY,EAAE,mBAAmB,CAAC,iBAG7C,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,gtBAAA,EAAA,MAAA,EAAA,CAAA,8zCAAA,CAAA,EAAA,CAAA;8BAIc,SAAS,EAAA,CAAA;sBAArD,WAAW;uBAAC,uBAAuB,CAAA;gBACoB,IAAI,EAAA,CAAA;sBAA3D,YAAY;uBAAC,4BAA4B,EAAE,CAAC,QAAQ,CAAC,CAAA;gBAOG,KAAK,EAAA,CAAA;sBAA7D,YAAY;uBAAC,6BAA6B,EAAE,CAAC,QAAQ,CAAC,CAAA;;;AEnCzD;MACa,UAAU,CAAA;AAQrB,IAAA,WAAA,CACS,UAAsB,EACtB,iBAAyC,EACzC,QAAmB,EACnB,aAA6B,EAAA;QAH7B,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;QACtB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAwB;QACzC,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;QACnB,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;QATtC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAc,CAAA,cAAA,GAA8B,EAAE,CAAC;AAC/C,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,OAAO,EAAO,CAAC;QACxB,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;KAO9B;AAEJ,IAAA,KAAK,CAAC,MAAY,EAAA;QAChB,IAAI,CAAC,iBAAiB,CAAC,gBAAgB;aACpC,IAAI,CACH,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EACpE,IAAI,CAAC,CAAC,CAAC,CACR;aACA,SAAS,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;AACzB,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC/B,SAAC,CAAC,CAAC;AACL,QAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,MAAM,CAAC;KAC3C;IAED,YAAY,GAAA;AACV,QAAA,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;AAC9G,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;AACzB,YAAA,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC;AAC9B,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,QAAQ,EAAE,MAAM;AAChB,gBAAA,SAAS,EAAE,MAAM;AAClB,aAAA,CAAC,CAAC;AACH,YAAA,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;AAC5B,YAAA,SAAS,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;AAC/B,YAAA,SAAS,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;AAChC,YAAA,SAAS,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;AAC/B,YAAA,SAAS,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;AAC/B,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;aAC7D;AACD,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AACzB,gBAAA,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;aACxC;YACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,4BAA4B,CAAC,CAAC;SACtE;aAAM;YACL,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC7C,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;AAC/C,YAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,eAAe,EAAE;gBAC9C,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;aAChD;iBAAM;gBACL,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC/C,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;aAChD;AAED,YAAA,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;AAC/B,gBAAA,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;AACzB,gBAAA,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC;AAC3B,gBAAA,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC;AAC/B,gBAAA,SAAS,EAAE,SAAS,CAAC,WAAW,CAAC;AAClC,aAAA,CAAC,CAAC;AACH,YAAA,SAAS,CAAC,UAAU,GAAG,KAAK,CAAC;AAC7B,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBACzB,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;aACzC;AACD,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AACzB,gBAAA,IAAI,SAAS,CAAC,WAAW,CAAC,EAAE;AAC1B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,EAAE,CAAA,EAAG,SAAS,CAAC,WAAW,CAAC,CAAA,CAAE,CAAC,CAAC;iBACnF;AACD,gBAAA,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE;AAC3B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,aAAa,EAAE,CAAA,EAAG,SAAS,CAAC,YAAY,CAAC,CAAA,CAAE,CAAC,CAAC;iBACrF;AACD,gBAAA,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE;AAC5B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,EAAE,CAAA,EAAG,SAAS,CAAC,aAAa,CAAC,CAAA,CAAE,CAAC,CAAC;iBACvF;AACD,gBAAA,IAAI,SAAS,CAAC,cAAc,CAAC,EAAE;AAC7B,oBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,eAAe,EAAE,CAAA,EAAG,SAAS,CAAC,cAAc,CAAC,CAAA,CAAE,CAAC,CAAC;iBACzF;aACF;YACD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,4BAA4B,CAAC,CAAC;AACxE,YAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,eAAe,EAAE;gBAC9C,SAAS,CAAC,UAAU,EAAE,sBAAsB,CAC1C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,CACxE,CAAC;gBACF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;gBAC5D,UAAU,CAAC,MAAK;oBACd,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAe,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;oBAClG,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,cAAe,CAAC,UAAU,CAAC;oBAC/D,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,cAAe,CAAC,SAAS,CAAC;oBAC7D,MAAM,eAAe,GAAG,cAAc,EAAE,aAAa,CAAC,kBAAkB,CAAE,CAAC;oBAC3E,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,eAAe,CAAC,YAAY,CAAC;oBACjE,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,cAAc,EAAE,aAAa,CAAC,0BAA0B,CAAE,CAAC;AAClG,oBAAA,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,YAAY,CAAC;AAC9F,oBAAA,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;AAC/C,iBAAC,CAAC,CAAC;aACJ;SACF;AACD,QAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;KACjC;AACF;;MCzGY,qBAAqB,CAAA;AAJlC,IAAA,WAAA,GAAA;AAQE,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,EAAC,UAAe,GAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACzD,KAAA;IAJoC,YAAY,GAAA;QAC7C,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;KAC1C;iIAHU,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAkB,gBAAA,CAAA;AAC5B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAEoC,YAAY,EAAA,CAAA;sBAA9C,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;MAUtB,qBAAqB,CAAA;AAJlC,IAAA,WAAA,GAAA;QAK8C,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;AACzD,KAAA;iIAFY,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAkC,gCAAA,CAAA;AAC5C,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAE6C,IAAI,EAAA,CAAA;sBAA/C,WAAW;uBAAC,6BAA6B,CAAA;;MAO/B,uBAAuB,CAAA;AAJpC,IAAA,WAAA,GAAA;QAKgD,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;AAC3D,KAAA;iIAFY,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,+BAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAsC,oCAAA,CAAA;AAChD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAE+C,IAAI,EAAA,CAAA;sBAAjD,WAAW;uBAAC,+BAA+B,CAAA;;MAOjC,uBAAuB,CAAA;AAJpC,IAAA,WAAA,GAAA;QAKgD,IAAI,CAAA,IAAA,GAAG,IAAI,CAAC;AAC3D,KAAA;iIAFY,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,+BAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAsC,oCAAA,CAAA;AAChD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAE+C,IAAI,EAAA,CAAA;sBAAjD,WAAW;uBAAC,+BAA+B,CAAA;;MAOjC,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;AAQE,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,EAAC,UAAe,GAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAChD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;AAKzC,KAAA;AATC,IAAA,IAAsD,YAAY,GAAA;AAChE,QAAA,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC;KACxE;IAID,QAAQ,GAAA;QACN,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KACtD;iIATU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mCAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAA8C,4CAAA,CAAA;AACxD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAEuD,YAAY,EAAA,CAAA;sBAAjE,WAAW;uBAAC,mCAAmC,CAAA;;MAerC,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;AAQE,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,EAAC,UAAe,GAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACzD,KAAA;IAJoC,iBAAiB,GAAA;QAClD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;KACjD;iIAHU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4CAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAA4C,0CAAA,CAAA;AACtD,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;8BAEoC,iBAAiB,EAAA,CAAA;sBAAnD,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCzBtB,aAAa,CAAA;iIAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAVtB,gBAAgB;YAChB,yBAAyB;YACzB,qBAAqB;YACrB,qBAAqB;YACrB,uBAAuB;YACvB,uBAAuB;YACvB,0BAA0B;AAC1B,YAAA,0BAA0B,aAjB1B,gBAAgB;YAChB,yBAAyB;YACzB,qBAAqB;YACrB,qBAAqB;YACrB,uBAAuB;YACvB,uBAAuB;YACvB,0BAA0B;YAC1B,0BAA0B,CAAA,EAAA,CAAA,CAAA,EAAA;AAajB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAVtB,gBAAgB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAUP,aAAa,EAAA,UAAA,EAAA,CAAA;kBAtBzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,yBAAyB;wBACzB,qBAAqB;wBACrB,qBAAqB;wBACrB,uBAAuB;wBACvB,uBAAuB;wBACvB,0BAA0B;wBAC1B,0BAA0B;AAC3B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,gBAAgB;wBAChB,yBAAyB;wBACzB,qBAAqB;wBACrB,qBAAqB;wBACrB,uBAAuB;wBACvB,uBAAuB;wBACvB,0BAA0B;wBAC1B,0BAA0B;AAC3B,qBAAA;AACF,iBAAA,CAAA;;;MCvBY,cAAc,CAAA;AAoBzB,IAAA,WAAA,GAAA;AAnBA,QAAA,IAAA,CAAA,OAAO,GAAqB;AAC1B,YAAA,SAAS,EAAE,QAAQ;AACnB,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,QAAQ,EAAE,OAAO;AACjB,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,aAAa,EAAE,IAAI;AACnB,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,SAAS,EAAE,KAAK;AAChB,YAAA,SAAS,EAAE,KAAK;SACjB,CAAC;AAGM,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;AAC1B,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3C,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAGjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QACpF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;KACjD;AAED,IAAA,MAAM,CAAI,OAA4C,EAAE,MAAA,GAA2B,EAAE,EAAA;AACnF,QAAA,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;AACnC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAyB;AAC/D,YAAA,OAAO,EAAE,sBAAsB;YAC/B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;AACzC,YAAA,aAAa,EAAE;gBACb,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,UAAU,EAAE,MAAM,CAAC,SAAS;gBAC5B,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE;gBACrD,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,SAAS,EAAE,MAAM,CAAC,SAAS;AAC3B,gBAAA,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAO,CAAC;AAChF,aAAA;AACF,SAAA,CAAC,CAAC;QAEH,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;AAClD,QAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAa,IAAI,EAAE,CAAC;QACzC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;AACzD,QAAA,MAAM,SAAS,GAAG,IAAI,UAAU,CAAI,UAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;AAC9F,QAAA,IAAI,SAAS,GAAG;YACd,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC;QACF,IAAI,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AAC/C,QAAA,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE;AACvB,YAAA,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;YAC1D,MAAM,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM;YAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;AAC5B,SAAA,CAAC,CAAC;AACH,QAAA,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;AACtC,QAAA,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,QAAA,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;AAC/B,QAAA,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;AAC3C,QAAA,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;AAC/B,QAAA,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;AACnC,QAAA,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;AACzC,QAAA,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;AAC1B,QAAA,SAAS,CAAC,UAAU,GAAG,eAAe,CAAC;AACvC,QAAA,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE;YACxC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;YAC5D,UAAU,CAAC,MAAK;AACd,gBAAA,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,cAAe,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AAC7F,gBAAA,QAAQ,CAAC,UAAU,GAAG,cAAe,CAAC,UAAU,CAAC;AACjD,gBAAA,QAAQ,CAAC,SAAS,GAAG,cAAe,CAAC,SAAS,CAAC;gBAC/C,MAAM,eAAe,GAAG,cAAc,EAAE,aAAa,CAAC,kBAAkB,CAAE,CAAC;AAC3E,gBAAA,QAAQ,CAAC,UAAU,GAAG,eAAe,CAAC,YAAY,CAAC;gBACnD,QAAQ,CAAC,aAAa,GAAG,cAAc,EAAE,aAAa,CAAC,0BAA0B,CAAE,CAAC;gBACpF,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC;AAClE,gBAAA,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;AACjC,aAAC,CAAC,CAAC;SACJ;QACD,IAAI,eAAe,EAAE;YACnB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,4BAA4B,CAAC,CAAC;SACtE;AACD,QAAA,IAAI,OAAO,YAAY,WAAW,EAAE;YAClC,QAAQ,CAAC,oBAAoB,CAC3B,IAAI,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAiB,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CACxG,CAAC;SACH;aAAM;AACL,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;gBACjD,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE;AACjD,gBAAA,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE;AAC7C,aAAA,CAAC,CAAC;AACH,YAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,qBAAqB,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC/G,YAAA,SAAS,CAAC,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC;SAC/C;QAED,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,aAAa,IAAI,UAAU,EAAE;AAC5D,YAAA,UAAU,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,MAAK;gBACxC,SAAS,CAAC,KAAK,EAAE,CAAC;AACpB,aAAC,CAAC,CAAC;SACJ;AAED,QAAA,OAAO,SAAS,CAAC;KAClB;IAEO,WAAW,CAAC,SAA2B,EAAE,EAAA;AAC/C,QAAA,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7B,QAAA,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7B,QAAA,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAe,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAgB,CAAC,EAAE;AAC/E,YAAA,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;AACzB,YAAA,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;AACzB,YAAA,OAAO,IAAI,CAAC;SACb;AACD,QAAA,OAAO,KAAK,CAAC;KACd;iIAjHU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAd,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA,CAAA,EAAA;;2FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;ACTlC;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-nest-ui-dialog.mjs","sources":["../../../../lib/ng-nest/ui/dialog/dialog.property.ts","../../../../lib/ng-nest/ui/dialog/dialog.component.ts","../../../../lib/ng-nest/ui/dialog/dialog.component.html","../../../../lib/ng-nest/ui/dialog/dialog-container.component.ts","../../../../lib/ng-nest/ui/dialog/dialog-container.component.html","../../../../lib/ng-nest/ui/dialog/dialog-portal.component.ts","../../../../lib/ng-nest/ui/dialog/dialog-portal.component.html","../../../../lib/ng-nest/ui/dialog/dialog-ref.ts","../../../../lib/ng-nest/ui/dialog/dialog-portal.directives.ts","../../../../lib/ng-nest/ui/dialog/dialog.module.ts","../../../../lib/ng-nest/ui/dialog/dialog.service.ts","../../../../lib/ng-nest/ui/dialog/ng-nest-ui-dialog.ts"],"sourcesContent":["import { Component, ViewContainerRef, InjectionToken, input, model, output } from '@angular/core';\r\nimport { XProperty, XPropertyFunction, XToCssPixelValue, XToBoolean, XToNumber } from '@ng-nest/ui/core';\r\nimport { XPortalOverlayRef } from '@ng-nest/ui/portal';\r\nimport { XDialogComponent } from './dialog.component';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport type { XStatus, XPlace, XTemplate, XEffect, XBoolean, XNumber } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Dialog\r\n * @selector x-dialog\r\n * @decorator component\r\n */\r\nexport const XDialogPrefix = 'x-dialog';\r\nexport const X_DIALOG_CONFIG_NAME = 'dialog';\r\nexport const XDialogContainer = 'x-dialog-overlay';\r\nexport const X_DIALOG_DATA = new InjectionToken<any>('XDialogData');\r\n\r\n/**\r\n * Dialog Property\r\n */\r\n@Component({ selector: `${XDialogPrefix}-property`, template: '' })\r\nexport class XDialogProperty extends XPropertyFunction(X_DIALOG_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 标题\r\n * @en_US Title\r\n */\r\n readonly title = input<XTemplate>();\r\n /**\r\n * @zh_CN 显示/隐藏\r\n * @en_US Show/hide\r\n */\r\n readonly visible = model<boolean>(false);\r\n /**\r\n * @zh_CN 方位,九宫格\r\n * @en_US Direction, nine grid\r\n */\r\n readonly placement = input<XPlace>(this.config?.placement ?? 'center');\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n */\r\n readonly offset = input<string, XNumber>(this.config?.offset ?? '1rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\n readonly type = input<XDialogType>('info');\r\n /**\r\n * @zh_CN 隐藏关闭按钮\r\n * @en_US Hide close button\r\n */\r\n readonly hideClose = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 使用文本关闭按钮\r\n * @en_US Use the text to close button\r\n */\r\n readonly closeText = input<string>();\r\n /**\r\n * @zh_CN 调整弹框的大小\r\n * @en_US Adjust the size of the box\r\n */\r\n readonly resizable = input<boolean, XBoolean>(this.config?.resizable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕左边\r\n * @en_US Open the resizable resize, offset screen left\r\n */\r\n readonly offsetLeft = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 开启 resizable 调整大小,偏移屏幕顶部\r\n * @en_US Open the resizable resize, offset screen top\r\n */\r\n readonly offsetTop = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n */\r\n readonly width = input<string, XNumber>(this.config?.width ?? '32rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n readonly height = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n */\r\n readonly minWidth = input<string, XNumber>(this.config?.minWidth ?? '18rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n */\r\n readonly minHeight = input<string, XNumber>(this.config?.minHeight ?? '8rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 样式主题\r\n * @en_US Style theme\r\n */\r\n readonly effect = input<XEffect>(this.config?.effect ?? 'white');\r\n /**\r\n * @zh_CN 底部自定义模板\r\n * @en_US Custom template at the bottom\r\n */\r\n readonly footer = input<XTemplate>();\r\n /**\r\n * @zh_CN 显示取消按钮\r\n * @en_US Show cancel button\r\n */\r\n readonly showCancel = input<boolean, XBoolean>(this.config?.showCancel ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 取消按钮文字\r\n * @en_US Cancel button text\r\n * @default '取消'\r\n */\r\n readonly cancelText = input<string>(this.config?.cancelText ?? '');\r\n /**\r\n * @zh_CN 显示确认按钮\r\n * @en_US Show confirmation button\r\n */\r\n readonly showConfirm = input<boolean, XBoolean>(this.config?.showConfirm ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 确认按钮文字\r\n * @en_US Confirm button text\r\n * @default '确认'\r\n */\r\n readonly confirmText = input<string>(this.config?.confirmText ?? '');\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n */\r\n readonly backdropClose = input<boolean, XBoolean>(this.config?.backdropClose ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n */\r\n readonly hasBackdrop = input<boolean, XBoolean>(this.config?.hasBackdrop ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n readonly className = input<string>(this.config?.className ?? '');\r\n /**\r\n * @zh_CN 按钮居中\r\n * @en_US Button center\r\n */\r\n readonly buttonsCenter = input<boolean, XBoolean>(this.config?.buttonsCenter ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 拖动对话框\r\n * @en_US Drag dialog\r\n */\r\n readonly draggable = input<boolean, XBoolean>(this.config?.draggable ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 最大化弹出框按钮,当启用 resizable 时也会显示\r\n * @en_US Maximize the bullet box button, Will also display when resizable is enabled\r\n */\r\n readonly maximize = input<boolean, XBoolean>(this.config?.maximize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 关闭前处理函数\r\n * @en_US Processing function before closing\r\n */\r\n readonly beforeClose = input<(action: XDialogAction) => void>();\r\n /**\r\n * @zh_CN 取消按钮的事件\r\n * @en_US Cancel button event\r\n */\r\n readonly cancel = output();\r\n /**\r\n * @zh_CN 确认按钮的事件\r\n * @en_US Confirm button event\r\n */\r\n readonly confirm = output();\r\n /**\r\n * @zh_CN 确认按钮的事件\r\n * @en_US Confirm button event\r\n */\r\n readonly close = output();\r\n /**\r\n * @zh_CN 弹出完成动画加载\r\n * @en_US Pop up complete animation loading\r\n */\r\n readonly showDone = output<any>();\r\n /**\r\n * @zh_CN 关闭完成动画\r\n * @en_US Close complete animation\r\n */\r\n readonly closeDone = output<any>();\r\n}\r\n\r\n/**\r\n * Dialog Container\r\n * @selector x-dialog-container\r\n * @decorator component\r\n */\r\nexport const XDialogContainerPrefix = 'x-dialog-container';\r\nexport const X_DIALOG_CONTAINER = new InjectionToken('X_DIALOG_CONTAINER');\r\n\r\n/**\r\n * Dialog Container Property\r\n */\r\n@Component({ selector: `${XDialogContainerPrefix}-property`, template: '' })\r\nexport class XDialogContainerProperty extends XProperty {}\r\n\r\n/**\r\n * Dialog option by service\r\n */\r\nexport interface XDialogRefOption {\r\n /**\r\n * @zh_CN 展示方向\r\n * @en_US Display direction\r\n * @default 'center'\r\n * @withConfig true\r\n */\r\n placement?: XPlace;\r\n /**\r\n * @zh_CN 偏移距离\r\n * @en_US Offset distance\r\n * @default '1rem'\r\n * @withConfig true\r\n */\r\n offset?: string;\r\n /**\r\n * @zh_CN 宽度\r\n * @en_US Width\r\n * @default '32rem'\r\n * @withConfig true\r\n */\r\n width?: string;\r\n /**\r\n * @zh_CN 高度\r\n * @en_US Height\r\n */\r\n height?: string;\r\n /**\r\n * @zh_CN 自定义样式名\r\n * @en_US Custom style name\r\n */\r\n className?: string;\r\n /**\r\n * @zh_CN 点击遮罩关闭\r\n * @en_US Click the mask to close\r\n * @default true\r\n * @withConfig true\r\n */\r\n backdropClose?: boolean;\r\n /**\r\n * @zh_CN 是否显示背景遮罩\r\n * @en_US Whether to display the background mask\r\n * @default true\r\n * @withConfig true\r\n */\r\n hasBackdrop?: boolean;\r\n /**\r\n * @zh_CN 拖动对话框\r\n * @en_US Drag dialog\r\n * @default false\r\n * @withConfig true\r\n */\r\n draggable?: boolean;\r\n /**\r\n * @zh_CN 调整弹框的大小\r\n * @en_US Adjust the size of the box\r\n * @default false\r\n * @withConfig true\r\n */\r\n resizable?: boolean;\r\n /**\r\n * @zh_CN 最小宽度\r\n * @en_US Min width\r\n * @default '18rem'\r\n * @withConfig true\r\n */\r\n minWidth?: string;\r\n /**\r\n * @zh_CN 最小高度\r\n * @en_US Min height\r\n * @default '8rem'\r\n * @withConfig true\r\n */\r\n minHeight?: string;\r\n /**\r\n * @zh_CN 数据,通过 \"@Inject(X_DIALOG_DATA)\" 来接收数据\r\n * @en_US Data. Receive data by \"@Inject(X_DIALOG_DATA)\"\r\n */\r\n data?: any;\r\n /**\r\n * @zh_CN 视图容器实例可以包含其他视图容器。\r\n * @en_US A view container instance can contain other view containers.\r\n */\r\n viewContainerRef?: ViewContainerRef;\r\n}\r\n\r\n/**\r\n * @zh_CN 弹框动画状态\r\n * @en_US Dialog animation status\r\n */\r\nexport type XDialogAnimationState = XPlace | 'void';\r\n\r\n/**\r\n * @zh_CN 弹框动画事件\r\n * @en_US Dialog animation Event\r\n */\r\nexport interface XDialogAnimationEvent {\r\n state: XDialogAnimationState;\r\n action: 'start' | 'done';\r\n totalTime: number;\r\n}\r\n\r\n/**\r\n * @zh_CN 关闭的回调函数类型\r\n * @en_US Closed callback function type\r\n */\r\nexport interface XDialogCallback {\r\n (action: XDialogAction, message?: string): void;\r\n}\r\n\r\n/**\r\n * @zh_CN 触发关闭的类型\r\n * @en_US Type of trigger closure\r\n */\r\nexport type XDialogAction = 'confirm' | 'cancel' | 'close';\r\n\r\n/**\r\n * @zh_CN 创建的弹框对象\r\n * @en_US Dialog object created\r\n */\r\nexport interface XDialogOverlayRef extends XPortalOverlayRef<XDialogComponent> {}\r\n\r\n/**\r\n * @zh_CN 创建的弹框对象,通过服务\r\n * @en_US Dialog object created by service\r\n */\r\nexport interface XDialogPortalOverlayRef extends XPortalOverlayRef<XDialogPortalComponent> {}\r\n\r\n/**\r\n * @zh_CN 类型\r\n * @en_US Types of\r\n */\r\nexport type XDialogType = XStatus;\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n Renderer2,\r\n ChangeDetectionStrategy,\r\n TemplateRef,\r\n ViewContainerRef,\r\n OnDestroy,\r\n HostBinding,\r\n inject,\r\n OnInit,\r\n signal,\r\n computed,\r\n AfterViewInit,\r\n viewChild\r\n} from '@angular/core';\r\nimport { XMoveBoxAnimation, XIsFunction, XConfigService, XOpacityAnimation } from '@ng-nest/ui/core';\r\nimport {\r\n XDialogPrefix,\r\n XDialogOverlayRef,\r\n XDialogProperty,\r\n XDialogContainer,\r\n XDialogAction,\r\n X_DIALOG_CONTAINER\r\n} from './dialog.property';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { Subscription, Subject } from 'rxjs';\r\nimport { BlockScrollStrategy, Overlay } from '@angular/cdk/overlay';\r\nimport { XI18nDialog, XI18nService, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\nimport { CdkDragEnd } from '@angular/cdk/drag-drop';\r\nimport { XResizableEvent } from '@ng-nest/ui/resizable';\r\nimport { XDialogContainerComponent } from './dialog-container.component';\r\nimport { XAlertComponent } from '@ng-nest/ui/alert';\r\nimport { XButtonComponent, XButtonsComponent } from '@ng-nest/ui/button';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { NgStyle, NgTemplateOutlet } from '@angular/common';\r\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: `${XDialogPrefix}`,\r\n standalone: true,\r\n imports: [NgStyle, NgTemplateOutlet, XAlertComponent, XButtonComponent, XButtonsComponent, XOutletDirective],\r\n templateUrl: './dialog.component.html',\r\n styleUrls: ['./dialog.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation, XOpacityAnimation]\r\n})\r\nexport class XDialogComponent extends XDialogProperty implements OnInit, AfterViewInit, OnDestroy {\r\n private renderer = inject(Renderer2);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private protalService = inject(XPortalService);\r\n private overlay = inject(Overlay);\r\n private i18n = inject(XI18nService);\r\n private unSubject = new Subject<void>();\r\n\r\n @HostBinding('class.x-dialog-visible') get getVisible() {\r\n return this.visible();\r\n }\r\n\r\n @HostBinding('class') clsName = `${XDialogPrefix}-${this.placement()}`;\r\n\r\n dialogTpl = viewChild.required<TemplateRef<void>>('dialogTpl');\r\n dialogRef!: XDialogOverlayRef;\r\n backdropClick$!: Subscription;\r\n scrollStrategy!: BlockScrollStrategy;\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.dialog as XI18nDialog)), { initialValue: zh_CN.dialog });\r\n overlayElement = signal<HTMLElement | null>(null);\r\n dialogContent?: HTMLElement;\r\n initHeight? = 0;\r\n initContentHeight? = 0;\r\n isMaximize = signal(false);\r\n isDefaultMaximize = signal(false);\r\n dialogBox: { [key: string]: any } = {};\r\n contentBox: XResizableEvent = {};\r\n distance = { x: 0, y: 0 };\r\n viewInit = signal(false);\r\n action: XDialogAction | null = null;\r\n containerInit = false;\r\n resizableSignal = signal(false);\r\n draggableSignal = signal(false);\r\n maximizeSignal = signal(false);\r\n\r\n getCancelText = computed(() => {\r\n return this.cancelText() || this.locale().cancelText;\r\n });\r\n\r\n getConfirmText = computed(() => {\r\n return this.confirmText() || this.locale().confirmText;\r\n });\r\n\r\n getStyle = computed(() => {\r\n return this.container\r\n ? {\r\n ...this.protalService.setContainerStyle(this.placement(), this.offset()),\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight()\r\n }\r\n : {};\r\n });\r\n container = inject<XDialogContainerComponent>(X_DIALOG_CONTAINER, { optional: true });\r\n configService = inject(XConfigService);\r\n\r\n styleOffsetLeft = signal(0);\r\n styleOffsetTop = signal(0);\r\n\r\n visibleChanged = toObservable(this.visible);\r\n draggableChanged = toObservable(this.draggable);\r\n\r\n constructor() {\r\n super();\r\n this.visibleChanged.pipe(takeUntil(this.unSubject)).subscribe(() => {\r\n this.setVisible();\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.scrollStrategy = this.protalService.overlay.scrollStrategies.block();\r\n this.draggableSignal.set(this.draggable());\r\n this.resizableSignal.set(this.resizable());\r\n this.maximizeSignal.set(this.maximize());\r\n this.dialogBox['draggable'] = this.draggableSignal();\r\n this.dialogBox['resizable'] = this.resizableSignal();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.viewInit.set(true);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.backdropClick$?.unsubscribe();\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setVisible() {\r\n if (!this.viewInit()) return;\r\n if (this.visible()) {\r\n this.create();\r\n } else {\r\n this.onClose('close', false);\r\n }\r\n }\r\n\r\n create() {\r\n if (this.container) {\r\n this.containerInit = true;\r\n return;\r\n }\r\n this.dialogRef = this.protalService.attach({\r\n content: this.dialogTpl(),\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: {\r\n panelClass: [XDialogContainer, this.className()],\r\n hasBackdrop: this.hasBackdrop(),\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight(),\r\n positionStrategy: this.protalService.setPlace(this.placement(), this.offset())\r\n }\r\n });\r\n const { hostElement, overlayElement } = this.dialogRef.overlayRef!;\r\n this.overlayElement.set(overlayElement);\r\n this.setWidthHeight();\r\n Object.assign(this.dialogBox, {\r\n width: this.width(),\r\n height: this.height(),\r\n minWidth: this.minWidth(),\r\n minHeight: this.minHeight()\r\n });\r\n if (this.resizableSignal() && !this.isDefaultMaximize()) {\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(this.dialogBox, this.protalService.setResizable(this.overlayElement()!, this.placement()));\r\n this.styleOffsetLeft.set(this.overlayElement()?.offsetLeft!);\r\n this.styleOffsetTop.set(this.overlayElement()?.offsetTop!);\r\n const dialogDraggable = this.overlayElement()?.querySelector('.x-alert-draggable')!;\r\n this.initHeight = dialogDraggable.clientHeight;\r\n this.dialogContent = this.overlayElement()?.querySelector('.x-dialog-content')!;\r\n this.initContentHeight = this.dialogContent.clientHeight;\r\n });\r\n }\r\n if (this.hasBackdrop() && this.backdropClose() && this.dialogRef?.overlayRef) {\r\n this.backdropClick$ = this.dialogRef.overlayRef.backdropClick().subscribe(() => this.onClose('close'));\r\n }\r\n }\r\n\r\n setWidthHeight() {\r\n const ws = ['100%', '100vw'];\r\n const hs = ['100%', '100vh'];\r\n if (ws.includes(this.width()) && hs.includes(this.height())) {\r\n this.isDefaultMaximize.set(true);\r\n this.resizableSignal.set(false);\r\n this.draggableSignal.set(false);\r\n this.maximizeSignal.set(false);\r\n }\r\n }\r\n\r\n portalAttached() {\r\n return this.dialogRef?.overlayRef?.hasAttached();\r\n }\r\n\r\n onClose(action: XDialogAction, execFunction = true) {\r\n if (!this.portalAttached() && !this.container) return;\r\n if (this.container && !this.containerInit) return;\r\n if (XIsFunction(this.beforeClose()) && execFunction) {\r\n this.beforeClose()?.(action);\r\n this.action = action;\r\n } else {\r\n this.visible.set(false);\r\n if (this.portalAttached()) {\r\n this.dialogRef?.overlayRef?.detach();\r\n this.backdropClick$?.unsubscribe();\r\n }\r\n if ([action, this.action].includes('confirm')) {\r\n this.confirm.emit();\r\n }\r\n if ([action, this.action].includes('cancel')) {\r\n this.cancel.emit();\r\n }\r\n this.containerInit = false;\r\n this.action = null;\r\n this.close.emit();\r\n }\r\n }\r\n\r\n onDragEnded($event: CdkDragEnd) {\r\n this.distance = { x: this.distance.x + $event.distance.x, y: this.distance.y + $event.distance.y };\r\n }\r\n\r\n onSize() {\r\n if (!this.dialogRef) return;\r\n this.isMaximize.update((x) => !x);\r\n if (this.isMaximize()) {\r\n this.onMaximize();\r\n } else {\r\n this.onMinimize();\r\n }\r\n }\r\n\r\n onMaximize() {\r\n this.dialogRef.overlayRef?.updateSize({\r\n width: '100%',\r\n height: '100%',\r\n minWidth: '100%',\r\n minHeight: '100%'\r\n });\r\n this.dialogBox['minWidth'] = '100%';\r\n this.dialogBox['minHeight'] = '100%';\r\n this.dialogBox['draggable'] = false;\r\n this.dialogBox['resizable'] = false;\r\n if (this.resizableSignal()) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin', '0 0 0 0');\r\n }\r\n if (this.draggableSignal()) {\r\n this.dialogBox['distance'] = { x: 0, y: 0 };\r\n }\r\n }\r\n\r\n onMinimize() {\r\n this.dialogBox['minWidth'] = this.minWidth();\r\n this.dialogBox['minHeight'] = this.minHeight();\r\n this.dialogBox['draggable'] = this.draggableSignal();\r\n this.dialogBox['resizable'] = this.resizableSignal();\r\n this.dialogRef.overlayRef?.updateSize({\r\n width: this.dialogBox['width'],\r\n height: this.dialogBox['height'],\r\n minWidth: this.dialogBox['minWidth'],\r\n minHeight: this.dialogBox['minHeight']\r\n });\r\n if (this.draggableSignal()) {\r\n this.dialogBox['distance'] = { ...this.distance };\r\n }\r\n if (this.resizableSignal()) {\r\n if (this.dialogBox['marginTop']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-top', `${this.dialogBox['marginTop']}`);\r\n }\r\n if (this.dialogBox['marginLeft']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-left', `${this.dialogBox['marginLeft']}`);\r\n }\r\n if (this.dialogBox['marginRight']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-right', `${this.dialogBox['marginRight']}`);\r\n }\r\n if (this.dialogBox['marginBottom']) {\r\n this.renderer.setStyle(this.overlayElement(), 'margin-bottom', `${this.dialogBox['marginBottom']}`);\r\n }\r\n }\r\n }\r\n\r\n moveDone($event: { toState: string }) {\r\n if ($event.toState === 'void') {\r\n this.closeDone.emit($event);\r\n this.isMaximize.set(false);\r\n this.dialogBox = {\r\n draggable: this.draggableSignal(),\r\n resizable: this.resizableSignal()\r\n };\r\n this.distance = { x: 0, y: 0 };\r\n this.dialogRef?.overlayRef?.dispose();\r\n } else {\r\n this.showDone.emit($event);\r\n }\r\n }\r\n\r\n onResizing(event: XResizableEvent) {\r\n const contentHeight = Number(this.initContentHeight) + Number(event.clientHeight) - Number(this.initHeight);\r\n this.renderer.setStyle(this.dialogContent, 'max-height', 'initial');\r\n this.renderer.setStyle(this.dialogContent, 'flex', 'initial');\r\n if (['top-start', 'top-end', 'bottom', 'top', 'bottom-start', 'bottom-end'].includes(event.direction as string)) {\r\n this.renderer.setStyle(this.dialogContent, 'height', `${contentHeight}px`);\r\n }\r\n }\r\n}\r\n","<ng-template #dialogTpl>\r\n @if (container && hasBackdrop()) {\r\n <div class=\"x-dialog-backdrop\" [@x-opacity-animation]=\"visible()\" (click)=\"onClose('close')\"></div>\r\n }\r\n <div\r\n class=\"x-dialog\"\r\n [@x-move-box-animation]=\"placement()\"\r\n (@x-move-box-animation.done)=\"moveDone($event)\"\r\n [class.x-dialog-maximize]=\"isMaximize()\"\r\n [class.x-dialog-resizable]=\"resizableSignal()\"\r\n [class.x-dialog-default-maximize]=\"isDefaultMaximize()\"\r\n [ngStyle]=\"getStyle()\"\r\n >\r\n <x-alert\r\n [draggable]=\"draggableSignal() && dialogBox['draggable']\"\r\n [resizable]=\"resizableSignal() && dialogBox['resizable']\"\r\n [dragFreeDragPosition]=\"dialogBox['distance']\"\r\n [offsetLeft]=\"styleOffsetLeft()\"\r\n [offsetTop]=\"styleOffsetTop()\"\r\n [minWidth]=\"dialogBox['minWidth']\"\r\n [minHeight]=\"dialogBox['minHeight']\"\r\n [dragBoundary]=\"'.cdk-overlay-container'\"\r\n [title]=\"title()\"\r\n [content]=\"contentTpl\"\r\n [type]=\"type()\"\r\n [effect]=\"effect()\"\r\n [hideClose]=\"hideClose()\"\r\n [closeText]=\"closeText()\"\r\n [operationTpl]=\"operationTpl\"\r\n (close)=\"onClose('close')\"\r\n (dragEnded)=\"onDragEnded($event)\"\r\n (resizing)=\"onResizing($event)\"\r\n [showIcon]=\"false\"\r\n [duration]=\"0\"\r\n manual\r\n disabledAnimation\r\n ></x-alert>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #contentTpl>\r\n <div class=\"x-dialog-inner\">\r\n <div class=\"x-dialog-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"x-dialog-buttons\" [class.x-dialog-buttons-center]=\"buttonsCenter()\">\r\n <ng-container *xOutlet=\"footer()\">\r\n @if (showCancel() || showConfirm()) {\r\n <x-buttons space=\"0.5rem\">\r\n @if (showCancel()) {\r\n <x-button (click)=\"onClose('cancel')\" flat plain>{{ getCancelText() }}</x-button>\r\n }\r\n @if (showConfirm()) {\r\n <x-button type=\"primary\" flat (click)=\"onClose('confirm')\">{{ getConfirmText() }}</x-button>\r\n }\r\n </x-buttons>\r\n }\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #operationTpl>\r\n @if (maximizeSignal() || resizableSignal()) {\r\n <x-button\r\n size=\"small\"\r\n flat\r\n [icon]=\"isMaximize() ? 'fto-minimize' : 'fto-maximize'\"\r\n [onlyIcon]=\"true\"\r\n (click)=\"onSize()\"\r\n ></x-button>\r\n }\r\n</ng-template>\r\n\r\n@if (container && visible()) {\r\n <ng-container *ngTemplateOutlet=\"dialogTpl\"></ng-container>\r\n}\r\n","import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';\r\nimport { XDialogContainerProperty, X_DIALOG_CONTAINER } from './dialog.property';\r\n\r\n@Component({\r\n selector: 'x-dialog-container',\r\n standalone: true,\r\n templateUrl: './dialog-container.component.html',\r\n styleUrls: ['./dialog-container.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: X_DIALOG_CONTAINER,\r\n useExisting: XDialogContainerComponent\r\n }\r\n ]\r\n})\r\nexport class XDialogContainerComponent extends XDialogContainerProperty {\r\n @HostBinding('class.x-dialog-container') _has = true;\r\n}\r\n","<ng-content></ng-content>\r\n","import { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, PortalModule, TemplatePortal } from '@angular/cdk/portal';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ComponentRef,\r\n EmbeddedViewRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Renderer2,\r\n ViewEncapsulation,\r\n contentChildren,\r\n inject,\r\n viewChild\r\n} from '@angular/core';\r\nimport { XMoveBoxAnimation } from '@ng-nest/ui/core';\r\nimport { XDialogAnimationEvent, XDialogAnimationState, XDialogRefOption } from './dialog.property';\r\nimport { AnimationEvent } from '@angular/animations';\r\nimport { CdkDrag, CdkDragEnd, CdkDragHandle, DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XDialogRef } from './dialog-ref';\r\nimport { XResizableDirective, XResizableEvent } from '@ng-nest/ui/resizable';\r\n\r\n@Component({\r\n selector: 'x-dialog-portal',\r\n standalone: true,\r\n imports: [DragDropModule, PortalModule, XResizableDirective],\r\n templateUrl: './dialog-portal.component.html',\r\n styleUrls: ['./dialog-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: [XMoveBoxAnimation]\r\n})\r\nexport class XDialogPortalComponent extends BasePortalOutlet {\r\n // @HostBinding('class.x-dialog-portal') _has = true;\r\n @HostBinding('@x-move-box-animation') public placement?: XDialogAnimationState;\r\n @HostListener('@x-move-box-animation.done', ['$event']) done({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({\r\n action: 'done',\r\n state: toState as XDialogAnimationState,\r\n totalTime\r\n });\r\n }\r\n @HostListener('@x-move-box-animation.start', ['$event']) start({ toState, totalTime }: AnimationEvent) {\r\n this.animationChanged.next({\r\n action: 'start',\r\n state: toState as XDialogAnimationState,\r\n totalTime\r\n });\r\n }\r\n renderer = inject(Renderer2);\r\n portalOutlet = viewChild.required(CdkPortalOutlet);\r\n dragRef = viewChild.required(CdkDrag);\r\n handles = contentChildren(CdkDragHandle, { descendants: true });\r\n animationChanged = new EventEmitter<XDialogAnimationEvent>();\r\n option!: XDialogRefOption;\r\n dialogRef!: XDialogRef<any>;\r\n\r\n offsetLeft = 0;\r\n offsetTop = 0;\r\n minWidth = '0rem';\r\n minHeight = '0rem';\r\n initHeight = 0;\r\n initContentHeight = 0;\r\n dialogContent?: HTMLElement;\r\n defaultMaximize = false;\r\n overlayElement?: HTMLElement;\r\n hostElement?: HTMLElement;\r\n distance = { x: 0, y: 0 };\r\n\r\n dialogBox: { [key: string]: any } = {};\r\n\r\n ngOnInit() {\r\n this.dialogBox['draggable'] = this.defaultMaximize ? this.dialogBox['draggable'] : this.option.draggable;\r\n this.dialogBox['resizable'] = this.defaultMaximize ? this.dialogBox['resizable'] : this.option.resizable;\r\n }\r\n\r\n ngAfterViewInit() {\r\n if (this.dialogRef.dragHandleRefs.length === 0) {\r\n this.dialogBox['draggable'] = false;\r\n this.option.draggable = false;\r\n return;\r\n }\r\n for (let item of this.dialogRef.dragHandleRefs) {\r\n this.dragRef()._addHandle(new CdkDragHandle(item, this.dragRef()));\r\n }\r\n }\r\n\r\n attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T> {\r\n if (this.portalOutlet().hasAttached()) {\r\n throw Error('dialog portal has attached');\r\n }\r\n return this.portalOutlet().attachComponentPortal(portal);\r\n }\r\n attachTemplatePortal<C>(portal: TemplatePortal<C>): EmbeddedViewRef<C> {\r\n if (this.portalOutlet().hasAttached()) {\r\n throw Error('dialog portal has attached');\r\n }\r\n return this.portalOutlet().attachTemplatePortal(portal);\r\n }\r\n\r\n resizing(event: XResizableEvent) {\r\n const contentHeight = Number(this.initContentHeight) + Number(event.clientHeight) - Number(this.initHeight);\r\n this.renderer.setStyle(this.dialogContent, 'max-height', 'initial');\r\n this.renderer.setStyle(this.dialogContent, 'flex', 'initial');\r\n if (['top-start', 'top-end', 'bottom', 'top', 'bottom-start', 'bottom-end'].includes(event.direction as string)) {\r\n this.renderer.setStyle(this.dialogContent, 'height', `${contentHeight}px`);\r\n }\r\n }\r\n\r\n onDragEnded(event: CdkDragEnd) {\r\n this.distance = {\r\n x: this.distance.x + event.distance.x,\r\n y: this.distance.y + event.distance.y\r\n };\r\n }\r\n}\r\n","<div\r\n class=\"x-dialog-portal\"\r\n #dragRef\r\n cdkDrag\r\n [cdkDragDisabled]=\"!option.draggable && !dialogBox['draggable']\"\r\n [cdkDragBoundary]=\"'.cdk-overlay-container'\"\r\n [cdkDragFreeDragPosition]=\"dialogBox['distance']\"\r\n [xResizable]=\"option.resizable && dialogBox['resizable']!\"\r\n (resizing)=\"resizing($event)\"\r\n (cdkDragEnded)=\"onDragEnded($event)\"\r\n [offsetLeft]=\"offsetLeft\"\r\n [offsetTop]=\"offsetTop\"\r\n [style.minWidth]=\"dialogBox['minWidth']\"\r\n [style.minHeight]=\"dialogBox['minHeight']\"\r\n [style.maxWidth]=\"dialogBox['maxWidth']\"\r\n [style.maxHeight]=\"dialogBox['maxHeight']\"\r\n>\r\n <ng-template cdkPortalOutlet></ng-template>\r\n</div>\r\n","import { OverlayRef } from '@angular/cdk/overlay';\r\nimport { ElementRef, Renderer2 } from '@angular/core';\r\nimport { Subject, filter, take } from 'rxjs';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport { XDialogRefOption } from './dialog.property';\r\n\r\n// TODO: add more function\r\nexport class XDialogRef<C> {\r\n componentInstance!: C;\r\n option!: XDialogRefOption;\r\n fullscreen = false;\r\n dragHandleRefs: ElementRef<HTMLElement>[] = [];\r\n afterClose = new Subject<any>();\r\n private _isFristFullscreen = true;\r\n\r\n constructor(\r\n public overlayRef: OverlayRef,\r\n public containerInstance: XDialogPortalComponent,\r\n public renderer: Renderer2,\r\n public portalService: XPortalService\r\n ) {}\r\n\r\n close(result?: any) {\r\n this.containerInstance.animationChanged\r\n .pipe(\r\n filter((event) => event.state === 'void' && event.action === 'done'),\r\n take(1)\r\n )\r\n .subscribe(() => {\r\n this.overlayRef.detach();\r\n this.afterClose.next(result);\r\n });\r\n this.containerInstance.placement = 'void';\r\n }\r\n\r\n onFullscreen() {\r\n let { dialogBox, dialogRef, overlayElement, distance, hostElement, defaultMaximize } = this.containerInstance;\r\n if (!dialogRef.fullscreen) {\r\n dialogRef.overlayRef.updateSize({\r\n width: '100%',\r\n height: '100%',\r\n minWidth: '100%',\r\n minHeight: '100%'\r\n });\r\n dialogRef.fullscreen = true;\r\n dialogBox['minWidth'] = '100%';\r\n dialogBox['minHeight'] = '100%';\r\n dialogBox['draggable'] = false;\r\n dialogBox['resizable'] = false;\r\n if (this.option.resizable) {\r\n this.renderer.setStyle(overlayElement, 'margin', '0 0 0 0');\r\n }\r\n if (this.option.draggable) {\r\n dialogBox['distance'] = { x: 0, y: 0 };\r\n }\r\n this.renderer.addClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n } else {\r\n dialogBox['minWidth'] = this.option.minWidth;\r\n dialogBox['minHeight'] = this.option.minHeight;\r\n if (this._isFristFullscreen && defaultMaximize) {\r\n this.option.draggable = dialogBox['draggable'];\r\n this.option.resizable = dialogBox['resizable'];\r\n } else {\r\n dialogBox['draggable'] = this.option.draggable;\r\n dialogBox['resizable'] = this.option.resizable;\r\n }\r\n\r\n dialogRef.overlayRef?.updateSize({\r\n width: dialogBox['width'],\r\n height: dialogBox['height'],\r\n minWidth: dialogBox['minWidth'],\r\n minHeight: dialogBox['minHeight']\r\n });\r\n dialogRef.fullscreen = false;\r\n if (this.option.draggable) {\r\n dialogBox['distance'] = { ...distance };\r\n }\r\n if (this.option.resizable) {\r\n if (dialogBox['marginTop']) {\r\n this.renderer.setStyle(overlayElement, 'margin-top', `${dialogBox['marginTop']}`);\r\n }\r\n if (dialogBox['marginLeft']) {\r\n this.renderer.setStyle(overlayElement, 'margin-left', `${dialogBox['marginLeft']}`);\r\n }\r\n if (dialogBox['marginRight']) {\r\n this.renderer.setStyle(overlayElement, 'margin-right', `${dialogBox['marginRight']}`);\r\n }\r\n if (dialogBox['marginBottom']) {\r\n this.renderer.setStyle(overlayElement, 'margin-bottom', `${dialogBox['marginBottom']}`);\r\n }\r\n }\r\n this.renderer.removeClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n if (this._isFristFullscreen && defaultMaximize) {\r\n dialogRef.overlayRef?.updatePositionStrategy(\r\n this.portalService.setPlace(this.option.placement, this.option.offset!)\r\n );\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(dialogBox, this.portalService.setResizable(overlayElement!, this.option.placement));\r\n this.containerInstance.offsetLeft = overlayElement!.offsetLeft;\r\n this.containerInstance.offsetTop = overlayElement!.offsetTop;\r\n const dialogDraggable = overlayElement?.querySelector('.x-dialog-portal')!;\r\n this.containerInstance.initHeight = dialogDraggable.clientHeight;\r\n this.containerInstance.dialogContent = overlayElement?.querySelector('.x-dialog-portal-content')!;\r\n this.containerInstance.initContentHeight = this.containerInstance.dialogContent?.clientHeight;\r\n this.containerInstance.dialogBox = dialogBox;\r\n });\r\n }\r\n }\r\n this._isFristFullscreen = false;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostBinding, HostListener, inject } from '@angular/core';\r\nimport { XDialogRef } from './dialog-ref';\r\n\r\n@Directive({\r\n selector: `[x-dialog-close]`,\r\n standalone: true\r\n})\r\nexport class XDialogCloseDirective {\r\n @HostListener('click', ['$event']) onCloseClick() {\r\n this.dialogRef && this.dialogRef.close();\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-title], x-dialog-title`,\r\n standalone: true\r\n})\r\nexport class XDialogTitleDirective {\r\n @HostBinding('class.x-dialog-portal-title') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-content], x-dialog-content`,\r\n standalone: true\r\n})\r\nexport class XDialogContentDirective {\r\n @HostBinding('class.x-dialog-portal-content') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-actions], x-dialog-actions`,\r\n standalone: true\r\n})\r\nexport class XDialogActionsDirective {\r\n @HostBinding('class.x-dialog-portal-actions') _has = true;\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-drag-handle], x-dialog-drag-handle`,\r\n standalone: true\r\n})\r\nexport class XDialogDragHandleDirective {\r\n @HostBinding('class.x-dialog-portal-drag-handle') get getDraggable() {\r\n return !this.dialogRef?.fullscreen && this.dialogRef?.option.draggable;\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n private elementRef = inject(ElementRef);\r\n\r\n ngOnInit() {\r\n this.dialogRef?.dragHandleRefs.push(this.elementRef);\r\n }\r\n}\r\n\r\n@Directive({\r\n selector: `[x-dialog-fullscreen], x-dialog-fullscreen`,\r\n standalone: true\r\n})\r\nexport class XDialogFullscreenDirective {\r\n @HostListener('click', ['$event']) onFullscreenClick() {\r\n this.dialogRef && this.dialogRef.onFullscreen();\r\n }\r\n dialogRef = inject(XDialogRef<any>, { optional: true });\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XDialogComponent } from './dialog.component';\r\nimport {\r\n XDialogActionsDirective,\r\n XDialogCloseDirective,\r\n XDialogContentDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective,\r\n XDialogTitleDirective\r\n} from './dialog-portal.directives';\r\nimport { XDialogContainerComponent } from './dialog-container.component';\r\n\r\n@NgModule({\r\n exports: [\r\n XDialogComponent,\r\n XDialogContainerComponent,\r\n XDialogCloseDirective,\r\n XDialogTitleDirective,\r\n XDialogContentDirective,\r\n XDialogActionsDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective\r\n ],\r\n imports: [\r\n XDialogComponent,\r\n XDialogContainerComponent,\r\n XDialogCloseDirective,\r\n XDialogTitleDirective,\r\n XDialogContentDirective,\r\n XDialogActionsDirective,\r\n XDialogDragHandleDirective,\r\n XDialogFullscreenDirective\r\n ]\r\n})\r\nexport class XDialogModule {}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal, ComponentType, TemplatePortal } from '@angular/cdk/portal';\r\nimport { Injectable, RendererFactory2, TemplateRef, inject } from '@angular/core';\r\nimport { XFillDefault, XConfigService, XDialogConfig } from '@ng-nest/ui/core';\r\nimport { XPortalResizablePrefix, XPortalService } from '@ng-nest/ui/portal';\r\nimport { XDialogPortalComponent } from './dialog-portal.component';\r\nimport { XDialogRef } from './dialog-ref';\r\nimport { XDialogRefOption, X_DIALOG_CONFIG_NAME, X_DIALOG_DATA } from './dialog.property';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class XDialogService {\r\n default: XDialogRefOption = {\r\n placement: 'center',\r\n offset: '1rem',\r\n width: '32rem',\r\n minWidth: '18rem',\r\n minHeight: '8rem',\r\n backdropClose: true,\r\n hasBackdrop: true,\r\n draggable: false,\r\n resizable: false\r\n };\r\n configDefault?: XDialogConfig;\r\n\r\n private portalService = inject(XPortalService);\r\n private configService = inject(XConfigService);\r\n private overlay = inject(Overlay);\r\n private rendererFactory = inject(RendererFactory2);\r\n private renderer = this.rendererFactory.createRenderer(null, null);\r\n\r\n constructor() {\r\n this.configDefault = this.configService.getConfigForComponent(X_DIALOG_CONFIG_NAME);\r\n Object.assign(this.default, this.configDefault);\r\n }\r\n\r\n create<T>(content: TemplateRef<any> | ComponentType<T>, option: XDialogRefOption = {}): XDialogRef<T> {\r\n XFillDefault(option, this.default);\r\n const portal = this.portalService.attach<XDialogPortalComponent>({\r\n content: XDialogPortalComponent,\r\n viewContainerRef: option.viewContainerRef,\r\n overlayConfig: {\r\n hasBackdrop: option.hasBackdrop,\r\n panelClass: option.className,\r\n scrollStrategy: this.overlay.scrollStrategies.block(),\r\n width: option.width,\r\n height: option.height,\r\n minWidth: option.minWidth,\r\n minHeight: option.minHeight,\r\n positionStrategy: this.portalService.setPlace(option.placement, option.offset!)\r\n }\r\n });\r\n\r\n const { overlayRef, componentRef } = portal || {};\r\n const { instance } = componentRef! || {};\r\n const { hostElement, overlayElement } = overlayRef || {};\r\n const dialogRef = new XDialogRef<T>(overlayRef!, instance, this.renderer, this.portalService);\r\n let dialogBox = {\r\n draggable: option.draggable,\r\n resizable: option.resizable\r\n };\r\n let defaultMaximize = this.setMaximize(option);\r\n Object.assign(dialogBox, {\r\n width: defaultMaximize ? this.default.width : option.width,\r\n height: defaultMaximize ? null : option.height,\r\n minWidth: option.minWidth,\r\n minHeight: option.minHeight\r\n });\r\n instance.placement = option.placement;\r\n instance.option = option;\r\n instance.dialogRef = dialogRef;\r\n instance.defaultMaximize = defaultMaximize;\r\n instance.dialogBox = dialogBox;\r\n instance.hostElement = hostElement;\r\n instance.overlayElement = overlayElement;\r\n dialogRef.option = option;\r\n dialogRef.fullscreen = defaultMaximize;\r\n if (option.resizable && !defaultMaximize) {\r\n this.renderer.addClass(hostElement, XPortalResizablePrefix);\r\n setTimeout(() => {\r\n Object.assign(dialogBox, this.portalService.setResizable(overlayElement!, option.placement));\r\n instance.offsetLeft = overlayElement!.offsetLeft;\r\n instance.offsetTop = overlayElement!.offsetTop;\r\n const dialogDraggable = overlayElement?.querySelector('.x-dialog-portal')!;\r\n instance.initHeight = dialogDraggable.clientHeight;\r\n instance.dialogContent = overlayElement?.querySelector('.x-dialog-portal-content')!;\r\n instance.initContentHeight = instance.dialogContent?.clientHeight;\r\n instance.dialogBox = dialogBox;\r\n });\r\n }\r\n if (defaultMaximize) {\r\n this.renderer.addClass(overlayElement, 'x-dialog-portal-fullscreen');\r\n }\r\n if (content instanceof TemplateRef) {\r\n instance.attachTemplatePortal(\r\n new TemplatePortal(content, option.viewContainerRef!, { $implicit: option.data, dialogRef: dialogRef })\r\n );\r\n } else {\r\n const injector = this.portalService.createInjector([\r\n { provide: X_DIALOG_DATA, useValue: option.data },\r\n { provide: XDialogRef, useValue: dialogRef }\r\n ]);\r\n const comRef = instance.attachComponentPortal(new ComponentPortal(content, option.viewContainerRef, injector));\r\n dialogRef.componentInstance = comRef.instance;\r\n }\r\n\r\n if (option.hasBackdrop && option.backdropClose && overlayRef) {\r\n overlayRef.backdropClick().subscribe(() => {\r\n dialogRef.close();\r\n });\r\n }\r\n\r\n return dialogRef;\r\n }\r\n\r\n private setMaximize(option: XDialogRefOption = {}) {\r\n const ws = ['100%', '100vw'];\r\n const hs = ['100%', '100vh'];\r\n if (ws.includes(option.width as string) && hs.includes(option.height as string)) {\r\n option.resizable = false;\r\n option.draggable = false;\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -12,23 +12,23 @@ class XDocComponent {
12
12
  constructor() {
13
13
  this.className = XDocPrefix;
14
14
  }
15
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDocComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.6", type: XDocComponent, isStandalone: true, selector: "x-doc", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-doc{margin:0;padding:0;padding:0 3rem;display:block;font-size:var(--x-font-size)}.x-doc>x-anchor>.x-anchor{justify-content:center}.x-doc>x-anchor>.x-anchor>.x-anchor-content{width:calc(100% - 15rem);max-width:55rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h1{font-size:1.5rem;font-weight:500;margin:2.25rem 0 1rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h2{font-size:1.375rem;font-weight:500;margin:2rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h3{font-size:1.125rem;font-weight:500;margin:1.5rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h4{font-size:1rem;font-weight:500;margin:1.125rem 0 var(--x-font-size);clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h5{font-size:var(--x-font-size);font-weight:500;margin:1rem 0 .625rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p{font-weight:400;margin:var(--x-font-size) 0 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul{margin:var(--x-font-size) 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul>li{list-style-type:circle;margin-left:1.25rem;line-height:1.75rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote{margin:0;position:relative;padding:1rem 1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote>p{margin:0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>blockquote{margin-top:var(--x-font-size);background-color:var(--x-background-a100);border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border);color:var(--x-text-400)}.x-doc>x-anchor>.x-anchor>.x-anchor-content li>code,.x-doc>x-anchor>.x-anchor>.x-anchor-content p>code{position:relative;padding:0 .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius);display:inline-block}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p>x-tree-file{font-family:Segoe WPC,Segoe UI,Microsoft YaHei,sans-serif}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre{display:flex;overflow:auto;width:100%}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-text-300);color:var(--x-background-100);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-text-300);text-shadow:none}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-text-300)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-primary-900);color:var(--x-primary);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-primary-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-primary)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-success-900);color:var(--x-success);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-success-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-success)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-danger-900);color:var(--x-danger);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-danger-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-danger)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-warning-900);color:var(--x-warning);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-warning-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-warning)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-info-900);color:var(--x-info);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-info-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-info)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>th,.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr th{white-space:nowrap;color:var(--x-text)}.x-doc>x-anchor>.x-anchor>.x-anchor-affix{padding-left:1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-affix .x-link>span{width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
15
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDocComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: XDocComponent, isStandalone: true, selector: "x-doc", host: { properties: { "class": "this.className" } }, ngImport: i0, template: "<ng-content></ng-content>\r\n", styles: [".x-doc{margin:0;padding:0}.x-doc{padding:0 3rem;display:block;font-size:var(--x-font-size)}.x-doc>x-anchor>.x-anchor{justify-content:center}.x-doc>x-anchor>.x-anchor>.x-anchor-content{width:calc(100% - 15rem);max-width:55rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h1{font-size:1.5rem;font-weight:500;margin:2.25rem 0 1rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h2{font-size:1.375rem;font-weight:500;margin:2rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h3{font-size:1.125rem;font-weight:500;margin:1.5rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h4{font-size:1rem;font-weight:500;margin:1.125rem 0 var(--x-font-size);clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h5{font-size:var(--x-font-size);font-weight:500;margin:1rem 0 .625rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p{font-weight:400;margin:var(--x-font-size) 0 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul{margin:var(--x-font-size) 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul>li{list-style-type:circle;margin-left:1.25rem;line-height:1.75rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote{margin:0;position:relative;padding:1rem 1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote>p{margin:0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>blockquote{margin-top:var(--x-font-size);background-color:var(--x-background-a100);border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border);color:var(--x-text-400)}.x-doc>x-anchor>.x-anchor>.x-anchor-content li>code,.x-doc>x-anchor>.x-anchor>.x-anchor-content p>code{position:relative;padding:0 .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius);display:inline-block}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p>x-tree-file{font-family:Segoe WPC,Segoe UI,Microsoft YaHei,sans-serif}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre{display:flex;overflow:auto;width:100%}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-text-300);color:var(--x-background-100);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-text-300);text-shadow:none}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-text-300)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-primary-900);color:var(--x-primary);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-primary-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-primary)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-success-900);color:var(--x-success);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-success-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-success)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-danger-900);color:var(--x-danger);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-danger-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-danger)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-warning-900);color:var(--x-warning);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-warning-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-warning)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-info-900);color:var(--x-info);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-info-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-info)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>th,.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr th{white-space:nowrap;color:var(--x-text)}.x-doc>x-anchor>.x-anchor>.x-anchor-affix{padding-left:1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-affix .x-link>span{width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDocComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDocComponent, decorators: [{
19
19
  type: Component,
20
- args: [{ selector: XDocPrefix, standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-doc{margin:0;padding:0;padding:0 3rem;display:block;font-size:var(--x-font-size)}.x-doc>x-anchor>.x-anchor{justify-content:center}.x-doc>x-anchor>.x-anchor>.x-anchor-content{width:calc(100% - 15rem);max-width:55rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h1{font-size:1.5rem;font-weight:500;margin:2.25rem 0 1rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h2{font-size:1.375rem;font-weight:500;margin:2rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h3{font-size:1.125rem;font-weight:500;margin:1.5rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h4{font-size:1rem;font-weight:500;margin:1.125rem 0 var(--x-font-size);clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h5{font-size:var(--x-font-size);font-weight:500;margin:1rem 0 .625rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p{font-weight:400;margin:var(--x-font-size) 0 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul{margin:var(--x-font-size) 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul>li{list-style-type:circle;margin-left:1.25rem;line-height:1.75rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote{margin:0;position:relative;padding:1rem 1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote>p{margin:0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>blockquote{margin-top:var(--x-font-size);background-color:var(--x-background-a100);border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border);color:var(--x-text-400)}.x-doc>x-anchor>.x-anchor>.x-anchor-content li>code,.x-doc>x-anchor>.x-anchor>.x-anchor-content p>code{position:relative;padding:0 .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius);display:inline-block}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p>x-tree-file{font-family:Segoe WPC,Segoe UI,Microsoft YaHei,sans-serif}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre{display:flex;overflow:auto;width:100%}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-text-300);color:var(--x-background-100);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-text-300);text-shadow:none}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-text-300)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-primary-900);color:var(--x-primary);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-primary-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-primary)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-success-900);color:var(--x-success);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-success-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-success)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-danger-900);color:var(--x-danger);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-danger-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-danger)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-warning-900);color:var(--x-warning);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-warning-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-warning)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-info-900);color:var(--x-info);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-info-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-info)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>th,.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr th{white-space:nowrap;color:var(--x-text)}.x-doc>x-anchor>.x-anchor>.x-anchor-affix{padding-left:1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-affix .x-link>span{width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
20
+ args: [{ selector: XDocPrefix, standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\r\n", styles: [".x-doc{margin:0;padding:0}.x-doc{padding:0 3rem;display:block;font-size:var(--x-font-size)}.x-doc>x-anchor>.x-anchor{justify-content:center}.x-doc>x-anchor>.x-anchor>.x-anchor-content{width:calc(100% - 15rem);max-width:55rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h1{font-size:1.5rem;font-weight:500;margin:2.25rem 0 1rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content h2{font-size:1.375rem;font-weight:500;margin:2rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h3{font-size:1.125rem;font-weight:500;margin:1.5rem 0 1rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h4{font-size:1rem;font-weight:500;margin:1.125rem 0 var(--x-font-size);clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content h5{font-size:var(--x-font-size);font-weight:500;margin:1rem 0 .625rem;clear:both}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p{font-weight:400;margin:var(--x-font-size) 0 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul{margin:var(--x-font-size) 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>ul>li{list-style-type:circle;margin-left:1.25rem;line-height:1.75rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote{margin:0;position:relative;padding:1rem 1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-content blockquote>p{margin:0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>blockquote{margin-top:var(--x-font-size);background-color:var(--x-background-a100);border-radius:var(--x-border-radius);border:var(--x-border-width) var(--x-border-style) var(--x-border);color:var(--x-text-400)}.x-doc>x-anchor>.x-anchor>.x-anchor-content li>code,.x-doc>x-anchor>.x-anchor>.x-anchor-content p>code{position:relative;padding:0 .5rem;color:var(--x-danger);background:var(--x-danger-900);border-radius:var(--x-border-small-radius);display:inline-block}.x-doc>x-anchor>.x-anchor>.x-anchor-content>p>x-tree-file{font-family:Segoe WPC,Segoe UI,Microsoft YaHei,sans-serif}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre{display:flex;overflow:auto;width:100%}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-text-300);color:var(--x-background-100);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-text-300);text-shadow:none}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-bash:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-text-300)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-primary-900);color:var(--x-primary);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-primary-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-primary:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-primary)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-success-900);color:var(--x-success);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-success-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-success:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-success)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-danger-900);color:var(--x-danger);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-danger-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-danger:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-danger)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-warning-900);color:var(--x-warning);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-warning-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-warning:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-warning)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info{flex:1;position:relative;border-radius:var(--x-border-radius);padding:var(--x-font-size) 1rem;background-color:var(--x-info-900);color:var(--x-info);border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:var(--x-info-800);text-shadow:none;padding:.5rem .5rem .5rem var(--x-font-size);white-space:normal;font-family:var(--x-font-family)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>pre code.language-info:before{content:\" \";position:absolute;top:calc(var(--x-border-width) * -1);left:calc(var(--x-border-width) * -1);height:calc(100% + var(--x-border-width) * 2);width:.25rem;border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius);background-color:var(--x-info)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table{width:100%;background:var(--x-background);border-collapse:collapse;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>th,.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr>td{border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left;padding:.5rem 0}.x-doc>x-anchor>.x-anchor>.x-anchor-content>table tr th{white-space:nowrap;color:var(--x-text)}.x-doc>x-anchor>.x-anchor>.x-anchor-affix{padding-left:1.5rem}.x-doc>x-anchor>.x-anchor>.x-anchor-affix .x-link>span{width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
21
21
  }], propDecorators: { className: [{
22
22
  type: HostBinding,
23
23
  args: ['class']
24
24
  }] } });
25
25
 
26
26
  class XDocModule {
27
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDocModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: XDocModule, imports: [XDocComponent], exports: [XDocComponent] }); }
29
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDocModule }); }
27
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDocModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XDocModule, imports: [XDocComponent], exports: [XDocComponent] }); }
29
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDocModule }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDocModule, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDocModule, decorators: [{
32
32
  type: NgModule,
33
33
  args: [{
34
34
  exports: [XDocComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-doc.mjs","sources":["../../../../lib/ng-nest/ui/doc/doc.property.ts","../../../../lib/ng-nest/ui/doc/doc.component.ts","../../../../lib/ng-nest/ui/doc/doc.component.html","../../../../lib/ng-nest/ui/doc/doc.module.ts","../../../../lib/ng-nest/ui/doc/ng-nest-ui-doc.ts"],"sourcesContent":["/**\r\n * Doc\r\n * @selector x-doc\r\n * @decorator component\r\n */\r\nexport const XDocPrefix = 'x-doc';\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\r\nimport { XDocPrefix } from './doc.property';\r\n\r\n@Component({\r\n selector: XDocPrefix,\r\n standalone: true,\r\n templateUrl: './doc.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XDocComponent {\r\n @HostBinding('class') className = XDocPrefix;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XDocComponent } from './doc.component';\r\n\r\n@NgModule({\r\n exports: [XDocComponent],\r\n imports: [XDocComponent]\r\n})\r\nexport class XDocModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAA;;;;AAIG;AACI,MAAM,UAAU,GAAG;;MCMb,aAAa,CAAA;AAR1B,IAAA,WAAA,GAAA;QASwB,IAAS,CAAA,SAAA,GAAG,UAAU,CAAC;AAC9C,KAAA;iIAFY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAb,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,sHCX1B,+BACA,EAAA,MAAA,EAAA,CAAA,suOAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDUa,aAAa,EAAA,UAAA,EAAA,CAAA;kBARzB,SAAS;+BACE,UAAU,EAAA,UAAA,EACR,IAAI,EAGD,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,suOAAA,CAAA,EAAA,CAAA;8BAGzB,SAAS,EAAA,CAAA;sBAA9B,WAAW;uBAAC,OAAO,CAAA;;;MELT,UAAU,CAAA;iIAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;kIAAV,UAAU,EAAA,OAAA,EAAA,CAFX,aAAa,CAAA,EAAA,OAAA,EAAA,CADb,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;kIAGZ,UAAU,EAAA,CAAA,CAAA,EAAA;;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAJtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;oBACxB,OAAO,EAAE,CAAC,aAAa,CAAC;AACzB,iBAAA,CAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-nest-ui-doc.mjs","sources":["../../../../lib/ng-nest/ui/doc/doc.property.ts","../../../../lib/ng-nest/ui/doc/doc.component.ts","../../../../lib/ng-nest/ui/doc/doc.component.html","../../../../lib/ng-nest/ui/doc/doc.module.ts","../../../../lib/ng-nest/ui/doc/ng-nest-ui-doc.ts"],"sourcesContent":["/**\r\n * Doc\r\n * @selector x-doc\r\n * @decorator component\r\n */\r\nexport const XDocPrefix = 'x-doc';\r\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding } from '@angular/core';\r\nimport { XDocPrefix } from './doc.property';\r\n\r\n@Component({\r\n selector: XDocPrefix,\r\n standalone: true,\r\n templateUrl: './doc.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XDocComponent {\r\n @HostBinding('class') className = XDocPrefix;\r\n}\r\n","<ng-content></ng-content>\r\n","import { NgModule } from '@angular/core';\r\nimport { XDocComponent } from './doc.component';\r\n\r\n@NgModule({\r\n exports: [XDocComponent],\r\n imports: [XDocComponent]\r\n})\r\nexport class XDocModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAA;;;;AAIG;AACI,MAAM,UAAU,GAAG;;MCMb,aAAa,CAAA;AAR1B,IAAA,WAAA,GAAA;QASwB,IAAS,CAAA,SAAA,GAAG,UAAU,CAAC;AAC9C,KAAA;iIAFY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAb,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,sHCX1B,+BACA,EAAA,MAAA,EAAA,CAAA,6uOAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDUa,aAAa,EAAA,UAAA,EAAA,CAAA;kBARzB,SAAS;+BACE,UAAU,EAAA,UAAA,EACR,IAAI,EAGD,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,6uOAAA,CAAA,EAAA,CAAA;8BAGzB,SAAS,EAAA,CAAA;sBAA9B,WAAW;uBAAC,OAAO,CAAA;;;MELT,UAAU,CAAA;iIAAV,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;kIAAV,UAAU,EAAA,OAAA,EAAA,CAFX,aAAa,CAAA,EAAA,OAAA,EAAA,CADb,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;kIAGZ,UAAU,EAAA,CAAA,CAAA,EAAA;;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAJtB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,aAAa,CAAC;oBACxB,OAAO,EAAE,CAAC,aAAa,CAAC;AACzB,iBAAA,CAAA;;;ACND;;AAEG;;;;"}
@@ -19,10 +19,10 @@ class XDragProperty {
19
19
  this.dragMoved = output();
20
20
  this.dragEnded = output();
21
21
  }
22
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragProperty, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.6", type: XDragProperty, selector: "[x-drag]", outputs: { dragStarted: "dragStarted", dragMoved: "dragMoved", dragEnded: "dragEnded" }, ngImport: i0 }); }
22
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragProperty, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: XDragProperty, selector: "[x-drag]", outputs: { dragStarted: "dragStarted", dragMoved: "dragMoved", dragEnded: "dragEnded" }, ngImport: i0 }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragProperty, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragProperty, decorators: [{
26
26
  type: Directive,
27
27
  args: [{ selector: '[x-drag]' }]
28
28
  }] });
@@ -70,20 +70,20 @@ class XDragDirective extends XDragProperty {
70
70
  this.unSubject.next();
71
71
  this.unSubject.complete();
72
72
  }
73
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
74
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.6", type: XDragDirective, isStandalone: true, selector: "[x-drag]", usesInheritance: true, ngImport: i0 }); }
73
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
74
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.2", type: XDragDirective, isStandalone: true, selector: "[x-drag]", usesInheritance: true, ngImport: i0 }); }
75
75
  }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragDirective, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragDirective, decorators: [{
77
77
  type: Directive,
78
78
  args: [{ selector: '[x-drag]', standalone: true }]
79
79
  }] });
80
80
 
81
81
  class XDragModule {
82
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: XDragModule, imports: [XDragDirective], exports: [XDragDirective] }); }
84
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragModule }); }
82
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
83
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XDragModule, imports: [XDragDirective], exports: [XDragDirective] }); }
84
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragModule }); }
85
85
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XDragModule, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XDragModule, decorators: [{
87
87
  type: NgModule,
88
88
  args: [{
89
89
  exports: [XDragDirective],