@ng-nest/ui 12.0.7 → 12.1.0

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 (810) hide show
  1. package/auto-complete/auto-complete-portal.component.d.ts +3 -3
  2. package/auto-complete/auto-complete.component.d.ts +5 -1
  3. package/auto-complete/auto-complete.property.d.ts +6 -1
  4. package/back-top/back-top.component.d.ts +1 -2
  5. package/base-form/base-form.component.d.ts +1 -1
  6. package/base-form/base-form.property.d.ts +22 -2
  7. package/bundles/ng-nest-ui-affix.umd.js +25 -21
  8. package/bundles/ng-nest-ui-affix.umd.js.map +1 -1
  9. package/bundles/ng-nest-ui-alert.umd.js +25 -21
  10. package/bundles/ng-nest-ui-alert.umd.js.map +1 -1
  11. package/bundles/ng-nest-ui-anchor.umd.js +26 -22
  12. package/bundles/ng-nest-ui-anchor.umd.js.map +1 -1
  13. package/bundles/ng-nest-ui-api.umd.js +12 -14
  14. package/bundles/ng-nest-ui-api.umd.js.map +1 -1
  15. package/bundles/ng-nest-ui-auto-complete.umd.js +52 -29
  16. package/bundles/ng-nest-ui-auto-complete.umd.js.map +1 -1
  17. package/bundles/ng-nest-ui-avatar.umd.js +25 -21
  18. package/bundles/ng-nest-ui-avatar.umd.js.map +1 -1
  19. package/bundles/ng-nest-ui-back-top.umd.js +27 -23
  20. package/bundles/ng-nest-ui-back-top.umd.js.map +1 -1
  21. package/bundles/ng-nest-ui-badge.umd.js +27 -22
  22. package/bundles/ng-nest-ui-badge.umd.js.map +1 -1
  23. package/bundles/ng-nest-ui-base-form.umd.js +50 -22
  24. package/bundles/ng-nest-ui-base-form.umd.js.map +1 -1
  25. package/bundles/ng-nest-ui-border.umd.js +12 -14
  26. package/bundles/ng-nest-ui-border.umd.js.map +1 -1
  27. package/bundles/ng-nest-ui-button.umd.js +35 -30
  28. package/bundles/ng-nest-ui-button.umd.js.map +1 -1
  29. package/bundles/ng-nest-ui-calendar.umd.js +29 -24
  30. package/bundles/ng-nest-ui-calendar.umd.js.map +1 -1
  31. package/bundles/ng-nest-ui-card.umd.js +25 -21
  32. package/bundles/ng-nest-ui-card.umd.js.map +1 -1
  33. package/bundles/ng-nest-ui-carousel.umd.js +44 -39
  34. package/bundles/ng-nest-ui-carousel.umd.js.map +1 -1
  35. package/bundles/ng-nest-ui-cascade.umd.js +78 -31
  36. package/bundles/ng-nest-ui-cascade.umd.js.map +1 -1
  37. package/bundles/ng-nest-ui-checkbox.umd.js +28 -23
  38. package/bundles/ng-nest-ui-checkbox.umd.js.map +1 -1
  39. package/bundles/ng-nest-ui-collapse.umd.js +31 -27
  40. package/bundles/ng-nest-ui-collapse.umd.js.map +1 -1
  41. package/bundles/ng-nest-ui-color-picker.umd.js +39 -32
  42. package/bundles/ng-nest-ui-color-picker.umd.js.map +1 -1
  43. package/bundles/ng-nest-ui-color.umd.js +26 -22
  44. package/bundles/ng-nest-ui-color.umd.js.map +1 -1
  45. package/bundles/ng-nest-ui-comment.umd.js +34 -29
  46. package/bundles/ng-nest-ui-comment.umd.js.map +1 -1
  47. package/bundles/ng-nest-ui-container.umd.js +46 -42
  48. package/bundles/ng-nest-ui-container.umd.js.map +1 -1
  49. package/bundles/ng-nest-ui-core.umd.js +136 -35
  50. package/bundles/ng-nest-ui-core.umd.js.map +1 -1
  51. package/bundles/ng-nest-ui-crumb.umd.js +28 -23
  52. package/bundles/ng-nest-ui-crumb.umd.js.map +1 -1
  53. package/bundles/ng-nest-ui-date-picker.umd.js +387 -242
  54. package/bundles/ng-nest-ui-date-picker.umd.js.map +1 -1
  55. package/bundles/ng-nest-ui-description.umd.js +35 -32
  56. package/bundles/ng-nest-ui-description.umd.js.map +1 -1
  57. package/bundles/ng-nest-ui-dialog.umd.js +305 -48
  58. package/bundles/ng-nest-ui-dialog.umd.js.map +1 -1
  59. package/bundles/ng-nest-ui-doc.umd.js +12 -14
  60. package/bundles/ng-nest-ui-doc.umd.js.map +1 -1
  61. package/bundles/ng-nest-ui-drawer.umd.js +266 -30
  62. package/bundles/ng-nest-ui-drawer.umd.js.map +1 -1
  63. package/bundles/ng-nest-ui-dropdown.umd.js +32 -27
  64. package/bundles/ng-nest-ui-dropdown.umd.js.map +1 -1
  65. package/bundles/ng-nest-ui-empty.umd.js +25 -21
  66. package/bundles/ng-nest-ui-empty.umd.js.map +1 -1
  67. package/bundles/ng-nest-ui-examples.umd.js +12 -14
  68. package/bundles/ng-nest-ui-examples.umd.js.map +1 -1
  69. package/bundles/ng-nest-ui-find.umd.js +31 -26
  70. package/bundles/ng-nest-ui-find.umd.js.map +1 -1
  71. package/bundles/ng-nest-ui-form.umd.js +36 -36
  72. package/bundles/ng-nest-ui-form.umd.js.map +1 -1
  73. package/bundles/ng-nest-ui-highlight.umd.js +27 -22
  74. package/bundles/ng-nest-ui-highlight.umd.js.map +1 -1
  75. package/bundles/ng-nest-ui-i18n.umd.js +537 -138
  76. package/bundles/ng-nest-ui-i18n.umd.js.map +1 -1
  77. package/bundles/ng-nest-ui-icon.umd.js +34 -29
  78. package/bundles/ng-nest-ui-icon.umd.js.map +1 -1
  79. package/bundles/ng-nest-ui-inner.umd.js +26 -22
  80. package/bundles/ng-nest-ui-inner.umd.js.map +1 -1
  81. package/bundles/ng-nest-ui-input-number.umd.js +25 -21
  82. package/bundles/ng-nest-ui-input-number.umd.js.map +1 -1
  83. package/bundles/ng-nest-ui-input.umd.js +64 -32
  84. package/bundles/ng-nest-ui-input.umd.js.map +1 -1
  85. package/bundles/ng-nest-ui-layout.umd.js +31 -27
  86. package/bundles/ng-nest-ui-layout.umd.js.map +1 -1
  87. package/bundles/ng-nest-ui-link.umd.js +25 -21
  88. package/bundles/ng-nest-ui-link.umd.js.map +1 -1
  89. package/bundles/ng-nest-ui-list.umd.js +35 -30
  90. package/bundles/ng-nest-ui-list.umd.js.map +1 -1
  91. package/bundles/ng-nest-ui-loading.umd.js +27 -22
  92. package/bundles/ng-nest-ui-loading.umd.js.map +1 -1
  93. package/bundles/ng-nest-ui-menu.umd.js +37 -33
  94. package/bundles/ng-nest-ui-menu.umd.js.map +1 -1
  95. package/bundles/ng-nest-ui-message-box.umd.js +53 -47
  96. package/bundles/ng-nest-ui-message-box.umd.js.map +1 -1
  97. package/bundles/ng-nest-ui-message.umd.js +29 -25
  98. package/bundles/ng-nest-ui-message.umd.js.map +1 -1
  99. package/bundles/ng-nest-ui-notification.umd.js +26 -22
  100. package/bundles/ng-nest-ui-notification.umd.js.map +1 -1
  101. package/bundles/ng-nest-ui-outlet.umd.js +22 -18
  102. package/bundles/ng-nest-ui-outlet.umd.js.map +1 -1
  103. package/bundles/ng-nest-ui-page-header.umd.js +25 -21
  104. package/bundles/ng-nest-ui-page-header.umd.js.map +1 -1
  105. package/bundles/ng-nest-ui-pagination.umd.js +115 -26
  106. package/bundles/ng-nest-ui-pagination.umd.js.map +1 -1
  107. package/bundles/ng-nest-ui-pattern.umd.js +12 -14
  108. package/bundles/ng-nest-ui-pattern.umd.js.map +1 -1
  109. package/bundles/ng-nest-ui-popconfirm.umd.js +25 -21
  110. package/bundles/ng-nest-ui-popconfirm.umd.js.map +1 -1
  111. package/bundles/ng-nest-ui-popover.umd.js +31 -26
  112. package/bundles/ng-nest-ui-popover.umd.js.map +1 -1
  113. package/bundles/ng-nest-ui-portal.umd.js +28 -24
  114. package/bundles/ng-nest-ui-portal.umd.js.map +1 -1
  115. package/bundles/ng-nest-ui-progress.umd.js +259 -39
  116. package/bundles/ng-nest-ui-progress.umd.js.map +1 -1
  117. package/bundles/ng-nest-ui-radio.umd.js +28 -23
  118. package/bundles/ng-nest-ui-radio.umd.js.map +1 -1
  119. package/bundles/ng-nest-ui-rate.umd.js +30 -26
  120. package/bundles/ng-nest-ui-rate.umd.js.map +1 -1
  121. package/bundles/ng-nest-ui-result.umd.js +25 -21
  122. package/bundles/ng-nest-ui-result.umd.js.map +1 -1
  123. package/bundles/ng-nest-ui-ripple.umd.js +25 -21
  124. package/bundles/ng-nest-ui-ripple.umd.js.map +1 -1
  125. package/bundles/ng-nest-ui-select.umd.js +53 -34
  126. package/bundles/ng-nest-ui-select.umd.js.map +1 -1
  127. package/bundles/ng-nest-ui-skeleton.umd.js +27 -22
  128. package/bundles/ng-nest-ui-skeleton.umd.js.map +1 -1
  129. package/bundles/ng-nest-ui-slider-select.umd.js +25 -21
  130. package/bundles/ng-nest-ui-slider-select.umd.js.map +1 -1
  131. package/bundles/ng-nest-ui-slider.umd.js +32 -29
  132. package/bundles/ng-nest-ui-slider.umd.js.map +1 -1
  133. package/bundles/ng-nest-ui-statistic.umd.js +37 -31
  134. package/bundles/ng-nest-ui-statistic.umd.js.map +1 -1
  135. package/bundles/ng-nest-ui-steps.umd.js +53 -33
  136. package/bundles/ng-nest-ui-steps.umd.js.map +1 -1
  137. package/bundles/ng-nest-ui-switch.umd.js +25 -21
  138. package/bundles/ng-nest-ui-switch.umd.js.map +1 -1
  139. package/bundles/ng-nest-ui-table.umd.js +58 -51
  140. package/bundles/ng-nest-ui-table.umd.js.map +1 -1
  141. package/bundles/ng-nest-ui-tabs.umd.js +39 -34
  142. package/bundles/ng-nest-ui-tabs.umd.js.map +1 -1
  143. package/bundles/ng-nest-ui-tag.umd.js +27 -22
  144. package/bundles/ng-nest-ui-tag.umd.js.map +1 -1
  145. package/bundles/ng-nest-ui-text-retract.umd.js +27 -22
  146. package/bundles/ng-nest-ui-text-retract.umd.js.map +1 -1
  147. package/bundles/ng-nest-ui-textarea.umd.js +27 -32
  148. package/bundles/ng-nest-ui-textarea.umd.js.map +1 -1
  149. package/bundles/ng-nest-ui-theme.umd.js +26 -22
  150. package/bundles/ng-nest-ui-theme.umd.js.map +1 -1
  151. package/bundles/ng-nest-ui-time-ago.umd.js +12 -14
  152. package/bundles/ng-nest-ui-time-ago.umd.js.map +1 -1
  153. package/bundles/ng-nest-ui-time-picker.umd.js +87 -46
  154. package/bundles/ng-nest-ui-time-picker.umd.js.map +1 -1
  155. package/bundles/ng-nest-ui-time-range.umd.js +22 -18
  156. package/bundles/ng-nest-ui-time-range.umd.js.map +1 -1
  157. package/bundles/ng-nest-ui-timeline.umd.js +28 -23
  158. package/bundles/ng-nest-ui-timeline.umd.js.map +1 -1
  159. package/bundles/ng-nest-ui-tooltip.umd.js +31 -26
  160. package/bundles/ng-nest-ui-tooltip.umd.js.map +1 -1
  161. package/bundles/ng-nest-ui-transfer.umd.js +28 -23
  162. package/bundles/ng-nest-ui-transfer.umd.js.map +1 -1
  163. package/bundles/ng-nest-ui-tree-file.umd.js +25 -21
  164. package/bundles/ng-nest-ui-tree-file.umd.js.map +1 -1
  165. package/bundles/ng-nest-ui-tree.umd.js +39 -34
  166. package/bundles/ng-nest-ui-tree.umd.js.map +1 -1
  167. package/bundles/ng-nest-ui-typography.umd.js +25 -21
  168. package/bundles/ng-nest-ui-typography.umd.js.map +1 -1
  169. package/bundles/ng-nest-ui-upload.umd.js +32 -27
  170. package/bundles/ng-nest-ui-upload.umd.js.map +1 -1
  171. package/bundles/ng-nest-ui.umd.js +83 -243
  172. package/bundles/ng-nest-ui.umd.js.map +1 -1
  173. package/button/buttons.component.d.ts +1 -1
  174. package/calendar/calendar.component.d.ts +2 -2
  175. package/carousel/carousel-panel.component.d.ts +2 -3
  176. package/carousel/carousel.component.d.ts +1 -1
  177. package/cascade/cascade-portal.component.d.ts +13 -7
  178. package/cascade/cascade.component.d.ts +7 -1
  179. package/cascade/cascade.property.d.ts +23 -3
  180. package/checkbox/checkbox.component.d.ts +1 -1
  181. package/color/color.component.d.ts +2 -2
  182. package/color-picker/color-picker-portal.component.d.ts +3 -3
  183. package/color-picker/color-picker.component.d.ts +2 -3
  184. package/comment/comment.component.d.ts +1 -1
  185. package/core/config/config.d.ts +18 -0
  186. package/core/functions/clone-deep.d.ts +1 -0
  187. package/core/functions/drop.d.ts +1 -0
  188. package/core/functions/flex.d.ts +1 -1
  189. package/core/functions/has-in.d.ts +1 -0
  190. package/core/functions/order-by.d.ts +1 -0
  191. package/core/functions/public-api.d.ts +5 -0
  192. package/core/functions/remove.d.ts +1 -0
  193. package/core/services/reuse-strategy.service.d.ts +1 -1
  194. package/crumb/crumb.component.d.ts +1 -1
  195. package/date-picker/date-picker-portal.component.d.ts +4 -11
  196. package/date-picker/date-picker.component.d.ts +3 -4
  197. package/date-picker/date-picker.property.d.ts +55 -20
  198. package/date-picker/date-range-portal.component.d.ts +10 -6
  199. package/date-picker/date-range.component.d.ts +15 -11
  200. package/date-picker/picker-date.component.d.ts +13 -4
  201. package/date-picker/picker-month.component.d.ts +6 -3
  202. package/date-picker/picker-year.component.d.ts +4 -2
  203. package/description/description.component.d.ts +2 -4
  204. package/dialog/dialog-container.component.d.ts +18 -0
  205. package/dialog/dialog-container.directives.d.ts +24 -0
  206. package/dialog/dialog-ref.d.ts +9 -0
  207. package/dialog/dialog.module.d.ts +13 -11
  208. package/dialog/dialog.property.d.ts +84 -6
  209. package/dialog/dialog.service.d.ts +19 -0
  210. package/dialog/public-api.d.ts +4 -0
  211. package/drawer/drawer-container.component.d.ts +18 -0
  212. package/drawer/drawer-container.directives.d.ts +19 -0
  213. package/drawer/drawer-ref.d.ts +9 -0
  214. package/drawer/drawer.module.d.ts +8 -6
  215. package/drawer/drawer.property.d.ts +83 -2
  216. package/drawer/drawer.service.d.ts +19 -0
  217. package/drawer/public-api.d.ts +5 -0
  218. package/dropdown/dropdown-portal.component.d.ts +1 -3
  219. package/dropdown/dropdown.component.d.ts +2 -2
  220. package/esm2015/affix/affix.component.js +3 -3
  221. package/esm2015/affix/affix.module.js +4 -4
  222. package/esm2015/affix/affix.property.js +3 -3
  223. package/esm2015/alert/alert.component.js +4 -4
  224. package/esm2015/alert/alert.module.js +4 -4
  225. package/esm2015/alert/alert.property.js +3 -3
  226. package/esm2015/anchor/anchor.component.js +5 -5
  227. package/esm2015/anchor/anchor.module.js +4 -4
  228. package/esm2015/anchor/anchor.property.js +4 -4
  229. package/esm2015/api/api.component.js +3 -3
  230. package/esm2015/api/api.module.js +4 -4
  231. package/esm2015/auto-complete/auto-complete-portal.component.js +6 -6
  232. package/esm2015/auto-complete/auto-complete.component.js +20 -7
  233. package/esm2015/auto-complete/auto-complete.module.js +4 -4
  234. package/esm2015/auto-complete/auto-complete.property.js +10 -4
  235. package/esm2015/avatar/avatar.component.js +3 -3
  236. package/esm2015/avatar/avatar.module.js +4 -4
  237. package/esm2015/avatar/avatar.property.js +3 -3
  238. package/esm2015/back-top/back-top.component.js +6 -6
  239. package/esm2015/back-top/back-top.module.js +4 -4
  240. package/esm2015/back-top/back-top.property.js +3 -3
  241. package/esm2015/badge/badge.component.js +6 -5
  242. package/esm2015/badge/badge.module.js +4 -4
  243. package/esm2015/badge/badge.property.js +3 -3
  244. package/esm2015/base-form/base-form.component.js +5 -5
  245. package/esm2015/base-form/base-form.module.js +4 -4
  246. package/esm2015/base-form/base-form.property.js +29 -5
  247. package/esm2015/border/border.component.js +3 -3
  248. package/esm2015/border/border.module.js +4 -4
  249. package/esm2015/button/button.component.js +8 -7
  250. package/esm2015/button/button.module.js +4 -4
  251. package/esm2015/button/button.property.js +6 -6
  252. package/esm2015/button/buttons.component.js +4 -4
  253. package/esm2015/calendar/calendar.component.js +8 -7
  254. package/esm2015/calendar/calendar.module.js +4 -4
  255. package/esm2015/calendar/calendar.property.js +3 -3
  256. package/esm2015/card/card.component.js +3 -3
  257. package/esm2015/card/card.module.js +4 -4
  258. package/esm2015/card/card.property.js +3 -3
  259. package/esm2015/carousel/carousel-panel.component.js +15 -14
  260. package/esm2015/carousel/carousel.component.js +7 -6
  261. package/esm2015/carousel/carousel.module.js +4 -4
  262. package/esm2015/carousel/carousel.property.js +6 -6
  263. package/esm2015/cascade/cascade-portal.component.js +23 -11
  264. package/esm2015/cascade/cascade.component.js +23 -6
  265. package/esm2015/cascade/cascade.module.js +4 -4
  266. package/esm2015/cascade/cascade.property.js +16 -4
  267. package/esm2015/checkbox/checkbox.component.js +7 -6
  268. package/esm2015/checkbox/checkbox.module.js +4 -4
  269. package/esm2015/checkbox/checkbox.property.js +4 -4
  270. package/esm2015/collapse/collapse-panel.component.js +4 -4
  271. package/esm2015/collapse/collapse.component.js +3 -3
  272. package/esm2015/collapse/collapse.module.js +4 -4
  273. package/esm2015/collapse/collapse.property.js +6 -6
  274. package/esm2015/color/color.component.js +5 -5
  275. package/esm2015/color/color.module.js +4 -4
  276. package/esm2015/color/color.property.js +3 -3
  277. package/esm2015/color-picker/color-picker-portal.component.js +5 -5
  278. package/esm2015/color-picker/color-picker.component.js +14 -11
  279. package/esm2015/color-picker/color-picker.module.js +4 -4
  280. package/esm2015/color-picker/color-picker.property.js +3 -3
  281. package/esm2015/comment/comment-reply.component.js +3 -3
  282. package/esm2015/comment/comment.component.js +7 -6
  283. package/esm2015/comment/comment.module.js +4 -4
  284. package/esm2015/comment/comment.property.js +6 -6
  285. package/esm2015/container/aside.component.js +3 -3
  286. package/esm2015/container/container.component.js +5 -5
  287. package/esm2015/container/container.module.js +4 -4
  288. package/esm2015/container/container.property.js +12 -12
  289. package/esm2015/container/footer.component.js +3 -3
  290. package/esm2015/container/header.component.js +3 -3
  291. package/esm2015/container/main.component.js +3 -3
  292. package/esm2015/core/animation/fade.js +1 -1
  293. package/esm2015/core/config/config.js +1 -1
  294. package/esm2015/core/config/config.service.js +3 -3
  295. package/esm2015/core/functions/clone-deep.js +12 -0
  296. package/esm2015/core/functions/drop.js +8 -0
  297. package/esm2015/core/functions/flex.js +18 -7
  298. package/esm2015/core/functions/has-in.js +4 -0
  299. package/esm2015/core/functions/order-by.js +31 -0
  300. package/esm2015/core/functions/public-api.js +6 -1
  301. package/esm2015/core/functions/remove.js +15 -0
  302. package/esm2015/core/services/http.service.js +5 -5
  303. package/esm2015/core/services/preloading-strategy.service.js +5 -5
  304. package/esm2015/core/services/reuse-strategy.service.js +2 -2
  305. package/esm2015/core/services/storage.service.js +3 -3
  306. package/esm2015/core/theme/theme.service.js +3 -3
  307. package/esm2015/crumb/crumb.component.js +7 -6
  308. package/esm2015/crumb/crumb.module.js +4 -4
  309. package/esm2015/crumb/crumb.property.js +3 -3
  310. package/esm2015/date-picker/date-picker-portal.component.js +11 -43
  311. package/esm2015/date-picker/date-picker.component.js +13 -14
  312. package/esm2015/date-picker/date-picker.module.js +4 -4
  313. package/esm2015/date-picker/date-picker.property.js +102 -34
  314. package/esm2015/date-picker/date-range-portal.component.js +41 -20
  315. package/esm2015/date-picker/date-range.component.js +66 -47
  316. package/esm2015/date-picker/picker-date.component.js +50 -15
  317. package/esm2015/date-picker/picker-month.component.js +25 -9
  318. package/esm2015/date-picker/picker-year.component.js +21 -9
  319. package/esm2015/description/description-item.component.js +4 -4
  320. package/esm2015/description/description.component.js +8 -9
  321. package/esm2015/description/description.module.js +4 -4
  322. package/esm2015/description/description.property.js +6 -6
  323. package/esm2015/dialog/dialog-container.component.js +59 -0
  324. package/esm2015/dialog/dialog-container.directives.js +73 -0
  325. package/esm2015/dialog/dialog-ref.js +17 -0
  326. package/esm2015/dialog/dialog.component.js +6 -5
  327. package/esm2015/dialog/dialog.module.js +39 -9
  328. package/esm2015/dialog/dialog.property.js +20 -19
  329. package/esm2015/dialog/dialog.service.js +67 -0
  330. package/esm2015/dialog/public-api.js +5 -1
  331. package/esm2015/doc/doc.component.js +3 -3
  332. package/esm2015/doc/doc.module.js +4 -4
  333. package/esm2015/drawer/drawer-container.component.js +59 -0
  334. package/esm2015/drawer/drawer-container.directives.js +57 -0
  335. package/esm2015/drawer/drawer-ref.js +17 -0
  336. package/esm2015/drawer/drawer.component.js +6 -5
  337. package/esm2015/drawer/drawer.module.js +24 -8
  338. package/esm2015/drawer/drawer.property.js +24 -8
  339. package/esm2015/drawer/drawer.service.js +65 -0
  340. package/esm2015/drawer/public-api.js +6 -1
  341. package/esm2015/dropdown/dropdown-portal.component.js +5 -5
  342. package/esm2015/dropdown/dropdown.component.js +7 -6
  343. package/esm2015/dropdown/dropdown.module.js +4 -4
  344. package/esm2015/dropdown/dropdown.property.js +3 -3
  345. package/esm2015/empty/empty.component.js +3 -3
  346. package/esm2015/empty/empty.module.js +4 -4
  347. package/esm2015/empty/empty.property.js +3 -3
  348. package/esm2015/examples/examples.component.js +3 -3
  349. package/esm2015/examples/examples.module.js +4 -4
  350. package/esm2015/find/find.component.js +10 -9
  351. package/esm2015/find/find.module.js +4 -4
  352. package/esm2015/find/find.property.js +3 -3
  353. package/esm2015/form/control.component.js +4 -4
  354. package/esm2015/form/form.component.js +9 -8
  355. package/esm2015/form/form.module.js +4 -4
  356. package/esm2015/form/form.property.js +8 -13
  357. package/esm2015/highlight/highlight.component.js +6 -5
  358. package/esm2015/highlight/highlight.module.js +4 -4
  359. package/esm2015/highlight/highlight.property.js +4 -4
  360. package/esm2015/i18n/i18n.directive.js +6 -5
  361. package/esm2015/i18n/i18n.module.js +4 -4
  362. package/esm2015/i18n/i18n.pipe.js +3 -3
  363. package/esm2015/i18n/i18n.service.js +3 -3
  364. package/esm2015/i18n/languages/ar_EG.js +11 -3
  365. package/esm2015/i18n/languages/bg_BG.js +11 -3
  366. package/esm2015/i18n/languages/ca_ES.js +11 -3
  367. package/esm2015/i18n/languages/cs_CZ.js +11 -3
  368. package/esm2015/i18n/languages/da_DK.js +11 -3
  369. package/esm2015/i18n/languages/de_DE.js +11 -3
  370. package/esm2015/i18n/languages/el_GR.js +11 -3
  371. package/esm2015/i18n/languages/en_GB.js +11 -3
  372. package/esm2015/i18n/languages/en_US.js +7 -2
  373. package/esm2015/i18n/languages/es_ES.js +11 -3
  374. package/esm2015/i18n/languages/et_EE.js +11 -3
  375. package/esm2015/i18n/languages/fa_IR.js +11 -3
  376. package/esm2015/i18n/languages/fi_FI.js +11 -3
  377. package/esm2015/i18n/languages/fr_BE.js +10 -2
  378. package/esm2015/i18n/languages/fr_FR.js +11 -3
  379. package/esm2015/i18n/languages/he_IL.js +11 -3
  380. package/esm2015/i18n/languages/hi_IN.js +11 -3
  381. package/esm2015/i18n/languages/hr_HR.js +11 -3
  382. package/esm2015/i18n/languages/hu_HU.js +11 -3
  383. package/esm2015/i18n/languages/hy_AM.js +11 -3
  384. package/esm2015/i18n/languages/id_ID.js +11 -3
  385. package/esm2015/i18n/languages/is_IS.js +11 -3
  386. package/esm2015/i18n/languages/it_IT.js +11 -3
  387. package/esm2015/i18n/languages/ja_JP.js +11 -3
  388. package/esm2015/i18n/languages/ka_GE.js +11 -3
  389. package/esm2015/i18n/languages/kn_IN.js +11 -3
  390. package/esm2015/i18n/languages/ko_KR.js +11 -3
  391. package/esm2015/i18n/languages/ku_IQ.js +11 -3
  392. package/esm2015/i18n/languages/lv_LV.js +11 -3
  393. package/esm2015/i18n/languages/mn_MN.js +11 -3
  394. package/esm2015/i18n/languages/ms_MY.js +11 -3
  395. package/esm2015/i18n/languages/nb_NO.js +11 -3
  396. package/esm2015/i18n/languages/ne_NP.js +11 -3
  397. package/esm2015/i18n/languages/nl_BE.js +11 -3
  398. package/esm2015/i18n/languages/nl_NL.js +11 -3
  399. package/esm2015/i18n/languages/pl_PL.js +11 -3
  400. package/esm2015/i18n/languages/pt_BR.js +11 -3
  401. package/esm2015/i18n/languages/pt_PT.js +11 -3
  402. package/esm2015/i18n/languages/ro_RO.js +11 -3
  403. package/esm2015/i18n/languages/ru_RU.js +11 -3
  404. package/esm2015/i18n/languages/sk_SK.js +11 -3
  405. package/esm2015/i18n/languages/sl_SI.js +11 -3
  406. package/esm2015/i18n/languages/sr_RS.js +11 -3
  407. package/esm2015/i18n/languages/sv_SE.js +11 -3
  408. package/esm2015/i18n/languages/ta_IN.js +11 -3
  409. package/esm2015/i18n/languages/th_TH.js +29 -21
  410. package/esm2015/i18n/languages/tr_TR.js +11 -3
  411. package/esm2015/i18n/languages/uk_UA.js +11 -3
  412. package/esm2015/i18n/languages/vi_VN.js +11 -3
  413. package/esm2015/i18n/languages/zh_CN.js +6 -2
  414. package/esm2015/i18n/languages/zh_TW.js +10 -3
  415. package/esm2015/icon/icon.component.js +7 -6
  416. package/esm2015/icon/icon.module.js +4 -4
  417. package/esm2015/icon/icon.property.js +3 -3
  418. package/esm2015/icon/icon.service.js +6 -6
  419. package/esm2015/inner/inner.component.js +5 -5
  420. package/esm2015/inner/inner.module.js +4 -4
  421. package/esm2015/inner/inner.property.js +3 -3
  422. package/esm2015/input/input-group.component.js +4 -6
  423. package/esm2015/input/input.component.js +21 -7
  424. package/esm2015/input/input.module.js +4 -4
  425. package/esm2015/input/input.property.js +12 -7
  426. package/esm2015/input-number/input-number.component.js +3 -3
  427. package/esm2015/input-number/input-number.module.js +4 -4
  428. package/esm2015/input-number/input-number.property.js +3 -3
  429. package/esm2015/layout/col.component.js +3 -3
  430. package/esm2015/layout/layout.module.js +4 -4
  431. package/esm2015/layout/layout.property.js +6 -6
  432. package/esm2015/layout/row.component.js +3 -3
  433. package/esm2015/link/link.component.js +3 -3
  434. package/esm2015/link/link.module.js +4 -4
  435. package/esm2015/link/link.property.js +3 -3
  436. package/esm2015/list/list-option.component.js +3 -3
  437. package/esm2015/list/list.component.js +8 -7
  438. package/esm2015/list/list.module.js +4 -4
  439. package/esm2015/list/list.property.js +7 -7
  440. package/esm2015/loading/loading.component.js +6 -5
  441. package/esm2015/loading/loading.module.js +4 -4
  442. package/esm2015/loading/loading.property.js +3 -3
  443. package/esm2015/menu/menu-node.component.js +4 -4
  444. package/esm2015/menu/menu.component.js +10 -10
  445. package/esm2015/menu/menu.module.js +4 -4
  446. package/esm2015/menu/menu.property.js +6 -6
  447. package/esm2015/message/message.component.js +5 -5
  448. package/esm2015/message/message.module.js +4 -4
  449. package/esm2015/message/message.property.js +2 -2
  450. package/esm2015/message/message.service.js +6 -6
  451. package/esm2015/message-box/message-box.component.js +20 -24
  452. package/esm2015/message-box/message-box.module.js +4 -4
  453. package/esm2015/message-box/message-box.service.js +10 -8
  454. package/esm2015/notification/notification.component.js +5 -5
  455. package/esm2015/notification/notification.module.js +4 -4
  456. package/esm2015/notification/notification.property.js +1 -1
  457. package/esm2015/notification/notification.service.js +3 -3
  458. package/esm2015/outlet/outlet.directive.js +3 -3
  459. package/esm2015/outlet/outlet.module.js +4 -4
  460. package/esm2015/page-header/page-header.component.js +3 -3
  461. package/esm2015/page-header/page-header.module.js +4 -4
  462. package/esm2015/page-header/page-header.property.js +3 -3
  463. package/esm2015/pagination/pagination.component.js +45 -7
  464. package/esm2015/pagination/pagination.module.js +10 -6
  465. package/esm2015/pagination/pagination.property.js +52 -4
  466. package/esm2015/pattern/pattern.component.js +3 -3
  467. package/esm2015/pattern/pattern.module.js +4 -4
  468. package/esm2015/popconfirm/popconfirm.component.js +3 -3
  469. package/esm2015/popconfirm/popconfirm.module.js +4 -4
  470. package/esm2015/popconfirm/popconfirm.property.js +3 -3
  471. package/esm2015/popover/popover-portal.component.js +4 -4
  472. package/esm2015/popover/popover.directive.js +7 -6
  473. package/esm2015/popover/popover.module.js +4 -4
  474. package/esm2015/popover/popover.property.js +3 -3
  475. package/esm2015/portal/portal.module.js +6 -5
  476. package/esm2015/portal/portal.service.js +11 -12
  477. package/esm2015/progress/progress.component.js +180 -17
  478. package/esm2015/progress/progress.module.js +4 -4
  479. package/esm2015/progress/progress.property.js +52 -5
  480. package/esm2015/radio/radio.component.js +7 -6
  481. package/esm2015/radio/radio.module.js +4 -4
  482. package/esm2015/radio/radio.property.js +4 -4
  483. package/esm2015/rate/rate.component.js +9 -9
  484. package/esm2015/rate/rate.module.js +4 -4
  485. package/esm2015/rate/rate.property.js +3 -3
  486. package/esm2015/result/result.component.js +3 -3
  487. package/esm2015/result/result.module.js +4 -4
  488. package/esm2015/result/result.property.js +3 -3
  489. package/esm2015/ripple/ripple.directive.js +4 -4
  490. package/esm2015/ripple/ripple.module.js +4 -4
  491. package/esm2015/ripple/ripple.property.js +4 -4
  492. package/esm2015/select/select-portal.component.js +6 -6
  493. package/esm2015/select/select.component.js +15 -11
  494. package/esm2015/select/select.module.js +4 -4
  495. package/esm2015/select/select.property.js +15 -4
  496. package/esm2015/skeleton/skeleton.component.js +6 -5
  497. package/esm2015/skeleton/skeleton.module.js +4 -4
  498. package/esm2015/skeleton/skeleton.property.js +3 -3
  499. package/esm2015/slider/slider.component.js +11 -12
  500. package/esm2015/slider/slider.module.js +4 -4
  501. package/esm2015/slider/slider.property.js +3 -3
  502. package/esm2015/slider-select/slider-select.component.js +3 -3
  503. package/esm2015/slider-select/slider-select.module.js +4 -4
  504. package/esm2015/slider-select/slider-select.property.js +3 -3
  505. package/esm2015/statistic/countdown.component.js +8 -7
  506. package/esm2015/statistic/statistic.component.js +6 -5
  507. package/esm2015/statistic/statistic.module.js +4 -4
  508. package/esm2015/statistic/statistic.property.js +6 -6
  509. package/esm2015/steps/steps.component.js +22 -13
  510. package/esm2015/steps/steps.module.js +7 -6
  511. package/esm2015/steps/steps.property.js +12 -5
  512. package/esm2015/switch/switch.component.js +3 -3
  513. package/esm2015/switch/switch.module.js +4 -4
  514. package/esm2015/switch/switch.property.js +3 -3
  515. package/esm2015/table/drag.directive.js +5 -5
  516. package/esm2015/table/table-body.component.js +7 -6
  517. package/esm2015/table/table-foot.component.js +4 -4
  518. package/esm2015/table/table-head.component.js +7 -6
  519. package/esm2015/table/table.component.js +9 -8
  520. package/esm2015/table/table.module.js +4 -4
  521. package/esm2015/table/table.property.js +13 -13
  522. package/esm2015/tabs/tab-content.component.js +3 -3
  523. package/esm2015/tabs/tab.component.js +4 -4
  524. package/esm2015/tabs/tabs.component.js +9 -8
  525. package/esm2015/tabs/tabs.module.js +4 -4
  526. package/esm2015/tabs/tabs.property.js +6 -6
  527. package/esm2015/tag/tag.component.js +6 -5
  528. package/esm2015/tag/tag.module.js +4 -4
  529. package/esm2015/tag/tag.property.js +3 -3
  530. package/esm2015/text-retract/text-retract.component.js +6 -5
  531. package/esm2015/text-retract/text-retract.module.js +4 -4
  532. package/esm2015/text-retract/text-retract.property.js +3 -3
  533. package/esm2015/textarea/textarea.component.js +6 -5
  534. package/esm2015/textarea/textarea.module.js +4 -4
  535. package/esm2015/textarea/textarea.property.js +4 -14
  536. package/esm2015/theme/theme.component.js +5 -5
  537. package/esm2015/theme/theme.module.js +4 -4
  538. package/esm2015/theme/theme.property.js +4 -4
  539. package/esm2015/time-ago/time-ago.module.js +4 -4
  540. package/esm2015/time-ago/time-ago.pipe.js +3 -3
  541. package/esm2015/time-picker/time-picker-frame.component.js +22 -12
  542. package/esm2015/time-picker/time-picker-portal.component.js +5 -5
  543. package/esm2015/time-picker/time-picker.component.js +31 -15
  544. package/esm2015/time-picker/time-picker.module.js +4 -4
  545. package/esm2015/time-picker/time-picker.property.js +16 -5
  546. package/esm2015/time-range/time-range.module.js +4 -4
  547. package/esm2015/time-range/time-range.pipe.js +3 -3
  548. package/esm2015/timeline/timeline.component.js +7 -6
  549. package/esm2015/timeline/timeline.module.js +4 -4
  550. package/esm2015/timeline/timeline.property.js +3 -3
  551. package/esm2015/tooltip/tooltip-portal.component.js +4 -4
  552. package/esm2015/tooltip/tooltip.directive.js +7 -6
  553. package/esm2015/tooltip/tooltip.module.js +4 -4
  554. package/esm2015/tooltip/tooltip.property.js +4 -4
  555. package/esm2015/transfer/transfer.component.js +7 -6
  556. package/esm2015/transfer/transfer.module.js +4 -4
  557. package/esm2015/transfer/transfer.property.js +3 -3
  558. package/esm2015/tree/tree-node.component.js +5 -5
  559. package/esm2015/tree/tree.component.js +11 -10
  560. package/esm2015/tree/tree.module.js +4 -4
  561. package/esm2015/tree/tree.property.js +7 -7
  562. package/esm2015/tree-file/tree-file.component.js +3 -3
  563. package/esm2015/tree-file/tree-file.module.js +4 -4
  564. package/esm2015/tree-file/tree-file.property.js +3 -3
  565. package/esm2015/typography/typography.component.js +3 -3
  566. package/esm2015/typography/typography.module.js +4 -4
  567. package/esm2015/typography/typography.property.js +3 -3
  568. package/esm2015/upload/upload-portal.component.js +5 -5
  569. package/esm2015/upload/upload.component.js +7 -6
  570. package/esm2015/upload/upload.module.js +4 -4
  571. package/esm2015/upload/upload.property.js +3 -3
  572. package/fesm2015/ng-nest-ui-affix.js +10 -10
  573. package/fesm2015/ng-nest-ui-alert.js +10 -10
  574. package/fesm2015/ng-nest-ui-alert.js.map +1 -1
  575. package/fesm2015/ng-nest-ui-anchor.js +11 -11
  576. package/fesm2015/ng-nest-ui-anchor.js.map +1 -1
  577. package/fesm2015/ng-nest-ui-api.js +7 -7
  578. package/fesm2015/ng-nest-ui-auto-complete.js +37 -18
  579. package/fesm2015/ng-nest-ui-auto-complete.js.map +1 -1
  580. package/fesm2015/ng-nest-ui-avatar.js +10 -10
  581. package/fesm2015/ng-nest-ui-back-top.js +12 -12
  582. package/fesm2015/ng-nest-ui-back-top.js.map +1 -1
  583. package/fesm2015/ng-nest-ui-badge.js +12 -11
  584. package/fesm2015/ng-nest-ui-badge.js.map +1 -1
  585. package/fesm2015/ng-nest-ui-base-form.js +36 -12
  586. package/fesm2015/ng-nest-ui-base-form.js.map +1 -1
  587. package/fesm2015/ng-nest-ui-border.js +7 -7
  588. package/fesm2015/ng-nest-ui-button.js +20 -19
  589. package/fesm2015/ng-nest-ui-button.js.map +1 -1
  590. package/fesm2015/ng-nest-ui-calendar.js +14 -13
  591. package/fesm2015/ng-nest-ui-calendar.js.map +1 -1
  592. package/fesm2015/ng-nest-ui-card.js +10 -10
  593. package/fesm2015/ng-nest-ui-carousel.js +28 -27
  594. package/fesm2015/ng-nest-ui-carousel.js.map +1 -1
  595. package/fesm2015/ng-nest-ui-cascade.js +63 -22
  596. package/fesm2015/ng-nest-ui-cascade.js.map +1 -1
  597. package/fesm2015/ng-nest-ui-checkbox.js +13 -12
  598. package/fesm2015/ng-nest-ui-checkbox.js.map +1 -1
  599. package/fesm2015/ng-nest-ui-collapse.js +16 -16
  600. package/fesm2015/ng-nest-ui-collapse.js.map +1 -1
  601. package/fesm2015/ng-nest-ui-color-picker.js +24 -21
  602. package/fesm2015/ng-nest-ui-color-picker.js.map +1 -1
  603. package/fesm2015/ng-nest-ui-color.js +11 -11
  604. package/fesm2015/ng-nest-ui-color.js.map +1 -1
  605. package/fesm2015/ng-nest-ui-comment.js +19 -18
  606. package/fesm2015/ng-nest-ui-comment.js.map +1 -1
  607. package/fesm2015/ng-nest-ui-container.js +32 -32
  608. package/fesm2015/ng-nest-ui-container.js.map +1 -1
  609. package/fesm2015/ng-nest-ui-core.js +106 -25
  610. package/fesm2015/ng-nest-ui-core.js.map +1 -1
  611. package/fesm2015/ng-nest-ui-crumb.js +13 -12
  612. package/fesm2015/ng-nest-ui-crumb.js.map +1 -1
  613. package/fesm2015/ng-nest-ui-date-picker.js +325 -186
  614. package/fesm2015/ng-nest-ui-date-picker.js.map +1 -1
  615. package/fesm2015/ng-nest-ui-description.js +21 -22
  616. package/fesm2015/ng-nest-ui-description.js.map +1 -1
  617. package/fesm2015/ng-nest-ui-dialog.js +263 -33
  618. package/fesm2015/ng-nest-ui-dialog.js.map +1 -1
  619. package/fesm2015/ng-nest-ui-doc.js +7 -7
  620. package/fesm2015/ng-nest-ui-drawer.js +232 -20
  621. package/fesm2015/ng-nest-ui-drawer.js.map +1 -1
  622. package/fesm2015/ng-nest-ui-dropdown.js +17 -16
  623. package/fesm2015/ng-nest-ui-dropdown.js.map +1 -1
  624. package/fesm2015/ng-nest-ui-empty.js +10 -10
  625. package/fesm2015/ng-nest-ui-examples.js +7 -7
  626. package/fesm2015/ng-nest-ui-find.js +16 -15
  627. package/fesm2015/ng-nest-ui-find.js.map +1 -1
  628. package/fesm2015/ng-nest-ui-form.js +22 -26
  629. package/fesm2015/ng-nest-ui-form.js.map +1 -1
  630. package/fesm2015/ng-nest-ui-highlight.js +12 -11
  631. package/fesm2015/ng-nest-ui-highlight.js.map +1 -1
  632. package/fesm2015/ng-nest-ui-i18n.js +532 -131
  633. package/fesm2015/ng-nest-ui-i18n.js.map +1 -1
  634. package/fesm2015/ng-nest-ui-icon.js +18 -18
  635. package/fesm2015/ng-nest-ui-icon.js.map +1 -1
  636. package/fesm2015/ng-nest-ui-inner.js +11 -11
  637. package/fesm2015/ng-nest-ui-inner.js.map +1 -1
  638. package/fesm2015/ng-nest-ui-input-number.js +10 -10
  639. package/fesm2015/ng-nest-ui-input.js +38 -21
  640. package/fesm2015/ng-nest-ui-input.js.map +1 -1
  641. package/fesm2015/ng-nest-ui-layout.js +16 -16
  642. package/fesm2015/ng-nest-ui-link.js +10 -10
  643. package/fesm2015/ng-nest-ui-list.js +20 -19
  644. package/fesm2015/ng-nest-ui-list.js.map +1 -1
  645. package/fesm2015/ng-nest-ui-loading.js +12 -11
  646. package/fesm2015/ng-nest-ui-loading.js.map +1 -1
  647. package/fesm2015/ng-nest-ui-menu.js +22 -22
  648. package/fesm2015/ng-nest-ui-menu.js.map +1 -1
  649. package/fesm2015/ng-nest-ui-message-box.js +32 -34
  650. package/fesm2015/ng-nest-ui-message-box.js.map +1 -1
  651. package/fesm2015/ng-nest-ui-message.js +14 -14
  652. package/fesm2015/ng-nest-ui-message.js.map +1 -1
  653. package/fesm2015/ng-nest-ui-notification.js +11 -11
  654. package/fesm2015/ng-nest-ui-notification.js.map +1 -1
  655. package/fesm2015/ng-nest-ui-outlet.js +7 -7
  656. package/fesm2015/ng-nest-ui-page-header.js +10 -10
  657. package/fesm2015/ng-nest-ui-pagination.js +104 -14
  658. package/fesm2015/ng-nest-ui-pagination.js.map +1 -1
  659. package/fesm2015/ng-nest-ui-pattern.js +7 -7
  660. package/fesm2015/ng-nest-ui-popconfirm.js +10 -10
  661. package/fesm2015/ng-nest-ui-popover.js +16 -15
  662. package/fesm2015/ng-nest-ui-popover.js.map +1 -1
  663. package/fesm2015/ng-nest-ui-portal.js +15 -15
  664. package/fesm2015/ng-nest-ui-portal.js.map +1 -1
  665. package/fesm2015/ng-nest-ui-progress.js +234 -25
  666. package/fesm2015/ng-nest-ui-progress.js.map +1 -1
  667. package/fesm2015/ng-nest-ui-radio.js +13 -12
  668. package/fesm2015/ng-nest-ui-radio.js.map +1 -1
  669. package/fesm2015/ng-nest-ui-rate.js +15 -15
  670. package/fesm2015/ng-nest-ui-rate.js.map +1 -1
  671. package/fesm2015/ng-nest-ui-result.js +10 -10
  672. package/fesm2015/ng-nest-ui-ripple.js +10 -10
  673. package/fesm2015/ng-nest-ui-ripple.js.map +1 -1
  674. package/fesm2015/ng-nest-ui-select.js +37 -22
  675. package/fesm2015/ng-nest-ui-select.js.map +1 -1
  676. package/fesm2015/ng-nest-ui-skeleton.js +12 -11
  677. package/fesm2015/ng-nest-ui-skeleton.js.map +1 -1
  678. package/fesm2015/ng-nest-ui-slider-select.js +10 -10
  679. package/fesm2015/ng-nest-ui-slider.js +17 -18
  680. package/fesm2015/ng-nest-ui-slider.js.map +1 -1
  681. package/fesm2015/ng-nest-ui-statistic.js +22 -20
  682. package/fesm2015/ng-nest-ui-statistic.js.map +1 -1
  683. package/fesm2015/ng-nest-ui-steps.js +38 -21
  684. package/fesm2015/ng-nest-ui-steps.js.map +1 -1
  685. package/fesm2015/ng-nest-ui-switch.js +10 -10
  686. package/fesm2015/ng-nest-ui-table.js +43 -40
  687. package/fesm2015/ng-nest-ui-table.js.map +1 -1
  688. package/fesm2015/ng-nest-ui-tabs.js +24 -23
  689. package/fesm2015/ng-nest-ui-tabs.js.map +1 -1
  690. package/fesm2015/ng-nest-ui-tag.js +12 -11
  691. package/fesm2015/ng-nest-ui-tag.js.map +1 -1
  692. package/fesm2015/ng-nest-ui-text-retract.js +12 -11
  693. package/fesm2015/ng-nest-ui-text-retract.js.map +1 -1
  694. package/fesm2015/ng-nest-ui-textarea.js +12 -21
  695. package/fesm2015/ng-nest-ui-textarea.js.map +1 -1
  696. package/fesm2015/ng-nest-ui-theme.js +11 -11
  697. package/fesm2015/ng-nest-ui-theme.js.map +1 -1
  698. package/fesm2015/ng-nest-ui-time-ago.js +7 -7
  699. package/fesm2015/ng-nest-ui-time-picker.js +73 -36
  700. package/fesm2015/ng-nest-ui-time-picker.js.map +1 -1
  701. package/fesm2015/ng-nest-ui-time-range.js +7 -7
  702. package/fesm2015/ng-nest-ui-timeline.js +13 -12
  703. package/fesm2015/ng-nest-ui-timeline.js.map +1 -1
  704. package/fesm2015/ng-nest-ui-tooltip.js +16 -15
  705. package/fesm2015/ng-nest-ui-tooltip.js.map +1 -1
  706. package/fesm2015/ng-nest-ui-transfer.js +13 -12
  707. package/fesm2015/ng-nest-ui-transfer.js.map +1 -1
  708. package/fesm2015/ng-nest-ui-tree-file.js +10 -10
  709. package/fesm2015/ng-nest-ui-tree.js +24 -23
  710. package/fesm2015/ng-nest-ui-tree.js.map +1 -1
  711. package/fesm2015/ng-nest-ui-typography.js +10 -10
  712. package/fesm2015/ng-nest-ui-upload.js +17 -16
  713. package/fesm2015/ng-nest-ui-upload.js.map +1 -1
  714. package/find/find.component.d.ts +1 -1
  715. package/form/control.component.d.ts +1 -1
  716. package/form/form.component.d.ts +1 -1
  717. package/form/form.property.d.ts +6 -6
  718. package/i18n/languages/ar_EG.d.ts +8 -0
  719. package/i18n/languages/bg_BG.d.ts +8 -0
  720. package/i18n/languages/ca_ES.d.ts +8 -0
  721. package/i18n/languages/cs_CZ.d.ts +8 -0
  722. package/i18n/languages/da_DK.d.ts +8 -0
  723. package/i18n/languages/de_DE.d.ts +8 -0
  724. package/i18n/languages/el_GR.d.ts +8 -0
  725. package/i18n/languages/en_GB.d.ts +8 -0
  726. package/i18n/languages/en_US.d.ts +5 -0
  727. package/i18n/languages/es_ES.d.ts +8 -0
  728. package/i18n/languages/et_EE.d.ts +8 -0
  729. package/i18n/languages/fa_IR.d.ts +8 -0
  730. package/i18n/languages/fi_FI.d.ts +8 -0
  731. package/i18n/languages/fr_BE.d.ts +8 -0
  732. package/i18n/languages/fr_FR.d.ts +8 -0
  733. package/i18n/languages/he_IL.d.ts +8 -0
  734. package/i18n/languages/hi_IN.d.ts +8 -0
  735. package/i18n/languages/hr_HR.d.ts +8 -0
  736. package/i18n/languages/hu_HU.d.ts +8 -0
  737. package/i18n/languages/hy_AM.d.ts +8 -0
  738. package/i18n/languages/id_ID.d.ts +8 -0
  739. package/i18n/languages/is_IS.d.ts +8 -0
  740. package/i18n/languages/it_IT.d.ts +8 -0
  741. package/i18n/languages/ja_JP.d.ts +8 -0
  742. package/i18n/languages/ka_GE.d.ts +8 -0
  743. package/i18n/languages/kn_IN.d.ts +8 -0
  744. package/i18n/languages/ko_KR.d.ts +8 -0
  745. package/i18n/languages/ku_IQ.d.ts +8 -0
  746. package/i18n/languages/lv_LV.d.ts +8 -0
  747. package/i18n/languages/mn_MN.d.ts +8 -0
  748. package/i18n/languages/ms_MY.d.ts +8 -0
  749. package/i18n/languages/nb_NO.d.ts +8 -0
  750. package/i18n/languages/ne_NP.d.ts +8 -0
  751. package/i18n/languages/nl_BE.d.ts +8 -0
  752. package/i18n/languages/nl_NL.d.ts +8 -0
  753. package/i18n/languages/pl_PL.d.ts +8 -0
  754. package/i18n/languages/pt_BR.d.ts +8 -0
  755. package/i18n/languages/pt_PT.d.ts +8 -0
  756. package/i18n/languages/ro_RO.d.ts +8 -0
  757. package/i18n/languages/ru_RU.d.ts +8 -0
  758. package/i18n/languages/sk_SK.d.ts +8 -0
  759. package/i18n/languages/sl_SI.d.ts +8 -0
  760. package/i18n/languages/sr_RS.d.ts +8 -0
  761. package/i18n/languages/sv_SE.d.ts +8 -0
  762. package/i18n/languages/ta_IN.d.ts +8 -0
  763. package/i18n/languages/th_TH.d.ts +8 -0
  764. package/i18n/languages/tr_TR.d.ts +8 -0
  765. package/i18n/languages/uk_UA.d.ts +8 -0
  766. package/i18n/languages/vi_VN.d.ts +8 -0
  767. package/i18n/languages/zh_CN.d.ts +4 -0
  768. package/i18n/languages/zh_TW.d.ts +7 -0
  769. package/inner/inner.component.d.ts +1 -1
  770. package/input/input-group.component.d.ts +2 -4
  771. package/input/input.component.d.ts +3 -1
  772. package/input/input.property.d.ts +6 -1
  773. package/list/list.component.d.ts +2 -2
  774. package/menu/menu.component.d.ts +1 -1
  775. package/message/message.component.d.ts +1 -1
  776. package/message/message.property.d.ts +1 -1
  777. package/message-box/message-box.component.d.ts +2 -1
  778. package/notification/notification.component.d.ts +1 -1
  779. package/package.json +1 -1
  780. package/pagination/pagination.component.d.ts +5 -1
  781. package/pagination/pagination.module.d.ts +7 -3
  782. package/pagination/pagination.property.d.ts +49 -3
  783. package/portal/portal.module.d.ts +1 -1
  784. package/portal/portal.service.d.ts +2 -3
  785. package/progress/progress.component.d.ts +31 -3
  786. package/progress/progress.property.d.ts +80 -5
  787. package/radio/radio.component.d.ts +1 -1
  788. package/rate/rate.component.d.ts +5 -5
  789. package/select/select-portal.component.d.ts +3 -3
  790. package/select/select.component.d.ts +1 -1
  791. package/select/select.property.d.ts +12 -2
  792. package/slider/slider.component.d.ts +1 -1
  793. package/steps/steps.component.d.ts +1 -1
  794. package/steps/steps.module.d.ts +2 -1
  795. package/steps/steps.property.d.ts +12 -2
  796. package/table/table-body.component.d.ts +1 -1
  797. package/table/table-head.component.d.ts +1 -1
  798. package/table/table.component.d.ts +1 -1
  799. package/table/table.property.d.ts +11 -1
  800. package/textarea/textarea.property.d.ts +1 -6
  801. package/theme/theme.component.d.ts +1 -1
  802. package/time-picker/time-picker-frame.component.d.ts +4 -0
  803. package/time-picker/time-picker-portal.component.d.ts +3 -3
  804. package/time-picker/time-picker.component.d.ts +5 -3
  805. package/time-picker/time-picker.property.d.ts +12 -2
  806. package/timeline/timeline.component.d.ts +1 -1
  807. package/transfer/transfer.component.d.ts +1 -1
  808. package/tree/tree-node.component.d.ts +1 -1
  809. package/tree/tree.component.d.ts +1 -1
  810. package/upload/upload.component.d.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-core.umd.js","sources":["../../../../lib/ng-nest/ui/core/util/chunk.ts","../../../../lib/ng-nest/ui/core/util/guid.ts","../../../../lib/ng-nest/ui/core/util/group-by.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../lib/ng-nest/ui/core/util/resize.ts","../../../../lib/ng-nest/ui/core/util/option.ts","../../../../lib/ng-nest/ui/core/util/host.ts","../../../../lib/ng-nest/ui/core/util/log.ts","../../../../lib/ng-nest/ui/core/util/computed-style.ts","../../../../lib/ng-nest/ui/core/util/animation.ts","../../../../lib/ng-nest/ui/core/util/html.ts","../../../../lib/ng-nest/ui/core/animation/consts.ts","../../../../lib/ng-nest/ui/core/animation/fade.ts","../../../../lib/ng-nest/ui/core/animation/slide.ts","../../../../lib/ng-nest/ui/core/animation/drop.ts","../../../../lib/ng-nest/ui/core/animation/move.ts","../../../../lib/ng-nest/ui/core/animation/connect.ts","../../../../lib/ng-nest/ui/core/interfaces/data.type.ts","../../../../lib/ng-nest/ui/core/interfaces/identify.type.ts","../../../../lib/ng-nest/ui/core/functions/convert.ts","../../../../lib/ng-nest/ui/core/functions/date.ts","../../../../lib/ng-nest/ui/core/functions/flex.ts","../../../../lib/ng-nest/ui/core/functions/property.ts","../../../../lib/ng-nest/ui/core/services/reuse-strategy.service.ts","../../../../lib/ng-nest/ui/core/services/preloading-strategy.service.ts","../../../../lib/ng-nest/ui/core/services/http.service.ts","../../../../lib/ng-nest/ui/core/services/storage.service.ts","../../../../lib/ng-nest/ui/core/services/repository.service.ts","../../../../lib/ng-nest/ui/core/config/config.ts","../../../../lib/ng-nest/ui/core/theme/theme.ts","../../../../lib/ng-nest/ui/core/theme/theme.service.ts","../../../../lib/ng-nest/ui/core/config/config.service.ts","../../../../lib/ng-nest/ui/core/ng-nest-ui-core.ts"],"sourcesContent":["export function chunk<T>(array: T[], size = 1): T[][] {\r\n const len = array == null ? 0 : array.length;\r\n if (!len || size < 1) {\r\n return [];\r\n }\r\n let index = 0;\r\n let resIndex = 0;\r\n const result = new Array(Math.ceil(len / size));\r\n\r\n while (index < len) {\r\n result[resIndex++] = array.slice(index, (index += size));\r\n }\r\n return result;\r\n}\r\n","/**\r\n * 生成 GUID\r\n */\r\nexport function guid() {\r\n let S4 = () => {\r\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\r\n };\r\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\r\n}\r\n","export function groupBy<T>(array: T[], name: string): T[][] {\r\n const groups: any = {};\r\n array.forEach((obj: any) => {\r\n const group = JSON.stringify(obj[name]);\r\n groups[group] = groups[group] || [];\r\n groups[group].push(obj);\r\n });\r\n return Object.keys(groups).map((group) => groups[group]);\r\n}\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Observable, Subscriber } from 'rxjs';\r\n\r\nexport const XResize = (...element: Element[]): Observable<{ entry: ResizeObserverEntry; resizeObserver: ResizeObserver }> => {\r\n return new Observable(\r\n (\r\n x: Subscriber<{\r\n entry: ResizeObserverEntry;\r\n resizeObserver: ResizeObserver;\r\n }>\r\n ) => {\r\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\r\n for (const entry of entries) {\r\n x.next({ entry: entry, resizeObserver: resizeObserver });\r\n }\r\n });\r\n for (let ele of element) {\r\n if (ele) resizeObserver.observe(ele);\r\n }\r\n\r\n //XResize 取消订阅的时候自动销毁\r\n //resizeObserver.disconnect();\r\n }\r\n );\r\n};\r\n","/**\r\n * Fill default values\r\n * @param option option\r\n * @param def default\r\n */\r\nexport function fillDefault(option: { [property: string]: any }, def: { [property: string]: any }) {\r\n if (option && def) {\r\n for (const key in def) {\r\n if (typeof option[key] === 'undefined') {\r\n option[key] = def[key];\r\n }\r\n }\r\n }\r\n}\r\n","/**\r\n * 删除当前标签,保留内容\r\n */\r\nexport function removeNgTag(nativeElement: HTMLElement): void {\r\n const parentElement = nativeElement.parentElement;\r\n if (!parentElement || !parentElement.insertBefore) return;\r\n while (nativeElement.firstChild) {\r\n parentElement.insertBefore(nativeElement.firstChild, nativeElement);\r\n }\r\n parentElement.removeChild(nativeElement);\r\n}\r\n","export function warnSVGTagNotFound() {\r\n console.warn(`<svg> tag not found.`);\r\n}\r\nexport function warnIconTypeNotFound() {\r\n console.warn(`icon type not found.`);\r\n}\r\n","export function computedStyle(element: HTMLElement, style: string) {\r\n let computed = getComputedStyle(element);\r\n let value = computed[style as any];\r\n return value.replace(/px/g, '');\r\n}\r\n","// tslint:disable:no-any typedef no-invalid-this\r\nconst availablePrefixes = ['moz', 'ms', 'webkit'];\r\n\r\nfunction requestAnimationFramePolyfill(): typeof requestAnimationFrame {\r\n let lastTime = 0;\r\n return function (callback: FrameRequestCallback): any {\r\n const currTime = new Date().getTime();\r\n const timeToCall = Math.max(0, 16 - (currTime - lastTime));\r\n const id = setTimeout(() => {\r\n callback(currTime + timeToCall);\r\n }, timeToCall);\r\n lastTime = currTime + timeToCall;\r\n return id;\r\n };\r\n}\r\n\r\nfunction getRequestAnimationFrame(): typeof requestAnimationFrame {\r\n if (typeof window === 'undefined') {\r\n return () => 0;\r\n }\r\n if (window.requestAnimationFrame) {\r\n return window.requestAnimationFrame.bind(window);\r\n }\r\n\r\n const prefix = availablePrefixes.filter((key) => `${key}RequestAnimationFrame` in window)[0];\r\n\r\n return prefix ? (window as any)[`${prefix}RequestAnimationFrame`] : requestAnimationFramePolyfill();\r\n}\r\n// export function cancelRequestAnimationFrame(id: number): any {\r\n// if (typeof window === \"undefined\") {\r\n// return null;\r\n// }\r\n// if (window.cancelAnimationFrame) {\r\n// return window.cancelAnimationFrame(id);\r\n// }\r\n// const prefix = availablePrefixes.filter(\r\n// key =>\r\n// `${key}CancelAnimationFrame` in window ||\r\n// `${key}CancelRequestAnimationFrame` in window\r\n// )[0];\r\n\r\n// return prefix\r\n// ? (\r\n// (window as any)[`${prefix}CancelAnimationFrame`] ||\r\n// (window as any)[`${prefix}CancelRequestAnimationFrame`]\r\n// )\r\n// // @ts-ignore\r\n// .call(this, id)\r\n// : clearTimeout(id);\r\n// }\r\n\r\nexport const reqAnimFrame = getRequestAnimationFrame();\r\n","/**\r\n * 去除HTML标签\r\n */\r\n export function stripTags(text: string, ...usefulTags: any[]): string {\r\n if (!text || typeof (text) !== 'string')\r\n return text;\r\n return usefulTags.length > 0\r\n ? text.replace(new RegExp(`<(?!\\/?(${usefulTags.join('|')})\\s*\\/?)[^>]+>`, 'g'), '')\r\n : text.replace(/<(?:.|\\s)*?>/g, '');\r\n}\r\n","export enum XDuration {\r\n Slow = '0.3s',\r\n Base = '0.2s',\r\n Fast = '0.1s'\r\n}\r\n","import { AnimationTriggerMetadata, trigger, state, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\n// 进场动画\r\nconst XDURATION_BASE_EASE_IN = `${XDuration.Fast} ease-in`;\r\n// 移除动画\r\nconst XDURATION_BASE_EASE_OUT = `${XDuration.Fast} ease-out`;\r\n\r\nexport const XFadeAnimation: AnimationTriggerMetadata = trigger('x-fade-animation', [\r\n transition(':enter', [\r\n style({ opacity: 0, transform: 'scale(0.8)' }),\r\n animate(`${XDURATION_BASE_EASE_IN}`, style({ opacity: 1, transform: 'scale(1)' }))\r\n ]),\r\n transition(':leave', [animate(`${XDURATION_BASE_EASE_OUT}`, style({ opacity: 0 }))])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\nexport const XSlideAnimation: AnimationTriggerMetadata = trigger('x-slide-animation', [\r\n transition('void => right', [style({ transform: 'translate(100%,0)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('right => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(100%,0)' }))]),\r\n transition('void => left', [style({ transform: 'translate(-100%,0)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('left => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(-100%,0)' }))]),\r\n transition('void => top', [style({ transform: 'translate(0,-100%)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('top => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(0,-100%)' }))]),\r\n transition('void => bottom', [style({ transform: 'translate(0,100%)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('bottom => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(0,100%)' }))])\r\n]);\r\n\r\nexport const XSliderAnimation: AnimationTriggerMetadata = trigger('x-slider-animation', [\r\n transition('void => left, void => right', [\r\n style({\r\n width: 0,\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n width: '*',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void, right => void', [\r\n style({\r\n width: '*',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n width: 0,\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, state, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\nexport const XDropAnimation: AnimationTriggerMetadata = trigger('x-drop-animation', [\r\n state('*', style({ opacity: 0, height: 0, border: 0, padding: 0, visibility: 'hidden' })),\r\n state('false', style({ opacity: 0, height: 0, border: 0, padding: 0, visibility: 'hidden' })),\r\n state('true', style({ opacity: 1, height: '*', border: '*', padding: '*', visibility: 'inherit' })),\r\n transition('* => *', animate(`${XDuration.Base} ease-out`))\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\nexport const XMoveAnimation: AnimationTriggerMetadata = trigger('x-move-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n transform: 'translateY(-200%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(-200%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n transform: 'translateY(200%)',\r\n opacity: 0,\r\n height: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1,\r\n height: '*'\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(200%)',\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n\r\nexport const XMoveBoxAnimation: AnimationTriggerMetadata = trigger('x-move-box-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n transform: 'translateY(-2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(-2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n transform: 'translateY(2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\n// 进场动画\r\nconst XDURATION_BASE_EASE_IN = `${XDuration.Fast} ease-in`;\r\n// 移除动画\r\nconst XDURATION_BASE_EASE_OUT = `${XDuration.Fast} ease-out`;\r\n\r\nexport const XConnectAnimation: AnimationTriggerMetadata = trigger('x-connect-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n opacity: 0\r\n // transform: 'scaleY(0.8)',\r\n // transformOrigin: '0% 100%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_IN,\r\n style({\r\n opacity: 1\r\n // transform: 'scaleY(1)',\r\n // transformOrigin: '0% 100%'\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n opacity: 1\r\n // transform: 'scaleY(1)',\r\n // transformOrigin: '0% 100%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_OUT,\r\n style({\r\n opacity: 0\r\n // transform: 'scaleY(0.8)',\r\n // transformOrigin: '0% 100%'\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n opacity: 0\r\n // transform: 'scale(0)',\r\n // transformOrigin: '0% 0%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_IN,\r\n style({\r\n opacity: 1\r\n // transform: 'scale(1)',\r\n // transformOrigin: '30% 30%'\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n opacity: 1\r\n // transform: 'scale(1)',\r\n // transformOrigin: '30% 30%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_OUT,\r\n style({\r\n opacity: 0\r\n // transform: 'scale(0)',\r\n // transformOrigin: '0% 0%'\r\n })\r\n )\r\n ])\r\n]);\r\n\r\nexport const XConnectBaseAnimation: AnimationTriggerMetadata = trigger('x-connect-base-animation', [\r\n transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate(XDURATION_BASE_EASE_IN)]),\r\n transition(':leave', [animate(XDURATION_BASE_EASE_OUT, style({ opacity: 0 }))])\r\n]);\r\n","import { Observable, isObservable } from 'rxjs';\r\nimport { TemplateRef, SimpleChange } from '@angular/core';\r\n\r\n// 数据类型\r\nexport type XData<T> = T[] | Observable<T[] | any[]> | any[] | Function;\r\n\r\n// Boolean 类型\r\nexport type XBoolean = boolean | string;\r\n\r\n// Number 类型\r\nexport type XNumber = number | string;\r\n\r\n// 模板类型\r\nexport type XTemplate = string | number | Date | TemplateRef<any>;\r\n\r\n// 类型判断\r\nexport const XIsType = (type: string) => (object: any) => Object.prototype.toString.call(object) === `[object ${type}]`;\r\n\r\n// 值改变判断\r\nexport const XIsChange = (...changes: SimpleChange[]) => {\r\n for (let change of changes) {\r\n if (change?.currentValue !== change?.previousValue) return true;\r\n }\r\n return false;\r\n};\r\n\r\nexport const XIsString = XIsType('String');\r\nexport const XIsArray = XIsType('Array');\r\nexport const XIsNumber = XIsType('Number');\r\nexport const XIsBoolean = XIsType('Boolean');\r\nexport const XIsObject = XIsType('Object');\r\nexport const XIsNull = XIsType('Null');\r\nexport const XIsFunction = XIsType('Function');\r\nexport const XIsDate = XIsType('Date');\r\nexport const XIsRegExp = XIsType('RegExp');\r\nexport const XIsValue = (object: any) => XIsString(object) || XIsNumber(object) || XIsBoolean(object) || XIsDate(object);\r\nexport const XIsUndefined = (object: any) => typeof object === 'undefined';\r\nexport const XIsEmpty = (object: any) => typeof object === 'undefined' || object === null || object === '' || object.length === 0;\r\nexport const XIsValueArray = (object: any) => XIsArray(object) && object.length > 0 && !XIsObject(object[0]);\r\nexport const XIsObjectArray = (object: any) => XIsArray(object) && object.length > 0 && XIsObject(object[0]);\r\nexport const XIsObservable = (object: any) => isObservable(object);\r\nexport const XIsTemplateRef = (object: any) => {\r\n if (!XIsEmpty(object) && object.elementRef) return true;\r\n else return false;\r\n};\r\nexport const XIsXTemplate = (object: any) => XIsString(object) || XIsNumber(object) || XIsDate(object) || XIsTemplateRef(object);\r\n","// 标识对象\r\nexport interface XIdentityProperty {\r\n // 编码\r\n id?: any;\r\n // 标题\r\n label?: any;\r\n}\r\n\r\n// 父节点标识对象\r\nexport interface XParentIdentityProperty<T> extends XIdentityProperty {\r\n // 编码\r\n pid?: any;\r\n // 层级\r\n level?: number;\r\n // 叶子节点\r\n leaf?: boolean;\r\n // 子节点\r\n children?: T[];\r\n // 选中\r\n selected?: boolean;\r\n // 禁用\r\n disabled?: boolean;\r\n}\r\n\r\n// 标识对象\r\nexport class XIdentity {\r\n // 编码\r\n id?: any;\r\n // 标题\r\n label?: any;\r\n}\r\n","import { coerceBooleanProperty, _isNumberValue } from '@angular/cdk/coercion';\r\nimport {\r\n XData,\r\n XIsNull,\r\n XIsUndefined,\r\n XIsArray,\r\n XIsValue,\r\n XIsObject,\r\n XIsObservable,\r\n XParentIdentityProperty,\r\n XBoolean,\r\n XClassMap,\r\n XIsFunction\r\n} from '../interfaces';\r\nimport { Observable, Subject, Observer } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\n\r\nexport function XToBoolean(value: XBoolean): boolean {\r\n // if (XIsString(value)) {\r\n // return ['', 'true'].indexOf(String(value).trim()) !== -1;\r\n // } else {\r\n // return Boolean(value);\r\n // }\r\n return coerceBooleanProperty(value);\r\n}\r\n\r\nfunction XToNumber(value: number | string): number;\r\nfunction XToNumber<D>(value: number | string, fallback: D): number | D;\r\nfunction XToNumber(value: number | string, fallbackValue: number = 0): number {\r\n return _isNumberValue(value) ? Number(value) : fallbackValue;\r\n}\r\n\r\nexport function XToDataConvert<T>(value: XData<T>): XData<T> {\r\n if (XIsArray(value)) {\r\n return (value as []).map((x: any) => {\r\n if (XIsValue(x)) {\r\n return { label: x, id: x };\r\n } else if (XIsObject(x)) {\r\n x.label = XIsUndefined(x.label) || XIsNull(x.label) ? x.id : x.label;\r\n x.id = XIsUndefined(x.id) || XIsNull(x.id) ? x.label : x.id;\r\n return x;\r\n }\r\n });\r\n }\r\n return value;\r\n}\r\n\r\nexport function XSetData<T>(data: XData<T>, unSubject: Subject<void>, toConvert = true, funcParam = null): Observable<T[]> {\r\n return new Observable((x: Observer<T[]>) => {\r\n const result = (res: T[]) => {\r\n x.next(res);\r\n x.complete();\r\n };\r\n if (typeof data === 'undefined') {\r\n result([]);\r\n } else {\r\n if (XIsObservable(data)) {\r\n (data as Observable<T[]>)\r\n .pipe(\r\n map((y) => (toConvert ? XToDataConvert(y) : y)),\r\n takeUntil(unSubject)\r\n )\r\n .subscribe((y) => {\r\n result(y as T[]);\r\n });\r\n } else if (XIsFunction(data)) {\r\n (data as (param: any) => Observable<T[]>)(funcParam)\r\n .pipe(\r\n map((y) => (toConvert ? XToDataConvert(y) : y)),\r\n takeUntil(unSubject)\r\n )\r\n .subscribe((y) => {\r\n result(y as T[]);\r\n });\r\n } else {\r\n result((toConvert ? XToDataConvert(data) : data) as T[]);\r\n }\r\n }\r\n });\r\n}\r\n\r\nexport function XGetChildren<T extends XParentIdentityProperty<T>>(nodes: T[], node: T, level: number) {\r\n node.level = level;\r\n node.children = nodes.filter((y) => y.pid === node.id);\r\n node.leaf = node.children?.length > 0;\r\n if (node.leaf) node.children.map((y) => XGetChildren(nodes, y, level + 1));\r\n return node;\r\n}\r\n\r\nexport function XInvertKeyValues(obj: any): Map<any, any> {\r\n return Object.keys(obj).reduce((nw, key) => {\r\n nw.set(obj[key], key);\r\n return nw;\r\n }, new Map());\r\n}\r\n\r\nexport function XClearClass(...classMaps: XClassMap[]) {\r\n classMaps.forEach((classMap) => {\r\n for (const key in classMap) {\r\n classMap[key] = false;\r\n }\r\n });\r\n}\r\n\r\nfunction propDecoratorFactory<T, D>(name: string, fallback: (v: T) => D): (target: any, propName: string) => void {\r\n function propDecorator(target: any, propName: string, originalDescriptor?: TypedPropertyDescriptor<any>): any {\r\n const privatePropName = `$$__${propName}`;\r\n\r\n if (Object.prototype.hasOwnProperty.call(target, privatePropName)) {\r\n console.warn(`The prop \"${privatePropName}\" is already exist, it will be overrided by ${name} decorator.`);\r\n }\r\n\r\n Object.defineProperty(target, privatePropName, {\r\n configurable: true,\r\n writable: true\r\n });\r\n\r\n return {\r\n get(): string {\r\n return originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\r\n },\r\n set(value: T): void {\r\n if (originalDescriptor && originalDescriptor.set) {\r\n originalDescriptor.set.bind(this)(fallback(value));\r\n }\r\n this[privatePropName] = fallback(value);\r\n }\r\n };\r\n }\r\n\r\n return propDecorator;\r\n}\r\n\r\nexport function XInputBoolean(): any {\r\n return propDecoratorFactory('XInputBoolean', XToBoolean);\r\n}\r\n\r\nexport function XInputNumber(): any {\r\n return propDecoratorFactory('XInputNumber', XToNumber);\r\n}\r\n\r\nexport function XDataConvert(): any {\r\n return propDecoratorFactory('XDataConvert', XToDataConvert);\r\n}\r\n\r\nexport function XClamp(value: number, min: number, max: number) {\r\n return Math.max(min, Math.min(max, value));\r\n}\r\n","import { XIsDate, XIsNumber } from '../interfaces';\r\n\r\nexport type XDate = string | Date | number;\r\n\r\nexport function XToDate(date: XDate): Date {\r\n if (XIsDate(date) || XIsNumber(date)) {\r\n return new Date(date);\r\n } else {\r\n return new Date(Date.parse(date as string));\r\n }\r\n}\r\n\r\nexport function XAddSeconds(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setSeconds(dt.getSeconds() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddMinutes(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setMinutes(dt.getMinutes() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddHours(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setHours(dt.getHours() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddDays(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setDate(dt.getDate() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddMonths(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setMonth(dt.getMonth() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddYears(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setFullYear(dt.getFullYear() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n","import { Renderer2 } from '@angular/core';\r\nimport { XAlign, XDirection, XIsEmpty, XJustify } from '../interfaces';\r\n\r\nexport function setFlex(ele: Element, renderer: Renderer2, justify?: XJustify, align?: XAlign, direction?: XDirection) {\r\n if (!XIsEmpty(justify)) renderer.addClass(ele, `x-justify-${justify}`);\r\n if (!XIsEmpty(align)) renderer.addClass(ele, `x-align-${align}`);\r\n if (!XIsEmpty(direction)) renderer.addClass(ele, `x-direction-${direction}`);\r\n}\r\n","import { XClassMap } from '../interfaces';\r\n\r\n/**\r\n * 组件公共属性\r\n */\r\nexport class XProperty {\r\n /**\r\n * 样式映射属性\r\n */\r\n classMap: XClassMap = {};\r\n}\r\n","import { RouteReuseStrategy, ActivatedRouteSnapshot, DetachedRouteHandle } from '@angular/router';\r\n\r\nexport interface XRouteReuseStorage {\r\n id: string;\r\n handle: DetachedRouteHandle;\r\n}\r\n\r\n// @dynamic\r\nexport class XReuseStrategyService implements RouteReuseStrategy {\r\n // 存储的复用路由\r\n public static storages: XRouteReuseStorage[] = [];\r\n // 用一个临时变量记录待删除的路由\r\n private static waitDelete: string | null;\r\n\r\n /**\r\n * 表示对所有路由允许复用 如果你有路由不想利用可以在这加一些业务逻辑判断\r\n */\r\n public shouldDetach(route: ActivatedRouteSnapshot): boolean {\r\n return true;\r\n }\r\n\r\n /**\r\n * 当路由离开时会触发。按path作为key存储路由快照&组件当前实例对象\r\n */\r\n public store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void {\r\n if (handle == null) return;\r\n if (XReuseStrategyService.waitDelete && this.getRouteUrl(route).indexOf(XReuseStrategyService.waitDelete) == 0) {\r\n //如果待删除是当前路由则不存储快照\r\n XReuseStrategyService.waitDelete = null;\r\n return;\r\n }\r\n this.add(this.getRouteUrl(route), handle);\r\n }\r\n\r\n /**\r\n * 若 path 在缓存中有的都认为允许还原路由\r\n */\r\n public shouldAttach(route: ActivatedRouteSnapshot): boolean {\r\n return !!XReuseStrategyService.storages.find((x) => x.id == this.getRouteUrl(route));\r\n }\r\n\r\n /**\r\n * 从缓存中获取快照,若无则返回nul\r\n */\r\n public retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle {\r\n if (!route.routeConfig) {\r\n return {};\r\n }\r\n let stroage = XReuseStrategyService.storages.find((x) => x.id == this.getRouteUrl(route));\r\n return stroage ? stroage.handle : {};\r\n }\r\n\r\n /**\r\n * 进入路由触发,判断是否同一路由\r\n * 解决不同的参数也会认为是同一个路由,导致会将之前的路由拿出来复用\r\n */\r\n public shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n return future.routeConfig === curr.routeConfig && JSON.stringify(future.params) == JSON.stringify(curr.params);\r\n }\r\n\r\n /**\r\n * 解决不同的主路由会存在相同名称的子路由\r\n */\r\n private getRouteUrl(route: ActivatedRouteSnapshot) {\r\n let url = route.url.map((x) => x.path).join('_');\r\n return url;\r\n }\r\n\r\n /**\r\n * 删除复用的路由\r\n */\r\n public static deleteRouteSnapshot(name?: string): void {\r\n if (name) {\r\n let id = name.replace(/\\//g, '_');\r\n XReuseStrategyService.storages.splice(\r\n XReuseStrategyService.storages.findIndex((x) => x.id.indexOf(id) === 0),\r\n 1\r\n );\r\n XReuseStrategyService.waitDelete = id;\r\n } else {\r\n XReuseStrategyService.storages = [];\r\n }\r\n }\r\n\r\n private add(id: string, handle: DetachedRouteHandle) {\r\n XReuseStrategyService.storages.splice(\r\n XReuseStrategyService.storages.findIndex((x) => x.id == id),\r\n 1\r\n );\r\n XReuseStrategyService.storages = [...XReuseStrategyService.storages, { id: id, handle: handle }];\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { PreloadingStrategy, Route } from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n// @dynamic\r\n@Injectable()\r\nexport class XPreloadingStrategyService implements PreloadingStrategy {\r\n // 需要预加载的模块\r\n preloadedModules: string[] = [];\r\n\r\n preload(route: Route, load: () => Observable<any>): Observable<any> {\r\n if (route.data && route.data.preload) {\r\n this.preloadedModules.push(route.path as string);\r\n return load();\r\n } else {\r\n return of(null);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\n\r\n// @dynamic\r\n@Injectable({ providedIn: 'root' })\r\nexport class XHttpService {\r\n api: string = '';\r\n constructor(public http: HttpClient) {}\r\n\r\n /**\r\n * get请求\r\n */\r\n get(url: string, params?: { [property: string]: any }) {\r\n return this.request('GET', url, params);\r\n }\r\n\r\n /**\r\n * get请求\r\n */\r\n post(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('POST', url, params);\r\n }\r\n\r\n /**\r\n * put请求\r\n */\r\n put(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('PUT', url, params);\r\n }\r\n\r\n /**\r\n * delete请求\r\n */\r\n delete(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('DELETE', url, params);\r\n }\r\n\r\n /**\r\n * request通用请求\r\n */\r\n request(method: string, url: string, params?: { [property: string]: any }, option?: { [property: string]: any }): Observable<any> {\r\n if (!option) option = {};\r\n let opt = {};\r\n url = `${this.api}${url}`;\r\n method = method.toUpperCase();\r\n if (['POST', 'PUT', 'DELETE'].indexOf(method) > -1) {\r\n opt = { body: params, observe: 'body', responseType: 'json' };\r\n } else if (['GET'].indexOf(method) > -1) {\r\n opt = { params: params };\r\n }\r\n Object.assign(opt, option);\r\n this.addHeader(opt);\r\n return new Observable((x) => {\r\n this.http.request(method, url, opt).subscribe(\r\n (y: any) => {\r\n x.next(y);\r\n x.complete();\r\n },\r\n (y) => {\r\n x.error(y);\r\n x.complete();\r\n this.handleError(y);\r\n }\r\n );\r\n });\r\n }\r\n\r\n /**\r\n * 错误处理\r\n */\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error) {\r\n }\r\n return throwError(error.error);\r\n }\r\n\r\n /**\r\n * 添加头部信息\r\n */\r\n private addHeader(option: { [property: string]: any }) {\r\n // let auth = this.setting.getSession(\"Auth\");\r\n // if (auth && auth[\"token\"]) {\r\n // option[\"headers\"] = { Authorization: `Bearer ${auth[\"token\"]}` };\r\n // }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n// @dynamic\r\n@Injectable({ providedIn: 'root' })\r\nexport class XStorageService {\r\n constructor() {}\r\n\r\n /**\r\n * 获取本地值\r\n */\r\n getLocal(key: string) {\r\n return JSON.parse(localStorage.getItem(key) || 'null') || null;\r\n }\r\n\r\n /**\r\n * 设置本地值\r\n */\r\n setLocal(key: string, value: any) {\r\n localStorage.setItem(key, JSON.stringify(value));\r\n }\r\n\r\n /**\r\n * 获取当前会话的值\r\n */\r\n getSession(key: string) {\r\n return JSON.parse(sessionStorage.getItem(key) || 'null') || null;\r\n }\r\n\r\n /**\r\n * 设置当前会话值\r\n */\r\n setSession(key: string, value: any) {\r\n sessionStorage.setItem(key, JSON.stringify(value));\r\n }\r\n\r\n /**\r\n * 移除本地值\r\n */\r\n removeLocal(key: string) {\r\n localStorage.removeItem(key);\r\n }\r\n\r\n /**\r\n * 移除当前会话\r\n */\r\n removeSession(key: string) {\r\n sessionStorage.removeItem(key);\r\n }\r\n\r\n /**\r\n * 生成guid\r\n */\r\n guid() {\r\n let S4 = () => {\r\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\r\n };\r\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\r\n }\r\n}\r\n","import { XId, XQuery, XResultList } from '../interfaces';\r\nimport { XHttpService } from './http.service';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface XRepositoryInput {\r\n api?: string;\r\n controller: XController;\r\n}\r\n\r\nexport interface XController {\r\n name: string;\r\n}\r\n\r\nexport abstract class XRepositoryAbstract {\r\n abstract getList(index?: number, size?: number, query?: XQuery): Observable<XResultList<any>>;\r\n abstract get(id: number | string): Observable<any>;\r\n abstract post(entity: any): Observable<any>;\r\n abstract put(entity: any): Observable<any>;\r\n abstract delete(id: number | string): Observable<boolean>;\r\n}\r\n\r\nexport class XRepositoryService<Entity extends XId> extends XRepositoryAbstract {\r\n api = '';\r\n constructor(public http: XHttpService, public input: XRepositoryInput) {\r\n super();\r\n this.api = typeof input.api !== 'undefined' ? input.api : '';\r\n }\r\n\r\n getList(index?: number, size?: number, query?: XQuery): Observable<XResultList<Entity>> {\r\n index = index ? index : 1;\r\n size = size ? size : 10;\r\n return this.http.post(`${this.api}${this.input.controller.name}/${size}/${index}`, query);\r\n }\r\n\r\n get(id: number | string): Observable<Entity> {\r\n return this.http.get(`${this.api}${this.input.controller.name}/${id}`);\r\n }\r\n\r\n post(entity: Entity): Observable<Entity> {\r\n return this.http.post(`${this.api}${this.input.controller.name}`, entity);\r\n }\r\n\r\n put(entity: Entity): Observable<Entity> {\r\n return this.http.put(`${this.api}${this.input.controller.name}`, entity);\r\n }\r\n\r\n delete(id: number | string): Observable<boolean> {\r\n return this.http.delete(`${this.api}${this.input.controller.name}/${id}`);\r\n }\r\n}\r\n","import {\r\n XSize,\r\n XBoolean,\r\n XType,\r\n XEffect,\r\n XNumber,\r\n XPositionLeftRight,\r\n XJustify,\r\n XShape,\r\n XFit,\r\n XShadow,\r\n XTrigger,\r\n XDisplayDirection,\r\n XCorner,\r\n XDirection,\r\n XPlace,\r\n XPosition,\r\n XPlacement,\r\n XPositionTopBottom,\r\n XStatus\r\n} from '../interfaces';\r\nimport { InjectionToken } from '@angular/core';\r\nimport { XTheme } from '../theme';\r\n\r\nexport interface XConfig {\r\n components?: XComponentConfig;\r\n theme?: XTheme;\r\n}\r\n\r\nexport type XConfigKey = keyof XConfig;\r\n\r\nexport type XComponentConfigKey = keyof XComponentConfig;\r\n\r\nexport const X_CONFIG = new InjectionToken<XConfig>('x-config');\r\n\r\nexport interface XComponentConfig {\r\n affix?: XAffixConfig;\r\n alert?: XAlertConfig;\r\n anchor?: XAnchorConfig;\r\n avatar?: XAvatarConfig;\r\n autoComplete?: XAutoCompleteConfig;\r\n backTop?: XBackTopConfig;\r\n badge?: XBadgeConfgig;\r\n button?: XButtonConfig;\r\n buttons?: XButtonsConfig;\r\n calendar?: XCalendarConfig;\r\n card?: XCardConfig;\r\n carousel?: XCarouselConfig;\r\n cascade?: XCascadeConfig;\r\n checkbox?: XCheckboxConfig;\r\n collapse?: XCollapseConfig;\r\n color?: XColorConfig;\r\n colorPicker?: XColorPickerConfig;\r\n comment?: XCommentConfig;\r\n container?: XContainerConfig;\r\n header?: XHeaderConfig;\r\n aside?: XAsideConfig;\r\n footer?: XFooterConfig;\r\n crumb?: XCrumbComfig;\r\n datePicker?: XDatePickerConfig;\r\n dateRange?: XDateRangeConfig;\r\n dialog?: XDialogConfig;\r\n drawer?: XDrawerConfig;\r\n dropdown?: XDropdownConfig;\r\n description?: XDescriptionConfig;\r\n empty?: XEmptyConfig;\r\n find?: XFindConfig;\r\n form?: XFormConfig;\r\n highlight?: XHighlightConfig;\r\n icon?: XIconConfig;\r\n inner?: XInnerConfig;\r\n input?: XInputConfig;\r\n inputGroup?: XInputGroupConfig;\r\n inputNumber?: XInputNumberConfig;\r\n col?: XColConfig;\r\n row?: XRowConfig;\r\n ripple?: XRippleConfig;\r\n link?: XLinkConfig;\r\n list?: XListConfig;\r\n loading?: XLoadingConfig;\r\n menu?: XMenuConfig;\r\n message?: XMessageConfig;\r\n messageBox?: XMessageBoxConfig;\r\n notification?: XNotificationConfig;\r\n outlet?: XOutletConfig;\r\n pageHeader?: XPageHeaderConfig;\r\n pagination?: XPaginationConfig;\r\n pattern?: XPatternConfig;\r\n popconfirm?: XPopconfirmConfig;\r\n popover?: XPopoverConfig;\r\n portal?: XPortalConfig;\r\n progress?: XProgressConfing;\r\n radio?: XRadioConfig;\r\n rate?: XRateConfig;\r\n result?: XResultConfig;\r\n select?: XSelectConfig;\r\n skeleton?: XSkeletonConfig;\r\n slider?: XSliderConfig;\r\n sliderSelect?: XSliderSelectConfig;\r\n statistic?: XStatisticConfig;\r\n countdown?: XCountdownConfig;\r\n steps?: XStepsConfig;\r\n switch?: XSwitchConfig;\r\n table?: XTableConfig;\r\n tabs?: XTabsConfig;\r\n tag?: XTagConfig;\r\n textRetract?: XTextRetractConfig;\r\n theme?: XThemeConfig;\r\n timeAgo?: XTimeAgoConfig;\r\n timePicker?: XTimePickerConfig;\r\n timeRange?: XTimeRangeConfig;\r\n timeline?: XTimelineConfig;\r\n tooltip?: XTooltipConfig;\r\n transfer?: XTransferConfig;\r\n tree?: XTreeConfig;\r\n treeFile?: XTreeFileConfig;\r\n textarea?: XTextareaConfig;\r\n upload?: XUploadConfig;\r\n}\r\n\r\nexport interface XAffixConfig {\r\n top?: string;\r\n left?: string;\r\n}\r\n\r\nexport interface XAlertConfig {\r\n effect?: XEffect;\r\n hideClose?: XBoolean;\r\n showIcon?: XBoolean;\r\n disabledAnimation?: XBoolean;\r\n draggable?: XBoolean;\r\n dragHandleTitle?: XBoolean;\r\n duration?: XNumber;\r\n}\r\n\r\nexport interface XAnchorConfig {\r\n affixTop?: string;\r\n affixWidth?: string;\r\n layout?: XPositionLeftRight;\r\n justify?: XJustify;\r\n}\r\n\r\nexport interface XAvatarConfig {\r\n size?: XSize;\r\n shape?: XShape;\r\n fit?: XFit;\r\n}\r\n\r\nexport interface XAutoCompleteConfig {\r\n placement?: XPositionTopBottom;\r\n debounceTime?: number;\r\n size?: XSize;\r\n bordered?: boolean;\r\n}\r\n\r\nexport interface XBackTopConfig {\r\n right?: string;\r\n bottom?: string;\r\n visibilityHeight?: XNumber;\r\n}\r\n\r\nexport interface XBadgeConfgig {\r\n type?: XType;\r\n}\r\n\r\nexport interface XButtonConfig {\r\n size?: XSize;\r\n type?: XType;\r\n plain?: XBoolean;\r\n round?: XBoolean;\r\n circle?: XBoolean;\r\n}\r\n\r\nexport interface XButtonsConfig {\r\n space?: XNumber;\r\n hiddenBorder?: XBoolean;\r\n}\r\n\r\nexport interface XCalendarConfig {}\r\n\r\nexport interface XCardConfig {\r\n shadow?: XShadow;\r\n}\r\n\r\nexport interface XCarouselConfig {\r\n height?: string;\r\n trigger?: XTrigger;\r\n arrow?: XShadow;\r\n direction?: XDisplayDirection;\r\n}\r\n\r\nexport interface XCascadeConfig {\r\n placement?: XCorner;\r\n size?: XSize;\r\n bordered?: boolean;\r\n}\r\n\r\nexport interface XCheckboxConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XCollapseConfig {}\r\n\r\nexport interface XColorConfig {\r\n merge?: string;\r\n amounts?: string;\r\n}\r\n\r\nexport interface XColorPickerConfig {\r\n placement?: XCorner;\r\n}\r\n\r\nexport interface XCommentConfig {\r\n contentMax?: number;\r\n}\r\n\r\nexport interface XContainerConfig {\r\n direction?: XDirection;\r\n}\r\n\r\nexport interface XHeaderConfig {\r\n height?: number;\r\n}\r\n\r\nexport interface XAsideConfig {\r\n width?: number;\r\n}\r\n\r\nexport interface XFooterConfig {\r\n height?: number;\r\n}\r\n\r\nexport interface XCrumbComfig {\r\n separator?: string;\r\n}\r\n\r\nexport interface XDatePickerConfig {\r\n format?: string;\r\n clearable?: XBoolean;\r\n placement?: XCorner;\r\n size?: XSize;\r\n bordered?: boolean;\r\n}\r\n\r\nexport interface XDateRangeConfig {\r\n format?: string;\r\n clearable?: XBoolean;\r\n placement?: XCorner;\r\n}\r\n\r\nexport interface XDialogConfig {\r\n placement?: XPlace;\r\n offset?: string;\r\n width?: string;\r\n effect?: XEffect;\r\n showCancel?: XBoolean;\r\n cancelText?: string;\r\n showConfirm?: XBoolean;\r\n confirmText?: string;\r\n backdropClose?: XBoolean;\r\n draggable?: XBoolean;\r\n hasBackdrop?: XBoolean;\r\n className?: string;\r\n buttonsCenter?: XBoolean;\r\n}\r\n\r\nexport interface XDrawerConfig {\r\n placement?: XPosition;\r\n size?: string;\r\n}\r\n\r\nexport interface XDropdownConfig {\r\n trigger?: XTrigger;\r\n placement?: XPlacement;\r\n}\r\n\r\nexport interface XDescriptionConfig {\r\n bordered?: XBoolean;\r\n size?: XSize;\r\n}\r\n\r\nexport interface XEmptyConfig {\r\n content?: string;\r\n}\r\n\r\nexport interface XFindConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n columnLabel?: string;\r\n dialogTitle?: string;\r\n dialogButtonsCenter?: XBoolean;\r\n tableIndex?: number;\r\n tableSize?: number;\r\n tableLoading?: XBoolean;\r\n tableVirtualScroll?: boolean;\r\n tableRowHeight?: XNumber;\r\n treeExpandedLevel?: XNumber;\r\n}\r\n\r\nexport interface XFormConfig {\r\n space?: XNumber;\r\n labelSuffix?: string;\r\n width?: string;\r\n}\r\n\r\nexport interface XHighlightConfig {}\r\n\r\nexport interface XIconConfig {\r\n href?: string;\r\n}\r\n\r\nexport interface XInnerConfig {\r\n padding?: string;\r\n}\r\n\r\nexport interface XInputConfig {\r\n clearable?: XBoolean;\r\n iconLayout?: XPositionLeftRight;\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XInputGroupConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n compact?: XBoolean;\r\n}\r\n\r\nexport interface XInputNumberConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XColConfig {}\r\n\r\nexport interface XRowConfig {}\r\n\r\nexport interface XRippleConfig {\r\n type?: XType;\r\n}\r\n\r\nexport interface XLinkConfig {\r\n underline?: XBoolean;\r\n iconRight?: XBoolean;\r\n}\r\n\r\nexport interface XListConfig {}\r\n\r\nexport interface XLoadingConfig {\r\n size?: XSize;\r\n text?: string;\r\n icon?: string;\r\n color?: string;\r\n background?: string;\r\n}\r\n\r\nexport interface XMenuConfig {\r\n size?: XSize;\r\n trigger?: XTrigger;\r\n}\r\n\r\nexport interface XMessageConfig {\r\n type?: XStatus;\r\n width?: string;\r\n placement?: XPlace;\r\n displayType?: string;\r\n offset?: string | string[];\r\n duration?: number;\r\n hideClose?: boolean;\r\n showIcon?: boolean;\r\n}\r\n\r\nexport interface XMessageBoxConfig {}\r\n\r\nexport interface XNotificationConfig {}\r\n\r\nexport interface XOutletConfig {}\r\n\r\nexport interface XPageHeaderConfig {\r\n backIcon?: string;\r\n backText?: string;\r\n}\r\n\r\nexport interface XPaginationConfig {\r\n index?: XNumber;\r\n size?: XNumber;\r\n space?: XNumber;\r\n pageLinkSize?: XNumber;\r\n hiddenBorder?: boolean;\r\n showEllipsis?: boolean;\r\n showTotal?: boolean;\r\n}\r\n\r\nexport interface XPatternConfig {}\r\n\r\nexport interface XPopconfirmConfig {\r\n placement?: XPlacement;\r\n trigger?: XTrigger;\r\n width?: string;\r\n icon?: string;\r\n iconColor?: string;\r\n cancelText?: string;\r\n confirmText?: string;\r\n}\r\n\r\nexport interface XPopoverConfig {\r\n placement?: XPlacement;\r\n trigger?: XTrigger;\r\n width?: string;\r\n}\r\n\r\nexport interface XPortalConfig {}\r\n\r\nexport interface XProgressConfing {\r\n height?: string;\r\n}\r\n\r\nexport interface XRadioConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XRateConfig {}\r\n\r\nexport interface XResultConfig {}\r\n\r\nexport interface XSelectConfig {\r\n placement?: XPositionTopBottom;\r\n clearable?: XBoolean;\r\n}\r\n\r\nexport interface XSkeletonConfig {}\r\n\r\nexport interface XSliderConfig {\r\n animated?: XBoolean;\r\n size?: XSize;\r\n}\r\n\r\nexport interface XSliderSelectConfig {}\r\n\r\nexport interface XStatisticConfig {}\r\n\r\nexport interface XCountdownConfig {\r\n format?: string;\r\n}\r\n\r\nexport interface XStepsConfig {}\r\n\r\nexport interface XSwitchConfig {}\r\n\r\nexport interface XTableConfig {\r\n index?: number;\r\n size?: number;\r\n loading?: XBoolean;\r\n showHeader?: XBoolean;\r\n virtualScroll?: boolean;\r\n rowHeight?: XNumber;\r\n itemSize?: XNumber;\r\n bordered?: XNumber;\r\n allowSelectRow?: XBoolean;\r\n rowSize?: XSize;\r\n}\r\n\r\nexport interface XTabsConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XTagConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n closable?: XBoolean;\r\n dark?: XBoolean;\r\n}\r\n\r\nexport interface XTextRetractConfig {\r\n max?: XNumber;\r\n}\r\n\r\nexport interface XThemeConfig {\r\n amounts?: XNumber[];\r\n}\r\n\r\nexport interface XTimeAgoConfig {}\r\n\r\nexport interface XTimePickerConfig {\r\n format?: string;\r\n placement?: XCorner;\r\n}\r\n\r\nexport interface XTimeRangeConfig {}\r\n\r\nexport interface XTimelineConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XTooltipConfig {\r\n placement?: XPlacement;\r\n}\r\n\r\nexport interface XTransferConfig {\r\n titles?: string[];\r\n drag?: XBoolean;\r\n}\r\n\r\nexport interface XTreeConfig {\r\n spacing?: XNumber;\r\n nodeHeight?: XNumber;\r\n}\r\n\r\nexport interface XTextareaConfig {\r\n clearable?: XBoolean;\r\n iconLayout?: XPositionLeftRight;\r\n}\r\n\r\nexport interface XTreeFileConfig {\r\n maxHeight?: XNumber;\r\n spacing?: XNumber;\r\n}\r\n\r\nexport interface XUploadConfig {}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport interface XTheme {\r\n colors?: XColorsTheme;\r\n}\r\n\r\nexport interface XColorsTheme {\r\n primary?: string;\r\n success?: string;\r\n warning?: string;\r\n danger?: string;\r\n info?: string;\r\n text?: string;\r\n border?: string;\r\n background?: string;\r\n [property: string]: any;\r\n}\r\n\r\nexport type XThemeKey = keyof XTheme;\r\n\r\nexport type XColors = 'primary' | 'success' | 'warning' | 'danger' | 'info';\r\n\r\nexport const X_THEME = new InjectionToken<XTheme>('x-theme');\r\n\r\nexport const X_THEME_PREFIX = '--x-';\r\n\r\nexport const X_THEME_MERGE = '#ffffff';\r\n\r\nexport const X_THEME_BLACK_MERGE = '#cccccc';\r\n\r\nexport const X_THEME_AMOUNTS = [0, -0.1, -0.2, -0.3, -0.4, -0.5, -0.6, -0.7, -0.8, -0.9, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9];\r\n\r\nexport const X_THEME_BACKGROUNDS = [-0.2, -0.3, -0.4];\r\n\r\nexport const X_THEME_TEXTS = [\r\n [-0.5, 0],\r\n [-0.6, 0.2],\r\n [-0.7, 0.4]\r\n];\r\n\r\nexport const X_THEME_BORDERS = [\r\n [-0.8, 0],\r\n [-0.9, 0.2]\r\n];\r\n\r\nexport const X_THEME_EXCHANGES = [\r\n [-0.1, -0.1],\r\n [0.1, -0.1],\r\n [0.2, 0.2],\r\n [0.3, 0],\r\n [0.4, -0.4],\r\n [0.5, -0.2],\r\n [0.6, 0],\r\n [0.7, -0.4],\r\n [0.8, -0.4],\r\n [0.9, -0.2]\r\n];\r\n\r\nexport const X_THEME_COLORS: XColorsTheme = {\r\n primary: '#1976d2',\r\n success: '#67c23a',\r\n warning: '#e6a23c',\r\n danger: '#f56c6c',\r\n info: '#909399',\r\n text: '#333333',\r\n border: '#dddddd',\r\n background: '#ffffff'\r\n};\r\n\r\nexport const X_THEME_DARK_COLORS: XColorsTheme = {\r\n text: '#dddddd',\r\n border: '#424242',\r\n background: '#1e1e1f'\r\n};\r\n\r\nexport const X_THEME_COLOR_KEYS = Object.keys(X_THEME_COLORS);\r\n","import { Injectable, Inject, RendererFactory2, Renderer2 } from '@angular/core';\r\nimport {\r\n XTheme,\r\n XColorsTheme,\r\n X_THEME_COLORS,\r\n X_THEME_COLOR_KEYS,\r\n X_THEME_PREFIX,\r\n X_THEME_AMOUNTS,\r\n X_THEME_MERGE,\r\n X_THEME_BLACK_MERGE,\r\n X_THEME_EXCHANGES,\r\n X_THEME_BACKGROUNDS,\r\n X_THEME_TEXTS,\r\n X_THEME_BORDERS\r\n} from './theme';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class XThemeService {\r\n private colorsProp: XColorsTheme = {};\r\n private colorsStyleEle!: HTMLStyleElement;\r\n private renderer2: Renderer2;\r\n private declaration: CSSStyleDeclaration;\r\n\r\n constructor(@Inject(DOCUMENT) private doc: any, private factory: RendererFactory2) {\r\n this.renderer2 = this.factory.createRenderer(null, null);\r\n this.declaration = getComputedStyle(this.doc.documentElement);\r\n }\r\n\r\n setInitialTheme(theme?: XTheme) {\r\n this.setColors(theme?.colors);\r\n if (theme?.colors) Object.assign(X_THEME_COLORS, theme.colors);\r\n }\r\n\r\n setTheme(theme?: XTheme) {\r\n this.setColors(theme?.colors);\r\n }\r\n\r\n getTheme(includesAll = false): XTheme {\r\n return {\r\n colors: this.getColors(includesAll)\r\n };\r\n }\r\n\r\n setColors(colors?: XColorsTheme) {\r\n colors = this.getColorsTheme(colors);\r\n for (let key in colors) {\r\n Object.assign(this.colorsProp, this.setRoot(key, colors[key]));\r\n }\r\n this.createColorsStyle();\r\n }\r\n\r\n getColors(includes = false, prefix = X_THEME_PREFIX): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n const keys = includes ? Object.keys(this.colorsProp) : X_THEME_COLOR_KEYS.map((x) => `${prefix}${x}`);\r\n keys.forEach((x) => {\r\n result[x.replace(prefix, '')] = this.declaration.getPropertyValue(`${x}`).trim();\r\n });\r\n\r\n return result;\r\n }\r\n\r\n getColorsInProperty(colors?: XColorsTheme, prefix = X_THEME_PREFIX): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n Object.keys(colors as XColorsTheme).forEach((x) => {\r\n result[x] = this.declaration.getPropertyValue(`${prefix}${x}`).trim();\r\n });\r\n\r\n return result;\r\n }\r\n\r\n getColorsTheme(colors?: XColorsTheme) {\r\n if (typeof colors === 'undefined') colors = X_THEME_COLORS;\r\n else colors = Object.assign({}, X_THEME_COLORS, colors);\r\n return colors;\r\n }\r\n\r\n setRoot(color: string, value: string, prefix = X_THEME_PREFIX) {\r\n let result: XColorsTheme = {};\r\n if (X_THEME_COLOR_KEYS.includes(color)) {\r\n for (let amount of X_THEME_AMOUNTS) {\r\n if (amount === 0) {\r\n result[`${prefix}${color}`] = value;\r\n } else {\r\n result[`${prefix}${color}${this.getSuffix(amount)}`] = toHex(\r\n mixColors(amount > 0 ? X_THEME_MERGE : X_THEME_BLACK_MERGE, value, Math.abs(amount))\r\n );\r\n }\r\n }\r\n } else {\r\n result[`${prefix}${color}`] = value;\r\n }\r\n return result;\r\n }\r\n\r\n setDarkRoot(color: string, value: string, prefix = X_THEME_PREFIX) {\r\n let result: XColorsTheme = {};\r\n const allColors = this.setRoot(color, value, '');\r\n if (X_THEME_COLOR_KEYS.includes(color) && !['background'].includes(color)) {\r\n const allColors = this.setRoot(color, value, prefix);\r\n X_THEME_EXCHANGES.forEach((x) => {\r\n if (x[1] >= -0.1) {\r\n const curr = this.getSuffix(x[0]);\r\n const next = this.getSuffix(x[1]);\r\n result[`${prefix}${color}${curr}`] = allColors[`${prefix}${color}${next}`];\r\n }\r\n });\r\n } else if (['background'].includes(color)) {\r\n result = this.getDefineColors(Object.assign({}, this.getColorsInProperty(X_THEME_COLORS), allColors), '', true);\r\n }\r\n return result;\r\n }\r\n\r\n getDefineColors(colors?: XColorsTheme, prefix = X_THEME_PREFIX, darken = false): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n colors = this.getColorsTheme(colors);\r\n for (let key in colors) {\r\n Object.assign(result, this.setRoot(key, colors[key], prefix));\r\n }\r\n if (darken) {\r\n const colorsFunc = (nums: number[] | number[][], callback: Function) => {\r\n for (let num of nums) {\r\n for (let color in colors) {\r\n if (X_THEME_COLOR_KEYS.includes(color) && !['background'].includes(color)) {\r\n callback(num, color);\r\n }\r\n }\r\n }\r\n };\r\n colorsFunc(X_THEME_BACKGROUNDS, (background: number, color: string) => {\r\n const theme = this.getSuffix(background);\r\n result[`${prefix}${color}${theme}`] = result[`${prefix}background${theme.replace('a', '')}`];\r\n });\r\n colorsFunc(X_THEME_TEXTS, (text: number[], color: string) => {\r\n const curr = this.getSuffix(text[0]);\r\n const next = this.getSuffix(text[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}text${next}`];\r\n });\r\n colorsFunc(X_THEME_BORDERS, (border: number[], color: string) => {\r\n const curr = this.getSuffix(border[0]);\r\n const next = this.getSuffix(border[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}border${next}`];\r\n });\r\n colorsFunc(X_THEME_EXCHANGES, (exchange: number[], color: string) => {\r\n const curr = this.getSuffix(exchange[0]);\r\n const next = this.getSuffix(exchange[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}${color}${next}`];\r\n });\r\n }\r\n return result;\r\n }\r\n\r\n getSuffix(num: number): string {\r\n if (num > 0) {\r\n return `-${Math.abs(num * 1000)}`;\r\n } else if (num < 0) {\r\n return `-a${Math.abs(num * 1000)}`;\r\n }\r\n return '';\r\n }\r\n\r\n createColorsStyle() {\r\n if (this.colorsStyleEle) this.renderer2.removeChild(this.colorsStyleEle.parentNode, this.colorsStyleEle);\r\n const styles = Object.entries(this.colorsProp)\r\n .map((x) => `${x[0]}: ${x[1]};`)\r\n .join('');\r\n this.colorsStyleEle = this.renderer2.createElement('style');\r\n this.colorsStyleEle.innerHTML = `.x-theme-colors{${styles}}`;\r\n this.renderer2.addClass(this.doc.documentElement, 'x-theme-colors');\r\n this.doc.documentElement.getElementsByTagName('head')[0].appendChild(this.colorsStyleEle);\r\n }\r\n}\r\n\r\nexport function mixColors(color1: string, color2: string, weight: number) {\r\n let rgb1 = toRgb(color1);\r\n let rgb2 = toRgb(color2);\r\n let weight1 = weight;\r\n let weight2 = 1 - weight;\r\n let result: { r: number; g: number; b: number };\r\n\r\n const inRange = (num: number) => {\r\n return num > 255 ? 255 : num < 0 ? 0 : num;\r\n };\r\n\r\n result = {\r\n r: inRange(Math.round(rgb1.r * weight1 + rgb2.r * weight2)),\r\n g: inRange(Math.round(rgb1.g * weight1 + rgb2.g * weight2)),\r\n b: inRange(Math.round(rgb1.b * weight1 + rgb2.b * weight2))\r\n };\r\n\r\n return result;\r\n}\r\n\r\nexport function toHex(rgb: { r: number; g: number; b: number }) {\r\n return '#' + ((1 << 24) + (rgb.r << 16) + (rgb.g << 8) + rgb.b).toString(16).slice(1);\r\n}\r\n\r\nexport function toRgb(hex: string) {\r\n if (hex.indexOf('#') == 0) hex = hex.slice(1);\r\n let num = parseInt(hex, 16);\r\n let r = num >> 16;\r\n if (r > 255) r = 255;\r\n else if (r < 0) r = 0;\r\n let g = (num >> 8) & 0x00ff;\r\n if (g > 255) g = 255;\r\n else if (g < 0) g = 0;\r\n let b = num & 0x0000ff;\r\n if (b > 255) b = 255;\r\n else if (b < 0) b = 0;\r\n\r\n return { r: r, g: g, b: b };\r\n}\r\n","// tslint:disable no-any\r\n\r\nimport { Injectable, Optional, Inject } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { XConfig, X_CONFIG, XComponentConfigKey, XComponentConfig } from './config';\r\nimport { XThemeService, XTheme, X_THEME_COLORS, X_THEME_DARK_COLORS } from '../theme';\r\nimport { filter, mapTo } from 'rxjs/operators';\r\n\r\nconst isDefined = function (value?: any): boolean {\r\n return value !== undefined;\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class XConfigService {\r\n private componentConfigUpdated$ = new Subject<keyof XComponentConfig>();\r\n private config: XConfig;\r\n public themeService!: XThemeService;\r\n\r\n constructor(@Optional() themeService?: XThemeService, @Optional() @Inject(X_CONFIG) defaultConfig?: XConfig) {\r\n this.config = defaultConfig || {};\r\n if (themeService) {\r\n this.themeService = themeService;\r\n }\r\n this.setInitialTheme(this.config.theme);\r\n }\r\n\r\n getConfigForComponent<T extends XComponentConfigKey>(componentName: T): XComponentConfig[T] {\r\n return this.config?.components ? this.config.components[componentName] : undefined;\r\n }\r\n\r\n getConfigChangeEventForComponent(componentName: XComponentConfigKey): Observable<void> {\r\n return this.componentConfigUpdated$.pipe(\r\n filter((n) => n === componentName),\r\n mapTo(undefined)\r\n );\r\n }\r\n\r\n set<T extends XComponentConfigKey>(componentName: T, value: XComponentConfig[T]): void {\r\n if (this.config?.components) {\r\n this.config.components[componentName] = { ...this.config.components[componentName], ...value };\r\n this.componentConfigUpdated$.next(componentName);\r\n }\r\n }\r\n\r\n setDarkTheme(theme?: XTheme) {\r\n let colors = theme?.colors;\r\n if (!colors) colors = X_THEME_DARK_COLORS;\r\n this.setTheme({\r\n colors: this.themeService.getDefineColors(Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), colors), '', true)\r\n });\r\n }\r\n\r\n setLightTheme(theme?: XTheme) {\r\n let colors = theme?.colors;\r\n if (!colors) colors = X_THEME_COLORS;\r\n this.setTheme({\r\n colors: this.themeService.getDefineColors(Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), colors), '', false)\r\n });\r\n }\r\n\r\n setTheme(theme?: XTheme) {\r\n this.themeService.setTheme(theme);\r\n }\r\n\r\n setInitialTheme(theme?: XTheme) {\r\n this.themeService.setInitialTheme(theme);\r\n }\r\n\r\n getTheme(includesAll = false): XTheme {\r\n return this.themeService.getTheme(includesAll);\r\n }\r\n}\r\n\r\n// tslint:disable-next-line:typedef\r\nexport function XWithConfig<T>(componentName: XComponentConfigKey, innerDefaultValue?: T) {\r\n return function ConfigDecorator(target: any, propName: any, originalDescriptor?: TypedPropertyDescriptor<T>): any {\r\n const privatePropName = `$$__assignedValue__${propName}`;\r\n\r\n Object.defineProperty(target, privatePropName, {\r\n configurable: true,\r\n writable: true,\r\n enumerable: false\r\n });\r\n\r\n return {\r\n get(): T | undefined {\r\n const originalValue = originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\r\n\r\n if (isDefined(originalValue)) {\r\n return originalValue;\r\n }\r\n\r\n const componentConfig = this.configService?.getConfigForComponent(componentName) || {};\r\n const configValue = componentConfig[propName];\r\n\r\n return isDefined(configValue) ? configValue : innerDefaultValue;\r\n },\r\n set(value: T): void {\r\n if (originalDescriptor && originalDescriptor.set) {\r\n originalDescriptor.set.bind(this)(value);\r\n } else {\r\n this[privatePropName] = value;\r\n }\r\n },\r\n configurable: true,\r\n enumerable: true\r\n };\r\n };\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Observable","XDuration","XDURATION_BASE_EASE_IN","XDURATION_BASE_EASE_OUT","trigger","transition","style","animate","state","isObservable","coerceBooleanProperty","_isNumberValue","map","takeUntil","of","Injectable","throwError","InjectionToken","DOCUMENT","Inject","Subject","filter","mapTo","Optional"],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-core.umd.js","sources":["../../../../lib/ng-nest/ui/core/util/chunk.ts","../../../../lib/ng-nest/ui/core/util/guid.ts","../../../../lib/ng-nest/ui/core/util/group-by.ts","../../../../node_modules/tslib/tslib.es6.js","../../../../lib/ng-nest/ui/core/util/resize.ts","../../../../lib/ng-nest/ui/core/util/option.ts","../../../../lib/ng-nest/ui/core/util/host.ts","../../../../lib/ng-nest/ui/core/util/log.ts","../../../../lib/ng-nest/ui/core/util/computed-style.ts","../../../../lib/ng-nest/ui/core/util/animation.ts","../../../../lib/ng-nest/ui/core/util/html.ts","../../../../lib/ng-nest/ui/core/animation/consts.ts","../../../../lib/ng-nest/ui/core/animation/fade.ts","../../../../lib/ng-nest/ui/core/animation/slide.ts","../../../../lib/ng-nest/ui/core/animation/drop.ts","../../../../lib/ng-nest/ui/core/animation/move.ts","../../../../lib/ng-nest/ui/core/animation/connect.ts","../../../../lib/ng-nest/ui/core/interfaces/data.type.ts","../../../../lib/ng-nest/ui/core/interfaces/identify.type.ts","../../../../lib/ng-nest/ui/core/functions/convert.ts","../../../../lib/ng-nest/ui/core/functions/date.ts","../../../../lib/ng-nest/ui/core/functions/flex.ts","../../../../lib/ng-nest/ui/core/functions/drop.ts","../../../../lib/ng-nest/ui/core/functions/remove.ts","../../../../lib/ng-nest/ui/core/functions/order-by.ts","../../../../lib/ng-nest/ui/core/functions/clone-deep.ts","../../../../lib/ng-nest/ui/core/functions/has-in.ts","../../../../lib/ng-nest/ui/core/functions/property.ts","../../../../lib/ng-nest/ui/core/services/reuse-strategy.service.ts","../../../../lib/ng-nest/ui/core/services/preloading-strategy.service.ts","../../../../lib/ng-nest/ui/core/services/http.service.ts","../../../../lib/ng-nest/ui/core/services/storage.service.ts","../../../../lib/ng-nest/ui/core/services/repository.service.ts","../../../../lib/ng-nest/ui/core/config/config.ts","../../../../lib/ng-nest/ui/core/theme/theme.ts","../../../../lib/ng-nest/ui/core/theme/theme.service.ts","../../../../lib/ng-nest/ui/core/config/config.service.ts","../../../../lib/ng-nest/ui/core/ng-nest-ui-core.ts"],"sourcesContent":["export function chunk<T>(array: T[], size = 1): T[][] {\r\n const len = array == null ? 0 : array.length;\r\n if (!len || size < 1) {\r\n return [];\r\n }\r\n let index = 0;\r\n let resIndex = 0;\r\n const result = new Array(Math.ceil(len / size));\r\n\r\n while (index < len) {\r\n result[resIndex++] = array.slice(index, (index += size));\r\n }\r\n return result;\r\n}\r\n","/**\r\n * 生成 GUID\r\n */\r\nexport function guid() {\r\n let S4 = () => {\r\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\r\n };\r\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\r\n}\r\n","export function groupBy<T>(array: T[], name: string): T[][] {\r\n const groups: any = {};\r\n array.forEach((obj: any) => {\r\n const group = JSON.stringify(obj[name]);\r\n groups[group] = groups[group] || [];\r\n groups[group].push(obj);\r\n });\r\n return Object.keys(groups).map((group) => groups[group]);\r\n}\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Observable, Subscriber } from 'rxjs';\r\n\r\nexport const XResize = (...element: Element[]): Observable<{ entry: ResizeObserverEntry; resizeObserver: ResizeObserver }> => {\r\n return new Observable(\r\n (\r\n x: Subscriber<{\r\n entry: ResizeObserverEntry;\r\n resizeObserver: ResizeObserver;\r\n }>\r\n ) => {\r\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\r\n for (const entry of entries) {\r\n x.next({ entry: entry, resizeObserver: resizeObserver });\r\n }\r\n });\r\n for (let ele of element) {\r\n if (ele) resizeObserver.observe(ele);\r\n }\r\n\r\n //XResize 取消订阅的时候自动销毁\r\n //resizeObserver.disconnect();\r\n }\r\n );\r\n};\r\n","/**\r\n * Fill default values\r\n * @param option option\r\n * @param def default\r\n */\r\nexport function fillDefault(option: { [property: string]: any }, def: { [property: string]: any }) {\r\n if (option && def) {\r\n for (const key in def) {\r\n if (typeof option[key] === 'undefined') {\r\n option[key] = def[key];\r\n }\r\n }\r\n }\r\n}\r\n","/**\r\n * 删除当前标签,保留内容\r\n */\r\nexport function removeNgTag(nativeElement: HTMLElement): void {\r\n const parentElement = nativeElement.parentElement;\r\n if (!parentElement || !parentElement.insertBefore) return;\r\n while (nativeElement.firstChild) {\r\n parentElement.insertBefore(nativeElement.firstChild, nativeElement);\r\n }\r\n parentElement.removeChild(nativeElement);\r\n}\r\n","export function warnSVGTagNotFound() {\r\n console.warn(`<svg> tag not found.`);\r\n}\r\nexport function warnIconTypeNotFound() {\r\n console.warn(`icon type not found.`);\r\n}\r\n","export function computedStyle(element: HTMLElement, style: string) {\r\n let computed = getComputedStyle(element);\r\n let value = computed[style as any];\r\n return value.replace(/px/g, '');\r\n}\r\n","// tslint:disable:no-any typedef no-invalid-this\r\nconst availablePrefixes = ['moz', 'ms', 'webkit'];\r\n\r\nfunction requestAnimationFramePolyfill(): typeof requestAnimationFrame {\r\n let lastTime = 0;\r\n return function (callback: FrameRequestCallback): any {\r\n const currTime = new Date().getTime();\r\n const timeToCall = Math.max(0, 16 - (currTime - lastTime));\r\n const id = setTimeout(() => {\r\n callback(currTime + timeToCall);\r\n }, timeToCall);\r\n lastTime = currTime + timeToCall;\r\n return id;\r\n };\r\n}\r\n\r\nfunction getRequestAnimationFrame(): typeof requestAnimationFrame {\r\n if (typeof window === 'undefined') {\r\n return () => 0;\r\n }\r\n if (window.requestAnimationFrame) {\r\n return window.requestAnimationFrame.bind(window);\r\n }\r\n\r\n const prefix = availablePrefixes.filter((key) => `${key}RequestAnimationFrame` in window)[0];\r\n\r\n return prefix ? (window as any)[`${prefix}RequestAnimationFrame`] : requestAnimationFramePolyfill();\r\n}\r\n// export function cancelRequestAnimationFrame(id: number): any {\r\n// if (typeof window === \"undefined\") {\r\n// return null;\r\n// }\r\n// if (window.cancelAnimationFrame) {\r\n// return window.cancelAnimationFrame(id);\r\n// }\r\n// const prefix = availablePrefixes.filter(\r\n// key =>\r\n// `${key}CancelAnimationFrame` in window ||\r\n// `${key}CancelRequestAnimationFrame` in window\r\n// )[0];\r\n\r\n// return prefix\r\n// ? (\r\n// (window as any)[`${prefix}CancelAnimationFrame`] ||\r\n// (window as any)[`${prefix}CancelRequestAnimationFrame`]\r\n// )\r\n// // @ts-ignore\r\n// .call(this, id)\r\n// : clearTimeout(id);\r\n// }\r\n\r\nexport const reqAnimFrame = getRequestAnimationFrame();\r\n","/**\r\n * 去除HTML标签\r\n */\r\n export function stripTags(text: string, ...usefulTags: any[]): string {\r\n if (!text || typeof (text) !== 'string')\r\n return text;\r\n return usefulTags.length > 0\r\n ? text.replace(new RegExp(`<(?!\\/?(${usefulTags.join('|')})\\s*\\/?)[^>]+>`, 'g'), '')\r\n : text.replace(/<(?:.|\\s)*?>/g, '');\r\n}\r\n","export enum XDuration {\r\n Slow = '0.3s',\r\n Base = '0.2s',\r\n Fast = '0.1s'\r\n}\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\n// 进场动画\r\nconst XDURATION_BASE_EASE_IN = `${XDuration.Fast} ease-in`;\r\n// 移除动画\r\nconst XDURATION_BASE_EASE_OUT = `${XDuration.Fast} ease-out`;\r\n\r\nexport const XFadeAnimation: AnimationTriggerMetadata = trigger('x-fade-animation', [\r\n transition(':enter', [\r\n style({ opacity: 0, transform: 'scale(0.8)' }),\r\n animate(`${XDURATION_BASE_EASE_IN}`, style({ opacity: 1, transform: 'scale(1)' }))\r\n ]),\r\n transition(':leave', [animate(`${XDURATION_BASE_EASE_OUT}`, style({ opacity: 0 }))])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\nexport const XSlideAnimation: AnimationTriggerMetadata = trigger('x-slide-animation', [\r\n transition('void => right', [style({ transform: 'translate(100%,0)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('right => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(100%,0)' }))]),\r\n transition('void => left', [style({ transform: 'translate(-100%,0)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('left => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(-100%,0)' }))]),\r\n transition('void => top', [style({ transform: 'translate(0,-100%)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('top => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(0,-100%)' }))]),\r\n transition('void => bottom', [style({ transform: 'translate(0,100%)' }), animate(`${XDuration.Base} ease-in`)]),\r\n transition('bottom => void', [animate(`${XDuration.Base} ease-out`, style({ transform: 'translate(0,100%)' }))])\r\n]);\r\n\r\nexport const XSliderAnimation: AnimationTriggerMetadata = trigger('x-slider-animation', [\r\n transition('void => left, void => right', [\r\n style({\r\n width: 0,\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n width: '*',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void, right => void', [\r\n style({\r\n width: '*',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n width: 0,\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, state, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\nexport const XDropAnimation: AnimationTriggerMetadata = trigger('x-drop-animation', [\r\n state('*', style({ opacity: 0, height: 0, border: 0, padding: 0, visibility: 'hidden' })),\r\n state('false', style({ opacity: 0, height: 0, border: 0, padding: 0, visibility: 'hidden' })),\r\n state('true', style({ opacity: 1, height: '*', border: '*', padding: '*', visibility: 'inherit' })),\r\n transition('* => *', animate(`${XDuration.Base} ease-out`))\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\nexport const XMoveAnimation: AnimationTriggerMetadata = trigger('x-move-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n transform: 'translateY(-200%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(-200%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n transform: 'translateY(200%)',\r\n opacity: 0,\r\n height: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1,\r\n height: '*'\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(200%)',\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n\r\nexport const XMoveBoxAnimation: AnimationTriggerMetadata = trigger('x-move-box-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n transform: 'translateY(-2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(-2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n transform: 'translateY(2rem)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n transform: 'translateY(0%)',\r\n opacity: 1\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateY(2rem)',\r\n opacity: 0\r\n })\r\n )\r\n ])\r\n]);\r\n","import { AnimationTriggerMetadata, trigger, style, animate, transition } from '@angular/animations';\r\nimport { XDuration } from './consts';\r\n\r\n// 进场动画\r\nconst XDURATION_BASE_EASE_IN = `${XDuration.Fast} ease-in`;\r\n// 移除动画\r\nconst XDURATION_BASE_EASE_OUT = `${XDuration.Fast} ease-out`;\r\n\r\nexport const XConnectAnimation: AnimationTriggerMetadata = trigger('x-connect-animation', [\r\n transition('void => top-start, void => top, void => top-end, void => center', [\r\n style({\r\n opacity: 0\r\n // transform: 'scaleY(0.8)',\r\n // transformOrigin: '0% 100%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_IN,\r\n style({\r\n opacity: 1\r\n // transform: 'scaleY(1)',\r\n // transformOrigin: '0% 100%'\r\n })\r\n )\r\n ]),\r\n transition('top-start => void, top => void, top-end => void, center => void', [\r\n style({\r\n opacity: 1\r\n // transform: 'scaleY(1)',\r\n // transformOrigin: '0% 100%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_OUT,\r\n style({\r\n opacity: 0\r\n // transform: 'scaleY(0.8)',\r\n // transformOrigin: '0% 100%'\r\n })\r\n )\r\n ]),\r\n transition('void => left', [\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('left => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(-30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => right', [\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1\r\n })\r\n )\r\n ]),\r\n transition('right => void', [\r\n style({\r\n transform: 'translateX(0%)',\r\n opacity: 1,\r\n height: '*'\r\n }),\r\n animate(\r\n `${XDuration.Base}`,\r\n style({\r\n transform: 'translateX(30%)',\r\n opacity: 0,\r\n height: 0\r\n })\r\n )\r\n ]),\r\n transition('void => bottom-start, void => bottom, void => bottom-end', [\r\n style({\r\n opacity: 0\r\n // transform: 'scale(0)',\r\n // transformOrigin: '0% 0%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_IN,\r\n style({\r\n opacity: 1\r\n // transform: 'scale(1)',\r\n // transformOrigin: '30% 30%'\r\n })\r\n )\r\n ]),\r\n transition('bottom-start => void, bottom => void, bottom-end => void', [\r\n style({\r\n opacity: 1\r\n // transform: 'scale(1)',\r\n // transformOrigin: '30% 30%'\r\n }),\r\n animate(\r\n XDURATION_BASE_EASE_OUT,\r\n style({\r\n opacity: 0\r\n // transform: 'scale(0)',\r\n // transformOrigin: '0% 0%'\r\n })\r\n )\r\n ])\r\n]);\r\n\r\nexport const XConnectBaseAnimation: AnimationTriggerMetadata = trigger('x-connect-base-animation', [\r\n transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate(XDURATION_BASE_EASE_IN)]),\r\n transition(':leave', [animate(XDURATION_BASE_EASE_OUT, style({ opacity: 0 }))])\r\n]);\r\n","import { Observable, isObservable } from 'rxjs';\r\nimport { TemplateRef, SimpleChange } from '@angular/core';\r\n\r\n// 数据类型\r\nexport type XData<T> = T[] | Observable<T[] | any[]> | any[] | Function;\r\n\r\n// Boolean 类型\r\nexport type XBoolean = boolean | string;\r\n\r\n// Number 类型\r\nexport type XNumber = number | string;\r\n\r\n// 模板类型\r\nexport type XTemplate = string | number | Date | TemplateRef<any>;\r\n\r\n// 类型判断\r\nexport const XIsType = (type: string) => (object: any) => Object.prototype.toString.call(object) === `[object ${type}]`;\r\n\r\n// 值改变判断\r\nexport const XIsChange = (...changes: SimpleChange[]) => {\r\n for (let change of changes) {\r\n if (change?.currentValue !== change?.previousValue) return true;\r\n }\r\n return false;\r\n};\r\n\r\nexport const XIsString = XIsType('String');\r\nexport const XIsArray = XIsType('Array');\r\nexport const XIsNumber = XIsType('Number');\r\nexport const XIsBoolean = XIsType('Boolean');\r\nexport const XIsObject = XIsType('Object');\r\nexport const XIsNull = XIsType('Null');\r\nexport const XIsFunction = XIsType('Function');\r\nexport const XIsDate = XIsType('Date');\r\nexport const XIsRegExp = XIsType('RegExp');\r\nexport const XIsValue = (object: any) => XIsString(object) || XIsNumber(object) || XIsBoolean(object) || XIsDate(object);\r\nexport const XIsUndefined = (object: any) => typeof object === 'undefined';\r\nexport const XIsEmpty = (object: any) => typeof object === 'undefined' || object === null || object === '' || object.length === 0;\r\nexport const XIsValueArray = (object: any) => XIsArray(object) && object.length > 0 && !XIsObject(object[0]);\r\nexport const XIsObjectArray = (object: any) => XIsArray(object) && object.length > 0 && XIsObject(object[0]);\r\nexport const XIsObservable = (object: any) => isObservable(object);\r\nexport const XIsTemplateRef = (object: any) => {\r\n if (!XIsEmpty(object) && object.elementRef) return true;\r\n else return false;\r\n};\r\nexport const XIsXTemplate = (object: any) => XIsString(object) || XIsNumber(object) || XIsDate(object) || XIsTemplateRef(object);\r\n","// 标识对象\r\nexport interface XIdentityProperty {\r\n // 编码\r\n id?: any;\r\n // 标题\r\n label?: any;\r\n}\r\n\r\n// 父节点标识对象\r\nexport interface XParentIdentityProperty<T> extends XIdentityProperty {\r\n // 编码\r\n pid?: any;\r\n // 层级\r\n level?: number;\r\n // 叶子节点\r\n leaf?: boolean;\r\n // 子节点\r\n children?: T[];\r\n // 选中\r\n selected?: boolean;\r\n // 禁用\r\n disabled?: boolean;\r\n}\r\n\r\n// 标识对象\r\nexport class XIdentity {\r\n // 编码\r\n id?: any;\r\n // 标题\r\n label?: any;\r\n}\r\n","import { coerceBooleanProperty, _isNumberValue } from '@angular/cdk/coercion';\r\nimport {\r\n XData,\r\n XIsNull,\r\n XIsUndefined,\r\n XIsArray,\r\n XIsValue,\r\n XIsObject,\r\n XIsObservable,\r\n XParentIdentityProperty,\r\n XBoolean,\r\n XClassMap,\r\n XIsFunction\r\n} from '../interfaces';\r\nimport { Observable, Subject, Observer } from 'rxjs';\r\nimport { map, takeUntil } from 'rxjs/operators';\r\n\r\nexport function XToBoolean(value: XBoolean): boolean {\r\n // if (XIsString(value)) {\r\n // return ['', 'true'].indexOf(String(value).trim()) !== -1;\r\n // } else {\r\n // return Boolean(value);\r\n // }\r\n return coerceBooleanProperty(value);\r\n}\r\n\r\nfunction XToNumber(value: number | string): number;\r\nfunction XToNumber<D>(value: number | string, fallback: D): number | D;\r\nfunction XToNumber(value: number | string, fallbackValue: number = 0): number {\r\n return _isNumberValue(value) ? Number(value) : fallbackValue;\r\n}\r\n\r\nexport function XToDataConvert<T>(value: XData<T>): XData<T> {\r\n if (XIsArray(value)) {\r\n return (value as []).map((x: any) => {\r\n if (XIsValue(x)) {\r\n return { label: x, id: x };\r\n } else if (XIsObject(x)) {\r\n x.label = XIsUndefined(x.label) || XIsNull(x.label) ? x.id : x.label;\r\n x.id = XIsUndefined(x.id) || XIsNull(x.id) ? x.label : x.id;\r\n return x;\r\n }\r\n });\r\n }\r\n return value;\r\n}\r\n\r\nexport function XSetData<T>(data: XData<T>, unSubject: Subject<void>, toConvert = true, funcParam = null): Observable<T[]> {\r\n return new Observable((x: Observer<T[]>) => {\r\n const result = (res: T[]) => {\r\n x.next(res);\r\n x.complete();\r\n };\r\n if (typeof data === 'undefined') {\r\n result([]);\r\n } else {\r\n if (XIsObservable(data)) {\r\n (data as Observable<T[]>)\r\n .pipe(\r\n map((y) => (toConvert ? XToDataConvert(y) : y)),\r\n takeUntil(unSubject)\r\n )\r\n .subscribe((y) => {\r\n result(y as T[]);\r\n });\r\n } else if (XIsFunction(data)) {\r\n (data as (param: any) => Observable<T[]>)(funcParam)\r\n .pipe(\r\n map((y) => (toConvert ? XToDataConvert(y) : y)),\r\n takeUntil(unSubject)\r\n )\r\n .subscribe((y) => {\r\n result(y as T[]);\r\n });\r\n } else {\r\n result((toConvert ? XToDataConvert(data) : data) as T[]);\r\n }\r\n }\r\n });\r\n}\r\n\r\nexport function XGetChildren<T extends XParentIdentityProperty<T>>(nodes: T[], node: T, level: number) {\r\n node.level = level;\r\n node.children = nodes.filter((y) => y.pid === node.id);\r\n node.leaf = node.children?.length > 0;\r\n if (node.leaf) node.children.map((y) => XGetChildren(nodes, y, level + 1));\r\n return node;\r\n}\r\n\r\nexport function XInvertKeyValues(obj: any): Map<any, any> {\r\n return Object.keys(obj).reduce((nw, key) => {\r\n nw.set(obj[key], key);\r\n return nw;\r\n }, new Map());\r\n}\r\n\r\nexport function XClearClass(...classMaps: XClassMap[]) {\r\n classMaps.forEach((classMap) => {\r\n for (const key in classMap) {\r\n classMap[key] = false;\r\n }\r\n });\r\n}\r\n\r\nfunction propDecoratorFactory<T, D>(name: string, fallback: (v: T) => D): (target: any, propName: string) => void {\r\n function propDecorator(target: any, propName: string, originalDescriptor?: TypedPropertyDescriptor<any>): any {\r\n const privatePropName = `$$__${propName}`;\r\n\r\n if (Object.prototype.hasOwnProperty.call(target, privatePropName)) {\r\n console.warn(`The prop \"${privatePropName}\" is already exist, it will be overrided by ${name} decorator.`);\r\n }\r\n\r\n Object.defineProperty(target, privatePropName, {\r\n configurable: true,\r\n writable: true\r\n });\r\n\r\n return {\r\n get(): string {\r\n return originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\r\n },\r\n set(value: T): void {\r\n if (originalDescriptor && originalDescriptor.set) {\r\n originalDescriptor.set.bind(this)(fallback(value));\r\n }\r\n this[privatePropName] = fallback(value);\r\n }\r\n };\r\n }\r\n\r\n return propDecorator;\r\n}\r\n\r\nexport function XInputBoolean(): any {\r\n return propDecoratorFactory('XInputBoolean', XToBoolean);\r\n}\r\n\r\nexport function XInputNumber(): any {\r\n return propDecoratorFactory('XInputNumber', XToNumber);\r\n}\r\n\r\nexport function XDataConvert(): any {\r\n return propDecoratorFactory('XDataConvert', XToDataConvert);\r\n}\r\n\r\nexport function XClamp(value: number, min: number, max: number) {\r\n return Math.max(min, Math.min(max, value));\r\n}\r\n","import { XIsDate, XIsNumber } from '../interfaces';\r\n\r\nexport type XDate = string | Date | number;\r\n\r\nexport function XToDate(date: XDate): Date {\r\n if (XIsDate(date) || XIsNumber(date)) {\r\n return new Date(date);\r\n } else {\r\n return new Date(Date.parse(date as string));\r\n }\r\n}\r\n\r\nexport function XAddSeconds(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setSeconds(dt.getSeconds() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddMinutes(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setMinutes(dt.getMinutes() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddHours(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setHours(dt.getHours() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddDays(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setDate(dt.getDate() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddMonths(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setMonth(dt.getMonth() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n\r\nexport function XAddYears(date: XDate, amount: number): Date {\r\n let dt = XToDate(date);\r\n if (!isNaN(dt.valueOf()) && amount) {\r\n dt.setFullYear(dt.getFullYear() + amount);\r\n return dt;\r\n } else {\r\n return date as Date;\r\n }\r\n}\r\n","import { Renderer2 } from '@angular/core';\r\nimport { XAlign, XDirection, XIsEmpty, XJustify } from '../interfaces';\r\n\r\nexport function setFlex(ele: Element, renderer: Renderer2, justify?: XJustify, align?: XAlign, direction?: XDirection) {\r\n let result: string[] = [];\r\n if (!XIsEmpty(justify)) {\r\n const justifyStr = `x-justify-${justify}`;\r\n result.push(justifyStr)\r\n renderer.addClass(ele, justifyStr);\r\n }\r\n if (!XIsEmpty(align)) {\r\n const alignStr = `x-align-${align}`;\r\n result.push(alignStr)\r\n renderer.addClass(ele, alignStr);\r\n }\r\n if (!XIsEmpty(direction)) {\r\n const directionStr = `x-direction-${direction}`;\r\n result.push(directionStr)\r\n renderer.addClass(ele, directionStr);\r\n }\r\n return result;\r\n}\r\n","export function XDrop<T>(array: Array<T>, n?: number): T[] {\r\n if (!n) return [...array];\r\n if (array.length < 1 || array.length <= Math.abs(n)) return [];\r\n return array.slice(n > 0 ? n : 0, n > 0 ? array.length : n);\r\n}\r\n","export function XRemove<T>(array: Array<T>, predicate?: (value: T) => boolean): T[] {\r\n if (typeof predicate === 'undefined') return [];\r\n let result: T[] = [];\r\n for (let i = 0; i < array.length; i++) {\r\n if (predicate(array[i])) {\r\n result.push(array[i]);\r\n }\r\n }\r\n for (let item of result) {\r\n array.splice(array.indexOf(item), 1);\r\n }\r\n return result;\r\n}\r\n","export function XOrderBy<T>(collection: Array<T>, iteratees: Array<string>, orders?: Array<'asc' | 'desc'>): T[] {\r\n if (!iteratees) return collection;\r\n if (!orders) orders = [];\r\n\r\n function compare(a: any, b: any, prop: any, order: 'asc' | 'desc' | undefined, idex: number): number {\r\n if (a[prop] == b[prop]) {\r\n ++idex;\r\n if (iteratees.length > idex) {\r\n const odr = orders && orders.length > idex ? orders[idex] : 'asc';\r\n return compare(a, b, iteratees[idex], odr, idex);\r\n } else {\r\n return 0;\r\n }\r\n }\r\n if (order === 'desc') {\r\n return (b[prop] - a[prop]) as number;\r\n } else {\r\n return (a[prop] - b[prop]) as number;\r\n }\r\n }\r\n\r\n const iterate = iteratees.shift();\r\n const order = orders.shift() || 'asc';\r\n\r\n if (!iterate) return collection;\r\n\r\n collection.sort((a: any, b: any) => compare(a, b, iterate, order, -1));\r\n\r\n return collection;\r\n}\r\n","export function XCloneDeep(value: any): any {\r\n let result: any = Array.isArray(value) ? [] : {};\r\n if (value && typeof value === 'object') {\r\n for (let key in value) {\r\n if ((value as Object).hasOwnProperty(key)) {\r\n result[key] = value && typeof value[key] === 'object' ? XCloneDeep(value[key]) : value[key];\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n","export function XHasIn(object: Object, key: string) {\r\n return object != null && key in Object(object);\r\n}\r\n","import { XClassMap } from '../interfaces';\r\n\r\n/**\r\n * 组件公共属性\r\n */\r\nexport class XProperty {\r\n /**\r\n * 样式映射属性\r\n */\r\n classMap: XClassMap = {};\r\n}\r\n","import { RouteReuseStrategy, ActivatedRouteSnapshot, DetachedRouteHandle } from '@angular/router';\r\n\r\nexport interface XRouteReuseStorage {\r\n id: string;\r\n handle: DetachedRouteHandle;\r\n}\r\n\r\n// @dynamic\r\nexport class XReuseStrategyService implements RouteReuseStrategy {\r\n // 存储的复用路由\r\n public static storages: XRouteReuseStorage[] = [];\r\n // 用一个临时变量记录待删除的路由\r\n private static waitDelete: string | null;\r\n\r\n /**\r\n * 表示对所有路由允许复用 如果你有路由不想利用可以在这加一些业务逻辑判断\r\n */\r\n public shouldDetach(_route: ActivatedRouteSnapshot): boolean {\r\n return true;\r\n }\r\n\r\n /**\r\n * 当路由离开时会触发。按path作为key存储路由快照&组件当前实例对象\r\n */\r\n public store(route: ActivatedRouteSnapshot, handle: DetachedRouteHandle): void {\r\n if (handle == null) return;\r\n if (XReuseStrategyService.waitDelete && this.getRouteUrl(route).indexOf(XReuseStrategyService.waitDelete) == 0) {\r\n //如果待删除是当前路由则不存储快照\r\n XReuseStrategyService.waitDelete = null;\r\n return;\r\n }\r\n this.add(this.getRouteUrl(route), handle);\r\n }\r\n\r\n /**\r\n * 若 path 在缓存中有的都认为允许还原路由\r\n */\r\n public shouldAttach(route: ActivatedRouteSnapshot): boolean {\r\n return !!XReuseStrategyService.storages.find((x) => x.id == this.getRouteUrl(route));\r\n }\r\n\r\n /**\r\n * 从缓存中获取快照,若无则返回nul\r\n */\r\n public retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle {\r\n if (!route.routeConfig) {\r\n return {};\r\n }\r\n let stroage = XReuseStrategyService.storages.find((x) => x.id == this.getRouteUrl(route));\r\n return stroage ? stroage.handle : {};\r\n }\r\n\r\n /**\r\n * 进入路由触发,判断是否同一路由\r\n * 解决不同的参数也会认为是同一个路由,导致会将之前的路由拿出来复用\r\n */\r\n public shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {\r\n return future.routeConfig === curr.routeConfig && JSON.stringify(future.params) == JSON.stringify(curr.params);\r\n }\r\n\r\n /**\r\n * 解决不同的主路由会存在相同名称的子路由\r\n */\r\n private getRouteUrl(route: ActivatedRouteSnapshot) {\r\n let url = route.url.map((x) => x.path).join('_');\r\n return url;\r\n }\r\n\r\n /**\r\n * 删除复用的路由\r\n */\r\n public static deleteRouteSnapshot(name?: string): void {\r\n if (name) {\r\n let id = name.replace(/\\//g, '_');\r\n XReuseStrategyService.storages.splice(\r\n XReuseStrategyService.storages.findIndex((x) => x.id.indexOf(id) === 0),\r\n 1\r\n );\r\n XReuseStrategyService.waitDelete = id;\r\n } else {\r\n XReuseStrategyService.storages = [];\r\n }\r\n }\r\n\r\n private add(id: string, handle: DetachedRouteHandle) {\r\n XReuseStrategyService.storages.splice(\r\n XReuseStrategyService.storages.findIndex((x) => x.id == id),\r\n 1\r\n );\r\n XReuseStrategyService.storages = [...XReuseStrategyService.storages, { id: id, handle: handle }];\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { PreloadingStrategy, Route } from '@angular/router';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n// @dynamic\r\n@Injectable()\r\nexport class XPreloadingStrategyService implements PreloadingStrategy {\r\n // 需要预加载的模块\r\n preloadedModules: string[] = [];\r\n\r\n preload(route: Route, load: () => Observable<any>): Observable<any> {\r\n if (route.data && route.data['preload']) {\r\n this.preloadedModules.push(route.path as string);\r\n return load();\r\n } else {\r\n return of(null);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\n\r\n// @dynamic\r\n@Injectable({ providedIn: 'root' })\r\nexport class XHttpService {\r\n api: string = '';\r\n constructor(public http: HttpClient) {}\r\n\r\n /**\r\n * get请求\r\n */\r\n get(url: string, params?: { [property: string]: any }) {\r\n return this.request('GET', url, params);\r\n }\r\n\r\n /**\r\n * get请求\r\n */\r\n post(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('POST', url, params);\r\n }\r\n\r\n /**\r\n * put请求\r\n */\r\n put(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('PUT', url, params);\r\n }\r\n\r\n /**\r\n * delete请求\r\n */\r\n delete(url: string, params?: { [property: string]: any }): Observable<any> {\r\n return this.request('DELETE', url, params);\r\n }\r\n\r\n /**\r\n * request通用请求\r\n */\r\n request(method: string, url: string, params?: { [property: string]: any }, option?: { [property: string]: any }): Observable<any> {\r\n if (!option) option = {};\r\n let opt = {};\r\n url = `${this.api}${url}`;\r\n method = method.toUpperCase();\r\n if (['POST', 'PUT', 'DELETE'].indexOf(method) > -1) {\r\n opt = { body: params, observe: 'body', responseType: 'json' };\r\n } else if (['GET'].indexOf(method) > -1) {\r\n opt = { params: params };\r\n }\r\n Object.assign(opt, option);\r\n this.addHeader(opt);\r\n return new Observable((x) => {\r\n this.http.request(method, url, opt).subscribe(\r\n (y: any) => {\r\n x.next(y);\r\n x.complete();\r\n },\r\n (y) => {\r\n x.error(y);\r\n x.complete();\r\n this.handleError(y);\r\n }\r\n );\r\n });\r\n }\r\n\r\n /**\r\n * 错误处理\r\n */\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error) {\r\n }\r\n return throwError(error.error);\r\n }\r\n\r\n /**\r\n * 添加头部信息\r\n */\r\n private addHeader(_option: { [property: string]: any }) {\r\n // let auth = this.setting.getSession(\"Auth\");\r\n // if (auth && auth[\"token\"]) {\r\n // option[\"headers\"] = { Authorization: `Bearer ${auth[\"token\"]}` };\r\n // }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n// @dynamic\r\n@Injectable({ providedIn: 'root' })\r\nexport class XStorageService {\r\n constructor() {}\r\n\r\n /**\r\n * 获取本地值\r\n */\r\n getLocal(key: string) {\r\n return JSON.parse(localStorage.getItem(key) || 'null') || null;\r\n }\r\n\r\n /**\r\n * 设置本地值\r\n */\r\n setLocal(key: string, value: any) {\r\n localStorage.setItem(key, JSON.stringify(value));\r\n }\r\n\r\n /**\r\n * 获取当前会话的值\r\n */\r\n getSession(key: string) {\r\n return JSON.parse(sessionStorage.getItem(key) || 'null') || null;\r\n }\r\n\r\n /**\r\n * 设置当前会话值\r\n */\r\n setSession(key: string, value: any) {\r\n sessionStorage.setItem(key, JSON.stringify(value));\r\n }\r\n\r\n /**\r\n * 移除本地值\r\n */\r\n removeLocal(key: string) {\r\n localStorage.removeItem(key);\r\n }\r\n\r\n /**\r\n * 移除当前会话\r\n */\r\n removeSession(key: string) {\r\n sessionStorage.removeItem(key);\r\n }\r\n\r\n /**\r\n * 生成guid\r\n */\r\n guid() {\r\n let S4 = () => {\r\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\r\n };\r\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\r\n }\r\n}\r\n","import { XId, XQuery, XResultList } from '../interfaces';\r\nimport { XHttpService } from './http.service';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface XRepositoryInput {\r\n api?: string;\r\n controller: XController;\r\n}\r\n\r\nexport interface XController {\r\n name: string;\r\n}\r\n\r\nexport abstract class XRepositoryAbstract {\r\n abstract getList(index?: number, size?: number, query?: XQuery): Observable<XResultList<any>>;\r\n abstract get(id: number | string): Observable<any>;\r\n abstract post(entity: any): Observable<any>;\r\n abstract put(entity: any): Observable<any>;\r\n abstract delete(id: number | string): Observable<boolean>;\r\n}\r\n\r\nexport class XRepositoryService<Entity extends XId> extends XRepositoryAbstract {\r\n api = '';\r\n constructor(public http: XHttpService, public input: XRepositoryInput) {\r\n super();\r\n this.api = typeof input.api !== 'undefined' ? input.api : '';\r\n }\r\n\r\n getList(index?: number, size?: number, query?: XQuery): Observable<XResultList<Entity>> {\r\n index = index ? index : 1;\r\n size = size ? size : 10;\r\n return this.http.post(`${this.api}${this.input.controller.name}/${size}/${index}`, query);\r\n }\r\n\r\n get(id: number | string): Observable<Entity> {\r\n return this.http.get(`${this.api}${this.input.controller.name}/${id}`);\r\n }\r\n\r\n post(entity: Entity): Observable<Entity> {\r\n return this.http.post(`${this.api}${this.input.controller.name}`, entity);\r\n }\r\n\r\n put(entity: Entity): Observable<Entity> {\r\n return this.http.put(`${this.api}${this.input.controller.name}`, entity);\r\n }\r\n\r\n delete(id: number | string): Observable<boolean> {\r\n return this.http.delete(`${this.api}${this.input.controller.name}/${id}`);\r\n }\r\n}\r\n","import {\r\n XSize,\r\n XBoolean,\r\n XType,\r\n XEffect,\r\n XNumber,\r\n XPositionLeftRight,\r\n XJustify,\r\n XShape,\r\n XFit,\r\n XShadow,\r\n XTrigger,\r\n XDisplayDirection,\r\n XCorner,\r\n XDirection,\r\n XPlace,\r\n XPosition,\r\n XPlacement,\r\n XPositionTopBottom,\r\n XStatus\r\n} from '../interfaces';\r\nimport { InjectionToken } from '@angular/core';\r\nimport { XTheme } from '../theme';\r\n\r\nexport interface XConfig {\r\n components?: XComponentConfig;\r\n theme?: XTheme;\r\n}\r\n\r\nexport type XConfigKey = keyof XConfig;\r\n\r\nexport type XComponentConfigKey = keyof XComponentConfig;\r\n\r\nexport const X_CONFIG = new InjectionToken<XConfig>('x-config');\r\n\r\nexport interface XComponentConfig {\r\n affix?: XAffixConfig;\r\n alert?: XAlertConfig;\r\n anchor?: XAnchorConfig;\r\n avatar?: XAvatarConfig;\r\n autoComplete?: XAutoCompleteConfig;\r\n backTop?: XBackTopConfig;\r\n badge?: XBadgeConfgig;\r\n button?: XButtonConfig;\r\n buttons?: XButtonsConfig;\r\n calendar?: XCalendarConfig;\r\n card?: XCardConfig;\r\n carousel?: XCarouselConfig;\r\n cascade?: XCascadeConfig;\r\n checkbox?: XCheckboxConfig;\r\n collapse?: XCollapseConfig;\r\n color?: XColorConfig;\r\n colorPicker?: XColorPickerConfig;\r\n comment?: XCommentConfig;\r\n container?: XContainerConfig;\r\n header?: XHeaderConfig;\r\n aside?: XAsideConfig;\r\n footer?: XFooterConfig;\r\n crumb?: XCrumbComfig;\r\n datePicker?: XDatePickerConfig;\r\n dateRange?: XDateRangeConfig;\r\n dialog?: XDialogConfig;\r\n drawer?: XDrawerConfig;\r\n dropdown?: XDropdownConfig;\r\n description?: XDescriptionConfig;\r\n empty?: XEmptyConfig;\r\n find?: XFindConfig;\r\n form?: XFormConfig;\r\n highlight?: XHighlightConfig;\r\n icon?: XIconConfig;\r\n inner?: XInnerConfig;\r\n input?: XInputConfig;\r\n inputGroup?: XInputGroupConfig;\r\n inputNumber?: XInputNumberConfig;\r\n col?: XColConfig;\r\n row?: XRowConfig;\r\n ripple?: XRippleConfig;\r\n link?: XLinkConfig;\r\n list?: XListConfig;\r\n loading?: XLoadingConfig;\r\n menu?: XMenuConfig;\r\n message?: XMessageConfig;\r\n messageBox?: XMessageBoxConfig;\r\n notification?: XNotificationConfig;\r\n outlet?: XOutletConfig;\r\n pageHeader?: XPageHeaderConfig;\r\n pagination?: XPaginationConfig;\r\n pattern?: XPatternConfig;\r\n popconfirm?: XPopconfirmConfig;\r\n popover?: XPopoverConfig;\r\n portal?: XPortalConfig;\r\n progress?: XProgressConfing;\r\n radio?: XRadioConfig;\r\n rate?: XRateConfig;\r\n result?: XResultConfig;\r\n select?: XSelectConfig;\r\n skeleton?: XSkeletonConfig;\r\n slider?: XSliderConfig;\r\n sliderSelect?: XSliderSelectConfig;\r\n statistic?: XStatisticConfig;\r\n countdown?: XCountdownConfig;\r\n steps?: XStepsConfig;\r\n switch?: XSwitchConfig;\r\n table?: XTableConfig;\r\n tabs?: XTabsConfig;\r\n tag?: XTagConfig;\r\n textRetract?: XTextRetractConfig;\r\n theme?: XThemeConfig;\r\n timeAgo?: XTimeAgoConfig;\r\n timePicker?: XTimePickerConfig;\r\n timeRange?: XTimeRangeConfig;\r\n timeline?: XTimelineConfig;\r\n tooltip?: XTooltipConfig;\r\n transfer?: XTransferConfig;\r\n tree?: XTreeConfig;\r\n treeFile?: XTreeFileConfig;\r\n textarea?: XTextareaConfig;\r\n upload?: XUploadConfig;\r\n}\r\n\r\nexport interface XAffixConfig {\r\n top?: string;\r\n left?: string;\r\n}\r\n\r\nexport interface XAlertConfig {\r\n effect?: XEffect;\r\n hideClose?: XBoolean;\r\n showIcon?: XBoolean;\r\n disabledAnimation?: XBoolean;\r\n draggable?: XBoolean;\r\n dragHandleTitle?: XBoolean;\r\n duration?: XNumber;\r\n}\r\n\r\nexport interface XAnchorConfig {\r\n affixTop?: string;\r\n affixWidth?: string;\r\n layout?: XPositionLeftRight;\r\n justify?: XJustify;\r\n}\r\n\r\nexport interface XAvatarConfig {\r\n size?: XSize;\r\n shape?: XShape;\r\n fit?: XFit;\r\n}\r\n\r\nexport interface XAutoCompleteConfig {\r\n placement?: XPositionTopBottom;\r\n debounceTime?: number;\r\n size?: XSize;\r\n bordered?: boolean;\r\n caseSensitive?: boolean;\r\n}\r\n\r\nexport interface XBackTopConfig {\r\n right?: string;\r\n bottom?: string;\r\n visibilityHeight?: XNumber;\r\n}\r\n\r\nexport interface XBadgeConfgig {\r\n type?: XType;\r\n}\r\n\r\nexport interface XButtonConfig {\r\n size?: XSize;\r\n type?: XType;\r\n plain?: XBoolean;\r\n round?: XBoolean;\r\n circle?: XBoolean;\r\n}\r\n\r\nexport interface XButtonsConfig {\r\n space?: XNumber;\r\n hiddenBorder?: XBoolean;\r\n}\r\n\r\nexport interface XCalendarConfig {}\r\n\r\nexport interface XCardConfig {\r\n shadow?: XShadow;\r\n}\r\n\r\nexport interface XCarouselConfig {\r\n height?: string;\r\n trigger?: XTrigger;\r\n arrow?: XShadow;\r\n direction?: XDisplayDirection;\r\n}\r\n\r\nexport interface XCascadeConfig {\r\n placement?: XCorner;\r\n size?: XSize;\r\n bordered?: boolean;\r\n nodeTrigger?: XTrigger;\r\n nodeHoverDelay?: XNumber;\r\n}\r\n\r\nexport interface XCheckboxConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XCollapseConfig {}\r\n\r\nexport interface XColorConfig {\r\n merge?: string;\r\n amounts?: string;\r\n}\r\n\r\nexport interface XColorPickerConfig {\r\n placement?: XCorner;\r\n}\r\n\r\nexport interface XCommentConfig {\r\n contentMax?: number;\r\n}\r\n\r\nexport interface XContainerConfig {\r\n direction?: XDirection;\r\n}\r\n\r\nexport interface XHeaderConfig {\r\n height?: number;\r\n}\r\n\r\nexport interface XAsideConfig {\r\n width?: number;\r\n}\r\n\r\nexport interface XFooterConfig {\r\n height?: number;\r\n}\r\n\r\nexport interface XCrumbComfig {\r\n separator?: string;\r\n}\r\n\r\nexport interface XDatePickerConfig {\r\n format?: string;\r\n clearable?: XBoolean;\r\n placement?: XCorner;\r\n size?: XSize;\r\n bordered?: boolean;\r\n}\r\n\r\nexport interface XDateRangeConfig {\r\n format?: string;\r\n clearable?: XBoolean;\r\n placement?: XCorner;\r\n}\r\n\r\nexport interface XDialogConfig {\r\n placement?: XPlace;\r\n offset?: string;\r\n width?: string;\r\n effect?: XEffect;\r\n showCancel?: XBoolean;\r\n cancelText?: string;\r\n showConfirm?: XBoolean;\r\n confirmText?: string;\r\n backdropClose?: XBoolean;\r\n draggable?: XBoolean;\r\n hasBackdrop?: XBoolean;\r\n className?: string;\r\n buttonsCenter?: XBoolean;\r\n}\r\n\r\nexport interface XDrawerConfig {\r\n placement?: XPosition;\r\n size?: string;\r\n backdropClose?: XBoolean;\r\n hasBackdrop?: XBoolean;\r\n className?: string;\r\n}\r\n\r\nexport interface XDropdownConfig {\r\n trigger?: XTrigger;\r\n placement?: XPlacement;\r\n}\r\n\r\nexport interface XDescriptionConfig {\r\n bordered?: XBoolean;\r\n size?: XSize;\r\n}\r\n\r\nexport interface XEmptyConfig {\r\n content?: string;\r\n}\r\n\r\nexport interface XFindConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n columnLabel?: string;\r\n dialogTitle?: string;\r\n dialogButtonsCenter?: XBoolean;\r\n tableIndex?: number;\r\n tableSize?: number;\r\n tableLoading?: XBoolean;\r\n tableVirtualScroll?: boolean;\r\n tableRowHeight?: XNumber;\r\n treeExpandedLevel?: XNumber;\r\n}\r\n\r\nexport interface XFormConfig {\r\n space?: XNumber;\r\n labelSuffix?: string;\r\n width?: string;\r\n}\r\n\r\nexport interface XHighlightConfig {}\r\n\r\nexport interface XIconConfig {\r\n href?: string;\r\n}\r\n\r\nexport interface XInnerConfig {\r\n padding?: string;\r\n}\r\n\r\nexport interface XInputConfig {\r\n clearable?: XBoolean;\r\n iconLayout?: XPositionLeftRight;\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XInputGroupConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n compact?: XBoolean;\r\n}\r\n\r\nexport interface XInputNumberConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XColConfig {}\r\n\r\nexport interface XRowConfig {}\r\n\r\nexport interface XRippleConfig {\r\n type?: XType;\r\n}\r\n\r\nexport interface XLinkConfig {\r\n underline?: XBoolean;\r\n iconRight?: XBoolean;\r\n}\r\n\r\nexport interface XListConfig {}\r\n\r\nexport interface XLoadingConfig {\r\n size?: XSize;\r\n text?: string;\r\n icon?: string;\r\n color?: string;\r\n background?: string;\r\n}\r\n\r\nexport interface XMenuConfig {\r\n size?: XSize;\r\n trigger?: XTrigger;\r\n}\r\n\r\nexport interface XMessageConfig {\r\n type?: XStatus;\r\n width?: string;\r\n placement?: XPlace;\r\n displayType?: string;\r\n offset?: string | string[];\r\n duration?: number;\r\n hideClose?: boolean;\r\n showIcon?: boolean;\r\n}\r\n\r\nexport interface XMessageBoxConfig {}\r\n\r\nexport interface XNotificationConfig {}\r\n\r\nexport interface XOutletConfig {}\r\n\r\nexport interface XPageHeaderConfig {\r\n backIcon?: string;\r\n backText?: string;\r\n}\r\n\r\nexport interface XPaginationConfig {\r\n index?: XNumber;\r\n size?: XNumber;\r\n space?: XNumber;\r\n pageLinkSize?: XNumber;\r\n hiddenBorder?: boolean;\r\n showEllipsis?: boolean;\r\n showTotal?: boolean;\r\n showSize?: boolean;\r\n sizeWidth?: number;\r\n sizeData?: number[];\r\n showJump?: boolean;\r\n jumpWidth?: number;\r\n simple?: boolean;\r\n simpleIndexWidth?: number;\r\n}\r\n\r\nexport interface XPatternConfig {}\r\n\r\nexport interface XPopconfirmConfig {\r\n placement?: XPlacement;\r\n trigger?: XTrigger;\r\n width?: string;\r\n icon?: string;\r\n iconColor?: string;\r\n cancelText?: string;\r\n confirmText?: string;\r\n}\r\n\r\nexport interface XPopoverConfig {\r\n placement?: XPlacement;\r\n trigger?: XTrigger;\r\n width?: string;\r\n}\r\n\r\nexport interface XPortalConfig {}\r\n\r\nexport interface XProgressConfing {\r\n height?: string;\r\n stepWidth?: string;\r\n}\r\n\r\nexport interface XRadioConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XRateConfig {}\r\n\r\nexport interface XResultConfig {}\r\n\r\nexport interface XSelectConfig {\r\n placement?: XPositionTopBottom;\r\n clearable?: XBoolean;\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XSkeletonConfig {}\r\n\r\nexport interface XSliderConfig {\r\n animated?: XBoolean;\r\n size?: XSize;\r\n}\r\n\r\nexport interface XSliderSelectConfig {}\r\n\r\nexport interface XStatisticConfig {}\r\n\r\nexport interface XCountdownConfig {\r\n format?: string;\r\n}\r\n\r\nexport interface XStepsConfig {}\r\n\r\nexport interface XSwitchConfig {}\r\n\r\nexport interface XTableConfig {\r\n index?: number;\r\n size?: number;\r\n loading?: XBoolean;\r\n showHeader?: XBoolean;\r\n virtualScroll?: boolean;\r\n rowHeight?: XNumber;\r\n itemSize?: XNumber;\r\n bordered?: XNumber;\r\n allowSelectRow?: XBoolean;\r\n rowSize?: XSize;\r\n}\r\n\r\nexport interface XTabsConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XTagConfig {\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n closable?: XBoolean;\r\n dark?: XBoolean;\r\n}\r\n\r\nexport interface XTextRetractConfig {\r\n max?: XNumber;\r\n}\r\n\r\nexport interface XThemeConfig {\r\n amounts?: XNumber[];\r\n}\r\n\r\nexport interface XTimeAgoConfig {}\r\n\r\nexport interface XTimePickerConfig {\r\n format?: string;\r\n placement?: XCorner;\r\n size?: XSize;\r\n bordered?: XBoolean;\r\n}\r\n\r\nexport interface XTimeRangeConfig {}\r\n\r\nexport interface XTimelineConfig {\r\n size?: XSize;\r\n}\r\n\r\nexport interface XTooltipConfig {\r\n placement?: XPlacement;\r\n}\r\n\r\nexport interface XTransferConfig {\r\n titles?: string[];\r\n drag?: XBoolean;\r\n}\r\n\r\nexport interface XTreeConfig {\r\n spacing?: XNumber;\r\n nodeHeight?: XNumber;\r\n}\r\n\r\nexport interface XTextareaConfig {\r\n clearable?: XBoolean;\r\n iconLayout?: XPositionLeftRight;\r\n}\r\n\r\nexport interface XTreeFileConfig {\r\n maxHeight?: XNumber;\r\n spacing?: XNumber;\r\n}\r\n\r\nexport interface XUploadConfig {}\r\n","import { InjectionToken } from '@angular/core';\r\n\r\nexport interface XTheme {\r\n colors?: XColorsTheme;\r\n}\r\n\r\nexport interface XColorsTheme {\r\n primary?: string;\r\n success?: string;\r\n warning?: string;\r\n danger?: string;\r\n info?: string;\r\n text?: string;\r\n border?: string;\r\n background?: string;\r\n [property: string]: any;\r\n}\r\n\r\nexport type XThemeKey = keyof XTheme;\r\n\r\nexport type XColors = 'primary' | 'success' | 'warning' | 'danger' | 'info';\r\n\r\nexport const X_THEME = new InjectionToken<XTheme>('x-theme');\r\n\r\nexport const X_THEME_PREFIX = '--x-';\r\n\r\nexport const X_THEME_MERGE = '#ffffff';\r\n\r\nexport const X_THEME_BLACK_MERGE = '#cccccc';\r\n\r\nexport const X_THEME_AMOUNTS = [0, -0.1, -0.2, -0.3, -0.4, -0.5, -0.6, -0.7, -0.8, -0.9, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9];\r\n\r\nexport const X_THEME_BACKGROUNDS = [-0.2, -0.3, -0.4];\r\n\r\nexport const X_THEME_TEXTS = [\r\n [-0.5, 0],\r\n [-0.6, 0.2],\r\n [-0.7, 0.4]\r\n];\r\n\r\nexport const X_THEME_BORDERS = [\r\n [-0.8, 0],\r\n [-0.9, 0.2]\r\n];\r\n\r\nexport const X_THEME_EXCHANGES = [\r\n [-0.1, -0.1],\r\n [0.1, -0.1],\r\n [0.2, 0.2],\r\n [0.3, 0],\r\n [0.4, -0.4],\r\n [0.5, -0.2],\r\n [0.6, 0],\r\n [0.7, -0.4],\r\n [0.8, -0.4],\r\n [0.9, -0.2]\r\n];\r\n\r\nexport const X_THEME_COLORS: XColorsTheme = {\r\n primary: '#1976d2',\r\n success: '#67c23a',\r\n warning: '#e6a23c',\r\n danger: '#f56c6c',\r\n info: '#909399',\r\n text: '#333333',\r\n border: '#dddddd',\r\n background: '#ffffff'\r\n};\r\n\r\nexport const X_THEME_DARK_COLORS: XColorsTheme = {\r\n text: '#dddddd',\r\n border: '#424242',\r\n background: '#1e1e1f'\r\n};\r\n\r\nexport const X_THEME_COLOR_KEYS = Object.keys(X_THEME_COLORS);\r\n","import { Injectable, Inject, RendererFactory2, Renderer2 } from '@angular/core';\r\nimport {\r\n XTheme,\r\n XColorsTheme,\r\n X_THEME_COLORS,\r\n X_THEME_COLOR_KEYS,\r\n X_THEME_PREFIX,\r\n X_THEME_AMOUNTS,\r\n X_THEME_MERGE,\r\n X_THEME_BLACK_MERGE,\r\n X_THEME_EXCHANGES,\r\n X_THEME_BACKGROUNDS,\r\n X_THEME_TEXTS,\r\n X_THEME_BORDERS\r\n} from './theme';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class XThemeService {\r\n private colorsProp: XColorsTheme = {};\r\n private colorsStyleEle!: HTMLStyleElement;\r\n private renderer2: Renderer2;\r\n private declaration: CSSStyleDeclaration;\r\n\r\n constructor(@Inject(DOCUMENT) private doc: any, private factory: RendererFactory2) {\r\n this.renderer2 = this.factory.createRenderer(null, null);\r\n this.declaration = getComputedStyle(this.doc.documentElement);\r\n }\r\n\r\n setInitialTheme(theme?: XTheme) {\r\n this.setColors(theme?.colors);\r\n if (theme?.colors) Object.assign(X_THEME_COLORS, theme.colors);\r\n }\r\n\r\n setTheme(theme?: XTheme) {\r\n this.setColors(theme?.colors);\r\n }\r\n\r\n getTheme(includesAll = false): XTheme {\r\n return {\r\n colors: this.getColors(includesAll)\r\n };\r\n }\r\n\r\n setColors(colors?: XColorsTheme) {\r\n colors = this.getColorsTheme(colors);\r\n for (let key in colors) {\r\n Object.assign(this.colorsProp, this.setRoot(key, colors[key]));\r\n }\r\n this.createColorsStyle();\r\n }\r\n\r\n getColors(includes = false, prefix = X_THEME_PREFIX): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n const keys = includes ? Object.keys(this.colorsProp) : X_THEME_COLOR_KEYS.map((x) => `${prefix}${x}`);\r\n keys.forEach((x) => {\r\n result[x.replace(prefix, '')] = this.declaration.getPropertyValue(`${x}`).trim();\r\n });\r\n\r\n return result;\r\n }\r\n\r\n getColorsInProperty(colors?: XColorsTheme, prefix = X_THEME_PREFIX): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n Object.keys(colors as XColorsTheme).forEach((x) => {\r\n result[x] = this.declaration.getPropertyValue(`${prefix}${x}`).trim();\r\n });\r\n\r\n return result;\r\n }\r\n\r\n getColorsTheme(colors?: XColorsTheme) {\r\n if (typeof colors === 'undefined') colors = X_THEME_COLORS;\r\n else colors = Object.assign({}, X_THEME_COLORS, colors);\r\n return colors;\r\n }\r\n\r\n setRoot(color: string, value: string, prefix = X_THEME_PREFIX) {\r\n let result: XColorsTheme = {};\r\n if (X_THEME_COLOR_KEYS.includes(color)) {\r\n for (let amount of X_THEME_AMOUNTS) {\r\n if (amount === 0) {\r\n result[`${prefix}${color}`] = value;\r\n } else {\r\n result[`${prefix}${color}${this.getSuffix(amount)}`] = toHex(\r\n mixColors(amount > 0 ? X_THEME_MERGE : X_THEME_BLACK_MERGE, value, Math.abs(amount))\r\n );\r\n }\r\n }\r\n } else {\r\n result[`${prefix}${color}`] = value;\r\n }\r\n return result;\r\n }\r\n\r\n setDarkRoot(color: string, value: string, prefix = X_THEME_PREFIX) {\r\n let result: XColorsTheme = {};\r\n const allColors = this.setRoot(color, value, '');\r\n if (X_THEME_COLOR_KEYS.includes(color) && !['background'].includes(color)) {\r\n const allColors = this.setRoot(color, value, prefix);\r\n X_THEME_EXCHANGES.forEach((x) => {\r\n if (x[1] >= -0.1) {\r\n const curr = this.getSuffix(x[0]);\r\n const next = this.getSuffix(x[1]);\r\n result[`${prefix}${color}${curr}`] = allColors[`${prefix}${color}${next}`];\r\n }\r\n });\r\n } else if (['background'].includes(color)) {\r\n result = this.getDefineColors(Object.assign({}, this.getColorsInProperty(X_THEME_COLORS), allColors), '', true);\r\n }\r\n return result;\r\n }\r\n\r\n getDefineColors(colors?: XColorsTheme, prefix = X_THEME_PREFIX, darken = false): XColorsTheme {\r\n let result: XColorsTheme = {};\r\n colors = this.getColorsTheme(colors);\r\n for (let key in colors) {\r\n Object.assign(result, this.setRoot(key, colors[key], prefix));\r\n }\r\n if (darken) {\r\n const colorsFunc = (nums: number[] | number[][], callback: Function) => {\r\n for (let num of nums) {\r\n for (let color in colors) {\r\n if (X_THEME_COLOR_KEYS.includes(color) && !['background'].includes(color)) {\r\n callback(num, color);\r\n }\r\n }\r\n }\r\n };\r\n colorsFunc(X_THEME_BACKGROUNDS, (background: number, color: string) => {\r\n const theme = this.getSuffix(background);\r\n result[`${prefix}${color}${theme}`] = result[`${prefix}background${theme.replace('a', '')}`];\r\n });\r\n colorsFunc(X_THEME_TEXTS, (text: number[], color: string) => {\r\n const curr = this.getSuffix(text[0]);\r\n const next = this.getSuffix(text[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}text${next}`];\r\n });\r\n colorsFunc(X_THEME_BORDERS, (border: number[], color: string) => {\r\n const curr = this.getSuffix(border[0]);\r\n const next = this.getSuffix(border[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}border${next}`];\r\n });\r\n colorsFunc(X_THEME_EXCHANGES, (exchange: number[], color: string) => {\r\n const curr = this.getSuffix(exchange[0]);\r\n const next = this.getSuffix(exchange[1]);\r\n result[`${prefix}${color}${curr}`] = result[`${prefix}${color}${next}`];\r\n });\r\n }\r\n return result;\r\n }\r\n\r\n getSuffix(num: number): string {\r\n if (num > 0) {\r\n return `-${Math.abs(num * 1000)}`;\r\n } else if (num < 0) {\r\n return `-a${Math.abs(num * 1000)}`;\r\n }\r\n return '';\r\n }\r\n\r\n createColorsStyle() {\r\n if (this.colorsStyleEle) this.renderer2.removeChild(this.colorsStyleEle.parentNode, this.colorsStyleEle);\r\n const styles = Object.entries(this.colorsProp)\r\n .map((x) => `${x[0]}: ${x[1]};`)\r\n .join('');\r\n this.colorsStyleEle = this.renderer2.createElement('style');\r\n this.colorsStyleEle.innerHTML = `.x-theme-colors{${styles}}`;\r\n this.renderer2.addClass(this.doc.documentElement, 'x-theme-colors');\r\n this.doc.documentElement.getElementsByTagName('head')[0].appendChild(this.colorsStyleEle);\r\n }\r\n}\r\n\r\nexport function mixColors(color1: string, color2: string, weight: number) {\r\n let rgb1 = toRgb(color1);\r\n let rgb2 = toRgb(color2);\r\n let weight1 = weight;\r\n let weight2 = 1 - weight;\r\n let result: { r: number; g: number; b: number };\r\n\r\n const inRange = (num: number) => {\r\n return num > 255 ? 255 : num < 0 ? 0 : num;\r\n };\r\n\r\n result = {\r\n r: inRange(Math.round(rgb1.r * weight1 + rgb2.r * weight2)),\r\n g: inRange(Math.round(rgb1.g * weight1 + rgb2.g * weight2)),\r\n b: inRange(Math.round(rgb1.b * weight1 + rgb2.b * weight2))\r\n };\r\n\r\n return result;\r\n}\r\n\r\nexport function toHex(rgb: { r: number; g: number; b: number }) {\r\n return '#' + ((1 << 24) + (rgb.r << 16) + (rgb.g << 8) + rgb.b).toString(16).slice(1);\r\n}\r\n\r\nexport function toRgb(hex: string) {\r\n if (hex.indexOf('#') == 0) hex = hex.slice(1);\r\n let num = parseInt(hex, 16);\r\n let r = num >> 16;\r\n if (r > 255) r = 255;\r\n else if (r < 0) r = 0;\r\n let g = (num >> 8) & 0x00ff;\r\n if (g > 255) g = 255;\r\n else if (g < 0) g = 0;\r\n let b = num & 0x0000ff;\r\n if (b > 255) b = 255;\r\n else if (b < 0) b = 0;\r\n\r\n return { r: r, g: g, b: b };\r\n}\r\n","// tslint:disable no-any\r\n\r\nimport { Injectable, Optional, Inject } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { XConfig, X_CONFIG, XComponentConfigKey, XComponentConfig } from './config';\r\nimport { XThemeService, XTheme, X_THEME_COLORS, X_THEME_DARK_COLORS } from '../theme';\r\nimport { filter, mapTo } from 'rxjs/operators';\r\n\r\nconst isDefined = function (value?: any): boolean {\r\n return value !== undefined;\r\n};\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class XConfigService {\r\n private componentConfigUpdated$ = new Subject<keyof XComponentConfig>();\r\n private config: XConfig;\r\n public themeService!: XThemeService;\r\n\r\n constructor(@Optional() themeService?: XThemeService, @Optional() @Inject(X_CONFIG) defaultConfig?: XConfig) {\r\n this.config = defaultConfig || {};\r\n if (themeService) {\r\n this.themeService = themeService;\r\n }\r\n this.setInitialTheme(this.config.theme);\r\n }\r\n\r\n getConfigForComponent<T extends XComponentConfigKey>(componentName: T): XComponentConfig[T] {\r\n return this.config?.components ? this.config.components[componentName] : undefined;\r\n }\r\n\r\n getConfigChangeEventForComponent(componentName: XComponentConfigKey): Observable<void> {\r\n return this.componentConfigUpdated$.pipe(\r\n filter((n) => n === componentName),\r\n mapTo(undefined)\r\n );\r\n }\r\n\r\n set<T extends XComponentConfigKey>(componentName: T, value: XComponentConfig[T]): void {\r\n if (this.config?.components) {\r\n this.config.components[componentName] = { ...this.config.components[componentName], ...value };\r\n this.componentConfigUpdated$.next(componentName);\r\n }\r\n }\r\n\r\n setDarkTheme(theme?: XTheme) {\r\n let colors = theme?.colors;\r\n if (!colors) colors = X_THEME_DARK_COLORS;\r\n this.setTheme({\r\n colors: this.themeService.getDefineColors(Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), colors), '', true)\r\n });\r\n }\r\n\r\n setLightTheme(theme?: XTheme) {\r\n let colors = theme?.colors;\r\n if (!colors) colors = X_THEME_COLORS;\r\n this.setTheme({\r\n colors: this.themeService.getDefineColors(Object.assign({}, this.themeService.getColorsInProperty(X_THEME_COLORS), colors), '', false)\r\n });\r\n }\r\n\r\n setTheme(theme?: XTheme) {\r\n this.themeService.setTheme(theme);\r\n }\r\n\r\n setInitialTheme(theme?: XTheme) {\r\n this.themeService.setInitialTheme(theme);\r\n }\r\n\r\n getTheme(includesAll = false): XTheme {\r\n return this.themeService.getTheme(includesAll);\r\n }\r\n}\r\n\r\n// tslint:disable-next-line:typedef\r\nexport function XWithConfig<T>(componentName: XComponentConfigKey, innerDefaultValue?: T) {\r\n return function ConfigDecorator(target: any, propName: any, originalDescriptor?: TypedPropertyDescriptor<T>): any {\r\n const privatePropName = `$$__assignedValue__${propName}`;\r\n\r\n Object.defineProperty(target, privatePropName, {\r\n configurable: true,\r\n writable: true,\r\n enumerable: false\r\n });\r\n\r\n return {\r\n get(): T | undefined {\r\n const originalValue = originalDescriptor && originalDescriptor.get ? originalDescriptor.get.bind(this)() : this[privatePropName];\r\n\r\n if (isDefined(originalValue)) {\r\n return originalValue;\r\n }\r\n\r\n const componentConfig = this.configService?.getConfigForComponent(componentName) || {};\r\n const configValue = componentConfig[propName];\r\n\r\n return isDefined(configValue) ? configValue : innerDefaultValue;\r\n },\r\n set(value: T): void {\r\n if (originalDescriptor && originalDescriptor.set) {\r\n originalDescriptor.set.bind(this)(value);\r\n } else {\r\n this[privatePropName] = value;\r\n }\r\n },\r\n configurable: true,\r\n enumerable: true\r\n };\r\n };\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["Observable","XDuration","XDURATION_BASE_EASE_IN","XDURATION_BASE_EASE_OUT","trigger","transition","style","animate","state","isObservable","coerceBooleanProperty","_isNumberValue","map","takeUntil","of","Injectable","throwError","InjectionToken","DOCUMENT","Inject","Subject","filter","mapTo","Optional"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;aAAgB,KAAK,CAAI,KAAU,EAAE,IAAQ;QAAR,qBAAA,EAAA,QAAQ;QAC3C,IAAM,GAAG,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAC7C,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,EAAE;YACpB,OAAO,EAAE,CAAC;SACX;QACD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAM,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QAEhD,OAAO,KAAK,GAAG,GAAG,EAAE;YAClB,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC;SAC1D;QACD,OAAO,MAAM,CAAC;IAChB;;ICbA;;;aAGgB,IAAI;QAClB,IAAI,EAAE,GAAG;YACP,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,OAAO,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SACxE,CAAC;QACF,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IACvF;;aCRgB,OAAO,CAAI,KAAU,EAAE,IAAY;QACjD,IAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,KAAK,CAAC,OAAO,CAAC,UAAC,GAAQ;YACrB,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACzB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,GAAA,CAAC,CAAC;IAC3D;;ICRA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;QC5Oa,OAAO,GAAG;QAAC,iBAAqB;aAArB,UAAqB,EAArB,qBAAqB,EAArB,IAAqB;YAArB,4BAAqB;;QAC3C,OAAO,IAAIA,eAAU,CACnB,UACE,CAGE;;YAEF,IAAM,cAAc,GAAG,IAAI,cAAc,CAAC,UAAC,OAA8B;;;oBACvE,KAAoB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;wBAAxB,IAAM,KAAK,oBAAA;wBACd,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC;qBAC1D;;;;;;;;;aACF,CAAC,CAAC;;gBACH,KAAgB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;oBAApB,IAAI,GAAG,oBAAA;oBACV,IAAI,GAAG;wBAAE,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;iBACtC;;;;;;;;;;;SAIF,CACF,CAAC;IACJ;;ICvBA;;;;;aAKgB,WAAW,CAAC,MAAmC,EAAE,GAAgC;QAC/F,IAAI,MAAM,IAAI,GAAG,EAAE;YACjB,KAAK,IAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,WAAW,EAAE;oBACtC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;iBACxB;aACF;SACF;IACH;;ICbA;;;aAGgB,WAAW,CAAC,aAA0B;QACpD,IAAM,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,YAAY;YAAE,OAAO;QAC1D,OAAO,aAAa,CAAC,UAAU,EAAE;YAC/B,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;SACrE;QACD,aAAa,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C;;aCVgB,kBAAkB;QAChC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvC,CAAC;aACe,oBAAoB;QAClC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvC;;aCLgB,aAAa,CAAC,OAAoB,EAAE,KAAa;QAC/D,IAAI,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAY,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAClC;;ICJA;IACA,IAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAElD,SAAS,6BAA6B;QACpC,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,OAAO,UAAU,QAA8B;YAC7C,IAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACtC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC;YAC3D,IAAM,EAAE,GAAG,UAAU,CAAC;gBACpB,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;aACjC,EAAE,UAAU,CAAC,CAAC;YACf,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;YACjC,OAAO,EAAE,CAAC;SACX,CAAC;IACJ,CAAC;IAED,SAAS,wBAAwB;QAC/B,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,OAAO,cAAM,OAAA,CAAC,GAAA,CAAC;SAChB;QACD,IAAI,MAAM,CAAC,qBAAqB,EAAE;YAChC,OAAO,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClD;QAED,IAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAG,GAAG,0BAAuB,IAAI,MAAM,GAAA,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7F,OAAO,MAAM,GAAI,MAAc,CAAI,MAAM,0BAAuB,CAAC,GAAG,6BAA6B,EAAE,CAAC;IACtG,CAAC;IACD;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;QAEa,YAAY,GAAG,wBAAwB;;ICnDpD;;;aAGiB,SAAS,CAAC,IAAY;QAAE,oBAAoB;aAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;YAApB,mCAAoB;;QACzD,IAAI,CAAC,IAAI,IAAI,QAAQ,IAAI,CAAC,KAAK,QAAQ;YACnC,OAAO,IAAI,CAAC;QAChB,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;cACtB,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,YAAW,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAgB,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;cAClF,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC5C;;ACTYC;IAAZ,WAAY,SAAS;QACnB,0BAAa,CAAA;QACb,0BAAa,CAAA;QACb,0BAAa,CAAA;IACf,CAAC,EAJWA,iBAAS,KAATA,iBAAS;;ICGrB;IACA,IAAMC,wBAAsB,GAAMD,iBAAS,CAAC,IAAI,aAAU,CAAC;IAC3D;IACA,IAAME,yBAAuB,GAAMF,iBAAS,CAAC,IAAI,cAAW,CAAC;QAEhD,cAAc,GAA6BG,kBAAO,CAAC,kBAAkB,EAAE;QAClFC,qBAAU,CAAC,QAAQ,EAAE;YACnBC,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;YAC9CC,kBAAO,CAAC,KAAGL,wBAAwB,EAAEI,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;SACnF,CAAC;QACFD,qBAAU,CAAC,QAAQ,EAAE,CAACE,kBAAO,CAAC,KAAGJ,yBAAyB,EAAEG,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACrF;;QCXY,eAAe,GAA6BF,kBAAO,CAAC,mBAAmB,EAAE;QACpFC,qBAAU,CAAC,eAAe,EAAE,CAACC,gBAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAEC,kBAAO,CAAIN,iBAAS,CAAC,IAAI,aAAU,CAAC,CAAC,CAAC;QAC9GI,qBAAU,CAAC,eAAe,EAAE,CAACE,kBAAO,CAAIN,iBAAS,CAAC,IAAI,cAAW,EAAEK,gBAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/GD,qBAAU,CAAC,cAAc,EAAE,CAACC,gBAAK,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,EAAEC,kBAAO,CAAIN,iBAAS,CAAC,IAAI,aAAU,CAAC,CAAC,CAAC;QAC9GI,qBAAU,CAAC,cAAc,EAAE,CAACE,kBAAO,CAAIN,iBAAS,CAAC,IAAI,cAAW,EAAEK,gBAAK,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/GD,qBAAU,CAAC,aAAa,EAAE,CAACC,gBAAK,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,EAAEC,kBAAO,CAAIN,iBAAS,CAAC,IAAI,aAAU,CAAC,CAAC,CAAC;QAC7GI,qBAAU,CAAC,aAAa,EAAE,CAACE,kBAAO,CAAIN,iBAAS,CAAC,IAAI,cAAW,EAAEK,gBAAK,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9GD,qBAAU,CAAC,gBAAgB,EAAE,CAACC,gBAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAEC,kBAAO,CAAIN,iBAAS,CAAC,IAAI,aAAU,CAAC,CAAC,CAAC;QAC/GI,qBAAU,CAAC,gBAAgB,EAAE,CAACE,kBAAO,CAAIN,iBAAS,CAAC,IAAI,cAAW,EAAEK,gBAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;KACjH,EAAE;QAEU,gBAAgB,GAA6BF,kBAAO,CAAC,oBAAoB,EAAE;QACtFC,qBAAU,CAAC,6BAA6B,EAAE;YACxCC,gBAAK,CAAC;gBACJ,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,KAAK,EAAE,GAAG;gBACV,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,6BAA6B,EAAE;YACxCC,gBAAK,CAAC;gBACJ,KAAK,EAAE,GAAG;gBACV,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;KACH;;QCtCY,cAAc,GAA6BF,kBAAO,CAAC,kBAAkB,EAAE;QAClFI,gBAAK,CAAC,GAAG,EAAEF,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzFE,gBAAK,CAAC,OAAO,EAAEF,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7FE,gBAAK,CAAC,MAAM,EAAEF,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACnGD,qBAAU,CAAC,QAAQ,EAAEE,kBAAO,CAAIN,iBAAS,CAAC,IAAI,cAAW,CAAC,CAAC;KAC5D;;QCNY,cAAc,GAA6BG,kBAAO,CAAC,kBAAkB,EAAE;QAClFC,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,iBAAiB;gBAC5B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,iBAAiB;gBAC5B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;KACH,EAAE;QAEU,iBAAiB,GAA6BF,kBAAO,CAAC,sBAAsB,EAAE;QACzFC,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,mBAAmB;gBAC9B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;KACH;;IC3ND;IACA,IAAM,sBAAsB,GAAML,iBAAS,CAAC,IAAI,aAAU,CAAC;IAC3D;IACA,IAAM,uBAAuB,GAAMA,iBAAS,CAAC,IAAI,cAAW,CAAC;QAEhD,iBAAiB,GAA6BG,kBAAO,CAAC,qBAAqB,EAAE;QACxFC,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC;YACFC,kBAAO,CACL,sBAAsB,EACtBD,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,iEAAiE,EAAE;YAC5EC,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC;YACFC,kBAAO,CACL,uBAAuB,EACvBD,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,cAAc,EAAE;YACzBC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,kBAAkB;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,iBAAiB;gBAC5B,OAAO,EAAE,CAAC;aACX,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;aACX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,eAAe,EAAE;YAC1BC,gBAAK,CAAC;gBACJ,SAAS,EAAE,gBAAgB;gBAC3B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,GAAG;aACZ,CAAC;YACFC,kBAAO,CACL,KAAGN,iBAAS,CAAC,IAAM,EACnBK,gBAAK,CAAC;gBACJ,SAAS,EAAE,iBAAiB;gBAC5B,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC;YACFC,kBAAO,CACL,sBAAsB,EACtBD,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC,CACH;SACF,CAAC;QACFD,qBAAU,CAAC,0DAA0D,EAAE;YACrEC,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC;YACFC,kBAAO,CACL,uBAAuB,EACvBD,gBAAK,CAAC;gBACJ,OAAO,EAAE,CAAC;;;aAGX,CAAC,CACH;SACF,CAAC;KACH,EAAE;QAEU,qBAAqB,GAA6BF,kBAAO,CAAC,0BAA0B,EAAE;QACjGC,qBAAU,CAAC,QAAQ,EAAE,CAACC,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,EAAEC,kBAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACxGF,qBAAU,CAAC,QAAQ,EAAE,CAACE,kBAAO,CAAC,uBAAuB,EAAED,gBAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAChF;;ICnHD;QACa,OAAO,GAAG,UAAC,IAAY,IAAK,OAAA,UAAC,MAAW,IAAK,OAAA,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,aAAW,IAAI,MAAG,GAAA,IAAC;IAExH;QACa,SAAS,GAAG;;QAAC,iBAA0B;aAA1B,UAA0B,EAA1B,qBAA0B,EAA1B,IAA0B;YAA1B,4BAA0B;;;YAClD,KAAmB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;gBAAvB,IAAI,MAAM,oBAAA;gBACb,IAAI,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,OAAK,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAA;oBAAE,OAAO,IAAI,CAAC;aACjE;;;;;;;;;QACD,OAAO,KAAK,CAAC;IACf,EAAE;QAEW,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE;QAC9B,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE;QAC5B,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE;QAC9B,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE;QAChC,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE;QAC9B,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE;QAC1B,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE;QAClC,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE;QAC1B,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE;QAC9B,QAAQ,GAAG,UAAC,MAAW,IAAK,OAAA,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAC;QAC5G,YAAY,GAAG,UAAC,MAAW,IAAK,OAAA,OAAO,MAAM,KAAK,WAAW,IAAC;QAC9D,QAAQ,GAAG,UAAC,MAAW,IAAK,OAAA,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAC;QACrH,aAAa,GAAG,UAAC,MAAW,IAAK,OAAA,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAC;QAChG,cAAc,GAAG,UAAC,MAAW,IAAK,OAAA,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAC;QAChG,aAAa,GAAG,UAAC,MAAW,IAAK,OAAAG,iBAAY,CAAC,MAAM,CAAC,IAAC;QACtD,cAAc,GAAG,UAAC,MAAW;QACxC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;;YACnD,OAAO,KAAK,CAAC;IACpB,EAAE;QACW,YAAY,GAAG,UAAC,MAAW,IAAK,OAAA,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC;;ICrBhI;;QACA;SAKC;wBAAA;KAAA;;aCbe,UAAU,CAAC,KAAe;;;;;;QAMxC,OAAOC,8BAAqB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAID,SAAS,SAAS,CAAC,KAAsB,EAAE,aAAyB;QAAzB,8BAAA,EAAA,iBAAyB;QAClE,OAAOC,uBAAc,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;IAC/D,CAAC;aAEe,cAAc,CAAI,KAAe;QAC/C,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;YACnB,OAAQ,KAAY,CAAC,GAAG,CAAC,UAAC,CAAM;gBAC9B,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE;oBACf,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;iBAC5B;qBAAM,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;oBACvB,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;oBACrE,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;oBAC5D,OAAO,CAAC,CAAC;iBACV;aACF,CAAC,CAAC;SACJ;QACD,OAAO,KAAK,CAAC;IACf,CAAC;aAEe,QAAQ,CAAI,IAAc,EAAE,SAAwB,EAAE,SAAgB,EAAE,SAAgB;QAAlC,0BAAA,EAAA,gBAAgB;QAAE,0BAAA,EAAA,gBAAgB;QACtG,OAAO,IAAIX,eAAU,CAAC,UAAC,CAAgB;YACrC,IAAM,MAAM,GAAG,UAAC,GAAQ;gBACtB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC,CAAC,QAAQ,EAAE,CAAC;aACd,CAAC;YACF,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;gBAC/B,MAAM,CAAC,EAAE,CAAC,CAAC;aACZ;iBAAM;gBACL,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;oBACtB,IAAwB;yBACtB,IAAI,CACHY,aAAG,CAAC,UAAC,CAAC,IAAK,QAAC,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,IAAC,CAAC,EAC/CC,mBAAS,CAAC,SAAS,CAAC,CACrB;yBACA,SAAS,CAAC,UAAC,CAAC;wBACX,MAAM,CAAC,CAAQ,CAAC,CAAC;qBAClB,CAAC,CAAC;iBACN;qBAAM,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;oBAC3B,IAAwC,CAAC,SAAS,CAAC;yBACjD,IAAI,CACHD,aAAG,CAAC,UAAC,CAAC,IAAK,QAAC,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,IAAC,CAAC,EAC/CC,mBAAS,CAAC,SAAS,CAAC,CACrB;yBACA,SAAS,CAAC,UAAC,CAAC;wBACX,MAAM,CAAC,CAAQ,CAAC,CAAC;qBAClB,CAAC,CAAC;iBACN;qBAAM;oBACL,MAAM,EAAE,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,EAAS,CAAC;iBAC1D;aACF;SACF,CAAC,CAAC;IACL,CAAC;aAEe,YAAY,CAAuC,KAAU,EAAE,IAAO,EAAE,KAAa;;QACnG,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,GAAA,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,GAAG,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,IAAG,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,GAAA,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;aAEe,gBAAgB,CAAC,GAAQ;QACvC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAC,EAAE,EAAE,GAAG;YACrC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACtB,OAAO,EAAE,CAAC;SACX,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAChB,CAAC;aAEe,WAAW;QAAC,mBAAyB;aAAzB,UAAyB,EAAzB,qBAAyB,EAAzB,IAAyB;YAAzB,8BAAyB;;QACnD,SAAS,CAAC,OAAO,CAAC,UAAC,QAAQ;YACzB,KAAK,IAAM,GAAG,IAAI,QAAQ,EAAE;gBAC1B,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aACvB;SACF,CAAC,CAAC;IACL,CAAC;IAED,SAAS,oBAAoB,CAAO,IAAY,EAAE,QAAqB;QACrE,SAAS,aAAa,CAAC,MAAW,EAAE,QAAgB,EAAE,kBAAiD;YACrG,IAAM,eAAe,GAAG,SAAO,QAAU,CAAC;YAE1C,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE;gBACjE,OAAO,CAAC,IAAI,CAAC,gBAAa,eAAe,qDAA+C,IAAI,gBAAa,CAAC,CAAC;aAC5G;YAED,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;gBAC7C,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,OAAO;gBACL,GAAG;oBACD,OAAO,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;iBACnH;gBACD,GAAG,YAAC,KAAQ;oBACV,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,EAAE;wBAChD,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;qBACpD;oBACD,IAAI,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACzC;aACF,CAAC;SACH;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;aAEe,aAAa;QAC3B,OAAO,oBAAoB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;aAEe,YAAY;QAC1B,OAAO,oBAAoB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;aAEe,YAAY;QAC1B,OAAO,oBAAoB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;aAEe,MAAM,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7C;;aC/IgB,OAAO,CAAC,IAAW;QACjC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE;YACpC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;SACvB;aAAM;YACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC,CAAC;SAC7C;IACH,CAAC;aAEe,WAAW,CAAC,IAAW,EAAE,MAAc;QACrD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;YACxC,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH,CAAC;aAEe,WAAW,CAAC,IAAW,EAAE,MAAc;QACrD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC;YACxC,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH,CAAC;aAEe,SAAS,CAAC,IAAW,EAAE,MAAc;QACnD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH,CAAC;aAEe,QAAQ,CAAC,IAAW,EAAE,MAAc;QAClD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC;YAClC,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH,CAAC;aAEe,UAAU,CAAC,IAAW,EAAE,MAAc;QACpD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH,CAAC;aAEe,SAAS,CAAC,IAAW,EAAE,MAAc;QACnD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,EAAE;YAClC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;YAC1C,OAAO,EAAE,CAAC;SACX;aAAM;YACL,OAAO,IAAY,CAAC;SACrB;IACH;;aCnEgB,OAAO,CAAC,GAAY,EAAE,QAAmB,EAAE,OAAkB,EAAE,KAAc,EAAE,SAAsB;QACnH,IAAI,MAAM,GAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACtB,IAAM,UAAU,GAAG,eAAa,OAAS,CAAC;YAC1C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACvB,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;SACpC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACpB,IAAM,QAAQ,GAAG,aAAW,KAAO,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACrB,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SAClC;QACD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACxB,IAAM,YAAY,GAAG,iBAAe,SAAW,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YACzB,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;SACtC;QACD,OAAO,MAAM,CAAC;IAChB;;aCrBgB,KAAK,CAAI,KAAe,EAAE,CAAU;QAClD,IAAI,CAAC,CAAC;YAAE,gCAAW,KAAK,GAAE;QAC1B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,EAAE,CAAC;QAC/D,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9D;;aCJgB,OAAO,CAAI,KAAe,EAAE,SAAiC;;QAC3E,IAAI,OAAO,SAAS,KAAK,WAAW;YAAE,OAAO,EAAE,CAAC;QAChD,IAAI,MAAM,GAAQ,EAAE,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACvB;SACF;;YACD,KAAiB,IAAA,WAAA,SAAA,MAAM,CAAA,8BAAA,kDAAE;gBAApB,IAAI,IAAI,mBAAA;gBACX,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;aACtC;;;;;;;;;QACD,OAAO,MAAM,CAAC;IAChB;;aCZgB,QAAQ,CAAI,UAAoB,EAAE,SAAwB,EAAE,MAA8B;QACxG,IAAI,CAAC,SAAS;YAAE,OAAO,UAAU,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,MAAM,GAAG,EAAE,CAAC;QAEzB,SAAS,OAAO,CAAC,CAAM,EAAE,CAAM,EAAE,IAAS,EAAE,KAAiC,EAAE,IAAY;YACzF,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;gBACtB,EAAE,IAAI,CAAC;gBACP,IAAI,SAAS,CAAC,MAAM,GAAG,IAAI,EAAE;oBAC3B,IAAM,GAAG,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;oBAClE,OAAO,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;iBAClD;qBAAM;oBACL,OAAO,CAAC,CAAC;iBACV;aACF;YACD,IAAI,KAAK,KAAK,MAAM,EAAE;gBACpB,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAY;aACtC;iBAAM;gBACL,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAY;aACtC;SACF;QAED,IAAM,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;QAClC,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC;QAEtC,IAAI,CAAC,OAAO;YAAE,OAAO,UAAU,CAAC;QAEhC,UAAU,CAAC,IAAI,CAAC,UAAC,CAAM,EAAE,CAAM,IAAK,OAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAA,CAAC,CAAC;QAEvE,OAAO,UAAU,CAAC;IACpB;;aC7BgB,UAAU,CAAC,KAAU;QACnC,IAAI,MAAM,GAAQ,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QACjD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YACtC,KAAK,IAAI,GAAG,IAAI,KAAK,EAAE;gBACrB,IAAK,KAAgB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;oBACzC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;iBAC7F;aACF;SACF;QACD,OAAO,MAAM,CAAC;IAChB;;aCVgB,MAAM,CAAC,MAAc,EAAE,GAAW;QAChD,OAAO,MAAM,IAAI,IAAI,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC;IACjD;;ICAA;;;;QAGA;;;;YAIE,aAAQ,GAAc,EAAE,CAAC;SAC1B;wBAAA;KAAA;;ICHD;;QACA;;;;;QASS,4CAAY,GAAZ,UAAa,MAA8B;YAChD,OAAO,IAAI,CAAC;SACb;;;;QAKM,qCAAK,GAAL,UAAM,KAA6B,EAAE,MAA2B;YACrE,IAAI,MAAM,IAAI,IAAI;gBAAE,OAAO;YAC3B,IAAI,qBAAqB,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;;gBAE9G,qBAAqB,CAAC,UAAU,GAAG,IAAI,CAAC;gBACxC,OAAO;aACR;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;SAC3C;;;;QAKM,4CAAY,GAAZ,UAAa,KAA6B;YAA1C,iBAEN;YADC,OAAO,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,IAAI,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAA,CAAC,CAAC;SACtF;;;;QAKM,wCAAQ,GAAR,UAAS,KAA6B;YAAtC,iBAMN;YALC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBACtB,OAAO,EAAE,CAAC;aACX;YACD,IAAI,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,IAAI,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAA,CAAC,CAAC;YAC1F,OAAO,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC;SACtC;;;;;QAMM,gDAAgB,GAAhB,UAAiB,MAA8B,EAAE,IAA4B;YAClF,OAAO,MAAM,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAChH;;;;QAKO,2CAAW,GAAX,UAAY,KAA6B;YAC/C,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,GAAA,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjD,OAAO,GAAG,CAAC;SACZ;;;;QAKa,yCAAmB,GAA1B,UAA2B,IAAa;YAC7C,IAAI,IAAI,EAAE;gBACR,IAAI,IAAE,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAClC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CACnC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAE,CAAC,KAAK,CAAC,GAAA,CAAC,EACvE,CAAC,CACF,CAAC;gBACF,qBAAqB,CAAC,UAAU,GAAG,IAAE,CAAC;aACvC;iBAAM;gBACL,qBAAqB,CAAC,QAAQ,GAAG,EAAE,CAAC;aACrC;SACF;QAEO,mCAAG,GAAH,UAAI,EAAU,EAAE,MAA2B;YACjD,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CACnC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,IAAI,EAAE,GAAA,CAAC,EAC3D,CAAC,CACF,CAAC;YACF,qBAAqB,CAAC,QAAQ,0CAAO,qBAAqB,CAAC,QAAQ,KAAE,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAC,CAAC;SAClG;;;IAjFD;IACc,8BAAQ,GAAyB,EAAE;;ICNnD;;QACA;;YAGE,qBAAgB,GAAa,EAAE,CAAC;SAUjC;QARC,4CAAO,GAAP,UAAQ,KAAY,EAAE,IAA2B;YAC/C,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC;gBACjD,OAAO,IAAI,EAAE,CAAC;aACf;iBAAM;gBACL,OAAOC,OAAE,CAAC,IAAI,CAAC,CAAC;aACjB;SACF;;;oKAXU,0BAA0B;wKAA1B,0BAA0B;qHAA1B,0BAA0B;sBADtCC,aAAU;;;ICDX;;QAIE,sBAAmB,IAAgB;YAAhB,SAAI,GAAJ,IAAI,CAAY;YADnC,QAAG,GAAW,EAAE,CAAC;SACsB;;;;QAKvC,0BAAG,GAAH,UAAI,GAAW,EAAE,MAAoC;YACnD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SACzC;;;;QAKD,2BAAI,GAAJ,UAAK,GAAW,EAAE,MAAoC;YACpD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SAC1C;;;;QAKD,0BAAG,GAAH,UAAI,GAAW,EAAE,MAAoC;YACnD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SACzC;;;;QAKD,6BAAM,GAAN,UAAO,GAAW,EAAE,MAAoC;YACtD,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SAC5C;;;;QAKD,8BAAO,GAAP,UAAQ,MAAc,EAAE,GAAW,EAAE,MAAoC,EAAE,MAAoC;YAA/G,iBAyBC;YAxBC,IAAI,CAAC,MAAM;gBAAE,MAAM,GAAG,EAAE,CAAC;YACzB,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,GAAG,GAAG,KAAG,IAAI,CAAC,GAAG,GAAG,GAAK,CAAC;YAC1B,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBAClD,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;aAC/D;iBAAM,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBACvC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;aAC1B;YACD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACpB,OAAO,IAAIf,eAAU,CAAC,UAAC,CAAC;gBACtB,KAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,CAC3C,UAAC,CAAM;oBACL,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACV,CAAC,CAAC,QAAQ,EAAE,CAAC;iBACd,EACD,UAAC,CAAC;oBACA,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACX,CAAC,CAAC,QAAQ,EAAE,CAAC;oBACb,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;iBACrB,CACF,CAAC;aACH,CAAC,CAAC;SACJ;;;;QAKD,kCAAW,GAAX,UAAY,KAAwB;YAClC,IAAI,KAAK,CAAC,KAAK,EAAE;aAChB;YACD,OAAOgB,eAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAChC;;;;QAKO,gCAAS,GAAT,UAAU,OAAoC;;;;;SAKrD;;;sJA/EU,YAAY;0JAAZ,YAAY,cADC,MAAM;qHACnB,YAAY;sBADxBD,aAAU;uBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ICHlC;;QAGE;SAAgB;;;;QAKhB,kCAAQ,GAAR,UAAS,GAAW;YAClB,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC;SAChE;;;;QAKD,kCAAQ,GAAR,UAAS,GAAW,EAAE,KAAU;YAC9B,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;SAClD;;;;QAKD,oCAAU,GAAV,UAAW,GAAW;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC;SAClE;;;;QAKD,oCAAU,GAAV,UAAW,GAAW,EAAE,KAAU;YAChC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;SACpD;;;;QAKD,qCAAW,GAAX,UAAY,GAAW;YACrB,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC9B;;;;QAKD,uCAAa,GAAb,UAAc,GAAW;YACvB,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAChC;;;;QAKD,8BAAI,GAAJ;YACE,IAAI,EAAE,GAAG;gBACP,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,OAAO,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACxE,CAAC;YACF,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;SACtF;;;yJArDU,eAAe;6JAAf,eAAe,cADF,MAAM;qHACnB,eAAe;sBAD3BA,aAAU;uBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;QCUlC;SAMC;kCAAA;KAAA,IAAA;;QAE2D,sCAAmB;QAE7E,4BAAmB,IAAkB,EAAS,KAAuB;YAArE,YACE,iBAAO,SAER;YAHkB,UAAI,GAAJ,IAAI,CAAc;YAAS,WAAK,GAAL,KAAK,CAAkB;YADrE,SAAG,GAAG,EAAE,CAAC;YAGP,KAAI,CAAC,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,WAAW,GAAG,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;;SAC9D;QAED,oCAAO,GAAP,UAAQ,KAAc,EAAE,IAAa,EAAE,KAAc;YACnD,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAC1B,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,SAAI,IAAI,SAAI,KAAO,EAAE,KAAK,CAAC,CAAC;SAC3F;QAED,gCAAG,GAAH,UAAI,EAAmB;YACrB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,SAAI,EAAI,CAAC,CAAC;SACxE;QAED,iCAAI,GAAJ,UAAK,MAAc;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAM,EAAE,MAAM,CAAC,CAAC;SAC3E;QAED,gCAAG,GAAH,UAAI,MAAc;YAChB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAM,EAAE,MAAM,CAAC,CAAC;SAC1E;QAED,mCAAM,GAAN,UAAO,EAAmB;YACxB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,SAAI,EAAI,CAAC,CAAC;SAC3E;iCACF;KA5BD,CAA4D,mBAAmB;;QCYlE,QAAQ,GAAG,IAAIE,iBAAc,CAAU,UAAU;;QCXjD,OAAO,GAAG,IAAIA,iBAAc,CAAS,SAAS,EAAE;QAEhD,cAAc,GAAG,OAAO;QAExB,aAAa,GAAG,UAAU;QAE1B,mBAAmB,GAAG,UAAU;QAEhC,eAAe,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;QAEzH,mBAAmB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;QAEzC,aAAa,GAAG;QAC3B,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACT,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC;QACX,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC;MACX;QAEW,eAAe,GAAG;QAC7B,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACT,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC;MACX;QAEW,iBAAiB,GAAG;QAC/B,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACZ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACX,CAAC,GAAG,EAAE,GAAG,CAAC;QACV,CAAC,GAAG,EAAE,CAAC,CAAC;QACR,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACX,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACX,CAAC,GAAG,EAAE,CAAC,CAAC;QACR,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACX,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;QACX,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;MACX;QAEW,cAAc,GAAiB;QAC1C,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;MACrB;QAEW,mBAAmB,GAAiB;QAC/C,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;MACrB;QAEW,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc;;;QCjD1D,uBAAsC,GAAQ,EAAU,OAAyB;YAA3C,QAAG,GAAH,GAAG,CAAK;YAAU,YAAO,GAAP,OAAO,CAAkB;YALzE,eAAU,GAAiB,EAAE,CAAC;YAMpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;SAC/D;QAED,uCAAe,GAAf,UAAgB,KAAc;YAC5B,IAAI,CAAC,SAAS,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC;YAC9B,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM;gBAAE,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SAChE;QAED,gCAAQ,GAAR,UAAS,KAAc;YACrB,IAAI,CAAC,SAAS,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC;SAC/B;QAED,gCAAQ,GAAR,UAAS,WAAmB;YAAnB,4BAAA,EAAA,mBAAmB;YAC1B,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;aACpC,CAAC;SACH;QAED,iCAAS,GAAT,UAAU,MAAqB;YAC7B,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACrC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE;gBACtB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAChE;YACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC1B;QAED,iCAAS,GAAT,UAAU,QAAgB,EAAE,MAAuB;YAAnD,iBAQC;YARS,yBAAA,EAAA,gBAAgB;YAAE,uBAAA,EAAA,uBAAuB;YACjD,IAAI,MAAM,GAAiB,EAAE,CAAC;YAC9B,IAAM,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,KAAG,MAAM,GAAG,CAAG,GAAA,CAAC,CAAC;YACtG,IAAI,CAAC,OAAO,CAAC,UAAC,CAAC;gBACb,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,KAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAG,CAAG,CAAC,CAAC,IAAI,EAAE,CAAC;aAClF,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;SACf;QAED,2CAAmB,GAAnB,UAAoB,MAAqB,EAAE,MAAuB;YAAlE,iBAOC;YAP0C,uBAAA,EAAA,uBAAuB;YAChE,IAAI,MAAM,GAAiB,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,MAAsB,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;gBAC5C,MAAM,CAAC,CAAC,CAAC,GAAG,KAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAG,MAAM,GAAG,CAAG,CAAC,CAAC,IAAI,EAAE,CAAC;aACvE,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;SACf;QAED,sCAAc,GAAd,UAAe,MAAqB;YAClC,IAAI,OAAO,MAAM,KAAK,WAAW;gBAAE,MAAM,GAAG,cAAc,CAAC;;gBACtD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACxD,OAAO,MAAM,CAAC;SACf;QAED,+BAAO,GAAP,UAAQ,KAAa,EAAE,KAAa,EAAE,MAAuB;;YAAvB,uBAAA,EAAA,uBAAuB;YAC3D,IAAI,MAAM,GAAiB,EAAE,CAAC;YAC9B,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;;oBACtC,KAAmB,IAAA,oBAAA,SAAA,eAAe,CAAA,gDAAA,6EAAE;wBAA/B,IAAI,MAAM,4BAAA;wBACb,IAAI,MAAM,KAAK,CAAC,EAAE;4BAChB,MAAM,CAAC,KAAG,MAAM,GAAG,KAAO,CAAC,GAAG,KAAK,CAAC;yBACrC;6BAAM;4BACL,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAG,CAAC,GAAG,KAAK,CAC1D,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,GAAG,mBAAmB,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CACrF,CAAC;yBACH;qBACF;;;;;;;;;aACF;iBAAM;gBACL,MAAM,CAAC,KAAG,MAAM,GAAG,KAAO,CAAC,GAAG,KAAK,CAAC;aACrC;YACD,OAAO,MAAM,CAAC;SACf;QAED,mCAAW,GAAX,UAAY,KAAa,EAAE,KAAa,EAAE,MAAuB;YAAjE,iBAgBC;YAhByC,uBAAA,EAAA,uBAAuB;YAC/D,IAAI,MAAM,GAAiB,EAAE,CAAC;YAC9B,IAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACjD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACzE,IAAM,WAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBACrD,iBAAiB,CAAC,OAAO,CAAC,UAAC,CAAC;oBAC1B,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;wBAChB,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClC,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAClC,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,GAAG,WAAS,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,CAAC;qBAC5E;iBACF,CAAC,CAAC;aACJ;iBAAM,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBACzC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;aACjH;YACD,OAAO,MAAM,CAAC;SACf;QAED,uCAAe,GAAf,UAAgB,MAAqB,EAAE,MAAuB,EAAE,MAAc;YAA9E,iBAqCC;YArCsC,uBAAA,EAAA,uBAAuB;YAAE,uBAAA,EAAA,cAAc;YAC5E,IAAI,MAAM,GAAiB,EAAE,CAAC;YAC9B,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACrC,KAAK,IAAI,GAAG,IAAI,MAAM,EAAE;gBACtB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;aAC/D;YACD,IAAI,MAAM,EAAE;gBACV,IAAM,UAAU,GAAG,UAAC,IAA2B,EAAE,QAAkB;;;wBACjE,KAAgB,IAAA,SAAA,SAAA,IAAI,CAAA,0BAAA,4CAAE;4BAAjB,IAAI,GAAG,iBAAA;4BACV,KAAK,IAAI,KAAK,IAAI,MAAM,EAAE;gCACxB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oCACzE,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;iCACtB;6BACF;yBACF;;;;;;;;;iBACF,CAAC;gBACF,UAAU,CAAC,mBAAmB,EAAE,UAAC,UAAkB,EAAE,KAAa;oBAChE,IAAM,KAAK,GAAG,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBACzC,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,KAAO,CAAC,GAAG,MAAM,CAAI,MAAM,kBAAa,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAG,CAAC,CAAC;iBAC9F,CAAC,CAAC;gBACH,UAAU,CAAC,aAAa,EAAE,UAAC,IAAc,EAAE,KAAa;oBACtD,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,GAAG,MAAM,CAAI,MAAM,YAAO,IAAM,CAAC,CAAC;iBACrE,CAAC,CAAC;gBACH,UAAU,CAAC,eAAe,EAAE,UAAC,MAAgB,EAAE,KAAa;oBAC1D,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvC,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvC,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,GAAG,MAAM,CAAI,MAAM,cAAS,IAAM,CAAC,CAAC;iBACvE,CAAC,CAAC;gBACH,UAAU,CAAC,iBAAiB,EAAE,UAAC,QAAkB,EAAE,KAAa;oBAC9D,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,GAAG,MAAM,CAAC,KAAG,MAAM,GAAG,KAAK,GAAG,IAAM,CAAC,CAAC;iBACzE,CAAC,CAAC;aACJ;YACD,OAAO,MAAM,CAAC;SACf;QAED,iCAAS,GAAT,UAAU,GAAW;YACnB,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,OAAO,MAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAG,CAAC;aACnC;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,OAAO,OAAK,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAG,CAAC;aACpC;YACD,OAAO,EAAE,CAAC;SACX;QAED,yCAAiB,GAAjB;YACE,IAAI,IAAI,CAAC,cAAc;gBAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YACzG,IAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;iBAC3C,GAAG,CAAC,UAAC,CAAC,IAAK,OAAG,CAAC,CAAC,CAAC,CAAC,UAAK,CAAC,CAAC,CAAC,CAAC,MAAG,GAAA,CAAC;iBAC/B,IAAI,CAAC,EAAE,CAAC,CAAC;YACZ,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,qBAAmB,MAAM,MAAG,CAAC;YAC7D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;YACpE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAC3F;;;uJAxJU,aAAa,kBAMJC,eAAQ;2JANjB,aAAa,cAFZ,MAAM;qHAEP,aAAa;sBAHzBH,aAAU;uBAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;kCAOcI,SAAM;mCAACD,eAAQ;;;aAqJd,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc;QACtE,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,OAAO,GAAG,MAAM,CAAC;QACrB,IAAI,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC;QACzB,IAAI,MAA2C,CAAC;QAEhD,IAAM,OAAO,GAAG,UAAC,GAAW;YAC1B,OAAO,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;SAC5C,CAAC;QAEF,MAAM,GAAG;YACP,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;YAC3D,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;YAC3D,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;SAC5D,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;aAEe,KAAK,CAAC,GAAwC;QAC5D,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC;aAEe,KAAK,CAAC,GAAW;QAC/B,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,GAAG;YAAE,CAAC,GAAG,GAAG,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,MAAM,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG;YAAE,CAAC,GAAG,GAAG,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG;YAAE,CAAC,GAAG,GAAG,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC;QAEtB,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9B;;ICrNA;IAQA,IAAM,SAAS,GAAG,UAAU,KAAW;QACrC,OAAO,KAAK,KAAK,SAAS,CAAC;IAC7B,CAAC,CAAC;;QAUA,wBAAwB,YAA4B,EAAgC,aAAuB;YAJnG,4BAAuB,GAAG,IAAIE,YAAO,EAA0B,CAAC;YAKtE,IAAI,CAAC,MAAM,GAAG,aAAa,IAAI,EAAE,CAAC;YAClC,IAAI,YAAY,EAAE;gBAChB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;aAClC;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACzC;QAED,8CAAqB,GAArB,UAAqD,aAAgB;;YACnE,OAAO,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,IAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;SACpF;QAED,yDAAgC,GAAhC,UAAiC,aAAkC;YACjE,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,CACtCC,gBAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,aAAa,GAAA,CAAC,EAClCC,eAAK,CAAC,SAAS,CAAC,CACjB,CAAC;SACH;QAED,4BAAG,GAAH,UAAmC,aAAgB,EAAE,KAA0B;;YAC7E,IAAI,MAAA,IAAI,CAAC,MAAM,0CAAE,UAAU,EAAE;gBAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,mCAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,GAAK,KAAK,CAAE,CAAC;gBAC/F,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aAClD;SACF;QAED,qCAAY,GAAZ,UAAa,KAAc;YACzB,IAAI,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,MAAM;gBAAE,MAAM,GAAG,mBAAmB,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC;aACtI,CAAC,CAAC;SACJ;QAED,sCAAa,GAAb,UAAc,KAAc;YAC1B,IAAI,MAAM,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;YAC3B,IAAI,CAAC,MAAM;gBAAE,MAAM,GAAG,cAAc,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC;aACvI,CAAC,CAAC;SACJ;QAED,iCAAQ,GAAR,UAAS,KAAc;YACrB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACnC;QAED,wCAAe,GAAf,UAAgB,KAAc;YAC5B,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC1C;QAED,iCAAQ,GAAR,UAAS,WAAmB;YAAnB,4BAAA,EAAA,mBAAmB;YAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;SAChD;;;wJAzDU,cAAc,4DAKiD,QAAQ;4JALvE,cAAc,cAFb,MAAM;qHAEP,cAAc;sBAH1BP,aAAU;uBAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;kCAMcQ,WAAQ;;kCAAkCA,WAAQ;;kCAAIJ,SAAM;mCAAC,QAAQ;;;IAuDpF;aACgB,WAAW,CAAI,aAAkC,EAAE,iBAAqB;QACtF,OAAO,SAAS,eAAe,CAAC,MAAW,EAAE,QAAa,EAAE,kBAA+C;YACzG,IAAM,eAAe,GAAG,wBAAsB,QAAU,CAAC;YAEzD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE;gBAC7C,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,KAAK;aAClB,CAAC,CAAC;YAEH,OAAO;gBACL,GAAG;;oBACD,IAAM,aAAa,GAAG,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;oBAEjI,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE;wBAC5B,OAAO,aAAa,CAAC;qBACtB;oBAED,IAAM,eAAe,GAAG,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,qBAAqB,CAAC,aAAa,CAAC,KAAI,EAAE,CAAC;oBACvF,IAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;oBAE9C,OAAO,SAAS,CAAC,WAAW,CAAC,GAAG,WAAW,GAAG,iBAAiB,CAAC;iBACjE;gBACD,GAAG,YAAC,KAAQ;oBACV,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,GAAG,EAAE;wBAChD,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;qBAC1C;yBAAM;wBACL,IAAI,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;qBAC/B;iBACF;gBACD,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI;aACjB,CAAC;SACH,CAAC;IACJ;;IC9GA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}