@evotor-dev/ui-kit 8.0.0-beta.9 → 8.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/README.md +27 -20
  2. package/assets/icons/category/barcode.svg +1 -0
  3. package/assets/icons/category/calculator.svg +1 -0
  4. package/assets/icons/category/courier.svg +1 -0
  5. package/assets/icons/category/credit-blank.svg +1 -0
  6. package/assets/icons/category/folder-outline.svg +1 -0
  7. package/assets/icons/category/internet.svg +1 -0
  8. package/assets/icons/category/law.svg +1 -0
  9. package/assets/icons/category/person-add.svg +1 -0
  10. package/assets/icons/category/person-check.svg +1 -0
  11. package/assets/icons/category/person-clientcard.svg +1 -0
  12. package/assets/icons/category/person-customer-details-off.svg +1 -0
  13. package/assets/icons/category/person-customer-details.svg +1 -0
  14. package/assets/icons/category/person-group.svg +1 -0
  15. package/assets/icons/category/person-loyality.svg +1 -0
  16. package/assets/icons/category/person-owner.svg +1 -0
  17. package/assets/icons/category/person-profile.svg +1 -0
  18. package/assets/icons/category/person-self-employed.svg +1 -0
  19. package/assets/icons/category/person-seller.svg +1 -0
  20. package/assets/icons/category/person.svg +1 -0
  21. package/assets/icons/category/personnel.svg +1 -0
  22. package/assets/icons/category/restaurant.svg +1 -0
  23. package/assets/icons/category/scissors.svg +1 -0
  24. package/assets/icons/category/service-package.svg +1 -0
  25. package/assets/icons/category/service.svg +1 -0
  26. package/assets/icons/category/shipping.svg +1 -0
  27. package/assets/icons/category/terminal-rent.svg +1 -0
  28. package/assets/icons/category/transport.svg +1 -0
  29. package/assets/icons/emotions/happy.svg +1 -0
  30. package/assets/icons/emotions/neutral.svg +1 -0
  31. package/assets/icons/emotions/sad.svg +1 -0
  32. package/assets/icons/emotions/very-happy.svg +1 -0
  33. package/assets/icons/emotions/very-sad.svg +1 -0
  34. package/assets/icons/header/bell.svg +1 -0
  35. package/assets/icons/header/cart.svg +1 -0
  36. package/assets/icons/header/close.svg +1 -0
  37. package/assets/icons/header/exit.svg +1 -0
  38. package/assets/icons/header/menu.svg +1 -0
  39. package/assets/icons/header/order.svg +1 -0
  40. package/assets/icons/header/profile.svg +1 -0
  41. package/assets/icons/header/request.svg +1 -0
  42. package/assets/icons/header/search.svg +1 -0
  43. package/assets/icons/header/settings.svg +1 -0
  44. package/assets/icons/index.ts +1 -0
  45. package/assets/icons/info/arrow-back.svg +1 -0
  46. package/assets/icons/info/arrow-down.svg +1 -0
  47. package/assets/icons/info/arrow-forward.svg +1 -0
  48. package/assets/icons/info/arrow-up.svg +1 -0
  49. package/assets/icons/info/down-circle-add.svg +1 -0
  50. package/assets/icons/info/down-circle.svg +1 -0
  51. package/assets/icons/info/graph.svg +1 -0
  52. package/assets/icons/info/left-circle.svg +1 -0
  53. package/assets/icons/info/megaphone.svg +1 -0
  54. package/assets/icons/info/right-down.svg +1 -0
  55. package/assets/icons/info/rouble.svg +1 -0
  56. package/assets/icons/info/sale.svg +1 -0
  57. package/assets/icons/info/up-circle-add.svg +1 -0
  58. package/assets/icons/info/up-circle.svg +1 -0
  59. package/assets/icons/info/warehouse.svg +1 -0
  60. package/assets/icons/info/web.svg +1 -0
  61. package/assets/icons/navigation/arrow-left.svg +1 -0
  62. package/assets/icons/navigation/arrow-northeast.svg +1 -0
  63. package/assets/icons/navigation/arrow-right.svg +1 -0
  64. package/assets/icons/navigation/arrow-southwest.svg +1 -0
  65. package/assets/icons/navigation/chevron-down-rounded.svg +1 -0
  66. package/assets/icons/navigation/chevron-left.svg +1 -0
  67. package/assets/icons/navigation/chevron-right.svg +1 -0
  68. package/assets/icons/navigation/chevron-up-rounded.svg +1 -0
  69. package/assets/icons/navigation/drop-down.svg +1 -0
  70. package/assets/icons/navigation/drop-up.svg +1 -0
  71. package/assets/icons/navigation/expand-less.svg +1 -0
  72. package/assets/icons/navigation/expand-more.svg +1 -0
  73. package/assets/icons/navigation/fold-horizontal.svg +1 -0
  74. package/assets/icons/navigation/fold.svg +1 -0
  75. package/assets/icons/navigation/low-priority.svg +1 -0
  76. package/assets/icons/navigation/minus-outlined.svg +1 -0
  77. package/assets/icons/navigation/more.svg +1 -0
  78. package/assets/icons/navigation/plus-outlined.svg +1 -0
  79. package/assets/icons/navigation/sorting.svg +1 -0
  80. package/assets/icons/navigation/subdirectory-left.svg +1 -0
  81. package/assets/icons/navigation/subdirectory-right.svg +1 -0
  82. package/assets/icons/navigation/unfold-horizontal.svg +1 -0
  83. package/assets/icons/navigation/unfold-less.svg +1 -0
  84. package/assets/icons/navigation/unfold-more.svg +1 -0
  85. package/assets/icons/ng-package.json +3 -0
  86. package/assets/icons/side-menu/accounting-nav.svg +1 -0
  87. package/assets/icons/side-menu/acquiring.svg +1 -0
  88. package/assets/icons/side-menu/bill-correction.svg +1 -0
  89. package/assets/icons/side-menu/bill.svg +1 -0
  90. package/assets/icons/side-menu/bookshelf.svg +1 -0
  91. package/assets/icons/side-menu/combined.svg +1 -0
  92. package/assets/icons/side-menu/credit.svg +1 -0
  93. package/assets/icons/side-menu/datamatrix.svg +1 -0
  94. package/assets/icons/side-menu/edo.svg +1 -0
  95. package/assets/icons/side-menu/go-market.svg +1 -0
  96. package/assets/icons/side-menu/key.svg +1 -0
  97. package/assets/icons/side-menu/lk.svg +1 -0
  98. package/assets/icons/side-menu/my-apps.svg +1 -0
  99. package/assets/icons/side-menu/payment.svg +1 -0
  100. package/assets/icons/side-menu/purchase.svg +1 -0
  101. package/assets/icons/side-menu/qr.svg +1 -0
  102. package/assets/icons/side-menu/reports.svg +1 -0
  103. package/assets/icons/side-menu/research-nav.svg +1 -0
  104. package/assets/icons/side-menu/reviews.svg +1 -0
  105. package/assets/icons/side-menu/rouble-outlined.svg +1 -0
  106. package/assets/icons/side-menu/sber.svg +1 -0
  107. package/assets/icons/side-menu/services.svg +1 -0
  108. package/assets/icons/side-menu/shop-2.svg +1 -0
  109. package/assets/icons/side-menu/shop.svg +1 -0
  110. package/assets/icons/side-menu/stats.svg +1 -0
  111. package/assets/icons/side-menu/support-add.svg +1 -0
  112. package/assets/icons/side-menu/support.svg +1 -0
  113. package/assets/icons/side-menu/wallet.svg +1 -0
  114. package/assets/icons/system/accounting.svg +1 -0
  115. package/assets/icons/system/alco.svg +1 -0
  116. package/assets/icons/system/alert-circle.svg +1 -0
  117. package/assets/icons/system/alert-triangle.svg +1 -0
  118. package/assets/icons/system/alert.svg +1 -0
  119. package/assets/icons/system/archive.svg +1 -0
  120. package/assets/icons/system/article.svg +1 -0
  121. package/assets/icons/system/attach.svg +1 -0
  122. package/assets/icons/system/block.svg +1 -0
  123. package/assets/icons/system/book.svg +1 -0
  124. package/assets/icons/system/brand.svg +1 -0
  125. package/assets/icons/system/bulb.svg +1 -0
  126. package/assets/icons/system/bundle.svg +1 -0
  127. package/assets/icons/system/business-case.svg +1 -0
  128. package/assets/icons/system/calendar.svg +1 -0
  129. package/assets/icons/system/call-end.svg +1 -0
  130. package/assets/icons/system/call-later.svg +1 -0
  131. package/assets/icons/system/cashback.svg +1 -0
  132. package/assets/icons/system/cast.svg +1 -0
  133. package/assets/icons/system/chart.svg +1 -0
  134. package/assets/icons/system/chat.svg +1 -0
  135. package/assets/icons/system/check-all.svg +1 -0
  136. package/assets/icons/system/check-rounded.svg +1 -0
  137. package/assets/icons/system/check-square-outlined.svg +1 -0
  138. package/assets/icons/system/check.svg +1 -0
  139. package/assets/icons/system/clock-outlined.svg +1 -0
  140. package/assets/icons/system/clock-solid.svg +1 -0
  141. package/assets/icons/system/clock.svg +1 -0
  142. package/assets/icons/system/comment.svg +1 -0
  143. package/assets/icons/system/compare-add.svg +1 -0
  144. package/assets/icons/system/compare-remove.svg +1 -0
  145. package/assets/icons/system/comparsion.svg +1 -0
  146. package/assets/icons/system/copy.svg +1 -0
  147. package/assets/icons/system/crown.svg +1 -0
  148. package/assets/icons/system/decline.svg +1 -0
  149. package/assets/icons/system/delete-outlined.svg +1 -0
  150. package/assets/icons/system/delete-solid.svg +1 -0
  151. package/assets/icons/system/delete.svg +1 -0
  152. package/assets/icons/system/dialog.svg +1 -0
  153. package/assets/icons/system/display-mode.svg +1 -0
  154. package/assets/icons/system/doc.svg +1 -0
  155. package/assets/icons/system/document-copy.svg +1 -0
  156. package/assets/icons/system/document-filled.svg +1 -0
  157. package/assets/icons/system/document.svg +1 -0
  158. package/assets/icons/system/download.svg +1 -0
  159. package/assets/icons/system/drag.svg +1 -0
  160. package/assets/icons/system/edit-rounded.svg +1 -0
  161. package/assets/icons/system/edit.svg +1 -0
  162. package/assets/icons/system/empty-cart.svg +1 -0
  163. package/assets/icons/system/event.svg +1 -0
  164. package/assets/icons/system/external-link.svg +1 -0
  165. package/assets/icons/system/eye-off.svg +1 -0
  166. package/assets/icons/system/eye.svg +1 -0
  167. package/assets/icons/system/feed.svg +1 -0
  168. package/assets/icons/system/file.svg +1 -0
  169. package/assets/icons/system/filter.svg +1 -0
  170. package/assets/icons/system/fire.svg +1 -0
  171. package/assets/icons/system/fiscal.svg +1 -0
  172. package/assets/icons/system/folder-alert.svg +1 -0
  173. package/assets/icons/system/folder-check.svg +1 -0
  174. package/assets/icons/system/folder-few-check.svg +1 -0
  175. package/assets/icons/system/folder-move.svg +1 -0
  176. package/assets/icons/system/folder.svg +1 -0
  177. package/assets/icons/system/gift.svg +1 -0
  178. package/assets/icons/system/go-to-chat.svg +1 -0
  179. package/assets/icons/system/go-to-minichat.svg +1 -0
  180. package/assets/icons/system/goods.svg +1 -0
  181. package/assets/icons/system/graph-square.svg +1 -0
  182. package/assets/icons/system/healing.svg +1 -0
  183. package/assets/icons/system/help-outlined.svg +1 -0
  184. package/assets/icons/system/help-solid.svg +1 -0
  185. package/assets/icons/system/help.svg +1 -0
  186. package/assets/icons/system/history.svg +1 -0
  187. package/assets/icons/system/id.svg +1 -0
  188. package/assets/icons/system/image.svg +1 -0
  189. package/assets/icons/system/import-export.svg +1 -0
  190. package/assets/icons/system/import.svg +1 -0
  191. package/assets/icons/system/incoming-call.svg +1 -0
  192. package/assets/icons/system/info.svg +1 -0
  193. package/assets/icons/system/insurance.svg +1 -0
  194. package/assets/icons/system/insurancelost.svg +1 -0
  195. package/assets/icons/system/lamp.svg +1 -0
  196. package/assets/icons/system/like.svg +1 -0
  197. package/assets/icons/system/linked-circle-outlined.svg +1 -0
  198. package/assets/icons/system/linked-rounded.svg +1 -0
  199. package/assets/icons/system/linked.svg +1 -0
  200. package/assets/icons/system/list.svg +1 -0
  201. package/assets/icons/system/location-arrow.svg +1 -0
  202. package/assets/icons/system/location-pin.svg +1 -0
  203. package/assets/icons/system/location.svg +1 -0
  204. package/assets/icons/system/lock.svg +1 -0
  205. package/assets/icons/system/login.svg +1 -0
  206. package/assets/icons/system/logo-1c.svg +1 -0
  207. package/assets/icons/system/logo-android.svg +1 -0
  208. package/assets/icons/system/logo-apple.svg +1 -0
  209. package/assets/icons/system/logo-chestniy-znak.svg +1 -0
  210. package/assets/icons/system/logo-evotor.svg +1 -0
  211. package/assets/icons/system/logo-facebook.svg +1 -0
  212. package/assets/icons/system/logo-gomarket.svg +1 -0
  213. package/assets/icons/system/logo-instagram.svg +1 -0
  214. package/assets/icons/system/logo-linux.svg +1 -0
  215. package/assets/icons/system/logo-ok.svg +1 -0
  216. package/assets/icons/system/logo-sber.svg +1 -0
  217. package/assets/icons/system/logo-sbp.svg +1 -0
  218. package/assets/icons/system/logo-telegram.svg +1 -0
  219. package/assets/icons/system/logo-twitter.svg +1 -0
  220. package/assets/icons/system/logo-vk.svg +1 -0
  221. package/assets/icons/system/logo-whatsapp.svg +1 -0
  222. package/assets/icons/system/logo-windows.svg +1 -0
  223. package/assets/icons/system/mail.svg +1 -0
  224. package/assets/icons/system/minus-rounded.svg +1 -0
  225. package/assets/icons/system/minus.svg +1 -0
  226. package/assets/icons/system/monitoring.svg +1 -0
  227. package/assets/icons/system/mute-1.svg +1 -0
  228. package/assets/icons/system/mute.svg +1 -0
  229. package/assets/icons/system/new.svg +1 -0
  230. package/assets/icons/system/news.svg +1 -0
  231. package/assets/icons/system/offline.svg +1 -0
  232. package/assets/icons/system/online.svg +1 -0
  233. package/assets/icons/system/open-outside.svg +1 -0
  234. package/assets/icons/system/os-version.svg +1 -0
  235. package/assets/icons/system/outgoing-call.svg +1 -0
  236. package/assets/icons/system/password.svg +1 -0
  237. package/assets/icons/system/paste.svg +1 -0
  238. package/assets/icons/system/pause-circle.svg +1 -0
  239. package/assets/icons/system/pause.svg +1 -0
  240. package/assets/icons/system/phone.svg +1 -0
  241. package/assets/icons/system/pickup-point.svg +1 -0
  242. package/assets/icons/system/pin-outline.svg +1 -0
  243. package/assets/icons/system/pin.svg +1 -0
  244. package/assets/icons/system/play-circle.svg +1 -0
  245. package/assets/icons/system/plus-rounded.svg +1 -0
  246. package/assets/icons/system/plus.svg +1 -0
  247. package/assets/icons/system/point-up.svg +1 -0
  248. package/assets/icons/system/power-on.svg +1 -0
  249. package/assets/icons/system/power.svg +1 -0
  250. package/assets/icons/system/print.svg +1 -0
  251. package/assets/icons/system/printer.svg +1 -0
  252. package/assets/icons/system/promo.svg +1 -0
  253. package/assets/icons/system/refresh.svg +1 -0
  254. package/assets/icons/system/refund.svg +1 -0
  255. package/assets/icons/system/remote.svg +1 -0
  256. package/assets/icons/system/renew.svg +1 -0
  257. package/assets/icons/system/research.svg +1 -0
  258. package/assets/icons/system/route.svg +1 -0
  259. package/assets/icons/system/sale-options.svg +1 -0
  260. package/assets/icons/system/save.svg +1 -0
  261. package/assets/icons/system/scanner.svg +1 -0
  262. package/assets/icons/system/selected.svg +1 -0
  263. package/assets/icons/system/send.svg +1 -0
  264. package/assets/icons/system/share.svg +1 -0
  265. package/assets/icons/system/sim.svg +1 -0
  266. package/assets/icons/system/smartphone.svg +1 -0
  267. package/assets/icons/system/specify.svg +1 -0
  268. package/assets/icons/system/star-border.svg +1 -0
  269. package/assets/icons/system/star-outlined.svg +1 -0
  270. package/assets/icons/system/star-solid.svg +1 -0
  271. package/assets/icons/system/star.svg +1 -0
  272. package/assets/icons/system/support-agent.svg +1 -0
  273. package/assets/icons/system/swap.svg +1 -0
  274. package/assets/icons/system/sync-error.svg +1 -0
  275. package/assets/icons/system/sync-problem.svg +1 -0
  276. package/assets/icons/system/sync.svg +1 -0
  277. package/assets/icons/system/table.svg +1 -0
  278. package/assets/icons/system/terminal-add.svg +1 -0
  279. package/assets/icons/system/terminal.svg +1 -0
  280. package/assets/icons/system/tools.svg +1 -0
  281. package/assets/icons/system/unarchive.svg +1 -0
  282. package/assets/icons/system/unlock.svg +1 -0
  283. package/assets/icons/system/unpin.svg +1 -0
  284. package/assets/icons/system/upload.svg +1 -0
  285. package/assets/icons/system/usb.svg +1 -0
  286. package/assets/icons/system/user-add.svg +1 -0
  287. package/assets/icons/system/user-check.svg +1 -0
  288. package/assets/icons/system/user-group.svg +1 -0
  289. package/assets/icons/system/user.svg +1 -0
  290. package/assets/icons/system/usergroup.svg +1 -0
  291. package/assets/icons/system/video-call.svg +1 -0
  292. package/assets/icons/system/volume-off.svg +1 -0
  293. package/assets/icons/system/warranty-ended.svg +1 -0
  294. package/assets/icons/system/warranty.svg +1 -0
  295. package/assets/icons/system/wifi.svg +1 -0
  296. package/assets/icons/system/work.svg +1 -0
  297. package/esm2022/icons/index.mjs +2 -9
  298. package/esm2022/lib/common/animations/expand.animation.mjs +3 -3
  299. package/esm2022/lib/common/animations/sidebar.animation.mjs +2 -2
  300. package/esm2022/lib/common/animations/skip-initial-render.animation.mjs +1 -1
  301. package/esm2022/lib/common/collection/evo-collection-fabric.mjs +7 -2
  302. package/esm2022/lib/common/collection/evo-collection.mjs +1 -1
  303. package/esm2022/lib/common/constants/view-breakpoint-streams.mjs +1 -1
  304. package/esm2022/lib/common/evo-base-control.mjs +2 -2
  305. package/esm2022/lib/common/evo-control-state-manager/evo-control-state-manager.mjs +1 -1
  306. package/esm2022/lib/common/evo-control-state-manager/evo-control-state.interface.mjs +1 -1
  307. package/esm2022/lib/common/tokens/assets-path.mjs +22 -0
  308. package/esm2022/lib/common/tokens/icon-resolver.mjs +30 -0
  309. package/esm2022/lib/common/tokens/index.mjs +2 -0
  310. package/esm2022/lib/common/tokens/public_api.mjs +3 -0
  311. package/esm2022/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.mjs +7 -3
  312. package/esm2022/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.mjs +7 -3
  313. package/esm2022/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.mjs +5 -5
  314. package/esm2022/lib/components/evo-accordion/evo-accordion.component.mjs +8 -6
  315. package/esm2022/lib/components/evo-accordion/evo-accordion.module.mjs +9 -34
  316. package/esm2022/lib/components/evo-autocomplete/components/evo-autocomplete/evo-autocomplete.component.mjs +402 -0
  317. package/esm2022/lib/components/evo-autocomplete/components/evo-autocomplete-default-option/evo-autocomplete-default-option.component.mjs +44 -0
  318. package/esm2022/lib/components/evo-autocomplete/components/evo-autocomplete-footer/evo-autocomplete-footer.component.mjs +11 -0
  319. package/esm2022/lib/components/evo-autocomplete/components/evo-autocomplete-header/evo-autocomplete-header.component.mjs +11 -0
  320. package/esm2022/lib/components/evo-autocomplete/evo-autocomplete.module.mjs +13 -46
  321. package/esm2022/lib/components/evo-autocomplete/helpers/switch-query-to-list.mjs +4 -2
  322. package/esm2022/lib/components/evo-autocomplete/models/DaDataParty.mjs +2 -1
  323. package/esm2022/lib/components/evo-autocomplete/models/dadata.model.mjs +1 -1
  324. package/esm2022/lib/components/evo-autocomplete/public-api.mjs +5 -3
  325. package/esm2022/lib/components/evo-badge/evo-badge.component.mjs +4 -4
  326. package/esm2022/lib/components/evo-badge/evo-badge.module.mjs +5 -15
  327. package/esm2022/lib/components/evo-badge/types/evo-badge-color.mjs +1 -1
  328. package/esm2022/lib/components/evo-button/components/evo-button/evo-button.component.mjs +6 -6
  329. package/esm2022/lib/components/evo-button/evo-button.module.mjs +4 -8
  330. package/esm2022/lib/components/evo-checkbox/evo-checkbox.component.mjs +14 -15
  331. package/esm2022/lib/components/evo-checkbox/evo-checkbox.module.mjs +4 -20
  332. package/esm2022/lib/components/evo-chip/evo-chip.component.mjs +21 -19
  333. package/esm2022/lib/components/evo-chip/evo-chip.module.mjs +4 -31
  334. package/esm2022/lib/components/evo-control-error/evo-control-error.component.mjs +4 -5
  335. package/esm2022/lib/components/evo-control-error/evo-control-error.module.mjs +4 -16
  336. package/esm2022/lib/components/evo-control-label/evo-control-label.component.mjs +4 -4
  337. package/esm2022/lib/components/evo-control-label/evo-control-label.module.mjs +4 -8
  338. package/esm2022/lib/components/evo-counter/evo-counter.component.mjs +6 -6
  339. package/esm2022/lib/components/evo-counter/evo-counter.module.mjs +5 -17
  340. package/esm2022/lib/components/evo-datepicker/evo-datepicker.component.mjs +28 -28
  341. package/esm2022/lib/components/evo-datepicker/evo-datepicker.module.mjs +4 -20
  342. package/esm2022/lib/components/evo-datepicker/flatpickr-options.interface.mjs +1 -1
  343. package/esm2022/lib/components/evo-dropdown/evo-dropdown-origin.directive.mjs +3 -2
  344. package/esm2022/lib/components/evo-dropdown/evo-dropdown-position-description.mjs +49 -25
  345. package/esm2022/lib/components/evo-dropdown/evo-dropdown.component.mjs +9 -7
  346. package/esm2022/lib/components/evo-dropdown/evo-dropdown.module.mjs +4 -7
  347. package/esm2022/lib/components/evo-icon/evo-icon.component.mjs +46 -28
  348. package/esm2022/lib/components/evo-icon/evo-icon.service.mjs +48 -0
  349. package/esm2022/lib/components/evo-icon/interfaces/icon-options.mjs +2 -0
  350. package/esm2022/lib/components/evo-icon/interfaces/icons-category.mjs +1 -1
  351. package/esm2022/lib/components/evo-icon/public-api.mjs +2 -3
  352. package/esm2022/lib/components/evo-icon-button/evo-icon-button.component.mjs +12 -5
  353. package/esm2022/lib/components/evo-icon-button/evo-icon-button.module.mjs +5 -13
  354. package/esm2022/lib/components/evo-icon-button/types/evo-icon-button-size.mjs +1 -1
  355. package/esm2022/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.mjs +3 -4
  356. package/esm2022/lib/components/evo-icon-number/evo-icon-number.module.mjs +4 -6
  357. package/esm2022/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.mjs +3 -2
  358. package/esm2022/lib/components/evo-input/evo-input.component.mjs +33 -19
  359. package/esm2022/lib/components/evo-input/evo-input.module.mjs +5 -52
  360. package/esm2022/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.mjs +9 -8
  361. package/esm2022/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.mjs +5 -21
  362. package/esm2022/lib/components/evo-loader/evo-circular-loader.component.mjs +3 -3
  363. package/esm2022/lib/components/evo-loader/evo-loader.module.mjs +5 -19
  364. package/esm2022/lib/components/evo-loader/public-api.mjs +1 -2
  365. package/esm2022/lib/components/evo-modal/evo-modal.component.mjs +5 -5
  366. package/esm2022/lib/components/evo-modal/evo-modal.module.mjs +5 -17
  367. package/esm2022/lib/components/evo-modal/evo-modal.service.mjs +1 -1
  368. package/esm2022/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.mjs +49 -27
  369. package/esm2022/lib/components/evo-navbar/evo-navbar.component.mjs +19 -8
  370. package/esm2022/lib/components/evo-navbar/evo-navbar.module.mjs +4 -9
  371. package/esm2022/lib/components/evo-navbar/interfaces/nav-item-main-info.mjs +1 -1
  372. package/esm2022/lib/components/evo-navbar/interfaces/nav-item-router-link.mjs +1 -1
  373. package/esm2022/lib/components/evo-navbar/types/nav-item.mjs +1 -1
  374. package/esm2022/lib/components/evo-navigation-button/evo-navigation-button.component.mjs +5 -5
  375. package/esm2022/lib/components/evo-navigation-button/evo-navigation-button.module.mjs +7 -34
  376. package/esm2022/lib/components/evo-note/evo-note.component.mjs +5 -6
  377. package/esm2022/lib/components/evo-note/evo-note.module.mjs +4 -31
  378. package/esm2022/lib/components/evo-paginator/evo-paginator.component.mjs +4 -4
  379. package/esm2022/lib/components/evo-paginator/evo-paginator.module.mjs +5 -9
  380. package/esm2022/lib/components/evo-popover/evo-popover.component.mjs +13 -9
  381. package/esm2022/lib/components/evo-popover/evo-popover.module.mjs +4 -12
  382. package/esm2022/lib/components/evo-portal/evo-portal-outlet.class.mjs +1 -1
  383. package/esm2022/lib/components/evo-portal/evo-portal-outlet.directive.mjs +4 -3
  384. package/esm2022/lib/components/evo-portal/evo-portal.module.mjs +6 -18
  385. package/esm2022/lib/components/evo-portal/evo-portal.service.mjs +15 -7
  386. package/esm2022/lib/components/evo-radio/evo-radio.component.mjs +8 -6
  387. package/esm2022/lib/components/evo-radio/evo-radio.module.mjs +4 -12
  388. package/esm2022/lib/components/evo-radioshape/components/evo-radioshape.component.mjs +9 -7
  389. package/esm2022/lib/components/evo-radioshape/evo-radioshape.module.mjs +5 -20
  390. package/esm2022/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.mjs +14 -22
  391. package/esm2022/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.mjs +4 -4
  392. package/esm2022/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.mjs +13 -20
  393. package/esm2022/lib/components/evo-sidebar/evo-sidebar.component.mjs +90 -100
  394. package/esm2022/lib/components/evo-sidebar/evo-sidebar.provider.mjs +20 -0
  395. package/esm2022/lib/components/evo-sidebar/evo-sidebar.service.mjs +14 -23
  396. package/esm2022/lib/components/evo-sidebar/evo-sidebar.token.mjs +3 -0
  397. package/esm2022/lib/components/evo-sidebar/interfaces.mjs +1 -1
  398. package/esm2022/lib/components/evo-sidebar/public-api.mjs +2 -2
  399. package/esm2022/lib/components/evo-sidebar/tokens.mjs +1 -1
  400. package/esm2022/lib/components/evo-stepper/evo-stepper-events.mjs +2 -2
  401. package/esm2022/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.mjs +5 -5
  402. package/esm2022/lib/components/evo-stepper/evo-stepper.component.mjs +8 -12
  403. package/esm2022/lib/components/evo-stepper/evo-stepper.module.mjs +4 -12
  404. package/esm2022/lib/components/evo-table/evo-table/evo-table.component.mjs +7 -6
  405. package/esm2022/lib/components/evo-table/evo-table-column/evo-table-column.component.mjs +5 -4
  406. package/esm2022/lib/components/evo-table/evo-table.module.mjs +4 -8
  407. package/esm2022/lib/components/evo-tabs/evo-tab/evo-tab.component.mjs +4 -4
  408. package/esm2022/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.mjs +7 -5
  409. package/esm2022/lib/components/evo-tabs/evo-tab-state.collection.mjs +3 -1
  410. package/esm2022/lib/components/evo-tabs/evo-tabs-size.service.mjs +1 -1
  411. package/esm2022/lib/components/evo-tabs/evo-tabs.component.mjs +4 -5
  412. package/esm2022/lib/components/evo-tabs/evo-tabs.module.mjs +4 -12
  413. package/esm2022/lib/components/evo-tabs/evo-tabs.service.mjs +1 -1
  414. package/esm2022/lib/components/evo-textarea/evo-textarea.component.mjs +19 -14
  415. package/esm2022/lib/components/evo-textarea/evo-textarea.module.mjs +4 -23
  416. package/esm2022/lib/components/evo-toast/evo-toast.component.mjs +13 -9
  417. package/esm2022/lib/components/evo-toast/evo-toast.module.mjs +4 -31
  418. package/esm2022/lib/components/evo-toast/evo-toast.service.mjs +1 -1
  419. package/esm2022/lib/components/evo-toggle/evo-toggle.component.mjs +9 -6
  420. package/esm2022/lib/components/evo-toggle/evo-toggle.module.mjs +4 -16
  421. package/esm2022/lib/components/evo-upload/evo-upload.component.mjs +20 -15
  422. package/esm2022/lib/components/evo-upload/evo-upload.module.mjs +4 -49
  423. package/esm2022/lib/decorators/deprecate-method.decorator.mjs +2 -1
  424. package/esm2022/lib/decorators/deprecate-variable.decorator.mjs +2 -1
  425. package/esm2022/lib/directives/evo-click-outside.directive.mjs +4 -3
  426. package/esm2022/lib/directives/evo-is-expanded.directive.mjs +6 -5
  427. package/esm2022/lib/directives/evo-let/evo-let.directive.mjs +3 -2
  428. package/esm2022/lib/directives/evo-ui-class.directive.mjs +4 -2
  429. package/esm2022/lib/evo-ui-kit.module.mjs +8 -44
  430. package/esm2022/lib/operators/enter-zone.operator.mjs +3 -3
  431. package/esm2022/lib/pipes/declination.pipe.mjs +5 -6
  432. package/esm2022/lib/pipes/evo-pipes.module.mjs +5 -4
  433. package/esm2022/lib/pipes/safe-html.pipe.mjs +6 -3
  434. package/esm2022/lib/services/evo-expanded.service.mjs +1 -1
  435. package/esm2022/lib/services/window.service.mjs +3 -3
  436. package/esm2022/lib/utils/create-token.mjs +8 -0
  437. package/esm2022/lib/utils/index.mjs +2 -0
  438. package/esm2022/lib/utils/public_api.mjs +2 -0
  439. package/esm2022/public_api.mjs +3 -7
  440. package/fesm2022/evotor-dev-ui-kit-icons.mjs +2 -642
  441. package/fesm2022/evotor-dev-ui-kit-icons.mjs.map +1 -1
  442. package/fesm2022/evotor-dev-ui-kit.mjs +997 -1920
  443. package/fesm2022/evotor-dev-ui-kit.mjs.map +1 -1
  444. package/icons/index.d.ts +295 -321
  445. package/lib/common/collection/evo-collection-fabric.d.ts +1 -1
  446. package/lib/common/tokens/assets-path.d.ts +11 -0
  447. package/lib/common/tokens/icon-resolver.d.ts +3 -0
  448. package/lib/common/tokens/index.d.ts +1 -0
  449. package/lib/common/tokens/public_api.d.ts +2 -0
  450. package/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.d.ts +3 -3
  451. package/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.d.ts +2 -2
  452. package/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.d.ts +2 -2
  453. package/lib/components/evo-accordion/evo-accordion.component.d.ts +2 -5
  454. package/lib/components/evo-accordion/evo-accordion.module.d.ts +6 -8
  455. package/lib/components/evo-autocomplete/components/{evo-autocomplete.component.d.ts → evo-autocomplete/evo-autocomplete.component.d.ts} +23 -10
  456. package/lib/components/evo-autocomplete/components/{templates → evo-autocomplete-default-option}/evo-autocomplete-default-option.component.d.ts +2 -2
  457. package/lib/components/evo-autocomplete/components/evo-autocomplete-footer/evo-autocomplete-footer.component.d.ts +5 -0
  458. package/lib/components/evo-autocomplete/components/evo-autocomplete-header/evo-autocomplete-header.component.d.ts +5 -0
  459. package/lib/components/evo-autocomplete/evo-autocomplete.module.d.ts +5 -10
  460. package/lib/components/evo-autocomplete/public-api.d.ts +4 -2
  461. package/lib/components/evo-badge/evo-badge.component.d.ts +1 -1
  462. package/lib/components/evo-badge/evo-badge.module.d.ts +1 -3
  463. package/lib/components/evo-button/components/evo-button/evo-button.component.d.ts +1 -1
  464. package/lib/components/evo-button/evo-button.module.d.ts +1 -4
  465. package/lib/components/evo-checkbox/evo-checkbox.component.d.ts +2 -2
  466. package/lib/components/evo-checkbox/evo-checkbox.module.d.ts +1 -5
  467. package/lib/components/evo-chip/evo-chip.component.d.ts +1 -1
  468. package/lib/components/evo-chip/evo-chip.module.d.ts +1 -5
  469. package/lib/components/evo-control-error/evo-control-error.component.d.ts +2 -2
  470. package/lib/components/evo-control-error/evo-control-error.module.d.ts +1 -4
  471. package/lib/components/evo-control-label/evo-control-label.component.d.ts +2 -2
  472. package/lib/components/evo-control-label/evo-control-label.module.d.ts +1 -2
  473. package/lib/components/evo-counter/evo-counter.component.d.ts +1 -1
  474. package/lib/components/evo-counter/evo-counter.module.d.ts +1 -3
  475. package/lib/components/evo-datepicker/evo-datepicker.component.d.ts +3 -3
  476. package/lib/components/evo-datepicker/evo-datepicker.module.d.ts +1 -5
  477. package/lib/components/evo-dropdown/evo-dropdown-origin.directive.d.ts +2 -2
  478. package/lib/components/evo-dropdown/evo-dropdown.component.d.ts +2 -2
  479. package/lib/components/evo-dropdown/evo-dropdown.module.d.ts +1 -3
  480. package/lib/components/evo-icon/evo-icon.component.d.ts +7 -11
  481. package/lib/components/evo-icon/evo-icon.service.d.ts +16 -0
  482. package/lib/components/evo-icon/interfaces/icon-options.d.ts +4 -0
  483. package/lib/components/evo-icon/public-api.d.ts +1 -2
  484. package/lib/components/evo-icon-button/evo-icon-button.component.d.ts +2 -1
  485. package/lib/components/evo-icon-button/evo-icon-button.module.d.ts +1 -2
  486. package/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.d.ts +1 -1
  487. package/lib/components/evo-icon-number/evo-icon-number.module.d.ts +1 -2
  488. package/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.d.ts +1 -1
  489. package/lib/components/evo-input/evo-input.component.d.ts +6 -6
  490. package/lib/components/evo-input/evo-input.module.d.ts +1 -7
  491. package/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.d.ts +4 -4
  492. package/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.d.ts +1 -4
  493. package/lib/components/evo-loader/evo-circular-loader.component.d.ts +1 -1
  494. package/lib/components/evo-loader/evo-loader.module.d.ts +2 -5
  495. package/lib/components/evo-loader/public-api.d.ts +0 -1
  496. package/lib/components/evo-modal/evo-modal.component.d.ts +1 -1
  497. package/lib/components/evo-modal/evo-modal.module.d.ts +1 -4
  498. package/lib/components/evo-modal/evo-modal.service.d.ts +1 -1
  499. package/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.d.ts +12 -5
  500. package/lib/components/evo-navbar/evo-navbar.component.d.ts +5 -2
  501. package/lib/components/evo-navbar/evo-navbar.module.d.ts +1 -5
  502. package/lib/components/evo-navbar/interfaces/nav-item-main-info.d.ts +4 -0
  503. package/lib/components/evo-navigation-button/evo-navigation-button.component.d.ts +1 -1
  504. package/lib/components/evo-navigation-button/evo-navigation-button.module.d.ts +1 -3
  505. package/lib/components/evo-note/evo-note.component.d.ts +1 -1
  506. package/lib/components/evo-note/evo-note.module.d.ts +1 -4
  507. package/lib/components/evo-paginator/evo-paginator.component.d.ts +1 -1
  508. package/lib/components/evo-paginator/evo-paginator.module.d.ts +1 -2
  509. package/lib/components/evo-popover/evo-popover.component.d.ts +5 -5
  510. package/lib/components/evo-popover/evo-popover.module.d.ts +1 -3
  511. package/lib/components/evo-portal/evo-portal-outlet.directive.d.ts +1 -1
  512. package/lib/components/evo-portal/evo-portal.module.d.ts +1 -2
  513. package/lib/components/evo-radio/evo-radio.component.d.ts +1 -1
  514. package/lib/components/evo-radio/evo-radio.module.d.ts +1 -3
  515. package/lib/components/evo-radioshape/components/evo-radioshape.component.d.ts +2 -2
  516. package/lib/components/evo-radioshape/evo-radioshape.module.d.ts +1 -3
  517. package/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.d.ts +4 -6
  518. package/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.d.ts +1 -1
  519. package/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.d.ts +6 -6
  520. package/lib/components/evo-sidebar/evo-sidebar.component.d.ts +21 -23
  521. package/lib/components/evo-sidebar/evo-sidebar.provider.d.ts +4 -0
  522. package/lib/components/evo-sidebar/evo-sidebar.service.d.ts +5 -9
  523. package/lib/components/evo-sidebar/evo-sidebar.token.d.ts +7 -0
  524. package/lib/components/evo-sidebar/interfaces.d.ts +2 -1
  525. package/lib/components/evo-sidebar/public-api.d.ts +1 -1
  526. package/lib/components/evo-stepper/evo-stepper-events.d.ts +1 -1
  527. package/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.d.ts +3 -3
  528. package/lib/components/evo-stepper/evo-stepper.component.d.ts +4 -4
  529. package/lib/components/evo-stepper/evo-stepper.module.d.ts +1 -3
  530. package/lib/components/evo-table/evo-table/evo-table.component.d.ts +1 -1
  531. package/lib/components/evo-table/evo-table-column/evo-table-column.component.d.ts +1 -1
  532. package/lib/components/evo-table/evo-table.module.d.ts +1 -2
  533. package/lib/components/evo-tabs/evo-tab/evo-tab.component.d.ts +8 -8
  534. package/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.d.ts +3 -3
  535. package/lib/components/evo-tabs/evo-tab-state.collection.d.ts +2 -2
  536. package/lib/components/evo-tabs/evo-tabs-size.service.d.ts +1 -1
  537. package/lib/components/evo-tabs/evo-tabs.component.d.ts +3 -2
  538. package/lib/components/evo-tabs/evo-tabs.module.d.ts +1 -3
  539. package/lib/components/evo-tabs/evo-tabs.service.d.ts +3 -3
  540. package/lib/components/evo-textarea/evo-textarea.component.d.ts +3 -1
  541. package/lib/components/evo-textarea/evo-textarea.module.d.ts +1 -5
  542. package/lib/components/evo-toast/evo-toast.component.d.ts +3 -3
  543. package/lib/components/evo-toast/evo-toast.module.d.ts +1 -4
  544. package/lib/components/evo-toggle/evo-toggle.component.d.ts +2 -2
  545. package/lib/components/evo-toggle/evo-toggle.module.d.ts +1 -4
  546. package/lib/components/evo-upload/evo-upload.component.d.ts +4 -4
  547. package/lib/components/evo-upload/evo-upload.module.d.ts +1 -7
  548. package/lib/directives/evo-click-outside.directive.d.ts +2 -2
  549. package/lib/directives/evo-is-expanded.directive.d.ts +6 -6
  550. package/lib/directives/evo-let/evo-let.directive.d.ts +2 -2
  551. package/lib/directives/evo-ui-class.directive.d.ts +1 -1
  552. package/lib/evo-ui-kit.module.d.ts +9 -9
  553. package/lib/pipes/declination.pipe.d.ts +1 -1
  554. package/lib/pipes/evo-pipes.module.d.ts +1 -1
  555. package/lib/pipes/safe-html.pipe.d.ts +2 -2
  556. package/lib/services/evo-expanded.service.d.ts +1 -1
  557. package/lib/services/window.service.d.ts +3 -3
  558. package/lib/utils/create-token.d.ts +3 -0
  559. package/lib/utils/index.d.ts +1 -0
  560. package/lib/utils/public_api.d.ts +1 -0
  561. package/package.json +1 -43
  562. package/public_api.d.ts +2 -6
  563. package/styles/main.scss +1 -0
  564. package/esm2022/icons/category/evotor-dev-ui-kit-icons-category.mjs +0 -5
  565. package/esm2022/icons/category/index.mjs +0 -62
  566. package/esm2022/icons/emotions/evotor-dev-ui-kit-icons-emotions.mjs +0 -5
  567. package/esm2022/icons/emotions/index.mjs +0 -18
  568. package/esm2022/icons/header/evotor-dev-ui-kit-icons-header.mjs +0 -5
  569. package/esm2022/icons/header/index.mjs +0 -28
  570. package/esm2022/icons/info/evotor-dev-ui-kit-icons-info.mjs +0 -5
  571. package/esm2022/icons/info/index.mjs +0 -40
  572. package/esm2022/icons/navigation/evotor-dev-ui-kit-icons-navigation.mjs +0 -5
  573. package/esm2022/icons/navigation/index.mjs +0 -56
  574. package/esm2022/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.mjs +0 -5
  575. package/esm2022/icons/side-menu/index.mjs +0 -64
  576. package/esm2022/icons/system/evotor-dev-ui-kit-icons-system.mjs +0 -5
  577. package/esm2022/icons/system/index.mjs +0 -372
  578. package/esm2022/lib/components/evo-autocomplete/components/evo-autocomplete.component.mjs +0 -358
  579. package/esm2022/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.mjs +0 -43
  580. package/esm2022/lib/components/evo-icon/classes/evo-icons-library.mjs +0 -19
  581. package/esm2022/lib/components/evo-icon/evo-icon.module.mjs +0 -55
  582. package/esm2022/lib/components/evo-loader/evo-loader.component.mjs +0 -27
  583. package/esm2022/lib/components/evo-plus-minus/evo-plus-minus.component.mjs +0 -26
  584. package/esm2022/lib/components/evo-plus-minus/evo-plus-minus.module.mjs +0 -20
  585. package/esm2022/lib/components/evo-plus-minus/index.mjs +0 -2
  586. package/esm2022/lib/components/evo-plus-minus/public-api.mjs +0 -3
  587. package/esm2022/lib/components/evo-radio-group/evo-radio-group.component.mjs +0 -123
  588. package/esm2022/lib/components/evo-radio-group/evo-radio-group.module.mjs +0 -32
  589. package/esm2022/lib/components/evo-radio-group/index.mjs +0 -2
  590. package/esm2022/lib/components/evo-radio-group/public-api.mjs +0 -3
  591. package/esm2022/lib/components/evo-radio-group/typings/options.mjs +0 -2
  592. package/esm2022/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.mjs +0 -21
  593. package/esm2022/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.mjs +0 -77
  594. package/esm2022/lib/components/evo-segmented-bar/evo-segmented-bar.module.mjs +0 -24
  595. package/esm2022/lib/components/evo-segmented-bar/index.mjs +0 -2
  596. package/esm2022/lib/components/evo-segmented-bar/public-api.mjs +0 -4
  597. package/esm2022/lib/components/evo-select/evo-select.component.mjs +0 -115
  598. package/esm2022/lib/components/evo-select/evo-select.module.mjs +0 -32
  599. package/esm2022/lib/components/evo-select/index.mjs +0 -2
  600. package/esm2022/lib/components/evo-select/public-api.mjs +0 -3
  601. package/esm2022/lib/components/evo-sidebar/evo-sidebar.module.mjs +0 -88
  602. package/esm2022/lib/components/evo-sidebar/sidebar-injection-token.mjs +0 -3
  603. package/esm2022/lib/components/evo-submenu/evo-submenu.component.mjs +0 -159
  604. package/esm2022/lib/components/evo-submenu/evo-submenu.module.mjs +0 -26
  605. package/esm2022/lib/components/evo-submenu/index.mjs +0 -2
  606. package/esm2022/lib/components/evo-submenu/public-api.mjs +0 -3
  607. package/esm2022/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.mjs +0 -11
  608. package/esm2022/lib/components/evo-switcher/evo-switcher.component.mjs +0 -32
  609. package/esm2022/lib/components/evo-switcher/evo-switcher.module.mjs +0 -25
  610. package/esm2022/lib/components/evo-switcher/index.mjs +0 -2
  611. package/esm2022/lib/components/evo-switcher/public-api.mjs +0 -4
  612. package/fesm2022/evotor-dev-ui-kit-icons-category.mjs +0 -68
  613. package/fesm2022/evotor-dev-ui-kit-icons-category.mjs.map +0 -1
  614. package/fesm2022/evotor-dev-ui-kit-icons-emotions.mjs +0 -24
  615. package/fesm2022/evotor-dev-ui-kit-icons-emotions.mjs.map +0 -1
  616. package/fesm2022/evotor-dev-ui-kit-icons-header.mjs +0 -34
  617. package/fesm2022/evotor-dev-ui-kit-icons-header.mjs.map +0 -1
  618. package/fesm2022/evotor-dev-ui-kit-icons-info.mjs +0 -46
  619. package/fesm2022/evotor-dev-ui-kit-icons-info.mjs.map +0 -1
  620. package/fesm2022/evotor-dev-ui-kit-icons-navigation.mjs +0 -62
  621. package/fesm2022/evotor-dev-ui-kit-icons-navigation.mjs.map +0 -1
  622. package/fesm2022/evotor-dev-ui-kit-icons-side-menu.mjs +0 -70
  623. package/fesm2022/evotor-dev-ui-kit-icons-side-menu.mjs.map +0 -1
  624. package/fesm2022/evotor-dev-ui-kit-icons-system.mjs +0 -378
  625. package/fesm2022/evotor-dev-ui-kit-icons-system.mjs.map +0 -1
  626. package/icons/category/index.d.ts +0 -59
  627. package/icons/emotions/index.d.ts +0 -15
  628. package/icons/header/index.d.ts +0 -25
  629. package/icons/info/index.d.ts +0 -37
  630. package/icons/navigation/index.d.ts +0 -53
  631. package/icons/side-menu/index.d.ts +0 -61
  632. package/icons/system/index.d.ts +0 -369
  633. package/lib/components/evo-icon/classes/evo-icons-library.d.ts +0 -11
  634. package/lib/components/evo-icon/evo-icon.module.d.ts +0 -16
  635. package/lib/components/evo-loader/evo-loader.component.d.ts +0 -14
  636. package/lib/components/evo-plus-minus/evo-plus-minus.component.d.ts +0 -13
  637. package/lib/components/evo-plus-minus/evo-plus-minus.module.d.ts +0 -8
  638. package/lib/components/evo-plus-minus/index.d.ts +0 -1
  639. package/lib/components/evo-plus-minus/public-api.d.ts +0 -2
  640. package/lib/components/evo-radio-group/evo-radio-group.component.d.ts +0 -56
  641. package/lib/components/evo-radio-group/evo-radio-group.module.d.ts +0 -11
  642. package/lib/components/evo-radio-group/index.d.ts +0 -1
  643. package/lib/components/evo-radio-group/public-api.d.ts +0 -2
  644. package/lib/components/evo-radio-group/typings/options.d.ts +0 -6
  645. package/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.d.ts +0 -10
  646. package/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.d.ts +0 -22
  647. package/lib/components/evo-segmented-bar/evo-segmented-bar.module.d.ts +0 -11
  648. package/lib/components/evo-segmented-bar/index.d.ts +0 -1
  649. package/lib/components/evo-segmented-bar/public-api.d.ts +0 -3
  650. package/lib/components/evo-select/evo-select.component.d.ts +0 -37
  651. package/lib/components/evo-select/evo-select.module.d.ts +0 -11
  652. package/lib/components/evo-select/index.d.ts +0 -1
  653. package/lib/components/evo-select/public-api.d.ts +0 -2
  654. package/lib/components/evo-sidebar/evo-sidebar.module.d.ts +0 -17
  655. package/lib/components/evo-sidebar/sidebar-injection-token.d.ts +0 -2
  656. package/lib/components/evo-submenu/evo-submenu.component.d.ts +0 -49
  657. package/lib/components/evo-submenu/evo-submenu.module.d.ts +0 -11
  658. package/lib/components/evo-submenu/index.d.ts +0 -1
  659. package/lib/components/evo-submenu/public-api.d.ts +0 -2
  660. package/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.d.ts +0 -9
  661. package/lib/components/evo-switcher/evo-switcher.component.d.ts +0 -14
  662. package/lib/components/evo-switcher/evo-switcher.module.d.ts +0 -10
  663. package/lib/components/evo-switcher/index.d.ts +0 -1
  664. package/lib/components/evo-switcher/public-api.d.ts +0 -3
@@ -1,8 +1,8 @@
1
1
  import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
2
+ import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { EvoUiClassDirective } from '../../directives/evo-ui-class.directive';
3
4
  import * as i0 from "@angular/core";
4
5
  import * as i1 from "@angular/forms";
5
- import * as i2 from "../../directives/evo-ui-class.directive";
6
6
  export class EvoToggleComponent {
7
7
  constructor(changeDetector) {
8
8
  this.changeDetector = changeDetector;
@@ -26,15 +26,18 @@ export class EvoToggleComponent {
26
26
  }
27
27
  return classes;
28
28
  }
29
+ // eslint-disable-next-line
29
30
  writeValue(value) {
30
31
  if (value !== this._value) {
31
32
  this._value = value;
32
33
  this.changeDetector.detectChanges();
33
34
  }
34
35
  }
36
+ // eslint-disable-next-line
35
37
  registerOnChange(fn) {
36
38
  this.onChange = fn;
37
39
  }
40
+ // eslint-disable-next-line
38
41
  registerOnTouched(fn) {
39
42
  this.onTouched = fn;
40
43
  }
@@ -43,13 +46,13 @@ export class EvoToggleComponent {
43
46
  this.changeDetector.detectChanges();
44
47
  }
45
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
46
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoToggleComponent, selector: "evo-toggle", providers: [
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoToggleComponent, isStandalone: true, selector: "evo-toggle", providers: [
47
50
  {
48
51
  provide: NG_VALUE_ACCESSOR,
49
52
  useExisting: forwardRef(() => EvoToggleComponent),
50
53
  multi: true,
51
54
  },
52
- ], ngImport: i0, template: "<label class=\"evo-toggle\" [evoUiClass]=\"totalClasses\">\n <input type=\"checkbox\" [(ngModel)]=\"value\" [disabled]=\"isDisabled\">\n <span class=\"slider\"></span>\n</label>\n", styles: [":host{position:relative;display:inline-block}.evo-toggle{display:flex;justify-content:center;align-items:center;width:40px;height:24px;cursor:pointer}.evo-toggle_disabled{cursor:default;opacity:.5}.evo-toggle input{display:none}.slider{position:absolute;display:inline-block;width:34px;height:14px;background-color:#c6c6c6;border-radius:16px;transition:background-color .3s;mix-blend-mode:normal}.slider:before{position:absolute;top:-3px;left:-3px;width:20px;height:20px;background-color:#f4f6f8;border-radius:50%;box-shadow:0 1px 3px #0003,0 2px 2px #0000001f,0 0 2px #00000024;transition:color .3s,background-color .3s,transform .3s;content:\"\"}input[type=checkbox]:checked+.slider{background:#0986e280}input[type=checkbox]:checked+.slider:before{right:0;left:0;background-color:#0986e2;transform:translate(18px);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { 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: "directive", type: i2.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
55
+ ], ngImport: i0, template: "<label class=\"evo-toggle\" [evoUiClass]=\"totalClasses\">\n <input type=\"checkbox\" [(ngModel)]=\"value\" [disabled]=\"isDisabled\">\n <span class=\"slider\"></span>\n</label>\n", styles: [":host{position:relative;display:inline-block}.evo-toggle{display:flex;justify-content:center;align-items:center;width:40px;height:24px;cursor:pointer}.evo-toggle_disabled{cursor:default;opacity:.5}.evo-toggle input{display:none}.slider{position:absolute;display:inline-block;width:34px;height:14px;background-color:#c6c6c6;border-radius:16px;transition:background-color .3s;mix-blend-mode:normal}.slider:before{position:absolute;top:-3px;left:-3px;width:20px;height:20px;background-color:#f4f6f8;border-radius:50%;box-shadow:0 1px 3px #0003,0 2px 2px #0000001f,0 0 2px #00000024;transition:color .3s,background-color .3s,transform .3s;content:\"\"}input[type=checkbox]:checked+.slider{background:#0986e280}input[type=checkbox]:checked+.slider:before{right:0;left:0;background-color:#0986e2;transform:translate(18px);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
56
  }
54
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleComponent, decorators: [{
55
58
  type: Component,
@@ -59,6 +62,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
59
62
  useExisting: forwardRef(() => EvoToggleComponent),
60
63
  multi: true,
61
64
  },
62
- ], template: "<label class=\"evo-toggle\" [evoUiClass]=\"totalClasses\">\n <input type=\"checkbox\" [(ngModel)]=\"value\" [disabled]=\"isDisabled\">\n <span class=\"slider\"></span>\n</label>\n", styles: [":host{position:relative;display:inline-block}.evo-toggle{display:flex;justify-content:center;align-items:center;width:40px;height:24px;cursor:pointer}.evo-toggle_disabled{cursor:default;opacity:.5}.evo-toggle input{display:none}.slider{position:absolute;display:inline-block;width:34px;height:14px;background-color:#c6c6c6;border-radius:16px;transition:background-color .3s;mix-blend-mode:normal}.slider:before{position:absolute;top:-3px;left:-3px;width:20px;height:20px;background-color:#f4f6f8;border-radius:50%;box-shadow:0 1px 3px #0003,0 2px 2px #0000001f,0 0 2px #00000024;transition:color .3s,background-color .3s,transform .3s;content:\"\"}input[type=checkbox]:checked+.slider{background:#0986e280}input[type=checkbox]:checked+.slider:before{right:0;left:0;background-color:#0986e2;transform:translate(18px);pointer-events:none}\n"] }]
65
+ ], standalone: true, imports: [EvoUiClassDirective, FormsModule], template: "<label class=\"evo-toggle\" [evoUiClass]=\"totalClasses\">\n <input type=\"checkbox\" [(ngModel)]=\"value\" [disabled]=\"isDisabled\">\n <span class=\"slider\"></span>\n</label>\n", styles: [":host{position:relative;display:inline-block}.evo-toggle{display:flex;justify-content:center;align-items:center;width:40px;height:24px;cursor:pointer}.evo-toggle_disabled{cursor:default;opacity:.5}.evo-toggle input{display:none}.slider{position:absolute;display:inline-block;width:34px;height:14px;background-color:#c6c6c6;border-radius:16px;transition:background-color .3s;mix-blend-mode:normal}.slider:before{position:absolute;top:-3px;left:-3px;width:20px;height:20px;background-color:#f4f6f8;border-radius:50%;box-shadow:0 1px 3px #0003,0 2px 2px #0000001f,0 0 2px #00000024;transition:color .3s,background-color .3s,transform .3s;content:\"\"}input[type=checkbox]:checked+.slider{background:#0986e280}input[type=checkbox]:checked+.slider:before{right:0;left:0;background-color:#0986e2;transform:translate(18px);pointer-events:none}\n"] }]
63
66
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdG9nZ2xlL2V2by10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXRvZ2dsZS9ldm8tdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFlekUsTUFBTSxPQUFPLGtCQUFrQjtJQUszQixZQUNZLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUw3QyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBOEJuQixhQUFRLEdBQUcsQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUMxQixjQUFTLEdBQUcsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBeEJyQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFjO1FBQ3BCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ1osTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBRTdCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFLRCxVQUFVLENBQUMsS0FBVTtRQUNqQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN4QyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDcEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QyxDQUFDOytHQXBEUSxrQkFBa0I7bUdBQWxCLGtCQUFrQixxQ0FSaEI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0osMEJDZEwsMkxBSUE7OzRGRFlhLGtCQUFrQjtrQkFiOUIsU0FBUzsrQkFDSSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8tdG9nZ2xlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLXRvZ2dsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b1RvZ2dsZUNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9Ub2dnbGVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfdmFsdWU6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgKSB7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gICAgfVxuXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCB0b3RhbENsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgICAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGlmICh0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGNsYXNzZXMucHVzaCgnZGlzYWJsZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgIH1cblxuICAgIG9uQ2hhbmdlID0gKF92YWx1ZSkgPT4ge307XG4gICAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHZhbHVlICE9PSB0aGlzLl92YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShzdGF0ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBzdGF0ZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiZXZvLXRvZ2dsZVwiIFtldm9VaUNsYXNzXT1cInRvdGFsQ2xhc3Nlc1wiPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIj5cbiAgICA8c3BhbiBjbGFzcz1cInNsaWRlclwiPjwvc3Bhbj5cbjwvbGFiZWw+XG4iXX0=
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdG9nZ2xlL2V2by10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXRvZ2dsZS9ldm8tdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQXVCLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDOzs7QUFpQjVFLE1BQU0sT0FBTyxrQkFBa0I7SUFLM0IsWUFBNkIsY0FBaUM7UUFBakMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBSjlELGVBQVUsR0FBRyxLQUFLLENBQUM7UUEyQm5CLGFBQVEsR0FBRyxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQzFCLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUF4QjRDLENBQUM7SUFFbEUsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFjO1FBQ3BCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ1osTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBRTdCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFLRCwyQkFBMkI7SUFDM0IsVUFBVSxDQUFDLEtBQVU7UUFDakIsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDeEMsQ0FBQztJQUNMLENBQUM7SUFFRCwyQkFBMkI7SUFDM0IsZ0JBQWdCLENBQUMsRUFBTztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsMkJBQTJCO0lBQzNCLGlCQUFpQixDQUFDLEVBQU87UUFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQWM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QyxDQUFDOytHQXBEUSxrQkFBa0I7bUdBQWxCLGtCQUFrQix5REFWaEI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0osMEJDZkwsMkxBSUEsZzRCRGFjLG1CQUFtQix5RkFBRSxXQUFXOzs0RkFFakMsa0JBQWtCO2tCQWY5QixTQUFTOytCQUNJLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxtQkFBbUIsQ0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0osY0FDVyxJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBmb3J3YXJkUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtFdm9VaUNsYXNzRGlyZWN0aXZlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2V2by11aS1jbGFzcy5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V2by10b2dnbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldm8tdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ldm8tdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRXZvVG9nZ2xlQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRXZvVWlDbGFzc0RpcmVjdGl2ZSwgRm9ybXNNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9Ub2dnbGVDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBfdmFsdWU6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIGdldCB2YWx1ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMuX3ZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgdG90YWxDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gPSBbXTtcblxuICAgICAgICBpZiAodGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICBjbGFzc2VzLnB1c2goJ2Rpc2FibGVkJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2xhc3NlcztcbiAgICB9XG5cbiAgICBvbkNoYW5nZSA9IChfdmFsdWUpID0+IHt9O1xuICAgIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoc3RhdGU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0Rpc2FibGVkID0gc3RhdGU7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImV2by10b2dnbGVcIiBbZXZvVWlDbGFzc109XCJ0b3RhbENsYXNzZXNcIj5cbiAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzbGlkZXJcIj48L3NwYW4+XG48L2xhYmVsPlxuIl19
@@ -1,28 +1,16 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
2
  import { EvoToggleComponent } from './evo-toggle.component';
4
- import { EvoUiKitModule } from '../../evo-ui-kit.module';
5
- import { FormsModule } from '@angular/forms';
6
3
  import * as i0 from "@angular/core";
7
4
  export class EvoToggleModule {
8
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, declarations: [EvoToggleComponent], imports: [CommonModule,
10
- FormsModule,
11
- EvoUiKitModule], exports: [EvoToggleComponent] }); }
12
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, imports: [CommonModule,
13
- FormsModule,
14
- EvoUiKitModule] }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, imports: [EvoToggleComponent], exports: [EvoToggleComponent] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, imports: [EvoToggleComponent] }); }
15
8
  }
16
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoToggleModule, decorators: [{
17
10
  type: NgModule,
18
11
  args: [{
19
- imports: [
20
- CommonModule,
21
- FormsModule,
22
- EvoUiKitModule,
23
- ],
24
- declarations: [EvoToggleComponent],
12
+ imports: [EvoToggleComponent],
25
13
  exports: [EvoToggleComponent],
26
14
  }]
27
15
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvZ2dsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdG9nZ2xlL2V2by10b2dnbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVzdDLE1BQU0sT0FBTyxlQUFlOytHQUFmLGVBQWU7Z0hBQWYsZUFBZSxpQkFIVixrQkFBa0IsYUFKaEMsWUFBWTtZQUNaLFdBQVc7WUFDWCxjQUFjLGFBR0wsa0JBQWtCO2dIQUVsQixlQUFlLFlBUHhCLFlBQVk7WUFDWixXQUFXO1lBQ1gsY0FBYzs7NEZBS0wsZUFBZTtrQkFUM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7cUJBQ2Y7b0JBQ0QsWUFBWSxFQUFFLENBQUUsa0JBQWtCLENBQUU7b0JBQ3BDLE9BQU8sRUFBRSxDQUFFLGtCQUFrQixDQUFFO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBFdm9Ub2dnbGVDb21wb25lbnQgfSBmcm9tICcuL2V2by10b2dnbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEV2b1VpS2l0TW9kdWxlIH0gZnJvbSAnLi4vLi4vZXZvLXVpLWtpdC5tb2R1bGUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgRXZvVWlLaXRNb2R1bGUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogWyBFdm9Ub2dnbGVDb21wb25lbnQgXSxcbiAgZXhwb3J0czogWyBFdm9Ub2dnbGVDb21wb25lbnQgXSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVG9nZ2xlTW9kdWxlIHt9XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXRvZ2dsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdG9nZ2xlL2V2by10b2dnbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBTTFELE1BQU0sT0FBTyxlQUFlOytHQUFmLGVBQWU7Z0hBQWYsZUFBZSxZQUhkLGtCQUFrQixhQUNsQixrQkFBa0I7Z0hBRW5CLGVBQWUsWUFIZCxrQkFBa0I7OzRGQUduQixlQUFlO2tCQUozQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RXZvVG9nZ2xlQ29tcG9uZW50fSBmcm9tICcuL2V2by10b2dnbGUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbRXZvVG9nZ2xlQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRXZvVG9nZ2xlQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVG9nZ2xlTW9kdWxlIHt9XG4iXX0=
@@ -5,21 +5,18 @@ import autobind from 'autobind-decorator';
5
5
  import bytes from 'bytes';
6
6
  import * as mime from 'mime';
7
7
  import { EvoBaseControl } from '../../common/evo-base-control';
8
+ import { SafeHtmlPipe } from '../../pipes/safe-html.pipe';
9
+ import { DeclinationPipe } from '../../pipes/declination.pipe';
10
+ import { EvoButtonComponent } from '../evo-button/components/evo-button/evo-button.component';
11
+ import { EvoNoteComponent } from '../evo-note/evo-note.component';
12
+ import { EvoIconComponent } from '../evo-icon/evo-icon.component';
13
+ import { EvoUiClassDirective } from '../../directives/evo-ui-class.directive';
8
14
  import * as i0 from "@angular/core";
9
15
  import * as i1 from "@angular/forms";
10
- import * as i2 from "@angular/common";
11
- import * as i3 from "../evo-note/evo-note.component";
12
- import * as i4 from "../evo-button/components/evo-button/evo-button.component";
13
- import * as i5 from "../evo-icon/evo-icon.component";
14
- import * as i6 from "../../directives/evo-ui-class.directive";
15
- import * as i7 from "../../pipes/declination.pipe";
16
- import * as i8 from "../../pipes/safe-html.pipe";
17
16
  export class EvoUploadComponent extends EvoBaseControl {
18
17
  set accept(extensions) {
19
18
  if (extensions) {
20
- this.acceptedMimeTypes = extensions
21
- .split(',')
22
- .map(extension => mime.getType(extension));
19
+ this.acceptedMimeTypes = extensions.split(',').map((extension) => mime.getType(extension));
23
20
  }
24
21
  }
25
22
  set fileSizeLimit(fileSize) {
@@ -163,7 +160,7 @@ export class EvoUploadComponent extends EvoBaseControl {
163
160
  }
164
161
  }
165
162
  isFilesLengthValid(files) {
166
- return this.maxFiles < (files.length + this.filesForm.controls.length);
163
+ return this.maxFiles < files.length + this.filesForm.controls.length;
167
164
  }
168
165
  isFilesSizeValid(files) {
169
166
  return !files.some(({ size }) => this.filesSizeLimitInBytes < size);
@@ -178,6 +175,7 @@ export class EvoUploadComponent extends EvoBaseControl {
178
175
  return;
179
176
  }
180
177
  Array.from(files).forEach((file) => {
178
+ // tslint:disable:no-for-each-push
181
179
  this.filesForm.push(new UntypedFormControl(file, [this.fileExtensionValidator, this.fileSizeValidator]));
182
180
  });
183
181
  if (this.inputFileElement && this.inputFileElement.nativeElement) {
@@ -226,13 +224,13 @@ export class EvoUploadComponent extends EvoBaseControl {
226
224
  return control.controls.length > this.maxFiles ? { maxFiles: true } : null;
227
225
  }
228
226
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
229
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: EvoUploadComponent, selector: "evo-upload", inputs: { accept: "accept", dropZoneLabel: "dropZoneLabel", dropZoneHint: "dropZoneHint", hideClearButton: "hideClearButton", hideSubmitButton: "hideSubmitButton", clickableFiles: "clickableFiles", earlyValidation: "earlyValidation", fileSizeLimit: "fileSizeLimit", maxFiles: "maxFiles", loading: "loading" }, outputs: { submit: "submit", addFiles: "addFiles", remove: "remove", clickFile: "clickFile" }, providers: [
227
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoUploadComponent, isStandalone: true, selector: "evo-upload", inputs: { accept: "accept", dropZoneLabel: "dropZoneLabel", dropZoneHint: "dropZoneHint", hideClearButton: "hideClearButton", hideSubmitButton: "hideSubmitButton", clickableFiles: "clickableFiles", earlyValidation: "earlyValidation", fileSizeLimit: "fileSizeLimit", maxFiles: "maxFiles", loading: "loading" }, outputs: { submit: "submit", addFiles: "addFiles", remove: "remove", clickFile: "clickFile" }, providers: [
230
228
  {
231
229
  provide: NG_VALUE_ACCESSOR,
232
230
  useExisting: forwardRef(() => EvoUploadComponent),
233
231
  multi: true,
234
232
  },
235
- ], viewQueries: [{ propertyName: "inputFileElement", first: true, predicate: ["inputFile"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"evo-upload\">\n <label\n class=\"evo-upload__wrapper\"\n [evoUiClass]=\"{over: states.isDragOver, disabled: isDisabled || loading}\"\n (click)=\"onTouched()\"\n (dragover)=\"handleDragOver($event)\"\n (dragleave)=\"handleDragLeave($event)\"\n (drop)=\"handleDrop($event)\"\n >\n <evo-icon\n shape=\"upload\"\n class=\"evo-upload__upload-icon\"\n [evoUiClass]=\"{disabled: isDisabled || loading}\"\n ></evo-icon>\n <span class=\"evo-upload__title\" [evoUiClass]=\"{disabled: isDisabled || loading}\">{{ dropZoneLabel }}</span>\n\n <span class=\"evo-upload__hint\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\n \u0438\u043B\u0438\n <span class=\"evo-upload__fake-link\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435</span>\n <ng-container *ngIf=\"dropZoneHint\">\n (\n <span class=\"evo-upload__additional-hint\" [innerHTML]=\"dropZoneHint | safeHtml\"></span>\n )\n </ng-container>\n </span>\n\n <input\n #inputFile\n type=\"file\"\n class=\"evo-upload__input\"\n [accept]=\"accept\"\n [disabled]=\"loading || isDisabled\"\n [attr.multiple]=\"maxFiles === 1 ? null : true\"\n (change)=\"inputChange($event.target.files)\"\n />\n </label>\n\n <evo-note *ngIf=\"!earlyValidation && filesForm.errors?.maxFiles\" type=\"danger\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}\n </evo-note>\n <evo-note *ngIf=\"earlyValidation && filesForm.errors\" type=\"danger\">\n <ul class=\"evo-list\">\n <li *ngIf=\"filesForm.errors.maxFiles\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}\n </li>\n <li *ngIf=\"filesForm.errors.size\">\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u043E\u0434\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{ filesSizeLimitText }}</li>\n <li *ngIf=\"filesForm.errors.extension\">\u0412\u044B\u0431\u0440\u0430\u043D \u0444\u0430\u0439\u043B \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u043E\u0433\u043E \u0444\u043E\u0440\u043C\u0430\u0442\u0430</li>\n </ul>\n </evo-note>\n\n <ul class=\"evo-upload__list\">\n <li *ngFor=\"let file of filesForm.controls; let i = index\" class=\"evo-upload__list-item\">\n <div class=\"evo-upload__item-inner\">\n <evo-icon shape=\"file\" svgWidth=\"24\" svgHeight=\"24\" class=\"evo-upload__file-icon\"></evo-icon>\n\n <span\n *ngIf=\"clickableFiles\"\n class=\"evo-upload__link evo-link\"\n (click)=\"clickFile.emit({ file: file.value, index: i })\"\n >\n {{ file.value.name }}\n </span>\n\n <span *ngIf=\"!clickableFiles\">{{ file.value.name }}</span>\n </div>\n\n <evo-icon\n shape=\"decline\"\n svgWidth=\"24\"\n svgHeight=\"24\"\n class=\"evo-upload__button-remove\"\n [evoUiClass]=\"{disabled: loading || isDisabled}\"\n (click)=\"handleItemRemove(i)\"\n ></evo-icon>\n\n <div\n class=\"evo-upload__list-delimiter\"\n [evoUiClass]=\"{error: filesForm.controls[i].errors}\"\n [ngSwitch]=\"getControlError(filesForm.controls[i])\"\n >\n <ng-container *ngSwitchCase=\"'size'\">\u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439</ng-container>\n <ng-container *ngSwitchCase=\"'extension'\">\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0444\u0430\u0439\u043B\u0430</ng-container>\n </div>\n </li>\n </ul>\n\n <div *ngIf=\"filesForm.controls.length\" class=\"evo-upload__controls\">\n <button\n *ngIf=\"!hideClearButton\"\n evoButton\n color=\"secondary\"\n theme=\"rounded-outline\"\n [disabled]=\"loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleResetButtonClick()\"\n >\n \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0451\n </button>\n <button\n *ngIf=\"!hideSubmitButton\"\n evoButton\n color=\"success\"\n class=\"evo-upload__submit\"\n [disabled]=\"filesForm.invalid || loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleSubmitButtonClick()\"\n >\n \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\n </button>\n </div>\n</div>\n", styles: [".evo-link,.evo-upload__fake-link{color:#0986e2;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.evo-link:hover,.evo-upload__fake-link:hover{color:#0986e2;border-bottom-color:#0986e2}.evo-link:active,.evo-upload__fake-link:active{color:#0879cb}.evo-link_dashed{border-bottom:1px dashed}.evo-link_dashed:hover{text-decoration:none;border-bottom-color:transparent}.evo-link_danger{color:#ff1817}.evo-link_danger:hover{color:#ff4645;border-bottom-color:#ff4645}.evo-link_danger:active{color:#e51715;border-bottom-color:#e51715}.evo-upload{width:100%}.evo-upload__wrapper{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:24px;padding:32px 0;color:#231f20;background:#f4f6f8;border:2px solid transparent;border-radius:8px}@media (max-width: 767px){.evo-upload__wrapper{padding:16px}}.evo-upload__wrapper_disabled{pointer-events:none}.evo-upload__wrapper_over{border-color:#dbe3ea}.evo-upload__upload-icon{flex:0 0 48px;width:48px;height:48px;margin-bottom:24px;transition:fill .3s;fill:#91b1b8}.evo-upload__upload-icon_disabled{fill:#727272}@media (max-width: 767px){.evo-upload__upload-icon{margin-bottom:16px}}.evo-upload__title{margin-bottom:8px;font-weight:700;font-size:24px;text-align:center;transition:color .3s}.evo-upload__title_disabled{color:#727272}@media (max-width: 767px){.evo-upload__title{font-size:16px}}.evo-upload__hint{font-size:18px;text-align:center;transition:color .3s}.evo-upload__hint_disabled{color:#727272}@media (max-width: 767px){.evo-upload__hint{font-size:14px}}.evo-upload__fake-link_disabled{color:#727272}.evo-upload__input{display:none}.evo-upload__list{margin-top:24px;margin-bottom:24px}.evo-upload__list:empty{display:none}.evo-upload__file-icon{margin-right:8px;fill:#91b1b8}.evo-upload__list-item{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:15px;color:#212121;font-weight:600;font-size:16px}.evo-upload__list-item:last-of-type{margin-bottom:24px}.evo-upload__item-inner{display:flex;flex-flow:row wrap;align-items:center}.evo-upload__list-delimiter{width:100%;margin-top:15px;color:#ff1817;font-size:14px;font-style:italic;line-height:22px;border-top:1px solid #C6C6C6}.evo-upload__list-delimiter_error{border-top-color:#ff1817}.evo-upload__button-remove{margin-left:auto;cursor:pointer;transition:fill .3s;fill:#91b1b8}.evo-upload__button-remove:not(.evo-upload__button-remove_disabled):hover{fill:#231f20}.evo-upload__button-remove_disabled{cursor:default;fill:#c6c6c6}.evo-upload__controls{display:flex;justify-content:space-between}.evo-upload__submit{margin-left:auto}.evo-upload__link{cursor:pointer}.evo-list{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.EvoNoteComponent, selector: "evo-note", inputs: ["closable", "iconSrc", "type"], outputs: ["close"] }, { kind: "component", type: i4.EvoButtonComponent, selector: "button[evoButton], a[evoButton]", inputs: ["size", "color", "theme", "disabled", "loading"] }, { kind: "component", type: i5.EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }, { kind: "directive", type: i6.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "pipe", type: i7.DeclinationPipe, name: "declination" }, { kind: "pipe", type: i8.SafeHtmlPipe, name: "safeHtml" }] }); }
233
+ ], viewQueries: [{ propertyName: "inputFileElement", first: true, predicate: ["inputFile"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"evo-upload\">\n <label\n class=\"evo-upload__wrapper\"\n [evoUiClass]=\"{over: states.isDragOver, disabled: isDisabled || loading}\"\n (click)=\"onTouched()\"\n (dragover)=\"handleDragOver($event)\"\n (dragleave)=\"handleDragLeave($event)\"\n (drop)=\"handleDrop($event)\"\n >\n <evo-icon shape=\"upload\" class=\"evo-upload__upload-icon\" [evoUiClass]=\"{disabled: isDisabled || loading}\" />\n <span class=\"evo-upload__title\" [evoUiClass]=\"{disabled: isDisabled || loading}\">{{ dropZoneLabel }}</span>\n\n <span class=\"evo-upload__hint\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\n \u0438\u043B\u0438\n <span class=\"evo-upload__fake-link\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435</span>\n @if (dropZoneHint) {\n (\n <span class=\"evo-upload__additional-hint\" [innerHTML]=\"dropZoneHint | safeHtml\"></span>\n )\n }\n </span>\n\n <input\n #inputFile\n type=\"file\"\n class=\"evo-upload__input\"\n [accept]=\"accept\"\n [disabled]=\"loading || isDisabled\"\n [attr.multiple]=\"maxFiles === 1 ? null : true\"\n (change)=\"inputChange($event.target.files)\"\n />\n </label>\n\n @if (!earlyValidation && filesForm.errors?.maxFiles) {\n <evo-note type=\"danger\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination: ['\u0444\u0430\u0439\u043B\u0430', '\u0444\u0430\u0439\u043B\u043E\u0432', '\u0444\u0430\u0439\u043B\u043E\u0432'] }}\n </evo-note>\n }\n\n @if (earlyValidation && filesForm.errors) {\n <evo-note type=\"danger\">\n <ul class=\"evo-list\">\n @if (filesForm.errors.maxFiles) {\n <li>\u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination: ['\u0444\u0430\u0439\u043B\u0430', '\u0444\u0430\u0439\u043B\u043E\u0432', '\u0444\u0430\u0439\u043B\u043E\u0432'] }}</li>\n }\n\n @if (filesForm.errors.size) {\n <li>\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u043E\u0434\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{ filesSizeLimitText }}</li>\n }\n\n @if (filesForm.errors.extension) {\n <li>\u0412\u044B\u0431\u0440\u0430\u043D \u0444\u0430\u0439\u043B \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u043E\u0433\u043E \u0444\u043E\u0440\u043C\u0430\u0442\u0430</li>\n }\n </ul>\n </evo-note>\n }\n\n <ul class=\"evo-upload__list\">\n @for (file of filesForm.controls; track file.value.name; let i = $index) {\n <li class=\"evo-upload__list-item\">\n <div class=\"evo-upload__item-inner\">\n <evo-icon shape=\"file\" svgWidth=\"24\" svgHeight=\"24\" class=\"evo-upload__file-icon\" />\n @if (clickableFiles) {\n <span class=\"evo-upload__link evo-link\" (click)=\"clickFile.emit({file: file.value, index: i})\">\n {{ file.value.name }}\n </span>\n } @else {\n <span>{{ file.value.name }}</span>\n }\n </div>\n <evo-icon\n shape=\"decline\"\n svgWidth=\"24\"\n svgHeight=\"24\"\n class=\"evo-upload__button-remove\"\n [evoUiClass]=\"{disabled: loading || isDisabled}\"\n (click)=\"handleItemRemove(i)\"\n />\n <div class=\"evo-upload__list-delimiter\" [evoUiClass]=\"{error: filesForm.controls[i].errors}\">\n @switch (getControlError(filesForm.controls[i])) {\n @case ('size') {\n \u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439\n }\n @case ('extension') {\n \u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0444\u0430\u0439\u043B\u0430\n }\n }\n </div>\n </li>\n }\n </ul>\n\n @if (filesForm.controls.length) {\n <div class=\"evo-upload__controls\">\n @if (!hideClearButton) {\n <button\n evoButton\n color=\"secondary\"\n theme=\"rounded-outline\"\n [disabled]=\"loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleResetButtonClick()\"\n >\n \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0451\n </button>\n }\n\n @if (!hideSubmitButton) {\n <button\n evoButton\n color=\"success\"\n class=\"evo-upload__submit\"\n [disabled]=\"filesForm.invalid || loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleSubmitButtonClick()\"\n >\n \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\n </button>\n }\n </div>\n }\n</div>\n", styles: [".evo-link,.evo-upload__fake-link{color:#0986e2;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.evo-link:hover,.evo-upload__fake-link:hover{color:#0986e2;border-bottom-color:#0986e2}.evo-link:active,.evo-upload__fake-link:active{color:#0879cb}.evo-link_dashed{border-bottom:1px dashed}.evo-link_dashed:hover{text-decoration:none;border-bottom-color:transparent}.evo-link_danger{color:#ff1817}.evo-link_danger:hover{color:#ff4645;border-bottom-color:#ff4645}.evo-link_danger:active{color:#e51715;border-bottom-color:#e51715}.evo-upload{width:100%}.evo-upload__wrapper{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:24px;padding:32px 0;color:#231f20;background:#f4f6f8;border:2px solid transparent;border-radius:8px}@media (max-width: 767px){.evo-upload__wrapper{padding:16px}}.evo-upload__wrapper_disabled{pointer-events:none}.evo-upload__wrapper_over{border-color:#dbe3ea}.evo-upload__upload-icon{flex:0 0 48px;width:48px;height:48px;margin-bottom:24px;transition:fill .3s;fill:#91b1b8}.evo-upload__upload-icon_disabled{fill:#727272}@media (max-width: 767px){.evo-upload__upload-icon{margin-bottom:16px}}.evo-upload__title{margin-bottom:8px;font-weight:700;font-size:24px;text-align:center;transition:color .3s}.evo-upload__title_disabled{color:#727272}@media (max-width: 767px){.evo-upload__title{font-size:16px}}.evo-upload__hint{font-size:18px;text-align:center;transition:color .3s}.evo-upload__hint_disabled{color:#727272}@media (max-width: 767px){.evo-upload__hint{font-size:14px}}.evo-upload__fake-link_disabled{color:#727272}.evo-upload__input{display:none}.evo-upload__list{margin-top:24px;margin-bottom:24px}.evo-upload__list:empty{display:none}.evo-upload__file-icon{margin-right:8px;fill:#91b1b8}.evo-upload__list-item{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:15px;color:#212121;font-weight:600;font-size:16px}.evo-upload__list-item:last-of-type{margin-bottom:24px}.evo-upload__item-inner{display:flex;flex-flow:row wrap;align-items:center}.evo-upload__list-delimiter{width:100%;margin-top:15px;color:#ff1817;font-size:14px;font-style:italic;line-height:22px;border-top:1px solid #C6C6C6}.evo-upload__list-delimiter_error{border-top-color:#ff1817}.evo-upload__button-remove{margin-left:auto;cursor:pointer;transition:fill .3s;fill:#91b1b8}.evo-upload__button-remove:not(.evo-upload__button-remove_disabled):hover{fill:#231f20}.evo-upload__button-remove_disabled{cursor:default;fill:#c6c6c6}.evo-upload__controls{display:flex;justify-content:space-between}.evo-upload__submit{margin-left:auto}.evo-upload__link{cursor:pointer}.evo-list{margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "component", type: EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }, { kind: "component", type: EvoNoteComponent, selector: "evo-note", inputs: ["closable", "iconSrc", "type"], outputs: ["close"] }, { kind: "component", type: EvoButtonComponent, selector: "button[evoButton], a[evoButton]", inputs: ["size", "color", "theme", "disabled", "loading"] }, { kind: "pipe", type: DeclinationPipe, name: "declination" }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] }); }
236
234
  }
237
235
  __decorate([
238
236
  autobind
@@ -251,7 +249,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
251
249
  useExisting: forwardRef(() => EvoUploadComponent),
252
250
  multi: true,
253
251
  },
254
- ], template: "<div class=\"evo-upload\">\n <label\n class=\"evo-upload__wrapper\"\n [evoUiClass]=\"{over: states.isDragOver, disabled: isDisabled || loading}\"\n (click)=\"onTouched()\"\n (dragover)=\"handleDragOver($event)\"\n (dragleave)=\"handleDragLeave($event)\"\n (drop)=\"handleDrop($event)\"\n >\n <evo-icon\n shape=\"upload\"\n class=\"evo-upload__upload-icon\"\n [evoUiClass]=\"{disabled: isDisabled || loading}\"\n ></evo-icon>\n <span class=\"evo-upload__title\" [evoUiClass]=\"{disabled: isDisabled || loading}\">{{ dropZoneLabel }}</span>\n\n <span class=\"evo-upload__hint\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\n \u0438\u043B\u0438\n <span class=\"evo-upload__fake-link\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435</span>\n <ng-container *ngIf=\"dropZoneHint\">\n (\n <span class=\"evo-upload__additional-hint\" [innerHTML]=\"dropZoneHint | safeHtml\"></span>\n )\n </ng-container>\n </span>\n\n <input\n #inputFile\n type=\"file\"\n class=\"evo-upload__input\"\n [accept]=\"accept\"\n [disabled]=\"loading || isDisabled\"\n [attr.multiple]=\"maxFiles === 1 ? null : true\"\n (change)=\"inputChange($event.target.files)\"\n />\n </label>\n\n <evo-note *ngIf=\"!earlyValidation && filesForm.errors?.maxFiles\" type=\"danger\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}\n </evo-note>\n <evo-note *ngIf=\"earlyValidation && filesForm.errors\" type=\"danger\">\n <ul class=\"evo-list\">\n <li *ngIf=\"filesForm.errors.maxFiles\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination:[\"\u0444\u0430\u0439\u043B\u0430\", \"\u0444\u0430\u0439\u043B\u043E\u0432\", \"\u0444\u0430\u0439\u043B\u043E\u0432\"] }}\n </li>\n <li *ngIf=\"filesForm.errors.size\">\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u043E\u0434\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{ filesSizeLimitText }}</li>\n <li *ngIf=\"filesForm.errors.extension\">\u0412\u044B\u0431\u0440\u0430\u043D \u0444\u0430\u0439\u043B \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u043E\u0433\u043E \u0444\u043E\u0440\u043C\u0430\u0442\u0430</li>\n </ul>\n </evo-note>\n\n <ul class=\"evo-upload__list\">\n <li *ngFor=\"let file of filesForm.controls; let i = index\" class=\"evo-upload__list-item\">\n <div class=\"evo-upload__item-inner\">\n <evo-icon shape=\"file\" svgWidth=\"24\" svgHeight=\"24\" class=\"evo-upload__file-icon\"></evo-icon>\n\n <span\n *ngIf=\"clickableFiles\"\n class=\"evo-upload__link evo-link\"\n (click)=\"clickFile.emit({ file: file.value, index: i })\"\n >\n {{ file.value.name }}\n </span>\n\n <span *ngIf=\"!clickableFiles\">{{ file.value.name }}</span>\n </div>\n\n <evo-icon\n shape=\"decline\"\n svgWidth=\"24\"\n svgHeight=\"24\"\n class=\"evo-upload__button-remove\"\n [evoUiClass]=\"{disabled: loading || isDisabled}\"\n (click)=\"handleItemRemove(i)\"\n ></evo-icon>\n\n <div\n class=\"evo-upload__list-delimiter\"\n [evoUiClass]=\"{error: filesForm.controls[i].errors}\"\n [ngSwitch]=\"getControlError(filesForm.controls[i])\"\n >\n <ng-container *ngSwitchCase=\"'size'\">\u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439</ng-container>\n <ng-container *ngSwitchCase=\"'extension'\">\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0444\u0430\u0439\u043B\u0430</ng-container>\n </div>\n </li>\n </ul>\n\n <div *ngIf=\"filesForm.controls.length\" class=\"evo-upload__controls\">\n <button\n *ngIf=\"!hideClearButton\"\n evoButton\n color=\"secondary\"\n theme=\"rounded-outline\"\n [disabled]=\"loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleResetButtonClick()\"\n >\n \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0451\n </button>\n <button\n *ngIf=\"!hideSubmitButton\"\n evoButton\n color=\"success\"\n class=\"evo-upload__submit\"\n [disabled]=\"filesForm.invalid || loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleSubmitButtonClick()\"\n >\n \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\n </button>\n </div>\n</div>\n", styles: [".evo-link,.evo-upload__fake-link{color:#0986e2;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.evo-link:hover,.evo-upload__fake-link:hover{color:#0986e2;border-bottom-color:#0986e2}.evo-link:active,.evo-upload__fake-link:active{color:#0879cb}.evo-link_dashed{border-bottom:1px dashed}.evo-link_dashed:hover{text-decoration:none;border-bottom-color:transparent}.evo-link_danger{color:#ff1817}.evo-link_danger:hover{color:#ff4645;border-bottom-color:#ff4645}.evo-link_danger:active{color:#e51715;border-bottom-color:#e51715}.evo-upload{width:100%}.evo-upload__wrapper{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:24px;padding:32px 0;color:#231f20;background:#f4f6f8;border:2px solid transparent;border-radius:8px}@media (max-width: 767px){.evo-upload__wrapper{padding:16px}}.evo-upload__wrapper_disabled{pointer-events:none}.evo-upload__wrapper_over{border-color:#dbe3ea}.evo-upload__upload-icon{flex:0 0 48px;width:48px;height:48px;margin-bottom:24px;transition:fill .3s;fill:#91b1b8}.evo-upload__upload-icon_disabled{fill:#727272}@media (max-width: 767px){.evo-upload__upload-icon{margin-bottom:16px}}.evo-upload__title{margin-bottom:8px;font-weight:700;font-size:24px;text-align:center;transition:color .3s}.evo-upload__title_disabled{color:#727272}@media (max-width: 767px){.evo-upload__title{font-size:16px}}.evo-upload__hint{font-size:18px;text-align:center;transition:color .3s}.evo-upload__hint_disabled{color:#727272}@media (max-width: 767px){.evo-upload__hint{font-size:14px}}.evo-upload__fake-link_disabled{color:#727272}.evo-upload__input{display:none}.evo-upload__list{margin-top:24px;margin-bottom:24px}.evo-upload__list:empty{display:none}.evo-upload__file-icon{margin-right:8px;fill:#91b1b8}.evo-upload__list-item{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:15px;color:#212121;font-weight:600;font-size:16px}.evo-upload__list-item:last-of-type{margin-bottom:24px}.evo-upload__item-inner{display:flex;flex-flow:row wrap;align-items:center}.evo-upload__list-delimiter{width:100%;margin-top:15px;color:#ff1817;font-size:14px;font-style:italic;line-height:22px;border-top:1px solid #C6C6C6}.evo-upload__list-delimiter_error{border-top-color:#ff1817}.evo-upload__button-remove{margin-left:auto;cursor:pointer;transition:fill .3s;fill:#91b1b8}.evo-upload__button-remove:not(.evo-upload__button-remove_disabled):hover{fill:#231f20}.evo-upload__button-remove_disabled{cursor:default;fill:#c6c6c6}.evo-upload__controls{display:flex;justify-content:space-between}.evo-upload__submit{margin-left:auto}.evo-upload__link{cursor:pointer}.evo-list{margin-bottom:0}\n"] }]
252
+ ], standalone: true, imports: [
253
+ EvoUiClassDirective,
254
+ EvoIconComponent,
255
+ EvoNoteComponent,
256
+ EvoButtonComponent,
257
+ DeclinationPipe,
258
+ SafeHtmlPipe,
259
+ ], template: "<div class=\"evo-upload\">\n <label\n class=\"evo-upload__wrapper\"\n [evoUiClass]=\"{over: states.isDragOver, disabled: isDisabled || loading}\"\n (click)=\"onTouched()\"\n (dragover)=\"handleDragOver($event)\"\n (dragleave)=\"handleDragLeave($event)\"\n (drop)=\"handleDrop($event)\"\n >\n <evo-icon shape=\"upload\" class=\"evo-upload__upload-icon\" [evoUiClass]=\"{disabled: isDisabled || loading}\" />\n <span class=\"evo-upload__title\" [evoUiClass]=\"{disabled: isDisabled || loading}\">{{ dropZoneLabel }}</span>\n\n <span class=\"evo-upload__hint\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\n \u0438\u043B\u0438\n <span class=\"evo-upload__fake-link\" [evoUiClass]=\"{disabled: isDisabled || loading}\">\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435</span>\n @if (dropZoneHint) {\n (\n <span class=\"evo-upload__additional-hint\" [innerHTML]=\"dropZoneHint | safeHtml\"></span>\n )\n }\n </span>\n\n <input\n #inputFile\n type=\"file\"\n class=\"evo-upload__input\"\n [accept]=\"accept\"\n [disabled]=\"loading || isDisabled\"\n [attr.multiple]=\"maxFiles === 1 ? null : true\"\n (change)=\"inputChange($event.target.files)\"\n />\n </label>\n\n @if (!earlyValidation && filesForm.errors?.maxFiles) {\n <evo-note type=\"danger\">\n \u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination: ['\u0444\u0430\u0439\u043B\u0430', '\u0444\u0430\u0439\u043B\u043E\u0432', '\u0444\u0430\u0439\u043B\u043E\u0432'] }}\n </evo-note>\n }\n\n @if (earlyValidation && filesForm.errors) {\n <evo-note type=\"danger\">\n <ul class=\"evo-list\">\n @if (filesForm.errors.maxFiles) {\n <li>\u041D\u0435\u043B\u044C\u0437\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C \u0431\u043E\u043B\u0435\u0435 {{ maxFiles || 1 | declination: ['\u0444\u0430\u0439\u043B\u0430', '\u0444\u0430\u0439\u043B\u043E\u0432', '\u0444\u0430\u0439\u043B\u043E\u0432'] }}</li>\n }\n\n @if (filesForm.errors.size) {\n <li>\u041C\u0430\u043A\u0441\u0438\u043C\u0430\u043B\u044C\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440 \u043E\u0434\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 {{ filesSizeLimitText }}</li>\n }\n\n @if (filesForm.errors.extension) {\n <li>\u0412\u044B\u0431\u0440\u0430\u043D \u0444\u0430\u0439\u043B \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u043E\u0433\u043E \u0444\u043E\u0440\u043C\u0430\u0442\u0430</li>\n }\n </ul>\n </evo-note>\n }\n\n <ul class=\"evo-upload__list\">\n @for (file of filesForm.controls; track file.value.name; let i = $index) {\n <li class=\"evo-upload__list-item\">\n <div class=\"evo-upload__item-inner\">\n <evo-icon shape=\"file\" svgWidth=\"24\" svgHeight=\"24\" class=\"evo-upload__file-icon\" />\n @if (clickableFiles) {\n <span class=\"evo-upload__link evo-link\" (click)=\"clickFile.emit({file: file.value, index: i})\">\n {{ file.value.name }}\n </span>\n } @else {\n <span>{{ file.value.name }}</span>\n }\n </div>\n <evo-icon\n shape=\"decline\"\n svgWidth=\"24\"\n svgHeight=\"24\"\n class=\"evo-upload__button-remove\"\n [evoUiClass]=\"{disabled: loading || isDisabled}\"\n (click)=\"handleItemRemove(i)\"\n />\n <div class=\"evo-upload__list-delimiter\" [evoUiClass]=\"{error: filesForm.controls[i].errors}\">\n @switch (getControlError(filesForm.controls[i])) {\n @case ('size') {\n \u0420\u0430\u0437\u043C\u0435\u0440 \u0444\u0430\u0439\u043B\u0430 \u043F\u0440\u0435\u0432\u044B\u0448\u0430\u0435\u0442 \u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439\n }\n @case ('extension') {\n \u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u0444\u0430\u0439\u043B\u0430\n }\n }\n </div>\n </li>\n }\n </ul>\n\n @if (filesForm.controls.length) {\n <div class=\"evo-upload__controls\">\n @if (!hideClearButton) {\n <button\n evoButton\n color=\"secondary\"\n theme=\"rounded-outline\"\n [disabled]=\"loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleResetButtonClick()\"\n >\n \u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0451\n </button>\n }\n\n @if (!hideSubmitButton) {\n <button\n evoButton\n color=\"success\"\n class=\"evo-upload__submit\"\n [disabled]=\"filesForm.invalid || loading || isDisabled\"\n [loading]=\"loading\"\n (click)=\"handleSubmitButtonClick()\"\n >\n \u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044C\n </button>\n }\n </div>\n }\n</div>\n", styles: [".evo-link,.evo-upload__fake-link{color:#0986e2;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.evo-link:hover,.evo-upload__fake-link:hover{color:#0986e2;border-bottom-color:#0986e2}.evo-link:active,.evo-upload__fake-link:active{color:#0879cb}.evo-link_dashed{border-bottom:1px dashed}.evo-link_dashed:hover{text-decoration:none;border-bottom-color:transparent}.evo-link_danger{color:#ff1817}.evo-link_danger:hover{color:#ff4645;border-bottom-color:#ff4645}.evo-link_danger:active{color:#e51715;border-bottom-color:#e51715}.evo-upload{width:100%}.evo-upload__wrapper{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:24px;padding:32px 0;color:#231f20;background:#f4f6f8;border:2px solid transparent;border-radius:8px}@media (max-width: 767px){.evo-upload__wrapper{padding:16px}}.evo-upload__wrapper_disabled{pointer-events:none}.evo-upload__wrapper_over{border-color:#dbe3ea}.evo-upload__upload-icon{flex:0 0 48px;width:48px;height:48px;margin-bottom:24px;transition:fill .3s;fill:#91b1b8}.evo-upload__upload-icon_disabled{fill:#727272}@media (max-width: 767px){.evo-upload__upload-icon{margin-bottom:16px}}.evo-upload__title{margin-bottom:8px;font-weight:700;font-size:24px;text-align:center;transition:color .3s}.evo-upload__title_disabled{color:#727272}@media (max-width: 767px){.evo-upload__title{font-size:16px}}.evo-upload__hint{font-size:18px;text-align:center;transition:color .3s}.evo-upload__hint_disabled{color:#727272}@media (max-width: 767px){.evo-upload__hint{font-size:14px}}.evo-upload__fake-link_disabled{color:#727272}.evo-upload__input{display:none}.evo-upload__list{margin-top:24px;margin-bottom:24px}.evo-upload__list:empty{display:none}.evo-upload__file-icon{margin-right:8px;fill:#91b1b8}.evo-upload__list-item{display:flex;flex-wrap:wrap;align-items:center;margin-bottom:15px;color:#212121;font-weight:600;font-size:16px}.evo-upload__list-item:last-of-type{margin-bottom:24px}.evo-upload__item-inner{display:flex;flex-flow:row wrap;align-items:center}.evo-upload__list-delimiter{width:100%;margin-top:15px;color:#ff1817;font-size:14px;font-style:italic;line-height:22px;border-top:1px solid #C6C6C6}.evo-upload__list-delimiter_error{border-top-color:#ff1817}.evo-upload__button-remove{margin-left:auto;cursor:pointer;transition:fill .3s;fill:#91b1b8}.evo-upload__button-remove:not(.evo-upload__button-remove_disabled):hover{fill:#231f20}.evo-upload__button-remove_disabled{cursor:default;fill:#c6c6c6}.evo-upload__controls{display:flex;justify-content:space-between}.evo-upload__submit{margin-left:auto}.evo-upload__link{cursor:pointer}.evo-list{margin-bottom:0}\n"] }]
255
260
  }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }, { type: i0.Injector }], propDecorators: { accept: [{
256
261
  type: Input
257
262
  }], dropZoneLabel: [{
@@ -284,4 +289,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
284
289
  type: ViewChild,
285
290
  args: ['inputFile']
286
291
  }], fileSizeValidator: [], fileExtensionValidator: [], maxFilesValidator: [] } });
287
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdXBsb2FkL2V2by11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXVwbG9hZC9ldm8tdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBRVYsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdILGlCQUFpQixFQUdqQixrQkFBa0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLFFBQVEsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7O0FBbUI3RCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQUVsRCxJQUFhLE1BQU0sQ0FBQyxVQUFrQjtRQUNsQyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLFVBQVU7aUJBQzlCLEtBQUssQ0FBQyxHQUFHLENBQUM7aUJBQ1YsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ25ELENBQUM7SUFDTCxDQUFDO0lBUUQsSUFBYSxhQUFhLENBQUMsUUFBZ0I7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFFBQVEsQ0FBQztRQUNu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O3NCQUFsQixNQUFNO2dCQUVpQixnQkFBZ0I7c0JBQXZDLFNBQVM7dUJBQUMsV0FBVztnQkEyTWQsaUJBQWlCLE1BU2pCLHNCQUFzQixNQVl0QixpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0b3IsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gICAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgVW50eXBlZEZvcm1BcnJheSxcbiAgICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgVW50eXBlZEZvcm1Db250cm9sLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgYXV0b2JpbmQgZnJvbSAnYXV0b2JpbmQtZGVjb3JhdG9yJztcbmltcG9ydCBieXRlcyBmcm9tICdieXRlcyc7XG5pbXBvcnQgKiBhcyBtaW1lIGZyb20gJ21pbWUnO1xuaW1wb3J0IHtFdm9CYXNlQ29udHJvbH0gZnJvbSAnLi4vLi4vY29tbW9uL2V2by1iYXNlLWNvbnRyb2wnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2b1VwbG9hZEl0ZW1DbGlja0V2ZW50IHtcbiAgICBmaWxlOiBGaWxlO1xuICAgIGluZGV4OiBudW1iZXI7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXZvLXVwbG9hZCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldm8tdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFdm9VcGxvYWRDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVXBsb2FkQ29tcG9uZW50IGV4dGVuZHMgRXZvQmFzZUNvbnRyb2wgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJDb250ZW50SW5pdCwgT25Jbml0IHtcblxuICAgIEBJbnB1dCgpIHNldCBhY2NlcHQoZXh0ZW5zaW9uczogc3RyaW5nKSB7XG4gICAgICAgIGlmIChleHRlbnNpb25zKSB7XG4gICAgICAgICAgICB0aGlzLmFjY2VwdGVkTWltZVR5cGVzID0gZXh0ZW5zaW9uc1xuICAgICAgICAgICAgICAgIC5zcGxpdCgnLCcpXG4gICAgICAgICAgICAgICAgLm1hcChleHRlbnNpb24gPT4gbWltZS5nZXRUeXBlKGV4dGVuc2lvbikpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBJbnB1dCgpIGRyb3Bab25lTGFiZWwgPSAn0J/QtdGA0LXRgtCw0YnQuNGC0LUg0YHRjtC00LAg0YTQsNC50LvRiyDQtNC70Y8g0LfQsNCz0YDRg9C30LrQuCc7XG4gICAgQElucHV0KCkgZHJvcFpvbmVIaW50OiBzdHJpbmc7XG4gICAgQElucHV0KCkgaGlkZUNsZWFyQnV0dG9uID0gZmFsc2U7XG4gICAgQElucHV0KCkgaGlkZVN1Ym1pdEJ1dHRvbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGNsaWNrYWJsZUZpbGVzID0gZmFsc2U7XG4gICAgQElucHV0KCkgZWFybHlWYWxpZGF0aW9uID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZXQgZmlsZVNpemVMaW1pdChmaWxlU2l6ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZmlsZXNTaXplTGltaXRUZXh0ID0gZmlsZVNpemU7XG4gICAgICAgIHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzID0gYnl0ZXMoZmlsZVNpemUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIG1heEZpbGVzOiBudW1iZXI7XG4gICAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpIHN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUxpc3Q+KCk7XG4gICAgQE91dHB1dCgpIGFkZEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlTGlzdD4oKTtcbiAgICBAT3V0cHV0KCkgcmVtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQE91dHB1dCgpIGNsaWNrRmlsZSA9IG5ldyBFdmVudEVtaXR0ZXI8RXZvVXBsb2FkSXRlbUNsaWNrRXZlbnQ+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dEZpbGUnKSBpbnB1dEZpbGVFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xuICAgIGZpbGVzRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuYXJyYXkoW10sIFt0aGlzLm1heEZpbGVzVmFsaWRhdG9yXSk7XG4gICAgZmlsZXNTaXplTGltaXRUZXh0OiBzdHJpbmc7XG4gICAgZmlsZXNTaXplTGltaXRJbkJ5dGVzOiBudW1iZXI7XG4gICAgc3RhdGVzID0ge1xuICAgICAgICBpc0RyYWdPdmVyOiBmYWxzZSxcbiAgICB9O1xuICAgIGFjY2VwdGVkTWltZVR5cGVzOiBzdHJpbmdbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVPbkZvcm1DaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLm1lcmdlQ29udHJvbHNFcnJvcnMoKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZSA9ICh2YWx1ZSkgPT4ge307XG4gICAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0Rpc2FibGVkID0gaXNEaXNhYmxlZDtcblxuICAgICAgICBpZiAoIWlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMubWVyZ2VDb250cm9sc0Vycm9ycygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZShmaWxlTGlzdDogRmlsZUxpc3QgfCBGaWxlW10pIHtcbiAgICAgICAgaWYgKGZpbGVMaXN0ICYmIGZpbGVMaXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGlmIChmaWxlTGlzdCBpbnN0YW5jZW9mIEFycmF5IHx8IGZpbGVMaXN0IGluc3RhbmNlb2YgRmlsZUxpc3QpIHtcbiAgICAgICAgICAgICAgICB0aGlzLndpcGVVcGxvYWRMaXN0KCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZWFybHlWYWxpZGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWFybHlWYWxpZGF0aW9uRm4oZmlsZUxpc3QpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5maWxlc0Zvcm0uZXJyb3JzKSB7IHJldHVybjsgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NGaWxlcyhmaWxlTGlzdCBhcyBGaWxlTGlzdCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRocm93IEVycm9yKCdbRXZvVWlLaXRdOiB3cm9uZyBpbml0aWFsIHZhbHVlIHBhc3NlZCB0byBcImV2by11cGxvYWRcIiBjb21wb25lbnQuIE9ubHkgRmlsZUxpc3QgYW5kIEZpbGVbXSBhcmUgYWxsb3dlZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0Q29udHJvbEVycm9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHN0cmluZyB7XG4gICAgICAgIGlmICghY29udHJvbC5lcnJvcnMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGNvbnRyb2wuZXJyb3JzKVswXTtcbiAgICB9XG5cbiAgICBoYW5kbGVEcmFnT3ZlcihldmVudDogRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3RhdGVzLmlzRHJhZ092ZXIgPSB0cnVlO1xuICAgIH1cblxuICAgIGhhbmRsZURyYWdMZWF2ZShldmVudDogRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuc3RhdGVzLmlzRHJhZ092ZXIgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBoYW5kbGVEcm9wKGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3QgZmlsZXMgPSBldmVudC5kYXRhVHJhbnNmZXIuZmlsZXM7XG5cbiAgICAgICAgdGhpcy5zdGF0ZXMuaXNEcmFnT3ZlciA9IGZhbHNlO1xuICAgICAgICBpZiAoZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5lYXJseVZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmVhcmx5VmFsaWRhdGlvbkZuKGZpbGVzKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5maWxlc0Zvcm0uZXJyb3JzKSB7IHJldHVybjsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5hZGRGaWxlcy5lbWl0KGZpbGVzKTtcbiAgICAgICAgICAgIHRoaXMucHJvY2Vzc0ZpbGVzKGZpbGVzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhhbmRsZUl0ZW1SZW1vdmUoaW5kZXgpIHtcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZyB8fCB0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZpbGVzRm9ybS5yZW1vdmVBdChpbmRleCk7XG4gICAgICAgIHRoaXMucmVtb3ZlLmVtaXQoaW5kZXgpO1xuICAgIH1cblxuICAgIGhhbmRsZVJlc2V0QnV0dG9uQ2xpY2soKSB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgdGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLndpcGVVcGxvYWRMaXN0KCk7XG4gICAgfVxuXG4gICAgaGFuZGxlU3VibWl0QnV0dG9uQ2xpY2soKSB7XG4gICAgICAgIHRoaXMuc3VibWl0LmVtaXQodGhpcy5maWxlc0Zvcm0udmFsdWUpO1xuICAgIH1cblxuICAgIGlucHV0Q2hhbmdlKGZpbGVzOiBGaWxlTGlzdCkge1xuICAgICAgICBpZiAodGhpcy5lYXJseVZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuZWFybHlWYWxpZGF0aW9uRm4oZmlsZXMpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZmlsZXNGb3JtLmVycm9ycykgeyByZXR1cm47IH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFkZEZpbGVzLmVtaXQoZmlsZXMpO1xuICAgICAgICB0aGlzLnByb2Nlc3NGaWxlcyhmaWxlcyk7XG4gICAgfVxuXG4gICAgZWFybHlWYWxpZGF0aW9uRm4oZmlsZXM6IEZpbGVMaXN0IHwgRmlsZVtdKSB7XG4gICAgICAgIHRoaXMuZmlsZXNGb3JtLnNldEVycm9ycyhudWxsKTtcbiAgICAgICAgY29uc3QgZmlsZXNBcnJheSA9IEFycmF5LmZyb20oZmlsZXMpO1xuICAgICAgICBjb25zdCBlcnJvcnMgPSBbXTtcbiAgICAgICAgaWYgKHRoaXMubWF4RmlsZXMgJiYgdGhpcy5pc0ZpbGVzTGVuZ3RoVmFsaWQoZmlsZXNBcnJheSkpIHtcbiAgICAgICAgICAgIGVycm9ycy5wdXNoKHsgbWF4RmlsZXM6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzICYmICF0aGlzLmlzRmlsZXNTaXplVmFsaWQoZmlsZXNBcnJheSkpIHtcbiAgICAgICAgICAgIGVycm9ycy5wdXNoKHsgc2l6ZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5hY2NlcHRlZE1pbWVUeXBlcyAmJiAhdGhpcy5pc0ZpbGVzRXh0ZW5zaW9uVmFsaWQoZmlsZXNBcnJheSkpIHtcbiAgICAgICAgICAgIGVycm9ycy5wdXNoKHsgZXh0ZW5zaW9uOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlcnJvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzRm9ybS5zZXRFcnJvcnMoT2JqZWN0LmFzc2lnbih7fSwgLi4uZXJyb3JzKSk7XG4gICAgICAgICAgICB0aGlzLm1lcmdlQ29udHJvbHNFcnJvcnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzRmlsZXNMZW5ndGhWYWxpZChmaWxlczogRmlsZVtdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1heEZpbGVzIDwgKGZpbGVzLmxlbmd0aCArIHRoaXMuZmlsZXNGb3JtLmNvbnRyb2xzLmxlbmd0aCk7XG4gICAgfVxuXG4gICAgaXNGaWxlc1NpemVWYWxpZChmaWxlczogRmlsZVtdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhZmlsZXMuc29tZSgoeyBzaXplIH0pID0+IHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzIDwgc2l6ZSk7XG4gICAgfVxuXG4gICAgaXNGaWxlc0V4dGVuc2lvblZhbGlkKGZpbGVzOiBGaWxlW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbGVzLmV2ZXJ5KCh7IHR5cGUgfSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWNjZXB0ZWRNaW1lVHlwZXMuaW5jbHVkZXModHlwZSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb2Nlc3NGaWxlcyhmaWxlczogRmlsZUxpc3QpIHtcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgQXJyYXkuZnJvbShmaWxlcykuZm9yRWFjaCgoZmlsZTogRmlsZSkgPT4geyAvLyB0c2xpbnQ6ZGlzYWJsZTpuby1mb3ItZWFjaC1wdXNoXG4gICAgICAgICAgICB0aGlzLmZpbGVzRm9ybS5wdXNoKG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woZmlsZSwgW3RoaXMuZmlsZUV4dGVuc2lvblZhbGlkYXRvciwgdGhpcy5maWxlU2l6ZVZhbGlkYXRvcl0pKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuaW5wdXRGaWxlRWxlbWVudCAmJiB0aGlzLmlucHV0RmlsZUVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dEZpbGVFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHdpcGVVcGxvYWRMaXN0KCkge1xuICAgICAgICB3aGlsZSAodGhpcy5maWxlc0Zvcm0uY29udHJvbHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzRm9ybS5yZW1vdmVBdCgwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbWVyZ2VDb250cm9sc0Vycm9ycygpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVycm9ycyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZmlsZXNGb3JtLmVycm9ycyk7XG4gICAgICAgIHRoaXMuZmlsZXNGb3JtLmNvbnRyb2xzLmZvckVhY2goKGNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCkgPT4ge1xuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihlcnJvcnMsIGNvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29udHJvbC5zZXRFcnJvcnMoT2JqZWN0LmtleXMoZXJyb3JzKS5sZW5ndGggPyBlcnJvcnMgOiBudWxsKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN1YnNjcmliZU9uRm9ybUNoYW5nZXMoKSB7XG4gICAgICAgIHRoaXMuZmlsZXNGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMubWVyZ2VDb250cm9sc0Vycm9ycygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBAYXV0b2JpbmRcbiAgICBwcml2YXRlIGZpbGVTaXplVmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICAgICAgICBpZiAoIXRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb250cm9sLnZhbHVlLnNpemUgPiB0aGlzLmZpbGVzU2l6ZUxpbWl0SW5CeXRlcyA/IHsgc2l6ZTogdHJ1ZSB9IDogbnVsbDtcbiAgICB9XG5cbiAgICBAYXV0b2JpbmRcbiAgICBwcml2YXRlIGZpbGVFeHRlbnNpb25WYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICAgIGlmICghdGhpcy5hY2NlcHRlZE1pbWVUeXBlcykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWxlVHlwZSA9IChjb250cm9sLnZhbHVlIGFzIEZpbGUpLnR5cGU7XG4gICAgICAgIGNvbnN0IGlzRXh0ZW5zaW9uQWxsb3dlZCA9IHRoaXMuYWNjZXB0ZWRNaW1lVHlwZXMuaW5jbHVkZXMoZmlsZVR5cGUpO1xuXG4gICAgICAgIHJldHVybiBpc0V4dGVuc2lvbkFsbG93ZWQgPyBudWxsIDogeyBleHRlbnNpb246IHRydWUgfTtcbiAgICB9XG5cbiAgICBAYXV0b2JpbmRcbiAgICBwcml2YXRlIG1heEZpbGVzVmFsaWRhdG9yKGNvbnRyb2w6IFVudHlwZWRGb3JtQXJyYXkpIHtcbiAgICAgICAgaWYgKCF0aGlzLm1heEZpbGVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29udHJvbC5jb250cm9scy5sZW5ndGggPiB0aGlzLm1heEZpbGVzID8geyBtYXhGaWxlczogdHJ1ZSB9IDogbnVsbDtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZXZvLXVwbG9hZFwiPlxuICAgIDxsYWJlbFxuICAgICAgICBjbGFzcz1cImV2by11cGxvYWRfX3dyYXBwZXJcIlxuICAgICAgICBbZXZvVWlDbGFzc109XCJ7b3Zlcjogc3RhdGVzLmlzRHJhZ092ZXIsIGRpc2FibGVkOiBpc0Rpc2FibGVkIHx8IGxvYWRpbmd9XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uVG91Y2hlZCgpXCJcbiAgICAgICAgKGRyYWdvdmVyKT1cImhhbmRsZURyYWdPdmVyKCRldmVudClcIlxuICAgICAgICAoZHJhZ2xlYXZlKT1cImhhbmRsZURyYWdMZWF2ZSgkZXZlbnQpXCJcbiAgICAgICAgKGRyb3ApPVwiaGFuZGxlRHJvcCgkZXZlbnQpXCJcbiAgICA+XG4gICAgICAgIDxldm8taWNvblxuICAgICAgICAgICAgc2hhcGU9XCJ1cGxvYWRcIlxuICAgICAgICAgICAgY2xhc3M9XCJldm8tdXBsb2FkX191cGxvYWQtaWNvblwiXG4gICAgICAgICAgICBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGlzRGlzYWJsZWQgfHwgbG9hZGluZ31cIlxuICAgICAgICA+PC9ldm8taWNvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX190aXRsZVwiIFtldm9VaUNsYXNzXT1cIntkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiPnt7IGRyb3Bab25lTGFiZWwgfX08L3NwYW4+XG5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8tdXBsb2FkX19oaW50XCIgW2V2b1VpQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0Rpc2FibGVkIHx8IGxvYWRpbmd9XCI+XG4gICAgICAgICAgICDQuNC70LhcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9fZmFrZS1saW5rXCIgW2V2b1VpQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0Rpc2FibGVkIHx8IGxvYWRpbmd9XCI+0LfQsNCz0YDRg9C30LjRgtC1PC9zcGFuPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRyb3Bab25lSGludFwiPlxuICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV2by11cGxvYWRfX2FkZGl0aW9uYWwtaGludFwiIFtpbm5lckhUTUxdPVwiZHJvcFpvbmVIaW50IHwgc2FmZUh0bWxcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNpbnB1dEZpbGVcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZXZvLXVwbG9hZF9faW5wdXRcIlxuICAgICAgICAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICBbYXR0ci5tdWx0aXBsZV09XCJtYXhGaWxlcyA9PT0gMSA/IG51bGwgOiB0cnVlXCJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwiaW5wdXRDaGFuZ2UoJGV2ZW50LnRhcmdldC5maWxlcylcIlxuICAgICAgICAvPlxuICAgIDwvbGFiZWw+XG5cbiAgICA8ZXZvLW5vdGUgKm5nSWY9XCIhZWFybHlWYWxpZGF0aW9uICYmIGZpbGVzRm9ybS5lcnJvcnM/Lm1heEZpbGVzXCIgdHlwZT1cImRhbmdlclwiPlxuICAgICAgICDQndC10LvRjNC30Y8g0LfQsNCz0YDRg9C30LjRgtGMINCx0L7Qu9C10LUge3sgbWF4RmlsZXMgfHwgMSB8IGRlY2xpbmF0aW9uOltcItGE0LDQudC70LBcIiwgXCLRhNCw0LnQu9C+0LJcIiwgXCLRhNCw0LnQu9C+0LJcIl0gfX1cbiAgICA8L2V2by1ub3RlPlxuICAgIDxldm8tbm90ZSAqbmdJZj1cImVhcmx5VmFsaWRhdGlvbiAmJiBmaWxlc0Zvcm0uZXJyb3JzXCIgdHlwZT1cImRhbmdlclwiPlxuICAgICAgICA8dWwgY2xhc3M9XCJldm8tbGlzdFwiPlxuICAgICAgICAgICAgPGxpICpuZ0lmPVwiZmlsZXNGb3JtLmVycm9ycy5tYXhGaWxlc1wiPlxuICAgICAgICAgICAgICAgINCd0LXQu9GM0LfRjyDQt9Cw0LPRgNGD0LfQuNGC0Ywg0LHQvtC70LXQtSB7eyBtYXhGaWxlcyB8fCAxIHwgZGVjbGluYXRpb246W1wi0YTQsNC50LvQsFwiLCBcItGE0LDQudC70L7QslwiLCBcItGE0LDQudC70L7QslwiXSB9fVxuICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDxsaSAqbmdJZj1cImZpbGVzRm9ybS5lcnJvcnMuc2l6ZVwiPtCc0LDQutGB0LjQvNCw0LvRjNC90YvQuSDRgNCw0LfQvNC10YAg0L7QtNC90L7Qs9C+INGE0LDQudC70LAg0L3QtSDQsdC+0LvQtdC1IHt7IGZpbGVzU2l6ZUxpbWl0VGV4dCB9fTwvbGk+XG4gICAgICAgICAgICA8bGkgKm5nSWY9XCJmaWxlc0Zvcm0uZXJyb3JzLmV4dGVuc2lvblwiPtCS0YvQsdGA0LDQvSDRhNCw0LnQuyDQvdC10LTQvtC/0YPRgdGC0LjQvNC+0LPQviDRhNC+0YDQvNCw0YLQsDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9ldm8tbm90ZT5cblxuICAgIDx1bCBjbGFzcz1cImV2by11cGxvYWRfX2xpc3RcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBmaWxlIG9mIGZpbGVzRm9ybS5jb250cm9sczsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwiZXZvLXVwbG9hZF9fbGlzdC1pdGVtXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXVwbG9hZF9faXRlbS1pbm5lclwiPlxuICAgICAgICAgICAgICAgIDxldm8taWNvbiBzaGFwZT1cImZpbGVcIiBzdmdXaWR0aD1cIjI0XCIgc3ZnSGVpZ2h0PVwiMjRcIiBjbGFzcz1cImV2by11cGxvYWRfX2ZpbGUtaWNvblwiPjwvZXZvLWljb24+XG5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNsaWNrYWJsZUZpbGVzXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldm8tdXBsb2FkX19saW5rIGV2by1saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrRmlsZS5lbWl0KHsgZmlsZTogZmlsZS52YWx1ZSwgaW5kZXg6IGkgfSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgZmlsZS52YWx1ZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhY2xpY2thYmxlRmlsZXNcIj57eyBmaWxlLnZhbHVlLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGV2by1pY29uXG4gICAgICAgICAgICAgICAgc2hhcGU9XCJkZWNsaW5lXCJcbiAgICAgICAgICAgICAgICBzdmdXaWR0aD1cIjI0XCJcbiAgICAgICAgICAgICAgICBzdmdIZWlnaHQ9XCIyNFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldm8tdXBsb2FkX19idXR0b24tcmVtb3ZlXCJcbiAgICAgICAgICAgICAgICBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGxvYWRpbmcgfHwgaXNEaXNhYmxlZH1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVJdGVtUmVtb3ZlKGkpXCJcbiAgICAgICAgICAgID48L2V2by1pY29uPlxuXG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJldm8tdXBsb2FkX19saXN0LWRlbGltaXRlclwiXG4gICAgICAgICAgICAgICAgW2V2b1VpQ2xhc3NdPVwie2Vycm9yOiBmaWxlc0Zvcm0uY29udHJvbHNbaV0uZXJyb3JzfVwiXG4gICAgICAgICAgICAgICAgW25nU3dpdGNoXT1cImdldENvbnRyb2xFcnJvcihmaWxlc0Zvcm0uY29udHJvbHNbaV0pXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInc2l6ZSdcIj7QoNCw0LfQvNC10YAg0YTQsNC50LvQsCDQv9GA0LXQstGL0YjQsNC10YIg0LTQvtC/0YPRgdGC0LjQvNGL0Lk8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZXh0ZW5zaW9uJ1wiPtCd0LXQstC10YDQvdGL0Lkg0YTQvtGA0LzQsNGCINGE0LDQudC70LA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2xpPlxuICAgIDwvdWw+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiZmlsZXNGb3JtLmNvbnRyb2xzLmxlbmd0aFwiIGNsYXNzPVwiZXZvLXVwbG9hZF9fY29udHJvbHNcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhaGlkZUNsZWFyQnV0dG9uXCJcbiAgICAgICAgICAgIGV2b0J1dHRvblxuICAgICAgICAgICAgY29sb3I9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgdGhlbWU9XCJyb3VuZGVkLW91dGxpbmVcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVSZXNldEJ1dHRvbkNsaWNrKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICDQo9C00LDQu9C40YLRjCDQstGB0ZFcbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwiIWhpZGVTdWJtaXRCdXR0b25cIlxuICAgICAgICAgICAgZXZvQnV0dG9uXG4gICAgICAgICAgICBjb2xvcj1cInN1Y2Nlc3NcIlxuICAgICAgICAgICAgY2xhc3M9XCJldm8tdXBsb2FkX19zdWJtaXRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVzRm9ybS5pbnZhbGlkIHx8IGxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTdWJtaXRCdXR0b25DbGljaygpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAg0JfQsNCz0YDRg9C30LjRgtGMXG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
292
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXVwbG9hZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdXBsb2FkL2V2by11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXVwbG9hZC9ldm8tdXBsb2FkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBRVYsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUdILGlCQUFpQixFQUdqQixrQkFBa0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLFFBQVEsTUFBTSxvQkFBb0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDNUYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0seUNBQXlDLENBQUM7OztBQTRCNUUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGNBQWM7SUFDbEQsSUFBYSxNQUFNLENB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Q0FBQzs0QkFDakQsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0osY0FDVyxJQUFJLFdBQ1A7d0JBQ0wsbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLFlBQVk7cUJBQ2Y7OEdBR1ksTUFBTTtzQkFBbEIsS0FBSztnQkFLRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVPLGFBQWE7c0JBQXpCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBRWlCLGdCQUFnQjtzQkFBdkMsU0FBUzt1QkFBQyxXQUFXO2dCQW9OZCxpQkFBaUIsTUFTakIsc0JBQXNCLE1BWXRCLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbmplY3RvcixcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0Q29udHJvbCxcbiAgICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICBVbnR5cGVkRm9ybUFycmF5LFxuICAgIFVudHlwZWRGb3JtQnVpbGRlcixcbiAgICBVbnR5cGVkRm9ybUNvbnRyb2wsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBhdXRvYmluZCBmcm9tICdhdXRvYmluZC1kZWNvcmF0b3InO1xuaW1wb3J0IGJ5dGVzIGZyb20gJ2J5dGVzJztcbmltcG9ydCAqIGFzIG1pbWUgZnJvbSAnbWltZSc7XG5pbXBvcnQge0V2b0Jhc2VDb250cm9sfSBmcm9tICcuLi8uLi9jb21tb24vZXZvLWJhc2UtY29udHJvbCc7XG5pbXBvcnQge1NhZmVIdG1sUGlwZX0gZnJvbSAnLi4vLi4vcGlwZXMvc2FmZS1odG1sLnBpcGUnO1xuaW1wb3J0IHtEZWNsaW5hdGlvblBpcGV9IGZyb20gJy4uLy4uL3BpcGVzL2RlY2xpbmF0aW9uLnBpcGUnO1xuaW1wb3J0IHtFdm9CdXR0b25Db21wb25lbnR9IGZyb20gJy4uL2V2by1idXR0b24vY29tcG9uZW50cy9ldm8tYnV0dG9uL2V2by1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7RXZvTm90ZUNvbXBvbmVudH0gZnJvbSAnLi4vZXZvLW5vdGUvZXZvLW5vdGUuY29tcG9uZW50JztcbmltcG9ydCB7RXZvSWNvbkNvbXBvbmVudH0gZnJvbSAnLi4vZXZvLWljb24vZXZvLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7RXZvVWlDbGFzc0RpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ldm8tdWktY2xhc3MuZGlyZWN0aXZlJztcblxuZXhwb3J0IGludGVyZmFjZSBFdm9VcGxvYWRJdGVtQ2xpY2tFdmVudCB7XG4gICAgZmlsZTogRmlsZTtcbiAgICBpbmRleDogbnVtYmVyO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V2by11cGxvYWQnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by11cGxvYWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXVwbG9hZC5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRXZvVXBsb2FkQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEV2b1VpQ2xhc3NEaXJlY3RpdmUsXG4gICAgICAgIEV2b0ljb25Db21wb25lbnQsXG4gICAgICAgIEV2b05vdGVDb21wb25lbnQsXG4gICAgICAgIEV2b0J1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgRGVjbGluYXRpb25QaXBlLFxuICAgICAgICBTYWZlSHRtbFBpcGUsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVXBsb2FkQ29tcG9uZW50IGV4dGVuZHMgRXZvQmFzZUNvbnRyb2wgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJDb250ZW50SW5pdCwgT25Jbml0IHtcbiAgICBASW5wdXQoKSBzZXQgYWNjZXB0KGV4dGVuc2lvbnM6IHN0cmluZykge1xuICAgICAgICBpZiAoZXh0ZW5zaW9ucykge1xuICAgICAgICAgICAgdGhpcy5hY2NlcHRlZE1pbWVUeXBlcyA9IGV4dGVuc2lvbnMuc3BsaXQoJywnKS5tYXAoKGV4dGVuc2lvbikgPT4gbWltZS5nZXRUeXBlKGV4dGVuc2lvbikpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBJbnB1dCgpIGRyb3Bab25lTGFiZWwgPSAn0J/QtdGA0LXRgtCw0YnQuNGC0LUg0YHRjtC00LAg0YTQsNC50LvRiyDQtNC70Y8g0LfQsNCz0YDRg9C30LrQuCc7XG4gICAgQElucHV0KCkgZHJvcFpvbmVIaW50OiBzdHJpbmc7XG4gICAgQElucHV0KCkgaGlkZUNsZWFyQnV0dG9uID0gZmFsc2U7XG4gICAgQElucHV0KCkgaGlkZVN1Ym1pdEJ1dHRvbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGNsaWNrYWJsZUZpbGVzID0gZmFsc2U7XG4gICAgQElucHV0KCkgZWFybHlWYWxpZGF0aW9uID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKSBzZXQgZmlsZVNpemVMaW1pdChmaWxlU2l6ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZmlsZXNTaXplTGltaXRUZXh0ID0gZmlsZVNpemU7XG4gICAgICAgIHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzID0gYnl0ZXMoZmlsZVNpemUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIG1heEZpbGVzOiBudW1iZXI7XG4gICAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpIHN1Ym1pdCA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZUxpc3Q+KCk7XG4gICAgQE91dHB1dCgpIGFkZEZpbGVzID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlTGlzdD4oKTtcbiAgICBAT3V0cHV0KCkgcmVtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQE91dHB1dCgpIGNsaWNrRmlsZSA9IG5ldyBFdmVudEVtaXR0ZXI8RXZvVXBsb2FkSXRlbUNsaWNrRXZlbnQ+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dEZpbGUnKSBpbnB1dEZpbGVFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgaXNEaXNhYmxlZCA9IGZhbHNlO1xuICAgIGZpbGVzRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuYXJyYXkoW10sIFt0aGlzLm1heEZpbGVzVmFsaWRhdG9yXSk7XG4gICAgZmlsZXNTaXplTGltaXRUZXh0OiBzdHJpbmc7XG4gICAgZmlsZXNTaXplTGltaXRJbkJ5dGVzOiBudW1iZXI7XG4gICAgc3RhdGVzID0ge1xuICAgICAgICBpc0RyYWdPdmVyOiBmYWxzZSxcbiAgICB9O1xuICAgIGFjY2VwdGVkTWltZVR5cGVzOiBzdHJpbmdbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVPbkZvcm1DaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLm1lcmdlQ29udHJvbHNFcnJvcnMoKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZSA9ICh2YWx1ZSkgPT4ge307XG4gICAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuXG4gICAgICAgIGlmICghaXNEaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKGZpbGVMaXN0OiBGaWxlTGlzdCB8IEZpbGVbXSkge1xuICAgICAgICBpZiAoZmlsZUxpc3QgJiYgZmlsZUxpc3QubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgaWYgKGZpbGVMaXN0IGluc3RhbmNlb2YgQXJyYXkgfHwgZmlsZUxpc3QgaW5zdGFuY2VvZiBGaWxlTGlzdCkge1xuICAgICAgICAgICAgICAgIHRoaXMud2lwZVVwbG9hZExpc3QoKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5lYXJseVZhbGlkYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lYXJseVZhbGlkYXRpb25GbihmaWxlTGlzdCk7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpbGVzRm9ybS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NGaWxlcyhmaWxlTGlzdCBhcyBGaWxlTGlzdCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRocm93IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAnW0V2b1VpS2l0XTogd3JvbmcgaW5pdGlhbCB2YWx1ZSBwYXNzZWQgdG8gXCJldm8tdXBsb2FkXCIgY29tcG9uZW50LiBPbmx5IEZpbGVMaXN0IGFuZCBGaWxlW10gYXJlIGFsbG93ZWQnLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRDb250cm9sRXJyb3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCFjb250cm9sLmVycm9ycykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoY29udHJvbC5lcnJvcnMpWzBdO1xuICAgIH1cblxuICAgIGhhbmRsZURyYWdPdmVyKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICBpZiAodGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdGF0ZXMuaXNEcmFnT3ZlciA9IHRydWU7XG4gICAgfVxuXG4gICAgaGFuZGxlRHJhZ0xlYXZlKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5zdGF0ZXMuaXNEcmFnT3ZlciA9IGZhbHNlO1xuICAgIH1cblxuICAgIGhhbmRsZURyb3AoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICBjb25zdCBmaWxlcyA9IGV2ZW50LmRhdGFUcmFuc2Zlci5maWxlcztcblxuICAgICAgICB0aGlzLnN0YXRlcy5pc0RyYWdPdmVyID0gZmFsc2U7XG4gICAgICAgIGlmIChmaWxlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmVhcmx5VmFsaWRhdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZWFybHlWYWxpZGF0aW9uRm4oZmlsZXMpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpbGVzRm9ybS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuYWRkRmlsZXMuZW1pdChmaWxlcyk7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NGaWxlcyhmaWxlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoYW5kbGVJdGVtUmVtb3ZlKGluZGV4KSB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgdGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5maWxlc0Zvcm0ucmVtb3ZlQXQoaW5kZXgpO1xuICAgICAgICB0aGlzLnJlbW92ZS5lbWl0KGluZGV4KTtcbiAgICB9XG5cbiAgICBoYW5kbGVSZXNldEJ1dHRvbkNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5sb2FkaW5nIHx8IHRoaXMuaXNEaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53aXBlVXBsb2FkTGlzdCgpO1xuICAgIH1cblxuICAgIGhhbmRsZVN1Ym1pdEJ1dHRvbkNsaWNrKCkge1xuICAgICAgICB0aGlzLnN1Ym1pdC5lbWl0KHRoaXMuZmlsZXNGb3JtLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpbnB1dENoYW5nZShmaWxlczogRmlsZUxpc3QpIHtcbiAgICAgICAgaWYgKHRoaXMuZWFybHlWYWxpZGF0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmVhcmx5VmFsaWRhdGlvbkZuKGZpbGVzKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmZpbGVzRm9ybS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hZGRGaWxlcy5lbWl0KGZpbGVzKTtcbiAgICAgICAgdGhpcy5wcm9jZXNzRmlsZXMoZmlsZXMpO1xuICAgIH1cblxuICAgIGVhcmx5VmFsaWRhdGlvbkZuKGZpbGVzOiBGaWxlTGlzdCB8IEZpbGVbXSkge1xuICAgICAgICB0aGlzLmZpbGVzRm9ybS5zZXRFcnJvcnMobnVsbCk7XG4gICAgICAgIGNvbnN0IGZpbGVzQXJyYXkgPSBBcnJheS5mcm9tKGZpbGVzKTtcbiAgICAgICAgY29uc3QgZXJyb3JzID0gW107XG4gICAgICAgIGlmICh0aGlzLm1heEZpbGVzICYmIHRoaXMuaXNGaWxlc0xlbmd0aFZhbGlkKGZpbGVzQXJyYXkpKSB7XG4gICAgICAgICAgICBlcnJvcnMucHVzaCh7bWF4RmlsZXM6IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5maWxlc1NpemVMaW1pdEluQnl0ZXMgJiYgIXRoaXMuaXNGaWxlc1NpemVWYWxpZChmaWxlc0FycmF5KSkge1xuICAgICAgICAgICAgZXJyb3JzLnB1c2goe3NpemU6IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5hY2NlcHRlZE1pbWVUeXBlcyAmJiAhdGhpcy5pc0ZpbGVzRXh0ZW5zaW9uVmFsaWQoZmlsZXNBcnJheSkpIHtcbiAgICAgICAgICAgIGVycm9ycy5wdXNoKHtleHRlbnNpb246IHRydWV9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXJyb3JzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5maWxlc0Zvcm0uc2V0RXJyb3JzKE9iamVjdC5hc3NpZ24oe30sIC4uLmVycm9ycykpO1xuICAgICAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc0ZpbGVzTGVuZ3RoVmFsaWQoZmlsZXM6IEZpbGVbXSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXhGaWxlcyA8IGZpbGVzLmxlbmd0aCArIHRoaXMuZmlsZXNGb3JtLmNvbnRyb2xzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBpc0ZpbGVzU2l6ZVZhbGlkKGZpbGVzOiBGaWxlW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFmaWxlcy5zb21lKCh7c2l6ZX0pID0+IHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzIDwgc2l6ZSk7XG4gICAgfVxuXG4gICAgaXNGaWxlc0V4dGVuc2lvblZhbGlkKGZpbGVzOiBGaWxlW10pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGZpbGVzLmV2ZXJ5KCh7dHlwZX0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmFjY2VwdGVkTWltZVR5cGVzLmluY2x1ZGVzKHR5cGUpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm9jZXNzRmlsZXMoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIEFycmF5LmZyb20oZmlsZXMpLmZvckVhY2goKGZpbGU6IEZpbGUpID0+IHtcbiAgICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlOm5vLWZvci1lYWNoLXB1c2hcbiAgICAgICAgICAgIHRoaXMuZmlsZXNGb3JtLnB1c2gobmV3IFVudHlwZWRGb3JtQ29udHJvbChmaWxlLCBbdGhpcy5maWxlRXh0ZW5zaW9uVmFsaWRhdG9yLCB0aGlzLmZpbGVTaXplVmFsaWRhdG9yXSkpO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5pbnB1dEZpbGVFbGVtZW50ICYmIHRoaXMuaW5wdXRGaWxlRWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLmlucHV0RmlsZUVsZW1lbnQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgd2lwZVVwbG9hZExpc3QoKSB7XG4gICAgICAgIHdoaWxlICh0aGlzLmZpbGVzRm9ybS5jb250cm9scy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZXNGb3JtLnJlbW92ZUF0KDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtZXJnZUNvbnRyb2xzRXJyb3JzKCkge1xuICAgICAgICBpZiAoIXRoaXMuY29udHJvbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXJyb3JzID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5maWxlc0Zvcm0uZXJyb3JzKTtcbiAgICAgICAgdGhpcy5maWxlc0Zvcm0uY29udHJvbHMuZm9yRWFjaCgoY29udHJvbDogVW50eXBlZEZvcm1Db250cm9sKSA9PiB7XG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKGVycm9ycywgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb250cm9sLnNldEVycm9ycyhPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA/IGVycm9ycyA6IG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlT25Gb3JtQ2hhbmdlcygpIHtcbiAgICAgICAgdGhpcy5maWxlc0Zvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5tZXJnZUNvbnRyb2xzRXJyb3JzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBhdXRvYmluZFxuICAgIHByaXZhdGUgZmlsZVNpemVWYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICAgIGlmICghdGhpcy5maWxlc1NpemVMaW1pdEluQnl0ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRyb2wudmFsdWUuc2l6ZSA+IHRoaXMuZmlsZXNTaXplTGltaXRJbkJ5dGVzID8ge3NpemU6IHRydWV9IDogbnVsbDtcbiAgICB9XG5cbiAgICBAYXV0b2JpbmRcbiAgICBwcml2YXRlIGZpbGVFeHRlbnNpb25WYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICAgIGlmICghdGhpcy5hY2NlcHRlZE1pbWVUeXBlcykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWxlVHlwZSA9IChjb250cm9sLnZhbHVlIGFzIEZpbGUpLnR5cGU7XG4gICAgICAgIGNvbnN0IGlzRXh0ZW5zaW9uQWxsb3dlZCA9IHRoaXMuYWNjZXB0ZWRNaW1lVHlwZXMuaW5jbHVkZXMoZmlsZVR5cGUpO1xuXG4gICAgICAgIHJldHVybiBpc0V4dGVuc2lvbkFsbG93ZWQgPyBudWxsIDoge2V4dGVuc2lvbjogdHJ1ZX07XG4gICAgfVxuXG4gICAgQGF1dG9iaW5kXG4gICAgcHJpdmF0ZSBtYXhGaWxlc1ZhbGlkYXRvcihjb250cm9sOiBVbnR5cGVkRm9ybUFycmF5KSB7XG4gICAgICAgIGlmICghdGhpcy5tYXhGaWxlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvbnRyb2wuY29udHJvbHMubGVuZ3RoID4gdGhpcy5tYXhGaWxlcyA/IHttYXhGaWxlczogdHJ1ZX0gOiBudWxsO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJldm8tdXBsb2FkXCI+XG4gICAgPGxhYmVsXG4gICAgICAgIGNsYXNzPVwiZXZvLXVwbG9hZF9fd3JhcHBlclwiXG4gICAgICAgIFtldm9VaUNsYXNzXT1cIntvdmVyOiBzdGF0ZXMuaXNEcmFnT3ZlciwgZGlzYWJsZWQ6IGlzRGlzYWJsZWQgfHwgbG9hZGluZ31cIlxuICAgICAgICAoY2xpY2spPVwib25Ub3VjaGVkKClcIlxuICAgICAgICAoZHJhZ292ZXIpPVwiaGFuZGxlRHJhZ092ZXIoJGV2ZW50KVwiXG4gICAgICAgIChkcmFnbGVhdmUpPVwiaGFuZGxlRHJhZ0xlYXZlKCRldmVudClcIlxuICAgICAgICAoZHJvcCk9XCJoYW5kbGVEcm9wKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPGV2by1pY29uIHNoYXBlPVwidXBsb2FkXCIgY2xhc3M9XCJldm8tdXBsb2FkX191cGxvYWQtaWNvblwiIFtldm9VaUNsYXNzXT1cIntkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9fdGl0bGVcIiBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGlzRGlzYWJsZWQgfHwgbG9hZGluZ31cIj57eyBkcm9wWm9uZUxhYmVsIH19PC9zcGFuPlxuXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9faGludFwiIFtldm9VaUNsYXNzXT1cIntkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiPlxuICAgICAgICAgICAg0LjQu9C4XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV2by11cGxvYWRfX2Zha2UtbGlua1wiIFtldm9VaUNsYXNzXT1cIntkaXNhYmxlZDogaXNEaXNhYmxlZCB8fCBsb2FkaW5nfVwiPtC30LDQs9GA0YPQt9C40YLQtTwvc3Bhbj5cbiAgICAgICAgICAgIEBpZiAoZHJvcFpvbmVIaW50KSB7XG4gICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9fYWRkaXRpb25hbC1oaW50XCIgW2lubmVySFRNTF09XCJkcm9wWm9uZUhpbnQgfCBzYWZlSHRtbFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNpbnB1dEZpbGVcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZXZvLXVwbG9hZF9faW5wdXRcIlxuICAgICAgICAgICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICBbYXR0ci5tdWx0aXBsZV09XCJtYXhGaWxlcyA9PT0gMSA/IG51bGwgOiB0cnVlXCJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwiaW5wdXRDaGFuZ2UoJGV2ZW50LnRhcmdldC5maWxlcylcIlxuICAgICAgICAvPlxuICAgIDwvbGFiZWw+XG5cbiAgICBAaWYgKCFlYXJseVZhbGlkYXRpb24gJiYgZmlsZXNGb3JtLmVycm9ycz8ubWF4RmlsZXMpIHtcbiAgICAgICAgPGV2by1ub3RlIHR5cGU9XCJkYW5nZXJcIj5cbiAgICAgICAgICAgINCd0LXQu9GM0LfRjyDQt9Cw0LPRgNGD0LfQuNGC0Ywg0LHQvtC70LXQtSB7eyBtYXhGaWxlcyB8fCAxIHwgZGVjbGluYXRpb246IFsn0YTQsNC50LvQsCcsICfRhNCw0LnQu9C+0LInLCAn0YTQsNC50LvQvtCyJ10gfX1cbiAgICAgICAgPC9ldm8tbm90ZT5cbiAgICB9XG5cbiAgICBAaWYgKGVhcmx5VmFsaWRhdGlvbiAmJiBmaWxlc0Zvcm0uZXJyb3JzKSB7XG4gICAgICAgIDxldm8tbm90ZSB0eXBlPVwiZGFuZ2VyXCI+XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJldm8tbGlzdFwiPlxuICAgICAgICAgICAgICAgIEBpZiAoZmlsZXNGb3JtLmVycm9ycy5tYXhGaWxlcykge1xuICAgICAgICAgICAgICAgICAgICA8bGk+0J3QtdC70YzQt9GPINC30LDQs9GA0YPQt9C40YLRjCDQsdC+0LvQtdC1IHt7IG1heEZpbGVzIHx8IDEgfCBkZWNsaW5hdGlvbjogWyfRhNCw0LnQu9CwJywgJ9GE0LDQudC70L7QsicsICfRhNCw0LnQu9C+0LInXSB9fTwvbGk+XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGlmIChmaWxlc0Zvcm0uZXJyb3JzLnNpemUpIHtcbiAgICAgICAgICAgICAgICAgICAgPGxpPtCc0LDQutGB0LjQvNCw0LvRjNC90YvQuSDRgNCw0LfQvNC10YAg0L7QtNC90L7Qs9C+INGE0LDQudC70LAg0L3QtSDQsdC+0LvQtdC1IHt7IGZpbGVzU2l6ZUxpbWl0VGV4dCB9fTwvbGk+XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGlmIChmaWxlc0Zvcm0uZXJyb3JzLmV4dGVuc2lvbikge1xuICAgICAgICAgICAgICAgICAgICA8bGk+0JLRi9Cx0YDQsNC9INGE0LDQudC7INC90LXQtNC+0L/Rg9GB0YLQuNC80L7Qs9C+INGE0L7RgNC80LDRgtCwPC9saT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2V2by1ub3RlPlxuICAgIH1cblxuICAgIDx1bCBjbGFzcz1cImV2by11cGxvYWRfX2xpc3RcIj5cbiAgICAgICAgQGZvciAoZmlsZSBvZiBmaWxlc0Zvcm0uY29udHJvbHM7IHRyYWNrIGZpbGUudmFsdWUubmFtZTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImV2by11cGxvYWRfX2xpc3QtaXRlbVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdXBsb2FkX19pdGVtLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxldm8taWNvbiBzaGFwZT1cImZpbGVcIiBzdmdXaWR0aD1cIjI0XCIgc3ZnSGVpZ2h0PVwiMjRcIiBjbGFzcz1cImV2by11cGxvYWRfX2ZpbGUtaWNvblwiIC8+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoY2xpY2thYmxlRmlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXZvLXVwbG9hZF9fbGluayBldm8tbGlua1wiIChjbGljayk9XCJjbGlja0ZpbGUuZW1pdCh7ZmlsZTogZmlsZS52YWx1ZSwgaW5kZXg6IGl9KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGZpbGUudmFsdWUubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGZpbGUudmFsdWUubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxldm8taWNvblxuICAgICAgICAgICAgICAgICAgICBzaGFwZT1cImRlY2xpbmVcIlxuICAgICAgICAgICAgICAgICAgICBzdmdXaWR0aD1cIjI0XCJcbiAgICAgICAgICAgICAgICAgICAgc3ZnSGVpZ2h0PVwiMjRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV2by11cGxvYWRfX2J1dHRvbi1yZW1vdmVcIlxuICAgICAgICAgICAgICAgICAgICBbZXZvVWlDbGFzc109XCJ7ZGlzYWJsZWQ6IGxvYWRpbmcgfHwgaXNEaXNhYmxlZH1cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbVJlbW92ZShpKVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLXVwbG9hZF9fbGlzdC1kZWxpbWl0ZXJcIiBbZXZvVWlDbGFzc109XCJ7ZXJyb3I6IGZpbGVzRm9ybS5jb250cm9sc1tpXS5lcnJvcnN9XCI+XG4gICAgICAgICAgICAgICAgICAgIEBzd2l0Y2ggKGdldENvbnRyb2xFcnJvcihmaWxlc0Zvcm0uY29udHJvbHNbaV0pKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ3NpemUnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAg0KDQsNC30LzQtdGAINGE0LDQudC70LAg0L/RgNC10LLRi9GI0LDQtdGCINC00L7Qv9GD0YHRgtC40LzRi9C5XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAY2FzZSAoJ2V4dGVuc2lvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICDQndC10LLQtdGA0L3Ri9C5INGE0L7RgNC80LDRgiDRhNCw0LnQu9CwXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICA8L3VsPlxuXG4gICAgQGlmIChmaWxlc0Zvcm0uY29udHJvbHMubGVuZ3RoKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldm8tdXBsb2FkX19jb250cm9sc1wiPlxuICAgICAgICAgICAgQGlmICghaGlkZUNsZWFyQnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBldm9CdXR0b25cbiAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgICB0aGVtZT1cInJvdW5kZWQtb3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJsb2FkaW5nIHx8IGlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVJlc2V0QnV0dG9uQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICDQo9C00LDQu9C40YLRjCDQstGB0ZFcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmICghaGlkZVN1Ym1pdEJ1dHRvbikge1xuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZXZvQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yPVwic3VjY2Vzc1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXZvLXVwbG9hZF9fc3VibWl0XCJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZpbGVzRm9ybS5pbnZhbGlkIHx8IGxvYWRpbmcgfHwgaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU3VibWl0QnV0dG9uQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICDQl9Cw0LPRgNGD0LfQuNGC0YxcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
@@ -1,61 +1,16 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { EvoUploadComponent } from './evo-upload.component';
3
- import { EvoButtonModule } from '../evo-button/evo-button.module';
4
- import { CommonModule } from '@angular/common';
5
- import { EvoIconModule } from '../evo-icon/evo-icon.module';
6
- import { iconClose } from '@evotor-dev/ui-kit/icons/header';
7
- import { iconDecline, iconFile, iconUpload } from '@evotor-dev/ui-kit/icons/system';
8
- import { EvoUiKitModule } from '../../evo-ui-kit.module';
9
- import { EvoPipesModule } from '../../pipes/evo-pipes.module';
10
- import { EvoNoteModule } from '../evo-note';
11
3
  import * as i0 from "@angular/core";
12
- import * as i1 from "../evo-icon/evo-icon.module";
13
4
  export class EvoUploadModule {
14
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, declarations: [EvoUploadComponent], imports: [CommonModule,
16
- EvoNoteModule,
17
- EvoButtonModule, i1.EvoIconModule, EvoPipesModule,
18
- EvoUiKitModule], exports: [EvoUploadComponent] }); }
19
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, imports: [CommonModule,
20
- EvoNoteModule,
21
- EvoButtonModule,
22
- EvoIconModule.forRoot([
23
- {
24
- name: 'icons',
25
- shapes: {
26
- close: iconClose,
27
- decline: iconDecline,
28
- file: iconFile,
29
- upload: iconUpload,
30
- },
31
- },
32
- ]),
33
- EvoPipesModule,
34
- EvoUiKitModule] }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, imports: [EvoUploadComponent], exports: [EvoUploadComponent] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, imports: [EvoUploadComponent] }); }
35
8
  }
36
9
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoUploadModule, decorators: [{
37
10
  type: NgModule,
38
11
  args: [{
39
- imports: [
40
- CommonModule,
41
- EvoNoteModule,
42
- EvoButtonModule,
43
- EvoIconModule.forRoot([
44
- {
45
- name: 'icons',
46
- shapes: {
47
- close: iconClose,
48
- decline: iconDecline,
49
- file: iconFile,
50
- upload: iconUpload,
51
- },
52
- },
53
- ]),
54
- EvoPipesModule,
55
- EvoUiKitModule,
56
- ],
57
- declarations: [EvoUploadComponent],
12
+ imports: [EvoUploadComponent],
58
13
  exports: [EvoUploadComponent],
59
14
  }]
60
15
  }] });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXVwbG9hZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdXBsb2FkL2V2by11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQzFELE9BQU8sRUFBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGFBQWEsQ0FBQzs7O0FBd0IxQyxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO2dIQUFmLGVBQWUsaUJBSFQsa0JBQWtCLGFBakI3QixZQUFZO1lBQ1osYUFBYTtZQUNiLGVBQWUsb0JBWWYsY0FBYztZQUNkLGNBQWMsYUFHUixrQkFBa0I7Z0hBRW5CLGVBQWUsWUFwQnBCLFlBQVk7WUFDWixhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWEsQ0FBQyxPQUFPLENBQUM7Z0JBQ2xCO29CQUNJLElBQUksRUFBRSxPQUFPO29CQUNiLE1BQU0sRUFBRTt3QkFDSixLQUFLLEVBQUUsU0FBUzt3QkFDaEIsT0FBTyxFQUFFLFdBQVc7d0JBQ3BCLElBQUksRUFBRSxRQUFRO3dCQUNkLE1BQU0sRUFBRSxVQUFVO3FCQUNyQjtpQkFDSjthQUNKLENBQUM7WUFDRixjQUFjO1lBQ2QsY0FBYzs7NEZBS1QsZUFBZTtrQkF0QjNCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLGFBQWEsQ0FBQyxPQUFPLENBQUM7NEJBQ2xCO2dDQUNJLElBQUksRUFBRSxPQUFPO2dDQUNiLE1BQU0sRUFBRTtvQ0FDSixLQUFLLEVBQUUsU0FBUztvQ0FDaEIsT0FBTyxFQUFFLFdBQVc7b0NBQ3BCLElBQUksRUFBRSxRQUFRO29DQUNkLE1BQU0sRUFBRSxVQUFVO2lDQUNyQjs2QkFDSjt5QkFDSixDQUFDO3dCQUNGLGNBQWM7d0JBQ2QsY0FBYztxQkFDakI7b0JBQ0QsWUFBWSxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQ2xDLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFdm9VcGxvYWRDb21wb25lbnR9IGZyb20gJy4vZXZvLXVwbG9hZC5jb21wb25lbnQnO1xuaW1wb3J0IHtFdm9CdXR0b25Nb2R1bGV9IGZyb20gJy4uL2V2by1idXR0b24vZXZvLWJ1dHRvbi5tb2R1bGUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0V2b0ljb25Nb2R1bGV9IGZyb20gJy4uL2V2by1pY29uL2V2by1pY29uLm1vZHVsZSc7XG5pbXBvcnQge2ljb25DbG9zZX0gZnJvbSAnQGV2b3Rvci1kZXYvdWkta2l0L2ljb25zL2hlYWRlcic7XG5pbXBvcnQge2ljb25EZWNsaW5lLCBpY29uRmlsZSwgaWNvblVwbG9hZH0gZnJvbSAnQGV2b3Rvci1kZXYvdWkta2l0L2ljb25zL3N5c3RlbSc7XG5pbXBvcnQge0V2b1VpS2l0TW9kdWxlfSBmcm9tICcuLi8uLi9ldm8tdWkta2l0Lm1vZHVsZSc7XG5pbXBvcnQge0V2b1BpcGVzTW9kdWxlfSBmcm9tICcuLi8uLi9waXBlcy9ldm8tcGlwZXMubW9kdWxlJztcbmltcG9ydCB7RXZvTm90ZU1vZHVsZX0gZnJvbSAnLi4vZXZvLW5vdGUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBFdm9Ob3RlTW9kdWxlLFxuICAgICAgICBFdm9CdXR0b25Nb2R1bGUsXG4gICAgICAgIEV2b0ljb25Nb2R1bGUuZm9yUm9vdChbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2ljb25zJyxcbiAgICAgICAgICAgICAgICBzaGFwZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgY2xvc2U6IGljb25DbG9zZSxcbiAgICAgICAgICAgICAgICAgICAgZGVjbGluZTogaWNvbkRlY2xpbmUsXG4gICAgICAgICAgICAgICAgICAgIGZpbGU6IGljb25GaWxlLFxuICAgICAgICAgICAgICAgICAgICB1cGxvYWQ6IGljb25VcGxvYWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIF0pLFxuICAgICAgICBFdm9QaXBlc01vZHVsZSxcbiAgICAgICAgRXZvVWlLaXRNb2R1bGUsXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFdm9VcGxvYWRDb21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtFdm9VcGxvYWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9VcGxvYWRNb2R1bGUge31cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXVwbG9hZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tdXBsb2FkL2V2by11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBTTFELE1BQU0sT0FBTyxlQUFlOytHQUFmLGVBQWU7Z0hBQWYsZUFBZSxZQUhkLGtCQUFrQixhQUNsQixrQkFBa0I7Z0hBRW5CLGVBQWUsWUFIZCxrQkFBa0I7OzRGQUduQixlQUFlO2tCQUozQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUM3QixPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RXZvVXBsb2FkQ29tcG9uZW50fSBmcm9tICcuL2V2by11cGxvYWQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbRXZvVXBsb2FkQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRXZvVXBsb2FkQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvVXBsb2FkTW9kdWxlIHt9XG4iXX0=
@@ -1,3 +1,4 @@
1
+ /* eslint-disable */
1
2
  export function DeprecateMethod(message = '') {
2
3
  return function (target, propertyKey, descriptor) {
3
4
  const deprecatedMessage = `${target.constructor.name} method ${propertyKey} is deprecated. ${message}`;
@@ -5,4 +6,4 @@ export function DeprecateMethod(message = '') {
5
6
  return descriptor;
6
7
  };
7
8
  }
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlLW1ldGhvZC5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvZGVjb3JhdG9ycy9kZXByZWNhdGUtbWV0aG9kLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsZUFBZSxDQUFDLFVBQWtCLEVBQUU7SUFDaEQsT0FBTyxVQUFVLE1BQVcsRUFBRSxXQUFtQixFQUFFLFVBQThCO1FBQzdFLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksV0FBVyxXQUFXLG1CQUFtQixPQUFPLEVBQUUsQ0FBQztRQUV2RyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFaEMsT0FBTyxVQUFVLENBQUM7SUFDdEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBEZXByZWNhdGVNZXRob2QobWVzc2FnZTogc3RyaW5nID0gJycpOiBNZXRob2REZWNvcmF0b3Ige1xuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBhbnksIHByb3BlcnR5S2V5OiBzdHJpbmcsIGRlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvcikge1xuICAgICAgICBjb25zdCBkZXByZWNhdGVkTWVzc2FnZSA9IGAke3RhcmdldC5jb25zdHJ1Y3Rvci5uYW1lfSBtZXRob2QgJHtwcm9wZXJ0eUtleX0gaXMgZGVwcmVjYXRlZC4gJHttZXNzYWdlfWA7XG5cbiAgICAgICAgY29uc29sZS53YXJuKGRlcHJlY2F0ZWRNZXNzYWdlKTtcblxuICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgICB9O1xufVxuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlLW1ldGhvZC5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvZGVjb3JhdG9ycy9kZXByZWNhdGUtbWV0aG9kLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQkFBb0I7QUFDcEIsTUFBTSxVQUFVLGVBQWUsQ0FBQyxVQUFrQixFQUFFO0lBQ2hELE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUIsRUFBRSxVQUE4QjtRQUM3RSxNQUFNLGlCQUFpQixHQUFHLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLFdBQVcsV0FBVyxtQkFBbUIsT0FBTyxFQUFFLENBQUM7UUFFdkcsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWhDLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUMsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlcHJlY2F0ZU1ldGhvZChtZXNzYWdlOiBzdHJpbmcgPSAnJyk6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZywgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yKSB7XG4gICAgICAgIGNvbnN0IGRlcHJlY2F0ZWRNZXNzYWdlID0gYCR7dGFyZ2V0LmNvbnN0cnVjdG9yLm5hbWV9IG1ldGhvZCAke3Byb3BlcnR5S2V5fSBpcyBkZXByZWNhdGVkLiAke21lc3NhZ2V9YDtcblxuICAgICAgICBjb25zb2xlLndhcm4oZGVwcmVjYXRlZE1lc3NhZ2UpO1xuXG4gICAgICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICAgIH07XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
+ /* eslint-disable */
1
2
  export function DeprecateVariable(target, propertyKey) {
2
3
  const deprecatedMessage = `${target.constructor.name} variable ${propertyKey} is deprecated.`;
3
4
  let propertyValue;
@@ -14,4 +15,4 @@ export function DeprecateVariable(target, propertyKey) {
14
15
  set: setter,
15
16
  });
16
17
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlLXZhcmlhYmxlLmRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9kZWNvcmF0b3JzL2RlcHJlY2F0ZS12YXJpYWJsZS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE1BQVcsRUFBRSxXQUFtQjtJQUM5RCxNQUFNLGlCQUFpQixHQUFHLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLGFBQWEsV0FBVyxpQkFBaUIsQ0FBQztJQUM5RixJQUFJLGFBQWEsQ0FBQztJQUVsQixTQUFTLE1BQU07UUFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEMsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQztJQUVELFNBQVMsTUFBTSxDQUFDLEtBQVU7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLGFBQWEsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRTtRQUN2QyxHQUFHLEVBQUUsTUFBTTtRQUNYLEdBQUcsRUFBRSxNQUFNO0tBQ2QsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBEZXByZWNhdGVWYXJpYWJsZSh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZykge1xuICAgIGNvbnN0IGRlcHJlY2F0ZWRNZXNzYWdlID0gYCR7dGFyZ2V0LmNvbnN0cnVjdG9yLm5hbWV9IHZhcmlhYmxlICR7cHJvcGVydHlLZXl9IGlzIGRlcHJlY2F0ZWQuYDtcbiAgICBsZXQgcHJvcGVydHlWYWx1ZTtcblxuICAgIGZ1bmN0aW9uIGdldHRlcigpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGRlcHJlY2F0ZWRNZXNzYWdlKTtcbiAgICAgICAgcmV0dXJuIHByb3BlcnR5VmFsdWU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gc2V0dGVyKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGRlcHJlY2F0ZWRNZXNzYWdlKTtcbiAgICAgICAgcHJvcGVydHlWYWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHByb3BlcnR5S2V5LCB7XG4gICAgICAgIGdldDogZ2V0dGVyLFxuICAgICAgICBzZXQ6IHNldHRlcixcbiAgICB9KTtcbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjYXRlLXZhcmlhYmxlLmRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9kZWNvcmF0b3JzL2RlcHJlY2F0ZS12YXJpYWJsZS5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxNQUFXLEVBQUUsV0FBbUI7SUFDOUQsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxhQUFhLFdBQVcsaUJBQWlCLENBQUM7SUFDOUYsSUFBSSxhQUFhLENBQUM7SUFFbEIsU0FBUyxNQUFNO1FBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxTQUFTLE1BQU0sQ0FBQyxLQUFVO1FBQ3RCLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUU7UUFDdkMsR0FBRyxFQUFFLE1BQU07UUFDWCxHQUFHLEVBQUUsTUFBTTtLQUNkLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSAqL1xuZXhwb3J0IGZ1bmN0aW9uIERlcHJlY2F0ZVZhcmlhYmxlKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgZGVwcmVjYXRlZE1lc3NhZ2UgPSBgJHt0YXJnZXQuY29uc3RydWN0b3IubmFtZX0gdmFyaWFibGUgJHtwcm9wZXJ0eUtleX0gaXMgZGVwcmVjYXRlZC5gO1xuICAgIGxldCBwcm9wZXJ0eVZhbHVlO1xuXG4gICAgZnVuY3Rpb24gZ2V0dGVyKCkge1xuICAgICAgICBjb25zb2xlLndhcm4oZGVwcmVjYXRlZE1lc3NhZ2UpO1xuICAgICAgICByZXR1cm4gcHJvcGVydHlWYWx1ZTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBzZXR0ZXIodmFsdWU6IGFueSkge1xuICAgICAgICBjb25zb2xlLndhcm4oZGVwcmVjYXRlZE1lc3NhZ2UpO1xuICAgICAgICBwcm9wZXJ0eVZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcHJvcGVydHlLZXksIHtcbiAgICAgICAgZ2V0OiBnZXR0ZXIsXG4gICAgICAgIHNldDogc2V0dGVyLFxuICAgIH0pO1xufVxuIl19
@@ -1,4 +1,4 @@
1
- import { Directive, Output, EventEmitter, HostListener } from '@angular/core';
1
+ import { Directive, EventEmitter, HostListener, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class EvoClickOutsideDirective {
4
4
  constructor(_elementRef) {
@@ -21,12 +21,13 @@ export class EvoClickOutsideDirective {
21
21
  }
22
22
  }
23
23
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
24
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.10", type: EvoClickOutsideDirective, selector: "[evoClickOutside]", outputs: { evoClickOutside: "evoClickOutside" }, host: { listeners: { "document:click": "onClick($event,$event.target)", "document:touchstart": "onTouchStart($event,$event.target)" } }, ngImport: i0 }); }
24
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.10", type: EvoClickOutsideDirective, isStandalone: true, selector: "[evoClickOutside]", outputs: { evoClickOutside: "evoClickOutside" }, host: { listeners: { "document:click": "onClick($event,$event.target)", "document:touchstart": "onTouchStart($event,$event.target)" } }, ngImport: i0 }); }
25
25
  }
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoClickOutsideDirective, decorators: [{
27
27
  type: Directive,
28
28
  args: [{
29
29
  selector: '[evoClickOutside]',
30
+ standalone: true,
30
31
  }]
31
32
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { evoClickOutside: [{
32
33
  type: Output
@@ -37,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
37
38
  type: HostListener,
38
39
  args: ['document:touchstart', ['$event', '$event.target']]
39
40
  }] } });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWNsaWNrLW91dHNpZGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2RpcmVjdGl2ZXMvZXZvLWNsaWNrLW91dHNpZGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzFGLE1BQU0sT0FBTyx3QkFBd0I7SUFLakMsWUFBb0IsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFGcEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRzVDLENBQUM7SUFHTSxPQUFPLENBQThDLEtBQVEsRUFBRSxhQUFnQjtRQUNsRixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFHTSxZQUFZLENBQThDLEtBQVEsRUFBRSxhQUFnQjtRQUN2RixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxtQkFBbUIsQ0FBOEMsS0FBUSxFQUFFLGFBQWdCO1FBQ3ZGLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNqQixPQUFPO1FBQ1gsQ0FBQztRQUNELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQztJQUNMLENBQUM7K0dBMUJRLHdCQUF3QjttR0FBeEIsd0JBQXdCOzs0RkFBeEIsd0JBQXdCO2tCQUhwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7aUJBQ2hDOytFQUlVLGVBQWU7c0JBRHJCLE1BQU07Z0JBT0EsT0FBTztzQkFEYixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxFQUFFLGVBQWUsQ0FBQztnQkFNcEQsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxDQUFDLFFBQVEsRUFBRSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZXZvQ2xpY2tPdXRzaWRlXScsXG59KVxuZXhwb3J0IGNsYXNzIEV2b0NsaWNrT3V0c2lkZURpcmVjdGl2ZSB7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZXZvQ2xpY2tPdXRzaWRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnLCAnJGV2ZW50LnRhcmdldCddKVxuICAgIHB1YmxpYyBvbkNsaWNrPFQgZXh0ZW5kcyBNb3VzZUV2ZW50LCBGIGV4dGVuZHMgSFRNTEVsZW1lbnQ+KGV2ZW50OiBULCB0YXJnZXRFbGVtZW50OiBGKSB7XG4gICAgICAgIHRoaXMuY2xpY2tPclRvdWNoT3V0c2lkZShldmVudCwgdGFyZ2V0RWxlbWVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6dG91Y2hzdGFydCcsIFsnJGV2ZW50JywgJyRldmVudC50YXJnZXQnXSlcbiAgICBwdWJsaWMgb25Ub3VjaFN0YXJ0PFQgZXh0ZW5kcyBNb3VzZUV2ZW50LCBGIGV4dGVuZHMgSFRNTEVsZW1lbnQ+KGV2ZW50OiBULCB0YXJnZXRFbGVtZW50OiBGKSB7XG4gICAgICAgIHRoaXMuY2xpY2tPclRvdWNoT3V0c2lkZShldmVudCwgdGFyZ2V0RWxlbWVudCk7XG4gICAgfVxuXG4gICAgY2xpY2tPclRvdWNoT3V0c2lkZTxUIGV4dGVuZHMgTW91c2VFdmVudCwgRiBleHRlbmRzIEhUTUxFbGVtZW50PihldmVudDogVCwgdGFyZ2V0RWxlbWVudDogRikge1xuICAgICAgICBpZiAoIXRhcmdldEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xuICAgICAgICBpZiAoIWNsaWNrZWRJbnNpZGUpIHtcbiAgICAgICAgICAgIHRoaXMuZXZvQ2xpY2tPdXRzaWRlLmVtaXQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWNsaWNrLW91dHNpZGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2RpcmVjdGl2ZXMvZXZvLWNsaWNrLW91dHNpZGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBTXhGLE1BQU0sT0FBTyx3QkFBd0I7SUFJakMsWUFBNkIsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFGcEQsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWtCLENBQUM7SUFHeEQsT0FBTyxDQUE4QyxLQUFRLEVBQUUsYUFBZ0I7UUFDM0UsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBR0QsWUFBWSxDQUE4QyxLQUFRLEVBQUUsYUFBZ0I7UUFDaEYsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsbUJBQW1CLENBQThDLEtBQVEsRUFBRSxhQUFnQjtRQUN2RixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDakIsT0FBTztRQUNYLENBQUM7UUFDRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUM7SUFDTCxDQUFDOytHQXhCUSx3QkFBd0I7bUdBQXhCLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFKcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7K0VBR0csZUFBZTtzQkFEZCxNQUFNO2dCQU1QLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsRUFBRSxlQUFlLENBQUM7Z0JBTTNELFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxDQUFDLFFBQVEsRUFBRSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2V2b0NsaWNrT3V0c2lkZV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEV2b0NsaWNrT3V0c2lkZURpcmVjdGl2ZSB7XG4gICAgQE91dHB1dCgpXG4gICAgZXZvQ2xpY2tPdXRzaWRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnLCAnJGV2ZW50LnRhcmdldCddKVxuICAgIG9uQ2xpY2s8VCBleHRlbmRzIE1vdXNlRXZlbnQsIEYgZXh0ZW5kcyBIVE1MRWxlbWVudD4oZXZlbnQ6IFQsIHRhcmdldEVsZW1lbnQ6IEYpIHtcbiAgICAgICAgdGhpcy5jbGlja09yVG91Y2hPdXRzaWRlKGV2ZW50LCB0YXJnZXRFbGVtZW50KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDp0b3VjaHN0YXJ0JywgWyckZXZlbnQnLCAnJGV2ZW50LnRhcmdldCddKVxuICAgIG9uVG91Y2hTdGFydDxUIGV4dGVuZHMgTW91c2VFdmVudCwgRiBleHRlbmRzIEhUTUxFbGVtZW50PihldmVudDogVCwgdGFyZ2V0RWxlbWVudDogRikge1xuICAgICAgICB0aGlzLmNsaWNrT3JUb3VjaE91dHNpZGUoZXZlbnQsIHRhcmdldEVsZW1lbnQpO1xuICAgIH1cblxuICAgIGNsaWNrT3JUb3VjaE91dHNpZGU8VCBleHRlbmRzIE1vdXNlRXZlbnQsIEYgZXh0ZW5kcyBIVE1MRWxlbWVudD4oZXZlbnQ6IFQsIHRhcmdldEVsZW1lbnQ6IEYpIHtcbiAgICAgICAgaWYgKCF0YXJnZXRFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2xpY2tlZEluc2lkZSA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICAgICAgaWYgKCFjbGlja2VkSW5zaWRlKSB7XG4gICAgICAgICAgICB0aGlzLmV2b0NsaWNrT3V0c2lkZS5lbWl0KGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==