zek 14.2.91 → 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 (429) 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 -6404
  172. package/fesm2022/zek.mjs.map +1 -0
  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 -41
  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 +9 -15
  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 -123
  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 -6682
  428. package/fesm2015/zek.mjs.map +0 -1
  429. package/fesm2020/zek.mjs.map +0 -1
@@ -0,0 +1,110 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { BootstrapHelper } from '../../../utils';
3
+ import { AlertType } from '../../../models';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../services/alert.service";
6
+ import * as i2 from "@angular/common";
7
+ class ZekToast {
8
+ constructor(alertService) {
9
+ this.alertService = alertService;
10
+ this.icon = true;
11
+ this.toasts = [];
12
+ }
13
+ ngOnInit() {
14
+ this.subscription = this.alertService.getToast().subscribe((toast) => {
15
+ if (!toast) {
16
+ // clear alerts when an empty alert is received
17
+ this.toasts = [];
18
+ return;
19
+ }
20
+ // add toast to array
21
+ this.cssInit(toast);
22
+ this.toasts.unshift(toast);
23
+ this.timeout = setTimeout(() => {
24
+ this.remove(toast);
25
+ // let toastEl = document.getElementById(`toast-${toast.id}`);
26
+ // let t = new bootstrap.Toast(toastEl);
27
+ // t.show();
28
+ }, 3000);
29
+ // let toastElList = [].slice.call(document.querySelectorAll('.toast'))
30
+ // let toastList = toastElList.map(function (toastEl) {
31
+ // return new bootstrap.Toast(toastEl)
32
+ // })
33
+ // toastList.forEach(t => {
34
+ // t.show();
35
+ // });
36
+ });
37
+ }
38
+ ngOnDestroy() {
39
+ if (this.subscription) {
40
+ this.subscription.unsubscribe();
41
+ }
42
+ this.clearTimeout();
43
+ }
44
+ clear() {
45
+ this.alertService.clear();
46
+ }
47
+ remove(toast) {
48
+ this.toasts = this.toasts.filter(x => x !== toast);
49
+ }
50
+ clearTimeout() {
51
+ if (this.timeout) {
52
+ clearTimeout(this.timeout);
53
+ this.timeout = null;
54
+ }
55
+ }
56
+ cssInit(toast) {
57
+ if (!toast || !toast.type)
58
+ return;
59
+ if (this.icon) {
60
+ toast.icon = BootstrapHelper.cssAlertIcon(toast.type);
61
+ }
62
+ var v = toast;
63
+ switch (toast.type) {
64
+ case AlertType.Primary:
65
+ v.css = 'bg-primary text-white';
66
+ break;
67
+ case AlertType.Success:
68
+ v.css = 'bg-success text-white';
69
+ // v.iconColor = 'text--accent-green';
70
+ // v.borderColor = 'border--accent-green';
71
+ break;
72
+ case AlertType.Danger:
73
+ v.css = 'bg-danger text-white';
74
+ // v.iconColor = 'text--accent-red';
75
+ // v.borderColor = 'border--accent-red';
76
+ break;
77
+ case AlertType.Warning:
78
+ v.css = 'bg-warning text-dark';
79
+ // v.iconColor = 'text--accent-yellow';
80
+ // v.borderColor = 'border--accent-yellow';
81
+ break;
82
+ case AlertType.Info:
83
+ v.css = 'bg-info text-white';
84
+ // v.iconColor = 'text--accent-blue';
85
+ // v.borderColor = 'border--accent-blue';
86
+ break;
87
+ case AlertType.Light:
88
+ v.css = 'bg-light text-dark';
89
+ break;
90
+ case AlertType.Dark:
91
+ v.css = 'bg-dark text-white';
92
+ break;
93
+ default:
94
+ v.css = 'bg-secondary text-white';
95
+ break;
96
+ }
97
+ }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ZekToast, deps: [{ token: i1.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
99
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: ZekToast, selector: "zek-toast", inputs: { timeOut: "timeOut", icon: "icon" }, ngImport: i0, template: "<div class=\"toast-container position-fixed top-0 end-0 p-3\">\r\n <div *ngFor=\"let toast of toasts\" class=\"toast fade show border-0 {{ toast.css }}\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-header\">\r\n <span class=\"me-1\" *ngIf=\"icon && toast.icon\"><i class=\"{{ toast.icon }}\"></i></span>\r\n <strong class=\"me-auto\" *ngIf=\"toast.title\">{{ toast.title }}</strong>\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n <div class=\"toast-body\">\r\n {{ toast.message }}\r\n </div>\r\n </div>\r\n <!-- <div *ngFor=\"let toast of toasts\" class=\"toast fade show\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-body\">\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1 border-start border-8 {{toast.borderColor}}\">\r\n <span *ngIf=\"toast.icon\" class=\"icon flex-shrink-0 {{toast.iconColor}}\"><i class=\"{{toast.icon}}\"></i></span>\r\n </div>\r\n <div class=\"col\">\r\n <div *ngIf=\"toast.title\"><h5>{{toast.title}}</h5></div>\r\n {{ toast.message }}\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div> -->\r\n</div>", styles: [":host>.toast-container{z-index:999999;opacity:.9}\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"] }] }); }
100
+ }
101
+ export { ZekToast };
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ZekToast, decorators: [{
103
+ type: Component,
104
+ args: [{ selector: 'zek-toast', template: "<div class=\"toast-container position-fixed top-0 end-0 p-3\">\r\n <div *ngFor=\"let toast of toasts\" class=\"toast fade show border-0 {{ toast.css }}\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-header\">\r\n <span class=\"me-1\" *ngIf=\"icon && toast.icon\"><i class=\"{{ toast.icon }}\"></i></span>\r\n <strong class=\"me-auto\" *ngIf=\"toast.title\">{{ toast.title }}</strong>\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n <div class=\"toast-body\">\r\n {{ toast.message }}\r\n </div>\r\n </div>\r\n <!-- <div *ngFor=\"let toast of toasts\" class=\"toast fade show\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\" data-bs-delay=\"3000\">\r\n <div class=\"toast-body\">\r\n <div class=\"row\">\r\n <div class=\"col-auto pe-1 border-start border-8 {{toast.borderColor}}\">\r\n <span *ngIf=\"toast.icon\" class=\"icon flex-shrink-0 {{toast.iconColor}}\"><i class=\"{{toast.icon}}\"></i></span>\r\n </div>\r\n <div class=\"col\">\r\n <div *ngIf=\"toast.title\"><h5>{{toast.title}}</h5></div>\r\n {{ toast.message }}\r\n </div>\r\n <div class=\"col-auto p-0\">\r\n <button type=\"button\" class=\"btn-close ms-auto me-2\" data-bs-dismiss=\"toast\" aria-label=\"Close\" (click)=\"remove(toast)\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n </div> -->\r\n</div>", styles: [":host>.toast-container{z-index:999999;opacity:.9}\n"] }]
105
+ }], ctorParameters: function () { return [{ type: i1.AlertService }]; }, propDecorators: { timeOut: [{
106
+ type: Input
107
+ }], icon: [{
108
+ type: Input
109
+ }] } });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL2FsZXJ0L3RvYXN0L3RvYXN0LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9hbGVydC90b2FzdC90b2FzdC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBRTVDLE1BS2EsUUFBUTtJQVFqQixZQUE2QixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQU45QyxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBRXJCLFdBQU0sR0FBVSxFQUFFLENBQUM7SUFJd0MsQ0FBQztJQUU1RCxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3hFLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1IsK0NBQStDO2dCQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztnQkFDakIsT0FBTzthQUNWO1lBRUQscUJBQXFCO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNuQiw4REFBOEQ7Z0JBQzlELHdDQUF3QztnQkFDeEMsWUFBWTtZQUNoQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFHVCx1RUFBdUU7WUFDdkUsdURBQXVEO1lBQ3ZELDBDQUEwQztZQUMxQyxLQUFLO1lBQ0wsMkJBQTJCO1lBQzNCLGdCQUFnQjtZQUNoQixNQUFNO1FBQ1YsQ0FBQyxDQUFDLENBQUM7SUFJUCxDQUFDO0lBR0QsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQVk7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2QsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztTQUN2QjtJQUNMLENBQUM7SUFHRCxPQUFPLENBQUMsS0FBWTtRQUNoQixJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUk7WUFDckIsT0FBTztRQUdYLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNYLEtBQUssQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekQ7UUFFRCxJQUFJLENBQUMsR0FBRyxLQUFZLENBQUM7UUFDckIsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQ2hCLEtBQUssU0FBUyxDQUFDLE9BQU87Z0JBQ2xCLENBQUMsQ0FBQyxHQUFHLEdBQUcsdUJBQXVCLENBQUM7Z0JBQ2hDLE1BQU07WUFDVixLQUFLLFNBQVMsQ0FBQyxPQUFPO2dCQUNsQixDQUFDLENBQUMsR0FBRyxHQUFHLHVCQUF1QixDQUFDO2dCQUNoQyxzQ0FBc0M7Z0JBQ3RDLDBDQUEwQztnQkFDMUMsTUFBTTtZQUNWLEtBQUssU0FBUyxDQUFDLE1BQU07Z0JBQ2pCLENBQUMsQ0FBQyxHQUFHLEdBQUcsc0JBQXNCLENBQUM7Z0JBQy9CLG9DQUFvQztnQkFDcEMsd0NBQXdDO2dCQUN4QyxNQUFNO1lBQ1YsS0FBSyxTQUFTLENBQUMsT0FBTztnQkFDbEIsQ0FBQyxDQUFDLEdBQUcsR0FBRyxzQkFBc0IsQ0FBQztnQkFDL0IsdUNBQXVDO2dCQUN2QywyQ0FBMkM7Z0JBQzNDLE1BQU07WUFDVixLQUFLLFNBQVMsQ0FBQyxJQUFJO2dCQUNmLENBQUMsQ0FBQyxHQUFHLEdBQUcsb0JBQW9CLENBQUM7Z0JBQzdCLHFDQUFxQztnQkFDckMseUNBQXlDO2dCQUN6QyxNQUFNO1lBQ1YsS0FBSyxTQUFTLENBQUMsS0FBSztnQkFDaEIsQ0FBQyxDQUFDLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQztnQkFDN0IsTUFBTTtZQUNWLEtBQUssU0FBUyxDQUFDLElBQUk7Z0JBQ2YsQ0FBQyxDQUFDLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQztnQkFDN0IsTUFBTTtZQUdWO2dCQUNJLENBQUMsQ0FBQyxHQUFHLEdBQUcseUJBQXlCLENBQUM7Z0JBQ2xDLE1BQU07U0FDYjtJQUNMLENBQUM7OEdBakhRLFFBQVE7a0dBQVIsUUFBUSwrRkNickIsNHNEQTJCTTs7U0RkTyxRQUFROzJGQUFSLFFBQVE7a0JBTHBCLFNBQVM7K0JBQ0ksV0FBVzttR0FLWixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJvb3RzdHJhcEhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcclxuLy9kZWNsYXJlIGxldCBib290c3RyYXA6IGFueTtcclxuXHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSwgVG9hc3QgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWxlcnRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstdG9hc3QnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdG9hc3QuY3NzJ10sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdG9hc3QuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFpla1RvYXN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgdGltZU91dD86IG51bWJlcjtcclxuICAgIEBJbnB1dCgpIGljb24gPSB0cnVlO1xyXG5cclxuICAgIHRvYXN0czogYW55W10gPSBbXTtcclxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uPzogU3Vic2NyaXB0aW9uO1xyXG4gICAgcHJpdmF0ZSB0aW1lb3V0OiBhbnk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmFsZXJ0U2VydmljZS5nZXRUb2FzdCgpLnN1YnNjcmliZSgodG9hc3Q6IFRvYXN0KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdG9hc3QpIHtcclxuICAgICAgICAgICAgICAgIC8vIGNsZWFyIGFsZXJ0cyB3aGVuIGFuIGVtcHR5IGFsZXJ0IGlzIHJlY2VpdmVkXHJcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0cyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvLyBhZGQgdG9hc3QgdG8gYXJyYXlcclxuICAgICAgICAgICAgdGhpcy5jc3NJbml0KHRvYXN0KTtcclxuICAgICAgICAgICAgdGhpcy50b2FzdHMudW5zaGlmdCh0b2FzdCk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlKHRvYXN0KTtcclxuICAgICAgICAgICAgICAgIC8vIGxldCB0b2FzdEVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYHRvYXN0LSR7dG9hc3QuaWR9YCk7XHJcbiAgICAgICAgICAgICAgICAvLyBsZXQgdCA9IG5ldyBib290c3RyYXAuVG9hc3QodG9hc3RFbCk7XHJcbiAgICAgICAgICAgICAgICAvLyB0LnNob3coKTtcclxuICAgICAgICAgICAgfSwgMzAwMCk7XHJcblxyXG5cclxuICAgICAgICAgICAgLy8gbGV0IHRvYXN0RWxMaXN0ID0gW10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcudG9hc3QnKSlcclxuICAgICAgICAgICAgLy8gbGV0IHRvYXN0TGlzdCA9IHRvYXN0RWxMaXN0Lm1hcChmdW5jdGlvbiAodG9hc3RFbCkge1xyXG4gICAgICAgICAgICAvLyAgICAgcmV0dXJuIG5ldyBib290c3RyYXAuVG9hc3QodG9hc3RFbClcclxuICAgICAgICAgICAgLy8gfSlcclxuICAgICAgICAgICAgLy8gdG9hc3RMaXN0LmZvckVhY2godCA9PiB7XHJcbiAgICAgICAgICAgIC8vICAgICB0LnNob3coKTtcclxuICAgICAgICAgICAgLy8gfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG5cclxuXHJcbiAgICB9XHJcblxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNsZWFyVGltZW91dCgpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBjbGVhcigpIHtcclxuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5jbGVhcigpO1xyXG4gICAgfVxyXG4gICAgcmVtb3ZlKHRvYXN0OiBUb2FzdCkge1xyXG4gICAgICAgIHRoaXMudG9hc3RzID0gdGhpcy50b2FzdHMuZmlsdGVyKHggPT4geCAhPT0gdG9hc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyVGltZW91dCgpIHtcclxuICAgICAgICBpZiAodGhpcy50aW1lb3V0KSB7XHJcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQpO1xyXG4gICAgICAgICAgICB0aGlzLnRpbWVvdXQgPSBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgY3NzSW5pdCh0b2FzdDogVG9hc3QpIHtcclxuICAgICAgICBpZiAoIXRvYXN0IHx8ICF0b2FzdC50eXBlKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcblxyXG5cclxuICAgICAgICBpZiAodGhpcy5pY29uKSB7XHJcbiAgICAgICAgICAgIHRvYXN0Lmljb24gPSBCb290c3RyYXBIZWxwZXIuY3NzQWxlcnRJY29uKHRvYXN0LnR5cGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdmFyIHYgPSB0b2FzdCBhcyBhbnk7XHJcbiAgICAgICAgc3dpdGNoICh0b2FzdC50eXBlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLlByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICB2LmNzcyA9ICdiZy1wcmltYXJ5IHRleHQtd2hpdGUnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLlN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICB2LmNzcyA9ICdiZy1zdWNjZXNzIHRleHQtd2hpdGUnO1xyXG4gICAgICAgICAgICAgICAgLy8gdi5pY29uQ29sb3IgPSAndGV4dC0tYWNjZW50LWdyZWVuJztcclxuICAgICAgICAgICAgICAgIC8vIHYuYm9yZGVyQ29sb3IgPSAnYm9yZGVyLS1hY2NlbnQtZ3JlZW4nO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLkRhbmdlcjpcclxuICAgICAgICAgICAgICAgIHYuY3NzID0gJ2JnLWRhbmdlciB0ZXh0LXdoaXRlJztcclxuICAgICAgICAgICAgICAgIC8vIHYuaWNvbkNvbG9yID0gJ3RleHQtLWFjY2VudC1yZWQnO1xyXG4gICAgICAgICAgICAgICAgLy8gdi5ib3JkZXJDb2xvciA9ICdib3JkZXItLWFjY2VudC1yZWQnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLldhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICB2LmNzcyA9ICdiZy13YXJuaW5nIHRleHQtZGFyayc7XHJcbiAgICAgICAgICAgICAgICAvLyB2Lmljb25Db2xvciA9ICd0ZXh0LS1hY2NlbnQteWVsbG93JztcclxuICAgICAgICAgICAgICAgIC8vIHYuYm9yZGVyQ29sb3IgPSAnYm9yZGVyLS1hY2NlbnQteWVsbG93JztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5JbmZvOlxyXG4gICAgICAgICAgICAgICAgdi5jc3MgPSAnYmctaW5mbyB0ZXh0LXdoaXRlJztcclxuICAgICAgICAgICAgICAgIC8vIHYuaWNvbkNvbG9yID0gJ3RleHQtLWFjY2VudC1ibHVlJztcclxuICAgICAgICAgICAgICAgIC8vIHYuYm9yZGVyQ29sb3IgPSAnYm9yZGVyLS1hY2NlbnQtYmx1ZSc7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBBbGVydFR5cGUuTGlnaHQ6XHJcbiAgICAgICAgICAgICAgICB2LmNzcyA9ICdiZy1saWdodCB0ZXh0LWRhcmsnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLkRhcms6XHJcbiAgICAgICAgICAgICAgICB2LmNzcyA9ICdiZy1kYXJrIHRleHQtd2hpdGUnO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG5cclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHYuY3NzID0gJ2JnLXNlY29uZGFyeSB0ZXh0LXdoaXRlJztcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cInRvYXN0LWNvbnRhaW5lciBwb3NpdGlvbi1maXhlZCB0b3AtMCBlbmQtMCBwLTNcIj5cclxuICAgIDxkaXYgKm5nRm9yPVwibGV0IHRvYXN0IG9mIHRvYXN0c1wiIGNsYXNzPVwidG9hc3QgZmFkZSBzaG93IGJvcmRlci0wIHt7IHRvYXN0LmNzcyB9fVwiIHJvbGU9XCJhbGVydFwiIGFyaWEtbGl2ZT1cImFzc2VydGl2ZVwiIGFyaWEtYXRvbWljPVwidHJ1ZVwiIGRhdGEtYnMtZGVsYXk9XCIzMDAwXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRvYXN0LWhlYWRlclwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1lLTFcIiAqbmdJZj1cImljb24gJiYgdG9hc3QuaWNvblwiPjxpIGNsYXNzPVwie3sgdG9hc3QuaWNvbiB9fVwiPjwvaT48L3NwYW4+XHJcbiAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJtZS1hdXRvXCIgKm5nSWY9XCJ0b2FzdC50aXRsZVwiPnt7IHRvYXN0LnRpdGxlIH19PC9zdHJvbmc+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlIG1zLWF1dG8gbWUtMlwiIGRhdGEtYnMtZGlzbWlzcz1cInRvYXN0XCIgYXJpYS1sYWJlbD1cIkNsb3NlXCIgKGNsaWNrKT1cInJlbW92ZSh0b2FzdClcIj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidG9hc3QtYm9keVwiPlxyXG4gICAgICAgICAgICB7eyB0b2FzdC5tZXNzYWdlIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDwhLS0gPGRpdiAqbmdGb3I9XCJsZXQgdG9hc3Qgb2YgdG9hc3RzXCIgY2xhc3M9XCJ0b2FzdCBmYWRlIHNob3dcIiByb2xlPVwiYWxlcnRcIiBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIiBhcmlhLWF0b21pYz1cInRydWVcIiBkYXRhLWJzLWRlbGF5PVwiMzAwMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdC1ib2R5XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtYXV0byBwZS0xIGJvcmRlci1zdGFydCBib3JkZXItOCB7e3RvYXN0LmJvcmRlckNvbG9yfX1cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInRvYXN0Lmljb25cIiBjbGFzcz1cImljb24gZmxleC1zaHJpbmstMCB7e3RvYXN0Lmljb25Db2xvcn19XCI+PGkgY2xhc3M9XCJ7e3RvYXN0Lmljb259fVwiPjwvaT48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwidG9hc3QudGl0bGVcIj48aDU+e3t0b2FzdC50aXRsZX19PC9oNT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICB7eyB0b2FzdC5tZXNzYWdlIH19XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtYXV0byBwLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0bi1jbG9zZSBtcy1hdXRvIG1lLTJcIiBkYXRhLWJzLWRpc21pc3M9XCJ0b2FzdFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiIChjbGljayk9XCJyZW1vdmUodG9hc3QpXCI+PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj4gLS0+XHJcbjwvZGl2PiJdfQ==
@@ -0,0 +1,86 @@
1
+ import { Component } from '@angular/core';
2
+ import { AlertType } from '../../../models';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../../services/alert.service";
5
+ import * as i2 from "@angular/common";
6
+ class ZekValidation {
7
+ constructor(alertService) {
8
+ this.alertService = alertService;
9
+ this.alerts = [];
10
+ }
11
+ ngOnInit() {
12
+ this.subscription = this.alertService.getAlert().subscribe((alert) => {
13
+ if (!alert) {
14
+ // clear alerts when an empty alert is received
15
+ this.alerts = [];
16
+ return;
17
+ }
18
+ // add alert to array
19
+ this.alerts.push(alert);
20
+ });
21
+ }
22
+ ngOnDestroy() {
23
+ this.subscription?.unsubscribe();
24
+ }
25
+ clear() {
26
+ this.alertService.clear();
27
+ }
28
+ remove(alert) {
29
+ this.alerts = this.alerts.filter(x => x !== alert);
30
+ }
31
+ cssIcon(alert) {
32
+ if (!alert) {
33
+ return;
34
+ }
35
+ if (alert.icon && alert.icon.length > 0)
36
+ return alert.icon;
37
+ if (!alert.type) {
38
+ return;
39
+ }
40
+ switch (alert.type) {
41
+ case AlertType.Success:
42
+ return 'fas fa-check';
43
+ case AlertType.Danger:
44
+ case AlertType.Warning:
45
+ return 'fas fa-exclamation-triangle';
46
+ case AlertType.Info:
47
+ return 'fas fa-info-circle';
48
+ default:
49
+ return;
50
+ }
51
+ }
52
+ cssAlert(alert) {
53
+ if (!alert) {
54
+ return;
55
+ }
56
+ // return css class based on alert type
57
+ switch (alert.type) {
58
+ case AlertType.Primary:
59
+ return 'alert-primary';
60
+ case AlertType.Secondary:
61
+ return 'alert-secondary';
62
+ case AlertType.Success:
63
+ return 'alert-success';
64
+ case AlertType.Danger:
65
+ return 'alert-danger';
66
+ case AlertType.Warning:
67
+ return 'alert-warning';
68
+ case AlertType.Info:
69
+ return 'alert-info';
70
+ case AlertType.Light:
71
+ return 'alert-light';
72
+ case AlertType.Dark:
73
+ return 'alert-dark';
74
+ default:
75
+ return 'alert-secondary';
76
+ }
77
+ }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ZekValidation, deps: [{ token: i1.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: ZekValidation, selector: "zek-validation", ngImport: i0, template: "<div *ngFor=\"let alert of alerts\" class=\"alert {{ cssAlert(alert) }} alert-dismissible fade show mt-3\" role=\"alert\">\r\n <button (click)=\"remove(alert)\" type=\"button\" class=\"btn-close\" aria-label=\"Close\"></button>\r\n <div *ngFor=\"let message of alert.messages\">\r\n <i *ngIf=\"cssIcon(alert)\" class=\"{{ cssIcon(alert) }}\"></i>\r\n {{message}}\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [":host{display:block}\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"] }] }); }
80
+ }
81
+ export { ZekValidation };
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ZekValidation, decorators: [{
83
+ type: Component,
84
+ args: [{ selector: 'zek-validation', template: "<div *ngFor=\"let alert of alerts\" class=\"alert {{ cssAlert(alert) }} alert-dismissible fade show mt-3\" role=\"alert\">\r\n <button (click)=\"remove(alert)\" type=\"button\" class=\"btn-close\" aria-label=\"Close\"></button>\r\n <div *ngFor=\"let message of alert.messages\">\r\n <i *ngIf=\"cssIcon(alert)\" class=\"{{ cssIcon(alert) }}\"></i>\r\n {{message}}\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", styles: [":host{display:block}\n"] }]
85
+ }], ctorParameters: function () { return [{ type: i1.AlertService }]; } });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvYWxlcnQvdmFsaWRhdGlvbi92YWxpZGF0aW9uLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9hbGVydC92YWxpZGF0aW9uL3ZhbGlkYXRpb24uaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFJNUMsTUFLYSxhQUFhO0lBSXRCLFlBQTZCLFlBQTBCO1FBQTFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBSHZELFdBQU0sR0FBWSxFQUFFLENBQUM7SUFHc0MsQ0FBQztJQUU1RCxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3hFLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1IsK0NBQStDO2dCQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztnQkFDakIsT0FBTzthQUNWO1lBQ0QscUJBQXFCO1lBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFHRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQVk7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxPQUFPLENBQUMsS0FBWTtRQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1IsT0FBTztTQUNWO1FBRUQsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7WUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBR3RCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQ2IsT0FBTztTQUNWO1FBRUQsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQ2hCLEtBQUssU0FBUyxDQUFDLE9BQU87Z0JBQ2xCLE9BQU8sY0FBYyxDQUFDO1lBQzFCLEtBQUssU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUN0QixLQUFLLFNBQVMsQ0FBQyxPQUFPO2dCQUNsQixPQUFPLDZCQUE2QixDQUFDO1lBQ3pDLEtBQUssU0FBUyxDQUFDLElBQUk7Z0JBQ2YsT0FBTyxvQkFBb0IsQ0FBQztZQUNoQztnQkFDSSxPQUFPO1NBQ2Q7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVk7UUFDakIsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNSLE9BQU87U0FDVjtRQUVELHVDQUF1QztRQUN2QyxRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDaEIsS0FBSyxTQUFTLENBQUMsT0FBTztnQkFDbEIsT0FBTyxlQUFlLENBQUM7WUFDM0IsS0FBSyxTQUFTLENBQUMsU0FBUztnQkFDcEIsT0FBTyxpQkFBaUIsQ0FBQztZQUM3QixLQUFLLFNBQVMsQ0FBQyxPQUFPO2dCQUNsQixPQUFPLGVBQWUsQ0FBQztZQUMzQixLQUFLLFNBQVMsQ0FBQyxNQUFNO2dCQUNqQixPQUFPLGNBQWMsQ0FBQztZQUMxQixLQUFLLFNBQVMsQ0FBQyxPQUFPO2dCQUNsQixPQUFPLGVBQWUsQ0FBQztZQUMzQixLQUFLLFNBQVMsQ0FBQyxJQUFJO2dCQUNmLE9BQU8sWUFBWSxDQUFDO1lBQ3hCLEtBQUssU0FBUyxDQUFDLEtBQUs7Z0JBQ2hCLE9BQU8sYUFBYSxDQUFDO1lBQ3pCLEtBQUssU0FBUyxDQUFDLElBQUk7Z0JBQ2YsT0FBTyxZQUFZLENBQUM7WUFDeEI7Z0JBQ0ksT0FBTyxpQkFBaUIsQ0FBQztTQUNoQztJQUNMLENBQUM7OEdBbEZRLGFBQWE7a0dBQWIsYUFBYSxzRENYMUIseWJBT007O1NESU8sYUFBYTsyRkFBYixhQUFhO2tCQUx6QixTQUFTOytCQUNJLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFsZXJ0VHlwZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XHJcblxyXG5pbXBvcnQgeyBBbGVydFNlcnZpY2UsIEFsZXJ0IH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYWxlcnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnemVrLXZhbGlkYXRpb24nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZhbGlkYXRpb24uaHRtbCcsXHJcbiAgICBzdHlsZXM6IFsnOmhvc3QgeyBkaXNwbGF5OiBibG9jazsgfSddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaZWtWYWxpZGF0aW9uIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgYWxlcnRzOiBBbGVydFtdID0gW107XHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlKSB7IH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuYWxlcnRTZXJ2aWNlLmdldEFsZXJ0KCkuc3Vic2NyaWJlKChhbGVydDogQWxlcnQpID0+IHtcclxuICAgICAgICAgICAgaWYgKCFhbGVydCkge1xyXG4gICAgICAgICAgICAgICAgLy8gY2xlYXIgYWxlcnRzIHdoZW4gYW4gZW1wdHkgYWxlcnQgaXMgcmVjZWl2ZWRcclxuICAgICAgICAgICAgICAgIHRoaXMuYWxlcnRzID0gW107XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLy8gYWRkIGFsZXJ0IHRvIGFycmF5XHJcbiAgICAgICAgICAgIHRoaXMuYWxlcnRzLnB1c2goYWxlcnQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCkge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBjbGVhcigpIHtcclxuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5jbGVhcigpO1xyXG4gICAgfVxyXG4gICAgcmVtb3ZlKGFsZXJ0OiBBbGVydCkge1xyXG4gICAgICAgIHRoaXMuYWxlcnRzID0gdGhpcy5hbGVydHMuZmlsdGVyKHggPT4geCAhPT0gYWxlcnQpO1xyXG4gICAgfVxyXG5cclxuICAgIGNzc0ljb24oYWxlcnQ6IEFsZXJ0KSB7XHJcbiAgICAgICAgaWYgKCFhbGVydCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoYWxlcnQuaWNvbiAmJiBhbGVydC5pY29uLmxlbmd0aCA+IDApXHJcbiAgICAgICAgICAgIHJldHVybiBhbGVydC5pY29uO1xyXG5cclxuXHJcbiAgICAgICAgaWYgKCFhbGVydC50eXBlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN3aXRjaCAoYWxlcnQudHlwZSkge1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5TdWNjZXNzOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdmYXMgZmEtY2hlY2snO1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5EYW5nZXI6XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLldhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2ZhcyBmYS1leGNsYW1hdGlvbi10cmlhbmdsZSc7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLkluZm86XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2ZhcyBmYS1pbmZvLWNpcmNsZSc7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNzc0FsZXJ0KGFsZXJ0OiBBbGVydCkge1xyXG4gICAgICAgIGlmICghYWxlcnQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gcmV0dXJuIGNzcyBjbGFzcyBiYXNlZCBvbiBhbGVydCB0eXBlXHJcbiAgICAgICAgc3dpdGNoIChhbGVydC50eXBlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLlByaW1hcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LXByaW1hcnknO1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5TZWNvbmRhcnk6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LXNlY29uZGFyeSc7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLlN1Y2Nlc3M6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LXN1Y2Nlc3MnO1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5EYW5nZXI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LWRhbmdlcic7XHJcbiAgICAgICAgICAgIGNhc2UgQWxlcnRUeXBlLldhcm5pbmc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LXdhcm5pbmcnO1xyXG4gICAgICAgICAgICBjYXNlIEFsZXJ0VHlwZS5JbmZvOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdhbGVydC1pbmZvJztcclxuICAgICAgICAgICAgY2FzZSBBbGVydFR5cGUuTGlnaHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LWxpZ2h0JztcclxuICAgICAgICAgICAgY2FzZSBBbGVydFR5cGUuRGFyazpcclxuICAgICAgICAgICAgICAgIHJldHVybiAnYWxlcnQtZGFyayc7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2FsZXJ0LXNlY29uZGFyeSc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgKm5nRm9yPVwibGV0IGFsZXJ0IG9mIGFsZXJ0c1wiIGNsYXNzPVwiYWxlcnQge3sgY3NzQWxlcnQoYWxlcnQpIH19IGFsZXJ0LWRpc21pc3NpYmxlIGZhZGUgc2hvdyBtdC0zXCIgcm9sZT1cImFsZXJ0XCI+XHJcbiAgICA8YnV0dG9uIChjbGljayk9XCJyZW1vdmUoYWxlcnQpXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuLWNsb3NlXCIgYXJpYS1sYWJlbD1cIkNsb3NlXCI+PC9idXR0b24+XHJcbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBtZXNzYWdlIG9mIGFsZXJ0Lm1lc3NhZ2VzXCI+XHJcbiAgICAgICAgPGkgKm5nSWY9XCJjc3NJY29uKGFsZXJ0KVwiIGNsYXNzPVwie3sgY3NzSWNvbihhbGVydCkgfX1cIj48L2k+XHJcbiAgICAgICAge3ttZXNzYWdlfX1cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj4iXX0=
@@ -0,0 +1,25 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/router";
4
+ class AutoCompleteDirective {
5
+ constructor(el, router) {
6
+ this.el = el;
7
+ this.router = router;
8
+ }
9
+ ngAfterViewInit() {
10
+ if (this.router.url === '/login') {
11
+ return;
12
+ }
13
+ this.el.nativeElement.setAttribute('autocomplete', 'off');
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteDirective, deps: [{ token: i0.ElementRef }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Directive }); }
16
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: AutoCompleteDirective, selector: "form", ngImport: i0 }); }
17
+ }
18
+ export { AutoCompleteDirective };
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteDirective, decorators: [{
20
+ type: Directive,
21
+ args: [{
22
+ selector: 'form'
23
+ }]
24
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Router }]; } });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBRzFDLE1BR2EscUJBQXFCO0lBQzlCLFlBQTZCLEVBQWMsRUFBbUIsTUFBYztRQUEvQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQW1CLFdBQU0sR0FBTixNQUFNLENBQVE7SUFFNUUsQ0FBQztJQUNELGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUM5QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7OEdBVlEscUJBQXFCO2tHQUFyQixxQkFBcUI7O1NBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnZm9ybSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dG9Db21wbGV0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcikge1xyXG5cclxuICAgIH1cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICBpZiAodGhpcy5yb3V0ZXIudXJsID09PSAnL2xvZ2luJykgeyBcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnYXV0b2NvbXBsZXRlJywgJ29mZicpO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,23 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { AutoCompleteDirective } from './autocomplete.directive';
4
+ import * as i0 from "@angular/core";
5
+ class AutoCompleteModule {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteModule, declarations: [AutoCompleteDirective], imports: [CommonModule], exports: [AutoCompleteDirective] }); }
8
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteModule, imports: [CommonModule] }); }
9
+ }
10
+ export { AutoCompleteModule };
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AutoCompleteModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [
15
+ CommonModule
16
+ ],
17
+ declarations: [
18
+ AutoCompleteDirective,
19
+ ],
20
+ exports: [AutoCompleteDirective]
21
+ }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRWpFLE1BU2Esa0JBQWtCOzhHQUFsQixrQkFBa0I7K0dBQWxCLGtCQUFrQixpQkFKdkIscUJBQXFCLGFBSHJCLFlBQVksYUFLTixxQkFBcUI7K0dBRXRCLGtCQUFrQixZQVB2QixZQUFZOztTQU9QLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQVQ5QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3FCQUNmO29CQUNELFlBQVksRUFBRTt3QkFDVixxQkFBcUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBBdXRvQ29tcGxldGVEaXJlY3RpdmUgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS5kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGVcclxuICAgIF0sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtcclxuICAgICAgICBBdXRvQ29tcGxldGVEaXJlY3RpdmUsXHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW0F1dG9Db21wbGV0ZURpcmVjdGl2ZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dG9Db21wbGV0ZU1vZHVsZSB7IH0iXX0=
@@ -1,3 +1,3 @@
1
- export * from './autocomplete.module';
2
- export * from './autocomplete.directive';
1
+ export * from './autocomplete.module';
2
+ export * from './autocomplete.directive';
3
3
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL2F1dG9jb21wbGV0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9jb21wbGV0ZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2F1dG9jb21wbGV0ZS5kaXJlY3RpdmUnOyJdfQ==
@@ -0,0 +1,75 @@
1
+ import { Directive, EventEmitter, Input, Output } from "@angular/core";
2
+ import { CoreComponent } from "../../components";
3
+ import { Convert } from "../../utils";
4
+ import * as i0 from "@angular/core";
5
+ class ButtonBrowseModalBaseComponent extends CoreComponent {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.filter = {};
9
+ this._multiSelect = false;
10
+ this.onChoose = new EventEmitter();
11
+ this.onChooseAll = new EventEmitter();
12
+ }
13
+ get multiSelect() {
14
+ return this._multiSelect;
15
+ }
16
+ set multiSelect(v) {
17
+ this._multiSelect = Convert.toBooleanProperty(v);
18
+ }
19
+ choose(value) {
20
+ this.onChoose.emit(value);
21
+ }
22
+ chooseAll() {
23
+ this.onChooseAll.emit(this.filter);
24
+ }
25
+ onKeydown(e) {
26
+ e.preventDefault();
27
+ e.stopPropagation();
28
+ this.search();
29
+ }
30
+ bindData() { }
31
+ async refresh() {
32
+ try {
33
+ this.loading = true;
34
+ await this.bindData();
35
+ }
36
+ finally {
37
+ this.loading = false;
38
+ }
39
+ }
40
+ onPageChange(page) {
41
+ this.filter.page = page;
42
+ this.refresh();
43
+ }
44
+ onPageSizeChange(pageSize) {
45
+ this.filter.pageSize = pageSize;
46
+ this.onPageChange(1);
47
+ }
48
+ search() {
49
+ this.onPageChange(1);
50
+ }
51
+ reset() {
52
+ this.filter = {};
53
+ }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonBrowseModalBaseComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
55
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.1", type: ButtonBrowseModalBaseComponent, inputs: { type: "type", filter: "filter", data: "data", multiSelect: "multiSelect", value: "value" }, outputs: { onChoose: "onChoose", onChooseAll: "onChooseAll" }, usesInheritance: true, ngImport: i0 }); }
56
+ }
57
+ export { ButtonBrowseModalBaseComponent };
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonBrowseModalBaseComponent, decorators: [{
59
+ type: Directive
60
+ }], propDecorators: { type: [{
61
+ type: Input
62
+ }], filter: [{
63
+ type: Input
64
+ }], data: [{
65
+ type: Input
66
+ }], multiSelect: [{
67
+ type: Input
68
+ }], value: [{
69
+ type: Input
70
+ }], onChoose: [{
71
+ type: Output
72
+ }], onChooseAll: [{
73
+ type: Output
74
+ }] } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmItbW9kYWwtYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL2JiL2JiLW1vZGFsLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFnQixhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUV0QyxNQUNhLDhCQUErQixTQUFRLGFBQWE7SUFEakU7O1FBR2EsV0FBTSxHQUFRLEVBQUUsQ0FBQztRQUdsQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQVVuQixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs5QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FzQzlDO0lBcERHLElBQWMsV0FBVztRQUNyQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLENBQWU7UUFDM0IsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUtELE1BQU0sQ0FBQyxLQUFVO1FBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUdELFNBQVM7UUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxDQUFRO1FBQ2QsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVEsS0FBSyxDQUFDO0lBQ2QsS0FBSyxDQUFDLE9BQU87UUFDVCxJQUFJO1lBQ0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDekI7Z0JBQ087WUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN4QjtJQUVMLENBQUM7SUFDRCxZQUFZLENBQUMsSUFBWTtRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDOzhHQXpEUSw4QkFBOEI7a0dBQTlCLDhCQUE4Qjs7U0FBOUIsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBRDFDLFNBQVM7OEJBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR1EsV0FBVztzQkFBeEIsS0FBSztnQkFPRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFLRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIENvcmVDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBQYWdlZExpc3QgfSBmcm9tIFwiLi4vLi4vbW9kZWxzXCI7XHJcbmltcG9ydCB7IENvbnZlcnQgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQnJvd3NlTW9kYWxCYXNlQ29tcG9uZW50IGV4dGVuZHMgQ29yZUNvbXBvbmVudCB7XHJcbiAgICBASW5wdXQoKSB0eXBlPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIEBJbnB1dCgpIGZpbHRlcjogYW55ID0ge307XHJcbiAgICBASW5wdXQoKSBkYXRhPzogUGFnZWRMaXN0IHwgbnVsbDtcclxuXHJcbiAgICBwcml2YXRlIF9tdWx0aVNlbGVjdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgIGdldCBtdWx0aVNlbGVjdCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlTZWxlY3Q7XHJcbiAgICB9XHJcbiAgICBzZXQgbXVsdGlTZWxlY3QodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fbXVsdGlTZWxlY3QgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpIHZhbHVlOiBhbnk7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uQ2hvb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgY2hvb3NlKHZhbHVlOiBhbnkpIHtcclxuICAgICAgICB0aGlzLm9uQ2hvb3NlLmVtaXQodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkNob29zZUFsbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIGNob29zZUFsbCgpIHtcclxuICAgICAgICB0aGlzLm9uQ2hvb3NlQWxsLmVtaXQodGhpcy5maWx0ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uS2V5ZG93bihlOiBFdmVudCkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICAgIHRoaXMuc2VhcmNoKCk7XHJcbiAgICB9XHJcblxyXG4gICAgYmluZERhdGEoKSB7IH1cclxuICAgIGFzeW5jIHJlZnJlc2goKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy5iaW5kRGF0YSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaW5hbGx5IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIG9uUGFnZUNoYW5nZShwYWdlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmZpbHRlci5wYWdlID0gcGFnZTtcclxuICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgIH1cclxuICAgIG9uUGFnZVNpemVDaGFuZ2UocGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICAgICAgdGhpcy5vblBhZ2VDaGFuZ2UoMSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2VhcmNoKCkge1xyXG4gICAgICAgIHRoaXMub25QYWdlQ2hhbmdlKDEpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlc2V0KCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyID0ge307XHJcbiAgICB9XHJcbn0iXX0=
@@ -0,0 +1,45 @@
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import { Convert } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ class ButtonBrowseModalToolbarComponent {
6
+ constructor() {
7
+ this.onSearch = new EventEmitter();
8
+ this.onReset = new EventEmitter();
9
+ this._multiSelect = false;
10
+ this.onChooseAll = new EventEmitter();
11
+ }
12
+ search() {
13
+ this.onSearch.emit();
14
+ }
15
+ reset() {
16
+ this.onReset.emit();
17
+ }
18
+ get multiSelect() {
19
+ return this._multiSelect;
20
+ }
21
+ set multiSelect(v) {
22
+ this._multiSelect = Convert.toBooleanProperty(v);
23
+ }
24
+ chooseAll() {
25
+ if (!this.multiSelect)
26
+ return;
27
+ this.onChooseAll.emit();
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonBrowseModalToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: ButtonBrowseModalToolbarComponent, selector: "zek-bb-modal-toolbar", inputs: { multiSelect: "multiSelect" }, outputs: { onSearch: "onSearch", onReset: "onReset", onChooseAll: "onChooseAll" }, ngImport: i0, template: "<ng-content select=\"[left]\"></ng-content>\r\n<button type=\"button\" (click)=\"search()\" class=\"btn btn-primary me-2\" id=\"bb-filter-button\" title=\"Filter\">\r\n <i class=\"fa fa-filter\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button type=\"button\" (click)=\"reset()\" class=\"btn btn-secondary me-2\" title=\"Reset\">\r\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button *ngIf=\"multiSelect\" type=\"button\" (click)=\"chooseAll()\" class=\"btn btn-secondary me-2\" title=\"Choose All\">\r\n <i class=\"fas fa-hand-point-up\" aria-hidden=\"true\"></i>\r\n</button>\r\n<ng-content></ng-content>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
31
+ }
32
+ export { ButtonBrowseModalToolbarComponent };
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ButtonBrowseModalToolbarComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'zek-bb-modal-toolbar', template: "<ng-content select=\"[left]\"></ng-content>\r\n<button type=\"button\" (click)=\"search()\" class=\"btn btn-primary me-2\" id=\"bb-filter-button\" title=\"Filter\">\r\n <i class=\"fa fa-filter\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button type=\"button\" (click)=\"reset()\" class=\"btn btn-secondary me-2\" title=\"Reset\">\r\n <i class=\"fa fa-times\" aria-hidden=\"true\"></i>\r\n</button>\r\n<button *ngIf=\"multiSelect\" type=\"button\" (click)=\"chooseAll()\" class=\"btn btn-secondary me-2\" title=\"Choose All\">\r\n <i class=\"fas fa-hand-point-up\" aria-hidden=\"true\"></i>\r\n</button>\r\n<ng-content></ng-content>" }]
36
+ }], propDecorators: { onSearch: [{
37
+ type: Output
38
+ }], onReset: [{
39
+ type: Output
40
+ }], multiSelect: [{
41
+ type: Input
42
+ }], onChooseAll: [{
43
+ type: Output
44
+ }] } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmItbW9kYWwtdG9vbGJhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvYmIvYmItbW9kYWwtdG9vbGJhci50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvYmIvYmItbW9kYWwtdG9vbGJhci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBRXRDLE1BSWEsaUNBQWlDO0lBSjlDO1FBTWMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLOUIsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLL0IsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFRbkIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBVzlDO0lBNUJHLE1BQU07UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBR0QsSUFBYyxXQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMsQ0FBZTtRQUMzQixJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBR0QsU0FBUztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztZQUFFLE9BQU87UUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDOzhHQXhCUSxpQ0FBaUM7a0dBQWpDLGlDQUFpQyx1TENSOUMsbW9CQVV5Qjs7U0RGWixpQ0FBaUM7MkZBQWpDLGlDQUFpQztrQkFKN0MsU0FBUzsrQkFDSSxzQkFBc0I7OEJBS3RCLFFBQVE7c0JBQWpCLE1BQU07Z0JBS0csT0FBTztzQkFBaEIsTUFBTTtnQkFNTyxXQUFXO3NCQUF4QixLQUFLO2dCQU9JLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgQ29udmVydCB9IGZyb20gJy4uLy4uL3V0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstYmItbW9kYWwtdG9vbGJhcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmItbW9kYWwtdG9vbGJhci5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJ1dHRvbkJyb3dzZU1vZGFsVG9vbGJhckNvbXBvbmVudCB7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU2VhcmNoID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgc2VhcmNoKCkge1xyXG4gICAgICAgIHRoaXMub25TZWFyY2guZW1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSBvblJlc2V0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgICAgdGhpcy5vblJlc2V0LmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9tdWx0aVNlbGVjdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgIGdldCBtdWx0aVNlbGVjdCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlTZWxlY3Q7XHJcbiAgICB9XHJcbiAgICBzZXQgbXVsdGlTZWxlY3QodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fbXVsdGlTZWxlY3QgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkNob29zZUFsbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIGNob29zZUFsbCgpIHtcclxuICAgICAgICBpZiAoIXRoaXMubXVsdGlTZWxlY3QpIHJldHVybjtcclxuICAgICAgICB0aGlzLm9uQ2hvb3NlQWxsLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBAT3V0cHV0KClcclxuICAgIC8vIG9uQ3JlYXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgLy8gY3JlYXRlKCkge1xyXG4gICAgLy8gICAgIHRoaXMub25DcmVhdGUuZW1pdCgpO1xyXG4gICAgLy8gfVxyXG59IiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2xlZnRdXCI+PC9uZy1jb250ZW50PlxyXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic2VhcmNoKClcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtZS0yXCIgaWQ9XCJiYi1maWx0ZXItYnV0dG9uXCIgdGl0bGU9XCJGaWx0ZXJcIj5cclxuICAgIDxpIGNsYXNzPVwiZmEgZmEtZmlsdGVyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG48L2J1dHRvbj5cclxuPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInJlc2V0KClcIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IG1lLTJcIiB0aXRsZT1cIlJlc2V0XCI+XHJcbiAgICA8aSBjbGFzcz1cImZhIGZhLXRpbWVzXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG48L2J1dHRvbj5cclxuPGJ1dHRvbiAqbmdJZj1cIm11bHRpU2VsZWN0XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjaG9vc2VBbGwoKVwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgbWUtMlwiIHRpdGxlPVwiQ2hvb3NlIEFsbFwiPlxyXG4gICAgPGkgY2xhc3M9XCJmYXMgZmEtaGFuZC1wb2ludC11cFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cclxuPC9idXR0b24+XHJcbjxuZy1jb250ZW50PjwvbmctY29udGVudD4iXX0=