zek 15.2.1 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/README.md +1 -1
  2. package/{esm2020 → esm2022}/lib/components/args.mjs +1 -1
  3. package/esm2022/lib/components/base.component.mjs +97 -0
  4. package/esm2022/lib/components/core-ui.component.mjs +195 -0
  5. package/esm2022/lib/components/core.component.mjs +40 -0
  6. package/esm2022/lib/components/edit-base.component.mjs +237 -0
  7. package/{esm2020 → esm2022}/lib/components/index.mjs +7 -7
  8. package/esm2022/lib/components/list-base.component.mjs +254 -0
  9. package/{esm2020 → esm2022}/lib/components/types.mjs +1 -1
  10. package/{esm2020 → esm2022}/lib/models/alert-type.mjs +11 -11
  11. package/{esm2020 → esm2022}/lib/models/captcha.model.mjs +1 -1
  12. package/{esm2020 → esm2022}/lib/models/ctor.mjs +1 -1
  13. package/{esm2020 → esm2022}/lib/models/edit-base.model.mjs +2 -2
  14. package/{esm2020 → esm2022}/lib/models/file.model.mjs +19 -19
  15. package/{esm2020 → esm2022}/lib/models/filter.model.mjs +11 -11
  16. package/{esm2020 → esm2022}/lib/models/gender.model.mjs +5 -5
  17. package/{esm2020 → esm2022}/lib/models/index.mjs +17 -17
  18. package/{esm2020 → esm2022}/lib/models/key-pair.model.mjs +13 -13
  19. package/{esm2020 → esm2022}/lib/models/list-base.model.mjs +2 -2
  20. package/{esm2020 → esm2022}/lib/models/login.model.mjs +1 -1
  21. package/{esm2020 → esm2022}/lib/models/month.model.mjs +15 -15
  22. package/{esm2020 → esm2022}/lib/models/nav.model.mjs +1 -1
  23. package/{esm2020 → esm2022}/lib/models/pager.model.mjs +31 -31
  24. package/{esm2020 → esm2022}/lib/models/print.model.mjs +5 -5
  25. package/{esm2020 → esm2022}/lib/models/tree.model.mjs +3 -3
  26. package/{esm2020 → esm2022}/lib/models/valid-event-args.model.mjs +5 -5
  27. package/esm2022/lib/modules/age/age.module.mjs +23 -0
  28. package/esm2022/lib/modules/age/age.pipe.mjs +22 -0
  29. package/{esm2020 → esm2022}/lib/modules/age/index.mjs +2 -2
  30. package/esm2022/lib/modules/alert/alert/alert.mjs +55 -0
  31. package/esm2022/lib/modules/alert/alert.module.mjs +36 -0
  32. package/{esm2020 → esm2022}/lib/modules/alert/index.mjs +5 -5
  33. package/esm2022/lib/modules/alert/toast/toast.mjs +110 -0
  34. package/esm2022/lib/modules/alert/validation/validation.mjs +86 -0
  35. package/esm2022/lib/modules/autocomplete/autocomplete.directive.mjs +25 -0
  36. package/esm2022/lib/modules/autocomplete/autocomplete.module.mjs +23 -0
  37. package/{esm2020 → esm2022}/lib/modules/autocomplete/index.mjs +2 -2
  38. package/esm2022/lib/modules/bb/bb-modal-base.component.mjs +75 -0
  39. package/esm2022/lib/modules/bb/bb-modal-toolbar.mjs +45 -0
  40. package/esm2022/lib/modules/bb/bb.component.mjs +189 -0
  41. package/esm2022/lib/modules/bb/bb.module.mjs +38 -0
  42. package/{esm2020 → esm2022}/lib/modules/bb/index.mjs +4 -4
  43. package/esm2022/lib/modules/callback/callback.module.mjs +23 -0
  44. package/esm2022/lib/modules/callback/callback.pipe.mjs +23 -0
  45. package/{esm2020 → esm2022}/lib/modules/callback/index.mjs +2 -2
  46. package/esm2022/lib/modules/card/card/card.component.mjs +48 -0
  47. package/esm2022/lib/modules/card/card.module.mjs +19 -0
  48. package/{esm2020 → esm2022}/lib/modules/card/index.mjs +2 -2
  49. package/esm2022/lib/modules/date-ago/date-ago.pipe.mjs +47 -0
  50. package/esm2022/lib/modules/date-ago/date.module.mjs +23 -0
  51. package/{esm2020 → esm2022}/lib/modules/date-ago/index.mjs +2 -2
  52. package/esm2022/lib/modules/datepicker/date-value-accessor.mjs +189 -0
  53. package/esm2022/lib/modules/datepicker/datepicker.module.mjs +32 -0
  54. package/{esm2020 → esm2022}/lib/modules/datepicker/index.mjs +2 -2
  55. package/esm2022/lib/modules/edit-toolbar/edit-toolbar.component.mjs +75 -0
  56. package/esm2022/lib/modules/edit-toolbar/edit-toolbar.module.mjs +27 -0
  57. package/{esm2020 → esm2022}/lib/modules/edit-toolbar/index.mjs +2 -2
  58. package/esm2022/lib/modules/file/file-size.pipe.mjs +48 -0
  59. package/esm2022/lib/modules/file/file.module.mjs +23 -0
  60. package/{esm2020 → esm2022}/lib/modules/file/index.mjs +2 -2
  61. package/esm2022/lib/modules/file-viewer/file-viewer.mjs +52 -0
  62. package/{esm2020 → esm2022}/lib/modules/file-viewer/index.mjs +2 -2
  63. package/esm2022/lib/modules/file-viewer/module.mjs +31 -0
  64. package/esm2022/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +146 -0
  65. package/esm2022/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.mjs +15 -0
  66. package/esm2022/lib/modules/grid-toolbar/grid-toolbar.module.mjs +34 -0
  67. package/{esm2020 → esm2022}/lib/modules/grid-toolbar/index.mjs +3 -3
  68. package/{esm2020 → esm2022}/lib/modules/index.mjs +32 -32
  69. package/{esm2020 → esm2022}/lib/modules/list-toolbar/index.mjs +2 -2
  70. package/esm2022/lib/modules/list-toolbar/list-toolbar.component.mjs +110 -0
  71. package/esm2022/lib/modules/list-toolbar/list-toolbar.module.mjs +25 -0
  72. package/{esm2020 → esm2022}/lib/modules/loading/index.mjs +3 -3
  73. package/esm2022/lib/modules/loading/loading-interceptor.mjs +80 -0
  74. package/esm2022/lib/modules/loading/loading.component.mjs +36 -0
  75. package/esm2022/lib/modules/loading/loading.module.mjs +33 -0
  76. package/esm2022/lib/modules/modal/filter-modal/filter-modal.component.mjs +27 -0
  77. package/{esm2020 → esm2022}/lib/modules/modal/index.mjs +4 -4
  78. package/esm2022/lib/modules/modal/modal/modal.component.mjs +313 -0
  79. package/esm2022/lib/modules/modal/modal.module.mjs +63 -0
  80. package/esm2022/lib/modules/modal/sum-modal/sum-modal.component.mjs +28 -0
  81. package/{esm2020 → esm2022}/lib/modules/page-title/index.mjs +2 -2
  82. package/esm2022/lib/modules/page-title/page-title.component.mjs +32 -0
  83. package/esm2022/lib/modules/page-title/page-title.module.mjs +27 -0
  84. package/{esm2020 → esm2022}/lib/modules/pager/index.mjs +2 -2
  85. package/esm2022/lib/modules/pager/pager/pager.component.mjs +51 -0
  86. package/esm2022/lib/modules/pager/pager.module.mjs +27 -0
  87. package/{esm2020 → esm2022}/lib/modules/password/index.mjs +2 -2
  88. package/{esm2020 → esm2022}/lib/modules/password/password.component.mjs +48 -47
  89. package/esm2022/lib/modules/password/password.module.mjs +31 -0
  90. package/{esm2020 → esm2022}/lib/modules/progress/index.mjs +2 -2
  91. package/esm2022/lib/modules/progress/module.mjs +27 -0
  92. package/esm2022/lib/modules/progress/progress.mjs +98 -0
  93. package/{esm2020 → esm2022}/lib/modules/radio/index.mjs +2 -2
  94. package/esm2022/lib/modules/radio/radio-button.component.mjs +135 -0
  95. package/esm2022/lib/modules/radio/radio.module.mjs +23 -0
  96. package/{esm2020 → esm2022}/lib/modules/readonly/index.mjs +2 -2
  97. package/esm2022/lib/modules/readonly/readonly.directive.mjs +26 -0
  98. package/esm2022/lib/modules/readonly/readonly.module.mjs +23 -0
  99. package/{esm2020 → esm2022}/lib/modules/recaptcha/index.mjs +3 -3
  100. package/{esm2020 → esm2022}/lib/modules/recaptcha/loader.mjs +12 -12
  101. package/{esm2020 → esm2022}/lib/modules/recaptcha/recaptcha.model.mjs +1 -1
  102. package/esm2022/lib/modules/recaptcha/recaptcha.module.mjs +33 -0
  103. package/esm2022/lib/modules/recaptcha/recaptcha.service.mjs +120 -0
  104. package/{esm2020 → esm2022}/lib/modules/safe/index.mjs +2 -2
  105. package/esm2022/lib/modules/safe/safe.module.mjs +21 -0
  106. package/esm2022/lib/modules/safe/safe.pipe.mjs +38 -0
  107. package/{esm2020 → esm2022}/lib/modules/select/index.mjs +2 -2
  108. package/{esm2020 → esm2022}/lib/modules/select/model.mjs +3 -3
  109. package/esm2022/lib/modules/select/module.mjs +29 -0
  110. package/esm2022/lib/modules/select/select.mjs +199 -0
  111. package/{esm2020 → esm2022}/lib/modules/select2/index.mjs +2 -2
  112. package/esm2022/lib/modules/select2/select2.component.mjs +171 -0
  113. package/esm2022/lib/modules/select2/select2.module.mjs +29 -0
  114. package/{esm2020 → esm2022}/lib/modules/select2-multiple/index.mjs +2 -2
  115. package/esm2022/lib/modules/select2-multiple/select2-multiple.component.mjs +133 -0
  116. package/esm2022/lib/modules/select2-multiple/select2-multiple.module.mjs +29 -0
  117. package/{esm2020 → esm2022}/lib/modules/sort/index.mjs +3 -3
  118. package/esm2022/lib/modules/sort/sort-button-group/sort-button-group.component.mjs +80 -0
  119. package/esm2022/lib/modules/sort/sort.directive.mjs +118 -0
  120. package/esm2022/lib/modules/sort/sort.module.mjs +34 -0
  121. package/{esm2020 → esm2022}/lib/modules/time/index.mjs +3 -3
  122. package/esm2022/lib/modules/time/time.module.mjs +28 -0
  123. package/esm2022/lib/modules/time/time.pipe.mjs +41 -0
  124. package/esm2022/lib/modules/time/timer-service.mjs +90 -0
  125. package/{esm2020 → esm2022}/lib/modules/validator/field-validator.mjs +21 -20
  126. package/{esm2020 → esm2022}/lib/modules/validator/index.mjs +2 -2
  127. package/esm2022/lib/modules/validator/validator.module.mjs +27 -0
  128. package/esm2022/lib/modules/validators/directive.mjs +76 -0
  129. package/{esm2020 → esm2022}/lib/modules/validators/index.mjs +3 -3
  130. package/esm2022/lib/modules/validators/module.mjs +23 -0
  131. package/{esm2020 → esm2022}/lib/modules/validators/validator.mjs +71 -71
  132. package/{esm2020 → esm2022}/lib/modules/wizard/index.mjs +3 -3
  133. package/esm2022/lib/modules/wizard/wizard/wizard.component.mjs +66 -0
  134. package/esm2022/lib/modules/wizard/wizard.module.mjs +34 -0
  135. package/esm2022/lib/modules/wizard/wizard2/wizard2.component.mjs +14 -0
  136. package/esm2022/lib/services/alert.service.mjs +77 -0
  137. package/esm2022/lib/services/auth-guard.service.mjs +29 -0
  138. package/esm2022/lib/services/auth.service.mjs +204 -0
  139. package/{esm2020 → esm2022}/lib/services/base.service.mjs +7 -7
  140. package/{esm2020 → esm2022}/lib/services/crud.service.mjs +42 -42
  141. package/esm2022/lib/services/http-error-handler.service.mjs +142 -0
  142. package/{esm2020 → esm2022}/lib/services/index.mjs +6 -6
  143. package/esm2022/lib/services/web.api.mjs +127 -0
  144. package/{esm2020 → esm2022}/lib/tokens.mjs +5 -5
  145. package/{esm2020 → esm2022}/lib/utils/array-helper.mjs +113 -113
  146. package/{esm2020 → esm2022}/lib/utils/base64-helper.mjs +8 -8
  147. package/{esm2020 → esm2022}/lib/utils/bitwise-helper.mjs +13 -13
  148. package/{esm2020 → esm2022}/lib/utils/bootstrap.helper.mjs +126 -126
  149. package/{esm2020 → esm2022}/lib/utils/convert.mjs +34 -34
  150. package/{esm2020 → esm2022}/lib/utils/css-helper.mjs +40 -40
  151. package/esm2022/lib/utils/date-helper.mjs +236 -0
  152. package/{esm2020 → esm2022}/lib/utils/file.helper.mjs +25 -25
  153. package/{esm2020 → esm2022}/lib/utils/filter-helper.mjs +12 -12
  154. package/{esm2020 → esm2022}/lib/utils/handler.mjs +23 -23
  155. package/{esm2020 → esm2022}/lib/utils/html-helper.mjs +65 -65
  156. package/{esm2020 → esm2022}/lib/utils/index.mjs +22 -22
  157. package/{esm2020 → esm2022}/lib/utils/math-helper.mjs +6 -6
  158. package/{esm2020 → esm2022}/lib/utils/object-helper.mjs +63 -63
  159. package/{esm2020 → esm2022}/lib/utils/overlap-helper.mjs +72 -72
  160. package/{esm2020 → esm2022}/lib/utils/pager-helper.mjs +62 -62
  161. package/{esm2020 → esm2022}/lib/utils/random-helper.mjs +10 -10
  162. package/{esm2020 → esm2022}/lib/utils/storage-helper.mjs +27 -27
  163. package/{esm2020 → esm2022}/lib/utils/string-helper.mjs +31 -31
  164. package/{esm2020 → esm2022}/lib/utils/thenBy.mjs +40 -40
  165. package/{esm2020 → esm2022}/lib/utils/time-helper.mjs +46 -46
  166. package/{esm2020 → esm2022}/lib/utils/url-helper.mjs +25 -25
  167. package/esm2022/lib/utils/validation-helper.mjs +11 -0
  168. package/esm2022/lib/zek.module.mjs +34 -0
  169. package/{esm2020 → esm2022}/public-api.mjs +10 -10
  170. package/{esm2020 → esm2022}/zek.mjs +4 -4
  171. package/{fesm2020 → fesm2022}/zek.mjs +6415 -6415
  172. package/{fesm2020 → fesm2022}/zek.mjs.map +1 -1
  173. package/index.d.ts +5 -5
  174. package/lib/components/args.d.ts +5 -5
  175. package/lib/components/base.component.d.ts +24 -24
  176. package/lib/components/core-ui.component.d.ts +86 -86
  177. package/lib/components/core.component.d.ts +15 -15
  178. package/lib/components/edit-base.component.d.ts +59 -59
  179. package/lib/components/index.d.ts +7 -7
  180. package/lib/components/list-base.component.d.ts +61 -61
  181. package/lib/components/types.d.ts +3 -3
  182. package/lib/models/alert-type.d.ts +10 -10
  183. package/lib/models/captcha.model.d.ts +3 -3
  184. package/lib/models/ctor.d.ts +3 -3
  185. package/lib/models/edit-base.model.d.ts +5 -5
  186. package/lib/models/file.model.d.ts +14 -14
  187. package/lib/models/filter.model.d.ts +9 -9
  188. package/lib/models/gender.model.d.ts +4 -4
  189. package/lib/models/index.d.ts +16 -16
  190. package/lib/models/key-pair.model.d.ts +14 -14
  191. package/lib/models/list-base.model.d.ts +4 -4
  192. package/lib/models/login.model.d.ts +28 -28
  193. package/lib/models/month.model.d.ts +14 -14
  194. package/lib/models/nav.model.d.ts +19 -19
  195. package/lib/models/pager.model.d.ts +21 -21
  196. package/lib/models/print.model.d.ts +4 -4
  197. package/lib/models/tree.model.d.ts +8 -8
  198. package/lib/models/valid-event-args.model.d.ts +3 -3
  199. package/lib/modules/age/age.module.d.ts +8 -8
  200. package/lib/modules/age/age.pipe.d.ts +7 -7
  201. package/lib/modules/age/index.d.ts +2 -2
  202. package/lib/modules/alert/alert/alert.d.ts +16 -16
  203. package/lib/modules/alert/alert.module.d.ts +10 -10
  204. package/lib/modules/alert/index.d.ts +5 -5
  205. package/lib/modules/alert/toast/toast.d.ts +20 -20
  206. package/lib/modules/alert/validation/validation.d.ts +17 -17
  207. package/lib/modules/autocomplete/autocomplete.directive.d.ts +11 -11
  208. package/lib/modules/autocomplete/autocomplete.module.d.ts +8 -8
  209. package/lib/modules/autocomplete/index.d.ts +2 -2
  210. package/lib/modules/bb/bb-modal-base.component.d.ts +26 -26
  211. package/lib/modules/bb/bb-modal-toolbar.d.ts +16 -16
  212. package/lib/modules/bb/bb.component.d.ts +52 -52
  213. package/lib/modules/bb/bb.module.d.ts +11 -11
  214. package/lib/modules/bb/index.d.ts +4 -4
  215. package/lib/modules/callback/callback.module.d.ts +8 -8
  216. package/lib/modules/callback/callback.pipe.d.ts +7 -7
  217. package/lib/modules/callback/index.d.ts +2 -2
  218. package/lib/modules/card/card/card.component.d.ts +21 -21
  219. package/lib/modules/card/card.module.d.ts +8 -8
  220. package/lib/modules/card/index.d.ts +2 -2
  221. package/lib/modules/date-ago/date-ago.pipe.d.ts +7 -7
  222. package/lib/modules/date-ago/date.module.d.ts +8 -8
  223. package/lib/modules/date-ago/index.d.ts +2 -2
  224. package/lib/modules/datepicker/date-value-accessor.d.ts +24 -24
  225. package/lib/modules/datepicker/datepicker.module.d.ts +14 -14
  226. package/lib/modules/datepicker/index.d.ts +2 -2
  227. package/lib/modules/edit-toolbar/edit-toolbar.component.d.ts +25 -25
  228. package/lib/modules/edit-toolbar/edit-toolbar.module.d.ts +9 -9
  229. package/lib/modules/edit-toolbar/index.d.ts +2 -2
  230. package/lib/modules/file/file-size.pipe.d.ts +8 -8
  231. package/lib/modules/file/file.module.d.ts +8 -8
  232. package/lib/modules/file/index.d.ts +2 -2
  233. package/lib/modules/file-viewer/file-viewer.d.ts +10 -10
  234. package/lib/modules/file-viewer/index.d.ts +2 -2
  235. package/lib/modules/file-viewer/module.d.ts +10 -10
  236. package/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.d.ts +50 -50
  237. package/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.d.ts +6 -6
  238. package/lib/modules/grid-toolbar/grid-toolbar.module.d.ts +10 -10
  239. package/lib/modules/grid-toolbar/index.d.ts +3 -3
  240. package/lib/modules/index.d.ts +31 -31
  241. package/lib/modules/list-toolbar/index.d.ts +2 -2
  242. package/lib/modules/list-toolbar/list-toolbar.component.d.ts +41 -41
  243. package/lib/modules/list-toolbar/list-toolbar.module.d.ts +9 -9
  244. package/lib/modules/loading/index.d.ts +2 -2
  245. package/lib/modules/loading/loading-interceptor.d.ts +21 -21
  246. package/lib/modules/loading/loading.component.d.ts +13 -13
  247. package/lib/modules/loading/loading.module.d.ts +8 -8
  248. package/lib/modules/modal/filter-modal/filter-modal.component.d.ts +10 -10
  249. package/lib/modules/modal/index.d.ts +4 -4
  250. package/lib/modules/modal/modal/modal.component.d.ts +90 -90
  251. package/lib/modules/modal/modal.module.d.ts +12 -12
  252. package/lib/modules/modal/sum-modal/sum-modal.component.d.ts +8 -8
  253. package/lib/modules/page-title/index.d.ts +2 -2
  254. package/lib/modules/page-title/page-title.component.d.ts +12 -12
  255. package/lib/modules/page-title/page-title.module.d.ts +9 -9
  256. package/lib/modules/pager/index.d.ts +2 -2
  257. package/lib/modules/pager/pager/pager.component.d.ts +17 -17
  258. package/lib/modules/pager/pager.module.d.ts +9 -9
  259. package/lib/modules/password/index.d.ts +2 -2
  260. package/lib/modules/password/password.component.d.ts +18 -18
  261. package/lib/modules/password/password.module.d.ts +10 -10
  262. package/lib/modules/progress/index.d.ts +2 -2
  263. package/lib/modules/progress/module.d.ts +9 -9
  264. package/lib/modules/progress/progress.d.ts +33 -33
  265. package/lib/modules/radio/index.d.ts +2 -2
  266. package/lib/modules/radio/radio-button.component.d.ts +44 -44
  267. package/lib/modules/radio/radio.module.d.ts +8 -8
  268. package/lib/modules/readonly/index.d.ts +2 -2
  269. package/lib/modules/readonly/readonly.directive.d.ts +8 -8
  270. package/lib/modules/readonly/readonly.module.d.ts +8 -8
  271. package/lib/modules/recaptcha/index.d.ts +3 -3
  272. package/lib/modules/recaptcha/loader.d.ts +12 -12
  273. package/lib/modules/recaptcha/recaptcha.model.d.ts +109 -109
  274. package/lib/modules/recaptcha/recaptcha.module.d.ts +10 -10
  275. package/lib/modules/recaptcha/recaptcha.service.d.ts +60 -60
  276. package/lib/modules/safe/index.d.ts +2 -2
  277. package/lib/modules/safe/safe.module.d.ts +8 -8
  278. package/lib/modules/safe/safe.pipe.d.ts +16 -16
  279. package/lib/modules/select/index.d.ts +2 -2
  280. package/lib/modules/select/model.d.ts +5 -5
  281. package/lib/modules/select/module.d.ts +9 -9
  282. package/lib/modules/select/select.d.ts +42 -42
  283. package/lib/modules/select2/index.d.ts +2 -2
  284. package/lib/modules/select2/select2.component.d.ts +31 -31
  285. package/lib/modules/select2/select2.module.d.ts +9 -9
  286. package/lib/modules/select2-multiple/index.d.ts +2 -2
  287. package/lib/modules/select2-multiple/select2-multiple.component.d.ts +30 -30
  288. package/lib/modules/select2-multiple/select2-multiple.module.d.ts +9 -9
  289. package/lib/modules/sort/index.d.ts +3 -3
  290. package/lib/modules/sort/sort-button-group/sort-button-group.component.d.ts +34 -34
  291. package/lib/modules/sort/sort.directive.d.ts +34 -34
  292. package/lib/modules/sort/sort.module.d.ts +10 -10
  293. package/lib/modules/time/index.d.ts +3 -3
  294. package/lib/modules/time/time.module.d.ts +8 -8
  295. package/lib/modules/time/time.pipe.d.ts +11 -11
  296. package/lib/modules/time/timer-service.d.ts +21 -21
  297. package/lib/modules/validator/field-validator.d.ts +7 -7
  298. package/lib/modules/validator/index.d.ts +2 -2
  299. package/lib/modules/validator/validator.module.d.ts +9 -9
  300. package/lib/modules/validators/directive.d.ts +67 -67
  301. package/lib/modules/validators/index.d.ts +3 -3
  302. package/lib/modules/validators/module.d.ts +8 -8
  303. package/lib/modules/validators/validator.d.ts +33 -33
  304. package/lib/modules/wizard/index.d.ts +3 -3
  305. package/lib/modules/wizard/wizard/wizard.component.d.ts +19 -19
  306. package/lib/modules/wizard/wizard.module.d.ts +10 -10
  307. package/lib/modules/wizard/wizard2/wizard2.component.d.ts +6 -6
  308. package/lib/services/alert.service.d.ts +33 -33
  309. package/lib/services/auth-guard.service.d.ts +12 -12
  310. package/lib/services/auth.service.d.ts +30 -30
  311. package/lib/services/base.service.d.ts +8 -8
  312. package/lib/services/crud.service.d.ts +32 -32
  313. package/lib/services/http-error-handler.service.d.ts +39 -39
  314. package/lib/services/index.d.ts +6 -6
  315. package/lib/services/web.api.d.ts +31 -31
  316. package/lib/tokens.d.ts +5 -5
  317. package/lib/utils/array-helper.d.ts +14 -14
  318. package/lib/utils/base64-helper.d.ts +4 -4
  319. package/lib/utils/bitwise-helper.d.ts +4 -4
  320. package/lib/utils/bootstrap.helper.d.ts +25 -25
  321. package/lib/utils/convert.d.ts +7 -7
  322. package/lib/utils/css-helper.d.ts +5 -5
  323. package/lib/utils/date-helper.d.ts +43 -43
  324. package/lib/utils/file.helper.d.ts +3 -3
  325. package/lib/utils/filter-helper.d.ts +3 -3
  326. package/lib/utils/handler.d.ts +4 -4
  327. package/lib/utils/html-helper.d.ts +7 -7
  328. package/lib/utils/index.d.ts +22 -22
  329. package/lib/utils/math-helper.d.ts +3 -3
  330. package/lib/utils/object-helper.d.ts +13 -13
  331. package/lib/utils/overlap-helper.d.ts +22 -22
  332. package/lib/utils/pager-helper.d.ts +4 -4
  333. package/lib/utils/random-helper.d.ts +3 -3
  334. package/lib/utils/storage-helper.d.ts +4 -4
  335. package/lib/utils/string-helper.d.ts +8 -8
  336. package/lib/utils/thenBy.d.ts +4 -4
  337. package/lib/utils/time-helper.d.ts +7 -7
  338. package/lib/utils/url-helper.d.ts +5 -5
  339. package/lib/utils/validation-helper.d.ts +4 -4
  340. package/lib/zek.module.d.ts +14 -14
  341. package/package.json +7 -13
  342. package/public-api.d.ts +7 -7
  343. package/esm2020/lib/components/base.component.mjs +0 -96
  344. package/esm2020/lib/components/core-ui.component.mjs +0 -194
  345. package/esm2020/lib/components/core.component.mjs +0 -39
  346. package/esm2020/lib/components/edit-base.component.mjs +0 -234
  347. package/esm2020/lib/components/list-base.component.mjs +0 -253
  348. package/esm2020/lib/modules/age/age.module.mjs +0 -22
  349. package/esm2020/lib/modules/age/age.pipe.mjs +0 -21
  350. package/esm2020/lib/modules/alert/alert/alert.mjs +0 -54
  351. package/esm2020/lib/modules/alert/alert.module.mjs +0 -35
  352. package/esm2020/lib/modules/alert/toast/toast.mjs +0 -109
  353. package/esm2020/lib/modules/alert/validation/validation.mjs +0 -85
  354. package/esm2020/lib/modules/autocomplete/autocomplete.directive.mjs +0 -24
  355. package/esm2020/lib/modules/autocomplete/autocomplete.module.mjs +0 -22
  356. package/esm2020/lib/modules/bb/bb-modal-base.component.mjs +0 -74
  357. package/esm2020/lib/modules/bb/bb-modal-toolbar.mjs +0 -44
  358. package/esm2020/lib/modules/bb/bb.component.mjs +0 -188
  359. package/esm2020/lib/modules/bb/bb.module.mjs +0 -37
  360. package/esm2020/lib/modules/callback/callback.module.mjs +0 -22
  361. package/esm2020/lib/modules/callback/callback.pipe.mjs +0 -22
  362. package/esm2020/lib/modules/card/card/card.component.mjs +0 -47
  363. package/esm2020/lib/modules/card/card.module.mjs +0 -18
  364. package/esm2020/lib/modules/date-ago/date-ago.pipe.mjs +0 -46
  365. package/esm2020/lib/modules/date-ago/date.module.mjs +0 -22
  366. package/esm2020/lib/modules/datepicker/date-value-accessor.mjs +0 -188
  367. package/esm2020/lib/modules/datepicker/datepicker.module.mjs +0 -31
  368. package/esm2020/lib/modules/edit-toolbar/edit-toolbar.component.mjs +0 -74
  369. package/esm2020/lib/modules/edit-toolbar/edit-toolbar.module.mjs +0 -26
  370. package/esm2020/lib/modules/file/file-size.pipe.mjs +0 -47
  371. package/esm2020/lib/modules/file/file.module.mjs +0 -22
  372. package/esm2020/lib/modules/file-viewer/file-viewer.mjs +0 -51
  373. package/esm2020/lib/modules/file-viewer/module.mjs +0 -30
  374. package/esm2020/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +0 -145
  375. package/esm2020/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.mjs +0 -14
  376. package/esm2020/lib/modules/grid-toolbar/grid-toolbar.module.mjs +0 -33
  377. package/esm2020/lib/modules/list-toolbar/list-toolbar.component.mjs +0 -109
  378. package/esm2020/lib/modules/list-toolbar/list-toolbar.module.mjs +0 -24
  379. package/esm2020/lib/modules/loading/loading-interceptor.mjs +0 -79
  380. package/esm2020/lib/modules/loading/loading.component.mjs +0 -35
  381. package/esm2020/lib/modules/loading/loading.module.mjs +0 -32
  382. package/esm2020/lib/modules/modal/filter-modal/filter-modal.component.mjs +0 -26
  383. package/esm2020/lib/modules/modal/modal/modal.component.mjs +0 -307
  384. package/esm2020/lib/modules/modal/modal.module.mjs +0 -62
  385. package/esm2020/lib/modules/modal/sum-modal/sum-modal.component.mjs +0 -27
  386. package/esm2020/lib/modules/page-title/page-title.component.mjs +0 -31
  387. package/esm2020/lib/modules/page-title/page-title.module.mjs +0 -26
  388. package/esm2020/lib/modules/pager/pager/pager.component.mjs +0 -50
  389. package/esm2020/lib/modules/pager/pager.module.mjs +0 -26
  390. package/esm2020/lib/modules/password/password.module.mjs +0 -30
  391. package/esm2020/lib/modules/progress/module.mjs +0 -26
  392. package/esm2020/lib/modules/progress/progress.mjs +0 -97
  393. package/esm2020/lib/modules/radio/radio-button.component.mjs +0 -134
  394. package/esm2020/lib/modules/radio/radio.module.mjs +0 -22
  395. package/esm2020/lib/modules/readonly/readonly.directive.mjs +0 -25
  396. package/esm2020/lib/modules/readonly/readonly.module.mjs +0 -22
  397. package/esm2020/lib/modules/recaptcha/recaptcha.module.mjs +0 -32
  398. package/esm2020/lib/modules/recaptcha/recaptcha.service.mjs +0 -119
  399. package/esm2020/lib/modules/safe/safe.module.mjs +0 -20
  400. package/esm2020/lib/modules/safe/safe.pipe.mjs +0 -37
  401. package/esm2020/lib/modules/select/module.mjs +0 -28
  402. package/esm2020/lib/modules/select/select.mjs +0 -198
  403. package/esm2020/lib/modules/select2/select2.component.mjs +0 -170
  404. package/esm2020/lib/modules/select2/select2.module.mjs +0 -28
  405. package/esm2020/lib/modules/select2-multiple/select2-multiple.component.mjs +0 -132
  406. package/esm2020/lib/modules/select2-multiple/select2-multiple.module.mjs +0 -28
  407. package/esm2020/lib/modules/sort/sort-button-group/sort-button-group.component.mjs +0 -79
  408. package/esm2020/lib/modules/sort/sort.directive.mjs +0 -117
  409. package/esm2020/lib/modules/sort/sort.module.mjs +0 -33
  410. package/esm2020/lib/modules/time/time.module.mjs +0 -27
  411. package/esm2020/lib/modules/time/time.pipe.mjs +0 -40
  412. package/esm2020/lib/modules/time/timer-service.mjs +0 -89
  413. package/esm2020/lib/modules/validator/validator.module.mjs +0 -26
  414. package/esm2020/lib/modules/validators/directive.mjs +0 -75
  415. package/esm2020/lib/modules/validators/module.mjs +0 -22
  416. package/esm2020/lib/modules/wizard/wizard/wizard.component.mjs +0 -65
  417. package/esm2020/lib/modules/wizard/wizard.module.mjs +0 -33
  418. package/esm2020/lib/modules/wizard/wizard2/wizard2.component.mjs +0 -13
  419. package/esm2020/lib/services/alert.service.mjs +0 -76
  420. package/esm2020/lib/services/auth-guard.service.mjs +0 -28
  421. package/esm2020/lib/services/auth.service.mjs +0 -203
  422. package/esm2020/lib/services/http-error-handler.service.mjs +0 -141
  423. package/esm2020/lib/services/web.api.mjs +0 -126
  424. package/esm2020/lib/utils/date-helper.mjs +0 -235
  425. package/esm2020/lib/utils/validation-helper.mjs +0 -10
  426. package/esm2020/lib/zek.module.mjs +0 -33
  427. package/fesm2015/zek.mjs +0 -6693
  428. package/fesm2015/zek.mjs.map +0 -1
@@ -0,0 +1,237 @@
1
+ import { ViewChild, Directive } from '@angular/core';
2
+ import { BaseComponent } from './base.component';
3
+ import { firstValueFrom } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@ngx-translate/core";
6
+ import * as i2 from "../services/alert.service";
7
+ import * as i3 from "@angular/router";
8
+ // import { IObjectConstructor } from '../models/ctor';
9
+ // import { IService } from '../services/base.service';
10
+ // import { AlertService } from '../modules/alert/shared/alert.service';
11
+ // import { Area } from '../models/area.model';
12
+ // import { PrintType } from '../models/print.model';
13
+ // import { TranslateService } from '@ngx-translate/core';
14
+ // import { ModalComponent } from '../modules/modal/modal.component';
15
+ class EditFormComponent extends BaseComponent {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.approveModel = {};
19
+ }
20
+ // @ViewChild('submitModal', { static: false }) protected readonly submitModal?: ModalComponent;
21
+ init() {
22
+ super.init();
23
+ const idParam = this.getParam('id') || this.getQueryParam('id');
24
+ if (idParam)
25
+ this.id = +idParam;
26
+ const id2Param = this.getParam('id2') || this.getQueryParam('id2');
27
+ if (id2Param)
28
+ this.id2 = +id2Param;
29
+ }
30
+ async bindModel() {
31
+ if (this.id) {
32
+ this.model = await this.getModel();
33
+ }
34
+ else {
35
+ this.initCreate();
36
+ }
37
+ }
38
+ initCreate() {
39
+ this.model = {};
40
+ }
41
+ getModel() {
42
+ throw 'Not implemented getModel';
43
+ }
44
+ onSubmit(f) {
45
+ this.save(f);
46
+ }
47
+ async save(f) {
48
+ if (!f || f.valid) {
49
+ return await this.internalSave(true);
50
+ }
51
+ return false;
52
+ }
53
+ internalSave(navigateToReturnUrl) {
54
+ throw 'Not implemented internalSave';
55
+ }
56
+ showApproveModal() {
57
+ this.approveModel = {};
58
+ if (this.approveModal) {
59
+ this.approveModal.show();
60
+ }
61
+ else {
62
+ throw new Error('approveModal is null or undefined');
63
+ }
64
+ }
65
+ async approve() {
66
+ if (this.id) {
67
+ this.approveModel.ids = [this.id];
68
+ let approved = await this.internalApprove(this.approveModel);
69
+ if (approved) {
70
+ this.load();
71
+ }
72
+ }
73
+ }
74
+ internalApprove(approveModel) {
75
+ throw 'Not implemented internalApprove';
76
+ }
77
+ showDisapproveModal() {
78
+ this.approveModel = {};
79
+ if (this.disapproveModal) {
80
+ this.disapproveModal.show();
81
+ }
82
+ else {
83
+ throw new Error('disapproveModal is null or undefined');
84
+ }
85
+ }
86
+ async disapprove() {
87
+ if (this.id) {
88
+ this.approveModel.ids = [this.id];
89
+ let disapproved = await this.internalDisapprove(this.approveModel);
90
+ if (disapproved) {
91
+ this.load();
92
+ }
93
+ }
94
+ }
95
+ internalDisapprove(model) {
96
+ throw 'Not implemented internalDisapprove';
97
+ }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
99
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: EditFormComponent, viewQueries: [{ propertyName: "form", first: true, predicate: ["f"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
100
+ }
101
+ export { EditFormComponent };
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditFormComponent, decorators: [{
103
+ type: Directive
104
+ }], propDecorators: { form: [{
105
+ type: ViewChild,
106
+ args: ['f', { static: false }]
107
+ }], approveModal: [{
108
+ type: ViewChild,
109
+ args: ['approveModal', { static: false }]
110
+ }], disapproveModal: [{
111
+ type: ViewChild,
112
+ args: ['disapproveModal', { static: false }]
113
+ }] } });
114
+ class EditBaseComponent extends EditFormComponent {
115
+ constructor(service, translate, alert, route, router) {
116
+ super(route, router);
117
+ this.service = service;
118
+ this.translate = translate;
119
+ this.alert = alert;
120
+ }
121
+ async internalSave(navigateToReturnUrl) {
122
+ this.alert.clear();
123
+ let data = await firstValueFrom(this.service.save(this.model));
124
+ let success = false;
125
+ if (typeof data === 'number' && data > 0) {
126
+ success = true;
127
+ this.id = data;
128
+ }
129
+ else if (typeof data === 'object' && data?.success) {
130
+ success = true;
131
+ }
132
+ if (success) {
133
+ let message = await firstValueFrom(this.translate.get('Alert.SaveSuccess'));
134
+ this.alert.success(message, null, 'fas fa-save');
135
+ if (navigateToReturnUrl === true) {
136
+ this.navigateReturnUrl();
137
+ }
138
+ return true;
139
+ // if (navigateToReturnUrl) {
140
+ // this.navigateReturnUrl();
141
+ // } else if (!this.id) {//if insert
142
+ // this.router.navigate([this.router.url.substring(0, this.router.url.length - 6), id]);
143
+ // }
144
+ }
145
+ else {
146
+ let message = await firstValueFrom(this.translate.get('Alert.SaveError'));
147
+ this.alert.error(message, null, 'fas fa-save');
148
+ return false;
149
+ }
150
+ }
151
+ async internalApprove(model) {
152
+ let data = await firstValueFrom(this.service.approve(model));
153
+ if (data && data.length > 0) {
154
+ let message = await firstValueFrom(this.translate.get('Alert.Approved'));
155
+ this.alert.success(message, null, 'fas fa-save');
156
+ return true;
157
+ }
158
+ else {
159
+ let message = await firstValueFrom(this.translate.get('Alert.ApproveError'));
160
+ this.alert.error(message, null, 'fas fa-save');
161
+ return false;
162
+ }
163
+ }
164
+ async internalDisapprove(model) {
165
+ let data = await firstValueFrom(this.service.disapprove(model));
166
+ if (data && data.length > 0) {
167
+ let message = await firstValueFrom(this.translate.get('Alert.Disapproved'));
168
+ this.alert.success(message, null, 'fas fa-save');
169
+ return true;
170
+ }
171
+ else {
172
+ let message = await firstValueFrom(this.translate.get('Alert.DisapproveError'));
173
+ this.alert.error(message, null, 'fas fa-save');
174
+ return false;
175
+ }
176
+ }
177
+ async internalSubmit(model) {
178
+ let data = await firstValueFrom(this.service.approve(model));
179
+ if (data && data.length > 0) {
180
+ let message = await firstValueFrom(this.translate.get('Alert.Submitted'));
181
+ this.alert.success(message, null, 'fas fa-save');
182
+ return true;
183
+ }
184
+ else {
185
+ let message = await firstValueFrom(this.translate.get('Alert.SubmitError'));
186
+ this.alert.error(message, null, 'fas fa-save');
187
+ return false;
188
+ }
189
+ }
190
+ async getModel() {
191
+ if (this.id2)
192
+ return await firstValueFrom(this.service.get2(this.id, this.id2));
193
+ else
194
+ return await firstValueFrom(this.service.get(this.id));
195
+ }
196
+ initCreate() {
197
+ this.model = {};
198
+ }
199
+ print(printType) {
200
+ super.print(this.id, printType);
201
+ }
202
+ async restore() {
203
+ let data = await firstValueFrom(this.service.restore(this.id));
204
+ if (data?.success) {
205
+ let message = await firstValueFrom(this.translate.get('Alert.Restored'));
206
+ this.alert.success(message);
207
+ this.load();
208
+ }
209
+ }
210
+ export(fileTypeId) {
211
+ this.service.export({ id: this.id }, fileTypeId).subscribe(data => {
212
+ this.downloadFile(data, 'export.xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
213
+ });
214
+ }
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
216
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: EditBaseComponent, usesInheritance: true, ngImport: i0 }); }
217
+ }
218
+ export { EditBaseComponent };
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditBaseComponent, decorators: [{
220
+ type: Directive
221
+ }], ctorParameters: function () { return [{ type: undefined }, { type: i1.TranslateService }, { type: i2.AlertService }, { type: i3.ActivatedRoute }, { type: i3.Router }]; } });
222
+ class EditComponent extends EditBaseComponent {
223
+ constructor(ctorModel, service, translate, alert, route, router) {
224
+ super(service, translate, alert, route, router);
225
+ this.ctorModel = ctorModel;
226
+ }
227
+ initCreate() {
228
+ this.model = new this.ctorModel();
229
+ }
230
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
231
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: EditComponent, usesInheritance: true, ngImport: i0 }); }
232
+ }
233
+ export { EditComponent };
234
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: EditComponent, decorators: [{
235
+ type: Directive
236
+ }], ctorParameters: function () { return [{ type: undefined }, { type: undefined }, { type: i1.TranslateService }, { type: i2.AlertService }, { type: i3.ActivatedRoute }, { type: i3.Router }]; } });
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL2NvbXBvbmVudHMvZWRpdC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFNakQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFDdEMsdURBQXVEO0FBQ3ZELHVEQUF1RDtBQUN2RCx3RUFBd0U7QUFDeEUsK0NBQStDO0FBQy9DLHFEQUFxRDtBQUNyRCwwREFBMEQ7QUFDMUQscUVBQXFFO0FBRXJFLE1BQ2EsaUJBQWdDLFNBQVEsYUFBcUI7SUFEMUU7O1FBUUksaUJBQVksR0FBeUMsRUFBRSxDQUFDO0tBMkYzRDtJQXhGRyxnR0FBZ0c7SUFFdkYsSUFBSTtRQUNULEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNiLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRSxJQUFJLE9BQU87WUFDUCxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDO1FBRXZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRSxJQUFJLFFBQVE7WUFDUixJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFFUSxLQUFLLENBQUMsU0FBUztRQUNwQixJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDVCxJQUFJLENBQUMsS0FBSyxHQUFH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RUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsbUVBQW1FLENBQUMsQ0FBQztRQUNoSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBL0dRLGlCQUFpQjtrR0FBakIsaUJBQWlCOztTQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsU0FBUzs7QUFtSFYsTUFDYSxhQUFzQixTQUFRLGlCQUF5QjtJQUVoRSxZQUNxQixTQUFxQyxFQUN0RCxPQUFpQixFQUNqQixTQUEyQixFQUMzQixLQUFtQixFQUNuQixLQUFxQixFQUNyQixNQUFjO1FBQ2QsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztRQU4vQixjQUFTLEdBQVQsU0FBUyxDQUE0QjtJQU8xRCxDQUFDO0lBRWtCLFVBQVU7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN0QyxDQUFDOzhHQWRRLGFBQWE7a0dBQWIsYUFBYTs7U0FBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWaWV3Q2hpbGQsIERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJT2JqZWN0Q29uc3RydWN0b3IsIFByaW50VHlwZSB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFpla01vZGFsIH0gZnJvbSAnLi4vbW9kdWxlcy9tb2RhbC9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBJU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuLy8gaW1wb3J0IHsgSU9iamVjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi4vbW9kZWxzL2N0b3InO1xyXG4vLyBpbXBvcnQgeyBJU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Jhc2Uuc2VydmljZSc7XHJcbi8vIGltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uL21vZHVsZXMvYWxlcnQvc2hhcmVkL2FsZXJ0LnNlcnZpY2UnO1xyXG4vLyBpbXBvcnQgeyBBcmVhIH0gZnJvbSAnLi4vbW9kZWxzL2FyZWEubW9kZWwnO1xyXG4vLyBpbXBvcnQgeyBQcmludFR5cGUgfSBmcm9tICcuLi9tb2RlbHMvcHJpbnQubW9kZWwnO1xyXG4vLyBpbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbi8vIGltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kdWxlcy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBFZGl0Rm9ybUNvbXBvbmVudDxUTW9kZWwgPSBhbnk+IGV4dGVuZHMgQmFzZUNvbXBvbmVudDxUTW9kZWw+IHtcclxuICAgIGlkPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGlkMj86IG51bWJlciB8IG51bGw7XHJcbiAgICAvLyAgIGFyZWEgPSBBcmVhO1xyXG4gICAgQFZpZXdDaGlsZCgnZicsIHsgc3RhdGljOiBmYWxzZSB9KSBmb3JtPzogTmdGb3JtO1xyXG5cclxuXHJcbiAgICBhcHByb3ZlTW9kZWw6IHsgaWRzPzogbnVtYmVyW10sIGNvbW1lbnQ/OiBzdHJpbmcgfSA9IHt9O1xyXG4gICAgQFZpZXdDaGlsZCgnYXBwcm92ZU1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByb3RlY3RlZCByZWFkb25seSBhcHByb3ZlTW9kYWw/OiBaZWtNb2RhbDtcclxuICAgIEBWaWV3Q2hpbGQoJ2Rpc2FwcHJvdmVNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlzYXBwcm92ZU1vZGFsPzogWmVrTW9kYWw7XHJcbiAgICAvLyBAVmlld0NoaWxkKCdzdWJtaXRNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm90ZWN0ZWQgcmVhZG9ubHkgc3VibWl0TW9kYWw/OiBNb2RhbENvbXBvbmVudDtcclxuXHJcbiAgICBvdmVycmlkZSBpbml0KCkge1xyXG4gICAgICAgIHN1cGVyLmluaXQoKTtcclxuICAgICAgICBjb25zdCBpZFBhcmFtID0gdGhpcy5nZXRQYXJhbSgnaWQnKSB8fCB0aGlzLmdldFF1ZXJ5UGFyYW0oJ2lkJyk7XHJcbiAgICAgICAgaWYgKGlkUGFyYW0pXHJcbiAgICAgICAgICAgIHRoaXMuaWQgPSAraWRQYXJhbTtcclxuXHJcbiAgICAgICAgY29uc3QgaWQyUGFyYW0gPSB0aGlzLmdldFBhcmFtKCdpZDInKSB8fCB0aGlzLmdldFF1ZXJ5UGFyYW0oJ2lkMicpO1xyXG4gICAgICAgIGlmIChpZDJQYXJhbSlcclxuICAgICAgICAgICAgdGhpcy5pZDIgPSAraWQyUGFyYW07XHJcbiAgICB9XHJcblxyXG4gICAgb3ZlcnJpZGUgYXN5bmMgYmluZE1vZGVsKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMubW9kZWwgPSBhd2FpdCB0aGlzLmdldE1vZGVsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmluaXRDcmVhdGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGluaXRDcmVhdGUoKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IHt9IGFzIFRNb2RlbDtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICB0aHJvdyAnTm90IGltcGxlbWVudGVkIGdldE1vZGVsJztcclxuICAgIH1cclxuXHJcbiAgICBvblN1Ym1pdChmOiBOZ0Zvcm0pIHtcclxuICAgICAgICB0aGlzLnNhdmUoZik7XHJcbiAgICB9XHJcbiAgICBhc3luYyBzYXZlKGY/OiBOZ0Zvcm0pIHtcclxuICAgICAgICBpZiAoIWYgfHwgZi52YWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5pbnRlcm5hbFNhdmUodHJ1ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgaW50ZXJuYWxTYXZlKG5hdmlnYXRlVG9SZXR1cm5Vcmw/OiBib29sZWFuKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgdGhyb3cgJ05vdCBpbXBsZW1lbnRlZCBpbnRlcm5hbFNhdmUnO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBzaG93QXBwcm92ZU1vZGFsKCkge1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGVsID0ge307XHJcbiAgICAgICAgaWYgKHRoaXMuYXBwcm92ZU1vZGFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3coKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYXBwcm92ZU1vZGFsIGlzIG51bGwgb3IgdW5kZWZpbmVkJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXN5bmMgYXBwcm92ZSgpIHtcclxuICAgICAgICBpZiAodGhpcy5pZCkge1xyXG4gICAgICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbC5pZHMgPSBbdGhpcy5pZF07XHJcbiAgICAgICAgICAgIGxldCBhcHByb3ZlZCA9IGF3YWl0IHRoaXMuaW50ZXJuYWxBcHByb3ZlKHRoaXMuYXBwcm92ZU1vZGVsKTtcclxuICAgICAgICAgICAgaWYgKGFwcHJvdmVkKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBpbnRlcm5hbEFwcHJvdmUoYXBwcm92ZU1vZGVsPzogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgdGhyb3cgJ05vdCBpbXBsZW1lbnRlZCBpbnRlcm5hbEFwcHJvdmUnO1xyXG4gICAgfVxyXG5cclxuICAgIHNob3dEaXNhcHByb3ZlTW9kYWwoKSB7XHJcbiAgICAgICAgdGhpcy5hcHByb3ZlTW9kZWwgPSB7fTtcclxuICAgICAgICBpZiAodGhpcy5kaXNhcHByb3ZlTW9kYWwpIHtcclxuICAgICAgICAgICAgdGhpcy5kaXNhcHByb3ZlTW9kYWwuc2hvdygpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdkaXNhcHByb3ZlTW9kYWwgaXMgbnVsbCBvciB1bmRlZmluZWQnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhc3luYyBkaXNhcHByb3ZlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmlkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXBwcm92ZU1vZGVsLmlkcyA9IFt0aGlzLmlkXTtcclxuICAgICAgICAgICAgbGV0IGRpc2FwcHJvdmVkID0gYXdhaXQgdGhpcy5pbnRlcm5hbERpc2FwcHJvdmUodGhpcy5hcHByb3ZlTW9kZWwpO1xyXG4gICAgICAgICAgICBpZiAoZGlzYXBwcm92ZWQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJvdGVjdGVkIGludGVybmFsRGlzYXBwcm92ZShtb2RlbD86IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIHRocm93ICdOb3QgaW1wbGVtZW50ZWQgaW50ZXJuYWxEaXNhcHByb3ZlJztcclxuICAgIH1cclxufVxyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBFZGl0QmFzZUNvbXBvbmVudDxUTW9kZWwgPSBhbnk+IGV4dGVuZHMgRWRpdEZvcm1Db21wb25lbnQ8VE1vZGVsPiB7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcmVhZG9ubHkgc2VydmljZTogSVNlcnZpY2UsXHJcbiAgICAgICAgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IGFsZXJ0OiBBbGVydFNlcnZpY2UsXHJcbiAgICAgICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgICAgIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICAgICAgc3VwZXIocm91dGUsIHJvdXRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGludGVybmFsU2F2ZShuYXZpZ2F0ZVRvUmV0dXJuVXJsPzogYm9vbGVhbiB8IG51bGwpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICB0aGlzLmFsZXJ0LmNsZWFyKCk7XHJcbiAgICAgICAgbGV0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2Uuc2F2ZSh0aGlzLm1vZGVsKSk7XHJcbiAgICAgICAgbGV0IHN1Y2Nlc3MgPSBmYWxzZTtcclxuICAgICAgICBpZiAodHlwZW9mIGRhdGEgPT09ICdudW1iZXInICYmIGRhdGEgPiAwKSB7XHJcbiAgICAgICAgICAgIHN1Y2Nlc3MgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLmlkID0gZGF0YTtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkYXRhID09PSAnb2JqZWN0JyAmJiBkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHN1Y2Nlc3MgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LlNhdmVTdWNjZXNzJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LnN1Y2Nlc3MobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcblxyXG4gICAgICAgICAgICBpZiAobmF2aWdhdGVUb1JldHVyblVybCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZVJldHVyblVybCgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgLy8gaWYgKG5hdmlnYXRlVG9SZXR1cm5VcmwpIHtcclxuICAgICAgICAgICAgLy8gICB0aGlzLm5hdmlnYXRlUmV0dXJuVXJsKCk7XHJcbiAgICAgICAgICAgIC8vIH0gZWxzZSBpZiAoIXRoaXMuaWQpIHsvL2lmIGluc2VydFxyXG4gICAgICAgICAgICAvLyAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnJvdXRlci51cmwuc3Vic3RyaW5nKDAsIHRoaXMucm91dGVyLnVybC5sZW5ndGggLSA2KSwgaWRdKTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5TYXZlRXJyb3InKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGludGVybmFsQXBwcm92ZShtb2RlbD86IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGxldCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmFwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoZGF0YSAmJiBkYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkFwcHJvdmVkJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LnN1Y2Nlc3MobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5BcHByb3ZlRXJyb3InKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGludGVybmFsRGlzYXBwcm92ZShtb2RlbD86IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgICAgIGxldCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmRpc2FwcHJvdmUobW9kZWwpKTtcclxuICAgICAgICBpZiAoZGF0YSAmJiBkYXRhLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRpc2FwcHJvdmVkJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LnN1Y2Nlc3MobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5EaXNhcHByb3ZlRXJyb3InKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGFzeW5jIGludGVybmFsU3VibWl0KG1vZGVsPzogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICAgICAgbGV0IGRhdGEgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuYXBwcm92ZShtb2RlbCkpO1xyXG4gICAgICAgIGlmIChkYXRhICYmIGRhdGEubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCgnQWxlcnQuU3VibWl0dGVkJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LnN1Y2Nlc3MobWVzc2FnZSwgbnVsbCwgJ2ZhcyBmYS1zYXZlJyk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5TdWJtaXRFcnJvcicpKTtcclxuICAgICAgICAgICAgdGhpcy5hbGVydC5lcnJvcihtZXNzYWdlLCBudWxsLCAnZmFzIGZhLXNhdmUnKTtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG5cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgZ2V0TW9kZWwoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaWQyKVxyXG4gICAgICAgICAgICByZXR1cm4gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmdldDIodGhpcy5pZCwgdGhpcy5pZDIpKTtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHJldHVybiBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0KHRoaXMuaWQpKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBpbml0Q3JlYXRlKCkge1xyXG4gICAgICAgIHRoaXMubW9kZWwgPSB7fSBhcyBUTW9kZWw7XHJcbiAgICB9XHJcblxyXG4gICAgb3ZlcnJpZGUgcHJpbnQocHJpbnRUeXBlPzogUHJpbnRUeXBlKSB7XHJcbiAgICAgICAgc3VwZXIucHJpbnQodGhpcy5pZCwgcHJpbnRUeXBlKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyByZXN0b3JlKCkge1xyXG4gICAgICAgIGxldCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLnJlc3RvcmUodGhpcy5pZCkpXHJcbiAgICAgICAgaWYgKGRhdGE/LnN1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LlJlc3RvcmVkJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LnN1Y2Nlc3MobWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGV4cG9ydChmaWxlVHlwZUlkOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNlcnZpY2UuZXhwb3J0KHsgaWQ6IHRoaXMuaWQgfSwgZmlsZVR5cGVJZCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmRvd25sb2FkRmlsZShkYXRhLCAnZXhwb3J0Lnhsc3gnLCAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQnKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBFZGl0Q29tcG9uZW50PFRNb2RlbD4gZXh0ZW5kcyBFZGl0QmFzZUNvbXBvbmVudDxUTW9kZWw+IHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGN0b3JNb2RlbDogSU9iamVjdENvbnN0cnVjdG9yPFRNb2RlbD4sXHJcbiAgICAgICAgc2VydmljZTogSVNlcnZpY2UsXHJcbiAgICAgICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgICAgIGFsZXJ0OiBBbGVydFNlcnZpY2UsXHJcbiAgICAgICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgICAgIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICAgICAgc3VwZXIoc2VydmljZSwgdHJhbnNsYXRlLCBhbGVydCwgcm91dGUsIHJvdXRlcik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGluaXRDcmVhdGUoKSB7XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IG5ldyB0aGlzLmN0b3JNb2RlbCgpO1xyXG4gICAgfVxyXG59Il19
@@ -1,8 +1,8 @@
1
- export * from './args';
2
- export * from './base.component';
3
- export * from './core-ui.component';
4
- export * from './core.component';
5
- export * from './edit-base.component';
6
- export * from './list-base.component';
7
- export * from './types';
1
+ export * from './args';
2
+ export * from './base.component';
3
+ export * from './core-ui.component';
4
+ export * from './core.component';
5
+ export * from './edit-base.component';
6
+ export * from './list-base.component';
7
+ export * from './types';
8
8
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXJncyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvcmUtdWkuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jb3JlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZWRpdC1iYXNlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGlzdC1iYXNlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnOyJdfQ==
@@ -0,0 +1,254 @@
1
+ import { ViewChild, Directive } from '@angular/core';
2
+ import { BaseComponent } from './base.component';
3
+ import { FilterBase, Pager } from '../models';
4
+ import { FilterHelper, PagerHelper, StorageHelper, StringHelper, UrlHelper } from '../utils';
5
+ import { firstValueFrom } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@ngx-translate/core";
8
+ import * as i2 from "../services/alert.service";
9
+ import * as i3 from "@angular/router";
10
+ // declare let bootstrap: any;
11
+ class ListBaseComponent extends BaseComponent {
12
+ constructor(service, translate, alert, route, router) {
13
+ super(route, router);
14
+ this.service = service;
15
+ this.translate = translate;
16
+ this.alert = alert;
17
+ this.filter = new FilterBase();
18
+ this.saveFilter = true;
19
+ this.internalFilter = new FilterBase();
20
+ this.isFiltered = false;
21
+ this.selectedIds = [];
22
+ this.pager = new Pager();
23
+ this.approveModel = {};
24
+ }
25
+ init() {
26
+ super.init();
27
+ this.reset();
28
+ this.initDefaultFilter();
29
+ this.initStoredFilter();
30
+ this.assignFilter();
31
+ //this.selectedIds = [];
32
+ //this.pagedList = new PagedList();
33
+ }
34
+ async bindModel() {
35
+ this.selectedIds = [];
36
+ this.model = await firstValueFrom(this.service.getAll(this.internalFilter));
37
+ if (this.model)
38
+ this.pager = PagerHelper.get(this.model.pager ? this.model.pager.totalItemCount : 0, this.internalFilter.page, this.internalFilter.pageSize);
39
+ else
40
+ this.pager = new Pager();
41
+ //this.pagedList.pager = this.pager;
42
+ }
43
+ initDefaultFilter() {
44
+ }
45
+ initStoredFilter() {
46
+ let filterParam = this.getQueryParam('filter') || this.getParam('filter');
47
+ if (filterParam) {
48
+ const tmp = StorageHelper.get('filter');
49
+ if (tmp && tmp.url && tmp.url === this.url && tmp.filter) {
50
+ this.filter = Object.assign({}, tmp.filter);
51
+ //we dont need this.assignFilter(); because after initStoredFilter(); will be assigned.
52
+ }
53
+ else {
54
+ localStorage.removeItem('filter');
55
+ }
56
+ }
57
+ else {
58
+ localStorage.removeItem('filter');
59
+ }
60
+ }
61
+ changePage(page) {
62
+ this.internalFilter.page = page;
63
+ this.filter.page = page;
64
+ this.refresh();
65
+ this.autoSaveFilter();
66
+ }
67
+ changePageSize(pageSize) {
68
+ this.internalFilter.pageSize = pageSize;
69
+ this.filter.pageSize = pageSize;
70
+ this.changePage(1);
71
+ }
72
+ showFilter() {
73
+ this.filterModal?.show();
74
+ }
75
+ search() {
76
+ //this.filterModal?.hide();
77
+ this.assignFilter();
78
+ this.changePage(1);
79
+ //this.internalAutoSaveFilter();
80
+ }
81
+ assignFilter() {
82
+ this.internalFilter = Object.assign({}, this.filter);
83
+ this.isFiltered = !FilterHelper.isEmpty(this.internalFilter);
84
+ }
85
+ autoSaveFilter() {
86
+ if (this.saveFilter)
87
+ this.internalSaveFilter();
88
+ }
89
+ internalSaveFilter() {
90
+ StorageHelper.set('filter', {
91
+ url: this.url,
92
+ filter: this.internalFilter
93
+ });
94
+ }
95
+ reset() {
96
+ this.filter = { page: 1, pageSize: 25 };
97
+ this.assignFilter();
98
+ }
99
+ refresh() {
100
+ this.bindModel();
101
+ }
102
+ create() {
103
+ const url = UrlHelper.getNoParam(this.router.url);
104
+ // this.router.navigate([url, 'create', { returnUrl: url + ';filter=1' }]);
105
+ this.router.navigate([url, 'create'], { queryParams: { returnUrl: url + '?filter=1' } });
106
+ }
107
+ async delete(id) {
108
+ this.alert.clear();
109
+ let data = await firstValueFrom(this.service.delete(id));
110
+ if (data?.success) {
111
+ let message = await firstValueFrom(this.translate.get('Alert.Deleted'));
112
+ this.alert.error(message, null, 'fas fa-trash');
113
+ this.refresh();
114
+ }
115
+ }
116
+ async delete2(id, id2) {
117
+ this.alert.clear();
118
+ let data = await firstValueFrom(this.service.delete2(id, id2));
119
+ if (data?.success) {
120
+ let message = await firstValueFrom(this.translate.get('Alert.Deleted'));
121
+ this.alert.error(message, null, 'fas fa-trash');
122
+ this.refresh();
123
+ }
124
+ }
125
+ edit(id) {
126
+ // this.router.navigate([this.url, id],
127
+ // { queryParams: { returnUrl: this.url + ';filter=1' } }
128
+ // );
129
+ this.router.navigate([this.url, id], { queryParams: { returnUrl: this.url + '?filter=1' } });
130
+ }
131
+ edit2(id, id2) {
132
+ // this.router.navigate([this.url, id, id2, { returnUrl: this.url + ';filter=1' }]);
133
+ this.router.navigate([this.url, id, id2], { queryParams: { returnUrl: this.url + '?filter=1' } });
134
+ }
135
+ select(item) {
136
+ item.selected = !item.selected;
137
+ let id = item.id;
138
+ if (id) {
139
+ if (item.selected) {
140
+ this.selectedIds.push(id);
141
+ }
142
+ else {
143
+ this.selectedIds = this.selectedIds.filter(item => item !== id);
144
+ }
145
+ }
146
+ }
147
+ showApproveModal(id) {
148
+ if (!id || !this.approveModal)
149
+ return;
150
+ let tmp = { ids: [id] };
151
+ this.approveModel = {};
152
+ this.approveModal.show(tmp);
153
+ }
154
+ showApproveSelectedModal() {
155
+ let tmp = { ids: this.getSelectedIds() };
156
+ if (!tmp.ids || tmp.ids.length === 0 || !this.approveModal)
157
+ return;
158
+ this.approveModel = {};
159
+ this.approveModal.show(tmp);
160
+ }
161
+ async approve(m) {
162
+ if (!m)
163
+ return;
164
+ this.alert.clear();
165
+ let data = await firstValueFrom(this.service.approve(m));
166
+ if (!data || data.length === 0)
167
+ return;
168
+ let message = await firstValueFrom(this.translate.get('Alert.Approved'));
169
+ this.alert.success(message, undefined, 'fas fa-thumbs-up');
170
+ this.refresh();
171
+ }
172
+ showDisapproveModal(id) {
173
+ if (!id || !this.disapproveModal)
174
+ return;
175
+ let tmp = { ids: [id] };
176
+ this.approveModel = {};
177
+ this.disapproveModal.show(tmp);
178
+ }
179
+ showDisapproveSelectedModal() {
180
+ let tmp = { ids: this.getSelectedIds() };
181
+ if (!tmp.ids || tmp.ids.length === 0 || !this.disapproveModal)
182
+ return;
183
+ this.approveModel = {};
184
+ this.disapproveModal.show(tmp);
185
+ }
186
+ async disapprove(m) {
187
+ if (!m || !this.approveModel)
188
+ return;
189
+ if (typeof m === 'object') {
190
+ m.comment = StringHelper.tryTrim(this.approveModel.comment);
191
+ if (!m.comment)
192
+ delete m.comment;
193
+ }
194
+ this.alert.clear();
195
+ let data = await firstValueFrom(this.service.disapprove(m));
196
+ if (!data || data.length === 0)
197
+ return;
198
+ let message = await firstValueFrom(this.translate.get('Alert.Disapproved'));
199
+ this.alert.success(message, undefined, 'fas fa-thumbs-down');
200
+ this.refresh();
201
+ }
202
+ getSelectedIds() {
203
+ return this.selectedIds;
204
+ // if (!this.pagedList || !this.pagedList.data) return [];
205
+ // let ids = [];
206
+ // for (const item of this.pagedList.data) {
207
+ // if (!item.selected || !item.id) continue;
208
+ // ids.push(item.id);
209
+ // }
210
+ // return ids;
211
+ }
212
+ showSum() { }
213
+ async sum() {
214
+ this.sumModel = null;
215
+ let data = await firstValueFrom(this.service.sum(this.internalFilter));
216
+ if (data) {
217
+ this.sumModel = data;
218
+ this.showSum();
219
+ }
220
+ else {
221
+ let message = await firstValueFrom(this.translate.get('Alert.SumError'));
222
+ this.alert.error(message);
223
+ }
224
+ }
225
+ export(fileTypeId) {
226
+ this.service.export(this.internalFilter, fileTypeId).subscribe(data => {
227
+ this.downloadFile(data, 'export.xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
228
+ });
229
+ }
230
+ print(printType) {
231
+ if (!this.model || !this.model.data)
232
+ return;
233
+ let ids = this.getSelectedIds();
234
+ for (const id of ids) {
235
+ super.print(id, printType);
236
+ }
237
+ }
238
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ListBaseComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
239
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: ListBaseComponent, viewQueries: [{ propertyName: "filterModal", first: true, predicate: ["filterModal"], descendants: true }, { propertyName: "approveModal", first: true, predicate: ["approveModal"], descendants: true }, { propertyName: "disapproveModal", first: true, predicate: ["disapproveModal"], descendants: true }], usesInheritance: true, ngImport: i0 }); }
240
+ }
241
+ export { ListBaseComponent };
242
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ListBaseComponent, decorators: [{
243
+ type: Directive
244
+ }], ctorParameters: function () { return [{ type: undefined }, { type: i1.TranslateService }, { type: i2.AlertService }, { type: i3.ActivatedRoute }, { type: i3.Router }]; }, propDecorators: { filterModal: [{
245
+ type: ViewChild,
246
+ args: ['filterModal', { static: false }]
247
+ }], approveModal: [{
248
+ type: ViewChild,
249
+ args: ['approveModal', { static: false }]
250
+ }], disapproveModal: [{
251
+ type: ViewChild,
252
+ args: ['disapproveModal', { static: false }]
253
+ }] } });
254
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL2NvbXBvbmVudHMvbGlzdC1iYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBYSxLQUFLLEVBQWEsTUFBTSxXQUFXLENBQUM7QUFHcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDN0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFDdEMsOEJBQThCO0FBRzlCLE1BQ2EsaUJBQXdELFNBQVEsYUFBd0I7SUFnQmpHLFlBQ3VCLE9BQWlCLEVBQzNCLFNBQTJCLEVBQzNCLEtBQW1CLEVBQzVCLEtBQXFCLEVBQ3JCLE1BQWM7UUFDZCxLQUFLLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBTEYsWUFBTyxHQUFQLE9BQU8sQ0FBVTtRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQixVQUFLLEdBQUwsS0FBSyxDQUFjO1FBbEJoQyxXQUFNLEdBQVEsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUMvQixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBRVIsbUJBQWMsR0FBUSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2pELGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsZ0JBQVcsR0FBVSxFQUFFLENBQUM7UUFDeEIsVUFBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFLcEIsaUJBQVksR0FBeUMsRUFBRSxDQUFDO0lBV3hELENBQUM7SUFFUSxJQUFJ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QUFFO1lBQ2xCLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzlCO0lBQ0wsQ0FBQzs4R0F0UVEsaUJBQWlCO2tHQUFqQixpQkFBaUI7O1NBQWpCLGlCQUFpQjsyRkFBakIsaUJBQWlCO2tCQUQ3QixTQUFTO3lNQVkwRCxXQUFXO3NCQUExRSxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRXNCLFlBQVk7c0JBQTVFLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDd0IsZUFBZTtzQkFBbEYsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXIsIEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgVmlld0NoaWxkLCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsdGVyQmFzZSwgUGFnZWRMaXN0LCBQYWdlciwgUHJpbnRUeXBlIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgWmVrTW9kYWwgfSBmcm9tICcuLi9tb2R1bGVzL21vZGFsL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWx0ZXJIZWxwZXIsIFBhZ2VySGVscGVyLCBTdG9yYWdlSGVscGVyLCBTdHJpbmdIZWxwZXIsIFVybEhlbHBlciB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tICdyeGpzJztcclxuLy8gZGVjbGFyZSBsZXQgYm9vdHN0cmFwOiBhbnk7XHJcblxyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBMaXN0QmFzZUNvbXBvbmVudDxUU2VydmljZSBleHRlbmRzIElTZXJ2aWNlID0gSVNlcnZpY2U+IGV4dGVuZHMgQmFzZUNvbXBvbmVudDxQYWdlZExpc3Q+IHtcclxuICAgIGZpbHRlcjogYW55ID0gbmV3IEZpbHRlckJhc2UoKTtcclxuICAgIHNhdmVGaWx0ZXIgPSB0cnVlO1xyXG4gICAgc29ydEZpZWxkczogYW55O1xyXG4gICAgcHJvdGVjdGVkIGludGVybmFsRmlsdGVyOiBhbnkgPSBuZXcgRmlsdGVyQmFzZSgpO1xyXG4gICAgaXNGaWx0ZXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgc2VsZWN0ZWRJZHM6IGFueVtdID0gW107XHJcbiAgICBwYWdlciA9IG5ldyBQYWdlcigpO1xyXG4gICAgc3VtTW9kZWw6IGFueTtcclxuXHJcblxyXG4gICAgQFZpZXdDaGlsZCgnZmlsdGVyTW9kYWwnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJvdGVjdGVkIHJlYWRvbmx5IGZpbHRlck1vZGFsPzogWmVrTW9kYWwgfCBudWxsO1xyXG4gICAgYXBwcm92ZU1vZGVsOiB7IGlkcz86IG51bWJlcltdLCBjb21tZW50Pzogc3RyaW5nIH0gPSB7fTtcclxuICAgIEBWaWV3Q2hpbGQoJ2FwcHJvdmVNb2RhbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBwcm92ZU1vZGFsPzogWmVrTW9kYWwgfCBudWxsO1xyXG4gICAgQFZpZXdDaGlsZCgnZGlzYXBwcm92ZU1vZGFsJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByb3RlY3RlZCByZWFkb25seSBkaXNhcHByb3ZlTW9kYWw/OiBaZWtNb2RhbCB8IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2U6IFRTZXJ2aWNlLFxyXG4gICAgICAgIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgICAgICByZWFkb25seSBhbGVydDogQWxlcnRTZXJ2aWNlLFxyXG4gICAgICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICByb3V0ZXI6IFJvdXRlcikge1xyXG4gICAgICAgIHN1cGVyKHJvdXRlLCByb3V0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG92ZXJyaWRlIGluaXQoKSB7XHJcbiAgICAgICAgc3VwZXIuaW5pdCgpO1xyXG5cclxuICAgICAgICB0aGlzLnJlc2V0KCk7XHJcbiAgICAgICAgdGhpcy5pbml0RGVmYXVsdEZpbHRlcigpO1xyXG4gICAgICAgIHRoaXMuaW5pdFN0b3JlZEZpbHRlcigpO1xyXG4gICAgICAgIHRoaXMuYXNzaWduRmlsdGVyKCk7XHJcblxyXG4gICAgICAgIC8vdGhpcy5zZWxlY3RlZElkcyA9IFtdO1xyXG4gICAgICAgIC8vdGhpcy5wYWdlZExpc3QgPSBuZXcgUGFnZWRMaXN0KCk7XHJcbiAgICB9XHJcbiAgICBvdmVycmlkZSBhc3luYyBiaW5kTW9kZWwoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZElkcyA9IFtdO1xyXG4gICAgICAgIHRoaXMubW9kZWwgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlcnZpY2UuZ2V0QWxsKHRoaXMuaW50ZXJuYWxGaWx0ZXIpKTtcclxuICAgICAgICBpZiAodGhpcy5tb2RlbClcclxuICAgICAgICAgICAgdGhpcy5wYWdlciA9IFBhZ2VySGVscGVyLmdldCh0aGlzLm1vZGVsLnBhZ2VyID8gdGhpcy5tb2RlbC5wYWdlci50b3RhbEl0ZW1Db3VudCA6IDAsIHRoaXMuaW50ZXJuYWxGaWx0ZXIucGFnZSwgdGhpcy5pbnRlcm5hbEZpbHRlci5wYWdlU2l6ZSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB0aGlzLnBhZ2VyID0gbmV3IFBhZ2VyKCk7XHJcbiAgICAgICAgLy90aGlzLnBhZ2VkTGlzdC5wYWdlciA9IHRoaXMucGFnZXI7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByb3RlY3RlZCBpbml0RGVmYXVsdEZpbHRlcigpIHtcclxuICAgIH1cclxuICAgIHByaXZhdGUgaW5pdFN0b3JlZEZpbHRlcigpIHtcclxuICAgICAgICBsZXQgZmlsdGVyUGFyYW0gPSB0aGlzLmdldFF1ZXJ5UGFyYW0oJ2ZpbHRlcicpIHx8IHRoaXMuZ2V0UGFyYW0oJ2ZpbHRlcicpO1xyXG5cclxuICAgICAgICBpZiAoZmlsdGVyUGFyYW0pIHtcclxuICAgICAgICAgICAgY29uc3QgdG1wID0gU3RvcmFnZUhlbHBlci5nZXQoJ2ZpbHRlcicpO1xyXG4gICAgICAgICAgICBpZiAodG1wICYmIHRtcC51cmwgJiYgdG1wLnVybCA9PT0gdGhpcy51cmwgJiYgdG1wLmZpbHRlcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIgPSBPYmplY3QuYXNzaWduKHt9LCB0bXAuZmlsdGVyKTtcclxuICAgICAgICAgICAgICAgIC8vd2UgZG9udCBuZWVkIHRoaXMuYXNzaWduRmlsdGVyKCk7IGJlY2F1c2UgYWZ0ZXIgaW5pdFN0b3JlZEZpbHRlcigpOyB3aWxsIGJlIGFzc2lnbmVkLlxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ2ZpbHRlcicpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ2ZpbHRlcicpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGNoYW5nZVBhZ2UocGFnZTogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5pbnRlcm5hbEZpbHRlci5wYWdlID0gcGFnZTtcclxuICAgICAgICB0aGlzLmZpbHRlci5wYWdlID0gcGFnZTtcclxuICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgICAgICB0aGlzLmF1dG9TYXZlRmlsdGVyKCk7XHJcbiAgICB9XHJcbiAgICBjaGFuZ2VQYWdlU2l6ZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5pbnRlcm5hbEZpbHRlci5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VQYWdlKDEpO1xyXG4gICAgfVxyXG4gICAgc2hvd0ZpbHRlcigpIHtcclxuICAgICAgICB0aGlzLmZpbHRlck1vZGFsPy5zaG93KCk7XHJcbiAgICB9XHJcbiAgICBzZWFyY2goKSB7XHJcbiAgICAgICAgLy90aGlzLmZpbHRlck1vZGFsPy5oaWRlKCk7XHJcbiAgICAgICAgdGhpcy5hc3NpZ25GaWx0ZXIoKTtcclxuICAgICAgICB0aGlzLmNoYW5nZVBhZ2UoMSk7XHJcbiAgICAgICAgLy90aGlzLmludGVybmFsQXV0b1NhdmVGaWx0ZXIoKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBhc3NpZ25GaWx0ZXIoKSB7XHJcbiAgICAgICAgdGhpcy5pbnRlcm5hbEZpbHRlciA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuZmlsdGVyKTtcclxuICAgICAgICB0aGlzLmlzRmlsdGVyZWQgPSAhRmlsdGVySGVscGVyLmlzRW1wdHkodGhpcy5pbnRlcm5hbEZpbHRlcik7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIGF1dG9TYXZlRmlsdGVyKCkge1xyXG4gICAgICAgIGlmICh0aGlzLnNhdmVGaWx0ZXIpXHJcbiAgICAgICAgICAgIHRoaXMuaW50ZXJuYWxTYXZlRmlsdGVyKClcclxuICAgIH1cclxuICAgIHByaXZhdGUgaW50ZXJuYWxTYXZlRmlsdGVyKCkge1xyXG4gICAgICAgIFN0b3JhZ2VIZWxwZXIuc2V0KCdmaWx0ZXInLCB7XHJcbiAgICAgICAgICAgIHVybDogdGhpcy51cmwsXHJcbiAgICAgICAgICAgIGZpbHRlcjogdGhpcy5pbnRlcm5hbEZpbHRlclxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXIgPSB7IHBhZ2U6IDEsIHBhZ2VTaXplOiAyNSB9O1xyXG4gICAgICAgIHRoaXMuYXNzaWduRmlsdGVyKCk7XHJcbiAgICB9XHJcbiAgICByZWZyZXNoKCkge1xyXG4gICAgICAgIHRoaXMuYmluZE1vZGVsKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGNyZWF0ZSgpIHtcclxuICAgICAgICBjb25zdCB1cmwgPSBVcmxIZWxwZXIuZ2V0Tm9QYXJhbSh0aGlzLnJvdXRlci51cmwpO1xyXG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cmwsICdjcmVhdGUnLCB7IHJldHVyblVybDogdXJsICsgJztmaWx0ZXI9MScgfV0pO1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cmwsICdjcmVhdGUnXSxcclxuICAgICAgICAgICAgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHVybCArICc/ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcbiAgICBhc3luYyBkZWxldGUoaWQ6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuYWxlcnQuY2xlYXIoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5kZWxldGUoaWQpKTtcclxuICAgICAgICBpZiAoZGF0YT8uc3VjY2Vzcykge1xyXG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCgnQWxlcnQuRGVsZXRlZCcpKTtcclxuICAgICAgICAgICAgdGhpcy5hbGVydC5lcnJvcihtZXNzYWdlLCBudWxsLCAnZmFzIGZhLXRyYXNoJylcclxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYXN5bmMgZGVsZXRlMihpZDogbnVtYmVyLCBpZDI6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuYWxlcnQuY2xlYXIoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5kZWxldGUyKGlkLCBpZDIpKVxyXG4gICAgICAgIGlmIChkYXRhPy5zdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIGxldCBtZXNzYWdlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy50cmFuc2xhdGUuZ2V0KCdBbGVydC5EZWxldGVkJykpO1xyXG4gICAgICAgICAgICB0aGlzLmFsZXJ0LmVycm9yKG1lc3NhZ2UsIG51bGwsICdmYXMgZmEtdHJhc2gnKVxyXG4gICAgICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZWRpdChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMudXJsLCBpZF0sXHJcbiAgICAgICAgLy8gICAgIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc7ZmlsdGVyPTEnIH0gfVxyXG4gICAgICAgIC8vICk7XHJcblxyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLnVybCwgaWRdLFxyXG4gICAgICAgICAgICB7IHF1ZXJ5UGFyYW1zOiB7IHJldHVyblVybDogdGhpcy51cmwgKyAnP2ZpbHRlcj0xJyB9IH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gICAgZWRpdDIoaWQ6IG51bWJlciwgaWQyOiBudW1iZXIpIHtcclxuICAgICAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy51cmwsIGlkLCBpZDIsIHsgcmV0dXJuVXJsOiB0aGlzLnVybCArICc7ZmlsdGVyPTEnIH1dKTtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy51cmwsIGlkLCBpZDJdLFxyXG4gICAgICAgICAgICB7IHF1ZXJ5UGFyYW1zOiB7IHJldHVyblVybDogdGhpcy51cmwgKyAnP2ZpbHRlcj0xJyB9IH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gICAgc2VsZWN0KGl0ZW06IGFueSkge1xyXG4gICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSAhaXRlbS5zZWxlY3RlZDtcclxuICAgICAgICBsZXQgaWQgPSBpdGVtLmlkO1xyXG4gICAgICAgIGlmIChpZCkge1xyXG4gICAgICAgICAgICBpZiAoaXRlbS5zZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZElkcy5wdXNoKGlkKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSB0aGlzLnNlbGVjdGVkSWRzLmZpbHRlcihpdGVtID0+IGl0ZW0gIT09IGlkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIHNob3dBcHByb3ZlTW9kYWwoaWQ6IG51bWJlcikge1xyXG4gICAgICAgIGlmICghaWQgfHwgIXRoaXMuYXBwcm92ZU1vZGFsKSByZXR1cm47XHJcblxyXG4gICAgICAgIGxldCB0bXAgPSB7IGlkczogW2lkXSB9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGVsID0ge307XHJcbiAgICAgICAgdGhpcy5hcHByb3ZlTW9kYWwuc2hvdyh0bXApO1xyXG4gICAgfVxyXG4gICAgc2hvd0FwcHJvdmVTZWxlY3RlZE1vZGFsKCkge1xyXG4gICAgICAgIGxldCB0bXAgPSB7IGlkczogdGhpcy5nZXRTZWxlY3RlZElkcygpIH07XHJcbiAgICAgICAgaWYgKCF0bXAuaWRzIHx8IHRtcC5pZHMubGVuZ3RoID09PSAwIHx8ICF0aGlzLmFwcHJvdmVNb2RhbCkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLmFwcHJvdmVNb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGFsLnNob3codG1wKTtcclxuICAgIH1cclxuICAgIGFzeW5jIGFwcHJvdmUobTogYW55KSB7XHJcbiAgICAgICAgaWYgKCFtKSByZXR1cm47XHJcblxyXG4gICAgICAgIHRoaXMuYWxlcnQuY2xlYXIoKTtcclxuICAgICAgICBsZXQgZGF0YSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5hcHByb3ZlKG0pKTtcclxuICAgICAgICBpZiAoIWRhdGEgfHwgZGF0YS5sZW5ndGggPT09IDApXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgbGV0IG1lc3NhZ2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkFwcHJvdmVkJykpO1xyXG4gICAgICAgIHRoaXMuYWxlcnQuc3VjY2VzcyhtZXNzYWdlLCB1bmRlZmluZWQsICdmYXMgZmEtdGh1bWJzLXVwJylcclxuICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc2hvd0Rpc2FwcHJvdmVNb2RhbChpZDogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKCFpZCB8fCAhdGhpcy5kaXNhcHByb3ZlTW9kYWwpIHJldHVybjtcclxuXHJcbiAgICAgICAgbGV0IHRtcCA9IHsgaWRzOiBbaWRdIH07XHJcbiAgICAgICAgdGhpcy5hcHByb3ZlTW9kZWwgPSB7fTtcclxuICAgICAgICB0aGlzLmRpc2FwcHJvdmVNb2RhbC5zaG93KHRtcCk7XHJcbiAgICB9XHJcbiAgICBzaG93RGlzYXBwcm92ZVNlbGVjdGVkTW9kYWwoKSB7XHJcbiAgICAgICAgbGV0IHRtcCA9IHsgaWRzOiB0aGlzLmdldFNlbGVjdGVkSWRzKCkgfTtcclxuICAgICAgICBpZiAoIXRtcC5pZHMgfHwgdG1wLmlkcy5sZW5ndGggPT09IDAgfHwgIXRoaXMuZGlzYXBwcm92ZU1vZGFsKSByZXR1cm47XHJcblxyXG4gICAgICAgIHRoaXMuYXBwcm92ZU1vZGVsID0ge307XHJcbiAgICAgICAgdGhpcy5kaXNhcHByb3ZlTW9kYWwuc2hvdyh0bXApO1xyXG4gICAgfVxyXG4gICAgYXN5bmMgZGlzYXBwcm92ZShtOiBhbnkpIHtcclxuICAgICAgICBpZiAoIW0gfHwgIXRoaXMuYXBwcm92ZU1vZGVsKSByZXR1cm47XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgbSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgICAgbS5jb21tZW50ID0gU3RyaW5nSGVscGVyLnRyeVRyaW0odGhpcy5hcHByb3ZlTW9kZWwuY29tbWVudCk7XHJcbiAgICAgICAgICAgIGlmICghbS5jb21tZW50KSBkZWxldGUgbS5jb21tZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hbGVydC5jbGVhcigpO1xyXG4gICAgICAgIGxldCBkYXRhID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXJ2aWNlLmRpc2FwcHJvdmUobSkpO1xyXG4gICAgICAgIGlmICghZGF0YSB8fCBkYXRhLmxlbmd0aCA9PT0gMClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICBsZXQgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCgnQWxlcnQuRGlzYXBwcm92ZWQnKSk7XHJcbiAgICAgICAgdGhpcy5hbGVydC5zdWNjZXNzKG1lc3NhZ2UsIHVuZGVmaW5lZCwgJ2ZhcyBmYS10aHVtYnMtZG93bicpXHJcbiAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U2VsZWN0ZWRJZHMoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJZHM7XHJcbiAgICAgICAgLy8gaWYgKCF0aGlzLnBhZ2VkTGlzdCB8fCAhdGhpcy5wYWdlZExpc3QuZGF0YSkgcmV0dXJuIFtdO1xyXG5cclxuICAgICAgICAvLyBsZXQgaWRzID0gW107XHJcbiAgICAgICAgLy8gZm9yIChjb25zdCBpdGVtIG9mIHRoaXMucGFnZWRMaXN0LmRhdGEpIHtcclxuICAgICAgICAvLyAgICAgaWYgKCFpdGVtLnNlbGVjdGVkIHx8ICFpdGVtLmlkKSBjb250aW51ZTtcclxuXHJcbiAgICAgICAgLy8gICAgIGlkcy5wdXNoKGl0ZW0uaWQpO1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICAvLyByZXR1cm4gaWRzO1xyXG4gICAgfVxyXG5cclxuICAgIHNob3dTdW0oKSB7IH1cclxuICAgIGFzeW5jIHN1bSgpIHtcclxuICAgICAgICB0aGlzLnN1bU1vZGVsID0gbnVsbDtcclxuICAgICAgICBsZXQgZGF0YSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuc2VydmljZS5zdW0odGhpcy5pbnRlcm5hbEZpbHRlcikpO1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3VtTW9kZWwgPSBkYXRhO1xyXG4gICAgICAgICAgICB0aGlzLnNob3dTdW0oKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBsZXQgbWVzc2FnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMudHJhbnNsYXRlLmdldCgnQWxlcnQuU3VtRXJyb3InKSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnQuZXJyb3IobWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGV4cG9ydChmaWxlVHlwZUlkOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNlcnZpY2UuZXhwb3J0KHRoaXMuaW50ZXJuYWxGaWx0ZXIsIGZpbGVUeXBlSWQpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgICAgdGhpcy5kb3dubG9hZEZpbGUoZGF0YSwgJ2V4cG9ydC54bHN4JywgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0Jyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIG92ZXJyaWRlIHByaW50KHByaW50VHlwZT86IFByaW50VHlwZSkge1xyXG4gICAgICAgIGlmICghdGhpcy5tb2RlbCB8fCAhdGhpcy5tb2RlbC5kYXRhKSByZXR1cm47XHJcblxyXG4gICAgICAgIGxldCBpZHMgPSB0aGlzLmdldFNlbGVjdGVkSWRzKCk7XHJcbiAgICAgICAgZm9yIChjb25zdCBpZCBvZiBpZHMpIHtcclxuICAgICAgICAgICAgc3VwZXIucHJpbnQoaWQsIHByaW50VHlwZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9jb21wb25lbnRzL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBCb29sZWFuSW5wdXQgPSBzdHJpbmcgfCBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuZXhwb3J0IHR5cGUgTnVtYmVySW5wdXQgPSBzdHJpbmcgfCBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkO1xyXG5leHBvcnQgdHlwZSBEYXRlSW5wdXQgPSBzdHJpbmcgfCBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZDsiXX0=
@@ -1,12 +1,12 @@
1
- export var AlertType;
2
- (function (AlertType) {
3
- AlertType[AlertType["Primary"] = 1] = "Primary";
4
- AlertType[AlertType["Secondary"] = 2] = "Secondary";
5
- AlertType[AlertType["Success"] = 3] = "Success";
6
- AlertType[AlertType["Danger"] = 4] = "Danger";
7
- AlertType[AlertType["Warning"] = 5] = "Warning";
8
- AlertType[AlertType["Info"] = 6] = "Info";
9
- AlertType[AlertType["Light"] = 7] = "Light";
10
- AlertType[AlertType["Dark"] = 8] = "Dark";
11
- })(AlertType || (AlertType = {}));
1
+ export var AlertType;
2
+ (function (AlertType) {
3
+ AlertType[AlertType["Primary"] = 1] = "Primary";
4
+ AlertType[AlertType["Secondary"] = 2] = "Secondary";
5
+ AlertType[AlertType["Success"] = 3] = "Success";
6
+ AlertType[AlertType["Danger"] = 4] = "Danger";
7
+ AlertType[AlertType["Warning"] = 5] = "Warning";
8
+ AlertType[AlertType["Info"] = 6] = "Info";
9
+ AlertType[AlertType["Light"] = 7] = "Light";
10
+ AlertType[AlertType["Dark"] = 8] = "Dark";
11
+ })(AlertType || (AlertType = {}));
12
12
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZGVscy9hbGVydC10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFNBU1g7QUFURCxXQUFZLFNBQVM7SUFDakIsK0NBQVcsQ0FBQTtJQUNYLG1EQUFTLENBQUE7SUFDVCwrQ0FBTyxDQUFBO0lBQ1AsNkNBQU0sQ0FBQTtJQUNOLCtDQUFPLENBQUE7SUFDUCx5Q0FBSSxDQUFBO0lBQ0osMkNBQUssQ0FBQTtJQUNMLHlDQUFJLENBQUE7QUFDUixDQUFDLEVBVFcsU0FBUyxLQUFULFNBQVMsUUFTcEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBBbGVydFR5cGUge1xyXG4gICAgUHJpbWFyeSA9IDEsXHJcbiAgICBTZWNvbmRhcnksXHJcbiAgICBTdWNjZXNzLFxyXG4gICAgRGFuZ2VyLFxyXG4gICAgV2FybmluZyxcclxuICAgIEluZm8sXHJcbiAgICBMaWdodCxcclxuICAgIERhcmtcclxufSJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdGNoYS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZGVscy9jYXB0Y2hhLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENhcHRjaGEge1xyXG4gICAgY2FwdGNoYT86IHN0cmluZyB8IG51bGw7XHJcbn0iXX0=
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZGVscy9jdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElPYmplY3RDb25zdHJ1Y3RvcjxUPiB7XHJcbiAgICBuZXcoKTogVDtcclxufVxyXG4iXX0=
@@ -1,3 +1,3 @@
1
- export class EditBase {
2
- }
1
+ export class EditBase {
2
+ }
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1iYXNlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kZWxzL2VkaXQtYmFzZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sUUFBUTtDQUtwQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBFZGl0QmFzZSB7XHJcbiAgICBpZD86IG51bWJlciB8IG51bGw7XHJcblxyXG4gICAgaXNEZWxldGVkPzogYm9vbGVhbiB8IG51bGw7XHJcbiAgICByZWFkT25seT86IGJvb2xlYW4gfCBudWxsO1xyXG59Il19