@ng-nest/ui 18.0.6 → 18.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/core/config/config.d.ts +6 -0
  2. package/esm2022/affix/affix.component.mjs +4 -4
  3. package/esm2022/affix/affix.module.mjs +4 -4
  4. package/esm2022/affix/affix.property.mjs +3 -3
  5. package/esm2022/alert/alert.component.mjs +5 -5
  6. package/esm2022/alert/alert.module.mjs +4 -4
  7. package/esm2022/alert/alert.property.mjs +3 -3
  8. package/esm2022/anchor/anchor-inner.component.mjs +3 -3
  9. package/esm2022/anchor/anchor.component.mjs +5 -5
  10. package/esm2022/anchor/anchor.module.mjs +4 -4
  11. package/esm2022/anchor/anchor.property.mjs +6 -6
  12. package/esm2022/api/api.component.mjs +4 -4
  13. package/esm2022/api/api.module.mjs +4 -4
  14. package/esm2022/auto-complete/auto-complete-portal.component.mjs +3 -3
  15. package/esm2022/auto-complete/auto-complete.component.mjs +5 -5
  16. package/esm2022/auto-complete/auto-complete.module.mjs +4 -4
  17. package/esm2022/auto-complete/auto-complete.property.mjs +3 -3
  18. package/esm2022/avatar/avatar-group.component.mjs +3 -3
  19. package/esm2022/avatar/avatar.component.mjs +5 -5
  20. package/esm2022/avatar/avatar.module.mjs +4 -4
  21. package/esm2022/avatar/avatar.property.mjs +6 -6
  22. package/esm2022/back-top/back-top.component.mjs +5 -5
  23. package/esm2022/back-top/back-top.module.mjs +4 -4
  24. package/esm2022/back-top/back-top.property.mjs +3 -3
  25. package/esm2022/badge/badge.component.mjs +5 -5
  26. package/esm2022/badge/badge.module.mjs +4 -4
  27. package/esm2022/badge/badge.property.mjs +3 -3
  28. package/esm2022/base-form/base-form.module.mjs +4 -4
  29. package/esm2022/base-form/base-form.property.mjs +6 -6
  30. package/esm2022/button/button.component.mjs +5 -5
  31. package/esm2022/button/button.module.mjs +4 -4
  32. package/esm2022/button/button.property.mjs +6 -6
  33. package/esm2022/button/buttons.component.mjs +4 -4
  34. package/esm2022/calendar/calendar.component.mjs +5 -5
  35. package/esm2022/calendar/calendar.module.mjs +4 -4
  36. package/esm2022/calendar/calendar.property.mjs +3 -3
  37. package/esm2022/card/card.component.mjs +5 -5
  38. package/esm2022/card/card.module.mjs +4 -4
  39. package/esm2022/card/card.property.mjs +3 -3
  40. package/esm2022/carousel/carousel-panel.component.mjs +5 -5
  41. package/esm2022/carousel/carousel.component.mjs +5 -5
  42. package/esm2022/carousel/carousel.module.mjs +4 -4
  43. package/esm2022/carousel/carousel.property.mjs +6 -6
  44. package/esm2022/cascade/cascade-portal.component.mjs +3 -3
  45. package/esm2022/cascade/cascade.component.mjs +5 -5
  46. package/esm2022/cascade/cascade.module.mjs +4 -4
  47. package/esm2022/cascade/cascade.property.mjs +3 -3
  48. package/esm2022/checkbox/checkbox.component.mjs +5 -5
  49. package/esm2022/checkbox/checkbox.module.mjs +4 -4
  50. package/esm2022/checkbox/checkbox.property.mjs +3 -3
  51. package/esm2022/collapse/collapse-panel.component.mjs +5 -5
  52. package/esm2022/collapse/collapse.component.mjs +4 -4
  53. package/esm2022/collapse/collapse.module.mjs +4 -4
  54. package/esm2022/collapse/collapse.property.mjs +6 -6
  55. package/esm2022/color/color.component.mjs +4 -4
  56. package/esm2022/color/color.module.mjs +4 -4
  57. package/esm2022/color/color.property.mjs +3 -3
  58. package/esm2022/color-picker/color-picker-portal.component.mjs +4 -4
  59. package/esm2022/color-picker/color-picker.component.mjs +5 -5
  60. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  61. package/esm2022/color-picker/color-picker.property.mjs +3 -3
  62. package/esm2022/comment/comment-reply.component.mjs +3 -3
  63. package/esm2022/comment/comment.component.mjs +5 -5
  64. package/esm2022/comment/comment.module.mjs +4 -4
  65. package/esm2022/comment/comment.property.mjs +6 -6
  66. package/esm2022/container/aside.component.mjs +4 -4
  67. package/esm2022/container/container.component.mjs +4 -4
  68. package/esm2022/container/container.module.mjs +4 -4
  69. package/esm2022/container/container.property.mjs +12 -12
  70. package/esm2022/container/footer.component.mjs +4 -4
  71. package/esm2022/container/header.component.mjs +4 -4
  72. package/esm2022/container/main.component.mjs +4 -4
  73. package/esm2022/core/config/config.mjs +1 -1
  74. package/esm2022/core/config/config.service.mjs +3 -3
  75. package/esm2022/core/services/http.service.mjs +3 -3
  76. package/esm2022/core/services/preloading-strategy.service.mjs +3 -3
  77. package/esm2022/core/services/storage.service.mjs +3 -3
  78. package/esm2022/core/theme/theme.service.mjs +3 -3
  79. package/esm2022/crumb/crumb.component.mjs +5 -5
  80. package/esm2022/crumb/crumb.module.mjs +4 -4
  81. package/esm2022/crumb/crumb.property.mjs +3 -3
  82. package/esm2022/date-picker/date-picker-portal.component.mjs +3 -3
  83. package/esm2022/date-picker/date-picker.component.mjs +5 -5
  84. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  85. package/esm2022/date-picker/date-picker.property.mjs +18 -18
  86. package/esm2022/date-picker/date-quarter.pipe.mjs +3 -3
  87. package/esm2022/date-picker/date-range-portal.component.mjs +3 -3
  88. package/esm2022/date-picker/date-range.component.mjs +5 -5
  89. package/esm2022/date-picker/picker-date.component.mjs +3 -3
  90. package/esm2022/date-picker/picker-month.component.mjs +3 -3
  91. package/esm2022/date-picker/picker-quarter.component.mjs +3 -3
  92. package/esm2022/date-picker/picker-year.component.mjs +3 -3
  93. package/esm2022/description/description-item.component.mjs +3 -3
  94. package/esm2022/description/description.component.mjs +3 -3
  95. package/esm2022/description/description.module.mjs +4 -4
  96. package/esm2022/description/description.property.mjs +6 -6
  97. package/esm2022/dialog/dialog-container.component.mjs +5 -5
  98. package/esm2022/dialog/dialog-portal.component.mjs +5 -5
  99. package/esm2022/dialog/dialog-portal.directives.mjs +18 -18
  100. package/esm2022/dialog/dialog.component.mjs +5 -5
  101. package/esm2022/dialog/dialog.module.mjs +4 -4
  102. package/esm2022/dialog/dialog.property.mjs +6 -6
  103. package/esm2022/dialog/dialog.service.mjs +3 -3
  104. package/esm2022/doc/doc.component.mjs +4 -4
  105. package/esm2022/doc/doc.module.mjs +4 -4
  106. package/esm2022/drag/drag.directive.mjs +3 -3
  107. package/esm2022/drag/drag.module.mjs +4 -4
  108. package/esm2022/drag/drag.property.mjs +3 -3
  109. package/esm2022/drawer/drawer-container.component.mjs +5 -5
  110. package/esm2022/drawer/drawer-portal.component.mjs +5 -5
  111. package/esm2022/drawer/drawer-portal.directives.mjs +9 -9
  112. package/esm2022/drawer/drawer.component.mjs +5 -5
  113. package/esm2022/drawer/drawer.module.mjs +4 -4
  114. package/esm2022/drawer/drawer.property.mjs +6 -6
  115. package/esm2022/drawer/drawer.service.mjs +3 -3
  116. package/esm2022/dropdown/dropdown-portal.component.mjs +3 -3
  117. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  118. package/esm2022/dropdown/dropdown.module.mjs +4 -4
  119. package/esm2022/dropdown/dropdown.property.mjs +3 -3
  120. package/esm2022/empty/empty.component.mjs +5 -5
  121. package/esm2022/empty/empty.module.mjs +4 -4
  122. package/esm2022/empty/empty.property.mjs +3 -3
  123. package/esm2022/examples/examples.component.mjs +4 -4
  124. package/esm2022/examples/examples.module.mjs +4 -4
  125. package/esm2022/find/find.component.mjs +5 -5
  126. package/esm2022/find/find.module.mjs +4 -4
  127. package/esm2022/find/find.property.mjs +3 -3
  128. package/esm2022/form/control.component.mjs +3 -3
  129. package/esm2022/form/form.component.mjs +5 -5
  130. package/esm2022/form/form.module.mjs +4 -4
  131. package/esm2022/form/form.property.mjs +6 -6
  132. package/esm2022/highlight/highlight.component.mjs +5 -5
  133. package/esm2022/highlight/highlight.module.mjs +4 -4
  134. package/esm2022/highlight/highlight.property.mjs +3 -3
  135. package/esm2022/highlight/highlight.service.mjs +3 -3
  136. package/esm2022/i18n/i18n.directive.mjs +3 -3
  137. package/esm2022/i18n/i18n.module.mjs +4 -4
  138. package/esm2022/i18n/i18n.pipe.mjs +3 -3
  139. package/esm2022/i18n/i18n.property.mjs +1 -1
  140. package/esm2022/i18n/i18n.service.mjs +3 -3
  141. package/esm2022/i18n/languages/ar_EG.mjs +8 -2
  142. package/esm2022/i18n/languages/bg_BG.mjs +8 -2
  143. package/esm2022/i18n/languages/ca_ES.mjs +8 -2
  144. package/esm2022/i18n/languages/cs_CZ.mjs +8 -2
  145. package/esm2022/i18n/languages/da_DK.mjs +8 -2
  146. package/esm2022/i18n/languages/de_DE.mjs +8 -2
  147. package/esm2022/i18n/languages/el_GR.mjs +8 -2
  148. package/esm2022/i18n/languages/en_GB.mjs +8 -2
  149. package/esm2022/i18n/languages/en_US.mjs +8 -2
  150. package/esm2022/i18n/languages/es_ES.mjs +8 -2
  151. package/esm2022/i18n/languages/et_EE.mjs +8 -2
  152. package/esm2022/i18n/languages/fa_IR.mjs +8 -2
  153. package/esm2022/i18n/languages/fi_FI.mjs +8 -2
  154. package/esm2022/i18n/languages/fr_BE.mjs +8 -2
  155. package/esm2022/i18n/languages/fr_FR.mjs +8 -2
  156. package/esm2022/i18n/languages/he_IL.mjs +8 -2
  157. package/esm2022/i18n/languages/hi_IN.mjs +8 -2
  158. package/esm2022/i18n/languages/hr_HR.mjs +8 -2
  159. package/esm2022/i18n/languages/hu_HU.mjs +8 -2
  160. package/esm2022/i18n/languages/hy_AM.mjs +8 -2
  161. package/esm2022/i18n/languages/id_ID.mjs +8 -2
  162. package/esm2022/i18n/languages/is_IS.mjs +8 -2
  163. package/esm2022/i18n/languages/it_IT.mjs +8 -2
  164. package/esm2022/i18n/languages/ja_JP.mjs +8 -2
  165. package/esm2022/i18n/languages/ka_GE.mjs +8 -2
  166. package/esm2022/i18n/languages/kn_IN.mjs +8 -2
  167. package/esm2022/i18n/languages/ko_KR.mjs +8 -2
  168. package/esm2022/i18n/languages/ku_IQ.mjs +8 -2
  169. package/esm2022/i18n/languages/lv_LV.mjs +8 -2
  170. package/esm2022/i18n/languages/mn_MN.mjs +8 -2
  171. package/esm2022/i18n/languages/ms_MY.mjs +8 -2
  172. package/esm2022/i18n/languages/nb_NO.mjs +8 -2
  173. package/esm2022/i18n/languages/ne_NP.mjs +8 -2
  174. package/esm2022/i18n/languages/nl_BE.mjs +8 -2
  175. package/esm2022/i18n/languages/nl_NL.mjs +8 -2
  176. package/esm2022/i18n/languages/pl_PL.mjs +8 -2
  177. package/esm2022/i18n/languages/pt_BR.mjs +8 -2
  178. package/esm2022/i18n/languages/pt_PT.mjs +8 -2
  179. package/esm2022/i18n/languages/ro_RO.mjs +8 -2
  180. package/esm2022/i18n/languages/ru_RU.mjs +8 -2
  181. package/esm2022/i18n/languages/sk_SK.mjs +8 -2
  182. package/esm2022/i18n/languages/sl_SI.mjs +8 -2
  183. package/esm2022/i18n/languages/sr_RS.mjs +8 -2
  184. package/esm2022/i18n/languages/sv_SE.mjs +8 -2
  185. package/esm2022/i18n/languages/ta_IN.mjs +8 -2
  186. package/esm2022/i18n/languages/th_TH.mjs +8 -2
  187. package/esm2022/i18n/languages/tr_TR.mjs +8 -2
  188. package/esm2022/i18n/languages/uk_UA.mjs +8 -2
  189. package/esm2022/i18n/languages/vi_VN.mjs +8 -2
  190. package/esm2022/i18n/languages/zh_CN.mjs +8 -2
  191. package/esm2022/i18n/languages/zh_TW.mjs +8 -2
  192. package/esm2022/icon/icon.component.mjs +4 -4
  193. package/esm2022/icon/icon.module.mjs +4 -4
  194. package/esm2022/icon/icon.property.mjs +3 -3
  195. package/esm2022/icon/icon.service.mjs +3 -3
  196. package/esm2022/image/image-group.component.mjs +3 -3
  197. package/esm2022/image/image-preview.component.mjs +5 -5
  198. package/esm2022/image/image.component.mjs +5 -5
  199. package/esm2022/image/image.module.mjs +4 -4
  200. package/esm2022/image/image.property.mjs +6 -6
  201. package/esm2022/inner/inner.component.mjs +4 -4
  202. package/esm2022/inner/inner.module.mjs +4 -4
  203. package/esm2022/inner/inner.property.mjs +3 -3
  204. package/esm2022/input/input-group.component.mjs +3 -3
  205. package/esm2022/input/input.component.mjs +5 -5
  206. package/esm2022/input/input.module.mjs +4 -4
  207. package/esm2022/input/input.property.mjs +6 -6
  208. package/esm2022/input-number/input-number.component.mjs +5 -5
  209. package/esm2022/input-number/input-number.module.mjs +4 -4
  210. package/esm2022/input-number/input-number.property.mjs +3 -3
  211. package/esm2022/keyword/keyword.directive.mjs +3 -3
  212. package/esm2022/keyword/keyword.module.mjs +4 -4
  213. package/esm2022/keyword/keyword.property.mjs +3 -3
  214. package/esm2022/layout/col.component.mjs +3 -3
  215. package/esm2022/layout/layout.module.mjs +4 -4
  216. package/esm2022/layout/layout.property.mjs +6 -6
  217. package/esm2022/layout/row.component.mjs +3 -3
  218. package/esm2022/link/link.component.mjs +5 -5
  219. package/esm2022/link/link.module.mjs +4 -4
  220. package/esm2022/link/link.property.mjs +3 -3
  221. package/esm2022/list/list-drop-group.directive.mjs +3 -3
  222. package/esm2022/list/list-option.component.mjs +3 -3
  223. package/esm2022/list/list.component.mjs +11 -11
  224. package/esm2022/list/list.module.mjs +4 -4
  225. package/esm2022/list/list.property.mjs +6 -6
  226. package/esm2022/loading/loading.component.mjs +5 -5
  227. package/esm2022/loading/loading.module.mjs +4 -4
  228. package/esm2022/loading/loading.property.mjs +3 -3
  229. package/esm2022/menu/menu-node.component.mjs +3 -3
  230. package/esm2022/menu/menu.component.mjs +3 -3
  231. package/esm2022/menu/menu.module.mjs +4 -4
  232. package/esm2022/menu/menu.property.mjs +6 -6
  233. package/esm2022/message/message.component.mjs +3 -3
  234. package/esm2022/message/message.module.mjs +4 -4
  235. package/esm2022/message/message.service.mjs +3 -3
  236. package/esm2022/message-box/message-box.component.mjs +3 -3
  237. package/esm2022/message-box/message-box.module.mjs +4 -4
  238. package/esm2022/message-box/message-box.service.mjs +3 -3
  239. package/esm2022/notification/notification.component.mjs +3 -3
  240. package/esm2022/notification/notification.module.mjs +4 -4
  241. package/esm2022/notification/notification.service.mjs +3 -3
  242. package/esm2022/outlet/outlet.directive.mjs +3 -3
  243. package/esm2022/outlet/outlet.module.mjs +4 -4
  244. package/esm2022/page-header/page-header.component.mjs +5 -5
  245. package/esm2022/page-header/page-header.module.mjs +4 -4
  246. package/esm2022/page-header/page-header.property.mjs +3 -3
  247. package/esm2022/pagination/pagination.component.mjs +91 -29
  248. package/esm2022/pagination/pagination.module.mjs +4 -4
  249. package/esm2022/pagination/pagination.property.mjs +23 -8
  250. package/esm2022/pattern/pattern.component.mjs +4 -4
  251. package/esm2022/pattern/pattern.module.mjs +4 -4
  252. package/esm2022/popconfirm/popconfirm.component.mjs +5 -5
  253. package/esm2022/popconfirm/popconfirm.module.mjs +4 -4
  254. package/esm2022/popconfirm/popconfirm.property.mjs +3 -3
  255. package/esm2022/popover/popover-portal.component.mjs +5 -5
  256. package/esm2022/popover/popover.directive.mjs +3 -3
  257. package/esm2022/popover/popover.module.mjs +4 -4
  258. package/esm2022/popover/popover.property.mjs +3 -3
  259. package/esm2022/portal/portal.module.mjs +4 -4
  260. package/esm2022/portal/portal.service.mjs +3 -3
  261. package/esm2022/progress/progress.component.mjs +5 -5
  262. package/esm2022/progress/progress.module.mjs +4 -4
  263. package/esm2022/progress/progress.property.mjs +3 -3
  264. package/esm2022/radio/radio.component.mjs +5 -5
  265. package/esm2022/radio/radio.module.mjs +4 -4
  266. package/esm2022/radio/radio.property.mjs +3 -3
  267. package/esm2022/rate/rate.component.mjs +5 -5
  268. package/esm2022/rate/rate.module.mjs +4 -4
  269. package/esm2022/rate/rate.property.mjs +3 -3
  270. package/esm2022/resizable/resizable.directive.mjs +3 -3
  271. package/esm2022/resizable/resizable.module.mjs +4 -4
  272. package/esm2022/resizable/resizable.property.mjs +3 -3
  273. package/esm2022/result/result.component.mjs +5 -5
  274. package/esm2022/result/result.module.mjs +4 -4
  275. package/esm2022/result/result.property.mjs +3 -3
  276. package/esm2022/ripple/ripple.directive.mjs +3 -3
  277. package/esm2022/ripple/ripple.module.mjs +4 -4
  278. package/esm2022/ripple/ripple.property.mjs +3 -3
  279. package/esm2022/select/select-portal.component.mjs +3 -3
  280. package/esm2022/select/select.component.mjs +5 -5
  281. package/esm2022/select/select.module.mjs +4 -4
  282. package/esm2022/select/select.property.mjs +3 -3
  283. package/esm2022/skeleton/skeleton.component.mjs +3 -3
  284. package/esm2022/skeleton/skeleton.module.mjs +4 -4
  285. package/esm2022/skeleton/skeleton.property.mjs +3 -3
  286. package/esm2022/slider/slider.component.mjs +5 -5
  287. package/esm2022/slider/slider.module.mjs +4 -4
  288. package/esm2022/slider/slider.property.mjs +3 -3
  289. package/esm2022/slider-select/slider-select.component.mjs +5 -5
  290. package/esm2022/slider-select/slider-select.module.mjs +4 -4
  291. package/esm2022/slider-select/slider-select.property.mjs +3 -3
  292. package/esm2022/statistic/countdown.component.mjs +3 -3
  293. package/esm2022/statistic/statistic.component.mjs +3 -3
  294. package/esm2022/statistic/statistic.module.mjs +4 -4
  295. package/esm2022/statistic/statistic.property.mjs +6 -6
  296. package/esm2022/steps/steps.component.mjs +5 -5
  297. package/esm2022/steps/steps.module.mjs +4 -4
  298. package/esm2022/steps/steps.property.mjs +3 -3
  299. package/esm2022/switch/switch.component.mjs +5 -5
  300. package/esm2022/switch/switch.module.mjs +4 -4
  301. package/esm2022/switch/switch.property.mjs +3 -3
  302. package/esm2022/table/table-body.component.mjs +3 -3
  303. package/esm2022/table/table-foot.component.mjs +3 -3
  304. package/esm2022/table/table-head.component.mjs +4 -4
  305. package/esm2022/table/table.component.mjs +5 -5
  306. package/esm2022/table/table.module.mjs +4 -4
  307. package/esm2022/table/table.property.mjs +28 -13
  308. package/esm2022/tabs/tab-content.component.mjs +3 -3
  309. package/esm2022/tabs/tab-link.directive.mjs +6 -6
  310. package/esm2022/tabs/tab.component.mjs +3 -3
  311. package/esm2022/tabs/tabs.component.mjs +5 -5
  312. package/esm2022/tabs/tabs.module.mjs +4 -4
  313. package/esm2022/tabs/tabs.property.mjs +6 -6
  314. package/esm2022/tag/tag.component.mjs +5 -5
  315. package/esm2022/tag/tag.module.mjs +4 -4
  316. package/esm2022/tag/tag.property.mjs +3 -3
  317. package/esm2022/text-retract/text-retract.component.mjs +5 -5
  318. package/esm2022/text-retract/text-retract.module.mjs +4 -4
  319. package/esm2022/text-retract/text-retract.property.mjs +3 -3
  320. package/esm2022/textarea/textarea.component.mjs +5 -5
  321. package/esm2022/textarea/textarea.module.mjs +4 -4
  322. package/esm2022/textarea/textarea.property.mjs +3 -3
  323. package/esm2022/theme/theme.component.mjs +5 -5
  324. package/esm2022/theme/theme.module.mjs +4 -4
  325. package/esm2022/theme/theme.property.mjs +3 -3
  326. package/esm2022/time-ago/time-ago.module.mjs +4 -4
  327. package/esm2022/time-ago/time-ago.pipe.mjs +3 -3
  328. package/esm2022/time-picker/time-picker-frame.component.mjs +5 -5
  329. package/esm2022/time-picker/time-picker-portal.component.mjs +3 -3
  330. package/esm2022/time-picker/time-picker.component.mjs +5 -5
  331. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  332. package/esm2022/time-picker/time-picker.property.mjs +3 -3
  333. package/esm2022/time-range/time-range.module.mjs +4 -4
  334. package/esm2022/time-range/time-range.pipe.mjs +3 -3
  335. package/esm2022/timeline/timeline.component.mjs +5 -5
  336. package/esm2022/timeline/timeline.module.mjs +4 -4
  337. package/esm2022/timeline/timeline.property.mjs +3 -3
  338. package/esm2022/tooltip/tooltip-portal.component.mjs +5 -5
  339. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  340. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  341. package/esm2022/tooltip/tooltip.property.mjs +3 -3
  342. package/esm2022/transfer/transfer.component.mjs +5 -5
  343. package/esm2022/transfer/transfer.module.mjs +4 -4
  344. package/esm2022/transfer/transfer.property.mjs +3 -3
  345. package/esm2022/tree/tree-node.component.mjs +5 -5
  346. package/esm2022/tree/tree.component.mjs +4 -4
  347. package/esm2022/tree/tree.module.mjs +4 -4
  348. package/esm2022/tree/tree.property.mjs +6 -6
  349. package/esm2022/tree/tree.service.mjs +3 -3
  350. package/esm2022/tree-file/tree-file.component.mjs +5 -5
  351. package/esm2022/tree-file/tree-file.module.mjs +4 -4
  352. package/esm2022/tree-file/tree-file.property.mjs +3 -3
  353. package/esm2022/tree-select/tree-select-portal.component.mjs +3 -3
  354. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  355. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  356. package/esm2022/tree-select/tree-select.property.mjs +3 -3
  357. package/esm2022/typography/typography.component.mjs +4 -4
  358. package/esm2022/typography/typography.module.mjs +4 -4
  359. package/esm2022/typography/typography.property.mjs +3 -3
  360. package/esm2022/upload/upload-portal.component.mjs +5 -5
  361. package/esm2022/upload/upload.component.mjs +5 -5
  362. package/esm2022/upload/upload.module.mjs +4 -4
  363. package/esm2022/upload/upload.property.mjs +3 -3
  364. package/fesm2022/ng-nest-ui-affix.mjs +11 -11
  365. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  366. package/fesm2022/ng-nest-ui-alert.mjs +11 -11
  367. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  368. package/fesm2022/ng-nest-ui-anchor.mjs +17 -17
  369. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  370. package/fesm2022/ng-nest-ui-api.mjs +8 -8
  371. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  372. package/fesm2022/ng-nest-ui-auto-complete.mjs +14 -14
  373. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  374. package/fesm2022/ng-nest-ui-avatar.mjs +17 -17
  375. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  376. package/fesm2022/ng-nest-ui-back-top.mjs +11 -11
  377. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  378. package/fesm2022/ng-nest-ui-badge.mjs +11 -11
  379. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  380. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  381. package/fesm2022/ng-nest-ui-button.mjs +18 -18
  382. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  383. package/fesm2022/ng-nest-ui-calendar.mjs +11 -11
  384. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  385. package/fesm2022/ng-nest-ui-card.mjs +11 -11
  386. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  387. package/fesm2022/ng-nest-ui-carousel.mjs +18 -18
  388. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  389. package/fesm2022/ng-nest-ui-cascade.mjs +14 -14
  390. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  391. package/fesm2022/ng-nest-ui-checkbox.mjs +11 -11
  392. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  393. package/fesm2022/ng-nest-ui-collapse.mjs +18 -18
  394. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  395. package/fesm2022/ng-nest-ui-color-picker.mjs +14 -14
  396. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  397. package/fesm2022/ng-nest-ui-color.mjs +11 -11
  398. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  399. package/fesm2022/ng-nest-ui-comment.mjs +17 -17
  400. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  401. package/fesm2022/ng-nest-ui-container.mjs +36 -36
  402. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  403. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  404. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  405. package/fesm2022/ng-nest-ui-crumb.mjs +11 -11
  406. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  407. package/fesm2022/ng-nest-ui-date-picker.mjs +51 -51
  408. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  409. package/fesm2022/ng-nest-ui-description.mjs +16 -16
  410. package/fesm2022/ng-nest-ui-dialog.mjs +44 -44
  411. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  412. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  413. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  414. package/fesm2022/ng-nest-ui-drag.mjs +10 -10
  415. package/fesm2022/ng-nest-ui-drawer.mjs +35 -35
  416. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  417. package/fesm2022/ng-nest-ui-dropdown.mjs +14 -14
  418. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  419. package/fesm2022/ng-nest-ui-empty.mjs +11 -11
  420. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  421. package/fesm2022/ng-nest-ui-examples.mjs +8 -8
  422. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  423. package/fesm2022/ng-nest-ui-find.mjs +11 -11
  424. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  425. package/fesm2022/ng-nest-ui-form.mjs +17 -17
  426. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  427. package/fesm2022/ng-nest-ui-highlight.mjs +14 -14
  428. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  429. package/fesm2022/ng-nest-ui-i18n.mjs +370 -64
  430. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  431. package/fesm2022/ng-nest-ui-icon.mjs +14 -14
  432. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  433. package/fesm2022/ng-nest-ui-image.mjs +21 -21
  434. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  435. package/fesm2022/ng-nest-ui-inner.mjs +11 -11
  436. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  437. package/fesm2022/ng-nest-ui-input-number.mjs +11 -11
  438. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  439. package/fesm2022/ng-nest-ui-input.mjs +17 -17
  440. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  441. package/fesm2022/ng-nest-ui-keyword.mjs +10 -10
  442. package/fesm2022/ng-nest-ui-layout.mjs +16 -16
  443. package/fesm2022/ng-nest-ui-link.mjs +11 -11
  444. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  445. package/fesm2022/ng-nest-ui-list.mjs +26 -26
  446. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  447. package/fesm2022/ng-nest-ui-loading.mjs +11 -11
  448. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  449. package/fesm2022/ng-nest-ui-menu.mjs +16 -16
  450. package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
  451. package/fesm2022/ng-nest-ui-message.mjs +10 -10
  452. package/fesm2022/ng-nest-ui-notification.mjs +10 -10
  453. package/fesm2022/ng-nest-ui-outlet.mjs +7 -7
  454. package/fesm2022/ng-nest-ui-page-header.mjs +11 -11
  455. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  456. package/fesm2022/ng-nest-ui-pagination.mjs +116 -39
  457. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  458. package/fesm2022/ng-nest-ui-pattern.mjs +8 -8
  459. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  460. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -11
  461. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  462. package/fesm2022/ng-nest-ui-popover.mjs +14 -14
  463. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  464. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  465. package/fesm2022/ng-nest-ui-progress.mjs +11 -11
  466. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  467. package/fesm2022/ng-nest-ui-radio.mjs +11 -11
  468. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  469. package/fesm2022/ng-nest-ui-rate.mjs +11 -11
  470. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  471. package/fesm2022/ng-nest-ui-resizable.mjs +10 -10
  472. package/fesm2022/ng-nest-ui-result.mjs +11 -11
  473. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  474. package/fesm2022/ng-nest-ui-ripple.mjs +10 -10
  475. package/fesm2022/ng-nest-ui-select.mjs +14 -14
  476. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  477. package/fesm2022/ng-nest-ui-skeleton.mjs +10 -10
  478. package/fesm2022/ng-nest-ui-slider-select.mjs +11 -11
  479. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  480. package/fesm2022/ng-nest-ui-slider.mjs +11 -11
  481. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  482. package/fesm2022/ng-nest-ui-statistic.mjs +16 -16
  483. package/fesm2022/ng-nest-ui-steps.mjs +11 -11
  484. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  485. package/fesm2022/ng-nest-ui-switch.mjs +11 -11
  486. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  487. package/fesm2022/ng-nest-ui-table.mjs +44 -29
  488. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  489. package/fesm2022/ng-nest-ui-tabs.mjs +26 -26
  490. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  491. package/fesm2022/ng-nest-ui-tag.mjs +11 -11
  492. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  493. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -11
  494. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  495. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  496. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  497. package/fesm2022/ng-nest-ui-theme.mjs +11 -11
  498. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  499. package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
  500. package/fesm2022/ng-nest-ui-time-picker.mjs +18 -18
  501. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  502. package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
  503. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  504. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  505. package/fesm2022/ng-nest-ui-tooltip.mjs +14 -14
  506. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  507. package/fesm2022/ng-nest-ui-transfer.mjs +11 -11
  508. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  509. package/fesm2022/ng-nest-ui-tree-file.mjs +11 -11
  510. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  511. package/fesm2022/ng-nest-ui-tree-select.mjs +14 -14
  512. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  513. package/fesm2022/ng-nest-ui-tree.mjs +20 -20
  514. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  515. package/fesm2022/ng-nest-ui-typography.mjs +11 -11
  516. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  517. package/fesm2022/ng-nest-ui-upload.mjs +15 -15
  518. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  519. package/i18n/i18n.property.d.ts +6 -0
  520. package/i18n/languages/ar_EG.d.ts +6 -0
  521. package/i18n/languages/bg_BG.d.ts +6 -0
  522. package/i18n/languages/ca_ES.d.ts +6 -0
  523. package/i18n/languages/cs_CZ.d.ts +6 -0
  524. package/i18n/languages/da_DK.d.ts +6 -0
  525. package/i18n/languages/de_DE.d.ts +6 -0
  526. package/i18n/languages/el_GR.d.ts +6 -0
  527. package/i18n/languages/en_GB.d.ts +6 -0
  528. package/i18n/languages/en_US.d.ts +6 -0
  529. package/i18n/languages/es_ES.d.ts +6 -0
  530. package/i18n/languages/et_EE.d.ts +6 -0
  531. package/i18n/languages/fa_IR.d.ts +6 -0
  532. package/i18n/languages/fi_FI.d.ts +6 -0
  533. package/i18n/languages/fr_BE.d.ts +6 -0
  534. package/i18n/languages/fr_FR.d.ts +6 -0
  535. package/i18n/languages/he_IL.d.ts +6 -0
  536. package/i18n/languages/hi_IN.d.ts +6 -0
  537. package/i18n/languages/hr_HR.d.ts +6 -0
  538. package/i18n/languages/hu_HU.d.ts +6 -0
  539. package/i18n/languages/hy_AM.d.ts +6 -0
  540. package/i18n/languages/id_ID.d.ts +6 -0
  541. package/i18n/languages/is_IS.d.ts +6 -0
  542. package/i18n/languages/it_IT.d.ts +6 -0
  543. package/i18n/languages/ja_JP.d.ts +6 -0
  544. package/i18n/languages/ka_GE.d.ts +6 -0
  545. package/i18n/languages/kn_IN.d.ts +6 -0
  546. package/i18n/languages/ko_KR.d.ts +6 -0
  547. package/i18n/languages/ku_IQ.d.ts +6 -0
  548. package/i18n/languages/lv_LV.d.ts +6 -0
  549. package/i18n/languages/mn_MN.d.ts +6 -0
  550. package/i18n/languages/ms_MY.d.ts +6 -0
  551. package/i18n/languages/nb_NO.d.ts +6 -0
  552. package/i18n/languages/ne_NP.d.ts +6 -0
  553. package/i18n/languages/nl_BE.d.ts +6 -0
  554. package/i18n/languages/nl_NL.d.ts +6 -0
  555. package/i18n/languages/pl_PL.d.ts +6 -0
  556. package/i18n/languages/pt_BR.d.ts +6 -0
  557. package/i18n/languages/pt_PT.d.ts +6 -0
  558. package/i18n/languages/ro_RO.d.ts +6 -0
  559. package/i18n/languages/ru_RU.d.ts +6 -0
  560. package/i18n/languages/sk_SK.d.ts +6 -0
  561. package/i18n/languages/sl_SI.d.ts +6 -0
  562. package/i18n/languages/sr_RS.d.ts +6 -0
  563. package/i18n/languages/sv_SE.d.ts +6 -0
  564. package/i18n/languages/ta_IN.d.ts +6 -0
  565. package/i18n/languages/th_TH.d.ts +6 -0
  566. package/i18n/languages/tr_TR.d.ts +6 -0
  567. package/i18n/languages/uk_UA.d.ts +6 -0
  568. package/i18n/languages/vi_VN.d.ts +6 -0
  569. package/i18n/languages/zh_CN.d.ts +6 -0
  570. package/i18n/languages/zh_TW.d.ts +6 -0
  571. package/package.json +135 -135
  572. package/pagination/pagination.component.d.ts +24 -0
  573. package/pagination/pagination.property.d.ts +31 -5
  574. package/style/mixins/reset.scss +4 -2
  575. package/table/table.property.d.ts +17 -1
@@ -243,10 +243,10 @@ export class XButtonProperty extends XPropertyFunction(X_BUTTON_CONFIG_NAME) {
243
243
  */
244
244
  this.attrType = input(this.config?.attrType ?? 'button');
245
245
  }
246
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
247
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.6", type: XButtonProperty, selector: "x-button-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, onlyIcon: { classPropertyName: "onlyIcon", publicName: "onlyIcon", isSignal: true, isRequired: false, transformFunction: null }, activated: { classPropertyName: "activated", publicName: "activated", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: true, isRequired: false, transformFunction: null }, flat: { classPropertyName: "flat", publicName: "flat", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, round: { classPropertyName: "round", publicName: "round", isSignal: true, isRequired: false, transformFunction: null }, circle: { classPropertyName: "circle", publicName: "circle", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: true, isRequired: false, transformFunction: null }, attrType: { classPropertyName: "attrType", publicName: "attrType", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
246
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
247
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XButtonProperty, selector: "x-button-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, onlyIcon: { classPropertyName: "onlyIcon", publicName: "onlyIcon", isSignal: true, isRequired: false, transformFunction: null }, activated: { classPropertyName: "activated", publicName: "activated", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, plain: { classPropertyName: "plain", publicName: "plain", isSignal: true, isRequired: false, transformFunction: null }, flat: { classPropertyName: "flat", publicName: "flat", isSignal: true, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: false, transformFunction: null }, round: { classPropertyName: "round", publicName: "round", isSignal: true, isRequired: false, transformFunction: null }, circle: { classPropertyName: "circle", publicName: "circle", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, closable: { classPropertyName: "closable", publicName: "closable", isSignal: true, isRequired: false, transformFunction: null }, attrType: { classPropertyName: "attrType", publicName: "attrType", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
248
248
  }
249
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonProperty, decorators: [{
249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonProperty, decorators: [{
250
250
  type: Component,
251
251
  args: [{ selector: `${XButtonPrefix}-property`, template: '' }]
252
252
  }] });
@@ -321,10 +321,10 @@ export class XButtonsProperty extends XPropertyFunction(X_BUTTONS_CONFIG_NAME) {
321
321
  */
322
322
  this.round = input(this.config?.round ?? false, { transform: XToBoolean });
323
323
  }
324
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonsProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
325
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.6", type: XButtonsProperty, selector: "x-buttons-property", inputs: { space: { classPropertyName: "space", publicName: "space", isSignal: true, isRequired: false, transformFunction: null }, hiddenBorder: { classPropertyName: "hiddenBorder", publicName: "hiddenBorder", isSignal: true, isRequired: false, transformFunction: null }, boxShadow: { classPropertyName: "boxShadow", publicName: "boxShadow", isSignal: true, isRequired: false, transformFunction: null }, round: { classPropertyName: "round", publicName: "round", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
324
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonsProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
325
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XButtonsProperty, selector: "x-buttons-property", inputs: { space: { classPropertyName: "space", publicName: "space", isSignal: true, isRequired: false, transformFunction: null }, hiddenBorder: { classPropertyName: "hiddenBorder", publicName: "hiddenBorder", isSignal: true, isRequired: false, transformFunction: null }, boxShadow: { classPropertyName: "boxShadow", publicName: "boxShadow", isSignal: true, isRequired: false, transformFunction: null }, round: { classPropertyName: "round", publicName: "round", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
326
326
  }
327
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonsProperty, decorators: [{
327
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonsProperty, decorators: [{
328
328
  type: Component,
329
329
  args: [{ selector: `${XButtonsPrefix}-property`, template: '' }]
330
330
  }] });
@@ -24,12 +24,12 @@ export class XButtonsComponent extends XButtonsProperty {
24
24
  get getMarginRight() {
25
25
  return '-' + this.space();
26
26
  }
27
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
28
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.6", type: XButtonsComponent, isStandalone: true, selector: "x-buttons", host: { properties: { "class": "this.className", "class.x-buttons-space": "this.getSpace", "class.x-buttons-hiddenBorder": "this.getHiddenBorder", "class.x-buttons-box-shadow": "this.getBoxShadow", "class.x-buttons-round": "this.getRound", "style.marginLeft": "this.getMarginLeft", "style.marginRight": "this.getMarginRight" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-buttons{margin:0;padding:0;display:inline-flex;position:relative}.x-buttons:not(.x-buttons-space)>x-button .x-button{border-radius:0;position:relative;box-shadow:none!important}.x-buttons:not(.x-buttons-space)>x-button .x-button-round{border-radius:0}.x-buttons:not(.x-buttons-space)>x-button .x-button:focus,.x-buttons:not(.x-buttons-space)>x-button .x-button-activated{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:hover{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:active{z-index:2}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button-round{border-top-left-radius:5rem;border-bottom-left-radius:5rem}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button-round{border-top-right-radius:5rem;border-bottom-right-radius:5rem}.x-buttons-hiddenBorder>x-button .x-button{border:none;padding:0 var(--x-padding-small);background-color:transparent;box-shadow:none!important}.x-buttons-hiddenBorder>x-button .x-button-icon>.x-icon{font-size:1.125rem}.x-buttons-hiddenBorder>x-button .x-button-icon:hover{color:var(--x-primary)}.x-buttons-box-shadow:not(.x-buttons-space){border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-buttons-round:not(.x-buttons-space){border-radius:5rem}.x-buttons>x-button:not(:first-child)>.x-button-primary{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-success{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-warning{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-danger{border-left-color:#fff3}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
27
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
28
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: XButtonsComponent, isStandalone: true, selector: "x-buttons", host: { properties: { "class": "this.className", "class.x-buttons-space": "this.getSpace", "class.x-buttons-hiddenBorder": "this.getHiddenBorder", "class.x-buttons-box-shadow": "this.getBoxShadow", "class.x-buttons-round": "this.getRound", "style.marginLeft": "this.getMarginLeft", "style.marginRight": "this.getMarginRight" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-buttons{margin:0;padding:0}.x-buttons{display:inline-flex;position:relative}.x-buttons:not(.x-buttons-space)>x-button .x-button{border-radius:0;position:relative;box-shadow:none!important}.x-buttons:not(.x-buttons-space)>x-button .x-button-round{border-radius:0}.x-buttons:not(.x-buttons-space)>x-button .x-button:focus,.x-buttons:not(.x-buttons-space)>x-button .x-button-activated{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:hover{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:active{z-index:2}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button-round{border-top-left-radius:5rem;border-bottom-left-radius:5rem}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button-round{border-top-right-radius:5rem;border-bottom-right-radius:5rem}.x-buttons-hiddenBorder>x-button .x-button{border:none;padding:0 var(--x-padding-small);background-color:transparent;box-shadow:none!important}.x-buttons-hiddenBorder>x-button .x-button-icon>.x-icon{font-size:1.125rem}.x-buttons-hiddenBorder>x-button .x-button-icon:hover{color:var(--x-primary)}.x-buttons-box-shadow:not(.x-buttons-space){border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-buttons-round:not(.x-buttons-space){border-radius:5rem}.x-buttons>x-button:not(:first-child)>.x-button-primary{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-success{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-warning{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-danger{border-left-color:#fff3}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XButtonsComponent, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XButtonsComponent, decorators: [{
31
31
  type: Component,
32
- args: [{ selector: `${XButtonsPrefix}`, standalone: true, template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-buttons{margin:0;padding:0;display:inline-flex;position:relative}.x-buttons:not(.x-buttons-space)>x-button .x-button{border-radius:0;position:relative;box-shadow:none!important}.x-buttons:not(.x-buttons-space)>x-button .x-button-round{border-radius:0}.x-buttons:not(.x-buttons-space)>x-button .x-button:focus,.x-buttons:not(.x-buttons-space)>x-button .x-button-activated{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:hover{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:active{z-index:2}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button-round{border-top-left-radius:5rem;border-bottom-left-radius:5rem}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button-round{border-top-right-radius:5rem;border-bottom-right-radius:5rem}.x-buttons-hiddenBorder>x-button .x-button{border:none;padding:0 var(--x-padding-small);background-color:transparent;box-shadow:none!important}.x-buttons-hiddenBorder>x-button .x-button-icon>.x-icon{font-size:1.125rem}.x-buttons-hiddenBorder>x-button .x-button-icon:hover{color:var(--x-primary)}.x-buttons-box-shadow:not(.x-buttons-space){border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-buttons-round:not(.x-buttons-space){border-radius:5rem}.x-buttons>x-button:not(:first-child)>.x-button-primary{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-success{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-warning{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-danger{border-left-color:#fff3}\n"] }]
32
+ args: [{ selector: `${XButtonsPrefix}`, standalone: true, template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-2.5rem}to{stroke-dasharray:90,150;stroke-dashoffset:-7.5rem}}.x-buttons{margin:0;padding:0}.x-buttons{display:inline-flex;position:relative}.x-buttons:not(.x-buttons-space)>x-button .x-button{border-radius:0;position:relative;box-shadow:none!important}.x-buttons:not(.x-buttons-space)>x-button .x-button-round{border-radius:0}.x-buttons:not(.x-buttons-space)>x-button .x-button:focus,.x-buttons:not(.x-buttons-space)>x-button .x-button-activated{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:hover{z-index:1}.x-buttons:not(.x-buttons-space)>x-button:active{z-index:2}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button{border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:first-child .x-button-round{border-top-left-radius:5rem;border-bottom-left-radius:5rem}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button{border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-buttons:not(.x-buttons-space)>x-button:last-child .x-button-round{border-top-right-radius:5rem;border-bottom-right-radius:5rem}.x-buttons-hiddenBorder>x-button .x-button{border:none;padding:0 var(--x-padding-small);background-color:transparent;box-shadow:none!important}.x-buttons-hiddenBorder>x-button .x-button-icon>.x-icon{font-size:1.125rem}.x-buttons-hiddenBorder>x-button .x-button-icon:hover{color:var(--x-primary)}.x-buttons-box-shadow:not(.x-buttons-space){border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow)}.x-buttons-round:not(.x-buttons-space){border-radius:5rem}.x-buttons>x-button:not(:first-child)>.x-button-primary{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-success{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-warning{border-left-color:#fff3}.x-buttons>x-button:not(:first-child)>.x-button-danger{border-left-color:#fff3}\n"] }]
33
33
  }], propDecorators: { className: [{
34
34
  type: HostBinding,
35
35
  args: ['class']
@@ -93,10 +93,10 @@ export class XCalendarComponent extends XCalendarProperty {
93
93
  getMonth(date) {
94
94
  return this.monthData()?.[this.datePipe.transform(date, 'yyyy-MM')];
95
95
  }
96
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
97
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: XCalendarComponent, isStandalone: true, selector: "x-calendar", providers: [DatePipe, LowerCasePipe], usesInheritance: true, ngImport: i0, template: "<div #calendar class=\"x-calendar\" [ngClass]=\"classMap()\">\r\n <div class=\"x-calendar-header\">\r\n <div class=\"x-calendar-header-left\">\r\n @if (headerLeftTemp()) {\r\n <ng-container *ngTemplateOutlet=\"headerLeftTemp()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-calendar-header-right\">\r\n <x-date-picker\r\n [(ngModel)]=\"datetime\"\r\n [type]=\"modelSignal()\"\r\n showHeader=\"false\"\r\n [clearable]=\"false\"\r\n ></x-date-picker>\r\n <x-buttons [boxShadow]=\"false\">\r\n <x-button (click)=\"action(-1)\" plain>{{\r\n modelSignal() === 'month' ? locale().lastMonth : locale().lastYear\r\n }}</x-button>\r\n <x-button (click)=\"action(1)\" plain>{{\r\n modelSignal() === 'month' ? locale().nextMonth : locale().nextYear\r\n }}</x-button>\r\n </x-buttons>\r\n <x-radio [data]=\"radioData()\" [(ngModel)]=\"modelSignal\" button></x-radio>\r\n </div>\r\n </div>\r\n <div class=\"x-calendar-body\">\r\n @if (modelSignal() === 'month') {\r\n <x-picker-date\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [dateTemp]=\"dateTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-date>\r\n }\r\n @if (modelSignal() === 'year') {\r\n <x-picker-month\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [monthTemp]=\"monthTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-month>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #dateTemp let-date=\"date$\">\r\n <div class=\"x-calendar-date\" [class.x-activated]=\"(date | date: 'yyyyMMdd') === (activatedDate() | date: 'yyyyMMdd')\">\r\n <span [title]=\"date | date: 'yyyy-MM-dd'\">{{ date | date: 'd' }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-date-content\">\r\n @if (getDate(date)) {\r\n <ul>\r\n @for (item of getDate(date); track item.id + item.label) {\r\n <li>\r\n <span [title]=\"item.id + item.label\">{{ item.id }}{{ item.label }}</span>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #monthTemp let-date=\"date$\">\r\n <div class=\"x-calendar-month\" [class.x-activated]=\"(date | date: 'yyyyMM') === (activatedDate() | date: 'yyyyMM')\">\r\n <span [title]=\"date | date: 'yyyy-MM'\">{{ getLocaleMonth(date) }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-month-content\">\r\n @if (getMonth(date)) {\r\n <ul>\r\n @for (item of getMonth(date); track item.id) {\r\n <li>\r\n <x-link x-tooltip [content]=\"item.label\" placement=\"top\">{{ item.id }}</x-link>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["x-calendar{display:inline-block}.x-calendar{margin:0;padding:0;box-sizing:border-box}.x-calendar-header{display:flex;align-items:center;justify-content:space-between}.x-calendar-header-right{display:flex;align-items:center;justify-content:flex-end}.x-calendar-header-right>x-date-picker{display:inline-block;width:8rem}.x-calendar-header-right>x-buttons,.x-calendar-header-right>x-radio{margin-left:.5rem}.x-calendar-body>x-picker-date .x-picker-date tr,.x-calendar-body>x-picker-month .x-picker-month tr{display:flex}.x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-body>x-picker-month .x-picker-month tr th{padding:.325rem;margin:0 .25rem;display:inline-block;flex:1;overflow:hidden}.x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-body>x-picker-month .x-picker-month tr td{padding:0;cursor:pointer;position:relative;flex:1;overflow:hidden;margin:0 .25rem;transition:.3s}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{display:block}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{padding-left:.325rem;position:static;width:auto;overflow-y:auto}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content li{margin:0;padding:0;list-style:none}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li{line-height:1.5;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%;display:inline-block;position:relative}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li>span{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-calendar-calendar{margin:.25rem -.25rem 0}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr th{height:2.25rem;line-height:2.25rem;text-align:right}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td{height:6.75rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{text-align:right;padding:.325rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{height:4.5rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary-900)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-400)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now{color:var(--x-primary);border-top-color:var(--x-primary)}.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:first-child,.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:last-child{border-radius:0}.x-calendar-card{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-calendar-card .x-calendar-header{padding:.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);justify-content:center}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td{margin:.25rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:transparent}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{padding:.125rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary);color:var(--x-background-100)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200);color:var(--x-primary)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-700)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-month:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-month:not(.x-activated){color:var(--x-primary);background-color:transparent;border-color:var(--x-primary)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "component", type: XRadioComponent, selector: "x-radio" }, { kind: "component", type: XDatePickerComponent, selector: "x-date-picker" }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XButtonsComponent, selector: "x-buttons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
96
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
97
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XCalendarComponent, isStandalone: true, selector: "x-calendar", providers: [DatePipe, LowerCasePipe], usesInheritance: true, ngImport: i0, template: "<div #calendar class=\"x-calendar\" [ngClass]=\"classMap()\">\r\n <div class=\"x-calendar-header\">\r\n <div class=\"x-calendar-header-left\">\r\n @if (headerLeftTemp()) {\r\n <ng-container *ngTemplateOutlet=\"headerLeftTemp()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-calendar-header-right\">\r\n <x-date-picker\r\n [(ngModel)]=\"datetime\"\r\n [type]=\"modelSignal()\"\r\n showHeader=\"false\"\r\n [clearable]=\"false\"\r\n ></x-date-picker>\r\n <x-buttons [boxShadow]=\"false\">\r\n <x-button (click)=\"action(-1)\" plain>{{\r\n modelSignal() === 'month' ? locale().lastMonth : locale().lastYear\r\n }}</x-button>\r\n <x-button (click)=\"action(1)\" plain>{{\r\n modelSignal() === 'month' ? locale().nextMonth : locale().nextYear\r\n }}</x-button>\r\n </x-buttons>\r\n <x-radio [data]=\"radioData()\" [(ngModel)]=\"modelSignal\" button></x-radio>\r\n </div>\r\n </div>\r\n <div class=\"x-calendar-body\">\r\n @if (modelSignal() === 'month') {\r\n <x-picker-date\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [dateTemp]=\"dateTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-date>\r\n }\r\n @if (modelSignal() === 'year') {\r\n <x-picker-month\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [monthTemp]=\"monthTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-month>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #dateTemp let-date=\"date$\">\r\n <div class=\"x-calendar-date\" [class.x-activated]=\"(date | date: 'yyyyMMdd') === (activatedDate() | date: 'yyyyMMdd')\">\r\n <span [title]=\"date | date: 'yyyy-MM-dd'\">{{ date | date: 'd' }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-date-content\">\r\n @if (getDate(date)) {\r\n <ul>\r\n @for (item of getDate(date); track item.id + item.label) {\r\n <li>\r\n <span [title]=\"item.id + item.label\">{{ item.id }}{{ item.label }}</span>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #monthTemp let-date=\"date$\">\r\n <div class=\"x-calendar-month\" [class.x-activated]=\"(date | date: 'yyyyMM') === (activatedDate() | date: 'yyyyMM')\">\r\n <span [title]=\"date | date: 'yyyy-MM'\">{{ getLocaleMonth(date) }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-month-content\">\r\n @if (getMonth(date)) {\r\n <ul>\r\n @for (item of getMonth(date); track item.id) {\r\n <li>\r\n <x-link x-tooltip [content]=\"item.label\" placement=\"top\">{{ item.id }}</x-link>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["x-calendar{display:inline-block}.x-calendar{margin:0;padding:0}.x-calendar{box-sizing:border-box}.x-calendar-header{display:flex;align-items:center;justify-content:space-between}.x-calendar-header-right{display:flex;align-items:center;justify-content:flex-end}.x-calendar-header-right>x-date-picker{display:inline-block;width:8rem}.x-calendar-header-right>x-buttons,.x-calendar-header-right>x-radio{margin-left:.5rem}.x-calendar-body>x-picker-date .x-picker-date tr,.x-calendar-body>x-picker-month .x-picker-month tr{display:flex}.x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-body>x-picker-month .x-picker-month tr th{padding:.325rem;margin:0 .25rem;display:inline-block;flex:1;overflow:hidden}.x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-body>x-picker-month .x-picker-month tr td{padding:0;cursor:pointer;position:relative;flex:1;overflow:hidden;margin:0 .25rem;transition:.3s}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{display:block}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{padding-left:.325rem;position:static;width:auto;overflow-y:auto}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content li{margin:0;padding:0;list-style:none}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li{line-height:1.5;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%;display:inline-block;position:relative}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li>span{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-calendar-calendar{margin:.25rem -.25rem 0}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr th{height:2.25rem;line-height:2.25rem;text-align:right}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td{height:6.75rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{text-align:right;padding:.325rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{height:4.5rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary-900)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-400)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now{color:var(--x-primary);border-top-color:var(--x-primary)}.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:first-child,.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:last-child{border-radius:0}.x-calendar-card{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-calendar-card .x-calendar-header{padding:.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);justify-content:center}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td{margin:.25rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:transparent}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{padding:.125rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary);color:var(--x-background-100)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200);color:var(--x-primary)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-700)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-month:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-month:not(.x-activated){color:var(--x-primary);background-color:transparent;border-color:var(--x-primary)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "directive", type: XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "component", type: XRadioComponent, selector: "x-radio" }, { kind: "component", type: XDatePickerComponent, selector: "x-date-picker" }, { kind: "component", type: XPickerDateComponent, selector: "x-picker-date" }, { kind: "component", type: XPickerMonthComponent, selector: "x-picker-month" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XButtonsComponent, selector: "x-buttons" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
98
98
  }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarComponent, decorators: [{
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarComponent, decorators: [{
100
100
  type: Component,
101
101
  args: [{ selector: `${XCalendarPrefix}`, standalone: true, imports: [
102
102
  NgClass,
@@ -112,6 +112,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
112
112
  XButtonComponent,
113
113
  XButtonsComponent,
114
114
  XI18nDirective
115
- ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe], template: "<div #calendar class=\"x-calendar\" [ngClass]=\"classMap()\">\r\n <div class=\"x-calendar-header\">\r\n <div class=\"x-calendar-header-left\">\r\n @if (headerLeftTemp()) {\r\n <ng-container *ngTemplateOutlet=\"headerLeftTemp()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-calendar-header-right\">\r\n <x-date-picker\r\n [(ngModel)]=\"datetime\"\r\n [type]=\"modelSignal()\"\r\n showHeader=\"false\"\r\n [clearable]=\"false\"\r\n ></x-date-picker>\r\n <x-buttons [boxShadow]=\"false\">\r\n <x-button (click)=\"action(-1)\" plain>{{\r\n modelSignal() === 'month' ? locale().lastMonth : locale().lastYear\r\n }}</x-button>\r\n <x-button (click)=\"action(1)\" plain>{{\r\n modelSignal() === 'month' ? locale().nextMonth : locale().nextYear\r\n }}</x-button>\r\n </x-buttons>\r\n <x-radio [data]=\"radioData()\" [(ngModel)]=\"modelSignal\" button></x-radio>\r\n </div>\r\n </div>\r\n <div class=\"x-calendar-body\">\r\n @if (modelSignal() === 'month') {\r\n <x-picker-date\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [dateTemp]=\"dateTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-date>\r\n }\r\n @if (modelSignal() === 'year') {\r\n <x-picker-month\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [monthTemp]=\"monthTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-month>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #dateTemp let-date=\"date$\">\r\n <div class=\"x-calendar-date\" [class.x-activated]=\"(date | date: 'yyyyMMdd') === (activatedDate() | date: 'yyyyMMdd')\">\r\n <span [title]=\"date | date: 'yyyy-MM-dd'\">{{ date | date: 'd' }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-date-content\">\r\n @if (getDate(date)) {\r\n <ul>\r\n @for (item of getDate(date); track item.id + item.label) {\r\n <li>\r\n <span [title]=\"item.id + item.label\">{{ item.id }}{{ item.label }}</span>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #monthTemp let-date=\"date$\">\r\n <div class=\"x-calendar-month\" [class.x-activated]=\"(date | date: 'yyyyMM') === (activatedDate() | date: 'yyyyMM')\">\r\n <span [title]=\"date | date: 'yyyy-MM'\">{{ getLocaleMonth(date) }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-month-content\">\r\n @if (getMonth(date)) {\r\n <ul>\r\n @for (item of getMonth(date); track item.id) {\r\n <li>\r\n <x-link x-tooltip [content]=\"item.label\" placement=\"top\">{{ item.id }}</x-link>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["x-calendar{display:inline-block}.x-calendar{margin:0;padding:0;box-sizing:border-box}.x-calendar-header{display:flex;align-items:center;justify-content:space-between}.x-calendar-header-right{display:flex;align-items:center;justify-content:flex-end}.x-calendar-header-right>x-date-picker{display:inline-block;width:8rem}.x-calendar-header-right>x-buttons,.x-calendar-header-right>x-radio{margin-left:.5rem}.x-calendar-body>x-picker-date .x-picker-date tr,.x-calendar-body>x-picker-month .x-picker-month tr{display:flex}.x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-body>x-picker-month .x-picker-month tr th{padding:.325rem;margin:0 .25rem;display:inline-block;flex:1;overflow:hidden}.x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-body>x-picker-month .x-picker-month tr td{padding:0;cursor:pointer;position:relative;flex:1;overflow:hidden;margin:0 .25rem;transition:.3s}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{display:block}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{padding-left:.325rem;position:static;width:auto;overflow-y:auto}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content li{margin:0;padding:0;list-style:none}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li{line-height:1.5;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%;display:inline-block;position:relative}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li>span{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-calendar-calendar{margin:.25rem -.25rem 0}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr th{height:2.25rem;line-height:2.25rem;text-align:right}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td{height:6.75rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{text-align:right;padding:.325rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{height:4.5rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary-900)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-400)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now{color:var(--x-primary);border-top-color:var(--x-primary)}.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:first-child,.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:last-child{border-radius:0}.x-calendar-card{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-calendar-card .x-calendar-header{padding:.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);justify-content:center}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td{margin:.25rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:transparent}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{padding:.125rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary);color:var(--x-background-100)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200);color:var(--x-primary)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-700)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-month:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-month:not(.x-activated){color:var(--x-primary);background-color:transparent;border-color:var(--x-primary)}\n"] }]
115
+ ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, LowerCasePipe], template: "<div #calendar class=\"x-calendar\" [ngClass]=\"classMap()\">\r\n <div class=\"x-calendar-header\">\r\n <div class=\"x-calendar-header-left\">\r\n @if (headerLeftTemp()) {\r\n <ng-container *ngTemplateOutlet=\"headerLeftTemp()!\"></ng-container>\r\n }\r\n </div>\r\n <div class=\"x-calendar-header-right\">\r\n <x-date-picker\r\n [(ngModel)]=\"datetime\"\r\n [type]=\"modelSignal()\"\r\n showHeader=\"false\"\r\n [clearable]=\"false\"\r\n ></x-date-picker>\r\n <x-buttons [boxShadow]=\"false\">\r\n <x-button (click)=\"action(-1)\" plain>{{\r\n modelSignal() === 'month' ? locale().lastMonth : locale().lastYear\r\n }}</x-button>\r\n <x-button (click)=\"action(1)\" plain>{{\r\n modelSignal() === 'month' ? locale().nextMonth : locale().nextYear\r\n }}</x-button>\r\n </x-buttons>\r\n <x-radio [data]=\"radioData()\" [(ngModel)]=\"modelSignal\" button></x-radio>\r\n </div>\r\n </div>\r\n <div class=\"x-calendar-body\">\r\n @if (modelSignal() === 'month') {\r\n <x-picker-date\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [dateTemp]=\"dateTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-date>\r\n }\r\n @if (modelSignal() === 'year') {\r\n <x-picker-month\r\n [display]=\"datetime()\"\r\n (modelChange)=\"dateOnChange($event!)\"\r\n (rangeChange)=\"rangeOnChange($event)\"\r\n [monthTemp]=\"monthTemp\"\r\n showHeader=\"false\"\r\n ></x-picker-month>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #dateTemp let-date=\"date$\">\r\n <div class=\"x-calendar-date\" [class.x-activated]=\"(date | date: 'yyyyMMdd') === (activatedDate() | date: 'yyyyMMdd')\">\r\n <span [title]=\"date | date: 'yyyy-MM-dd'\">{{ date | date: 'd' }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-date-content\">\r\n @if (getDate(date)) {\r\n <ul>\r\n @for (item of getDate(date); track item.id + item.label) {\r\n <li>\r\n <span [title]=\"item.id + item.label\">{{ item.id }}{{ item.label }}</span>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #monthTemp let-date=\"date$\">\r\n <div class=\"x-calendar-month\" [class.x-activated]=\"(date | date: 'yyyyMM') === (activatedDate() | date: 'yyyyMM')\">\r\n <span [title]=\"date | date: 'yyyy-MM'\">{{ getLocaleMonth(date) }}</span>\r\n @if (displayType() === 'calendar') {\r\n <div class=\"x-calendar-month-content\">\r\n @if (getMonth(date)) {\r\n <ul>\r\n @for (item of getMonth(date); track item.id) {\r\n <li>\r\n <x-link x-tooltip [content]=\"item.label\" placement=\"top\">{{ item.id }}</x-link>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</ng-template>\r\n", styles: ["x-calendar{display:inline-block}.x-calendar{margin:0;padding:0}.x-calendar{box-sizing:border-box}.x-calendar-header{display:flex;align-items:center;justify-content:space-between}.x-calendar-header-right{display:flex;align-items:center;justify-content:flex-end}.x-calendar-header-right>x-date-picker{display:inline-block;width:8rem}.x-calendar-header-right>x-buttons,.x-calendar-header-right>x-radio{margin-left:.5rem}.x-calendar-body>x-picker-date .x-picker-date tr,.x-calendar-body>x-picker-month .x-picker-month tr{display:flex}.x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-body>x-picker-month .x-picker-month tr th{padding:.325rem;margin:0 .25rem;display:inline-block;flex:1;overflow:hidden}.x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-body>x-picker-month .x-picker-month tr td{padding:0;cursor:pointer;position:relative;flex:1;overflow:hidden;margin:0 .25rem;transition:.3s}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{display:block}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{padding-left:.325rem;position:static;width:auto;overflow-y:auto}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content ul,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content li{margin:0;padding:0;list-style:none}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li{line-height:1.5;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%;display:inline-block;position:relative}.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content>ul li>span,.x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content>ul li>span{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-calendar-calendar{margin:.25rem -.25rem 0}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr th,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr th{height:2.25rem;line-height:2.25rem;text-align:right}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td{height:6.75rem;border-top:var(--x-border-width) var(--x-border-style) var(--x-border);text-align:left}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{text-align:right;padding:.325rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date-content,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month-content{height:4.5rem}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary-900)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-400)}.x-calendar-calendar .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now,.x-calendar-calendar .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now{color:var(--x-primary);border-top-color:var(--x-primary)}.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:first-child,.x-calendar-calendar .x-calendar-body .x-picker-date-body>table td:last-child{border-radius:0}.x-calendar-card{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius)}.x-calendar-card .x-calendar-header{padding:.5rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border);justify-content:center}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td{margin:.25rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month{border:var(--x-border-width) var(--x-border-style) var(--x-border);border-color:transparent}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date>span,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month>span{padding:.125rem}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td .x-calendar-month.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-date.x-activated,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td .x-calendar-month.x-activated{background-color:var(--x-primary);color:var(--x-background-100)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td:hover,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td:hover{background-color:var(--x-background-a200);color:var(--x-primary)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-last-or-next,.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-last-or-next{color:var(--x-text-700)}.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-date .x-picker-date tr td.x-date-now .x-calendar-month:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-date:not(.x-activated),.x-calendar-card .x-calendar-body>x-picker-month .x-picker-month tr td.x-date-now .x-calendar-month:not(.x-activated){color:var(--x-primary);background-color:transparent;border-color:var(--x-primary)}\n"] }]
116
116
  }], ctorParameters: () => [] });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdC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Tzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLFFBQVE7d0JBQ1IsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZixpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBpbmplY3QsIGNvbXB1dGVkLCBzaWduYWwsIGVmZmVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYQ2FsZW5kYXJQcmVmaXgsIFhDYWxlbmRhclByb3BlcnR5IH0gZnJvbSAnLi9jYWxlbmRhci5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0VtcHR5IH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IERhdGVQaXBlLCBMb3dlckNhc2VQaXBlLCBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgWEkxOG5TZXJ2aWNlLCBYSTE4bkRpcmVjdGl2ZSwgemhfQ04gfSBmcm9tICdAbmctbmVzdC91aS9pMThuJztcclxuaW1wb3J0IHsgWExpbmtDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9saW5rJztcclxuaW1wb3J0IHsgWERhdGVQaWNrZXJDb21wb25lbnQsIFhQaWNrZXJEYXRlQ29tcG9uZW50LCBYUGlja2VyTW9udGhDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9kYXRlLXBpY2tlcic7XHJcbmltcG9ydCB7IFhCdXR0b25Db21wb25lbnQsIFhCdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgWFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvcmFkaW8nO1xyXG5pbXBvcnQgeyBYVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BuZy1uZXN0L3VpL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHR5cGUgeyBYQ2FsZW5kYXJOb2RlIH0gZnJvbSAnLi9jYWxlbmRhci5wcm9wZXJ0eSc7XHJcbmltcG9ydCB0eXBlIHsgWEkxOG5DYWxlbmRhciB9IGZyb20gJ0BuZy1uZXN0L3VpL2kxOG4nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hDYWxlbmRhclByZWZpeH1gLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBEYXRlUGlwZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgWExpbmtDb21wb25lbnQsXHJcbiAgICBYVG9vbHRpcERpcmVjdGl2ZSxcclxuICAgIFhSYWRpb0NvbXBvbmVudCxcclxuICAgIFhEYXRlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgWFBpY2tlckRhdGVDb21wb25lbnQsXHJcbiAgICBYUGlja2VyTW9udGhDb21wb25lbnQsXHJcbiAgICBYQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgWEJ1dHRvbnNDb21wb25lbnQsXHJcbiAgICBYSTE4bkRpcmVjdGl2ZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbRGF0ZVBpcGUsIExvd2VyQ2FzZVBpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYQ2FsZW5kYXJDb21wb25lbnQgZXh0ZW5kcyBYQ2FsZW5kYXJQcm9wZXJ0eSB7XHJcbiAgcHJpdmF0ZSBkYXRlUGlwZSA9IGluamVjdChEYXRlUGlwZSk7XHJcbiAgcHJpdmF0ZSBsb3dlckNhc2VQaXBlID0gaW5qZWN0KExvd2VyQ2FzZVBpcGUpO1xyXG4gIHByaXZhdGUgaTE4biA9IGluamVjdChYSTE4blNlcnZpY2UpO1xyXG4gIGRhdGV0aW1lID0gc2lnbmFsKG5ldyBEYXRlKCkpO1xyXG4gIGFjdGl2YXRlZERhdGUgPSBzaWduYWwobmV3IERhdGUoKSk7XHJcbiAgcmFkaW9EYXRhQmFzZSA9IFtcclxuICAgIHsgbGFiZWw6ICcnLCBpZDogJ21vbnRoJyB9LFxyXG4gICAgeyBsYWJlbDogJycsIGlkOiAneWVhcicgfVxyXG4gIF07XHJcbiAgbW9kZWxTaWduYWwgPSBzaWduYWwodGhpcy5tb2RlbCgpKTtcclxuXHJcbiAgbG9jYWxlID0gdG9TaWduYWwodGhpcy5pMThuLmxvY2FsZUNoYW5nZS5waXBlKG1hcCgoeCkgPT4geC5jYWxlbmRhciBhcyBYSTE4bkNhbGVuZGFyKSksIHtcclxuICAgIGluaXRpYWxWYWx1ZTogemhfQ04uY2FsZW5kYXJcclxuICB9KTtcclxuICByYWRpb0RhdGEgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5yYWRpb0RhdGFCYXNlLm1hcCgoeCkgPT4ge1xyXG4gICAgICB4LmxhYmVsID0gKHRoaXMubG9jYWxlKCkgYXMgYW55KVt4LmlkXTtcclxuICAgICAgcmV0dXJuIHg7XHJcbiAgICB9KTtcclxuICB9KTtcclxuICBjbGFzc01hcCA9IGNvbXB1dGVkKCgpID0+ICh7XHJcbiAgICBbYCR7WENhbGVuZGFyUHJlZml4fS0ke3RoaXMuZGlzcGxheVR5cGUoKX1gXTogIVhJc0VtcHR5KHRoaXMuZGlzcGxheVR5cGUoKSlcclxuICB9KSk7XHJcbiAgbW9udGhEYXRhID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgbGV0IGR0OiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogWENhbGVuZGFyTm9kZVtdIH0gPSB7fTtcclxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGEoKSkge1xyXG4gICAgICBsZXQgbW9udGggPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShrZXksICd5eXl5LU1NJykgYXMgc3RyaW5nO1xyXG4gICAgICBsZXQgdmFsdWUgPSAnJztcclxuICAgICAgdGhpcy5kYXRhKClba2V5XS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgICAgdmFsdWUgKz0gYCR7eC5pZH0ke3gubGFiZWx9IDxici8+YDtcclxuICAgICAgfSk7XHJcbiAgICAgIGxldCBpdGVtID0geyBpZDoga2V5LCBsYWJlbDogdmFsdWUgfTtcclxuICAgICAgaWYgKGR0W21vbnRoXSkge1xyXG4gICAgICAgIGR0W21vbnRoXSA9IFsuLi5kdFttb250aF0sIGl0ZW1dO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGR0W21vbnRoXSA9IFtpdGVtXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkdDtcclxuICB9KTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgZWZmZWN0KFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tb2RlbFNpZ25hbC5zZXQodGhpcy5tb2RlbCgpKTtcclxuICAgICAgfSxcclxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYWN0aW9uKG5leHQ6IG51bWJlcikge1xyXG4gICAgbGV0IGRhdGV0aW1lID0gbmV3IERhdGUodGhpcy5kYXRldGltZSgpLmdldFRpbWUoKSk7XHJcbiAgICBpZiAodGhpcy5tb2RlbFNpZ25hbCgpID09PSAnbW9udGgnKSB7XHJcbiAgICAgIGRhdGV0aW1lLnNldE1vbnRoKGRhdGV0aW1lLmdldE1vbnRoKCkgKyBuZXh0KTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbFNpZ25hbCgpID09PSAneWVhcicpIHtcclxuICAgICAgZGF0ZXRpbWUuc2V0RnVsbFllYXIoZGF0ZXRpbWUuZ2V0RnVsbFllYXIoKSArIG5leHQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRldGltZS5zZXQoZGF0ZXRpbWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TG9jYWxlTW9udGgoZGF0ZTogRGF0ZSkge1xyXG4gICAgcmV0dXJuICh0aGlzLmxvY2FsZSgpIGFzIGFueSlbdGhpcy5sb3dlckNhc2VQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAnTExMTCcpIGFzIHN0cmluZyldO1xyXG4gIH1cclxuXHJcbiAgZGF0ZU9uQ2hhbmdlKGRhdGU6IERhdGUpIHtcclxuICAgIGlmICh0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAneXl5eS1NTS1kZCcpICE9PSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmFjdGl2YXRlZERhdGUoKSwgJ3l5eXktTU0tZGQnKSkge1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZERhdGUuc2V0KGRhdGUpO1xyXG4gICAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2YXRlZERhdGUoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByYW5nZU9uQ2hhbmdlKHJhbmdlOiBEYXRlW10pIHtcclxuICAgIHRoaXMucmFuZ2VDaGFuZ2UuZW1pdChyYW5nZSk7XHJcbiAgfVxyXG5cclxuICBnZXREYXRlKGRhdGU6IERhdGUpOiBYQ2FsZW5kYXJOb2RlW10ge1xyXG4gICAgaWYgKHRoaXMuZGF0YSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5kYXRhKCk/Llt0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAneXl5eS1NTS1kZCcpIGFzIHN0cmluZ107XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRNb250aChkYXRlOiBEYXRlKTogWENhbGVuZGFyTm9kZVtdIHtcclxuICAgIHJldHVybiB0aGlzLm1vbnRoRGF0YSgpPy5bdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZSwgJ3l5eXktTU0nKSBhcyBzdHJpbmddO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICNjYWxlbmRhciBjbGFzcz1cIngtY2FsZW5kYXJcIiBbbmdDbGFzc109XCJjbGFzc01hcCgpXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FsZW5kYXItaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1oZWFkZXItbGVmdFwiPlxyXG4gICAgICBAaWYgKGhlYWRlckxlZnRUZW1wKCkpIHtcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyTGVmdFRlbXAoKSFcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1oZWFkZXItcmlnaHRcIj5cclxuICAgICAgPHgtZGF0ZS1waWNrZXJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cImRhdGV0aW1lXCJcclxuICAgICAgICBbdHlwZV09XCJtb2RlbFNpZ25hbCgpXCJcclxuICAgICAgICBzaG93SGVhZGVyPVwiZmFsc2VcIlxyXG4gICAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxyXG4gICAgICA+PC94LWRhdGUtcGlja2VyPlxyXG4gICAgICA8eC1idXR0b25zIFtib3hTaGFkb3ddPVwiZmFsc2VcIj5cclxuICAgICAgICA8eC1idXR0b24gKGNsaWNrKT1cImFjdGlvbigtMSlcIiBwbGFpbj57e1xyXG4gICAgICAgICAgbW9kZWxTaWduYWwoKSA9PT0gJ21vbnRoJyA/IGxvY2FsZSgpLmxhc3RNb250aCA6IGxvY2FsZSgpLmxhc3RZZWFyXHJcbiAgICAgICAgfX08L3gtYnV0dG9uPlxyXG4gICAgICAgIDx4LWJ1dHRvbiAoY2xpY2spPVwiYWN0aW9uKDEpXCIgcGxhaW4+e3tcclxuICAgICAgICAgIG1vZGVsU2lnbmFsKCkgPT09ICdtb250aCcgPyBsb2NhbGUoKS5uZXh0TW9udGggOiBsb2NhbGUoKS5uZXh0WWVhclxyXG4gICAgICAgIH19PC94LWJ1dHRvbj5cclxuICAgICAgPC94LWJ1dHRvbnM+XHJcbiAgICAgIDx4LXJhZGlvIFtkYXRhXT1cInJhZGlvRGF0YSgpXCIgWyhuZ01vZGVsKV09XCJtb2RlbFNpZ25hbFwiIGJ1dHRvbj48L3gtcmFkaW8+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1ib2R5XCI+XHJcbiAgICBAaWYgKG1vZGVsU2lnbmFsKCkgPT09ICdtb250aCcpIHtcclxuICAgICAgPHgtcGlja2VyLWRhdGVcclxuICAgICAgICBbZGlzcGxheV09XCJkYXRldGltZSgpXCJcclxuICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZGF0ZU9uQ2hhbmdlKCRldmVudCEpXCJcclxuICAgICAgICAocmFuZ2VDaGFuZ2UpPVwicmFuZ2VPbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbZGF0ZVRlbXBdPVwiZGF0ZVRlbXBcIlxyXG4gICAgICAgIHNob3dIZWFkZXI9XCJmYWxzZVwiXHJcbiAgICAgID48L3gtcGlja2VyLWRhdGU+XHJcbiAgICB9XHJcbiAgICBAaWYgKG1vZGVsU2lnbmFsKCkgPT09ICd5ZWFyJykge1xyXG4gICAgICA8eC1waWNrZXItbW9udGhcclxuICAgICAgICBbZGlzcGxheV09XCJkYXRldGltZSgpXCJcclxuICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZGF0ZU9uQ2hhbmdlKCRldmVudCEpXCJcclxuICAgICAgICAocmFuZ2VDaGFuZ2UpPVwicmFuZ2VPbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbbW9udGhUZW1wXT1cIm1vbnRoVGVtcFwiXHJcbiAgICAgICAgc2hvd0hlYWRlcj1cImZhbHNlXCJcclxuICAgICAgPjwveC1waWNrZXItbW9udGg+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkYXRlVGVtcCBsZXQtZGF0ZT1cImRhdGUkXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FsZW5kYXItZGF0ZVwiIFtjbGFzcy54LWFjdGl2YXRlZF09XCIoZGF0ZSB8IGRhdGU6ICd5eXl5TU1kZCcpID09PSAoYWN0aXZhdGVkRGF0ZSgpIHwgZGF0ZTogJ3l5eXlNTWRkJylcIj5cclxuICAgIDxzcGFuIFt0aXRsZV09XCJkYXRlIHwgZGF0ZTogJ3l5eXktTU0tZGQnXCI+e3sgZGF0ZSB8IGRhdGU6ICdkJyB9fTwvc3Bhbj5cclxuICAgIEBpZiAoZGlzcGxheVR5cGUoKSA9PT0gJ2NhbGVuZGFyJykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1kYXRlLWNvbnRlbnRcIj5cclxuICAgICAgICBAaWYgKGdldERhdGUoZGF0ZSkpIHtcclxuICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBnZXREYXRlKGRhdGUpOyB0cmFjayBpdGVtLmlkICsgaXRlbS5sYWJlbCkge1xyXG4gICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxzcGFuIFt0aXRsZV09XCJpdGVtLmlkICsgaXRlbS5sYWJlbFwiPnt7IGl0ZW0uaWQgfX17eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbW9udGhUZW1wIGxldC1kYXRlPVwiZGF0ZSRcIj5cclxuICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1tb250aFwiIFtjbGFzcy54LWFjdGl2YXRlZF09XCIoZGF0ZSB8IGRhdGU6ICd5eXl5TU0nKSA9PT0gKGFjdGl2YXRlZERhdGUoKSB8IGRhdGU6ICd5eXl5TU0nKVwiPlxyXG4gICAgPHNwYW4gW3RpdGxlXT1cImRhdGUgfCBkYXRlOiAneXl5eS1NTSdcIj57eyBnZXRMb2NhbGVNb250aChkYXRlKSB9fTwvc3Bhbj5cclxuICAgIEBpZiAoZGlzcGxheVR5cGUoKSA9PT0gJ2NhbGVuZGFyJykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1tb250aC1jb250ZW50XCI+XHJcbiAgICAgICAgQGlmIChnZXRNb250aChkYXRlKSkge1xyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIGdldE1vbnRoKGRhdGUpOyB0cmFjayBpdGVtLmlkKSB7XHJcbiAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgPHgtbGluayB4LXRvb2x0aXAgW2NvbnRlbnRdPVwiaXRlbS5sYWJlbFwiIHBsYWNlbWVudD1cInRvcFwiPnt7IGl0ZW0uaWQgfX08L3gtbGluaz5cclxuICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRixPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdC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Tzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLFFBQVE7d0JBQ1IsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZixpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBpbmplY3QsIGNvbXB1dGVkLCBzaWduYWwsIGVmZmVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBYQ2FsZW5kYXJQcmVmaXgsIFhDYWxlbmRhclByb3BlcnR5IH0gZnJvbSAnLi9jYWxlbmRhci5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhJc0VtcHR5IH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IERhdGVQaXBlLCBMb3dlckNhc2VQaXBlLCBOZ0NsYXNzLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgWEkxOG5TZXJ2aWNlLCBYSTE4bkRpcmVjdGl2ZSwgemhfQ04gfSBmcm9tICdAbmctbmVzdC91aS9pMThuJztcclxuaW1wb3J0IHsgWExpbmtDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9saW5rJztcclxuaW1wb3J0IHsgWERhdGVQaWNrZXJDb21wb25lbnQsIFhQaWNrZXJEYXRlQ29tcG9uZW50LCBYUGlja2VyTW9udGhDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS9kYXRlLXBpY2tlcic7XHJcbmltcG9ydCB7IFhCdXR0b25Db21wb25lbnQsIFhCdXR0b25zQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgWFJhZGlvQ29tcG9uZW50IH0gZnJvbSAnQG5nLW5lc3QvdWkvcmFkaW8nO1xyXG5pbXBvcnQgeyBYVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BuZy1uZXN0L3VpL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHR5cGUgeyBYQ2FsZW5kYXJOb2RlIH0gZnJvbSAnLi9jYWxlbmRhci5wcm9wZXJ0eSc7XHJcbmltcG9ydCB0eXBlIHsgWEkxOG5DYWxlbmRhciB9IGZyb20gJ0BuZy1uZXN0L3VpL2kxOG4nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IGAke1hDYWxlbmRhclByZWZpeH1gLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTmdDbGFzcyxcclxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXHJcbiAgICBEYXRlUGlwZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgWExpbmtDb21wb25lbnQsXHJcbiAgICBYVG9vbHRpcERpcmVjdGl2ZSxcclxuICAgIFhSYWRpb0NvbXBvbmVudCxcclxuICAgIFhEYXRlUGlja2VyQ29tcG9uZW50LFxyXG4gICAgWFBpY2tlckRhdGVDb21wb25lbnQsXHJcbiAgICBYUGlja2VyTW9udGhDb21wb25lbnQsXHJcbiAgICBYQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgWEJ1dHRvbnNDb21wb25lbnQsXHJcbiAgICBYSTE4bkRpcmVjdGl2ZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jYWxlbmRhci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbRGF0ZVBpcGUsIExvd2VyQ2FzZVBpcGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYQ2FsZW5kYXJDb21wb25lbnQgZXh0ZW5kcyBYQ2FsZW5kYXJQcm9wZXJ0eSB7XHJcbiAgcHJpdmF0ZSBkYXRlUGlwZSA9IGluamVjdChEYXRlUGlwZSk7XHJcbiAgcHJpdmF0ZSBsb3dlckNhc2VQaXBlID0gaW5qZWN0KExvd2VyQ2FzZVBpcGUpO1xyXG4gIHByaXZhdGUgaTE4biA9IGluamVjdChYSTE4blNlcnZpY2UpO1xyXG4gIGRhdGV0aW1lID0gc2lnbmFsKG5ldyBEYXRlKCkpO1xyXG4gIGFjdGl2YXRlZERhdGUgPSBzaWduYWwobmV3IERhdGUoKSk7XHJcbiAgcmFkaW9EYXRhQmFzZSA9IFtcclxuICAgIHsgbGFiZWw6ICcnLCBpZDogJ21vbnRoJyB9LFxyXG4gICAgeyBsYWJlbDogJycsIGlkOiAneWVhcicgfVxyXG4gIF07XHJcbiAgbW9kZWxTaWduYWwgPSBzaWduYWwodGhpcy5tb2RlbCgpKTtcclxuXHJcbiAgbG9jYWxlID0gdG9TaWduYWwodGhpcy5pMThuLmxvY2FsZUNoYW5nZS5waXBlKG1hcCgoeCkgPT4geC5jYWxlbmRhciBhcyBYSTE4bkNhbGVuZGFyKSksIHtcclxuICAgIGluaXRpYWxWYWx1ZTogemhfQ04uY2FsZW5kYXJcclxuICB9KTtcclxuICByYWRpb0RhdGEgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5yYWRpb0RhdGFCYXNlLm1hcCgoeCkgPT4ge1xyXG4gICAgICB4LmxhYmVsID0gKHRoaXMubG9jYWxlKCkgYXMgYW55KVt4LmlkXTtcclxuICAgICAgcmV0dXJuIHg7XHJcbiAgICB9KTtcclxuICB9KTtcclxuICBjbGFzc01hcCA9IGNvbXB1dGVkKCgpID0+ICh7XHJcbiAgICBbYCR7WENhbGVuZGFyUHJlZml4fS0ke3RoaXMuZGlzcGxheVR5cGUoKX1gXTogIVhJc0VtcHR5KHRoaXMuZGlzcGxheVR5cGUoKSlcclxuICB9KSk7XHJcbiAgbW9udGhEYXRhID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgbGV0IGR0OiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogWENhbGVuZGFyTm9kZVtdIH0gPSB7fTtcclxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLmRhdGEoKSkge1xyXG4gICAgICBsZXQgbW9udGggPSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShrZXksICd5eXl5LU1NJykgYXMgc3RyaW5nO1xyXG4gICAgICBsZXQgdmFsdWUgPSAnJztcclxuICAgICAgdGhpcy5kYXRhKClba2V5XS5mb3JFYWNoKCh4KSA9PiB7XHJcbiAgICAgICAgdmFsdWUgKz0gYCR7eC5pZH0ke3gubGFiZWx9IDxici8+YDtcclxuICAgICAgfSk7XHJcbiAgICAgIGxldCBpdGVtID0geyBpZDoga2V5LCBsYWJlbDogdmFsdWUgfTtcclxuICAgICAgaWYgKGR0W21vbnRoXSkge1xyXG4gICAgICAgIGR0W21vbnRoXSA9IFsuLi5kdFttb250aF0sIGl0ZW1dO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGR0W21vbnRoXSA9IFtpdGVtXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkdDtcclxuICB9KTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgZWZmZWN0KFxyXG4gICAgICAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tb2RlbFNpZ25hbC5zZXQodGhpcy5tb2RlbCgpKTtcclxuICAgICAgfSxcclxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYWN0aW9uKG5leHQ6IG51bWJlcikge1xyXG4gICAgbGV0IGRhdGV0aW1lID0gbmV3IERhdGUodGhpcy5kYXRldGltZSgpLmdldFRpbWUoKSk7XHJcbiAgICBpZiAodGhpcy5tb2RlbFNpZ25hbCgpID09PSAnbW9udGgnKSB7XHJcbiAgICAgIGRhdGV0aW1lLnNldE1vbnRoKGRhdGV0aW1lLmdldE1vbnRoKCkgKyBuZXh0KTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbFNpZ25hbCgpID09PSAneWVhcicpIHtcclxuICAgICAgZGF0ZXRpbWUuc2V0RnVsbFllYXIoZGF0ZXRpbWUuZ2V0RnVsbFllYXIoKSArIG5leHQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5kYXRldGltZS5zZXQoZGF0ZXRpbWUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0TG9jYWxlTW9udGgoZGF0ZTogRGF0ZSkge1xyXG4gICAgcmV0dXJuICh0aGlzLmxvY2FsZSgpIGFzIGFueSlbdGhpcy5sb3dlckNhc2VQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAnTExMTCcpIGFzIHN0cmluZyldO1xyXG4gIH1cclxuXHJcbiAgZGF0ZU9uQ2hhbmdlKGRhdGU6IERhdGUpIHtcclxuICAgIGlmICh0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAneXl5eS1NTS1kZCcpICE9PSB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmFjdGl2YXRlZERhdGUoKSwgJ3l5eXktTU0tZGQnKSkge1xyXG4gICAgICB0aGlzLmFjdGl2YXRlZERhdGUuc2V0KGRhdGUpO1xyXG4gICAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2YXRlZERhdGUoKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByYW5nZU9uQ2hhbmdlKHJhbmdlOiBEYXRlW10pIHtcclxuICAgIHRoaXMucmFuZ2VDaGFuZ2UuZW1pdChyYW5nZSk7XHJcbiAgfVxyXG5cclxuICBnZXREYXRlKGRhdGU6IERhdGUpOiBYQ2FsZW5kYXJOb2RlW10ge1xyXG4gICAgaWYgKHRoaXMuZGF0YSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5kYXRhKCk/Llt0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShkYXRlLCAneXl5eS1NTS1kZCcpIGFzIHN0cmluZ107XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRNb250aChkYXRlOiBEYXRlKTogWENhbGVuZGFyTm9kZVtdIHtcclxuICAgIHJldHVybiB0aGlzLm1vbnRoRGF0YSgpPy5bdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0oZGF0ZSwgJ3l5eXktTU0nKSBhcyBzdHJpbmddO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICNjYWxlbmRhciBjbGFzcz1cIngtY2FsZW5kYXJcIiBbbmdDbGFzc109XCJjbGFzc01hcCgpXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FsZW5kYXItaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1oZWFkZXItbGVmdFwiPlxyXG4gICAgICBAaWYgKGhlYWRlckxlZnRUZW1wKCkpIHtcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyTGVmdFRlbXAoKSFcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1oZWFkZXItcmlnaHRcIj5cclxuICAgICAgPHgtZGF0ZS1waWNrZXJcclxuICAgICAgICBbKG5nTW9kZWwpXT1cImRhdGV0aW1lXCJcclxuICAgICAgICBbdHlwZV09XCJtb2RlbFNpZ25hbCgpXCJcclxuICAgICAgICBzaG93SGVhZGVyPVwiZmFsc2VcIlxyXG4gICAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxyXG4gICAgICA+PC94LWRhdGUtcGlja2VyPlxyXG4gICAgICA8eC1idXR0b25zIFtib3hTaGFkb3ddPVwiZmFsc2VcIj5cclxuICAgICAgICA8eC1idXR0b24gKGNsaWNrKT1cImFjdGlvbigtMSlcIiBwbGFpbj57e1xyXG4gICAgICAgICAgbW9kZWxTaWduYWwoKSA9PT0gJ21vbnRoJyA/IGxvY2FsZSgpLmxhc3RNb250aCA6IGxvY2FsZSgpLmxhc3RZZWFyXHJcbiAgICAgICAgfX08L3gtYnV0dG9uPlxyXG4gICAgICAgIDx4LWJ1dHRvbiAoY2xpY2spPVwiYWN0aW9uKDEpXCIgcGxhaW4+e3tcclxuICAgICAgICAgIG1vZGVsU2lnbmFsKCkgPT09ICdtb250aCcgPyBsb2NhbGUoKS5uZXh0TW9udGggOiBsb2NhbGUoKS5uZXh0WWVhclxyXG4gICAgICAgIH19PC94LWJ1dHRvbj5cclxuICAgICAgPC94LWJ1dHRvbnM+XHJcbiAgICAgIDx4LXJhZGlvIFtkYXRhXT1cInJhZGlvRGF0YSgpXCIgWyhuZ01vZGVsKV09XCJtb2RlbFNpZ25hbFwiIGJ1dHRvbj48L3gtcmFkaW8+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1ib2R5XCI+XHJcbiAgICBAaWYgKG1vZGVsU2lnbmFsKCkgPT09ICdtb250aCcpIHtcclxuICAgICAgPHgtcGlja2VyLWRhdGVcclxuICAgICAgICBbZGlzcGxheV09XCJkYXRldGltZSgpXCJcclxuICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZGF0ZU9uQ2hhbmdlKCRldmVudCEpXCJcclxuICAgICAgICAocmFuZ2VDaGFuZ2UpPVwicmFuZ2VPbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbZGF0ZVRlbXBdPVwiZGF0ZVRlbXBcIlxyXG4gICAgICAgIHNob3dIZWFkZXI9XCJmYWxzZVwiXHJcbiAgICAgID48L3gtcGlja2VyLWRhdGU+XHJcbiAgICB9XHJcbiAgICBAaWYgKG1vZGVsU2lnbmFsKCkgPT09ICd5ZWFyJykge1xyXG4gICAgICA8eC1waWNrZXItbW9udGhcclxuICAgICAgICBbZGlzcGxheV09XCJkYXRldGltZSgpXCJcclxuICAgICAgICAobW9kZWxDaGFuZ2UpPVwiZGF0ZU9uQ2hhbmdlKCRldmVudCEpXCJcclxuICAgICAgICAocmFuZ2VDaGFuZ2UpPVwicmFuZ2VPbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICBbbW9udGhUZW1wXT1cIm1vbnRoVGVtcFwiXHJcbiAgICAgICAgc2hvd0hlYWRlcj1cImZhbHNlXCJcclxuICAgICAgPjwveC1waWNrZXItbW9udGg+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkYXRlVGVtcCBsZXQtZGF0ZT1cImRhdGUkXCI+XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FsZW5kYXItZGF0ZVwiIFtjbGFzcy54LWFjdGl2YXRlZF09XCIoZGF0ZSB8IGRhdGU6ICd5eXl5TU1kZCcpID09PSAoYWN0aXZhdGVkRGF0ZSgpIHwgZGF0ZTogJ3l5eXlNTWRkJylcIj5cclxuICAgIDxzcGFuIFt0aXRsZV09XCJkYXRlIHwgZGF0ZTogJ3l5eXktTU0tZGQnXCI+e3sgZGF0ZSB8IGRhdGU6ICdkJyB9fTwvc3Bhbj5cclxuICAgIEBpZiAoZGlzcGxheVR5cGUoKSA9PT0gJ2NhbGVuZGFyJykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1kYXRlLWNvbnRlbnRcIj5cclxuICAgICAgICBAaWYgKGdldERhdGUoZGF0ZSkpIHtcclxuICAgICAgICAgIDx1bD5cclxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBnZXREYXRlKGRhdGUpOyB0cmFjayBpdGVtLmlkICsgaXRlbS5sYWJlbCkge1xyXG4gICAgICAgICAgICAgIDxsaT5cclxuICAgICAgICAgICAgICAgIDxzcGFuIFt0aXRsZV09XCJpdGVtLmlkICsgaXRlbS5sYWJlbFwiPnt7IGl0ZW0uaWQgfX17eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIH1cclxuICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjbW9udGhUZW1wIGxldC1kYXRlPVwiZGF0ZSRcIj5cclxuICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1tb250aFwiIFtjbGFzcy54LWFjdGl2YXRlZF09XCIoZGF0ZSB8IGRhdGU6ICd5eXl5TU0nKSA9PT0gKGFjdGl2YXRlZERhdGUoKSB8IGRhdGU6ICd5eXl5TU0nKVwiPlxyXG4gICAgPHNwYW4gW3RpdGxlXT1cImRhdGUgfCBkYXRlOiAneXl5eS1NTSdcIj57eyBnZXRMb2NhbGVNb250aChkYXRlKSB9fTwvc3Bhbj5cclxuICAgIEBpZiAoZGlzcGxheVR5cGUoKSA9PT0gJ2NhbGVuZGFyJykge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwieC1jYWxlbmRhci1tb250aC1jb250ZW50XCI+XHJcbiAgICAgICAgQGlmIChnZXRNb250aChkYXRlKSkge1xyXG4gICAgICAgICAgPHVsPlxyXG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIGdldE1vbnRoKGRhdGUpOyB0cmFjayBpdGVtLmlkKSB7XHJcbiAgICAgICAgICAgICAgPGxpPlxyXG4gICAgICAgICAgICAgICAgPHgtbGluayB4LXRvb2x0aXAgW2NvbnRlbnRdPVwiaXRlbS5sYWJlbFwiIHBsYWNlbWVudD1cInRvcFwiPnt7IGl0ZW0uaWQgfX08L3gtbGluaz5cclxuICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
2
2
  import { XCalendarComponent } from './calendar.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class XCalendarModule {
5
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: XCalendarModule, imports: [XCalendarComponent], exports: [XCalendarComponent] }); }
7
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarModule, imports: [XCalendarComponent] }); }
5
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XCalendarModule, imports: [XCalendarComponent], exports: [XCalendarComponent] }); }
7
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarModule, imports: [XCalendarComponent] }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  exports: [XCalendarComponent],
@@ -100,10 +100,10 @@ export class XCalendarProperty extends XPropertyFunction(X_CALENDAR_CONFIG_NAME)
100
100
  */
101
101
  this.rangeChange = output();
102
102
  }
103
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
104
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.6", type: XCalendarProperty, selector: "x-calendar-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, displayType: { classPropertyName: "displayType", publicName: "displayType", isSignal: true, isRequired: false, transformFunction: null }, headerLeftTemp: { classPropertyName: "headerLeftTemp", publicName: "headerLeftTemp", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dateChange: "dateChange", rangeChange: "rangeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
103
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
104
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XCalendarProperty, selector: "x-calendar-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, displayType: { classPropertyName: "displayType", publicName: "displayType", isSignal: true, isRequired: false, transformFunction: null }, headerLeftTemp: { classPropertyName: "headerLeftTemp", publicName: "headerLeftTemp", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dateChange: "dateChange", rangeChange: "rangeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
105
105
  }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCalendarProperty, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCalendarProperty, decorators: [{
107
107
  type: Component,
108
108
  args: [{ selector: `${XCalendarPrefix}-property`, template: '' }]
109
109
  }] });
@@ -12,11 +12,11 @@ export class XCardComponent extends XCardProperty {
12
12
  [`${XCardPrefix}-${this.shadow()}`]: !XIsEmpty(this.shadow())
13
13
  }));
14
14
  }
15
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: XCardComponent, isStandalone: true, selector: "x-card", usesInheritance: true, ngImport: i0, template: "<div #card class=\"x-card\" [ngClass]=\"classMap()\" [style.width]=\"width()\">\r\n @if (header()) {\r\n <div class=\"x-card-header\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-card-body\" [ngStyle]=\"bodyStyle()\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".x-card{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative;border-radius:var(--x-border-radius);transition:box-shadow .3s}.x-card-always,.x-card-hover:hover{box-shadow:var(--x-box-shadow)}.x-card-header{display:flex;align-items:center;justify-content:space-between;padding:.675rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-card-body{padding:var(--x-font-size);width:100%}.x-card-body>ul li:not(:last-child){margin-bottom:var(--x-font-size)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
15
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XCardComponent, isStandalone: true, selector: "x-card", usesInheritance: true, ngImport: i0, template: "<div #card class=\"x-card\" [ngClass]=\"classMap()\" [style.width]=\"width()\">\r\n @if (header()) {\r\n <div class=\"x-card-header\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-card-body\" [ngStyle]=\"bodyStyle()\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".x-card{margin:0;padding:0}.x-card{font-size:var(--x-font-size);box-sizing:border-box;position:relative;border-radius:var(--x-border-radius);transition:box-shadow .3s}.x-card-always,.x-card-hover:hover{box-shadow:var(--x-box-shadow)}.x-card-header{display:flex;align-items:center;justify-content:space-between;padding:.675rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-card-body{padding:var(--x-font-size);width:100%}.x-card-body>ul li:not(:last-child){margin-bottom:var(--x-font-size)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardComponent, decorators: [{
19
19
  type: Component,
20
- args: [{ selector: `${XCardPrefix}`, standalone: true, imports: [NgClass, NgStyle, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #card class=\"x-card\" [ngClass]=\"classMap()\" [style.width]=\"width()\">\r\n @if (header()) {\r\n <div class=\"x-card-header\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-card-body\" [ngStyle]=\"bodyStyle()\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".x-card{margin:0;padding:0;font-size:var(--x-font-size);box-sizing:border-box;position:relative;border-radius:var(--x-border-radius);transition:box-shadow .3s}.x-card-always,.x-card-hover:hover{box-shadow:var(--x-box-shadow)}.x-card-header{display:flex;align-items:center;justify-content:space-between;padding:.675rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-card-body{padding:var(--x-font-size);width:100%}.x-card-body>ul li:not(:last-child){margin-bottom:var(--x-font-size)}\n"] }]
20
+ args: [{ selector: `${XCardPrefix}`, standalone: true, imports: [NgClass, NgStyle, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #card class=\"x-card\" [ngClass]=\"classMap()\" [style.width]=\"width()\">\r\n @if (header()) {\r\n <div class=\"x-card-header\">\r\n <ng-container *xOutlet=\"header()\">{{ header() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-card-body\" [ngStyle]=\"bodyStyle()\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".x-card{margin:0;padding:0}.x-card{font-size:var(--x-font-size);box-sizing:border-box;position:relative;border-radius:var(--x-border-radius);transition:box-shadow .3s}.x-card-always,.x-card-hover:hover{box-shadow:var(--x-box-shadow)}.x-card-header{display:flex;align-items:center;justify-content:space-between;padding:.675rem;border-bottom:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-card-body{padding:var(--x-font-size);width:100%}.x-card-body>ul li:not(:last-child){margin-bottom:var(--x-font-size)}\n"] }]
21
21
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jYXJkL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FyZC9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVduRCxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUFUakQ7O1FBVUUsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDOUQsQ0FBQyxDQUFDLENBQUM7S0FDTDtpSUFKWSxjQUFjO3FIQUFkLGNBQWMseUZDaEIzQixrV0FVQSw0akJEQVksT0FBTyxvRkFBRSxPQUFPLDJFQUFrQixnQkFBZ0I7OzJGQU1qRCxjQUFjO2tCQVQxQixTQUFTOytCQUNFLEdBQUcsV0FBVyxFQUFFLGNBQ2QsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLENBQUMsaUJBRzlDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWENhcmRQcmVmaXgsIFhDYXJkUHJvcGVydHkgfSBmcm9tICcuL2NhcmQucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBYSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2ljb24nO1xyXG5pbXBvcnQgeyBYT3V0bGV0RGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvb3V0bGV0JztcclxuaW1wb3J0IHsgTmdDbGFzcywgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WENhcmRQcmVmaXh9YCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ1N0eWxlLCBYSWNvbkNvbXBvbmVudCwgWE91dGxldERpcmVjdGl2ZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYQ2FyZENvbXBvbmVudCBleHRlbmRzIFhDYXJkUHJvcGVydHkge1xyXG4gIGNsYXNzTWFwID0gY29tcHV0ZWQoKCkgPT4gKHtcclxuICAgIFtgJHtYQ2FyZFByZWZpeH0tJHt0aGlzLnNoYWRvdygpfWBdOiAhWElzRW1wdHkodGhpcy5zaGFkb3coKSlcclxuICB9KSk7XHJcbn1cclxuIiwiPGRpdiAjY2FyZCBjbGFzcz1cIngtY2FyZFwiIFtuZ0NsYXNzXT1cImNsYXNzTWFwKClcIiBbc3R5bGUud2lkdGhdPVwid2lkdGgoKVwiPlxyXG4gIEBpZiAoaGVhZGVyKCkpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJ4LWNhcmQtaGVhZGVyXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJoZWFkZXIoKVwiPnt7IGhlYWRlcigpIH19PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FyZC1ib2R5XCIgW25nU3R5bGVdPVwiYm9keVN0eWxlKClcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS9jYXJkL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2FyZC9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQVduRCxNQUFNLE9BQU8sY0FBZSxTQUFRLGFBQWE7SUFUakQ7O1FBVUUsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3pCLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDOUQsQ0FBQyxDQUFDLENBQUM7S0FDTDtpSUFKWSxjQUFjO3FIQUFkLGNBQWMseUZDaEIzQixrV0FVQSxva0JEQVksT0FBTyxvRkFBRSxPQUFPLDJFQUFrQixnQkFBZ0I7OzJGQU1qRCxjQUFjO2tCQVQxQixTQUFTOytCQUNFLEdBQUcsV0FBVyxFQUFFLGNBQ2QsSUFBSSxXQUNQLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLENBQUMsaUJBRzlDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWENhcmRQcmVmaXgsIFhDYXJkUHJvcGVydHkgfSBmcm9tICcuL2NhcmQucHJvcGVydHknO1xyXG5pbXBvcnQgeyBYSXNFbXB0eSB9IGZyb20gJ0BuZy1uZXN0L3VpL2NvcmUnO1xyXG5pbXBvcnQgeyBYSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2ljb24nO1xyXG5pbXBvcnQgeyBYT3V0bGV0RGlyZWN0aXZlIH0gZnJvbSAnQG5nLW5lc3QvdWkvb3V0bGV0JztcclxuaW1wb3J0IHsgTmdDbGFzcywgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WENhcmRQcmVmaXh9YCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ1N0eWxlLCBYSWNvbkNvbXBvbmVudCwgWE91dGxldERpcmVjdGl2ZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYQ2FyZENvbXBvbmVudCBleHRlbmRzIFhDYXJkUHJvcGVydHkge1xyXG4gIGNsYXNzTWFwID0gY29tcHV0ZWQoKCkgPT4gKHtcclxuICAgIFtgJHtYQ2FyZFByZWZpeH0tJHt0aGlzLnNoYWRvdygpfWBdOiAhWElzRW1wdHkodGhpcy5zaGFkb3coKSlcclxuICB9KSk7XHJcbn1cclxuIiwiPGRpdiAjY2FyZCBjbGFzcz1cIngtY2FyZFwiIFtuZ0NsYXNzXT1cImNsYXNzTWFwKClcIiBbc3R5bGUud2lkdGhdPVwid2lkdGgoKVwiPlxyXG4gIEBpZiAoaGVhZGVyKCkpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJ4LWNhcmQtaGVhZGVyXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKnhPdXRsZXQ9XCJoZWFkZXIoKVwiPnt7IGhlYWRlcigpIH19PC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICB9XHJcbiAgPGRpdiBjbGFzcz1cIngtY2FyZC1ib2R5XCIgW25nU3R5bGVdPVwiYm9keVN0eWxlKClcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
2
2
  import { XCardComponent } from './card.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class XCardModule {
5
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.6", ngImport: i0, type: XCardModule, imports: [XCardComponent], exports: [XCardComponent] }); }
7
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardModule, imports: [XCardComponent] }); }
5
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XCardModule, imports: [XCardComponent], exports: [XCardComponent] }); }
7
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardModule, imports: [XCardComponent] }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  exports: [XCardComponent],
@@ -67,10 +67,10 @@ export class XCardProperty extends XPropertyFunction(X_CARD_CONFIG_NAME) {
67
67
  */
68
68
  this.shadow = input(this.config?.shadow ?? 'always');
69
69
  }
70
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
71
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.6", type: XCardProperty, selector: "x-card-property", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, bodyStyle: { classPropertyName: "bodyStyle", publicName: "bodyStyle", isSignal: true, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, shadow: { classPropertyName: "shadow", publicName: "shadow", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
70
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
71
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XCardProperty, selector: "x-card-property", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, bodyStyle: { classPropertyName: "bodyStyle", publicName: "bodyStyle", isSignal: true, isRequired: false, transformFunction: null }, header: { classPropertyName: "header", publicName: "header", isSignal: true, isRequired: false, transformFunction: null }, shadow: { classPropertyName: "shadow", publicName: "shadow", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCardProperty, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCardProperty, decorators: [{
74
74
  type: Component,
75
75
  args: [{ selector: `${XCardPrefix}-property`, template: '' }]
76
76
  }] });
@@ -132,12 +132,12 @@ export class XCarouselPanelComponent extends XCarouselPanelProperty {
132
132
  this.carousel.setActiveItem(this.index());
133
133
  }
134
134
  }
135
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCarouselPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
136
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.6", type: XCarouselPanelComponent, isStandalone: true, selector: "x-carousel-panel", host: { properties: { "class.x-carousel-card": "this.getCard", "class.x-activated": "this.getActivated", "class.x-carousel-in-stage": "this.getInStage", "class.x-carousel-animating": "this.getAnimating", "style.transform": "this.getTransform" } }, usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (card()) {\r\n <div [hidden]=\"activeSignal()\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
135
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCarouselPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
136
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XCarouselPanelComponent, isStandalone: true, selector: "x-carousel-panel", host: { properties: { "class.x-carousel-card": "this.getCard", "class.x-activated": "this.getActivated", "class.x-carousel-in-stage": "this.getInStage", "class.x-carousel-animating": "this.getAnimating", "style.transform": "this.getTransform" } }, usesInheritance: true, ngImport: i0, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (card()) {\r\n <div [hidden]=\"activeSignal()\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0}.x-carousel-panel{box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"], animations: [XDropAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
137
137
  }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XCarouselPanelComponent, decorators: [{
139
139
  type: Component,
140
- args: [{ selector: `${XCarouselPanelPrefix}`, standalone: true, animations: [XDropAnimation], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (card()) {\r\n <div [hidden]=\"activeSignal()\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0;box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"] }]
140
+ args: [{ selector: `${XCarouselPanelPrefix}`, standalone: true, animations: [XDropAnimation], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div #carouselPanel class=\"x-carousel-panel\" (click)=\"panelClick()\">\r\n @if (card()) {\r\n <div [hidden]=\"activeSignal()\" class=\"x-carousel-mask\"></div>\r\n }\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".x-carousel-panel{margin:0;padding:0}.x-carousel-panel{box-sizing:border-box;width:100%;height:100%;display:inline-block}\n"] }]
141
141
  }], propDecorators: { getCard: [{
142
142
  type: HostBinding,
143
143
  args: ['class.x-carousel-card']
@@ -154,4 +154,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.6", ngImpor
154
154
  type: HostBinding,
155
155
  args: ['style.transform']
156
156
  }] } });
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2Fyb3VzZWwvY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2Fyb3VzZWwvY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLHVCQUF1QixFQUN2QixNQUFNLEVBRU4sTUFBTSxFQUNOLFdBQVcsRUFDWCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVcxQyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsc0JBQXNCO0lBVG5FOztRQXlCRSxVQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixVQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsa0JBQWEsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQUcs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Q3BELENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3BFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0gsQ0FBQztpSUE3SFUsdUJBQXVCO3FIQUF2Qix1QkFBdUIsMlZDMUJwQywyTkFNQSxxSURnQmMsQ0FBQyxjQUFjLENBQUM7OzJGQUlqQix1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UsR0FBRyxvQkFBb0IsRUFBRSxjQUN2QixJQUFJLGNBR0osQ0FBQyxjQUFjLENBQUMsaUJBQ2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFHTCxPQUFPO3NCQUFoRCxXQUFXO3VCQUFDLHVCQUF1QjtnQkFHRSxZQUFZO3NCQUFqRCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFHYyxVQUFVO3NCQUF2RCxXQUFXO3VCQUFDLDJCQUEyQjtnQkFHTyxZQUFZO3NCQUExRCxXQUFXO3VCQUFDLDRCQUE0QjtnQkFHTCxZQUFZO3NCQUEvQyxXQUFXO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIGluamVjdCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgc2lnbmFsLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIGNvbXB1dGVkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhDYXJvdXNlbFBhbmVsUHJlZml4LCBYQ2Fyb3VzZWxQYW5lbFByb3BlcnR5IH0gZnJvbSAnLi9jYXJvdXNlbC5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhEcm9wQW5pbWF0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhDYXJvdXNlbENvbXBvbmVudCB9IGZyb20gJy4vY2Fyb3VzZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WENhcm91c2VsUGFuZWxQcmVmaXh9YCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJvdXNlbC1wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbWERyb3BBbmltYXRpb25dLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhDYXJvdXNlbFBhbmVsQ29tcG9uZW50IGV4dGVuZHMgWENhcm91c2VsUGFuZWxQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtY2Fyb3VzZWwtY2FyZCcpIGdldCBnZXRDYXJkKCkge1xyXG4gICAgcmV0dXJuICEhdGhpcy5jYXJvdXNlbD8uY2FyZCgpO1xyXG4gIH1cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtYWN0aXZhdGVkJykgZ2V0IGdldEFjdGl2YXRlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVNpZ25hbCgpO1xyXG4gIH1cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtY2Fyb3VzZWwtaW4tc3RhZ2UnKSBnZXQgZ2V0SW5TdGFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmluU3RhZ2UoKTtcclxuICB9XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy54LWNhcm91c2VsLWFuaW1hdGluZycpIGdldCBnZXRBbmltYXRpbmcoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hbmltYXRpbmcoKTtcclxuICB9XHJcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS50cmFuc2Zvcm0nKSBnZXQgZ2V0VHJhbnNmb3JtKCkge1xyXG4gICAgcmV0dXJuIGAke3RoaXMudHJhbnNsYXRlVHlwZSgpfSgke3RoaXMudHJhbnNsYXRlKCl9cHgpIHNjYWxlKCR7dGhpcy5zY2FsZSgpfSlgO1xyXG4gIH1cclxuICBpbmRleCA9IHNpZ25hbCgwKTtcclxuICBhbmltYXRpbmcgPSBzaWduYWwoZmFsc2UpO1xyXG4gIHByZVRyYW5zbGF0ZSE6IG51bWJlcjtcclxuICBjYXJkU2NhbGUgPSBzaWduYWwoMC44Myk7XHJcbiAgc2NhbGUgPSBzaWduYWwoMSk7XHJcbiAgdHJhbnNsYXRlID0gc2lnbmFsKDApO1xyXG4gIHRyYW5zbGF0ZVR5cGUgPSBzaWduYWwoJ3RyYW5zbGF0ZVgnKTtcclxuICBpblN0YWdlID0gc2lnbmFsKGZhbHNlKTtcclxuICB1blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNhcm91c2VsID0gaW5qZWN0KFhDYXJvdXNlbENvbXBvbmVudCwgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KTtcclxuICBhY3RpdmVTaWduYWwgPSBzaWduYWwodGhpcy5hY3RpdmUoKSk7XHJcbiAgY2FyZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY2Fyb3VzZWw/LmNhcmQoKSA/PyBmYWxzZSk7XHJcbiAgcHJpdmF0ZSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5jYXJvdXNlbCkgcmV0dXJuO1xyXG4gICAgdGhpcy5jYXJvdXNlbC5jb3VudC51cGRhdGUoKHgpID0+IHggKyAxKTtcclxuICAgIHRoaXMuY2Fyb3VzZWwuc3RhcnQudXBkYXRlKCh4KSA9PiB4ICsgMSk7XHJcbiAgICB0aGlzLmluZGV4LnNldCh0aGlzLmNhcm91c2VsLnN0YXJ0KCkpO1xyXG5cclxuICAgIHRoaXMuY2Fyb3VzZWwucGFuZWxzLnVwZGF0ZSgoeCkgPT4ge1xyXG4gICAgICB4LnB1c2godGhpcy5lbGVtZW50UmVmKTtcclxuICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jYXJvdXNlbC51cGRhdGVQYW5lbC5waXBlKHRha2VVbnRpbCh0aGlzLnVuU3ViamVjdCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMudXBkYXRlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICB0aGlzLmNhcm91c2VsLnN0YXJ0LnVwZGF0ZSgoeCkgPT4geCAtIDEpO1xyXG4gICAgY29uc3QgaWR4ID0gdGhpcy5jYXJvdXNlbC5wYW5lbHMoKS5pbmRleE9mKHRoaXMuZWxlbWVudFJlZik7XHJcbiAgICB0aGlzLmNhcm91c2VsLnBhbmVscy51cGRhdGUoKHgpID0+IHtcclxuICAgICAgeC5zcGxpY2UoaWR4LCAxKTtcclxuICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICBjb25zdCBpc0FjdGl2ZTogYm9vbGVhbiA9IHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgPT09IHRoaXMuaW5kZXgoKTtcclxuICAgIGlmICh0aGlzLmFjdGl2ZVNpZ25hbCgpICE9PSBpc0FjdGl2ZSkge1xyXG4gICAgICB0aGlzLmFjdGl2ZVNpZ25hbC5zZXQoaXNBY3RpdmUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0U3R5bGVzKCkge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgY29uc3QgaGVpZ2h0ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgbGV0IG9mZnNldCA9IHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgLSB0aGlzLmluZGV4KCk7XHJcbiAgICBsZXQgZGlzdGFuY2UgPSB3aWR0aDtcclxuICAgIGlmICh0aGlzLmNhcm91c2VsLmNhcmQoKSkge1xyXG4gICAgICBpZiAodGhpcy5jYXJvdXNlbC5kaXJlY3Rpb24oKSA9PT0gJ3ZlcnRpY2FsJykge1xyXG4gICAgICAgIGNvbnNvbGUud2FybignW3gtY2Fyb3VzZWxdIHZlcnRpY2FsIGRpcmVjdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGluIGNhcmQgbW9kZScpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaW5TdGFnZS5zZXQoTWF0aC5yb3VuZChNYXRoLmFicyhvZmZzZXQpKSA8PSAxKTtcclxuICAgICAgdGhpcy50cmFuc2xhdGUuc2V0KHRoaXMuY2FsY0NhcmRUcmFuc2xhdGUodGhpcy5pbmRleCgpLCB0aGlzLmNhcm91c2VsLmFjdGl2ZSgpKSEpO1xyXG4gICAgICB0aGlzLnNjYWxlLnNldChvZmZzZXQgPT09IDAgPyAxIDogdGhpcy5jYXJkU2NhbGUoKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5jYXJvdXNlbD8uZGlyZWN0aW9uKCkgPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgICBkaXN0YW5jZSA9IGhlaWdodDtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZVR5cGUuc2V0KCd0cmFuc2xhdGVZJyk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWFwOiBhbnkgPSB7XHJcbiAgICAgICAgJy0yJzogLWRpc3RhbmNlLFxyXG4gICAgICAgICctMSc6IGRpc3RhbmNlLFxyXG4gICAgICAgICcwJzogMCxcclxuICAgICAgICAnMSc6IDAgLSBkaXN0YW5jZSxcclxuICAgICAgICAnMic6IGRpc3RhbmNlXHJcbiAgICAgIH07XHJcbiAgICAgIG9mZnNldCA9IG9mZnNldCA8IC0yID8gLTIgOiBvZmZzZXQgPiAyID8gMiA6IG9mZnNldDtcclxuICAgICAgdGhpcy50cmFuc2xhdGUuc2V0KG1hcFtvZmZzZXRdKTtcclxuICAgIH1cclxuICAgIHRoaXMuYW5pbWF0aW5nLnNldChcclxuICAgICAgdGhpcy5jYXJvdXNlbC5hY3RpdmUoKSA9PT0gdGhpcy5pbmRleCgpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5iZWZvcmUoKSA9PT0gdGhpcy5pbmRleCgpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5zdGFydCgpID09PSBNYXRoLmFicyhvZmZzZXQpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5jYXJkKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjYWxjQ2FyZFRyYW5zbGF0ZShpbmRleDogbnVtYmVyLCBhY3RpdmVJbmRleDogbnVtYmVyKSB7XHJcbiAgICBpZiAoIXRoaXMuY2Fyb3VzZWwpIHJldHVybjtcclxuICAgIGNvbnN0IHBhcmVudFdpZHRoID0gdGhpcy5jYXJvdXNlbC5jYXJvdXNlbCgpLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICBsZXQgb2Zmc2V0OiBudW1iZXIgPSBpbmRleCAtIGFjdGl2ZUluZGV4O1xyXG4gICAgbGV0IGFjdGl2ZUZpcnN0T3JMYXN0ID0gdGhpcy5jYXJvdXNlbC5zdGFydCgpID4gMSAmJiB0aGlzLmNhcm91c2VsLnN0YXJ0KCkgPT09IE1hdGguYWJzKG9mZnNldCk7XHJcbiAgICBpZiAodGhpcy5pblN0YWdlKCkgfHwgYWN0aXZlRmlyc3RPckxhc3QpIHtcclxuICAgICAgaWYgKGFjdGl2ZUZpcnN0T3JMYXN0KSBvZmZzZXQgPSBvZmZzZXQgPCAwID8gMSA6IC0xO1xyXG4gICAgICByZXR1cm4gKHBhcmVudFdpZHRoICogKCgyIC0gdGhpcy5jYXJkU2NhbGUoKSkgKiBvZmZzZXQgKyAxKSkgLyA0O1xyXG4gICAgfSBlbHNlIGlmIChpbmRleCA8IGFjdGl2ZUluZGV4KSB7XHJcbiAgICAgIHJldHVybiAoLSgxICsgdGhpcy5jYXJkU2NhbGUoKSkgKiBwYXJlbnRXaWR0aCkgLyA0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICgoMyArIHRoaXMuY2FyZFNjYWxlKCkpICogcGFyZW50V2lkdGgpIC8gNDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZSgpIHtcclxuICAgIHRoaXMuc2V0QWN0aXZlKCk7XHJcbiAgICB0aGlzLnNldFN0eWxlcygpO1xyXG4gIH1cclxuXHJcbiAgcGFuZWxDbGljaygpIHtcclxuICAgIGlmICghdGhpcy5jYXJvdXNlbCkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuY2Fyb3VzZWwuY2FyZCgpICYmIHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgIT09IHRoaXMuaW5kZXgoKSkge1xyXG4gICAgICB0aGlzLmNhcm91c2VsLmF1dG9wbGF5KCkgJiYgdGhpcy5jYXJvdXNlbC5yZXNldEludGVydmFsKCk7XHJcbiAgICAgIHRoaXMuY2Fyb3VzZWwuc2V0QWN0aXZlSXRlbSh0aGlzLmluZGV4KCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICNjYXJvdXNlbFBhbmVsIGNsYXNzPVwieC1jYXJvdXNlbC1wYW5lbFwiIChjbGljayk9XCJwYW5lbENsaWNrKClcIj5cclxuICBAaWYgKGNhcmQoKSkge1xyXG4gICAgPGRpdiBbaGlkZGVuXT1cImFjdGl2ZVNpZ25hbCgpXCIgY2xhc3M9XCJ4LWNhcm91c2VsLW1hc2tcIj48L2Rpdj5cclxuICB9XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuIl19
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2Fyb3VzZWwvY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGliL25nLW5lc3QvdWkvY2Fyb3VzZWwvY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLHVCQUF1QixFQUN2QixNQUFNLEVBRU4sTUFBTSxFQUNOLFdBQVcsRUFDWCxRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVcxQyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsc0JBQXNCO0lBVG5FOztRQXlCRSxVQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixVQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEIsa0JBQWEsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckMsWUFBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixjQUFTLEdBQUcs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Q3BELENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3BFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0gsQ0FBQztpSUE3SFUsdUJBQXVCO3FIQUF2Qix1QkFBdUIsMlZDMUJwQywyTkFNQSx1SkRnQmMsQ0FBQyxjQUFjLENBQUM7OzJGQUlqQix1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UsR0FBRyxvQkFBb0IsRUFBRSxjQUN2QixJQUFJLGNBR0osQ0FBQyxjQUFjLENBQUMsaUJBQ2IsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFHTCxPQUFPO3NCQUFoRCxXQUFXO3VCQUFDLHVCQUF1QjtnQkFHRSxZQUFZO3NCQUFqRCxXQUFXO3VCQUFDLG1CQUFtQjtnQkFHYyxVQUFVO3NCQUF2RCxXQUFXO3VCQUFDLDJCQUEyQjtnQkFHTyxZQUFZO3NCQUExRCxXQUFXO3VCQUFDLDRCQUE0QjtnQkFHTCxZQUFZO3NCQUEvQyxXQUFXO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uSW5pdCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBFbGVtZW50UmVmLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIGluamVjdCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgc2lnbmFsLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIGNvbXB1dGVkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFhDYXJvdXNlbFBhbmVsUHJlZml4LCBYQ2Fyb3VzZWxQYW5lbFByb3BlcnR5IH0gZnJvbSAnLi9jYXJvdXNlbC5wcm9wZXJ0eSc7XHJcbmltcG9ydCB7IFhEcm9wQW5pbWF0aW9uIH0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IFhDYXJvdXNlbENvbXBvbmVudCB9IGZyb20gJy4vY2Fyb3VzZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogYCR7WENhcm91c2VsUGFuZWxQcmVmaXh9YCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJvdXNlbC1wYW5lbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY2Fyb3VzZWwtcGFuZWwuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbWERyb3BBbmltYXRpb25dLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFhDYXJvdXNlbFBhbmVsQ29tcG9uZW50IGV4dGVuZHMgWENhcm91c2VsUGFuZWxQcm9wZXJ0eSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtY2Fyb3VzZWwtY2FyZCcpIGdldCBnZXRDYXJkKCkge1xyXG4gICAgcmV0dXJuICEhdGhpcy5jYXJvdXNlbD8uY2FyZCgpO1xyXG4gIH1cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtYWN0aXZhdGVkJykgZ2V0IGdldEFjdGl2YXRlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVNpZ25hbCgpO1xyXG4gIH1cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLngtY2Fyb3VzZWwtaW4tc3RhZ2UnKSBnZXQgZ2V0SW5TdGFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmluU3RhZ2UoKTtcclxuICB9XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy54LWNhcm91c2VsLWFuaW1hdGluZycpIGdldCBnZXRBbmltYXRpbmcoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hbmltYXRpbmcoKTtcclxuICB9XHJcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS50cmFuc2Zvcm0nKSBnZXQgZ2V0VHJhbnNmb3JtKCkge1xyXG4gICAgcmV0dXJuIGAke3RoaXMudHJhbnNsYXRlVHlwZSgpfSgke3RoaXMudHJhbnNsYXRlKCl9cHgpIHNjYWxlKCR7dGhpcy5zY2FsZSgpfSlgO1xyXG4gIH1cclxuICBpbmRleCA9IHNpZ25hbCgwKTtcclxuICBhbmltYXRpbmcgPSBzaWduYWwoZmFsc2UpO1xyXG4gIHByZVRyYW5zbGF0ZSE6IG51bWJlcjtcclxuICBjYXJkU2NhbGUgPSBzaWduYWwoMC44Myk7XHJcbiAgc2NhbGUgPSBzaWduYWwoMSk7XHJcbiAgdHJhbnNsYXRlID0gc2lnbmFsKDApO1xyXG4gIHRyYW5zbGF0ZVR5cGUgPSBzaWduYWwoJ3RyYW5zbGF0ZVgnKTtcclxuICBpblN0YWdlID0gc2lnbmFsKGZhbHNlKTtcclxuICB1blN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNhcm91c2VsID0gaW5qZWN0KFhDYXJvdXNlbENvbXBvbmVudCwgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KTtcclxuICBhY3RpdmVTaWduYWwgPSBzaWduYWwodGhpcy5hY3RpdmUoKSk7XHJcbiAgY2FyZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY2Fyb3VzZWw/LmNhcmQoKSA/PyBmYWxzZSk7XHJcbiAgcHJpdmF0ZSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5jYXJvdXNlbCkgcmV0dXJuO1xyXG4gICAgdGhpcy5jYXJvdXNlbC5jb3VudC51cGRhdGUoKHgpID0+IHggKyAxKTtcclxuICAgIHRoaXMuY2Fyb3VzZWwuc3RhcnQudXBkYXRlKCh4KSA9PiB4ICsgMSk7XHJcbiAgICB0aGlzLmluZGV4LnNldCh0aGlzLmNhcm91c2VsLnN0YXJ0KCkpO1xyXG5cclxuICAgIHRoaXMuY2Fyb3VzZWwucGFuZWxzLnVwZGF0ZSgoeCkgPT4ge1xyXG4gICAgICB4LnB1c2godGhpcy5lbGVtZW50UmVmKTtcclxuICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jYXJvdXNlbC51cGRhdGVQYW5lbC5waXBlKHRha2VVbnRpbCh0aGlzLnVuU3ViamVjdCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMudXBkYXRlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICB0aGlzLmNhcm91c2VsLnN0YXJ0LnVwZGF0ZSgoeCkgPT4geCAtIDEpO1xyXG4gICAgY29uc3QgaWR4ID0gdGhpcy5jYXJvdXNlbC5wYW5lbHMoKS5pbmRleE9mKHRoaXMuZWxlbWVudFJlZik7XHJcbiAgICB0aGlzLmNhcm91c2VsLnBhbmVscy51cGRhdGUoKHgpID0+IHtcclxuICAgICAgeC5zcGxpY2UoaWR4LCAxKTtcclxuICAgICAgcmV0dXJuIFsuLi54XTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICBjb25zdCBpc0FjdGl2ZTogYm9vbGVhbiA9IHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgPT09IHRoaXMuaW5kZXgoKTtcclxuICAgIGlmICh0aGlzLmFjdGl2ZVNpZ25hbCgpICE9PSBpc0FjdGl2ZSkge1xyXG4gICAgICB0aGlzLmFjdGl2ZVNpZ25hbC5zZXQoaXNBY3RpdmUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0U3R5bGVzKCkge1xyXG4gICAgaWYgKCF0aGlzLmNhcm91c2VsKSByZXR1cm47XHJcbiAgICBjb25zdCB3aWR0aCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgY29uc3QgaGVpZ2h0ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xyXG4gICAgbGV0IG9mZnNldCA9IHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgLSB0aGlzLmluZGV4KCk7XHJcbiAgICBsZXQgZGlzdGFuY2UgPSB3aWR0aDtcclxuICAgIGlmICh0aGlzLmNhcm91c2VsLmNhcmQoKSkge1xyXG4gICAgICBpZiAodGhpcy5jYXJvdXNlbC5kaXJlY3Rpb24oKSA9PT0gJ3ZlcnRpY2FsJykge1xyXG4gICAgICAgIGNvbnNvbGUud2FybignW3gtY2Fyb3VzZWxdIHZlcnRpY2FsIGRpcmVjdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGluIGNhcmQgbW9kZScpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaW5TdGFnZS5zZXQoTWF0aC5yb3VuZChNYXRoLmFicyhvZmZzZXQpKSA8PSAxKTtcclxuICAgICAgdGhpcy50cmFuc2xhdGUuc2V0KHRoaXMuY2FsY0NhcmRUcmFuc2xhdGUodGhpcy5pbmRleCgpLCB0aGlzLmNhcm91c2VsLmFjdGl2ZSgpKSEpO1xyXG4gICAgICB0aGlzLnNjYWxlLnNldChvZmZzZXQgPT09IDAgPyAxIDogdGhpcy5jYXJkU2NhbGUoKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5jYXJvdXNlbD8uZGlyZWN0aW9uKCkgPT09ICd2ZXJ0aWNhbCcpIHtcclxuICAgICAgICBkaXN0YW5jZSA9IGhlaWdodDtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZVR5cGUuc2V0KCd0cmFuc2xhdGVZJyk7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgbWFwOiBhbnkgPSB7XHJcbiAgICAgICAgJy0yJzogLWRpc3RhbmNlLFxyXG4gICAgICAgICctMSc6IGRpc3RhbmNlLFxyXG4gICAgICAgICcwJzogMCxcclxuICAgICAgICAnMSc6IDAgLSBkaXN0YW5jZSxcclxuICAgICAgICAnMic6IGRpc3RhbmNlXHJcbiAgICAgIH07XHJcbiAgICAgIG9mZnNldCA9IG9mZnNldCA8IC0yID8gLTIgOiBvZmZzZXQgPiAyID8gMiA6IG9mZnNldDtcclxuICAgICAgdGhpcy50cmFuc2xhdGUuc2V0KG1hcFtvZmZzZXRdKTtcclxuICAgIH1cclxuICAgIHRoaXMuYW5pbWF0aW5nLnNldChcclxuICAgICAgdGhpcy5jYXJvdXNlbC5hY3RpdmUoKSA9PT0gdGhpcy5pbmRleCgpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5iZWZvcmUoKSA9PT0gdGhpcy5pbmRleCgpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5zdGFydCgpID09PSBNYXRoLmFicyhvZmZzZXQpIHx8XHJcbiAgICAgICAgdGhpcy5jYXJvdXNlbC5jYXJkKClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjYWxjQ2FyZFRyYW5zbGF0ZShpbmRleDogbnVtYmVyLCBhY3RpdmVJbmRleDogbnVtYmVyKSB7XHJcbiAgICBpZiAoIXRoaXMuY2Fyb3VzZWwpIHJldHVybjtcclxuICAgIGNvbnN0IHBhcmVudFdpZHRoID0gdGhpcy5jYXJvdXNlbC5jYXJvdXNlbCgpLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICBsZXQgb2Zmc2V0OiBudW1iZXIgPSBpbmRleCAtIGFjdGl2ZUluZGV4O1xyXG4gICAgbGV0IGFjdGl2ZUZpcnN0T3JMYXN0ID0gdGhpcy5jYXJvdXNlbC5zdGFydCgpID4gMSAmJiB0aGlzLmNhcm91c2VsLnN0YXJ0KCkgPT09IE1hdGguYWJzKG9mZnNldCk7XHJcbiAgICBpZiAodGhpcy5pblN0YWdlKCkgfHwgYWN0aXZlRmlyc3RPckxhc3QpIHtcclxuICAgICAgaWYgKGFjdGl2ZUZpcnN0T3JMYXN0KSBvZmZzZXQgPSBvZmZzZXQgPCAwID8gMSA6IC0xO1xyXG4gICAgICByZXR1cm4gKHBhcmVudFdpZHRoICogKCgyIC0gdGhpcy5jYXJkU2NhbGUoKSkgKiBvZmZzZXQgKyAxKSkgLyA0O1xyXG4gICAgfSBlbHNlIGlmIChpbmRleCA8IGFjdGl2ZUluZGV4KSB7XHJcbiAgICAgIHJldHVybiAoLSgxICsgdGhpcy5jYXJkU2NhbGUoKSkgKiBwYXJlbnRXaWR0aCkgLyA0O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICgoMyArIHRoaXMuY2FyZFNjYWxlKCkpICogcGFyZW50V2lkdGgpIC8gNDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVwZGF0ZSgpIHtcclxuICAgIHRoaXMuc2V0QWN0aXZlKCk7XHJcbiAgICB0aGlzLnNldFN0eWxlcygpO1xyXG4gIH1cclxuXHJcbiAgcGFuZWxDbGljaygpIHtcclxuICAgIGlmICghdGhpcy5jYXJvdXNlbCkgcmV0dXJuO1xyXG4gICAgaWYgKHRoaXMuY2Fyb3VzZWwuY2FyZCgpICYmIHRoaXMuY2Fyb3VzZWwuYWN0aXZlKCkgIT09IHRoaXMuaW5kZXgoKSkge1xyXG4gICAgICB0aGlzLmNhcm91c2VsLmF1dG9wbGF5KCkgJiYgdGhpcy5jYXJvdXNlbC5yZXNldEludGVydmFsKCk7XHJcbiAgICAgIHRoaXMuY2Fyb3VzZWwuc2V0QWN0aXZlSXRlbSh0aGlzLmluZGV4KCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICNjYXJvdXNlbFBhbmVsIGNsYXNzPVwieC1jYXJvdXNlbC1wYW5lbFwiIChjbGljayk9XCJwYW5lbENsaWNrKClcIj5cclxuICBAaWYgKGNhcmQoKSkge1xyXG4gICAgPGRpdiBbaGlkZGVuXT1cImFjdGl2ZVNpZ25hbCgpXCIgY2xhc3M9XCJ4LWNhcm91c2VsLW1hc2tcIj48L2Rpdj5cclxuICB9XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj5cclxuIl19