@ng-nest/ui 17.0.12 → 18.0.1

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 (923) hide show
  1. package/README.md +1 -1
  2. package/affix/affix.component.d.ts +0 -2
  3. package/affix/affix.property.d.ts +12 -7
  4. package/alert/alert.component.d.ts +12 -11
  5. package/alert/alert.property.d.ts +36 -35
  6. package/anchor/anchor.component.d.ts +15 -18
  7. package/anchor/anchor.property.d.ts +17 -8
  8. package/api/api.component.d.ts +2 -7
  9. package/auto-complete/auto-complete-portal.component.d.ts +20 -25
  10. package/auto-complete/auto-complete.component.d.ts +17 -34
  11. package/auto-complete/auto-complete.property.d.ts +282 -20
  12. package/avatar/avatar.component.d.ts +29 -19
  13. package/avatar/avatar.property.d.ts +78 -12
  14. package/back-top/back-top.component.d.ts +12 -17
  15. package/back-top/back-top.property.d.ts +12 -8
  16. package/badge/badge.component.d.ts +9 -16
  17. package/badge/badge.property.d.ts +95 -13
  18. package/base-form/base-form.component.d.ts +53 -26
  19. package/base-form/base-form.module.d.ts +1 -2
  20. package/base-form/base-form.property.d.ts +173 -45
  21. package/button/button.component.d.ts +16 -14
  22. package/button/button.property.d.ts +242 -100
  23. package/button/buttons.component.d.ts +8 -10
  24. package/calendar/calendar.component.d.ts +41 -27
  25. package/calendar/calendar.property.d.ts +69 -10
  26. package/card/card.component.d.ts +4 -6
  27. package/card/card.property.d.ts +50 -9
  28. package/carousel/carousel-panel.component.d.ts +15 -14
  29. package/carousel/carousel.component.d.ts +18 -19
  30. package/carousel/carousel.property.d.ts +168 -28
  31. package/cascade/cascade-portal.component.d.ts +28 -28
  32. package/cascade/cascade.component.d.ts +24 -30
  33. package/cascade/cascade.property.d.ts +292 -20
  34. package/checkbox/checkbox.component.d.ts +17 -17
  35. package/checkbox/checkbox.property.d.ts +274 -35
  36. package/collapse/collapse-panel.component.d.ts +5 -2
  37. package/collapse/collapse.component.d.ts +3 -7
  38. package/collapse/collapse.property.d.ts +113 -20
  39. package/color/color.component.d.ts +4 -9
  40. package/color/color.property.d.ts +36 -8
  41. package/color-picker/color-picker-portal.component.d.ts +40 -52
  42. package/color-picker/color-picker.component.d.ts +19 -28
  43. package/color-picker/color-picker.property.d.ts +260 -10
  44. package/comment/comment-reply.component.d.ts +1 -8
  45. package/comment/comment.component.d.ts +4 -14
  46. package/comment/comment.property.d.ts +21 -15
  47. package/container/aside.component.d.ts +3 -8
  48. package/container/container.component.d.ts +5 -9
  49. package/container/container.property.d.ts +33 -19
  50. package/container/footer.component.d.ts +2 -5
  51. package/container/header.component.d.ts +2 -5
  52. package/container/main.component.d.ts +2 -7
  53. package/core/animation/badge.d.ts +8 -0
  54. package/core/animation/connect.d.ts +8 -1
  55. package/core/animation/consts.d.ts +4 -0
  56. package/core/animation/drop.d.ts +4 -0
  57. package/core/animation/fade.d.ts +4 -0
  58. package/core/animation/move.d.ts +4 -0
  59. package/core/animation/opacity.d.ts +4 -0
  60. package/core/animation/slide.d.ts +4 -1
  61. package/core/config/config.d.ts +174 -108
  62. package/core/config/config.service.d.ts +5 -5
  63. package/core/config/index.d.ts +1 -0
  64. package/core/functions/chunk.d.ts +12 -1
  65. package/core/functions/clone-deep.d.ts +16 -0
  66. package/core/functions/convert.d.ts +77 -4
  67. package/core/functions/csspx.d.ts +5 -0
  68. package/core/functions/date.d.ts +59 -3
  69. package/core/functions/drop.d.ts +13 -1
  70. package/core/functions/flex.d.ts +4 -0
  71. package/core/functions/group-by.d.ts +5 -1
  72. package/core/functions/guid.d.ts +2 -1
  73. package/core/functions/has-in.d.ts +4 -0
  74. package/core/functions/order-by.d.ts +5 -1
  75. package/core/functions/parent-path.d.ts +8 -0
  76. package/core/functions/property.d.ts +12 -6
  77. package/core/functions/public-api.d.ts +1 -0
  78. package/core/functions/remove.d.ts +5 -1
  79. package/core/functions/resize.d.ts +13 -1
  80. package/core/interfaces/data.type.d.ts +172 -3
  81. package/core/interfaces/identify.type.d.ts +60 -0
  82. package/core/interfaces/layout.type.d.ts +88 -37
  83. package/core/interfaces/result-list.type.d.ts +91 -3
  84. package/core/services/http.service.d.ts +0 -22
  85. package/core/services/repository.service.d.ts +1 -1
  86. package/core/services/reuse-strategy.service.d.ts +0 -22
  87. package/core/services/storage.service.d.ts +0 -21
  88. package/core/theme/theme.d.ts +45 -1
  89. package/core/theme/theme.service.d.ts +46 -11
  90. package/core/util/animation.d.ts +1 -1
  91. package/core/util/camel-to-kebab.d.ts +13 -0
  92. package/core/util/check.d.ts +10 -2
  93. package/core/util/computed-style.d.ts +8 -0
  94. package/core/util/host.d.ts +3 -2
  95. package/core/util/html.d.ts +3 -2
  96. package/core/util/kebab-to-camel.d.ts +13 -0
  97. package/core/util/log.d.ts +10 -2
  98. package/core/util/option.d.ts +3 -4
  99. package/core/util/public-api.d.ts +2 -0
  100. package/crumb/crumb.component.d.ts +1 -10
  101. package/crumb/crumb.property.d.ts +12 -8
  102. package/date-picker/date-picker-portal.component.d.ts +80 -33
  103. package/date-picker/date-picker.component.d.ts +74 -32
  104. package/date-picker/date-picker.property.d.ts +662 -214
  105. package/date-picker/date-range-portal.component.d.ts +102 -49
  106. package/date-picker/date-range.component.d.ts +87 -43
  107. package/date-picker/picker-date.component.d.ts +63 -17
  108. package/date-picker/picker-month.component.d.ts +59 -13
  109. package/date-picker/picker-quarter.component.d.ts +61 -15
  110. package/date-picker/picker-year.component.d.ts +8 -11
  111. package/description/description-item.component.d.ts +1 -1
  112. package/description/description.component.d.ts +6 -10
  113. package/description/description.property.d.ts +135 -16
  114. package/dialog/dialog-portal.component.d.ts +5 -6
  115. package/dialog/dialog-portal.directives.d.ts +1 -1
  116. package/dialog/dialog.component.d.ts +30 -23
  117. package/dialog/dialog.property.d.ts +77 -134
  118. package/doc/doc.component.d.ts +2 -5
  119. package/drag/drag.directive.d.ts +1 -1
  120. package/drag/drag.property.d.ts +4 -5
  121. package/drawer/drawer-container.component.d.ts +1 -1
  122. package/drawer/drawer-portal.component.d.ts +1 -1
  123. package/drawer/drawer.component.d.ts +15 -14
  124. package/drawer/drawer.property.d.ts +26 -18
  125. package/dropdown/dropdown-portal.component.d.ts +36 -45
  126. package/dropdown/dropdown.component.d.ts +17 -21
  127. package/dropdown/dropdown.property.d.ts +24 -21
  128. package/empty/empty.component.d.ts +0 -7
  129. package/empty/empty.property.d.ts +27 -4
  130. package/esm2022/affix/affix.component.mjs +6 -11
  131. package/esm2022/affix/affix.module.mjs +5 -5
  132. package/esm2022/affix/affix.property.mjs +22 -20
  133. package/esm2022/alert/alert.component.mjs +39 -44
  134. package/esm2022/alert/alert.module.mjs +5 -5
  135. package/esm2022/alert/alert.property.mjs +102 -107
  136. package/esm2022/anchor/anchor-inner.component.mjs +4 -4
  137. package/esm2022/anchor/anchor.component.mjs +73 -95
  138. package/esm2022/anchor/anchor.module.mjs +5 -5
  139. package/esm2022/anchor/anchor.property.mjs +45 -35
  140. package/esm2022/api/api.component.mjs +11 -14
  141. package/esm2022/api/api.module.mjs +5 -5
  142. package/esm2022/auto-complete/auto-complete-portal.component.mjs +36 -47
  143. package/esm2022/auto-complete/auto-complete.component.mjs +122 -162
  144. package/esm2022/auto-complete/auto-complete.module.mjs +5 -5
  145. package/esm2022/auto-complete/auto-complete.property.mjs +142 -55
  146. package/esm2022/avatar/avatar-group.component.mjs +4 -4
  147. package/esm2022/avatar/avatar.component.mjs +75 -81
  148. package/esm2022/avatar/avatar.module.mjs +5 -5
  149. package/esm2022/avatar/avatar.property.mjs +116 -45
  150. package/esm2022/back-top/back-top.component.mjs +57 -73
  151. package/esm2022/back-top/back-top.module.mjs +5 -5
  152. package/esm2022/back-top/back-top.property.mjs +37 -29
  153. package/esm2022/badge/badge.component.mjs +51 -59
  154. package/esm2022/badge/badge.module.mjs +5 -5
  155. package/esm2022/badge/badge.property.mjs +111 -38
  156. package/esm2022/base-form/base-form.component.mjs +89 -81
  157. package/esm2022/base-form/base-form.module.mjs +7 -8
  158. package/esm2022/base-form/base-form.property.mjs +200 -89
  159. package/esm2022/button/button.component.mjs +50 -59
  160. package/esm2022/button/button.module.mjs +5 -5
  161. package/esm2022/button/button.property.mjs +293 -98
  162. package/esm2022/button/buttons.component.mjs +35 -21
  163. package/esm2022/calendar/calendar.component.mjs +56 -84
  164. package/esm2022/calendar/calendar.module.mjs +5 -5
  165. package/esm2022/calendar/calendar.property.mjs +78 -24
  166. package/esm2022/card/card.component.mjs +10 -14
  167. package/esm2022/card/card.module.mjs +5 -5
  168. package/esm2022/card/card.property.mjs +57 -22
  169. package/esm2022/carousel/carousel-panel.component.mjs +98 -76
  170. package/esm2022/carousel/carousel.component.mjs +55 -65
  171. package/esm2022/carousel/carousel.module.mjs +5 -5
  172. package/esm2022/carousel/carousel.property.mjs +215 -85
  173. package/esm2022/cascade/cascade-portal.component.mjs +77 -69
  174. package/esm2022/cascade/cascade.component.mjs +107 -135
  175. package/esm2022/cascade/cascade.module.mjs +5 -5
  176. package/esm2022/cascade/cascade.property.mjs +137 -48
  177. package/esm2022/checkbox/checkbox.component.mjs +68 -83
  178. package/esm2022/checkbox/checkbox.module.mjs +5 -5
  179. package/esm2022/checkbox/checkbox.property.mjs +136 -73
  180. package/esm2022/collapse/collapse-panel.component.mjs +31 -21
  181. package/esm2022/collapse/collapse.component.mjs +16 -21
  182. package/esm2022/collapse/collapse.module.mjs +5 -5
  183. package/esm2022/collapse/collapse.property.mjs +156 -66
  184. package/esm2022/color/color.component.mjs +25 -26
  185. package/esm2022/color/color.module.mjs +5 -5
  186. package/esm2022/color/color.property.mjs +47 -27
  187. package/esm2022/color-picker/color-picker-portal.component.mjs +120 -130
  188. package/esm2022/color-picker/color-picker.component.mjs +76 -117
  189. package/esm2022/color-picker/color-picker.module.mjs +5 -5
  190. package/esm2022/color-picker/color-picker.property.mjs +123 -27
  191. package/esm2022/comment/comment-reply.component.mjs +9 -24
  192. package/esm2022/comment/comment.component.mjs +11 -40
  193. package/esm2022/comment/comment.module.mjs +5 -5
  194. package/esm2022/comment/comment.property.mjs +27 -50
  195. package/esm2022/container/aside.component.mjs +12 -15
  196. package/esm2022/container/container.component.mjs +21 -24
  197. package/esm2022/container/container.module.mjs +5 -5
  198. package/esm2022/container/container.property.mjs +55 -51
  199. package/esm2022/container/footer.component.mjs +14 -16
  200. package/esm2022/container/header.component.mjs +14 -16
  201. package/esm2022/container/main.component.mjs +10 -13
  202. package/esm2022/core/animation/badge.mjs +17 -3
  203. package/esm2022/core/animation/connect.mjs +17 -99
  204. package/esm2022/core/animation/consts.mjs +5 -1
  205. package/esm2022/core/animation/drop.mjs +5 -1
  206. package/esm2022/core/animation/fade.mjs +13 -3
  207. package/esm2022/core/animation/move.mjs +5 -1
  208. package/esm2022/core/animation/opacity.mjs +5 -1
  209. package/esm2022/core/animation/slide.mjs +5 -23
  210. package/esm2022/core/config/config.mjs +1 -1
  211. package/esm2022/core/config/config.service.mjs +11 -59
  212. package/esm2022/core/config/index.mjs +2 -0
  213. package/esm2022/core/functions/chunk.mjs +12 -1
  214. package/esm2022/core/functions/clone-deep.mjs +17 -1
  215. package/esm2022/core/functions/convert.mjs +110 -13
  216. package/esm2022/core/functions/csspx.mjs +17 -0
  217. package/esm2022/core/functions/date.mjs +80 -4
  218. package/esm2022/core/functions/drop.mjs +13 -1
  219. package/esm2022/core/functions/flex.mjs +5 -1
  220. package/esm2022/core/functions/group-by.mjs +5 -1
  221. package/esm2022/core/functions/guid.mjs +3 -2
  222. package/esm2022/core/functions/has-in.mjs +5 -1
  223. package/esm2022/core/functions/order-by.mjs +5 -1
  224. package/esm2022/core/functions/parent-path.mjs +9 -1
  225. package/esm2022/core/functions/property.mjs +16 -8
  226. package/esm2022/core/functions/public-api.mjs +2 -1
  227. package/esm2022/core/functions/remove.mjs +5 -1
  228. package/esm2022/core/functions/resize.mjs +7 -5
  229. package/esm2022/core/interfaces/data.type.mjs +97 -8
  230. package/esm2022/core/interfaces/identify.type.mjs +5 -2
  231. package/esm2022/core/interfaces/layout.type.mjs +1 -1
  232. package/esm2022/core/interfaces/result-list.type.mjs +1 -1
  233. package/esm2022/core/services/http.service.mjs +4 -33
  234. package/esm2022/core/services/preloading-strategy.service.mjs +4 -6
  235. package/esm2022/core/services/repository.service.mjs +1 -1
  236. package/esm2022/core/services/reuse-strategy.service.mjs +1 -26
  237. package/esm2022/core/services/storage.service.mjs +4 -26
  238. package/esm2022/core/theme/theme.mjs +55 -11
  239. package/esm2022/core/theme/theme.service.mjs +92 -20
  240. package/esm2022/core/util/animation.mjs +2 -23
  241. package/esm2022/core/util/camel-to-kebab.mjs +16 -0
  242. package/esm2022/core/util/check.mjs +11 -3
  243. package/esm2022/core/util/computed-style.mjs +9 -1
  244. package/esm2022/core/util/host.mjs +4 -3
  245. package/esm2022/core/util/html.mjs +5 -4
  246. package/esm2022/core/util/kebab-to-camel.mjs +16 -0
  247. package/esm2022/core/util/log.mjs +11 -3
  248. package/esm2022/core/util/option.mjs +4 -5
  249. package/esm2022/core/util/public-api.mjs +3 -1
  250. package/esm2022/crumb/crumb.component.mjs +6 -29
  251. package/esm2022/crumb/crumb.module.mjs +5 -5
  252. package/esm2022/crumb/crumb.property.mjs +21 -26
  253. package/esm2022/date-picker/date-picker-portal.component.mjs +86 -102
  254. package/esm2022/date-picker/date-picker.component.mjs +157 -191
  255. package/esm2022/date-picker/date-picker.module.mjs +5 -5
  256. package/esm2022/date-picker/date-picker.property.mjs +440 -462
  257. package/esm2022/date-picker/date-quarter.pipe.mjs +4 -4
  258. package/esm2022/date-picker/date-range-portal.component.mjs +172 -186
  259. package/esm2022/date-picker/date-range.component.mjs +224 -266
  260. package/esm2022/date-picker/picker-date.component.mjs +150 -150
  261. package/esm2022/date-picker/picker-month.component.mjs +115 -118
  262. package/esm2022/date-picker/picker-quarter.component.mjs +120 -119
  263. package/esm2022/date-picker/picker-year.component.mjs +121 -108
  264. package/esm2022/description/description-item.component.mjs +12 -11
  265. package/esm2022/description/description.component.mjs +33 -48
  266. package/esm2022/description/description.module.mjs +5 -5
  267. package/esm2022/description/description.property.mjs +175 -52
  268. package/esm2022/dialog/dialog-container.component.mjs +4 -4
  269. package/esm2022/dialog/dialog-portal.component.mjs +29 -35
  270. package/esm2022/dialog/dialog-portal.directives.mjs +20 -20
  271. package/esm2022/dialog/dialog-ref.mjs +3 -3
  272. package/esm2022/dialog/dialog.component.mjs +119 -133
  273. package/esm2022/dialog/dialog.module.mjs +5 -5
  274. package/esm2022/dialog/dialog.property.mjs +149 -139
  275. package/esm2022/dialog/dialog.service.mjs +8 -8
  276. package/esm2022/doc/doc.component.mjs +11 -12
  277. package/esm2022/doc/doc.module.mjs +5 -5
  278. package/esm2022/drag/drag.directive.mjs +8 -21
  279. package/esm2022/drag/drag.module.mjs +5 -5
  280. package/esm2022/drag/drag.property.mjs +10 -16
  281. package/esm2022/drawer/drawer-container.component.mjs +9 -9
  282. package/esm2022/drawer/drawer-portal.component.mjs +11 -13
  283. package/esm2022/drawer/drawer-portal.directives.mjs +10 -10
  284. package/esm2022/drawer/drawer.component.mjs +40 -59
  285. package/esm2022/drawer/drawer.module.mjs +5 -5
  286. package/esm2022/drawer/drawer.property.mjs +47 -54
  287. package/esm2022/drawer/drawer.service.mjs +6 -6
  288. package/esm2022/dropdown/dropdown-portal.component.mjs +90 -91
  289. package/esm2022/dropdown/dropdown.component.mjs +75 -91
  290. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  291. package/esm2022/dropdown/dropdown.property.mjs +62 -59
  292. package/esm2022/empty/empty.component.mjs +6 -26
  293. package/esm2022/empty/empty.module.mjs +5 -5
  294. package/esm2022/empty/empty.property.mjs +41 -20
  295. package/esm2022/examples/examples.component.mjs +11 -12
  296. package/esm2022/examples/examples.module.mjs +5 -5
  297. package/esm2022/find/find.component.mjs +188 -232
  298. package/esm2022/find/find.module.mjs +5 -5
  299. package/esm2022/find/find.property.mjs +234 -193
  300. package/esm2022/form/control.component.mjs +136 -114
  301. package/esm2022/form/form.component.mjs +28 -36
  302. package/esm2022/form/form.module.mjs +5 -5
  303. package/esm2022/form/form.property.mjs +57 -55
  304. package/esm2022/highlight/highlight.component.mjs +54 -59
  305. package/esm2022/highlight/highlight.module.mjs +5 -5
  306. package/esm2022/highlight/highlight.property.mjs +25 -21
  307. package/esm2022/highlight/highlight.service.mjs +17 -0
  308. package/esm2022/highlight/public-api.mjs +2 -1
  309. package/esm2022/i18n/i18n.directive.mjs +17 -31
  310. package/esm2022/i18n/i18n.module.mjs +5 -5
  311. package/esm2022/i18n/i18n.pipe.mjs +4 -4
  312. package/esm2022/i18n/i18n.property.mjs +2 -2
  313. package/esm2022/i18n/i18n.service.mjs +4 -4
  314. package/esm2022/i18n/languages/ar_EG.mjs +122 -77
  315. package/esm2022/i18n/languages/bg_BG.mjs +135 -87
  316. package/esm2022/i18n/languages/ca_ES.mjs +130 -82
  317. package/esm2022/i18n/languages/cs_CZ.mjs +127 -79
  318. package/esm2022/i18n/languages/da_DK.mjs +129 -81
  319. package/esm2022/i18n/languages/de_DE.mjs +125 -77
  320. package/esm2022/i18n/languages/el_GR.mjs +132 -84
  321. package/esm2022/i18n/languages/en_GB.mjs +5 -2
  322. package/esm2022/i18n/languages/en_US.mjs +5 -2
  323. package/esm2022/i18n/languages/es_ES.mjs +131 -83
  324. package/esm2022/i18n/languages/et_EE.mjs +130 -82
  325. package/esm2022/i18n/languages/fa_IR.mjs +109 -61
  326. package/esm2022/i18n/languages/fi_FI.mjs +134 -86
  327. package/esm2022/i18n/languages/fr_BE.mjs +128 -80
  328. package/esm2022/i18n/languages/fr_FR.mjs +127 -79
  329. package/esm2022/i18n/languages/he_IL.mjs +119 -74
  330. package/esm2022/i18n/languages/hi_IN.mjs +104 -56
  331. package/esm2022/i18n/languages/hr_HR.mjs +133 -85
  332. package/esm2022/i18n/languages/hu_HU.mjs +132 -84
  333. package/esm2022/i18n/languages/hy_AM.mjs +133 -85
  334. package/esm2022/i18n/languages/id_ID.mjs +119 -71
  335. package/esm2022/i18n/languages/is_IS.mjs +125 -77
  336. package/esm2022/i18n/languages/it_IT.mjs +127 -79
  337. package/esm2022/i18n/languages/ja_JP.mjs +95 -47
  338. package/esm2022/i18n/languages/ka_GE.mjs +106 -58
  339. package/esm2022/i18n/languages/kn_IN.mjs +110 -62
  340. package/esm2022/i18n/languages/ko_KR.mjs +126 -70
  341. package/esm2022/i18n/languages/ku_IQ.mjs +117 -85
  342. package/esm2022/i18n/languages/lv_LV.mjs +128 -72
  343. package/esm2022/i18n/languages/mn_MN.mjs +138 -82
  344. package/esm2022/i18n/languages/ms_MY.mjs +124 -68
  345. package/esm2022/i18n/languages/nb_NO.mjs +133 -77
  346. package/esm2022/i18n/languages/ne_NP.mjs +117 -61
  347. package/esm2022/i18n/languages/nl_BE.mjs +134 -78
  348. package/esm2022/i18n/languages/nl_NL.mjs +134 -78
  349. package/esm2022/i18n/languages/pl_PL.mjs +132 -76
  350. package/esm2022/i18n/languages/pt_BR.mjs +133 -77
  351. package/esm2022/i18n/languages/pt_PT.mjs +133 -77
  352. package/esm2022/i18n/languages/ro_RO.mjs +130 -74
  353. package/esm2022/i18n/languages/ru_RU.mjs +131 -75
  354. package/esm2022/i18n/languages/sk_SK.mjs +130 -83
  355. package/esm2022/i18n/languages/sl_SI.mjs +121 -73
  356. package/esm2022/i18n/languages/sr_RS.mjs +138 -90
  357. package/esm2022/i18n/languages/sv_SE.mjs +132 -84
  358. package/esm2022/i18n/languages/ta_IN.mjs +117 -61
  359. package/esm2022/i18n/languages/th_TH.mjs +99 -43
  360. package/esm2022/i18n/languages/tr_TR.mjs +126 -70
  361. package/esm2022/i18n/languages/uk_UA.mjs +124 -68
  362. package/esm2022/i18n/languages/vi_VN.mjs +133 -77
  363. package/esm2022/i18n/languages/zh_CN.mjs +5 -2
  364. package/esm2022/i18n/languages/zh_TW.mjs +5 -2
  365. package/esm2022/icon/icon.component.mjs +48 -77
  366. package/esm2022/icon/icon.module.mjs +5 -5
  367. package/esm2022/icon/icon.property.mjs +52 -30
  368. package/esm2022/icon/icon.service.mjs +15 -14
  369. package/esm2022/image/image-group.component.mjs +15 -15
  370. package/esm2022/image/image-preview.component.mjs +47 -46
  371. package/esm2022/image/image.component.mjs +34 -53
  372. package/esm2022/image/image.module.mjs +5 -5
  373. package/esm2022/image/image.property.mjs +152 -38
  374. package/esm2022/index.mjs +1 -3
  375. package/esm2022/inner/inner.component.mjs +15 -20
  376. package/esm2022/inner/inner.module.mjs +5 -5
  377. package/esm2022/inner/inner.property.mjs +17 -15
  378. package/esm2022/input/input-group.component.mjs +5 -7
  379. package/esm2022/input/input.component.mjs +130 -143
  380. package/esm2022/input/input.module.mjs +5 -5
  381. package/esm2022/input/input.property.mjs +205 -143
  382. package/esm2022/input-number/input-number.component.mjs +68 -86
  383. package/esm2022/input-number/input-number.module.mjs +5 -5
  384. package/esm2022/input-number/input-number.property.mjs +130 -60
  385. package/esm2022/keyword/keyword.directive.mjs +46 -54
  386. package/esm2022/keyword/keyword.module.mjs +5 -5
  387. package/esm2022/keyword/keyword.property.mjs +32 -28
  388. package/esm2022/layout/col.component.mjs +48 -51
  389. package/esm2022/layout/layout.module.mjs +5 -5
  390. package/esm2022/layout/layout.property.mjs +125 -63
  391. package/esm2022/layout/row.component.mjs +36 -27
  392. package/esm2022/link/link.component.mjs +18 -45
  393. package/esm2022/link/link.module.mjs +5 -5
  394. package/esm2022/link/link.property.mjs +101 -41
  395. package/esm2022/list/list-drop-group.directive.mjs +9 -18
  396. package/esm2022/list/list-option.component.mjs +16 -33
  397. package/esm2022/list/list.component.mjs +160 -164
  398. package/esm2022/list/list.module.mjs +5 -5
  399. package/esm2022/list/list.property.mjs +195 -188
  400. package/esm2022/loading/loading.component.mjs +44 -45
  401. package/esm2022/loading/loading.module.mjs +5 -5
  402. package/esm2022/loading/loading.property.mjs +50 -52
  403. package/esm2022/menu/menu-node.component.mjs +21 -21
  404. package/esm2022/menu/menu.component.mjs +57 -76
  405. package/esm2022/menu/menu.module.mjs +5 -5
  406. package/esm2022/menu/menu.property.mjs +56 -73
  407. package/esm2022/message/message.component.mjs +8 -8
  408. package/esm2022/message/message.module.mjs +5 -5
  409. package/esm2022/message/message.property.mjs +1 -1
  410. package/esm2022/message/message.service.mjs +7 -7
  411. package/esm2022/message-box/message-box.component.mjs +5 -5
  412. package/esm2022/message-box/message-box.module.mjs +5 -5
  413. package/esm2022/message-box/message-box.service.mjs +6 -6
  414. package/esm2022/notification/notification.component.mjs +8 -8
  415. package/esm2022/notification/notification.module.mjs +5 -5
  416. package/esm2022/notification/notification.property.mjs +1 -1
  417. package/esm2022/notification/notification.service.mjs +8 -8
  418. package/esm2022/outlet/outlet.directive.mjs +12 -14
  419. package/esm2022/outlet/outlet.module.mjs +5 -5
  420. package/esm2022/outlet/outlet.property.mjs +2 -2
  421. package/esm2022/page-header/page-header.component.mjs +12 -28
  422. package/esm2022/page-header/page-header.module.mjs +5 -5
  423. package/esm2022/page-header/page-header.property.mjs +31 -27
  424. package/esm2022/pagination/pagination.component.mjs +74 -100
  425. package/esm2022/pagination/pagination.module.mjs +5 -5
  426. package/esm2022/pagination/pagination.property.mjs +99 -136
  427. package/esm2022/pattern/pattern.component.mjs +12 -13
  428. package/esm2022/pattern/pattern.module.mjs +5 -5
  429. package/esm2022/pattern/pattern.property.mjs +2 -2
  430. package/esm2022/popconfirm/popconfirm.component.mjs +35 -47
  431. package/esm2022/popconfirm/popconfirm.module.mjs +5 -5
  432. package/esm2022/popconfirm/popconfirm.property.mjs +76 -62
  433. package/esm2022/popover/popover-portal.component.mjs +24 -75
  434. package/esm2022/popover/popover.directive.mjs +70 -86
  435. package/esm2022/popover/popover.module.mjs +5 -5
  436. package/esm2022/popover/popover.property.mjs +71 -58
  437. package/esm2022/portal/portal.module.mjs +5 -5
  438. package/esm2022/portal/portal.property.mjs +3 -3
  439. package/esm2022/portal/portal.service.mjs +4 -4
  440. package/esm2022/progress/progress.component.mjs +173 -167
  441. package/esm2022/progress/progress.module.mjs +5 -5
  442. package/esm2022/progress/progress.property.mjs +67 -71
  443. package/esm2022/radio/radio.component.mjs +45 -61
  444. package/esm2022/radio/radio.module.mjs +5 -5
  445. package/esm2022/radio/radio.property.mjs +139 -66
  446. package/esm2022/rate/rate.component.mjs +61 -79
  447. package/esm2022/rate/rate.module.mjs +5 -5
  448. package/esm2022/rate/rate.property.mjs +121 -29
  449. package/esm2022/resizable/resizable.directive.mjs +30 -45
  450. package/esm2022/resizable/resizable.module.mjs +5 -5
  451. package/esm2022/resizable/resizable.property.mjs +16 -46
  452. package/esm2022/result/result.component.mjs +13 -17
  453. package/esm2022/result/result.module.mjs +5 -5
  454. package/esm2022/result/result.property.mjs +25 -17
  455. package/esm2022/ripple/ripple.directive.mjs +40 -27
  456. package/esm2022/ripple/ripple.module.mjs +5 -5
  457. package/esm2022/ripple/ripple.property.mjs +27 -20
  458. package/esm2022/select/select-portal.component.mjs +52 -67
  459. package/esm2022/select/select.component.mjs +301 -289
  460. package/esm2022/select/select.module.mjs +5 -5
  461. package/esm2022/select/select.property.mjs +195 -102
  462. package/esm2022/skeleton/skeleton.component.mjs +12 -23
  463. package/esm2022/skeleton/skeleton.module.mjs +5 -5
  464. package/esm2022/skeleton/skeleton.property.mjs +31 -28
  465. package/esm2022/slider/slider.component.mjs +103 -149
  466. package/esm2022/slider/slider.module.mjs +5 -5
  467. package/esm2022/slider/slider.property.mjs +60 -79
  468. package/esm2022/slider-select/slider-select.component.mjs +201 -220
  469. package/esm2022/slider-select/slider-select.module.mjs +5 -5
  470. package/esm2022/slider-select/slider-select.property.mjs +143 -70
  471. package/esm2022/statistic/countdown.component.mjs +13 -16
  472. package/esm2022/statistic/statistic.component.mjs +23 -21
  473. package/esm2022/statistic/statistic.module.mjs +5 -5
  474. package/esm2022/statistic/statistic.property.mjs +68 -34
  475. package/esm2022/steps/steps.component.mjs +33 -63
  476. package/esm2022/steps/steps.module.mjs +5 -5
  477. package/esm2022/steps/steps.property.mjs +28 -39
  478. package/esm2022/switch/switch.component.mjs +22 -37
  479. package/esm2022/switch/switch.module.mjs +5 -5
  480. package/esm2022/switch/switch.property.mjs +122 -32
  481. package/esm2022/table/table-body.component.mjs +134 -139
  482. package/esm2022/table/table-foot.component.mjs +15 -18
  483. package/esm2022/table/table-head.component.mjs +60 -91
  484. package/esm2022/table/table.component.mjs +192 -222
  485. package/esm2022/table/table.module.mjs +5 -5
  486. package/esm2022/table/table.property.mjs +396 -341
  487. package/esm2022/tabs/tab-content.component.mjs +13 -16
  488. package/esm2022/tabs/tab-link.directive.mjs +7 -7
  489. package/esm2022/tabs/tab.component.mjs +9 -17
  490. package/esm2022/tabs/tabs.component.mjs +83 -135
  491. package/esm2022/tabs/tabs.module.mjs +5 -5
  492. package/esm2022/tabs/tabs.property.mjs +80 -91
  493. package/esm2022/tag/tag.component.mjs +19 -33
  494. package/esm2022/tag/tag.module.mjs +5 -5
  495. package/esm2022/tag/tag.property.mjs +44 -68
  496. package/esm2022/text-retract/text-retract.component.mjs +29 -46
  497. package/esm2022/text-retract/text-retract.module.mjs +5 -5
  498. package/esm2022/text-retract/text-retract.property.mjs +22 -18
  499. package/esm2022/textarea/textarea.component.mjs +49 -79
  500. package/esm2022/textarea/textarea.module.mjs +5 -5
  501. package/esm2022/textarea/textarea.property.mjs +124 -47
  502. package/esm2022/theme/theme.component.mjs +86 -81
  503. package/esm2022/theme/theme.module.mjs +5 -5
  504. package/esm2022/theme/theme.property.mjs +35 -46
  505. package/esm2022/time-ago/time-ago.module.mjs +5 -5
  506. package/esm2022/time-ago/time-ago.pipe.mjs +12 -11
  507. package/esm2022/time-ago/time-ago.property.mjs +2 -2
  508. package/esm2022/time-picker/time-picker-frame.component.mjs +173 -188
  509. package/esm2022/time-picker/time-picker-portal.component.mjs +35 -42
  510. package/esm2022/time-picker/time-picker.component.mjs +139 -170
  511. package/esm2022/time-picker/time-picker.module.mjs +5 -5
  512. package/esm2022/time-picker/time-picker.property.mjs +158 -70
  513. package/esm2022/time-range/time-range.module.mjs +5 -5
  514. package/esm2022/time-range/time-range.pipe.mjs +10 -10
  515. package/esm2022/time-range/time-range.property.mjs +2 -2
  516. package/esm2022/timeline/timeline.component.mjs +14 -38
  517. package/esm2022/timeline/timeline.module.mjs +5 -5
  518. package/esm2022/timeline/timeline.property.mjs +30 -30
  519. package/esm2022/tooltip/tooltip-portal.component.mjs +51 -65
  520. package/esm2022/tooltip/tooltip.directive.mjs +65 -62
  521. package/esm2022/tooltip/tooltip.module.mjs +5 -5
  522. package/esm2022/tooltip/tooltip.property.mjs +53 -47
  523. package/esm2022/transfer/transfer.component.mjs +225 -184
  524. package/esm2022/transfer/transfer.module.mjs +5 -5
  525. package/esm2022/transfer/transfer.property.mjs +84 -76
  526. package/esm2022/tree/tree-node.component.mjs +142 -132
  527. package/esm2022/tree/tree.component.mjs +236 -232
  528. package/esm2022/tree/tree.module.mjs +5 -5
  529. package/esm2022/tree/tree.property.mjs +228 -226
  530. package/esm2022/tree/tree.service.mjs +4 -4
  531. package/esm2022/tree-file/tree-file.component.mjs +34 -43
  532. package/esm2022/tree-file/tree-file.module.mjs +5 -5
  533. package/esm2022/tree-file/tree-file.property.mjs +45 -56
  534. package/esm2022/tree-select/tree-select-portal.component.mjs +45 -78
  535. package/esm2022/tree-select/tree-select.component.mjs +283 -296
  536. package/esm2022/tree-select/tree-select.module.mjs +5 -5
  537. package/esm2022/tree-select/tree-select.property.mjs +203 -125
  538. package/esm2022/typography/typography.component.mjs +13 -10
  539. package/esm2022/typography/typography.module.mjs +5 -5
  540. package/esm2022/typography/typography.property.mjs +12 -11
  541. package/esm2022/upload/upload-portal.component.mjs +54 -57
  542. package/esm2022/upload/upload.component.mjs +79 -98
  543. package/esm2022/upload/upload.module.mjs +5 -5
  544. package/esm2022/upload/upload.property.mjs +73 -68
  545. package/examples/examples.component.d.ts +2 -5
  546. package/fesm2022/ng-nest-ui-affix.mjs +30 -32
  547. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  548. package/fesm2022/ng-nest-ui-alert.mjs +142 -152
  549. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  550. package/fesm2022/ng-nest-ui-anchor.mjs +121 -133
  551. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  552. package/fesm2022/ng-nest-ui-api.mjs +14 -17
  553. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  554. package/fesm2022/ng-nest-ui-auto-complete.mjs +296 -260
  555. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  556. package/fesm2022/ng-nest-ui-avatar.mjs +195 -130
  557. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  558. package/fesm2022/ng-nest-ui-back-top.mjs +95 -103
  559. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  560. package/fesm2022/ng-nest-ui-badge.mjs +161 -96
  561. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  562. package/fesm2022/ng-nest-ui-base-form.mjs +286 -166
  563. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  564. package/fesm2022/ng-nest-ui-button.mjs +376 -175
  565. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  566. package/fesm2022/ng-nest-ui-calendar.mjs +134 -108
  567. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  568. package/fesm2022/ng-nest-ui-card.mjs +67 -36
  569. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  570. package/fesm2022/ng-nest-ui-carousel.mjs +365 -223
  571. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  572. package/fesm2022/ng-nest-ui-cascade.mjs +318 -249
  573. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  574. package/fesm2022/ng-nest-ui-checkbox.mjs +203 -155
  575. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  576. package/fesm2022/ng-nest-ui-collapse.mjs +202 -106
  577. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  578. package/fesm2022/ng-nest-ui-color-picker.mjs +316 -270
  579. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  580. package/fesm2022/ng-nest-ui-color.mjs +73 -54
  581. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  582. package/fesm2022/ng-nest-ui-comment.mjs +44 -108
  583. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  584. package/fesm2022/ng-nest-ui-container.mjs +119 -123
  585. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  586. package/fesm2022/ng-nest-ui-core.mjs +985 -664
  587. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  588. package/fesm2022/ng-nest-ui-crumb.mjs +28 -55
  589. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  590. package/fesm2022/ng-nest-ui-date-picker.mjs +1552 -1671
  591. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  592. package/fesm2022/ng-nest-ui-description.mjs +218 -109
  593. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  594. package/fesm2022/ng-nest-ui-dialog.mjs +325 -334
  595. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  596. package/fesm2022/ng-nest-ui-doc.mjs +14 -15
  597. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  598. package/fesm2022/ng-nest-ui-drag.mjs +20 -39
  599. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  600. package/fesm2022/ng-nest-ui-drawer.mjs +116 -145
  601. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  602. package/fesm2022/ng-nest-ui-dropdown.mjs +223 -238
  603. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  604. package/fesm2022/ng-nest-ui-empty.mjs +49 -46
  605. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  606. package/fesm2022/ng-nest-ui-examples.mjs +14 -15
  607. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  608. package/fesm2022/ng-nest-ui-find.mjs +422 -425
  609. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  610. package/fesm2022/ng-nest-ui-form.mjs +216 -201
  611. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  612. package/fesm2022/ng-nest-ui-highlight.mjs +93 -81
  613. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  614. package/fesm2022/ng-nest-ui-i18n.mjs +5892 -3516
  615. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  616. package/fesm2022/ng-nest-ui-icon.mjs +114 -120
  617. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  618. package/fesm2022/ng-nest-ui-image.mjs +244 -147
  619. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  620. package/fesm2022/ng-nest-ui-inner.mjs +33 -35
  621. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  622. package/fesm2022/ng-nest-ui-input-number.mjs +198 -146
  623. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  624. package/fesm2022/ng-nest-ui-input.mjs +340 -292
  625. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  626. package/fesm2022/ng-nest-ui-keyword.mjs +78 -82
  627. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  628. package/fesm2022/ng-nest-ui-layout.mjs +205 -140
  629. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  630. package/fesm2022/ng-nest-ui-link.mjs +119 -86
  631. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  632. package/fesm2022/ng-nest-ui-list.mjs +376 -400
  633. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  634. package/fesm2022/ng-nest-ui-loading.mjs +94 -97
  635. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  636. package/fesm2022/ng-nest-ui-menu.mjs +131 -167
  637. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  638. package/fesm2022/ng-nest-ui-message-box.mjs +13 -13
  639. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  640. package/fesm2022/ng-nest-ui-message.mjs +17 -17
  641. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  642. package/fesm2022/ng-nest-ui-notification.mjs +18 -18
  643. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  644. package/fesm2022/ng-nest-ui-outlet.mjs +16 -18
  645. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  646. package/fesm2022/ng-nest-ui-page-header.mjs +44 -55
  647. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  648. package/fesm2022/ng-nest-ui-pagination.mjs +173 -236
  649. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  650. package/fesm2022/ng-nest-ui-pattern.mjs +16 -17
  651. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  652. package/fesm2022/ng-nest-ui-popconfirm.mjs +110 -107
  653. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  654. package/fesm2022/ng-nest-ui-popover.mjs +163 -215
  655. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  656. package/fesm2022/ng-nest-ui-portal.mjs +10 -10
  657. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  658. package/fesm2022/ng-nest-ui-progress.mjs +240 -238
  659. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  660. package/fesm2022/ng-nest-ui-radio.mjs +184 -127
  661. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  662. package/fesm2022/ng-nest-ui-rate.mjs +182 -108
  663. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  664. package/fesm2022/ng-nest-ui-resizable.mjs +46 -91
  665. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  666. package/fesm2022/ng-nest-ui-result.mjs +38 -34
  667. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  668. package/fesm2022/ng-nest-ui-ripple.mjs +68 -48
  669. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  670. package/fesm2022/ng-nest-ui-select.mjs +547 -459
  671. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  672. package/fesm2022/ng-nest-ui-skeleton.mjs +44 -52
  673. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  674. package/fesm2022/ng-nest-ui-slider-select.mjs +344 -290
  675. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  676. package/fesm2022/ng-nest-ui-slider.mjs +163 -228
  677. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  678. package/fesm2022/ng-nest-ui-statistic.mjs +102 -68
  679. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  680. package/fesm2022/ng-nest-ui-steps.mjs +61 -102
  681. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  682. package/fesm2022/ng-nest-ui-switch.mjs +145 -69
  683. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  684. package/fesm2022/ng-nest-ui-table.mjs +784 -800
  685. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  686. package/fesm2022/ng-nest-ui-tabs.mjs +185 -259
  687. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  688. package/fesm2022/ng-nest-ui-tag.mjs +63 -101
  689. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  690. package/fesm2022/ng-nest-ui-text-retract.mjs +52 -64
  691. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  692. package/fesm2022/ng-nest-ui-textarea.mjs +173 -126
  693. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  694. package/fesm2022/ng-nest-ui-theme.mjs +123 -129
  695. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  696. package/fesm2022/ng-nest-ui-time-ago.mjs +16 -15
  697. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  698. package/fesm2022/ng-nest-ui-time-picker.mjs +498 -463
  699. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  700. package/fesm2022/ng-nest-ui-time-range.mjs +14 -14
  701. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  702. package/fesm2022/ng-nest-ui-timeline.mjs +44 -68
  703. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  704. package/fesm2022/ng-nest-ui-tooltip.mjs +168 -170
  705. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  706. package/fesm2022/ng-nest-ui-transfer.mjs +311 -262
  707. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  708. package/fesm2022/ng-nest-ui-tree-file.mjs +80 -99
  709. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  710. package/fesm2022/ng-nest-ui-tree-select.mjs +527 -495
  711. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  712. package/fesm2022/ng-nest-ui-tree.mjs +601 -587
  713. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  714. package/fesm2022/ng-nest-ui-typography.mjs +26 -22
  715. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  716. package/fesm2022/ng-nest-ui-upload.mjs +204 -220
  717. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  718. package/fesm2022/ng-nest-ui.mjs +0 -2
  719. package/fesm2022/ng-nest-ui.mjs.map +1 -1
  720. package/find/find.component.d.ts +30 -34
  721. package/find/find.property.d.ts +321 -108
  722. package/form/control.component.d.ts +37 -18
  723. package/form/form.component.d.ts +8 -10
  724. package/form/form.property.d.ts +111 -27
  725. package/highlight/highlight.component.d.ts +10 -17
  726. package/highlight/highlight.property.d.ts +40 -11
  727. package/highlight/highlight.service.d.ts +8 -0
  728. package/highlight/public-api.d.ts +1 -0
  729. package/i18n/i18n.directive.d.ts +6 -9
  730. package/i18n/i18n.property.d.ts +6 -2
  731. package/i18n/i18n.service.d.ts +2 -2
  732. package/i18n/languages/ar_EG.d.ts +56 -0
  733. package/i18n/languages/bg_BG.d.ts +56 -0
  734. package/i18n/languages/ca_ES.d.ts +56 -0
  735. package/i18n/languages/cs_CZ.d.ts +56 -0
  736. package/i18n/languages/da_DK.d.ts +56 -0
  737. package/i18n/languages/de_DE.d.ts +56 -0
  738. package/i18n/languages/el_GR.d.ts +56 -0
  739. package/i18n/languages/en_GB.d.ts +3 -0
  740. package/i18n/languages/en_US.d.ts +3 -0
  741. package/i18n/languages/es_ES.d.ts +56 -0
  742. package/i18n/languages/et_EE.d.ts +56 -0
  743. package/i18n/languages/fa_IR.d.ts +56 -0
  744. package/i18n/languages/fi_FI.d.ts +56 -0
  745. package/i18n/languages/fr_BE.d.ts +60 -4
  746. package/i18n/languages/fr_FR.d.ts +56 -0
  747. package/i18n/languages/he_IL.d.ts +56 -0
  748. package/i18n/languages/hi_IN.d.ts +56 -0
  749. package/i18n/languages/hr_HR.d.ts +56 -0
  750. package/i18n/languages/hu_HU.d.ts +56 -0
  751. package/i18n/languages/hy_AM.d.ts +56 -0
  752. package/i18n/languages/id_ID.d.ts +56 -0
  753. package/i18n/languages/is_IS.d.ts +56 -0
  754. package/i18n/languages/it_IT.d.ts +56 -0
  755. package/i18n/languages/ja_JP.d.ts +56 -0
  756. package/i18n/languages/ka_GE.d.ts +56 -0
  757. package/i18n/languages/kn_IN.d.ts +56 -0
  758. package/i18n/languages/ko_KR.d.ts +56 -0
  759. package/i18n/languages/ku_IQ.d.ts +32 -0
  760. package/i18n/languages/lv_LV.d.ts +56 -0
  761. package/i18n/languages/mn_MN.d.ts +56 -0
  762. package/i18n/languages/ms_MY.d.ts +56 -0
  763. package/i18n/languages/nb_NO.d.ts +56 -0
  764. package/i18n/languages/ne_NP.d.ts +56 -0
  765. package/i18n/languages/nl_BE.d.ts +56 -0
  766. package/i18n/languages/nl_NL.d.ts +56 -0
  767. package/i18n/languages/pl_PL.d.ts +56 -0
  768. package/i18n/languages/pt_BR.d.ts +56 -0
  769. package/i18n/languages/pt_PT.d.ts +56 -0
  770. package/i18n/languages/ro_RO.d.ts +56 -0
  771. package/i18n/languages/ru_RU.d.ts +56 -0
  772. package/i18n/languages/sk_SK.d.ts +56 -1
  773. package/i18n/languages/sl_SI.d.ts +56 -0
  774. package/i18n/languages/sr_RS.d.ts +56 -0
  775. package/i18n/languages/sv_SE.d.ts +56 -0
  776. package/i18n/languages/ta_IN.d.ts +56 -0
  777. package/i18n/languages/th_TH.d.ts +56 -0
  778. package/i18n/languages/tr_TR.d.ts +56 -0
  779. package/i18n/languages/uk_UA.d.ts +56 -0
  780. package/i18n/languages/vi_VN.d.ts +56 -0
  781. package/i18n/languages/zh_CN.d.ts +3 -0
  782. package/i18n/languages/zh_TW.d.ts +3 -0
  783. package/icon/icon.component.d.ts +8 -14
  784. package/icon/icon.property.d.ts +31 -13
  785. package/icon/icon.service.d.ts +1 -1
  786. package/image/image-group.component.d.ts +1 -3
  787. package/image/image-preview.component.d.ts +11 -13
  788. package/image/image.component.d.ts +10 -11
  789. package/image/image.property.d.ts +117 -16
  790. package/index.d.ts +0 -2
  791. package/inner/inner.component.d.ts +3 -10
  792. package/inner/inner.property.d.ts +8 -4
  793. package/input/input-group.component.d.ts +0 -2
  794. package/input/input.component.d.ts +32 -30
  795. package/input/input.property.d.ts +347 -65
  796. package/input-number/input-number.component.d.ts +14 -19
  797. package/input-number/input-number.property.d.ts +292 -26
  798. package/keyword/keyword.directive.d.ts +4 -12
  799. package/keyword/keyword.property.d.ts +11 -7
  800. package/layout/col.component.d.ts +8 -11
  801. package/layout/layout.property.d.ts +79 -18
  802. package/layout/row.component.d.ts +7 -8
  803. package/link/link.component.d.ts +7 -13
  804. package/link/link.property.d.ts +64 -11
  805. package/list/list-drop-group.directive.d.ts +3 -5
  806. package/list/list-option.component.d.ts +7 -9
  807. package/list/list.component.d.ts +35 -30
  808. package/list/list.property.d.ts +126 -61
  809. package/loading/loading.component.d.ts +12 -12
  810. package/loading/loading.property.d.ts +20 -11
  811. package/menu/menu-node.component.d.ts +11 -8
  812. package/menu/menu.component.d.ts +18 -19
  813. package/menu/menu.property.d.ts +23 -28
  814. package/message/message.property.d.ts +1 -1
  815. package/notification/notification.property.d.ts +1 -1
  816. package/outlet/outlet.directive.d.ts +4 -4
  817. package/outlet/outlet.property.d.ts +1 -1
  818. package/package.json +117 -123
  819. package/page-header/page-header.component.d.ts +4 -8
  820. package/page-header/page-header.property.d.ts +11 -8
  821. package/pagination/pagination.component.d.ts +15 -22
  822. package/pagination/pagination.property.d.ts +34 -66
  823. package/pattern/pattern.component.d.ts +2 -5
  824. package/pattern/pattern.property.d.ts +1 -1
  825. package/popconfirm/popconfirm.component.d.ts +12 -14
  826. package/popconfirm/popconfirm.property.d.ts +32 -19
  827. package/popover/popover-portal.component.d.ts +16 -33
  828. package/popover/popover.directive.d.ts +6 -12
  829. package/popover/popover.property.d.ts +31 -22
  830. package/portal/portal.property.d.ts +4 -4
  831. package/portal/portal.service.d.ts +2 -2
  832. package/progress/progress.component.d.ts +25 -30
  833. package/progress/progress.property.d.ts +29 -20
  834. package/radio/radio.component.d.ts +14 -15
  835. package/radio/radio.property.d.ts +271 -31
  836. package/rate/rate.component.d.ts +14 -17
  837. package/rate/rate.property.d.ts +259 -12
  838. package/resizable/resizable.directive.d.ts +5 -5
  839. package/resizable/resizable.property.d.ts +14 -14
  840. package/result/result.component.d.ts +5 -7
  841. package/result/result.property.d.ts +11 -7
  842. package/ripple/ripple.directive.d.ts +5 -4
  843. package/ripple/ripple.property.d.ts +14 -5
  844. package/select/select-portal.component.d.ts +39 -43
  845. package/select/select.component.d.ts +53 -56
  846. package/select/select.property.d.ts +317 -37
  847. package/skeleton/skeleton.component.d.ts +4 -8
  848. package/skeleton/skeleton.property.d.ts +17 -8
  849. package/slider/slider.component.d.ts +34 -31
  850. package/slider/slider.property.d.ts +26 -22
  851. package/slider-select/slider-select.component.d.ts +38 -38
  852. package/slider-select/slider-select.property.d.ts +302 -28
  853. package/statistic/countdown.component.d.ts +2 -5
  854. package/statistic/statistic.component.d.ts +3 -8
  855. package/statistic/statistic.property.d.ts +44 -13
  856. package/steps/steps.component.d.ts +6 -16
  857. package/steps/steps.property.d.ts +15 -10
  858. package/style/core/index.css +0 -38
  859. package/style/core/index.css.map +1 -1
  860. package/style/core/var.scss +0 -4
  861. package/style/mixins/compatibility.scss +0 -1
  862. package/style/mixins/form.scss +8 -2
  863. package/style/params/index.scss +0 -1
  864. package/style/params/primary.scss +7 -28
  865. package/switch/switch.component.d.ts +9 -10
  866. package/switch/switch.property.d.ts +265 -16
  867. package/table/table-body.component.d.ts +21 -20
  868. package/table/table-foot.component.d.ts +7 -5
  869. package/table/table-head.component.d.ts +17 -19
  870. package/table/table.component.d.ts +62 -50
  871. package/table/table.property.d.ts +180 -178
  872. package/tabs/tab-content.component.d.ts +6 -8
  873. package/tabs/tab.component.d.ts +3 -5
  874. package/tabs/tabs.component.d.ts +17 -24
  875. package/tabs/tabs.property.d.ts +28 -24
  876. package/tag/tag.component.d.ts +7 -8
  877. package/tag/tag.property.d.ts +19 -21
  878. package/text-retract/text-retract.component.d.ts +4 -14
  879. package/text-retract/text-retract.property.d.ts +9 -5
  880. package/textarea/textarea.component.d.ts +17 -20
  881. package/textarea/textarea.property.d.ts +266 -30
  882. package/theme/theme.component.d.ts +24 -13
  883. package/theme/theme.property.d.ts +67 -16
  884. package/time-ago/time-ago.pipe.d.ts +7 -3
  885. package/time-ago/time-ago.property.d.ts +1 -1
  886. package/time-picker/time-picker-frame.component.d.ts +52 -39
  887. package/time-picker/time-picker-portal.component.d.ts +29 -29
  888. package/time-picker/time-picker.component.d.ts +29 -30
  889. package/time-picker/time-picker.property.d.ts +314 -23
  890. package/time-range/time-range.property.d.ts +1 -1
  891. package/timeline/timeline.component.d.ts +5 -13
  892. package/timeline/timeline.property.d.ts +12 -8
  893. package/tooltip/tooltip-portal.component.d.ts +23 -29
  894. package/tooltip/tooltip.directive.d.ts +10 -9
  895. package/tooltip/tooltip.property.d.ts +18 -14
  896. package/transfer/transfer.component.d.ts +23 -20
  897. package/transfer/transfer.property.d.ts +81 -25
  898. package/tree/tree-node.component.d.ts +21 -21
  899. package/tree/tree.component.d.ts +29 -28
  900. package/tree/tree.property.d.ts +129 -79
  901. package/tree-file/tree-file.component.d.ts +7 -9
  902. package/tree-file/tree-file.property.d.ts +40 -16
  903. package/tree-select/tree-select-portal.component.d.ts +38 -49
  904. package/tree-select/tree-select.component.d.ts +50 -53
  905. package/tree-select/tree-select.property.d.ts +328 -39
  906. package/typography/typography.component.d.ts +1 -1
  907. package/typography/typography.property.d.ts +3 -3
  908. package/upload/upload-portal.component.d.ts +14 -14
  909. package/upload/upload.component.d.ts +18 -17
  910. package/upload/upload.property.d.ts +73 -24
  911. package/border/border.component.d.ts +0 -11
  912. package/border/border.module.d.ts +0 -7
  913. package/border/border.property.d.ts +0 -6
  914. package/border/index.d.ts +0 -5
  915. package/border/public-api.d.ts +0 -3
  916. package/esm2022/border/border.component.mjs +0 -21
  917. package/esm2022/border/border.module.mjs +0 -16
  918. package/esm2022/border/border.property.mjs +0 -7
  919. package/esm2022/border/ng-nest-ui-border.mjs +0 -5
  920. package/esm2022/border/public-api.mjs +0 -4
  921. package/fesm2022/ng-nest-ui-border.mjs +0 -47
  922. package/fesm2022/ng-nest-ui-border.mjs.map +0 -1
  923. package/style/params/colors.scss +0 -38
@@ -2,14 +2,10 @@ import { Injectable } from '@angular/core';
2
2
  import { XIsString } from '../interfaces';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/cdk/platform";
5
- // @dynamic
6
5
  export class XStorageService {
7
6
  constructor(platform) {
8
7
  this.platform = platform;
9
8
  }
10
- /**
11
- * 获取本地值
12
- */
13
9
  getLocal(key) {
14
10
  if (this.platform.isBrowser) {
15
11
  let str = localStorage.getItem(key);
@@ -24,9 +20,6 @@ export class XStorageService {
24
20
  return null;
25
21
  }
26
22
  }
27
- /**
28
- * 设置本地值
29
- */
30
23
  setLocal(key, value) {
31
24
  if (this.platform.isBrowser) {
32
25
  if (XIsString(value)) {
@@ -37,9 +30,6 @@ export class XStorageService {
37
30
  }
38
31
  }
39
32
  }
40
- /**
41
- * 获取当前会话的值
42
- */
43
33
  getSession(key) {
44
34
  if (this.platform.isBrowser) {
45
35
  let str = localStorage.getItem(key);
@@ -54,44 +44,32 @@ export class XStorageService {
54
44
  return null;
55
45
  }
56
46
  }
57
- /**
58
- * 设置当前会话值
59
- */
60
47
  setSession(key, value) {
61
48
  if (this.platform.isBrowser) {
62
49
  sessionStorage.setItem(key, JSON.stringify(value));
63
50
  }
64
51
  }
65
- /**
66
- * 移除本地值
67
- */
68
52
  removeLocal(key) {
69
53
  if (this.platform.isBrowser) {
70
54
  localStorage.removeItem(key);
71
55
  }
72
56
  }
73
- /**
74
- * 移除当前会话
75
- */
76
57
  removeSession(key) {
77
58
  if (this.platform.isBrowser) {
78
59
  sessionStorage.removeItem(key);
79
60
  }
80
61
  }
81
- /**
82
- * 生成guid
83
- */
84
62
  guid() {
85
63
  let S4 = () => {
86
64
  return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
87
65
  };
88
66
  return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();
89
67
  }
90
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XStorageService, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XStorageService, providedIn: 'root' }); }
68
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XStorageService, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
69
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XStorageService, providedIn: 'root' }); }
92
70
  }
93
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XStorageService, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XStorageService, decorators: [{
94
72
  type: Injectable,
95
73
  args: [{ providedIn: 'root' }]
96
74
  }], ctorParameters: () => [{ type: i1.Platform }] });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY29yZS9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFFMUMsV0FBVztBQUVYLE1BQU0sT0FBTyxlQUFlO0lBQzFCLFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFBRyxDQUFDO0lBRTFDOztPQUVHO0lBQ0gsUUFBUSxDQUFDLEdBQVc7UUFDbEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRTtZQUMzQixJQUFJLEdBQUcsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLElBQUk7Z0JBQ0YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO2FBQ2hFO1lBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsT0FBTyxHQUFHLENBQUM7YUFDWjtTQUNGO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsUUFBUSxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQzlCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7WUFDM0IsSUFBSSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3BCLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ2xDO2lCQUFNO2dCQUNMLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUNsRDtTQUNGO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVSxDQUFDLEdBQVc7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRTtZQUMzQixJQUFJLEdBQUcsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLElBQUk7Z0JBQ0YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDO2FBQ2xFO1lBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsT0FBTyxHQUFHLENBQUM7YUFDWjtTQUNGO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVSxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQ2hDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7WUFDM0IsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ3BEO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVyxDQUFDLEdBQVc7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRTtZQUMzQixZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsYUFBYSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRTtZQUMzQixjQUFjLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSTtRQUNGLElBQUksRUFBRSxHQUFHLEdBQUcsRUFBRTtZQUNaLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDO1FBQ0YsT0FBTyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUM7SUFDdkYsQ0FBQztrSUFuRlUsZUFBZTtzSUFBZixlQUFlLGNBREYsTUFBTTs7NEZBQ25CLGVBQWU7a0JBRDNCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhdGZvcm0gfSBmcm9tICdAYW5ndWxhci9jZGsvcGxhdGZvcm0nO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhJc1N0cmluZyB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFhTdG9yYWdlU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwbGF0Zm9ybTogUGxhdGZvcm0pIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIOiOt+WPluacrOWcsOWAvFxyXG4gICAqL1xyXG4gIGdldExvY2FsKGtleTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcclxuICAgICAgbGV0IHN0ciA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KSB8fCAnbnVsbCcpIHx8IG51bGw7XHJcbiAgICAgIH0gY2F0Y2ggKF9lKSB7XHJcbiAgICAgICAgcmV0dXJuIHN0cjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDorr7nva7mnKzlnLDlgLxcclxuICAgKi9cclxuICBzZXRMb2NhbChrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMucGxhdGZvcm0uaXNCcm93c2VyKSB7XHJcbiAgICAgIGlmIChYSXNTdHJpbmcodmFsdWUpKSB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCB2YWx1ZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oa2V5LCBKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDojrflj5blvZPliY3kvJror53nmoTlgLxcclxuICAgKi9cclxuICBnZXRTZXNzaW9uKGtleTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcclxuICAgICAgbGV0IHN0ciA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShrZXkpIHx8ICdudWxsJykgfHwgbnVsbDtcclxuICAgICAgfSBjYXRjaCAoX2UpIHtcclxuICAgICAgICByZXR1cm4gc3RyO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOiuvue9ruW9k+WJjeS8muivneWAvFxyXG4gICAqL1xyXG4gIHNldFNlc3Npb24oa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzQnJvd3Nlcikge1xyXG4gICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkodmFsdWUpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOenu+mZpOacrOWcsOWAvFxyXG4gICAqL1xyXG4gIHJlbW92ZUxvY2FsKGtleTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcclxuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIOenu+mZpOW9k+WJjeS8muivnVxyXG4gICAqL1xyXG4gIHJlbW92ZVNlc3Npb24oa2V5OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzQnJvd3Nlcikge1xyXG4gICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiDnlJ/miJBndWlkXHJcbiAgICovXHJcbiAgZ3VpZCgpIHtcclxuICAgIGxldCBTNCA9ICgpID0+IHtcclxuICAgICAgcmV0dXJuICgoKDEgKyBNYXRoLnJhbmRvbSgpKSAqIDB4MTAwMDApIHwgMCkudG9TdHJpbmcoMTYpLnN1YnN0cmluZygxKTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gUzQoKSArIFM0KCkgKyAnLScgKyBTNCgpICsgJy0nICsgUzQoKSArICctJyArIFM0KCkgKyAnLScgKyBTNCgpICsgUzQoKSArIFM0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY29yZS9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFHMUMsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBb0IsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUFHLENBQUM7SUFFMUMsUUFBUSxDQUFDLEdBQVc7UUFDbEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQztZQUNqRSxDQUFDO1lBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztnQkFDWixPQUFPLEdBQUcsQ0FBQztZQUNiLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDOUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3JCLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ25DLENBQUM7aUJBQU0sQ0FBQztnQkFDTixZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDbkQsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQztZQUNuRSxDQUFDO1lBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztnQkFDWixPQUFPLEdBQUcsQ0FBQztZQUNiLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDaEMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLGNBQWMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFXO1FBQ3JCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM1QixZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLGNBQWMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxFQUFFLEdBQUcsR0FBRyxFQUFFO1lBQ1osT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6RSxDQUFDLENBQUM7UUFDRixPQUFPLEVBQUUsRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxHQUFHLEdBQUcsRUFBRSxFQUFFLEdBQUcsR0FBRyxHQUFHLEVBQUUsRUFBRSxHQUFHLEdBQUcsR0FBRyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUN2RixDQUFDO2lJQTlEVSxlQUFlO3FJQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWElzU3RyaW5nIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgWFN0b3JhZ2VTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSkge31cclxuXHJcbiAgZ2V0TG9jYWwoa2V5OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzQnJvd3Nlcikge1xyXG4gICAgICBsZXQgc3RyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXkpIHx8ICdudWxsJykgfHwgbnVsbDtcclxuICAgICAgfSBjYXRjaCAoX2UpIHtcclxuICAgICAgICByZXR1cm4gc3RyO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldExvY2FsKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcclxuICAgICAgaWYgKFhJc1N0cmluZyh2YWx1ZSkpIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFNlc3Npb24oa2V5OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzQnJvd3Nlcikge1xyXG4gICAgICBsZXQgc3RyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGtleSkgfHwgJ251bGwnKSB8fCBudWxsO1xyXG4gICAgICB9IGNhdGNoIChfZSkge1xyXG4gICAgICAgIHJldHVybiBzdHI7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0U2Vzc2lvbihrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMucGxhdGZvcm0uaXNCcm93c2VyKSB7XHJcbiAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oa2V5LCBKU09OLnN0cmluZ2lmeSh2YWx1ZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlTG9jYWwoa2V5OiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzQnJvd3Nlcikge1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlU2Vzc2lvbihrZXk6IHN0cmluZykge1xyXG4gICAgaWYgKHRoaXMucGxhdGZvcm0uaXNCcm93c2VyKSB7XHJcbiAgICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGd1aWQoKSB7XHJcbiAgICBsZXQgUzQgPSAoKSA9PiB7XHJcbiAgICAgIHJldHVybiAoKCgxICsgTWF0aC5yYW5kb20oKSkgKiAweDEwMDAwKSB8IDApLnRvU3RyaW5nKDE2KS5zdWJzdHJpbmcoMSk7XHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIFM0KCkgKyBTNCgpICsgJy0nICsgUzQoKSArICctJyArIFM0KCkgKyAnLScgKyBTNCgpICsgJy0nICsgUzQoKSArIFM0KCkgKyBTNCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,9 +1,11 @@
1
1
  import { InjectionToken } from '@angular/core';
2
- export const X_THEME = new InjectionToken('x-theme');
2
+ export const X_THEME = new InjectionToken('xTheme');
3
3
  export const X_THEME_PREFIX = '--x-';
4
4
  export const X_THEME_MERGE = '#ffffff';
5
5
  export const X_THEME_BLACK_MERGE = '#cccccc';
6
- export 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];
6
+ export const X_THEME_AMOUNTS = [
7
+ 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
8
+ ];
7
9
  export const X_THEME_BACKGROUNDS = [-0.2, -0.3, -0.4];
8
10
  export const X_THEME_TEXTS = [
9
11
  [-0.5, 0],
@@ -26,20 +28,62 @@ export const X_THEME_EXCHANGES = [
26
28
  [0.8, -0.4],
27
29
  [0.9, -0.2]
28
30
  ];
31
+ export const X_THEME_LIGHT_COLORS = {
32
+ text: '#333333',
33
+ border: '#efefef',
34
+ background: '#ffffff'
35
+ };
36
+ export const X_THEME_DARK_COLORS = {
37
+ text: '#dddddd',
38
+ border: '#252022',
39
+ background: '#0f0f11'
40
+ };
29
41
  export const X_THEME_COLORS = {
30
- primary: '#1976d2',
42
+ primary: '#3B82F6',
31
43
  success: '#67c23a',
32
44
  warning: '#e6a23c',
33
45
  danger: '#f56c6c',
34
46
  info: '#909399',
35
- text: '#333333',
36
- border: '#dddddd',
37
- background: '#ffffff'
47
+ ...X_THEME_LIGHT_COLORS
38
48
  };
39
- export const X_THEME_DARK_COLORS = {
40
- text: '#dddddd',
41
- border: '#424242',
42
- background: '#1e1e1f'
49
+ export const X_THEME_VARS = {
50
+ black: '#000000',
51
+ white: '#ffffff',
52
+ fontSize: '0.875rem',
53
+ fontSizeMini: '0.75rem',
54
+ fontSizeSmall: '0.875rem',
55
+ fontSizeMedium: '1rem',
56
+ fontSizeLarge: '1.25rem',
57
+ fontSizeBig: '1.5rem',
58
+ fontVariant: 'tabular-nums',
59
+ fontFamily: '-appleSystem, SF UI Text, Arial, PingFang SC, Hiragino Sans GB, Microsoft YaHei, WenQuanYi Micro Hei, sansSerif',
60
+ fontCodeFamily: 'SFMono-Regular, Consolas, Liberation Mono, Menlo, Courier, monospace',
61
+ lineHeight: '1.75rem',
62
+ heightBig: '2.75rem',
63
+ heightLarge: '2.5rem',
64
+ heightMedium: '2.25rem',
65
+ heightSmall: '2rem',
66
+ heightMini: '1.75rem',
67
+ paddingBig: '1.5rem',
68
+ paddingLarge: '1.25rem',
69
+ paddingMedium: '1rem',
70
+ paddingSmall: '0.75rem',
71
+ paddingMini: '0.5rem',
72
+ borderStyle: 'solid',
73
+ borderRadius: '0.75rem',
74
+ borderSmallRadius: '0.5rem',
75
+ borderWidth: '0.0625rem',
76
+ borderDeepWidth: '0.125rem',
77
+ boxShadow: '0 0.0625rem 0.25rem 0.0625rem rgba(0, 0, 0, 0.15)',
78
+ boxShadowHover: '0 0.0625rem 0.25rem 0.0625rem rgba(0, 0, 0, 0.3)',
79
+ boxShadowTop: '0 -0.0625rem 0.25rem rgba(0, 0, 0, 0.15)',
80
+ boxShadowRight: '0.0625rem 0 0.25rem rgba(0, 0, 0, 0.15)',
81
+ boxShadowBottom: '0 0.0625rem 0.25rem rgba(0, 0, 0, 0.15)',
82
+ boxShadowLeft: '-0.0625rem 0 0.25rem rgba(0, 0, 0, 0.15)',
83
+ animationDurationSlow: '0.3s',
84
+ animationDurationBase: '0.2s',
85
+ animationDurationFast: '0.1s'
43
86
  };
44
87
  export const X_THEME_COLOR_KEYS = Object.keys(X_THEME_COLORS);
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jb3JlL3RoZW1lL3RoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFzQi9DLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsQ0FBUyxTQUFTLENBQUMsQ0FBQztBQUU3RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFFdkMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRXRJLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUV0RCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDVCxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztJQUNYLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNULENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHO0lBQy9CLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDWixDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUNYLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztJQUNWLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNSLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDO0lBQ1gsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7SUFDWCxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDUixDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQztJQUNYLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDO0lBQ1gsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7Q0FDWixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFpQjtJQUMxQyxPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsU0FBUztJQUNsQixNQUFNLEVBQUUsU0FBUztJQUNqQixJQUFJLEVBQUUsU0FBUztJQUNmLElBQUksRUFBRSxTQUFTO0lBQ2YsTUFBTSxFQUFFLFNBQVM7SUFDakIsVUFBVSxFQUFFLFNBQVM7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFpQjtJQUMvQyxJQUFJLEVBQUUsU0FBUztJQUNmLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLFVBQVUsRUFBRSxTQUFTO0NBQ3RCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgWFRoZW1lIHtcclxuICBjb2xvcnM/OiBYQ29sb3JzVGhlbWU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgWENvbG9yc1RoZW1lIHtcclxuICBwcmltYXJ5Pzogc3RyaW5nO1xyXG4gIHN1Y2Nlc3M/OiBzdHJpbmc7XHJcbiAgd2FybmluZz86IHN0cmluZztcclxuICBkYW5nZXI/OiBzdHJpbmc7XHJcbiAgaW5mbz86IHN0cmluZztcclxuICB0ZXh0Pzogc3RyaW5nO1xyXG4gIGJvcmRlcj86IHN0cmluZztcclxuICBiYWNrZ3JvdW5kPzogc3RyaW5nO1xyXG4gIFtwcm9wZXJ0eTogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBYVGhlbWVLZXkgPSBrZXlvZiBYVGhlbWU7XHJcblxyXG5leHBvcnQgdHlwZSBYQ29sb3JzID0gJ3ByaW1hcnknIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnaW5mbyc7XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxYVGhlbWU+KCd4LXRoZW1lJyk7XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9QUkVGSVggPSAnLS14LSc7XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9NRVJHRSA9ICcjZmZmZmZmJztcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX0JMQUNLX01FUkdFID0gJyNjY2NjY2MnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfQU1PVU5UUyA9IFswLCAtMC4xLCAtMC4yLCAtMC4zLCAtMC40LCAtMC41LCAtMC42LCAtMC43LCAtMC44LCAtMC45LCAwLjEsIDAuMiwgMC4zLCAwLjQsIDAuNSwgMC42LCAwLjcsIDAuOCwgMC45XTtcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX0JBQ0tHUk9VTkRTID0gWy0wLjIsIC0wLjMsIC0wLjRdO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfVEVYVFMgPSBbXHJcbiAgWy0wLjUsIDBdLFxyXG4gIFstMC42LCAwLjJdLFxyXG4gIFstMC43LCAwLjRdXHJcbl07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9CT1JERVJTID0gW1xyXG4gIFstMC44LCAwXSxcclxuICBbLTAuOSwgMC4yXVxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfRVhDSEFOR0VTID0gW1xyXG4gIFstMC4xLCAtMC4xXSxcclxuICBbMC4xLCAtMC4xXSxcclxuICBbMC4yLCAwLjJdLFxyXG4gIFswLjMsIDBdLFxyXG4gIFswLjQsIC0wLjRdLFxyXG4gIFswLjUsIC0wLjJdLFxyXG4gIFswLjYsIDBdLFxyXG4gIFswLjcsIC0wLjRdLFxyXG4gIFswLjgsIC0wLjRdLFxyXG4gIFswLjksIC0wLjJdXHJcbl07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9DT0xPUlM6IFhDb2xvcnNUaGVtZSA9IHtcclxuICBwcmltYXJ5OiAnIzE5NzZkMicsXHJcbiAgc3VjY2VzczogJyM2N2MyM2EnLFxyXG4gIHdhcm5pbmc6ICcjZTZhMjNjJyxcclxuICBkYW5nZXI6ICcjZjU2YzZjJyxcclxuICBpbmZvOiAnIzkwOTM5OScsXHJcbiAgdGV4dDogJyMzMzMzMzMnLFxyXG4gIGJvcmRlcjogJyNkZGRkZGQnLFxyXG4gIGJhY2tncm91bmQ6ICcjZmZmZmZmJ1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfREFSS19DT0xPUlM6IFhDb2xvcnNUaGVtZSA9IHtcclxuICB0ZXh0OiAnI2RkZGRkZCcsXHJcbiAgYm9yZGVyOiAnIzQyNDI0MicsXHJcbiAgYmFja2dyb3VuZDogJyMxZTFlMWYnXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9DT0xPUl9LRVlTID0gT2JqZWN0LmtleXMoWF9USEVNRV9DT0xPUlMpO1xyXG4iXX0=
88
+ export const X_THEME_VARS_KEYS = Object.keys(X_THEME_VARS);
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jb3JlL3RoZW1lL3RoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFnRS9DLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsQ0FBUyxRQUFRLENBQUMsQ0FBQztBQUU1RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUM7QUFFdkMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRztJQUM3QixDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHO0NBQ3JHLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUM7SUFDWCxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQztDQUNaLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFl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QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFhUaGVtZSB7XHJcbiAgY29sb3JzPzogWENvbG9yc1RoZW1lO1xyXG4gIHZhcnM/OiBYVmFyc1RoZW1lO1xyXG4gIGRhcms/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFhDb2xvcnNUaGVtZSB7XHJcbiAgcHJpbWFyeT86IHN0cmluZztcclxuICBzdWNjZXNzPzogc3RyaW5nO1xyXG4gIHdhcm5pbmc/OiBzdHJpbmc7XHJcbiAgZGFuZ2VyPzogc3RyaW5nO1xyXG4gIGluZm8/OiBzdHJpbmc7XHJcbiAgdGV4dD86IHN0cmluZztcclxuICBib3JkZXI/OiBzdHJpbmc7XHJcbiAgYmFja2dyb3VuZD86IHN0cmluZztcclxuICBbcHJvcGVydHk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBYVmFyc1RoZW1lIHtcclxuICBibGFjaz86IHN0cmluZztcclxuICB3aGl0ZT86IHN0cmluZztcclxuICBmb250U2l6ZT86IHN0cmluZztcclxuICBmb250U2l6ZU1pbmk/OiBzdHJpbmc7XHJcbiAgZm9udFNpemVTbWFsbD86IHN0cmluZztcclxuICBmb250U2l6ZU1lZGl1bT86IHN0cmluZztcclxuICBmb250U2l6ZUxhcmdlPzogc3RyaW5nO1xyXG4gIGZvbnRTaXplQmlnPzogc3RyaW5nO1xyXG4gIGZvbnRWYXJpYW50Pzogc3RyaW5nO1xyXG4gIGZvbnRGYW1pbHk/OiBzdHJpbmc7XHJcbiAgZm9udENvZGVGYW1pbHk/OiBzdHJpbmc7XHJcbiAgbGluZUhlaWdodD86IHN0cmluZztcclxuICBoZWlnaHRCaWc/OiBzdHJpbmc7XHJcbiAgaGVpZ2h0TGFyZ2U/OiBzdHJpbmc7XHJcbiAgaGVpZ2h0TWVkaXVtPzogc3RyaW5nO1xyXG4gIGhlaWdodFNtYWxsPzogc3RyaW5nO1xyXG4gIGhlaWdodE1pbmk/OiBzdHJpbmc7XHJcbiAgcGFkZGluZ0JpZz86IHN0cmluZztcclxuICBwYWRkaW5nTGFyZ2U/OiBzdHJpbmc7XHJcbiAgcGFkZGluZ01lZGl1bT86IHN0cmluZztcclxuICBwYWRkaW5nU21hbGw/OiBzdHJpbmc7XHJcbiAgcGFkZGluZ01pbmk/OiBzdHJpbmc7XHJcbiAgYm9yZGVyU3R5bGU/OiBzdHJpbmc7XHJcbiAgYm9yZGVyUmFkaXVzPzogc3RyaW5nO1xyXG4gIGJvcmRlclNtYWxsUmFkaXVzPzogc3RyaW5nO1xyXG4gIGJvcmRlcldpZHRoPzogc3RyaW5nO1xyXG4gIGJvcmRlckRlZXBXaWR0aD86IHN0cmluZztcclxuICBib3hTaGFkb3c/OiBzdHJpbmc7XHJcbiAgYm94U2hhZG93SG92ZXI/OiBzdHJpbmc7XHJcbiAgYm94U2hhZG93VG9wPzogc3RyaW5nO1xyXG4gIGJveFNoYWRvd1JpZ2h0Pzogc3RyaW5nO1xyXG4gIGJveFNoYWRvd0JvdHRvbT86IHN0cmluZztcclxuICBib3hTaGFkb3dMZWZ0Pzogc3RyaW5nO1xyXG4gIGFuaW1hdGlvbkR1cmF0aW9uU2xvdz86IHN0cmluZztcclxuICBhbmltYXRpb25EdXJhdGlvbkJhc2U/OiBzdHJpbmc7XHJcbiAgYW5pbWF0aW9uRHVyYXRpb25GYXN0Pzogc3RyaW5nO1xyXG4gIFtwcm9wZXJ0eTogc3RyaW5nXTogYW55O1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBYVGhlbWVLZXkgPSBrZXlvZiBYVGhlbWU7XHJcblxyXG5leHBvcnQgdHlwZSBYQ29sb3JzID0gJ3ByaW1hcnknIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgfCAnaW5mbyc7XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxYVGhlbWU+KCd4VGhlbWUnKTtcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX1BSRUZJWCA9ICctLXgtJztcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX01FUkdFID0gJyNmZmZmZmYnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfQkxBQ0tfTUVSR0UgPSAnI2NjY2NjYyc7XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9BTU9VTlRTID0gW1xyXG4gIDAsIC0wLjEsIC0wLjIsIC0wLjMsIC0wLjQsIC0wLjUsIC0wLjYsIC0wLjcsIC0wLjgsIC0wLjksIDAuMSwgMC4yLCAwLjMsIDAuNCwgMC41LCAwLjYsIDAuNywgMC44LCAwLjlcclxuXTtcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX0JBQ0tHUk9VTkRTID0gWy0wLjIsIC0wLjMsIC0wLjRdO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfVEVYVFMgPSBbXHJcbiAgWy0wLjUsIDBdLFxyXG4gIFstMC42LCAwLjJdLFxyXG4gIFstMC43LCAwLjRdXHJcbl07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9CT1JERVJTID0gW1xyXG4gIFstMC44LCAwXSxcclxuICBbLTAuOSwgMC4yXVxyXG5dO1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfRVhDSEFOR0VTID0gW1xyXG4gIFstMC4xLCAtMC4xXSxcclxuICBbMC4xLCAtMC4xXSxcclxuICBbMC4yLCAwLjJdLFxyXG4gIFswLjMsIDBdLFxyXG4gIFswLjQsIC0wLjRdLFxyXG4gIFswLjUsIC0wLjJdLFxyXG4gIFswLjYsIDBdLFxyXG4gIFswLjcsIC0wLjRdLFxyXG4gIFswLjgsIC0wLjRdLFxyXG4gIFswLjksIC0wLjJdXHJcbl07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9MSUdIVF9DT0xPUlM6IFhDb2xvcnNUaGVtZSA9IHtcclxuICB0ZXh0OiAnIzMzMzMzMycsXHJcbiAgYm9yZGVyOiAnI2VmZWZlZicsXHJcbiAgYmFja2dyb3VuZDogJyNmZmZmZmYnXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgWF9USEVNRV9EQVJLX0NPTE9SUzogWENvbG9yc1RoZW1lID0ge1xyXG4gIHRleHQ6ICcjZGRkZGRkJyxcclxuICBib3JkZXI6ICcjMjUyMDIyJyxcclxuICBiYWNrZ3JvdW5kOiAnIzBmMGYxMSdcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBYX1RIRU1FX0NPTE9SUzogWENvbG9yc1RoZW1lID0ge1xyXG4gIHByaW1hcnk6ICcjM0I4MkY2JyxcclxuICBzdWNjZXNzOiAnIzY3YzIzYScsXHJcbiAgd2FybmluZzogJyNlNmEyM2MnLFxyXG4gIGRhbmdlcjogJyNmNTZjNmMnLFxyXG4gIGluZm86ICcjOTA5Mzk5JyxcclxuICAuLi5YX1RIRU1FX0xJR0hUX0NPTE9SU1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfVkFSUzogWFZhcnNUaGVtZSA9IHtcclxuICBibGFjazogJyMwMDAwMDAnLFxyXG4gIHdoaXRlOiAnI2ZmZmZmZicsXHJcbiAgZm9udFNpemU6ICcwLjg3NXJlbScsXHJcbiAgZm9udFNpemVNaW5pOiAnMC43NXJlbScsXHJcbiAgZm9udFNpemVTbWFsbDogJzAuODc1cmVtJyxcclxuICBmb250U2l6ZU1lZGl1bTogJzFyZW0nLFxyXG4gIGZvbnRTaXplTGFyZ2U6ICcxLjI1cmVtJyxcclxuICBmb250U2l6ZUJpZzogJzEuNXJlbScsXHJcbiAgZm9udFZhcmlhbnQ6ICd0YWJ1bGFyLW51bXMnLFxyXG4gIGZvbnRGYW1pbHk6XHJcbiAgICAnLWFwcGxlU3lzdGVtLCBTRiBVSSBUZXh0LCBBcmlhbCwgUGluZ0ZhbmcgU0MsIEhpcmFnaW5vIFNhbnMgR0IsIE1pY3Jvc29mdCBZYUhlaSwgV2VuUXVhbllpIE1pY3JvIEhlaSwgc2Fuc1NlcmlmJyxcclxuICBmb250Q29kZUZhbWlseTogJ1NGTW9uby1SZWd1bGFyLCBDb25zb2xhcywgTGliZXJhdGlvbiBNb25vLCBNZW5sbywgQ291cmllciwgbW9ub3NwYWNlJyxcclxuICBsaW5lSGVpZ2h0OiAnMS43NXJlbScsXHJcbiAgaGVpZ2h0QmlnOiAnMi43NXJlbScsXHJcbiAgaGVpZ2h0TGFyZ2U6ICcyLjVyZW0nLFxyXG4gIGhlaWdodE1lZGl1bTogJzIuMjVyZW0nLFxyXG4gIGhlaWdodFNtYWxsOiAnMnJlbScsXHJcbiAgaGVpZ2h0TWluaTogJzEuNzVyZW0nLFxyXG4gIHBhZGRpbmdCaWc6ICcxLjVyZW0nLFxyXG4gIHBhZGRpbmdMYXJnZTogJzEuMjVyZW0nLFxyXG4gIHBhZGRpbmdNZWRpdW06ICcxcmVtJyxcclxuICBwYWRkaW5nU21hbGw6ICcwLjc1cmVtJyxcclxuICBwYWRkaW5nTWluaTogJzAuNXJlbScsXHJcbiAgYm9yZGVyU3R5bGU6ICdzb2xpZCcsXHJcbiAgYm9yZGVyUmFkaXVzOiAnMC43NXJlbScsXHJcbiAgYm9yZGVyU21hbGxSYWRpdXM6ICcwLjVyZW0nLFxyXG4gIGJvcmRlcldpZHRoOiAnMC4wNjI1cmVtJyxcclxuICBib3JkZXJEZWVwV2lkdGg6ICcwLjEyNXJlbScsXHJcbiAgYm94U2hhZG93OiAnMCAwLjA2MjVyZW0gMC4yNXJlbSAwLjA2MjVyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KScsXHJcbiAgYm94U2hhZG93SG92ZXI6ICcwIDAuMDYyNXJlbSAwLjI1cmVtIDAuMDYyNXJlbSByZ2JhKDAsIDAsIDAsIDAuMyknLFxyXG4gIGJveFNoYWRvd1RvcDogJzAgLTAuMDYyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4xNSknLFxyXG4gIGJveFNoYWRvd1JpZ2h0OiAnMC4wNjI1cmVtIDAgMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpJyxcclxuICBib3hTaGFkb3dCb3R0b206ICcwIDAuMDYyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4xNSknLFxyXG4gIGJveFNoYWRvd0xlZnQ6ICctMC4wNjI1cmVtIDAgMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpJyxcclxuICBhbmltYXRpb25EdXJhdGlvblNsb3c6ICcwLjNzJyxcclxuICBhbmltYXRpb25EdXJhdGlvbkJhc2U6ICcwLjJzJyxcclxuICBhbmltYXRpb25EdXJhdGlvbkZhc3Q6ICcwLjFzJ1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfQ09MT1JfS0VZUyA9IE9iamVjdC5rZXlzKFhfVEhFTUVfQ09MT1JTKTtcclxuZXhwb3J0IGNvbnN0IFhfVEhFTUVfVkFSU19LRVlTID0gT2JqZWN0LmtleXMoWF9USEVNRV9WQVJTKTtcclxuIl19
@@ -1,36 +1,63 @@
1
1
  import { Injectable, inject } from '@angular/core';
2
- import { X_THEME_COLORS, X_THEME_COLOR_KEYS, X_THEME_PREFIX, X_THEME_AMOUNTS, X_THEME_MERGE, X_THEME_BLACK_MERGE, X_THEME_EXCHANGES, X_THEME_BACKGROUNDS, X_THEME_TEXTS, X_THEME_BORDERS } from './theme';
2
+ import { X_THEME_COLORS, X_THEME_COLOR_KEYS, X_THEME_PREFIX, X_THEME_AMOUNTS, X_THEME_MERGE, X_THEME_BLACK_MERGE, X_THEME_EXCHANGES, X_THEME_BACKGROUNDS, X_THEME_TEXTS, X_THEME_BORDERS, X_THEME_VARS, X_THEME_DARK_COLORS, X_THEME_LIGHT_COLORS } from './theme';
3
3
  import { DOCUMENT } from '@angular/common';
4
- import { XComputed } from '../util';
4
+ import { XCamelToKebab, XComputed, XKebabToCamel } from '../util';
5
+ import { BehaviorSubject } from 'rxjs';
5
6
  import * as i0 from "@angular/core";
6
7
  export class XThemeService {
7
8
  constructor(factory) {
8
9
  this.factory = factory;
9
10
  this.colorsProp = {};
11
+ this.varsProp = {};
10
12
  this.doc = inject(DOCUMENT);
13
+ this.changed = new BehaviorSubject('light');
11
14
  this.renderer2 = this.factory.createRenderer(null, null);
12
15
  this.declaration = XComputed(this.doc.documentElement);
13
16
  }
14
17
  setInitialTheme(theme) {
18
+ this.setVars(theme?.vars);
19
+ if (theme?.vars)
20
+ Object.assign(X_THEME_VARS, theme.vars);
15
21
  this.setColors(theme?.colors);
16
22
  if (theme?.colors)
17
23
  Object.assign(X_THEME_COLORS, theme.colors);
18
24
  }
19
25
  setTheme(theme) {
20
26
  this.setColors(theme?.colors);
27
+ this.setVars(theme?.vars);
28
+ this.setDark(theme?.dark);
21
29
  }
22
30
  getTheme(includesAll = false) {
23
31
  return {
24
- colors: this.getColors(includesAll)
32
+ colors: this.getColors(includesAll),
33
+ vars: this.getVars()
25
34
  };
26
35
  }
27
36
  setColors(colors) {
28
37
  colors = this.getColorsTheme(colors);
29
38
  for (let key in colors) {
30
- Object.assign(this.colorsProp, this.setRoot(key, colors[key]));
39
+ Object.assign(this.colorsProp, this.setColorRoot(key, colors[key]));
31
40
  }
32
41
  this.createColorsStyle();
33
42
  }
43
+ setDark(dark) {
44
+ const colors = this.getColors();
45
+ if (dark === true) {
46
+ Object.assign(colors, X_THEME_DARK_COLORS);
47
+ this.setDarkColors(colors);
48
+ this.changed.next('dark');
49
+ }
50
+ else if (dark === false) {
51
+ Object.assign(colors, X_THEME_LIGHT_COLORS);
52
+ this.setColors(colors);
53
+ this.changed.next('light');
54
+ }
55
+ return colors;
56
+ }
57
+ setDarkColors(colors) {
58
+ this.colorsProp = this.getDefineColors(colors, X_THEME_PREFIX, true);
59
+ this.createColorsStyle();
60
+ }
34
61
  getColors(includes = false, prefix = X_THEME_PREFIX) {
35
62
  let result = {};
36
63
  const keys = includes ? Object.keys(this.colorsProp) : X_THEME_COLOR_KEYS.map((x) => `${prefix}${x}`);
@@ -39,6 +66,14 @@ export class XThemeService {
39
66
  });
40
67
  return result;
41
68
  }
69
+ getVars(prefix = X_THEME_PREFIX) {
70
+ let result = {};
71
+ const keys = Object.keys(this.varsProp);
72
+ keys.forEach((x) => {
73
+ result[XKebabToCamel(x.replace(prefix, ''))] = this.declaration.getPropertyValue(`${x}`).trim();
74
+ });
75
+ return result;
76
+ }
42
77
  getColorsInProperty(colors, prefix = X_THEME_PREFIX) {
43
78
  let result = {};
44
79
  Object.keys(colors).forEach((x) => {
@@ -53,7 +88,7 @@ export class XThemeService {
53
88
  colors = Object.assign({}, X_THEME_COLORS, colors);
54
89
  return colors;
55
90
  }
56
- setRoot(color, value, prefix = X_THEME_PREFIX) {
91
+ setColorRoot(color, value, prefix = X_THEME_PREFIX) {
57
92
  let result = {};
58
93
  if (X_THEME_COLOR_KEYS.includes(color)) {
59
94
  for (let amount of X_THEME_AMOUNTS) {
@@ -61,7 +96,7 @@ export class XThemeService {
61
96
  result[`${prefix}${color}`] = value;
62
97
  }
63
98
  else {
64
- result[`${prefix}${color}${this.getSuffix(amount)}`] = toHex(mixColors(amount > 0 ? X_THEME_MERGE : X_THEME_BLACK_MERGE, value, Math.abs(amount)));
99
+ result[`${prefix}${color}${this.getSuffix(amount)}`] = XToHex(XMixColors(amount > 0 ? X_THEME_MERGE : X_THEME_BLACK_MERGE, value, Math.abs(amount)));
65
100
  }
66
101
  }
67
102
  }
@@ -70,11 +105,11 @@ export class XThemeService {
70
105
  }
71
106
  return result;
72
107
  }
73
- setDarkRoot(color, value, prefix = X_THEME_PREFIX) {
108
+ setDarkColorRoot(color, value, prefix = X_THEME_PREFIX) {
74
109
  let result = {};
75
- const allColors = this.setRoot(color, value, '');
76
- if (X_THEME_COLOR_KEYS.includes(color) && !['background'].includes(color)) {
77
- const allColors = this.setRoot(color, value, prefix);
110
+ let allColors = this.setColorRoot(color, value, '');
111
+ if (X_THEME_COLOR_KEYS.includes(color)) {
112
+ allColors = this.setColorRoot(color, value, prefix);
78
113
  X_THEME_EXCHANGES.forEach((x) => {
79
114
  if (x[1] >= -0.1) {
80
115
  const curr = this.getSuffix(x[0]);
@@ -92,7 +127,7 @@ export class XThemeService {
92
127
  let result = {};
93
128
  colors = this.getColorsTheme(colors);
94
129
  for (let key in colors) {
95
- Object.assign(result, this.setRoot(key, colors[key], prefix));
130
+ Object.assign(result, this.setColorRoot(key, colors[key], prefix));
96
131
  }
97
132
  if (darken) {
98
133
  const colorsFunc = (nums, callback) => {
@@ -135,6 +170,21 @@ export class XThemeService {
135
170
  }
136
171
  return '';
137
172
  }
173
+ setVarRoot(va, value, prefix = X_THEME_PREFIX) {
174
+ let result = {};
175
+ result[`${prefix}${XCamelToKebab(va)}`] = value;
176
+ return result;
177
+ }
178
+ setVars(vars) {
179
+ if (typeof vars === 'undefined')
180
+ vars = X_THEME_VARS;
181
+ else
182
+ vars = Object.assign({}, X_THEME_VARS, vars);
183
+ for (let key in vars) {
184
+ Object.assign(this.varsProp, this.setVarRoot(key, vars[key]));
185
+ }
186
+ this.createVarsStyle();
187
+ }
138
188
  createColorsStyle() {
139
189
  if (this.colorsStyleEle)
140
190
  this.renderer2.removeChild(this.colorsStyleEle.parentNode, this.colorsStyleEle);
@@ -146,18 +196,32 @@ export class XThemeService {
146
196
  this.renderer2.addClass(this.doc.documentElement, 'x-theme-colors');
147
197
  this.doc.documentElement.getElementsByTagName('head')[0].appendChild(this.colorsStyleEle);
148
198
  }
149
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XThemeService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
150
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XThemeService, providedIn: 'root' }); }
199
+ createVarsStyle() {
200
+ if (this.varsStyleEle)
201
+ this.renderer2.removeChild(this.varsStyleEle.parentNode, this.varsStyleEle);
202
+ const styles = Object.entries(this.varsProp)
203
+ .map((x) => `${x[0]}: ${x[1]};`)
204
+ .join('');
205
+ this.varsStyleEle = this.renderer2.createElement('style');
206
+ this.varsStyleEle.innerHTML = `:root{${styles}}`;
207
+ this.doc.documentElement.getElementsByTagName('head')[0].appendChild(this.varsStyleEle);
208
+ }
209
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XThemeService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
210
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XThemeService, providedIn: 'root' }); }
151
211
  }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: XThemeService, decorators: [{
212
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: XThemeService, decorators: [{
153
213
  type: Injectable,
154
214
  args: [{
155
215
  providedIn: 'root'
156
216
  }]
157
217
  }], ctorParameters: () => [{ type: i0.RendererFactory2 }] });
158
- export function mixColors(color1, color2, weight) {
159
- let rgb1 = toRgb(color1);
160
- let rgb2 = toRgb(color2);
218
+ /**
219
+ * @zh_CN 根据权重混合2种颜色
220
+ * @en_US Mix 2 colors according to heavy weights
221
+ */
222
+ export function XMixColors(color1, color2, weight) {
223
+ let rgb1 = XToRgb(color1);
224
+ let rgb2 = XToRgb(color2);
161
225
  let weight1 = weight;
162
226
  let weight2 = 1 - weight;
163
227
  let result;
@@ -171,10 +235,18 @@ export function mixColors(color1, color2, weight) {
171
235
  };
172
236
  return result;
173
237
  }
174
- export function toHex(rgb) {
238
+ /**
239
+ * @zh_CN RGB 颜色转换为 Hex
240
+ * @en_US RGB color converts to hex
241
+ */
242
+ export function XToHex(rgb) {
175
243
  return '#' + ((1 << 24) + (rgb.r << 16) + (rgb.g << 8) + rgb.b).toString(16).slice(1);
176
244
  }
177
- export function toRgb(hex) {
245
+ /**
246
+ * @zh_CN Hex 颜色转换为 RGB
247
+ * @en_US Hex color converts to RGB
248
+ */
249
+ export function XToRgb(hex) {
178
250
  if (hex.indexOf('#') == 0)
179
251
  hex = hex.slice(1);
180
252
  let num = parseInt(hex, 16);
@@ -195,4 +267,4 @@ export function toRgb(hex) {
195
267
  b = 0;
196
268
  return { r: r, g: g, b: b };
197
269
  }
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2NvcmUvdGhlbWUvdGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUErQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUdMLGNBQWMsRUFDZCxrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLGVBQWUsRUFDZixhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsRUFDaEIsTUFBTSxTQUFTLENBQUM7QUFDakIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBS3BDLE1BQU0sT0FBTyxhQUFhO0lBT3hCLFlBQW9CLE9BQXlCO1FBQXpCLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBTnJDLGVBQVUsR0FBaUIsRUFBRSxDQUFDO1FBSTlCLFFBQUcsR0FBYSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFHdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDOUIsSUFBSSxLQUFLLEVBQUUsTUFBTTtZQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lB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QyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUM3QyxDQUFDLENBQUM7SUFFRixNQUFNLEdBQUc7UUFDUCxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUMzRCxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztRQUMzRCxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztLQUM1RCxDQUFDO0lBRUYsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBd0M7SUFDNUQsT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hGLENBQUM7QUFFRCxNQUFNLFVBQVUsS0FBSyxDQUFDLEdBQVc7SUFDL0IsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxJQUFJLEdBQUcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxFQUFFLENBQUM7SUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRztRQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7U0FDaEIsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQzVCLElBQUksQ0FBQyxHQUFHLEdBQUc7UUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxRQUFRLENBQUM7SUFDdkIsSUFBSSxDQUFDLEdBQUcsR0FBRztRQUFFLENBQUMsR0FBRyxHQUFHLENBQUM7U0FDaEIsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFdEIsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFJlbmRlcmVyRmFjdG9yeTIsIFJlbmRlcmVyMiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgWFRoZW1lLFxyXG4gIFhDb2xvcnNUaGVtZSxcclxuICBYX1RIRU1FX0NPTE9SUyxcclxuICBYX1RIRU1FX0NPTE9SX0tFWVMsXHJcbiAgWF9USEVNRV9QUkVGSVgsXHJcbiAgWF9USEVNRV9BTU9VTlRTLFxyXG4gIFhfVEhFTUVfTUVSR0UsXHJcbiAgWF9USEVNRV9CTEFDS19NRVJHRSxcclxuICBYX1RIRU1FX0VYQ0hBTkdFUyxcclxuICBYX1RIRU1FX0JBQ0tHUk9VTkRTLFxyXG4gIFhfVEhFTUVfVEVYVFMsXHJcbiAgWF9USEVNRV9CT1JERVJTXHJcbn0gZnJvbSAnLi90aGVtZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgWENvbXB1dGVkIH0gZnJvbSAnLi4vdXRpbCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYVGhlbWVTZXJ2aWNlIHtcclxuICBwcml2YXRlIGNvbG9yc1Byb3A6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gIHByaXZhdGUgY29sb3JzU3R5bGVFbGUhOiBIVE1MU3R5bGVFbGVtZW50O1xyXG4gIHByaXZhdGUgcmVuZGVyZXIyOiBSZW5kZXJlcjI7XHJcbiAgcHJpdmF0ZSBkZWNsYXJhdGlvbjogQ1NTU3R5bGVEZWNsYXJhdGlvbjtcclxuICBwcml2YXRlIGRvYzogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIpIHtcclxuICAgIHRoaXMucmVuZGVyZXIyID0gdGhpcy5mYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xyXG4gICAgdGhpcy5kZWNsYXJhdGlvbiA9IFhDb21wdXRlZCh0aGlzLmRvYy5kb2N1bWVudEVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5pdGlhbFRoZW1lKHRoZW1lPzogWFRoZW1lKSB7XHJcbiAgICB0aGlzLnNldENvbG9ycyh0aGVtZT8uY29sb3JzKTtcclxuICAgIGlmICh0aGVtZT8uY29sb3JzKSBPYmplY3QuYXNzaWduKFhfVEhFTUVfQ09MT1JTLCB0aGVtZS5jb2xvcnMpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGhlbWUodGhlbWU/OiBYVGhlbWUpIHtcclxuICAgIHRoaXMuc2V0Q29sb3JzKHRoZW1lPy5jb2xvcnMpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VGhlbWUoaW5jbHVkZXNBbGwgPSBmYWxzZSk6IFhUaGVtZSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjb2xvcnM6IHRoaXMuZ2V0Q29sb3JzKGluY2x1ZGVzQWxsKVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHNldENvbG9ycyhjb2xvcnM/OiBYQ29sb3JzVGhlbWUpIHtcclxuICAgIGNvbG9ycyA9IHRoaXMuZ2V0Q29sb3JzVGhlbWUoY29sb3JzKTtcclxuICAgIGZvciAobGV0IGtleSBpbiBjb2xvcnMpIHtcclxuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbG9yc1Byb3AsIHRoaXMuc2V0Um9vdChrZXksIGNvbG9yc1trZXldKSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmNyZWF0ZUNvbG9yc1N0eWxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xvcnMoaW5jbHVkZXMgPSBmYWxzZSwgcHJlZml4ID0gWF9USEVNRV9QUkVGSVgpOiBYQ29sb3JzVGhlbWUge1xyXG4gICAgbGV0IHJlc3VsdDogWENvbG9yc1RoZW1lID0ge307XHJcbiAgICBjb25zdCBrZXlzID0gaW5jbHVkZXMgPyBPYmplY3Qua2V5cyh0aGlzLmNvbG9yc1Byb3ApIDogWF9USEVNRV9DT0xPUl9LRVlTLm1hcCgoeCkgPT4gYCR7cHJlZml4fSR7eH1gKTtcclxuICAgIGtleXMuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICByZXN1bHRbeC5yZXBsYWNlKHByZWZpeCwgJycpXSA9IHRoaXMuZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZShgJHt4fWApLnRyaW0oKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xvcnNJblByb3BlcnR5KGNvbG9ycz86IFhDb2xvcnNUaGVtZSwgcHJlZml4ID0gWF9USEVNRV9QUkVGSVgpOiBYQ29sb3JzVGhlbWUge1xyXG4gICAgbGV0IHJlc3VsdDogWENvbG9yc1RoZW1lID0ge307XHJcbiAgICBPYmplY3Qua2V5cyhjb2xvcnMgYXMgWENvbG9yc1RoZW1lKS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIHJlc3VsdFt4XSA9IHRoaXMuZGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZShgJHtwcmVmaXh9JHt4fWApLnRyaW0oKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xvcnNUaGVtZShjb2xvcnM/OiBYQ29sb3JzVGhlbWUpIHtcclxuICAgIGlmICh0eXBlb2YgY29sb3JzID09PSAndW5kZWZpbmVkJykgY29sb3JzID0gWF9USEVNRV9DT0xPUlM7XHJcbiAgICBlbHNlIGNvbG9ycyA9IE9iamVjdC5hc3NpZ24oe30sIFhfVEhFTUVfQ09MT1JTLCBjb2xvcnMpO1xyXG4gICAgcmV0dXJuIGNvbG9ycztcclxuICB9XHJcblxyXG4gIHNldFJvb3QoY29sb3I6IHN0cmluZywgdmFsdWU6IHN0cmluZywgcHJlZml4ID0gWF9USEVNRV9QUkVGSVgpIHtcclxuICAgIGxldCByZXN1bHQ6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gICAgaWYgKFhfVEhFTUVfQ09MT1JfS0VZUy5pbmNsdWRlcyhjb2xvcikpIHtcclxuICAgICAgZm9yIChsZXQgYW1vdW50IG9mIFhfVEhFTUVfQU1PVU5UUykge1xyXG4gICAgICAgIGlmIChhbW91bnQgPT09IDApIHtcclxuICAgICAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn1gXSA9IHZhbHVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXN1bHRbYCR7cHJlZml4fSR7Y29sb3J9JHt0aGlzLmdldFN1ZmZpeChhbW91bnQpfWBdID0gdG9IZXgoXHJcbiAgICAgICAgICAgIG1peENvbG9ycyhhbW91bnQgPiAwID8gWF9USEVNRV9NRVJHRSA6IFhfVEhFTUVfQkxBQ0tfTUVSR0UsIHZhbHVlLCBNYXRoLmFicyhhbW91bnQpKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn1gXSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHNldERhcmtSb290KGNvbG9yOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIHByZWZpeCA9IFhfVEhFTUVfUFJFRklYKSB7XHJcbiAgICBsZXQgcmVzdWx0OiBYQ29sb3JzVGhlbWUgPSB7fTtcclxuICAgIGNvbnN0IGFsbENvbG9ycyA9IHRoaXMuc2V0Um9vdChjb2xvciwgdmFsdWUsICcnKTtcclxuICAgIGlmIChYX1RIRU1FX0NPTE9SX0tFWVMuaW5jbHVkZXMoY29sb3IpICYmICFbJ2JhY2tncm91bmQnXS5pbmNsdWRlcyhjb2xvcikpIHtcclxuICAgICAgY29uc3QgYWxsQ29sb3JzID0gdGhpcy5zZXRSb290KGNvbG9yLCB2YWx1ZSwgcHJlZml4KTtcclxuICAgICAgWF9USEVNRV9FWENIQU5HRVMuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICAgIGlmICh4WzFdID49IC0wLjEpIHtcclxuICAgICAgICAgIGNvbnN0IGN1cnIgPSB0aGlzLmdldFN1ZmZpeCh4WzBdKTtcclxuICAgICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLmdldFN1ZmZpeCh4WzFdKTtcclxuICAgICAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn0ke2N1cnJ9YF0gPSBhbGxDb2xvcnNbYCR7cHJlZml4fSR7Y29sb3J9JHtuZXh0fWBdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKFsnYmFja2dyb3VuZCddLmluY2x1ZGVzKGNvbG9yKSkge1xyXG4gICAgICByZXN1bHQgPSB0aGlzLmdldERlZmluZUNvbG9ycyhPYmplY3QuYXNzaWduKHt9LCB0aGlzLmdldENvbG9yc0luUHJvcGVydHkoWF9USEVNRV9DT0xPUlMpLCBhbGxDb2xvcnMpLCAnJywgdHJ1ZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVmaW5lQ29sb3JzKGNvbG9ycz86IFhDb2xvcnNUaGVtZSwgcHJlZml4ID0gWF9USEVNRV9QUkVGSVgsIGRhcmtlbiA9IGZhbHNlKTogWENvbG9yc1RoZW1lIHtcclxuICAgIGxldCByZXN1bHQ6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gICAgY29sb3JzID0gdGhpcy5nZXRDb2xvcnNUaGVtZShjb2xvcnMpO1xyXG4gICAgZm9yIChsZXQga2V5IGluIGNvbG9ycykge1xyXG4gICAgICBPYmplY3QuYXNzaWduKHJlc3VsdCwgdGhpcy5zZXRSb290KGtleSwgY29sb3JzW2tleV0sIHByZWZpeCkpO1xyXG4gICAgfVxyXG4gICAgaWYgKGRhcmtlbikge1xyXG4gICAgICBjb25zdCBjb2xvcnNGdW5jID0gKG51bXM6IG51bWJlcltdIHwgbnVtYmVyW11bXSwgY2FsbGJhY2s6IEZ1bmN0aW9uKSA9PiB7XHJcbiAgICAgICAgZm9yIChsZXQgbnVtIG9mIG51bXMpIHtcclxuICAgICAgICAgIGZvciAobGV0IGNvbG9yIGluIGNvbG9ycykge1xyXG4gICAgICAgICAgICBpZiAoWF9USEVNRV9DT0xPUl9LRVlTLmluY2x1ZGVzKGNvbG9yKSAmJiAhWydiYWNrZ3JvdW5kJ10uaW5jbHVkZXMoY29sb3IpKSB7XHJcbiAgICAgICAgICAgICAgY2FsbGJhY2sobnVtLCBjb2xvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH07XHJcbiAgICAgIGNvbG9yc0Z1bmMoWF9USEVNRV9CQUNLR1JPVU5EUywgKGJhY2tncm91bmQ6IG51bWJlciwgY29sb3I6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRoZW1lID0gdGhpcy5nZXRTdWZmaXgoYmFja2dyb3VuZCk7XHJcbiAgICAgICAgcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfSR7dGhlbWV9YF0gPSByZXN1bHRbYCR7cHJlZml4fWJhY2tncm91bmQke3RoZW1lLnJlcGxhY2UoJ2EnLCAnJyl9YF07XHJcbiAgICAgIH0pO1xyXG4gICAgICBjb2xvcnNGdW5jKFhfVEhFTUVfVEVYVFMsICh0ZXh0OiBudW1iZXJbXSwgY29sb3I6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGN1cnIgPSB0aGlzLmdldFN1ZmZpeCh0ZXh0WzBdKTtcclxuICAgICAgICBjb25zdCBuZXh0ID0gdGhpcy5nZXRTdWZmaXgodGV4dFsxXSk7XHJcbiAgICAgICAgcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfSR7Y3Vycn1gXSA9IHJlc3VsdFtgJHtwcmVmaXh9dGV4dCR7bmV4dH1gXTtcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbG9yc0Z1bmMoWF9USEVNRV9CT1JERVJTLCAoYm9yZGVyOiBudW1iZXJbXSwgY29sb3I6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGN1cnIgPSB0aGlzLmdldFN1ZmZpeChib3JkZXJbMF0pO1xyXG4gICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLmdldFN1ZmZpeChib3JkZXJbMV0pO1xyXG4gICAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn0ke2N1cnJ9YF0gPSByZXN1bHRbYCR7cHJlZml4fWJvcmRlciR7bmV4dH1gXTtcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbG9yc0Z1bmMoWF9USEVNRV9FWENIQU5HRVMsIChleGNoYW5nZTogbnVtYmVyW10sIGNvbG9yOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBjb25zdCBjdXJyID0gdGhpcy5nZXRTdWZmaXgoZXhjaGFuZ2VbMF0pO1xyXG4gICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLmdldFN1ZmZpeChleGNoYW5nZVsxXSk7XHJcbiAgICAgICAgcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfSR7Y3Vycn1gXSA9IHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn0ke25leHR9YF07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIGdldFN1ZmZpeChudW06IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBpZiAobnVtID4gMCkge1xyXG4gICAgICByZXR1cm4gYC0ke01hdGguYWJzKG51bSAqIDEwMDApfWA7XHJcbiAgICB9IGVsc2UgaWYgKG51bSA8IDApIHtcclxuICAgICAgcmV0dXJuIGAtYSR7TWF0aC5hYnMobnVtICogMTAwMCl9YDtcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIGNyZWF0ZUNvbG9yc1N0eWxlKCkge1xyXG4gICAgaWYgKHRoaXMuY29sb3JzU3R5bGVFbGUpIHRoaXMucmVuZGVyZXIyLnJlbW92ZUNoaWxkKHRoaXMuY29sb3JzU3R5bGVFbGUucGFyZW50Tm9kZSwgdGhpcy5jb2xvcnNTdHlsZUVsZSk7XHJcbiAgICBjb25zdCBzdHlsZXMgPSBPYmplY3QuZW50cmllcyh0aGlzLmNvbG9yc1Byb3ApXHJcbiAgICAgIC5tYXAoKHgpID0+IGAke3hbMF19OiAke3hbMV19O2ApXHJcbiAgICAgIC5qb2luKCcnKTtcclxuICAgIHRoaXMuY29sb3JzU3R5bGVFbGUgPSB0aGlzLnJlbmRlcmVyMi5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xyXG4gICAgdGhpcy5jb2xvcnNTdHlsZUVsZS5pbm5lckhUTUwgPSBgLngtdGhlbWUtY29sb3JzeyR7c3R5bGVzfX1gO1xyXG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3ModGhpcy5kb2MuZG9jdW1lbnRFbGVtZW50LCAneC10aGVtZS1jb2xvcnMnKTtcclxuICAgIHRoaXMuZG9jLmRvY3VtZW50RWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmFwcGVuZENoaWxkKHRoaXMuY29sb3JzU3R5bGVFbGUpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1peENvbG9ycyhjb2xvcjE6IHN0cmluZywgY29sb3IyOiBzdHJpbmcsIHdlaWdodDogbnVtYmVyKSB7XHJcbiAgbGV0IHJnYjEgPSB0b1JnYihjb2xvcjEpO1xyXG4gIGxldCByZ2IyID0gdG9SZ2IoY29sb3IyKTtcclxuICBsZXQgd2VpZ2h0MSA9IHdlaWdodDtcclxuICBsZXQgd2VpZ2h0MiA9IDEgLSB3ZWlnaHQ7XHJcbiAgbGV0IHJlc3VsdDogeyByOiBudW1iZXI7IGc6IG51bWJlcjsgYjogbnVtYmVyIH07XHJcblxyXG4gIGNvbnN0IGluUmFuZ2UgPSAobnVtOiBudW1iZXIpID0+IHtcclxuICAgIHJldHVybiBudW0gPiAyNTUgPyAyNTUgOiBudW0gPCAwID8gMCA6IG51bTtcclxuICB9O1xyXG5cclxuICByZXN1bHQgPSB7XHJcbiAgICByOiBpblJhbmdlKE1hdGgucm91bmQocmdiMS5yICogd2VpZ2h0MSArIHJnYjIuciAqIHdlaWdodDIpKSxcclxuICAgIGc6IGluUmFuZ2UoTWF0aC5yb3VuZChyZ2IxLmcgKiB3ZWlnaHQxICsgcmdiMi5nICogd2VpZ2h0MikpLFxyXG4gICAgYjogaW5SYW5nZShNYXRoLnJvdW5kKHJnYjEuYiAqIHdlaWdodDEgKyByZ2IyLmIgKiB3ZWlnaHQyKSlcclxuICB9O1xyXG5cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdG9IZXgocmdiOiB7IHI6IG51bWJlcjsgZzogbnVtYmVyOyBiOiBudW1iZXIgfSkge1xyXG4gIHJldHVybiAnIycgKyAoKDEgPDwgMjQpICsgKHJnYi5yIDw8IDE2KSArIChyZ2IuZyA8PCA4KSArIHJnYi5iKS50b1N0cmluZygxNikuc2xpY2UoMSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB0b1JnYihoZXg6IHN0cmluZykge1xyXG4gIGlmIChoZXguaW5kZXhPZignIycpID09IDApIGhleCA9IGhleC5zbGljZSgxKTtcclxuICBsZXQgbnVtID0gcGFyc2VJbnQoaGV4LCAxNik7XHJcbiAgbGV0IHIgPSBudW0gPj4gMTY7XHJcbiAgaWYgKHIgPiAyNTUpIHIgPSAyNTU7XHJcbiAgZWxzZSBpZiAociA8IDApIHIgPSAwO1xyXG4gIGxldCBnID0gKG51bSA+PiA4KSAmIDB4MDBmZjtcclxuICBpZiAoZyA+IDI1NSkgZyA9IDI1NTtcclxuICBlbHNlIGlmIChnIDwgMCkgZyA9IDA7XHJcbiAgbGV0IGIgPSBudW0gJiAweDAwMDBmZjtcclxuICBpZiAoYiA+IDI1NSkgYiA9IDI1NTtcclxuICBlbHNlIGlmIChiIDwgMCkgYiA9IDA7XHJcblxyXG4gIHJldHVybiB7IHI6IHIsIGc6IGcsIGI6IGIgfTtcclxufVxyXG4iXX0=
270
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL2NvcmUvdGhlbWUvdGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUErQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUdMLGNBQWMsRUFDZCxrQkFBa0IsRUFDbEIsY0FBYyxFQUNkLGVBQWUsRUFDZixhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLGVBQWUsRUFDZixZQUFZLEVBRVosbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNyQixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBS3ZDLE1BQU0sT0FBTyxhQUFhO0lBVXhCLFlBQW9CLE9BQXlCO1FBQXpCLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBVHJDLGVBQVUsR0FBaUIsRUFBRSxDQUFDO1FBQzlCLGFBQVEsR0FBZSxFQUFFLENBQUM7UUFLMUIsUUFBRyxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQW1CLE9BQU8sQ0FBQyxDQUFDO1FBR3ZELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDekQsQ0FBQztJ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QUFJLENBQUMsR0FBRyxHQUFHLElBQUksRUFBRSxDQUFDO0lBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUc7UUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQztJQUM1QixJQUFJLENBQUMsR0FBRyxHQUFHO1FBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQztTQUNoQixJQUFJLENBQUMsR0FBRyxDQUFDO1FBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QixJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDO0lBQ3ZCLElBQUksQ0FBQyxHQUFHLEdBQUc7UUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRXRCLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0FBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBSZW5kZXJlckZhY3RvcnkyLCBSZW5kZXJlcjIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFhUaGVtZSxcclxuICBYQ29sb3JzVGhlbWUsXHJcbiAgWF9USEVNRV9DT0xPUlMsXHJcbiAgWF9USEVNRV9DT0xPUl9LRVlTLFxyXG4gIFhfVEhFTUVfUFJFRklYLFxyXG4gIFhfVEhFTUVfQU1PVU5UUyxcclxuICBYX1RIRU1FX01FUkdFLFxyXG4gIFhfVEhFTUVfQkxBQ0tfTUVSR0UsXHJcbiAgWF9USEVNRV9FWENIQU5HRVMsXHJcbiAgWF9USEVNRV9CQUNLR1JPVU5EUyxcclxuICBYX1RIRU1FX1RFWFRTLFxyXG4gIFhfVEhFTUVfQk9SREVSUyxcclxuICBYX1RIRU1FX1ZBUlMsXHJcbiAgWFZhcnNUaGVtZSxcclxuICBYX1RIRU1FX0RBUktfQ09MT1JTLFxyXG4gIFhfVEhFTUVfTElHSFRfQ09MT1JTXHJcbn0gZnJvbSAnLi90aGVtZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgWENhbWVsVG9LZWJhYiwgWENvbXB1dGVkLCBYS2ViYWJUb0NhbWVsIH0gZnJvbSAnLi4vdXRpbCc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWFRoZW1lU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBjb2xvcnNQcm9wOiBYQ29sb3JzVGhlbWUgPSB7fTtcclxuICBwcml2YXRlIHZhcnNQcm9wOiBYVmFyc1RoZW1lID0ge307XHJcbiAgcHJpdmF0ZSBjb2xvcnNTdHlsZUVsZSE6IEhUTUxTdHlsZUVsZW1lbnQ7XHJcbiAgcHJpdmF0ZSB2YXJzU3R5bGVFbGUhOiBIVE1MU3R5bGVFbGVtZW50O1xyXG4gIHByaXZhdGUgcmVuZGVyZXIyOiBSZW5kZXJlcjI7XHJcbiAgcHJpdmF0ZSBkZWNsYXJhdGlvbjogQ1NTU3R5bGVEZWNsYXJhdGlvbjtcclxuICBwcml2YXRlIGRvYzogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xyXG4gIGNoYW5nZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PCdsaWdodCcgfCAnZGFyayc+KCdsaWdodCcpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIpIHtcclxuICAgIHRoaXMucmVuZGVyZXIyID0gdGhpcy5mYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xyXG4gICAgdGhpcy5kZWNsYXJhdGlvbiA9IFhDb21wdXRlZCh0aGlzLmRvYy5kb2N1bWVudEVsZW1lbnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0SW5pdGlhbFRoZW1lKHRoZW1lPzogWFRoZW1lKSB7XHJcbiAgICB0aGlzLnNldFZhcnModGhlbWU/LnZhcnMpO1xyXG4gICAgaWYgKHRoZW1lPy52YXJzKSBPYmplY3QuYXNzaWduKFhfVEhFTUVfVkFSUywgdGhlbWUudmFycyk7XHJcbiAgICB0aGlzLnNldENvbG9ycyh0aGVtZT8uY29sb3JzKTtcclxuICAgIGlmICh0aGVtZT8uY29sb3JzKSBPYmplY3QuYXNzaWduKFhfVEhFTUVfQ09MT1JTLCB0aGVtZS5jb2xvcnMpO1xyXG4gIH1cclxuXHJcbiAgc2V0VGhlbWUodGhlbWU/OiBYVGhlbWUpIHtcclxuICAgIHRoaXMuc2V0Q29sb3JzKHRoZW1lPy5jb2xvcnMpO1xyXG4gICAgdGhpcy5zZXRWYXJzKHRoZW1lPy52YXJzKTtcclxuICAgIHRoaXMuc2V0RGFyayh0aGVtZT8uZGFyayk7XHJcbiAgfVxyXG5cclxuICBnZXRUaGVtZShpbmNsdWRlc0FsbCA9IGZhbHNlKTogWFRoZW1lIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGNvbG9yczogdGhpcy5nZXRDb2xvcnMoaW5jbHVkZXNBbGwpLFxyXG4gICAgICB2YXJzOiB0aGlzLmdldFZhcnMoKVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHNldENvbG9ycyhjb2xvcnM/OiBYQ29sb3JzVGhlbWUpIHtcclxuICAgIGNvbG9ycyA9IHRoaXMuZ2V0Q29sb3JzVGhlbWUoY29sb3JzKTtcclxuICAgIGZvciAobGV0IGtleSBpbiBjb2xvcnMpIHtcclxuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbG9yc1Byb3AsIHRoaXMuc2V0Q29sb3JSb290KGtleSwgY29sb3JzW2tleV0pKTtcclxuICAgIH1cclxuICAgIHRoaXMuY3JlYXRlQ29sb3JzU3R5bGUoKTtcclxuICB9XHJcblxyXG4gIHNldERhcmsoZGFyaz86IGJvb2xlYW4pIHtcclxuICAgIGNvbnN0IGNvbG9ycyA9IHRoaXMuZ2V0Q29sb3JzKCk7XHJcbiAgICBpZiAoZGFyayA9PT0gdHJ1ZSkge1xyXG4gICAgICBPYmplY3QuYXNzaWduKGNvbG9ycywgWF9USEVNRV9EQVJLX0NPTE9SUyk7XHJcbiAgICAgIHRoaXMuc2V0RGFya0NvbG9ycyhjb2xvcnMpO1xyXG4gICAgICB0aGlzLmNoYW5nZWQubmV4dCgnZGFyaycpO1xyXG4gICAgfSBlbHNlIGlmIChkYXJrID09PSBmYWxzZSkge1xyXG4gICAgICBPYmplY3QuYXNzaWduKGNvbG9ycywgWF9USEVNRV9MSUdIVF9DT0xPUlMpO1xyXG4gICAgICB0aGlzLnNldENvbG9ycyhjb2xvcnMpO1xyXG4gICAgICB0aGlzLmNoYW5nZWQubmV4dCgnbGlnaHQnKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY29sb3JzO1xyXG4gIH1cclxuXHJcbiAgc2V0RGFya0NvbG9ycyhjb2xvcnM/OiBYQ29sb3JzVGhlbWUpIHtcclxuICAgIHRoaXMuY29sb3JzUHJvcCA9IHRoaXMuZ2V0RGVmaW5lQ29sb3JzKGNvbG9ycywgWF9USEVNRV9QUkVGSVgsIHRydWUpO1xyXG4gICAgdGhpcy5jcmVhdGVDb2xvcnNTdHlsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sb3JzKGluY2x1ZGVzID0gZmFsc2UsIHByZWZpeCA9IFhfVEhFTUVfUFJFRklYKTogWENvbG9yc1RoZW1lIHtcclxuICAgIGxldCByZXN1bHQ6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gICAgY29uc3Qga2V5cyA9IGluY2x1ZGVzID8gT2JqZWN0LmtleXModGhpcy5jb2xvcnNQcm9wKSA6IFhfVEhFTUVfQ09MT1JfS0VZUy5tYXAoKHgpID0+IGAke3ByZWZpeH0ke3h9YCk7XHJcbiAgICBrZXlzLmZvckVhY2goKHgpID0+IHtcclxuICAgICAgcmVzdWx0W3gucmVwbGFjZShwcmVmaXgsICcnKV0gPSB0aGlzLmRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoYCR7eH1gKS50cmltKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFycyhwcmVmaXggPSBYX1RIRU1FX1BSRUZJWCk6IFhWYXJzVGhlbWUge1xyXG4gICAgbGV0IHJlc3VsdDogWFZhcnNUaGVtZSA9IHt9O1xyXG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHRoaXMudmFyc1Byb3ApO1xyXG4gICAga2V5cy5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgIHJlc3VsdFtYS2ViYWJUb0NhbWVsKHgucmVwbGFjZShwcmVmaXgsICcnKSldID0gdGhpcy5kZWNsYXJhdGlvbi5nZXRQcm9wZXJ0eVZhbHVlKGAke3h9YCkudHJpbSgpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sb3JzSW5Qcm9wZXJ0eShjb2xvcnM/OiBYQ29sb3JzVGhlbWUsIHByZWZpeCA9IFhfVEhFTUVfUFJFRklYKTogWENvbG9yc1RoZW1lIHtcclxuICAgIGxldCByZXN1bHQ6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gICAgT2JqZWN0LmtleXMoY29sb3JzIGFzIFhDb2xvcnNUaGVtZSkuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICByZXN1bHRbeF0gPSB0aGlzLmRlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoYCR7cHJlZml4fSR7eH1gKS50cmltKCk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBnZXRDb2xvcnNUaGVtZShjb2xvcnM/OiBYQ29sb3JzVGhlbWUpIHtcclxuICAgIGlmICh0eXBlb2YgY29sb3JzID09PSAndW5kZWZpbmVkJykgY29sb3JzID0gWF9USEVNRV9DT0xPUlM7XHJcbiAgICBlbHNlIGNvbG9ycyA9IE9iamVjdC5hc3NpZ24oe30sIFhfVEhFTUVfQ09MT1JTLCBjb2xvcnMpO1xyXG4gICAgcmV0dXJuIGNvbG9ycztcclxuICB9XHJcblxyXG4gIHNldENvbG9yUm9vdChjb2xvcjogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBwcmVmaXggPSBYX1RIRU1FX1BSRUZJWCkge1xyXG4gICAgbGV0IHJlc3VsdDogWENvbG9yc1RoZW1lID0ge307XHJcbiAgICBpZiAoWF9USEVNRV9DT0xPUl9LRVlTLmluY2x1ZGVzKGNvbG9yKSkge1xyXG4gICAgICBmb3IgKGxldCBhbW91bnQgb2YgWF9USEVNRV9BTU9VTlRTKSB7XHJcbiAgICAgICAgaWYgKGFtb3VudCA9PT0gMCkge1xyXG4gICAgICAgICAgcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfWBdID0gdmFsdWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn0ke3RoaXMuZ2V0U3VmZml4KGFtb3VudCl9YF0gPSBYVG9IZXgoXHJcbiAgICAgICAgICAgIFhNaXhDb2xvcnMoYW1vdW50ID4gMCA/IFhfVEhFTUVfTUVSR0UgOiBYX1RIRU1FX0JMQUNLX01FUkdFLCB2YWx1ZSwgTWF0aC5hYnMoYW1vdW50KSlcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXN1bHRbYCR7cHJlZml4fSR7Y29sb3J9YF0gPSB2YWx1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBzZXREYXJrQ29sb3JSb290KGNvbG9yOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIHByZWZpeCA9IFhfVEhFTUVfUFJFRklYKSB7XHJcbiAgICBsZXQgcmVzdWx0OiBYQ29sb3JzVGhlbWUgPSB7fTtcclxuICAgIGxldCBhbGxDb2xvcnMgPSB0aGlzLnNldENvbG9yUm9vdChjb2xvciwgdmFsdWUsICcnKTtcclxuICAgIGlmIChYX1RIRU1FX0NPTE9SX0tFWVMuaW5jbHVkZXMoY29sb3IpKSB7XHJcbiAgICAgIGFsbENvbG9ycyA9IHRoaXMuc2V0Q29sb3JSb290KGNvbG9yLCB2YWx1ZSwgcHJlZml4KTtcclxuICAgICAgWF9USEVNRV9FWENIQU5HRVMuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICAgIGlmICh4WzFdID49IC0wLjEpIHtcclxuICAgICAgICAgIGNvbnN0IGN1cnIgPSB0aGlzLmdldFN1ZmZpeCh4WzBdKTtcclxuICAgICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLmdldFN1ZmZpeCh4WzFdKTtcclxuICAgICAgICAgIHJlc3VsdFtgJHtwcmVmaXh9JHtjb2xvcn0ke2N1cnJ9YF0gPSBhbGxDb2xvcnNbYCR7cHJlZml4fSR7Y29sb3J9JHtuZXh0fWBdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYgKFsnYmFja2dyb3VuZCddLmluY2x1ZGVzKGNvbG9yKSkge1xyXG4gICAgICByZXN1bHQgPSB0aGlzLmdldERlZmluZUNvbG9ycyhPYmplY3QuYXNzaWduKHt9LCB0aGlzLmdldENvbG9yc0luUHJvcGVydHkoWF9USEVNRV9DT0xPUlMpLCBhbGxDb2xvcnMpLCAnJywgdHJ1ZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgZ2V0RGVmaW5lQ29sb3JzKGNvbG9ycz86IFhDb2xvcnNUaGVtZSwgcHJlZml4ID0gWF9USEVNRV9QUkVGSVgsIGRhcmtlbiA9IGZhbHNlKTogWENvbG9yc1RoZW1lIHtcclxuICAgIGxldCByZXN1bHQ6IFhDb2xvcnNUaGVtZSA9IHt9O1xyXG4gICAgY29sb3JzID0gdGhpcy5nZXRDb2xvcnNUaGVtZShjb2xvcnMpO1xyXG4gICAgZm9yIChsZXQga2V5IGluIGNvbG9ycykge1xyXG4gICAgICBPYmplY3QuYXNzaWduKHJlc3VsdCwgdGhpcy5zZXRDb2xvclJvb3Qoa2V5LCBjb2xvcnNba2V5XSwgcHJlZml4KSk7XHJcbiAgICB9XHJcbiAgICBpZiAoZGFya2VuKSB7XHJcbiAgICAgIGNvbnN0IGNvbG9yc0Z1bmMgPSAobnVtczogbnVtYmVyW10gfCBudW1iZXJbXVtdLCBjYWxsYmFjazogRnVuY3Rpb24pID0+IHtcclxuICAgICAgICBmb3IgKGxldCBudW0gb2YgbnVtcykge1xyXG4gICAgICAgICAgZm9yIChsZXQgY29sb3IgaW4gY29sb3JzKSB7XHJcbiAgICAgICAgICAgIGlmIChYX1RIRU1FX0NPTE9SX0tFWVMuaW5jbHVkZXMoY29sb3IpICYmICFbJ2JhY2tncm91bmQnXS5pbmNsdWRlcyhjb2xvcikpIHtcclxuICAgICAgICAgICAgICBjYWxsYmFjayhudW0sIGNvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgICAgY29sb3JzRnVuYyhYX1RIRU1FX0JBQ0tHUk9VTkRTLCAoYmFja2dyb3VuZDogbnVtYmVyLCBjb2xvcjogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdGhlbWUgPSB0aGlzLmdldFN1ZmZpeChiYWNrZ3JvdW5kKTtcclxuICAgICAgICByZXN1bHRbYCR7cHJlZml4fSR7Y29sb3J9JHt0aGVtZX1gXSA9IHJlc3VsdFtgJHtwcmVmaXh9YmFja2dyb3VuZCR7dGhlbWUucmVwbGFjZSgnYScsICcnKX1gXTtcclxuICAgICAgfSk7XHJcbiAgICAgIGNvbG9yc0Z1bmMoWF9USEVNRV9URVhUUywgKHRleHQ6IG51bWJlcltdLCBjb2xvcjogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY3VyciA9IHRoaXMuZ2V0U3VmZml4KHRleHRbMF0pO1xyXG4gICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLmdldFN1ZmZpeCh0ZXh0WzFdKTtcclxuICAgICAgICByZXN1bHRbYCR7cHJlZml4fSR7Y29sb3J9JHtjdXJyfWBdID0gcmVzdWx0W2Ake3ByZWZpeH10ZXh0JHtuZXh0fWBdO1xyXG4gICAgICB9KTtcclxuICAgICAgY29sb3JzRnVuYyhYX1RIRU1FX0JPUkRFUlMsIChib3JkZXI6IG51bWJlcltdLCBjb2xvcjogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY3VyciA9IHRoaXMuZ2V0U3VmZml4KGJvcmRlclswXSk7XHJcbiAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuZ2V0U3VmZml4KGJvcmRlclsxXSk7XHJcbiAgICAgICAgcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfSR7Y3Vycn1gXSA9IHJlc3VsdFtgJHtwcmVmaXh9Ym9yZGVyJHtuZXh0fWBdO1xyXG4gICAgICB9KTtcclxuICAgICAgY29sb3JzRnVuYyhYX1RIRU1FX0VYQ0hBTkdFUywgKGV4Y2hhbmdlOiBudW1iZXJbXSwgY29sb3I6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGN1cnIgPSB0aGlzLmdldFN1ZmZpeChleGNoYW5nZVswXSk7XHJcbiAgICAgICAgY29uc3QgbmV4dCA9IHRoaXMuZ2V0U3VmZml4KGV4Y2hhbmdlWzFdKTtcclxuICAgICAgICByZXN1bHRbYCR7cHJlZml4fSR7Y29sb3J9JHtjdXJyfWBdID0gcmVzdWx0W2Ake3ByZWZpeH0ke2NvbG9yfSR7bmV4dH1gXTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgZ2V0U3VmZml4KG51bTogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGlmIChudW0gPiAwKSB7XHJcbiAgICAgIHJldHVybiBgLSR7TWF0aC5hYnMobnVtICogMTAwMCl9YDtcclxuICAgIH0gZWxzZSBpZiAobnVtIDwgMCkge1xyXG4gICAgICByZXR1cm4gYC1hJHtNYXRoLmFicyhudW0gKiAxMDAwKX1gO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuXHJcbiAgc2V0VmFyUm9vdCh2YTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBwcmVmaXggPSBYX1RIRU1FX1BSRUZJWCkge1xyXG4gICAgbGV0IHJlc3VsdDogWFZhcnNUaGVtZSA9IHt9O1xyXG4gICAgcmVzdWx0W2Ake3ByZWZpeH0ke1hDYW1lbFRvS2ViYWIodmEpfWBdID0gdmFsdWU7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgc2V0VmFycyh2YXJzPzogWFZhcnNUaGVtZSkge1xyXG4gICAgaWYgKHR5cGVvZiB2YXJzID09PSAndW5kZWZpbmVkJykgdmFycyA9IFhfVEhFTUVfVkFSUztcclxuICAgIGVsc2UgdmFycyA9IE9iamVjdC5hc3NpZ24oe30sIFhfVEhFTUVfVkFSUywgdmFycyk7XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdmFycykge1xyXG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMudmFyc1Byb3AsIHRoaXMuc2V0VmFyUm9vdChrZXksIHZhcnNba2V5XSkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jcmVhdGVWYXJzU3R5bGUoKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZUNvbG9yc1N0eWxlKCkge1xyXG4gICAgaWYgKHRoaXMuY29sb3JzU3R5bGVFbGUpIHRoaXMucmVuZGVyZXIyLnJlbW92ZUNoaWxkKHRoaXMuY29sb3JzU3R5bGVFbGUucGFyZW50Tm9kZSwgdGhpcy5jb2xvcnNTdHlsZUVsZSk7XHJcbiAgICBjb25zdCBzdHlsZXMgPSBPYmplY3QuZW50cmllcyh0aGlzLmNvbG9yc1Byb3ApXHJcbiAgICAgIC5tYXAoKHgpID0+IGAke3hbMF19OiAke3hbMV19O2ApXHJcbiAgICAgIC5qb2luKCcnKTtcclxuICAgIHRoaXMuY29sb3JzU3R5bGVFbGUgPSB0aGlzLnJlbmRlcmVyMi5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xyXG4gICAgdGhpcy5jb2xvcnNTdHlsZUVsZS5pbm5lckhUTUwgPSBgLngtdGhlbWUtY29sb3JzeyR7c3R5bGVzfX1gO1xyXG4gICAgdGhpcy5yZW5kZXJlcjIuYWRkQ2xhc3ModGhpcy5kb2MuZG9jdW1lbnRFbGVtZW50LCAneC10aGVtZS1jb2xvcnMnKTtcclxuICAgIHRoaXMuZG9jLmRvY3VtZW50RWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmFwcGVuZENoaWxkKHRoaXMuY29sb3JzU3R5bGVFbGUpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlVmFyc1N0eWxlKCkge1xyXG4gICAgaWYgKHRoaXMudmFyc1N0eWxlRWxlKSB0aGlzLnJlbmRlcmVyMi5yZW1vdmVDaGlsZCh0aGlzLnZhcnNTdHlsZUVsZS5wYXJlbnROb2RlLCB0aGlzLnZhcnNTdHlsZUVsZSk7XHJcbiAgICBjb25zdCBzdHlsZXMgPSBPYmplY3QuZW50cmllcyh0aGlzLnZhcnNQcm9wKVxyXG4gICAgICAubWFwKCh4KSA9PiBgJHt4WzBdfTogJHt4WzFdfTtgKVxyXG4gICAgICAuam9pbignJyk7XHJcbiAgICB0aGlzLnZhcnNTdHlsZUVsZSA9IHRoaXMucmVuZGVyZXIyLmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XHJcbiAgICB0aGlzLnZhcnNTdHlsZUVsZS5pbm5lckhUTUwgPSBgOnJvb3R7JHtzdHlsZXN9fWA7XHJcbiAgICB0aGlzLmRvYy5kb2N1bWVudEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXS5hcHBlbmRDaGlsZCh0aGlzLnZhcnNTdHlsZUVsZSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFJHQiDpopzoibLlgLxcclxuICogQGVuX1VTIFJHQiBjb2xvciB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBYUkdCQ29sb3Ige1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDnuqJcclxuICAgKiBAZW5fVVMgUmVkXHJcbiAgICovXHJcbiAgcjogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDnu79cclxuICAgKiBAZW5fVVMgR3JlZW5cclxuICAgKi9cclxuICBnOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiTnVxyXG4gICAqIEBlbl9VUyBCbHVlXHJcbiAgICovXHJcbiAgYjogbnVtYmVyO1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIOagueaNruadg+mHjea3t+WQiDLnp43popzoibJcclxuICogQGVuX1VTIE1peCAyIGNvbG9ycyBhY2NvcmRpbmcgdG8gaGVhdnkgd2VpZ2h0c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIFhNaXhDb2xvcnMoY29sb3IxOiBzdHJpbmcsIGNvbG9yMjogc3RyaW5nLCB3ZWlnaHQ6IG51bWJlcik6IFhSR0JDb2xvciB7XHJcbiAgbGV0IHJnYjEgPSBYVG9SZ2IoY29sb3IxKTtcclxuICBsZXQgcmdiMiA9IFhUb1JnYihjb2xvcjIpO1xyXG4gIGxldCB3ZWlnaHQxID0gd2VpZ2h0O1xyXG4gIGxldCB3ZWlnaHQyID0gMSAtIHdlaWdodDtcclxuICBsZXQgcmVzdWx0OiB7IHI6IG51bWJlcjsgZzogbnVtYmVyOyBiOiBudW1iZXIgfTtcclxuXHJcbiAgY29uc3QgaW5SYW5nZSA9IChudW06IG51bWJlcikgPT4ge1xyXG4gICAgcmV0dXJuIG51bSA+IDI1NSA/IDI1NSA6IG51bSA8IDAgPyAwIDogbnVtO1xyXG4gIH07XHJcblxyXG4gIHJlc3VsdCA9IHtcclxuICAgIHI6IGluUmFuZ2UoTWF0aC5yb3VuZChyZ2IxLnIgKiB3ZWlnaHQxICsgcmdiMi5yICogd2VpZ2h0MikpLFxyXG4gICAgZzogaW5SYW5nZShNYXRoLnJvdW5kKHJnYjEuZyAqIHdlaWdodDEgKyByZ2IyLmcgKiB3ZWlnaHQyKSksXHJcbiAgICBiOiBpblJhbmdlKE1hdGgucm91bmQocmdiMS5iICogd2VpZ2h0MSArIHJnYjIuYiAqIHdlaWdodDIpKVxyXG4gIH07XHJcblxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAemhfQ04gUkdCIOminOiJsui9rOaNouS4uiBIZXhcclxuICogQGVuX1VTIFJHQiBjb2xvciBjb252ZXJ0cyB0byBoZXhcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBYVG9IZXgocmdiOiB7IHI6IG51bWJlcjsgZzogbnVtYmVyOyBiOiBudW1iZXIgfSk6IHN0cmluZyB7XHJcbiAgcmV0dXJuICcjJyArICgoMSA8PCAyNCkgKyAocmdiLnIgPDwgMTYpICsgKHJnYi5nIDw8IDgpICsgcmdiLmIpLnRvU3RyaW5nKDE2KS5zbGljZSgxKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEB6aF9DTiBIZXgg6aKc6Imy6L2s5o2i5Li6IFJHQlxyXG4gKiBAZW5fVVMgSGV4IGNvbG9yIGNvbnZlcnRzIHRvIFJHQlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIFhUb1JnYihoZXg6IHN0cmluZyk6IFhSR0JDb2xvciB7XHJcbiAgaWYgKGhleC5pbmRleE9mKCcjJykgPT0gMCkgaGV4ID0gaGV4LnNsaWNlKDEpO1xyXG4gIGxldCBudW0gPSBwYXJzZUludChoZXgsIDE2KTtcclxuICBsZXQgciA9IG51bSA+PiAxNjtcclxuICBpZiAociA+IDI1NSkgciA9IDI1NTtcclxuICBlbHNlIGlmIChyIDwgMCkgciA9IDA7XHJcbiAgbGV0IGcgPSAobnVtID4+IDgpICYgMHgwMGZmO1xyXG4gIGlmIChnID4gMjU1KSBnID0gMjU1O1xyXG4gIGVsc2UgaWYgKGcgPCAwKSBnID0gMDtcclxuICBsZXQgYiA9IG51bSAmIDB4MDAwMGZmO1xyXG4gIGlmIChiID4gMjU1KSBiID0gMjU1O1xyXG4gIGVsc2UgaWYgKGIgPCAwKSBiID0gMDtcclxuXHJcbiAgcmV0dXJuIHsgcjogciwgZzogZywgYjogYiB9O1xyXG59XHJcbiJdfQ==
@@ -22,26 +22,5 @@ function getRequestAnimationFrame() {
22
22
  const prefix = availablePrefixes.filter((key) => `${key}RequestAnimationFrame` in window)[0];
23
23
  return prefix ? window[`${prefix}RequestAnimationFrame`] : requestAnimationFramePolyfill();
24
24
  }
25
- // export function cancelRequestAnimationFrame(id: number): any {
26
- // if (typeof window === "undefined") {
27
- // return null;
28
- // }
29
- // if (window.cancelAnimationFrame) {
30
- // return window.cancelAnimationFrame(id);
31
- // }
32
- // const prefix = availablePrefixes.filter(
33
- // key =>
34
- // `${key}CancelAnimationFrame` in window ||
35
- // `${key}CancelRequestAnimationFrame` in window
36
- // )[0];
37
- // return prefix
38
- // ? (
39
- // (window as any)[`${prefix}CancelAnimationFrame`] ||
40
- // (window as any)[`${prefix}CancelRequestAnimationFrame`]
41
- // )
42
- // // @ts-ignore
43
- // .call(this, id)
44
- // : clearTimeout(id);
45
- // }
46
- export const reqAnimFrame = getRequestAnimationFrame();
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY29yZS91dGlsL2FuaW1hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnREFBZ0Q7QUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFbEQsU0FBUyw2QkFBNkI7SUFDcEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sVUFBVSxRQUE4QjtRQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDekIsUUFBUSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQztRQUNsQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDZixRQUFRLEdBQUcsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNqQyxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHdCQUF3QjtJQUMvQixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtRQUNqQyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNoQjtJQUNELElBQUksTUFBTSxDQUFDLHFCQUFxQixFQUFFO1FBQ2hDLE9BQU8sTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUNsRDtJQUVELE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLHVCQUF1QixJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTdGLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBRSxNQUFjLENBQUMsR0FBRyxNQUFNLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDLDZCQUE2QixFQUFFLENBQUM7QUFDdEcsQ0FBQztBQUNELGlFQUFpRTtBQUNqRSx5Q0FBeUM7QUFDekMsbUJBQW1CO0FBQ25CLE1BQU07QUFDTix1Q0FBdUM7QUFDdkMsOENBQThDO0FBQzlDLE1BQU07QUFDTiw2Q0FBNkM7QUFDN0MsYUFBYTtBQUNiLGtEQUFrRDtBQUNsRCxzREFBc0Q7QUFDdEQsVUFBVTtBQUVWLGtCQUFrQjtBQUNsQixVQUFVO0FBQ1YsOERBQThEO0FBQzlELGtFQUFrRTtBQUNsRSxVQUFVO0FBQ1Ysd0JBQXdCO0FBQ3hCLDBCQUEwQjtBQUMxQiwwQkFBMEI7QUFDMUIsSUFBSTtBQUVKLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyx3QkFBd0IsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdHNsaW50OmRpc2FibGU6bm8tYW55IHR5cGVkZWYgbm8taW52YWxpZC10aGlzXHJcbmNvbnN0IGF2YWlsYWJsZVByZWZpeGVzID0gWydtb3onLCAnbXMnLCAnd2Via2l0J107XHJcblxyXG5mdW5jdGlvbiByZXF1ZXN0QW5pbWF0aW9uRnJhbWVQb2x5ZmlsbCgpOiB0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHtcclxuICBsZXQgbGFzdFRpbWUgPSAwO1xyXG4gIHJldHVybiBmdW5jdGlvbiAoY2FsbGJhY2s6IEZyYW1lUmVxdWVzdENhbGxiYWNrKTogYW55IHtcclxuICAgIGNvbnN0IGN1cnJUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgICBjb25zdCB0aW1lVG9DYWxsID0gTWF0aC5tYXgoMCwgMTYgLSAoY3VyclRpbWUgLSBsYXN0VGltZSkpO1xyXG4gICAgY29uc3QgaWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY2FsbGJhY2soY3VyclRpbWUgKyB0aW1lVG9DYWxsKTtcclxuICAgIH0sIHRpbWVUb0NhbGwpO1xyXG4gICAgbGFzdFRpbWUgPSBjdXJyVGltZSArIHRpbWVUb0NhbGw7XHJcbiAgICByZXR1cm4gaWQ7XHJcbiAgfTtcclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0UmVxdWVzdEFuaW1hdGlvbkZyYW1lKCk6IHR5cGVvZiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUge1xyXG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xyXG4gICAgcmV0dXJuICgpID0+IDA7XHJcbiAgfVxyXG4gIGlmICh3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKSB7XHJcbiAgICByZXR1cm4gd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZS5iaW5kKHdpbmRvdyk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBwcmVmaXggPSBhdmFpbGFibGVQcmVmaXhlcy5maWx0ZXIoKGtleSkgPT4gYCR7a2V5fVJlcXVlc3RBbmltYXRpb25GcmFtZWAgaW4gd2luZG93KVswXTtcclxuXHJcbiAgcmV0dXJuIHByZWZpeCA/ICh3aW5kb3cgYXMgYW55KVtgJHtwcmVmaXh9UmVxdWVzdEFuaW1hdGlvbkZyYW1lYF0gOiByZXF1ZXN0QW5pbWF0aW9uRnJhbWVQb2x5ZmlsbCgpO1xyXG59XHJcbi8vIGV4cG9ydCBmdW5jdGlvbiBjYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWUoaWQ6IG51bWJlcik6IGFueSB7XHJcbi8vICAgaWYgKHR5cGVvZiB3aW5kb3cgPT09IFwidW5kZWZpbmVkXCIpIHtcclxuLy8gICAgIHJldHVybiBudWxsO1xyXG4vLyAgIH1cclxuLy8gICBpZiAod2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKSB7XHJcbi8vICAgICByZXR1cm4gd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKGlkKTtcclxuLy8gICB9XHJcbi8vICAgY29uc3QgcHJlZml4ID0gYXZhaWxhYmxlUHJlZml4ZXMuZmlsdGVyKFxyXG4vLyAgICAga2V5ID0+XHJcbi8vICAgICAgIGAke2tleX1DYW5jZWxBbmltYXRpb25GcmFtZWAgaW4gd2luZG93IHx8XHJcbi8vICAgICAgIGAke2tleX1DYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWVgIGluIHdpbmRvd1xyXG4vLyAgIClbMF07XHJcblxyXG4vLyAgIHJldHVybiBwcmVmaXhcclxuLy8gICAgID8gKFxyXG4vLyAgICAgICAgICh3aW5kb3cgYXMgYW55KVtgJHtwcmVmaXh9Q2FuY2VsQW5pbWF0aW9uRnJhbWVgXSB8fFxyXG4vLyAgICAgICAgICh3aW5kb3cgYXMgYW55KVtgJHtwcmVmaXh9Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lYF1cclxuLy8gICAgICAgKVxyXG4vLyAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuLy8gICAgICAgICAuY2FsbCh0aGlzLCBpZClcclxuLy8gICAgIDogY2xlYXJUaW1lb3V0KGlkKTtcclxuLy8gfVxyXG5cclxuZXhwb3J0IGNvbnN0IHJlcUFuaW1GcmFtZSA9IGdldFJlcXVlc3RBbmltYXRpb25GcmFtZSgpO1xyXG4iXX0=
25
+ export const XRequestAnimationFrame = getRequestAnimationFrame();
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY29yZS91dGlsL2FuaW1hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnREFBZ0Q7QUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFFbEQsU0FBUyw2QkFBNkI7SUFDcEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sVUFBVSxRQUE4QjtRQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzNELE1BQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDekIsUUFBUSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQztRQUNsQyxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDZixRQUFRLEdBQUcsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUNqQyxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHdCQUF3QjtJQUMvQixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsdUJBQXVCLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFN0YsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFFLE1BQWMsQ0FBQyxHQUFHLE1BQU0sdUJBQXVCLENBQUMsQ0FBQyxDQUFDLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztBQUN0RyxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsd0JBQXdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzbGludDpkaXNhYmxlOm5vLWFueSB0eXBlZGVmIG5vLWludmFsaWQtdGhpc1xyXG5jb25zdCBhdmFpbGFibGVQcmVmaXhlcyA9IFsnbW96JywgJ21zJywgJ3dlYmtpdCddO1xyXG5cclxuZnVuY3Rpb24gcmVxdWVzdEFuaW1hdGlvbkZyYW1lUG9seWZpbGwoKTogdHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZSB7XHJcbiAgbGV0IGxhc3RUaW1lID0gMDtcclxuICByZXR1cm4gZnVuY3Rpb24gKGNhbGxiYWNrOiBGcmFtZVJlcXVlc3RDYWxsYmFjayk6IGFueSB7XHJcbiAgICBjb25zdCBjdXJyVGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgY29uc3QgdGltZVRvQ2FsbCA9IE1hdGgubWF4KDAsIDE2IC0gKGN1cnJUaW1lIC0gbGFzdFRpbWUpKTtcclxuICAgIGNvbnN0IGlkID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNhbGxiYWNrKGN1cnJUaW1lICsgdGltZVRvQ2FsbCk7XHJcbiAgICB9LCB0aW1lVG9DYWxsKTtcclxuICAgIGxhc3RUaW1lID0gY3VyclRpbWUgKyB0aW1lVG9DYWxsO1xyXG4gICAgcmV0dXJuIGlkO1xyXG4gIH07XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldFJlcXVlc3RBbmltYXRpb25GcmFtZSgpOiB0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHtcclxuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgIHJldHVybiAoKSA9PiAwO1xyXG4gIH1cclxuICBpZiAod2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSkge1xyXG4gICAgcmV0dXJuIHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUuYmluZCh3aW5kb3cpO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgcHJlZml4ID0gYXZhaWxhYmxlUHJlZml4ZXMuZmlsdGVyKChrZXkpID0+IGAke2tleX1SZXF1ZXN0QW5pbWF0aW9uRnJhbWVgIGluIHdpbmRvdylbMF07XHJcblxyXG4gIHJldHVybiBwcmVmaXggPyAod2luZG93IGFzIGFueSlbYCR7cHJlZml4fVJlcXVlc3RBbmltYXRpb25GcmFtZWBdIDogcmVxdWVzdEFuaW1hdGlvbkZyYW1lUG9seWZpbGwoKTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IFhSZXF1ZXN0QW5pbWF0aW9uRnJhbWUgPSBnZXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKTtcclxuIl19
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @zh_CN 该函数将字符串中的驼峰命名法转换为减号命名法
3
+ * - 采用正则表达式匹配字符串中每个连续的大小写字母边界
4
+ * - 将其替换为小写字母和连字符的组合
5
+ * - 最后将整个字符串转换为小写
6
+ * - 例如,`XCamelToKebab('helloWorld')` 将返回 `hello-world`
7
+ * @en_US This function converts string of hump nomenclature kebab nomenclature
8
+ * - Use regular expression match each successive lowercase letters in the string boundary
9
+ * - Replace it with a lower case letters and hyphens
10
+ * - Finally the whole string converted to lowercase
11
+ * - For example, `XCamelToKebab('helloWorld')` returns the `hello-world`
12
+ */
13
+ export function XCamelToKebab(str) {
14
+ return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZWwtdG8ta2ViYWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jb3JlL3V0aWwvY2FtZWwtdG8ta2ViYWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLEdBQVc7SUFDdkMsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0FBQy9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQHpoX0NOIOivpeWHveaVsOWwhuWtl+espuS4suS4reeahOmpvOWzsOWRveWQjeazlei9rOaNouS4uuWHj+WPt+WRveWQjeazlVxyXG4gKiAtIOmHh+eUqOato+WImeihqOi+vuW8j+WMuemFjeWtl+espuS4suS4reavj+S4qui/nue7reeahOWkp+Wwj+WGmeWtl+avjei+ueeVjFxyXG4gKiAtIOWwhuWFtuabv+aNouS4uuWwj+WGmeWtl+avjeWSjOi/nuWtl+espueahOe7hOWQiFxyXG4gKiAtIOacgOWQjuWwhuaVtOS4quWtl+espuS4sui9rOaNouS4uuWwj+WGmVxyXG4gKiAtIOS+i+Wmgu+8jGBYQ2FtZWxUb0tlYmFiKCdoZWxsb1dvcmxkJylgIOWwhui/lOWbniBgaGVsbG8td29ybGRgXHJcbiAqIEBlbl9VUyBUaGlzIGZ1bmN0aW9uIGNvbnZlcnRzIHN0cmluZyBvZiBodW1wIG5vbWVuY2xhdHVyZSBrZWJhYiBub21lbmNsYXR1cmVcclxuICogLSBVc2UgcmVndWxhciBleHByZXNzaW9uIG1hdGNoIGVhY2ggc3VjY2Vzc2l2ZSBsb3dlcmNhc2UgbGV0dGVycyBpbiB0aGUgc3RyaW5nIGJvdW5kYXJ5XHJcbiAqIC0gUmVwbGFjZSBpdCB3aXRoIGEgbG93ZXIgY2FzZSBsZXR0ZXJzIGFuZCBoeXBoZW5zXHJcbiAqIC0gRmluYWxseSB0aGUgd2hvbGUgc3RyaW5nIGNvbnZlcnRlZCB0byBsb3dlcmNhc2VcclxuICogLSBGb3IgZXhhbXBsZSwgYFhDYW1lbFRvS2ViYWIoJ2hlbGxvV29ybGQnKWAgcmV0dXJucyB0aGUgYGhlbGxvLXdvcmxkYFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIFhDYW1lbFRvS2ViYWIoc3RyOiBzdHJpbmcpIHtcclxuICByZXR1cm4gc3RyLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMS0kMicpLnRvTG93ZXJDYXNlKCk7XHJcbn1cclxuIl19
@@ -1,7 +1,15 @@
1
- export function isNotNil(value) {
1
+ /**
2
+ * @zh_CN 判断值不为 null 或 undefined
3
+ * @en_US The judgment value is not null or undefined
4
+ */
5
+ export function XIsNotNil(value) {
2
6
  return typeof value !== 'undefined' && value !== null;
3
7
  }
4
- export function isNil(value) {
8
+ /**
9
+ * @zh_CN 判断值为 null 或 undefined
10
+ * @en_US The judgment value is null or undefined
11
+ */
12
+ export function XIsNil(value) {
5
13
  return typeof value === 'undefined' || value === null;
6
14
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jb3JlL3V0aWwvY2hlY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFFBQVEsQ0FBSSxLQUFRO0lBQ2xDLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDeEQsQ0FBQztBQUVELE1BQU0sVUFBVSxLQUFLLENBQUMsS0FBYztJQUNsQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO0FBQ3hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gaXNOb3ROaWw8VD4odmFsdWU6IFQpOiB2YWx1ZSBpcyBOb25OdWxsYWJsZTxUPiB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsdWUgIT09IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc05pbCh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIG51bGwgfCB1bmRlZmluZWQge1xyXG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICd1bmRlZmluZWQnIHx8IHZhbHVlID09PSBudWxsO1xyXG59XHJcbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jb3JlL3V0aWwvY2hlY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBSSxLQUFRO0lBQ25DLE9BQU8sT0FBTyxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUM7QUFDeEQsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxNQUFNLENBQUMsS0FBYztJQUNuQyxPQUFPLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDO0FBQ3hELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQHpoX0NOIOWIpOaWreWAvOS4jeS4uiBudWxsIOaIliB1bmRlZmluZWRcclxuICogQGVuX1VTIFRoZSBqdWRnbWVudCB2YWx1ZSBpcyBub3QgbnVsbCBvciB1bmRlZmluZWRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBYSXNOb3ROaWw8VD4odmFsdWU6IFQpOiB2YWx1ZSBpcyBOb25OdWxsYWJsZTxUPiB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdmFsdWUgIT09IG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAemhfQ04g5Yik5pat5YC85Li6IG51bGwg5oiWIHVuZGVmaW5lZFxyXG4gKiBAZW5fVVMgVGhlIGp1ZGdtZW50IHZhbHVlIGlzIG51bGwgb3IgdW5kZWZpbmVkXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gWElzTmlsKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgbnVsbCB8IHVuZGVmaW5lZCB7XHJcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdmFsdWUgPT09IG51bGw7XHJcbn1cclxuIl19