@resolveio/client-lib-core 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/esm2020/lib/account-manager.service.mjs +213 -0
  2. package/esm2020/lib/auth/auth-guard.service.mjs +137 -0
  3. package/esm2020/lib/auth/auth-permissions.service.mjs +24 -0
  4. package/esm2020/lib/auth/auth.service.mjs +241 -0
  5. package/esm2020/lib/auth/auth365.component.mjs +44 -0
  6. package/esm2020/lib/auth/can-deactivate-guard.service.mjs +13 -0
  7. package/esm2020/lib/auth/enroll.component.mjs +81 -0
  8. package/esm2020/lib/auth/forgot-password.component.mjs +82 -0
  9. package/esm2020/lib/core.component.mjs +488 -0
  10. package/esm2020/lib/core.module.mjs +179 -0
  11. package/esm2020/lib/core.service.mjs +96 -0
  12. package/esm2020/lib/directive/focus.mjs +22 -0
  13. package/esm2020/lib/directive/scroll.mjs +55 -0
  14. package/esm2020/lib/home/about-us.component.mjs +34 -0
  15. package/esm2020/lib/home/contact-us.component.mjs +57 -0
  16. package/esm2020/lib/home/demo.component.mjs +59 -0
  17. package/esm2020/lib/home/home.component.mjs +105 -0
  18. package/esm2020/lib/home/home.module.mjs +50 -0
  19. package/esm2020/lib/logger/logger.component.mjs +221 -0
  20. package/esm2020/lib/models/app-status.model.mjs +2 -0
  21. package/esm2020/lib/models/collection-document.model.mjs +2 -0
  22. package/esm2020/lib/models/cron-job.model.mjs +2 -0
  23. package/esm2020/lib/models/dialog.model.mjs +2 -0
  24. package/esm2020/lib/models/file.model.mjs +2 -0
  25. package/esm2020/lib/models/log-method-latency.model.mjs +2 -0
  26. package/esm2020/lib/models/navbar-main-tab.model.mjs +2 -0
  27. package/esm2020/lib/models/pagination.model.mjs +2 -0
  28. package/esm2020/lib/models/permission.model.mjs +2 -0
  29. package/esm2020/lib/models/select-data-label.model.mjs +2 -0
  30. package/esm2020/lib/models/subscription.model.mjs +2 -0
  31. package/esm2020/lib/models/support-ticket.model.mjs +2 -0
  32. package/esm2020/lib/models/user-group.model.mjs +2 -0
  33. package/esm2020/lib/models/user.model.mjs +2 -0
  34. package/esm2020/lib/offline-db.mjs +519 -0
  35. package/esm2020/lib/offline-manager.service.mjs +107 -0
  36. package/esm2020/lib/pipes/domsanitizor.pipe.mjs +28 -0
  37. package/esm2020/lib/pipes/filter.pipe.mjs +36 -0
  38. package/esm2020/lib/pipes/json-parse.pipe.mjs +29 -0
  39. package/esm2020/lib/pipes/minus-currency.pipe.mjs +16 -0
  40. package/esm2020/lib/pipes/phone.pipe.mjs +47 -0
  41. package/esm2020/lib/pipes/pipe.module.mjs +54 -0
  42. package/esm2020/lib/pipes/reverse-list.pipe.mjs +17 -0
  43. package/esm2020/lib/pipes/titlecase.pipe.mjs +22 -0
  44. package/esm2020/lib/resolveio-class.mjs +41 -0
  45. package/esm2020/lib/shared/shared.module.mjs +91 -0
  46. package/esm2020/lib/socket-manager.service.mjs +360 -0
  47. package/esm2020/lib/socket.service.mjs +129 -0
  48. package/esm2020/lib/standard-pages/contactus/contactus.component.mjs +45 -0
  49. package/esm2020/lib/standard-pages/faq/faq.component.mjs +45 -0
  50. package/esm2020/lib/standard-pages/features/features.component.mjs +23 -0
  51. package/esm2020/lib/standard-pages/home/home.component.mjs +38 -0
  52. package/esm2020/lib/standard-pages/howitwork/howitwork.component.mjs +23 -0
  53. package/esm2020/lib/standard-pages/loginsignup/loginsignup.component.mjs +23 -0
  54. package/esm2020/lib/standard-pages/pricing/pricing.component.mjs +37 -0
  55. package/esm2020/lib/standard-pages/standard-pages.module.mjs +69 -0
  56. package/esm2020/lib/support-ticket/detail/support-ticket-detail.component.mjs +204 -0
  57. package/esm2020/lib/support-ticket/edit/support-ticket-edit.component.mjs +122 -0
  58. package/esm2020/lib/support-ticket/list/support-ticket-list.component.mjs +137 -0
  59. package/esm2020/lib/support-ticket/new/support-ticket-new.component.mjs +115 -0
  60. package/esm2020/lib/support-ticket/support-ticket.component.mjs +63 -0
  61. package/esm2020/lib/support-ticket/support-ticket.module.mjs +57 -0
  62. package/esm2020/lib/support-ticket/support-ticket.routing.mjs +20 -0
  63. package/esm2020/lib/support-ticket/support-ticket.service.mjs +17 -0
  64. package/esm2020/lib/token-manager.service.mjs +24 -0
  65. package/esm2020/lib/user-settings/settings/users-settings.component.mjs +312 -0
  66. package/esm2020/lib/user-settings/user-settings.component.mjs +57 -0
  67. package/esm2020/lib/user-settings/user-settings.module.mjs +58 -0
  68. package/esm2020/lib/user-settings/user-settings.permission.mjs +10 -0
  69. package/esm2020/lib/user-settings/user-settings.routing.mjs +14 -0
  70. package/esm2020/lib/user-settings/user-settings.service.mjs +17 -0
  71. package/esm2020/lib/util/action-name.helper.mjs +9 -0
  72. package/esm2020/lib/util/aws.service.mjs +79 -0
  73. package/esm2020/lib/util/common.helper.mjs +140 -0
  74. package/esm2020/lib/util/validation.service.mjs +177 -0
  75. package/esm2020/lib/util/window-resize.service.mjs +24 -0
  76. package/esm2020/lib/util/window.service.mjs +16 -0
  77. package/esm2020/lib/widgets/alert/alert.model.mjs +2 -0
  78. package/esm2020/lib/widgets/alert/alert.service.mjs +76 -0
  79. package/esm2020/lib/widgets/chartjs/chart.component.mjs +86 -0
  80. package/esm2020/lib/widgets/chartjs/chart.module.mjs +17 -0
  81. package/esm2020/lib/widgets/collapse-table/collapse-table.component.mjs +79 -0
  82. package/esm2020/lib/widgets/collapse-table/collapse-table.module.mjs +36 -0
  83. package/esm2020/lib/widgets/data-table/data-table.component.mjs +77 -0
  84. package/esm2020/lib/widgets/data-table/data-table.model.mjs +2 -0
  85. package/esm2020/lib/widgets/data-table/data-table.module.mjs +43 -0
  86. package/esm2020/lib/widgets/date-shortcut/date-shortcut.component.mjs +195 -0
  87. package/esm2020/lib/widgets/date-shortcut/date-shortcut.module.mjs +34 -0
  88. package/esm2020/lib/widgets/dialog/dialog.confirm.content.mjs +63 -0
  89. package/esm2020/lib/widgets/dialog/dialog.error.content.mjs +57 -0
  90. package/esm2020/lib/widgets/dialog/dialog.input.content.mjs +197 -0
  91. package/esm2020/lib/widgets/dialog/dialog.login.content.mjs +348 -0
  92. package/esm2020/lib/widgets/dialog/dialog.notify.content.mjs +57 -0
  93. package/esm2020/lib/widgets/dialog/dialog.register.content.mjs +330 -0
  94. package/esm2020/lib/widgets/dialog/dialog.select-data-labels.content.mjs +191 -0
  95. package/esm2020/lib/widgets/dialog/dialog.select-datetime.content.mjs +140 -0
  96. package/esm2020/lib/widgets/dialog/dialog.service.mjs +71 -0
  97. package/esm2020/lib/widgets/file/file-upload.component.mjs +440 -0
  98. package/esm2020/lib/widgets/file/file-upload.module.mjs +50 -0
  99. package/esm2020/lib/widgets/form-button/form-button.component.mjs +91 -0
  100. package/esm2020/lib/widgets/form-button/form-button.module.mjs +30 -0
  101. package/esm2020/lib/widgets/navbar-main/navbar-main.component.mjs +209 -0
  102. package/esm2020/lib/widgets/navbar-module/navbar-module.component.mjs +138 -0
  103. package/esm2020/lib/widgets/navbar-module/navbar-module.model.mjs +2 -0
  104. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/ng-bootstrap-tour.service.mjs +14 -0
  105. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/ng-bootstrap.module.mjs +34 -0
  106. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/step-option.interface.mjs +2 -0
  107. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/tour-anchor.directive.mjs +76 -0
  108. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/tour-step-template.component.mjs +70 -0
  109. package/esm2020/lib/widgets/ngx-tour-ng-bootstrap/tour-step-template.service.mjs +10 -0
  110. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.component.mjs +38 -0
  111. package/esm2020/lib/widgets/responsive-button-group/responsive-button-group.module.mjs +26 -0
  112. package/esm2020/lib/widgets/scheduler/scheduler.component.mjs +185 -0
  113. package/esm2020/lib/widgets/scheduler/scheduler.module.mjs +39 -0
  114. package/esm2020/lib/widgets/sort-table/sort-table-header.component.mjs +67 -0
  115. package/esm2020/lib/widgets/sort-table/sort-table-ngfor.component.mjs +48 -0
  116. package/esm2020/lib/widgets/sort-table/sort-table.directive.mjs +174 -0
  117. package/esm2020/lib/widgets/sort-table/sort-table.module.mjs +40 -0
  118. package/esm2020/lib/widgets/user-role/user-role.component.mjs +27 -0
  119. package/esm2020/lib/widgets/user-role/user-role.module.mjs +26 -0
  120. package/esm2020/public_api.mjs +109 -0
  121. package/esm2020/resolveio-client-lib-core.mjs +5 -0
  122. package/fesm2015/resolveio-client-lib-core.mjs +8856 -0
  123. package/fesm2015/resolveio-client-lib-core.mjs.map +1 -0
  124. package/fesm2020/resolveio-client-lib-core.mjs +8849 -0
  125. package/fesm2020/resolveio-client-lib-core.mjs.map +1 -0
  126. package/lib/account-manager.service.d.ts +42 -0
  127. package/lib/auth/auth-guard.service.d.ts +25 -0
  128. package/lib/auth/auth-permissions.service.d.ts +10 -0
  129. package/lib/auth/auth.service.d.ts +29 -0
  130. package/lib/auth/auth365.component.d.ts +20 -0
  131. package/lib/auth/can-deactivate-guard.service.d.ts +11 -0
  132. package/lib/auth/enroll.component.d.ts +28 -0
  133. package/lib/auth/forgot-password.component.d.ts +28 -0
  134. package/lib/core.component.d.ts +69 -0
  135. package/lib/core.module.d.ts +32 -0
  136. package/lib/core.service.d.ts +53 -0
  137. package/lib/directive/focus.d.ts +10 -0
  138. package/lib/directive/scroll.d.ts +20 -0
  139. package/lib/home/about-us.component.d.ts +15 -0
  140. package/lib/home/contact-us.component.d.ts +20 -0
  141. package/lib/home/demo.component.d.ts +25 -0
  142. package/lib/home/home.component.d.ts +33 -0
  143. package/lib/home/home.module.d.ts +13 -0
  144. package/lib/logger/logger.component.d.ts +37 -0
  145. package/lib/models/app-status.model.d.ts +4 -0
  146. package/lib/models/collection-document.model.d.ts +6 -0
  147. package/lib/models/cron-job.model.d.ts +13 -0
  148. package/lib/models/dialog.model.d.ts +18 -0
  149. package/lib/models/file.model.d.ts +9 -0
  150. package/lib/models/log-method-latency.model.d.ts +7 -0
  151. package/lib/models/navbar-main-tab.model.d.ts +14 -0
  152. package/lib/models/pagination.model.d.ts +17 -0
  153. package/lib/models/permission.model.d.ts +13 -0
  154. package/lib/models/select-data-label.model.d.ts +9 -0
  155. package/lib/models/subscription.model.d.ts +19 -0
  156. package/lib/models/support-ticket.model.d.ts +71 -0
  157. package/lib/models/user-group.model.d.ts +19 -0
  158. package/lib/models/user.model.d.ts +70 -0
  159. package/lib/offline-db.d.ts +28 -0
  160. package/lib/offline-manager.service.d.ts +23 -0
  161. package/lib/pipes/domsanitizor.pipe.d.ts +10 -0
  162. package/lib/pipes/filter.pipe.d.ts +12 -0
  163. package/lib/pipes/json-parse.pipe.d.ts +7 -0
  164. package/lib/pipes/minus-currency.pipe.d.ts +7 -0
  165. package/lib/pipes/phone.pipe.d.ts +7 -0
  166. package/lib/pipes/pipe.module.d.ts +13 -0
  167. package/lib/pipes/reverse-list.pipe.d.ts +6 -0
  168. package/lib/pipes/titlecase.pipe.d.ts +7 -0
  169. package/lib/resolveio-class.d.ts +26 -0
  170. package/lib/shared/shared.module.d.ts +16 -0
  171. package/lib/socket-manager.service.d.ts +33 -0
  172. package/lib/socket.service.d.ts +33 -0
  173. package/lib/standard-pages/contactus/contactus.component.d.ts +17 -0
  174. package/lib/standard-pages/faq/faq.component.d.ts +17 -0
  175. package/lib/standard-pages/features/features.component.d.ts +12 -0
  176. package/lib/standard-pages/home/home.component.d.ts +14 -0
  177. package/lib/standard-pages/howitwork/howitwork.component.d.ts +12 -0
  178. package/lib/standard-pages/loginsignup/loginsignup.component.d.ts +12 -0
  179. package/lib/standard-pages/pricing/pricing.component.d.ts +14 -0
  180. package/lib/standard-pages/standard-pages.module.d.ts +17 -0
  181. package/lib/support-ticket/detail/support-ticket-detail.component.d.ts +32 -0
  182. package/lib/support-ticket/edit/support-ticket-edit.component.d.ts +30 -0
  183. package/lib/support-ticket/list/support-ticket-list.component.d.ts +26 -0
  184. package/lib/support-ticket/new/support-ticket-new.component.d.ts +26 -0
  185. package/lib/support-ticket/support-ticket.component.d.ts +20 -0
  186. package/lib/support-ticket/support-ticket.module.d.ts +16 -0
  187. package/lib/support-ticket/support-ticket.routing.d.ts +3 -0
  188. package/lib/support-ticket/support-ticket.service.d.ts +9 -0
  189. package/lib/token-manager.service.d.ts +11 -0
  190. package/lib/user-settings/settings/users-settings.component.d.ts +57 -0
  191. package/lib/user-settings/user-settings.component.d.ts +20 -0
  192. package/lib/user-settings/user-settings.module.d.ts +15 -0
  193. package/lib/user-settings/user-settings.permission.d.ts +2 -0
  194. package/lib/user-settings/user-settings.routing.d.ts +3 -0
  195. package/lib/user-settings/user-settings.service.d.ts +9 -0
  196. package/lib/util/action-name.helper.d.ts +1 -0
  197. package/lib/util/aws.service.d.ts +16 -0
  198. package/lib/util/common.helper.d.ts +12 -0
  199. package/lib/util/validation.service.d.ts +85 -0
  200. package/lib/util/window-resize.service.d.ts +12 -0
  201. package/lib/util/window.service.d.ts +6 -0
  202. package/lib/widgets/alert/alert.model.d.ts +1 -0
  203. package/lib/widgets/alert/alert.service.d.ts +11 -0
  204. package/lib/widgets/chartjs/chart.component.d.ts +22 -0
  205. package/lib/widgets/chartjs/chart.module.d.ts +8 -0
  206. package/lib/widgets/collapse-table/collapse-table.component.d.ts +23 -0
  207. package/lib/widgets/collapse-table/collapse-table.module.d.ts +9 -0
  208. package/lib/widgets/data-table/data-table.component.d.ts +23 -0
  209. package/lib/widgets/data-table/data-table.model.d.ts +13 -0
  210. package/lib/widgets/data-table/data-table.module.d.ts +12 -0
  211. package/lib/widgets/date-shortcut/date-shortcut.component.d.ts +20 -0
  212. package/lib/widgets/date-shortcut/date-shortcut.module.d.ts +10 -0
  213. package/lib/widgets/dialog/dialog.confirm.content.d.ts +12 -0
  214. package/lib/widgets/dialog/dialog.error.content.d.ts +11 -0
  215. package/lib/widgets/dialog/dialog.input.content.d.ts +18 -0
  216. package/lib/widgets/dialog/dialog.login.content.d.ts +16 -0
  217. package/lib/widgets/dialog/dialog.notify.content.d.ts +11 -0
  218. package/lib/widgets/dialog/dialog.register.content.d.ts +13 -0
  219. package/lib/widgets/dialog/dialog.select-data-labels.content.d.ts +22 -0
  220. package/lib/widgets/dialog/dialog.select-datetime.content.d.ts +16 -0
  221. package/lib/widgets/dialog/dialog.service.d.ts +18 -0
  222. package/lib/widgets/file/file-upload.component.d.ts +49 -0
  223. package/lib/widgets/file/file-upload.module.d.ts +14 -0
  224. package/lib/widgets/form-button/form-button.component.d.ts +14 -0
  225. package/lib/widgets/form-button/form-button.module.d.ts +9 -0
  226. package/lib/widgets/navbar-main/navbar-main.component.d.ts +52 -0
  227. package/lib/widgets/navbar-module/navbar-module.component.d.ts +24 -0
  228. package/lib/widgets/navbar-module/navbar-module.model.d.ts +13 -0
  229. package/lib/widgets/ngx-tour-ng-bootstrap/ng-bootstrap-tour.service.d.ts +7 -0
  230. package/lib/widgets/ngx-tour-ng-bootstrap/ng-bootstrap.module.d.ts +17 -0
  231. package/lib/widgets/ngx-tour-ng-bootstrap/step-option.interface.d.ts +5 -0
  232. package/lib/widgets/ngx-tour-ng-bootstrap/tour-anchor.directive.d.ts +26 -0
  233. package/lib/widgets/ngx-tour-ng-bootstrap/tour-step-template.component.d.ts +20 -0
  234. package/lib/widgets/ngx-tour-ng-bootstrap/tour-step-template.service.d.ts +9 -0
  235. package/lib/widgets/responsive-button-group/responsive-button-group.component.d.ts +17 -0
  236. package/lib/widgets/responsive-button-group/responsive-button-group.module.d.ts +8 -0
  237. package/lib/widgets/scheduler/scheduler.component.d.ts +50 -0
  238. package/lib/widgets/scheduler/scheduler.module.d.ts +11 -0
  239. package/lib/widgets/sort-table/sort-table-header.component.d.ts +23 -0
  240. package/lib/widgets/sort-table/sort-table-ngfor.component.d.ts +17 -0
  241. package/lib/widgets/sort-table/sort-table.directive.d.ts +48 -0
  242. package/lib/widgets/sort-table/sort-table.module.d.ts +11 -0
  243. package/lib/widgets/user-role/user-role.component.d.ts +10 -0
  244. package/lib/widgets/user-role/user-role.module.d.ts +8 -0
  245. package/package.json +72 -0
  246. package/public_api.d.ts +105 -0
  247. package/resolveio-client-lib-core.d.ts +5 -0
  248. package/src/assets/css/font-awesome.css +2338 -0
  249. package/src/assets/css/home-page-layout.css +7221 -0
  250. package/src/assets/css/home-page-theme.css +1157 -0
  251. package/src/assets/css/leaflet.css +629 -0
  252. package/src/assets/css/owl.carousel.min.css +1 -0
  253. package/src/assets/css/owl.theme.min.css +1 -0
  254. package/src/assets/css/style.css +1283 -0
  255. package/src/assets/css/tablet.css +18 -0
  256. package/src/assets/css/toastr.css +192 -0
  257. package/src/assets/images/ResolveIO.png +0 -0
  258. package/src/assets/images/ResolveIO_white.png +0 -0
  259. package/src/assets/images/contactus/Contact_bnr.jpg +0 -0
  260. package/src/assets/images/contactus/cont-comp.png +0 -0
  261. package/src/assets/images/contactus/cont-mail.png +0 -0
  262. package/src/assets/images/contactus/cont-phone.png +0 -0
  263. package/src/assets/images/contactus/form-img.png +0 -0
  264. package/src/assets/images/contactus/user.png +0 -0
  265. package/src/assets/images/faq/Faq-form.png +0 -0
  266. package/src/assets/images/faq/clientlogo1.jpg +0 -0
  267. package/src/assets/images/faq/clientlogo2.jpg +0 -0
  268. package/src/assets/images/faq/clientlogo3.jpg +0 -0
  269. package/src/assets/images/faq/clientlogo4.jpg +0 -0
  270. package/src/assets/images/faq/clientlogo5.jpg +0 -0
  271. package/src/assets/images/faq/faq_banner copy.jpg +0 -0
  272. package/src/assets/images/faq/faq_banner.jpg +0 -0
  273. package/src/assets/images/faq/faqwomen.jpg +0 -0
  274. package/src/assets/images/faq/mail-input.png +0 -0
  275. package/src/assets/images/faq/user-input.png +0 -0
  276. package/src/assets/images/favicon-32x32.png +0 -0
  277. package/src/assets/images/features/future-bnr.jpg +0 -0
  278. package/src/assets/images/features/polygon.png +0 -0
  279. package/src/assets/images/home/banner-1.jpg +0 -0
  280. package/src/assets/images/home/booking.png +0 -0
  281. package/src/assets/images/home/client.jpg +0 -0
  282. package/src/assets/images/home/client2.jpg +0 -0
  283. package/src/assets/images/home/clientlogo1.jpg +0 -0
  284. package/src/assets/images/home/clientlogo2.jpg +0 -0
  285. package/src/assets/images/home/clientlogo3.jpg +0 -0
  286. package/src/assets/images/home/clientlogo4.jpg +0 -0
  287. package/src/assets/images/home/clientlogo5.jpg +0 -0
  288. package/src/assets/images/home/easy_invoicing.png +0 -0
  289. package/src/assets/images/home/inventory.png +0 -0
  290. package/src/assets/images/home/manage.png +0 -0
  291. package/src/assets/images/home/more.png +0 -0
  292. package/src/assets/images/home/order_management.png +0 -0
  293. package/src/assets/images/home/plan.png +0 -0
  294. package/src/assets/images/home-page/AjaxLoader.gif +0 -0
  295. package/src/assets/images/home-page/ResolveIO_white.png +0 -0
  296. package/src/assets/images/home-page/abt_thumb.png +0 -0
  297. package/src/assets/images/home-page/aero_icon_right_white.png +0 -0
  298. package/src/assets/images/home-page/arrow_btn.png +0 -0
  299. package/src/assets/images/home-page/banner_thumb.png +0 -0
  300. package/src/assets/images/home-page/blank.gif +0 -0
  301. package/src/assets/images/home-page/close_icon.png +0 -0
  302. package/src/assets/images/home-page/contact_bg.jpg +0 -0
  303. package/src/assets/images/home-page/email_icon.png +0 -0
  304. package/src/assets/images/home-page/fancybox_loading.gif +0 -0
  305. package/src/assets/images/home-page/fancybox_loading@2x.gif +0 -0
  306. package/src/assets/images/home-page/fancybox_overlay.png +0 -0
  307. package/src/assets/images/home-page/fancybox_sprite.png +0 -0
  308. package/src/assets/images/home-page/fancybox_sprite@2x.png +0 -0
  309. package/src/assets/images/home-page/header_center_after.png +0 -0
  310. package/src/assets/images/home-page/header_left_after.png +0 -0
  311. package/src/assets/images/home-page/home_banner_1.jpg +0 -0
  312. package/src/assets/images/home-page/logo.png +0 -0
  313. package/src/assets/images/home-page/logo_thumb_ace.png +0 -0
  314. package/src/assets/images/home-page/logo_thumb_acquire.png +0 -0
  315. package/src/assets/images/home-page/logo_thumb_chemtech.jpeg +0 -0
  316. package/src/assets/images/home-page/logo_thumb_cherokee.png +0 -0
  317. package/src/assets/images/home-page/logo_thumb_coilchem.png +0 -0
  318. package/src/assets/images/home-page/logo_thumb_dcs.png +0 -0
  319. package/src/assets/images/home-page/logo_thumb_integrity.png +0 -0
  320. package/src/assets/images/home-page/logo_thumb_intrepid.png +0 -0
  321. package/src/assets/images/home-page/logo_thumb_omt.png +0 -0
  322. package/src/assets/images/home-page/logo_thumb_quantum.png +0 -0
  323. package/src/assets/images/home-page/logo_thumb_smartchemical.png +0 -0
  324. package/src/assets/images/home-page/logo_thumb_terra.png +0 -0
  325. package/src/assets/images/home-page/logo_thumb_truechem.png +0 -0
  326. package/src/assets/images/home-page/password_icon.png +0 -0
  327. package/src/assets/images/home-page/phone_icon.png +0 -0
  328. package/src/assets/images/home-page/software_icon_1.png +0 -0
  329. package/src/assets/images/home-page/software_icon_2.png +0 -0
  330. package/src/assets/images/home-page/software_sec_bg.jpg +0 -0
  331. package/src/assets/images/home-page/software_thumb.png +0 -0
  332. package/src/assets/images/home-page/white_arrow_btn.png +0 -0
  333. package/src/assets/images/howitwork/add-booking.png +0 -0
  334. package/src/assets/images/howitwork/add-order.png +0 -0
  335. package/src/assets/images/howitwork/add-stuff.png +0 -0
  336. package/src/assets/images/howitwork/how_banner.jpg +0 -0
  337. package/src/assets/images/howitwork/howimg1.png +0 -0
  338. package/src/assets/images/howitwork/howimg2.png +0 -0
  339. package/src/assets/images/howitwork/step-check.png +0 -0
  340. package/src/assets/images/loginsignup/formimg.jpg +0 -0
  341. package/src/assets/images/loginsignup/login-logo.png +0 -0
  342. package/src/assets/images/owl.video.play.png +0 -0
  343. package/src/assets/images/pricing/Pricing_banner.jpg +0 -0
  344. package/src/assets/images/pricing/clientlogo1.jpg +0 -0
  345. package/src/assets/images/pricing/clientlogo2.jpg +0 -0
  346. package/src/assets/images/pricing/clientlogo3.jpg +0 -0
  347. package/src/assets/images/pricing/clientlogo4.jpg +0 -0
  348. package/src/assets/images/pricing/clientlogo5.jpg +0 -0
  349. package/src/assets/images/pricing/info-ico.png +0 -0
  350. package/src/assets/scss/toastr.scss +201 -0
@@ -0,0 +1,50 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { HomeComponent } from './home.component';
3
+ import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
4
+ import { SharedModule } from '../shared/shared.module';
5
+ import { AboutUsComponent } from './about-us.component';
6
+ import { ContactUsComponent } from './contact-us.component';
7
+ import { DemoComponent } from './demo.component';
8
+ import { CommonModule } from '@angular/common';
9
+ import * as i0 from "@angular/core";
10
+ export class HomeModule {
11
+ }
12
+ HomeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HomeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ HomeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HomeModule, declarations: [HomeComponent,
14
+ AboutUsComponent,
15
+ ContactUsComponent,
16
+ DemoComponent], imports: [CommonModule,
17
+ SharedModule,
18
+ NgbModule], exports: [HomeComponent,
19
+ AboutUsComponent,
20
+ ContactUsComponent,
21
+ DemoComponent] });
22
+ HomeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HomeModule, providers: [], imports: [[
23
+ CommonModule,
24
+ SharedModule,
25
+ NgbModule
26
+ ]] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: HomeModule, decorators: [{
28
+ type: NgModule,
29
+ args: [{
30
+ imports: [
31
+ CommonModule,
32
+ SharedModule,
33
+ NgbModule
34
+ ],
35
+ exports: [
36
+ HomeComponent,
37
+ AboutUsComponent,
38
+ ContactUsComponent,
39
+ DemoComponent
40
+ ],
41
+ declarations: [
42
+ HomeComponent,
43
+ AboutUsComponent,
44
+ ContactUsComponent,
45
+ DemoComponent
46
+ ],
47
+ providers: []
48
+ }]
49
+ }] });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvaG9tZS9ob21lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBdUIvQyxNQUFNLE9BQU8sVUFBVTs7dUdBQVYsVUFBVTt3R0FBVixVQUFVLGlCQVJyQixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGtCQUFrQjtRQUNsQixhQUFhLGFBZGIsWUFBWTtRQUNaLFlBQVk7UUFDWixTQUFTLGFBR1QsYUFBYTtRQUNiLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDbEIsYUFBYTt3R0FXRixVQUFVLGFBSFgsRUFDVixZQWxCUTtZQUNSLFlBQVk7WUFDWixZQUFZO1lBQ1osU0FBUztTQUNUOzJGQWdCVyxVQUFVO2tCQXJCdEIsUUFBUTttQkFBQztvQkFDVCxPQUFPLEVBQUU7d0JBQ1IsWUFBWTt3QkFDWixZQUFZO3dCQUNaLFNBQVM7cUJBQ1Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNSLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGFBQWE7cUJBQ2I7b0JBQ0QsWUFBWSxFQUFFO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGFBQWE7cUJBQ2I7b0JBQ0QsU0FBUyxFQUFFLEVBQ1Y7aUJBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSG9tZUNvbXBvbmVudCB9IGZyb20gJy4vaG9tZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdiTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnLi4vc2hhcmVkL3NoYXJlZC5tb2R1bGUnO1xuaW1wb3J0IHsgQWJvdXRVc0NvbXBvbmVudCB9IGZyb20gJy4vYWJvdXQtdXMuY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRhY3RVc0NvbXBvbmVudCB9IGZyb20gJy4vY29udGFjdC11cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGVtb0NvbXBvbmVudCB9IGZyb20gJy4vZGVtby5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogW1xuXHRcdENvbW1vbk1vZHVsZSxcblx0XHRTaGFyZWRNb2R1bGUsXG5cdFx0TmdiTW9kdWxlXG5cdF0sXG5cdGV4cG9ydHM6IFtcblx0XHRIb21lQ29tcG9uZW50LFxuXHRcdEFib3V0VXNDb21wb25lbnQsXG5cdFx0Q29udGFjdFVzQ29tcG9uZW50LFxuXHRcdERlbW9Db21wb25lbnRcblx0XSxcblx0ZGVjbGFyYXRpb25zOiBbIFxuXHRcdEhvbWVDb21wb25lbnQsXG5cdFx0QWJvdXRVc0NvbXBvbmVudCxcblx0XHRDb250YWN0VXNDb21wb25lbnQsXG5cdFx0RGVtb0NvbXBvbmVudFxuXHRdLFxuXHRwcm92aWRlcnM6IFtcblx0XVxufSlcbmV4cG9ydCBjbGFzcyBIb21lTW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,221 @@
1
+ import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
2
+ import { ProviderService, BaseComponent } from '../resolveio-class';
3
+ import * as moment_ from 'moment';
4
+ import { DialogService } from '../widgets/dialog/dialog.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../resolveio-class";
7
+ import * as i2 from "../widgets/dialog/dialog.service";
8
+ import * as i3 from "../widgets/responsive-button-group/responsive-button-group.component";
9
+ import * as i4 from "@ng-select/ng-select";
10
+ import * as i5 from "@ng-bootstrap/ng-bootstrap";
11
+ import * as i6 from "@angular/common";
12
+ import * as i7 from "@angular/forms";
13
+ import * as i8 from "../pipes/json-parse.pipe";
14
+ const moment = moment_;
15
+ export class LoggerComponent extends BaseComponent {
16
+ constructor(_services, _ds, _cd) {
17
+ super(_services);
18
+ this._services = _services;
19
+ this._ds = _ds;
20
+ this._cd = _cd;
21
+ this.subscription$ = [];
22
+ this.logs = [];
23
+ this.entries_per_page = 25;
24
+ this.page_num = 1;
25
+ this.log_cnt = 0;
26
+ this.user = null;
27
+ this.users = [];
28
+ this.selectedTypes = [];
29
+ this.collection = '';
30
+ this.method = '';
31
+ this.route = '';
32
+ this.id_document = '';
33
+ }
34
+ ngOnInit() {
35
+ if (!this._services._account.getUser().roles.super_admin) {
36
+ this._services._router.navigateByUrl('/home');
37
+ }
38
+ this.subscription$.push(this._services._socket.subscribe('allUsers').subscribe(users => {
39
+ this.users = users;
40
+ this._cd.detectChanges();
41
+ }));
42
+ let jsDateStart = new Date();
43
+ jsDateStart.setHours(0, 0, 0, 0);
44
+ let date_start = new Date(moment(jsDateStart).subtract(10, 'days').toDate());
45
+ this.dateStartElem = { year: date_start.getFullYear(), month: date_start.getMonth() + 1, day: date_start.getDate() };
46
+ this.timeStartElem = { hour: 0, minute: 0, second: 0 };
47
+ let jsDateEnd = new Date();
48
+ jsDateEnd.setHours(23, 59, 59, 999);
49
+ let date_end = jsDateEnd;
50
+ this.dateEndElem = { year: date_end.getFullYear(), month: date_end.getMonth() + 1, day: date_end.getDate() };
51
+ this.timeEndElem = { hour: 23, minute: 59, second: 59 };
52
+ this.getLogData();
53
+ }
54
+ ngOnDestroy() {
55
+ this.subscription$.forEach(sub => {
56
+ sub.unsubscribe();
57
+ });
58
+ }
59
+ getLogData() {
60
+ this.dateStart = new Date(this.dateStartElem.year, this.dateStartElem.month - 1, this.dateStartElem.day, this.timeStartElem.hour, this.timeStartElem.minute, this.timeStartElem.second, 0);
61
+ this.dateEnd = new Date(this.dateEndElem.year, this.dateEndElem.month - 1, this.dateEndElem.day, this.timeEndElem.hour, this.timeEndElem.minute, this.timeEndElem.second, 999);
62
+ let query = {
63
+ $and: [
64
+ { createdAt: { $gte: this.dateStart } },
65
+ { createdAt: { $lte: this.dateEnd } }
66
+ ]
67
+ };
68
+ if (!this.selectedTypes.length) {
69
+ return;
70
+ }
71
+ else {
72
+ query.$and.push({ type: { $in: this.selectedTypes } });
73
+ }
74
+ if (this.collection) {
75
+ if (this.collection.includes(',')) {
76
+ let collections = this.collection.split(',').map(a => a.trim()).filter(a => !a.startsWith('!'));
77
+ if (collections.length) {
78
+ query.$and.push({ collection: { $in: collections } });
79
+ }
80
+ let notCollections = this.collection.split(',').map(a => a.trim()).filter(a => a.startsWith('!'));
81
+ notCollections.forEach(not => {
82
+ query.$and.push({ collection: { $ne: not.replace('!', '') } });
83
+ });
84
+ }
85
+ else {
86
+ if (this.collection.startsWith('!')) {
87
+ query.$and.push({ collection: { $ne: this.collection.replace('!', '').trim() } });
88
+ }
89
+ else {
90
+ query.$and.push({ collection: this.collection.trim() });
91
+ }
92
+ }
93
+ }
94
+ if (this.method) {
95
+ if (this.method.includes(',')) {
96
+ let methods = this.method.split(',').map(a => a.trim()).filter(a => !a.startsWith('!'));
97
+ if (methods.length) {
98
+ query.$and.push({ method: { $in: methods } });
99
+ }
100
+ let notMethods = this.method.split(',').map(a => a.trim()).filter(a => a.startsWith('!'));
101
+ notMethods.forEach(not => {
102
+ query.$and.push({ method: { $ne: not.replace('!', '') } });
103
+ });
104
+ }
105
+ else {
106
+ if (this.method.startsWith('!')) {
107
+ query.$and.push({ method: { $ne: this.method.replace('!', '').trim() } });
108
+ }
109
+ else {
110
+ query.$and.push({ method: this.method.trim() });
111
+ }
112
+ }
113
+ }
114
+ if (this.route) {
115
+ if (this.route.includes(',')) {
116
+ let routes = this.route.split(',').map(a => a.trim()).filter(a => !a.startsWith('!'));
117
+ if (routes.length) {
118
+ query.$and.push({ route: { $in: routes } });
119
+ }
120
+ let notRoutes = this.route.split(',').map(a => a.trim()).filter(a => a.startsWith('!'));
121
+ notRoutes.forEach(not => {
122
+ query.$and.push({ route: { $ne: not.replace('!', '') } });
123
+ });
124
+ }
125
+ else {
126
+ if (this.route.startsWith('!')) {
127
+ query.$and.push({ route: { $ne: this.route.replace('!', '').trim() } });
128
+ }
129
+ else {
130
+ query.$and.push({ route: this.route.trim() });
131
+ }
132
+ }
133
+ }
134
+ if (this.id_document) {
135
+ if (this.id_document.includes(',')) {
136
+ let id_documents = this.id_document.split(',').map(a => a.trim()).filter(a => !a.startsWith('!'));
137
+ if (id_documents.length) {
138
+ query.$and.push({ id_document: { $in: id_documents } });
139
+ }
140
+ let notIds = this.id_document.split(',').map(a => a.trim()).filter(a => a.startsWith('!'));
141
+ notIds.forEach(not => {
142
+ query.$and.push({ id_document: { $ne: not.replace('!', '') } });
143
+ });
144
+ }
145
+ else {
146
+ if (this.id_document.startsWith('!')) {
147
+ query.$and.push({ id_document: { $ne: this.id_document.replace('!', '').trim() } });
148
+ }
149
+ else {
150
+ query.$and.push({ id_document: this.id_document.trim() });
151
+ }
152
+ }
153
+ }
154
+ if (this.user) {
155
+ query.$and.push({ user: this.user });
156
+ }
157
+ if (typeof (this.entries_per_page) === 'string') {
158
+ this.entries_per_page = parseInt(this.entries_per_page);
159
+ }
160
+ this._services._socket.call('findWithOptions', 'logs', query, { sort: { createdAt: -1 }, limit: this.entries_per_page, skip: this.entries_per_page * (this.page_num - 1) }, (err, res) => {
161
+ this.logs = res;
162
+ this._cd.detectChanges();
163
+ });
164
+ this._services._socket.call('countCollectionWithQuery', 'logs', query, (err, res) => {
165
+ this.log_cnt = res;
166
+ this._cd.detectChanges();
167
+ });
168
+ this._cd.detectChanges();
169
+ }
170
+ selectType(type) {
171
+ if (type !== 'all') {
172
+ if (this.selectedTypes.includes(type)) {
173
+ this.selectedTypes.splice(this.selectedTypes.indexOf(type), 1);
174
+ }
175
+ else {
176
+ this.selectedTypes.push(type);
177
+ }
178
+ }
179
+ else {
180
+ if (this.selectedTypes.length === 7) {
181
+ this.selectedTypes = [];
182
+ }
183
+ else {
184
+ this.selectedTypes = ['error', 'document', 'query', 'queryResponse', 'client-request', 'client-response', 'callMethodInternal'];
185
+ }
186
+ }
187
+ this.logs = [];
188
+ if (this.selectedTypes.length) {
189
+ this.getLogData();
190
+ }
191
+ }
192
+ icon(type) {
193
+ if (type === 'error') {
194
+ return 'danger';
195
+ }
196
+ else if (type === 'document') {
197
+ return 'info';
198
+ }
199
+ else if (type === 'client-response') {
200
+ return 'success';
201
+ }
202
+ else if (type === 'client-request') {
203
+ return 'primary';
204
+ }
205
+ else {
206
+ return 'secondary';
207
+ }
208
+ }
209
+ removeAllLogs() {
210
+ this._ds.confirm('Are you sure you want to delete all logs?').then(() => {
211
+ this._services._socket.call('removeAllDocuments', 'logs');
212
+ }, () => { });
213
+ }
214
+ }
215
+ LoggerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoggerComponent, deps: [{ token: i1.ProviderService }, { token: i2.DialogService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
216
+ LoggerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: LoggerComponent, selector: "ng-component", providers: [ProviderService], usesInheritance: true, ngImport: i0, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>", styles: ["\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n"], components: [{ type: i3.ResponsiveButtonGroupComponent, selector: "responsive-button-group", inputs: ["collapseSize"] }, { type: i4.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i4.NgOptionComponent, selector: "ng-option", inputs: ["value", "disabled"] }, { type: i5.NgbTimepicker, selector: "ngb-timepicker", inputs: ["meridian", "spinners", "seconds", "hourStep", "minuteStep", "secondStep", "readonlyInputs", "size"] }, { type: i5.NgbPagination, selector: "ngb-pagination", inputs: ["disabled", "boundaryLinks", "directionLinks", "ellipses", "rotate", "collectionSize", "maxSize", "page", "pageSize", "size"], outputs: ["pageChange"] }, { type: i5.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }], directives: [{ type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { type: i7.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { type: i7.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i7.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i5.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { type: i5.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }], pipes: { "date": i6.DatePipe, "jsonParse": i8.JsonParsePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: LoggerComponent, decorators: [{
218
+ type: Component,
219
+ args: [{ providers: [ProviderService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<style>\n\t.label-accordion {\n\t\tfont-weight: bold;\n\t\tcolor: black;\n\t\tmargin-bottom: 0px;\n\t}\n\tngb-accordion {\n\t\twidth: 100%;\n\t}\n\t.hoverThis:hover {\n\t\tbackground: lightblue;\n\t\tcursor: pointer;\n\t}\n\t\n\t.fa-plus {\n\t\tcolor: black;\n\t}\n\t.fa-minus {\n\t\tcolor: black;\n\t}\n\t\n\t.selected {\n\t\tbackground-color: orange;\n\t}\n\t.selected:hover {\n\t\tcursor: pointer;\n\t}\n\t.card {\n\t\twidth: 100%;\n\t}\n</style>\n\n<div class=\"row\">\n\t<div class=\"col-lg-12\">\n\t\t<div class=\"card\">\n\t\t\t<div class=\"card-header\"><b>Filters</b></div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-lg-12\">\n\t\t\t\t\t\t<responsive-button-group collapseSize=\"900\">\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') && selectedTypes.includes('document') && selectedTypes.includes('query') && selectedTypes.includes('client-request') && selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('all')\">All</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('error') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('error')\">Errors</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('document') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('document')\">Document</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('query') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('query')\">Query</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('queryResponse') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('queryResponse')\">Query Response</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-request') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-request')\">Client Requests</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('client-response') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('client-response')\">Client Responses</button>\n\t\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"['btn', selectedTypes.includes('callMethodInternal') ? 'btn-success' : 'btn-warning']\" (click)=\"selectType('callMethodInternal')\">Call Method Internal</button>\n\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-danger\" (click)=\"removeAllLogs()\">REMOVE ALL LOGS</button>\n\t\t\t\t\t\t</responsive-button-group>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">User</label>\n\t\t\t\t\t\t<ng-select [(ngModel)]=\"user\" (change)=\"getLogData()\" placeholder=\"Select User\">\n\t\t\t\t\t\t\t<ng-option *ngFor=\"let user of users\" [value]=\"user.fullname\">{{user.fullname}}</ng-option>\n\t\t\t\t\t\t</ng-select>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Collection</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"collection\" (change)=\"getLogData()\" placeholder=\"Input Colls Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Method</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"method\" (change)=\"getLogData()\" placeholder=\"Input Methods Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Route</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"route\" (change)=\"getLogData()\" placeholder=\"Input Routes Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-2\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Document</label>\n\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"id_document\" (change)=\"getLogData()\" placeholder=\"Input Ids Sep By , & ! for !Not\">\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"row\" style=\"margin-top: 10px;\">\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date Start</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateStartElem\" ngbDatepicker #dStart=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dStart.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time Start</label>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeStartElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Date End</label>\n\t\t\t\t\t\t<div class=\"input-group\">\n\t\t\t\t\t\t\t<input class=\"form-control\" [(ngModel)]=\"dateEndElem\" ngbDatepicker #dEnd=\"ngbDatepicker\" (change)=\"getLogData()\">\n\t\t\t\t\t\t\t<div class=\"input-group-append\" (click)=\"dEnd.toggle()\">\n\t\t\t\t\t\t\t\t<div class=\"input-group-text\">\n\t\t\t\t\t\t\t\t\t<i class=\"fa fa-calendar\" aria-hidden=\"true\"></i>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-lg-3\">\n\t\t\t\t\t\t<label class=\"form-control-label\">Time End</label><br>\n\t\t\t\t\t\t<ngb-timepicker [(ngModel)]=\"timeEndElem\" meridian=\"ON\" [seconds]=\"true\" (change)=\"getLogData()\"></ngb-timepicker>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n<div class=\"row\">\n\t<div class=\"col-lg-8\">\n\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t<option value=\"10\">10</option>\n\t\t\t<option value=\"25\">25</option>\n\t\t\t<option value=\"50\">50</option>\n\t\t\t<option value=\"100\">100</option>\n\t\t\t<option value=\"250\">250</option>\n\t\t\t<option value=\"500\">500</option>\n\t\t\t<option value=\"1000\">1000</option>\n\t\t\t<option value=\"5000\">5000</option>\n\t\t</select>\n\t</div>\n\t<div class=\"col-lg-4\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<ngb-accordion #acc=\"ngbAccordion\" activeIds=\"\">\n\t\t<ngb-panel *ngFor=\"let log of logs; let i = index\" [id]=\"'log_' + i\">\n\t\t\t<ng-template ngbPanelTitle>\n\t\t\t\t<div> \n\t\t\t\t\t<label class=\"label-accordion\" style=\"width: 90%; height: 22px\">\n\t\t\t\t\t\t<strong class=\"pull-left\">Type: {{ log.type }}{{log.method ? ' - Method: ' + log.method : '' }}{{log.collection ? ' - Collection: ' + log.collection : '' }}{{log.user ? ' - User: ' + log.user : '' }}{{log.route ? ' - Route: ' + log.route : '' }}{{log.id_document ? ' - id_document: ' + log.id_document : '' }}{{log.messageId ? ' - messageId: ' + log.messageId : '' }}</strong>\n\t\t\t\t\t\t<p class=\"pull-right\">{{ log.createdAt | date : 'medium' }}</p>\n\t\t\t\t\t</label>\n\t\t\t\t\t<i *ngIf=\"!acc.activeIds.includes('log_' + i)\" class=\"fa fa-plus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t\t<i *ngIf=\"acc.activeIds.includes('log_' + i)\" class=\"fa fa-minus pull-right\" aria-hidden=\"true\"></i>\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template ngbPanelContent>\n\t\t\t\t<div *ngIf=\"log.payload\">\n\t\t\t\t\t<pre>{{ log.payload | jsonParse }}</pre>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"!log.payload\">\n\t\t\t\t\tNo Data\n\t\t\t\t</div>\n\t\t\t</ng-template>\n\t\t</ngb-panel>\n\t</ngb-accordion>\n</div>\n<div class=\"row\" style=\"margin-top: 10px\">\n\t<div class=\"col-lg-4\">\n\t\t<div class=\"row\"> \n\t\t\t<div class=\"col-lg-8\">\n\t\t\t\t<label class=\"form-control-label\">Entries Per Page</label>\n\t\t\t\t<select class=\"form-control\" [(ngModel)]=\"entries_per_page\" (change)=\"getLogData()\">\n\t\t\t\t\t<option value=\"10\">10</option>\n\t\t\t\t\t<option value=\"25\">25</option>\n\t\t\t\t\t<option value=\"50\">50</option>\n\t\t\t\t\t<option value=\"100\">100</option>\n\t\t\t\t\t<option value=\"250\">250</option>\n\t\t\t\t\t<option value=\"500\">500</option>\n\t\t\t\t\t<option value=\"1000\">1000</option>\n\t\t\t\t\t<option value=\"5000\">5000</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<div class=\"col-lg-8\">\n\t\t<ngb-pagination class=\"float-right\"\n\t\tboundaryLinks=\"true\"\n\t\t[collectionSize]=\"log_cnt\"\n\t\tdirectionLinks=\"true\"\n\t\tellipses=\"false\"\n\t\t[(page)]=\"page_num\"\n\t\tmaxSize=\"6\"\n\t\t[pageSize]=\"entries_per_page\"\n\t\trotate=\"true\"\n\t\t(pageChange)=\"getLogData()\"\n\t\t>\n\t\t</ngb-pagination>\n\t</div>\n</div>" }]
220
+ }], ctorParameters: function () { return [{ type: i1.ProviderService }, { type: i2.DialogService }, { type: i0.ChangeDetectorRef }]; } });
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2dnZXIvbG9nZ2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2dnZXIvbG9nZ2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEUsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7QUFFbEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7O0FBRGpFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQVN2QixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBMEJqRCxZQUFvQixTQUEwQixFQUFVLEdBQWtCLEVBQVUsR0FBc0I7UUFDekcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBREUsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFBVSxRQUFHLEdBQUgsR0FBRyxDQUFlO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUF4QjFHLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUNuQyxTQUFJLEdBQVUsRUFBRSxDQUFDO1FBRWpCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsWUFBTyxHQUFHLENBQUMsQ0FBQztRQUVaLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBU1gsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFFbkIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixXQUFNLEdBQUcsRUFB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QVM7Z0NBQ0UsQ0FBQyxlQUFlLENBQUMsbUJBRVgsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3ksIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm92aWRlclNlcnZpY2UsIEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9yZXNvbHZlaW8tY2xhc3MnO1xuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xuY29uc3QgbW9tZW50ID0gbW9tZW50XztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi93aWRnZXRzL2RpYWxvZy9kaWFsb2cuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuXHRwcm92aWRlcnM6IFtQcm92aWRlclNlcnZpY2VdLFxuXHR0ZW1wbGF0ZVVybDogJy4vbG9nZ2VyLmNvbXBvbmVudC5odG1sJyxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5cbmV4cG9ydCBjbGFzcyBMb2dnZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kgeyBcblxuXHRzdWJzY3JpcHRpb24kOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXHRsb2dzOiBhbnlbXSA9IFtdO1xuXG5cdGVudHJpZXNfcGVyX3BhZ2UgPSAyNTtcblx0cGFnZV9udW0gPSAxO1xuXHRsb2dfY250ID0gMDtcblxuXHR1c2VyID0gbnVsbDtcblx0dXNlcnMgPSBbXTtcblxuXHRkYXRlU3RhcnRFbGVtO1xuXHRkYXRlRW5kRWxlbTtcblx0dGltZVN0YXJ0RWxlbTtcblx0dGltZUVuZEVsZW07XG5cdGRhdGVTdGFydDogRGF0ZTtcblx0ZGF0ZUVuZDogRGF0ZTtcblxuXHRzZWxlY3RlZFR5cGVzID0gW107XG5cblx0Y29sbGVjdGlvbiA9ICcnO1xuXHRtZXRob2QgPSAnJztcblx0cm91dGUgPSAnJztcblx0aWRfZG9jdW1lbnQgPSAnJztcblxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIF9zZXJ2aWNlczogUHJvdmlkZXJTZXJ2aWNlLCBwcml2YXRlIF9kczogRGlhbG9nU2VydmljZSwgcHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XG5cdFx0c3VwZXIoX3NlcnZpY2VzKTtcblx0fVxuXG5cdG5nT25Jbml0KCkge1xuXHRcdGlmICghdGhpcy5fc2VydmljZXMuX2FjY291bnQuZ2V0VXNlcigpLnJvbGVzLnN1cGVyX2FkbWluKSB7XG5cdFx0XHR0aGlzLl9zZXJ2aWNlcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJyk7XG5cdFx0fVxuXG5cdFx0dGhpcy5zdWJzY3JpcHRpb24kLnB1c2godGhpcy5fc2VydmljZXMuX3NvY2tldC5zdWJzY3JpYmUoJ2FsbFVzZXJzJykuc3Vic2NyaWJlKHVzZXJzID0+IHtcblx0XHRcdHRoaXMudXNlcnMgPSB1c2VycztcblxuXHRcdFx0dGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuXHRcdH0pKTtcblxuXHRcdGxldCBqc0RhdGVTdGFydCA9IG5ldyBEYXRlKCk7XG5cdFx0anNEYXRlU3RhcnQuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG5cdFx0bGV0IGRhdGVfc3RhcnQgPSBuZXcgRGF0ZShtb21lbnQoanNEYXRlU3RhcnQpLnN1YnRyYWN0KDEwLCAnZGF5cycpLnRvRGF0ZSgpKTtcblx0XHR0aGlzLmRhdGVTdGFydEVsZW0gPSB7eWVhcjogZGF0ZV9zdGFydC5nZXRGdWxsWWVhcigpLCBtb250aDogZGF0ZV9zdGFydC5nZXRNb250aCgpICsgMSwgZGF5OiBkYXRlX3N0YXJ0LmdldERhdGUoKX07XG5cdFx0dGhpcy50aW1lU3RhcnRFbGVtID0ge2hvdXI6IDAsIG1pbnV0ZTogMCwgc2Vjb25kOiAwfTtcblxuXHRcdGxldCBqc0RhdGVFbmQgPSBuZXcgRGF0ZSgpO1xuXHRcdGpzRGF0ZUVuZC5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpO1xuXHRcdGxldCBkYXRlX2VuZCA9IGpzRGF0ZUVuZDtcblx0XHR0aGlzLmRhdGVFbmRFbGVtID0ge3llYXI6IGRhdGVfZW5kLmdldEZ1bGxZZWFyKCksIG1vbnRoOiBkYXRlX2VuZC5nZXRNb250aCgpICsgMSwgZGF5OiBkYXRlX2VuZC5nZXREYXRlKCl9O1xuXHRcdHRoaXMudGltZUVuZEVsZW0gPSB7aG91cjogMjMsIG1pbnV0ZTogNTksIHNlY29uZDogNTl9O1xuXG5cdFx0dGhpcy5nZXRMb2dEYXRhKCk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLnN1YnNjcmlwdGlvbiQuZm9yRWFjaChzdWIgPT4ge1xuXHRcdFx0c3ViLnVuc3Vic2NyaWJlKCk7XG5cdFx0fSk7XG5cdH1cblxuXHRnZXRMb2dEYXRhKCkge1xuXHRcdHRoaXMuZGF0ZVN0YXJ0ID0gbmV3IERhdGUodGhpcy5kYXRlU3RhcnRFbGVtLnllYXIsIHRoaXMuZGF0ZVN0YXJ0RWxlbS5tb250aCAtIDEsIHRoaXMuZGF0ZVN0YXJ0RWxlbS5kYXksIHRoaXMudGltZVN0YXJ0RWxlbS5ob3VyLCB0aGlzLnRpbWVTdGFydEVsZW0ubWludXRlLCB0aGlzLnRpbWVTdGFydEVsZW0uc2Vjb25kLCAwKTtcblx0XHR0aGlzLmRhdGVFbmQgPSBuZXcgRGF0ZSh0aGlzLmRhdGVFbmRFbGVtLnllYXIsIHRoaXMuZGF0ZUVuZEVsZW0ubW9udGggLSAxLCB0aGlzLmRhdGVFbmRFbGVtLmRheSwgdGhpcy50aW1lRW5kRWxlbS5ob3VyLCB0aGlzLnRpbWVFbmRFbGVtLm1pbnV0ZSwgdGhpcy50aW1lRW5kRWxlbS5zZWNvbmQsIDk5OSk7XG5cblx0XHRsZXQgcXVlcnk6IGFueSA9IHtcblx0XHRcdCRhbmQ6IFtcblx0XHRcdFx0e2NyZWF0ZWRBdDogeyRndGU6IHRoaXMuZGF0ZVN0YXJ0fX0sXG5cdFx0XHRcdHtjcmVhdGVkQXQ6IHskbHRlOiB0aGlzLmRhdGVFbmR9fVxuXHRcdFx0XVxuXHRcdH07XG5cblx0XHRpZiAoIXRoaXMuc2VsZWN0ZWRUeXBlcy5sZW5ndGgpIHtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0ZWxzZSB7XG5cdFx0XHRxdWVyeS4kYW5kLnB1c2goe3R5cGU6IHskaW46IHRoaXMuc2VsZWN0ZWRUeXBlc319KTtcblx0XHR9XG5cblx0XHRpZiAodGhpcy5jb2xsZWN0aW9uKSB7XG5cdFx0XHRpZiAodGhpcy5jb2xsZWN0aW9uLmluY2x1ZGVzKCcsJykpIHtcblx0XHRcdFx0bGV0IGNvbGxlY3Rpb25zID0gdGhpcy5jb2xsZWN0aW9uLnNwbGl0KCcsJykubWFwKGEgPT4gYS50cmltKCkpLmZpbHRlcihhID0+ICFhLnN0YXJ0c1dpdGgoJyEnKSk7XG5cdFx0XHRcdGlmIChjb2xsZWN0aW9ucy5sZW5ndGgpIHtcblx0XHRcdFx0XHRxdWVyeS4kYW5kLnB1c2goe2NvbGxlY3Rpb246IHskaW46IGNvbGxlY3Rpb25zfX0pO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGV0IG5vdENvbGxlY3Rpb25zID0gdGhpcy5jb2xsZWN0aW9uLnNwbGl0KCcsJykubWFwKGEgPT4gYS50cmltKCkpLmZpbHRlcihhID0+IGEuc3RhcnRzV2l0aCgnIScpKTtcblx0XHRcdFx0bm90Q29sbGVjdGlvbnMuZm9yRWFjaChub3QgPT4ge1xuXHRcdFx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7Y29sbGVjdGlvbjogeyRuZTogbm90LnJlcGxhY2UoJyEnLCAnJyl9fSk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdGlmICh0aGlzLmNvbGxlY3Rpb24uc3RhcnRzV2l0aCgnIScpKSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHtjb2xsZWN0aW9uOiB7JG5lOiB0aGlzLmNvbGxlY3Rpb24ucmVwbGFjZSgnIScsICcnKS50cmltKCl9fSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHtjb2xsZWN0aW9uOiB0aGlzLmNvbGxlY3Rpb24udHJpbSgpfSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAodGhpcy5tZXRob2QpIHtcblx0XHRcdGlmICh0aGlzLm1ldGhvZC5pbmNsdWRlcygnLCcpKSB7XG5cdFx0XHRcdGxldCBtZXRob2RzID0gdGhpcy5tZXRob2Quc3BsaXQoJywnKS5tYXAoYSA9PiBhLnRyaW0oKSkuZmlsdGVyKGEgPT4gIWEuc3RhcnRzV2l0aCgnIScpKTtcblx0XHRcdFx0aWYgKG1ldGhvZHMubGVuZ3RoKSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHttZXRob2Q6IHskaW46IG1ldGhvZHN9fSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsZXQgbm90TWV0aG9kcyA9IHRoaXMubWV0aG9kLnNwbGl0KCcsJykubWFwKGEgPT4gYS50cmltKCkpLmZpbHRlcihhID0+IGEuc3RhcnRzV2l0aCgnIScpKTtcblx0XHRcdFx0bm90TWV0aG9kcy5mb3JFYWNoKG5vdCA9PiB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHttZXRob2Q6IHskbmU6IG5vdC5yZXBsYWNlKCchJywgJycpfX0pO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHRpZiAodGhpcy5tZXRob2Quc3RhcnRzV2l0aCgnIScpKSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHttZXRob2Q6IHskbmU6IHRoaXMubWV0aG9kLnJlcGxhY2UoJyEnLCAnJykudHJpbSgpfX0pO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7bWV0aG9kOiB0aGlzLm1ldGhvZC50cmltKCl9KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnJvdXRlKSB7XG5cdFx0XHRpZiAodGhpcy5yb3V0ZS5pbmNsdWRlcygnLCcpKSB7XG5cdFx0XHRcdGxldCByb3V0ZXMgPSB0aGlzLnJvdXRlLnNwbGl0KCcsJykubWFwKGEgPT4gYS50cmltKCkpLmZpbHRlcihhID0+ICFhLnN0YXJ0c1dpdGgoJyEnKSk7XG5cdFx0XHRcdGlmIChyb3V0ZXMubGVuZ3RoKSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHtyb3V0ZTogeyRpbjogcm91dGVzfX0pO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGV0IG5vdFJvdXRlcyA9IHRoaXMucm91dGUuc3BsaXQoJywnKS5tYXAoYSA9PiBhLnRyaW0oKSkuZmlsdGVyKGEgPT4gYS5zdGFydHNXaXRoKCchJykpO1xuXHRcdFx0XHRub3RSb3V0ZXMuZm9yRWFjaChub3QgPT4ge1xuXHRcdFx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7cm91dGU6IHskbmU6IG5vdC5yZXBsYWNlKCchJywgJycpfX0pO1xuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHRcdGVsc2Uge1xuXHRcdFx0XHRpZiAodGhpcy5yb3V0ZS5zdGFydHNXaXRoKCchJykpIHtcblx0XHRcdFx0XHRxdWVyeS4kYW5kLnB1c2goe3JvdXRlOiB7JG5lOiB0aGlzLnJvdXRlLnJlcGxhY2UoJyEnLCAnJykudHJpbSgpfX0pO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGVsc2Uge1xuXHRcdFx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7cm91dGU6IHRoaXMucm91dGUudHJpbSgpfSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0aWYgKHRoaXMuaWRfZG9jdW1lbnQpIHtcblx0XHRcdGlmICh0aGlzLmlkX2RvY3VtZW50LmluY2x1ZGVzKCcsJykpIHtcblx0XHRcdFx0bGV0IGlkX2RvY3VtZW50cyA9IHRoaXMuaWRfZG9jdW1lbnQuc3BsaXQoJywnKS5tYXAoYSA9PiBhLnRyaW0oKSkuZmlsdGVyKGEgPT4gIWEuc3RhcnRzV2l0aCgnIScpKTtcblx0XHRcdFx0aWYgKGlkX2RvY3VtZW50cy5sZW5ndGgpIHtcblx0XHRcdFx0XHRxdWVyeS4kYW5kLnB1c2goe2lkX2RvY3VtZW50OiB7JGluOiBpZF9kb2N1bWVudHN9fSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRsZXQgbm90SWRzID0gdGhpcy5pZF9kb2N1bWVudC5zcGxpdCgnLCcpLm1hcChhID0+IGEudHJpbSgpKS5maWx0ZXIoYSA9PiBhLnN0YXJ0c1dpdGgoJyEnKSk7XG5cdFx0XHRcdG5vdElkcy5mb3JFYWNoKG5vdCA9PiB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHtpZF9kb2N1bWVudDogeyRuZTogbm90LnJlcGxhY2UoJyEnLCAnJyl9fSk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdGlmICh0aGlzLmlkX2RvY3VtZW50LnN0YXJ0c1dpdGgoJyEnKSkge1xuXHRcdFx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7aWRfZG9jdW1lbnQ6IHskbmU6IHRoaXMuaWRfZG9jdW1lbnQucmVwbGFjZSgnIScsICcnKS50cmltKCl9fSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0ZWxzZSB7XG5cdFx0XHRcdFx0cXVlcnkuJGFuZC5wdXNoKHtpZF9kb2N1bWVudDogdGhpcy5pZF9kb2N1bWVudC50cmltKCl9KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnVzZXIpIHtcblx0XHRcdHF1ZXJ5LiRhbmQucHVzaCh7dXNlcjogdGhpcy51c2VyfSk7XG5cdFx0fVxuXG5cdFx0aWYgKHR5cGVvZih0aGlzLmVudHJpZXNfcGVyX3BhZ2UpID09PSAnc3RyaW5nJykge1xuXHRcdFx0dGhpcy5lbnRyaWVzX3Blcl9wYWdlID0gcGFyc2VJbnQodGhpcy5lbnRyaWVzX3Blcl9wYWdlKTtcblx0XHR9XG5cdFx0XG5cdFx0dGhpcy5fc2VydmljZXMuX3NvY2tldC5jYWxsKCdmaW5kV2l0aE9wdGlvbnMnLCAnbG9ncycsIHF1ZXJ5LCB7c29ydDoge2NyZWF0ZWRBdDogLTF9LCBsaW1pdDogdGhpcy5lbnRyaWVzX3Blcl9wYWdlLCBza2lwOiB0aGlzLmVudHJpZXNfcGVyX3BhZ2UgKiAodGhpcy5wYWdlX251bSAtIDEpfSwgKGVyciwgcmVzKSA9PiB7XG5cdFx0XHR0aGlzLmxvZ3MgPSByZXM7XG5cblx0XHRcdHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMuX3NlcnZpY2VzLl9zb2NrZXQuY2FsbCgnY291bnRDb2xsZWN0aW9uV2l0aFF1ZXJ5JywgJ2xvZ3MnLCBxdWVyeSwgKGVyciwgcmVzKSA9PiB7XG5cdFx0XHR0aGlzLmxvZ19jbnQgPSByZXM7XG5cblx0XHRcdHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcblx0XHR9KTtcblxuXHRcdHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcblx0fVxuXG5cdHNlbGVjdFR5cGUodHlwZTogc3RyaW5nKSB7XG5cdFx0aWYgKHR5cGUgIT09ICdhbGwnKSB7XG5cdFx0XHRpZiAodGhpcy5zZWxlY3RlZFR5cGVzLmluY2x1ZGVzKHR5cGUpKSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUeXBlcy5zcGxpY2UodGhpcy5zZWxlY3RlZFR5cGVzLmluZGV4T2YodHlwZSksIDEpO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUeXBlcy5wdXNoKHR5cGUpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRlbHNlIHtcblx0XHRcdGlmICh0aGlzLnNlbGVjdGVkVHlwZXMubGVuZ3RoID09PSA3KSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUeXBlcyA9IFtdO1xuXHRcdFx0fVxuXHRcdFx0ZWxzZSB7XG5cdFx0XHRcdHRoaXMuc2VsZWN0ZWRUeXBlcyA9IFsnZXJyb3InLCAnZG9jdW1lbnQnLCAncXVlcnknLCAncXVlcnlSZXNwb25zZScsICdjbGllbnQtcmVxdWVzdCcsICdjbGllbnQtcmVzcG9uc2UnLCAnY2FsbE1ldGhvZEludGVybmFsJ107XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5sb2dzID0gW107XG5cblx0XHRpZiAodGhpcy5zZWxlY3RlZFR5cGVzLmxlbmd0aCkge1xuXHRcdFx0dGhpcy5nZXRMb2dEYXRhKCk7XG5cdFx0fVxuXHR9XG5cblx0aWNvbih0eXBlKSB7XG5cdFx0aWYgKHR5cGUgPT09ICdlcnJvcicpIHtcblx0XHRcdHJldHVybiAnZGFuZ2VyJztcblx0XHR9XG5cdFx0ZWxzZSBpZiAodHlwZSA9PT0gJ2RvY3VtZW50Jykge1xuXHRcdFx0cmV0dXJuICdpbmZvJztcblx0XHR9XG5cdFx0ZWxzZSBpZiAodHlwZSA9PT0gJ2NsaWVudC1yZXNwb25zZScpIHtcblx0XHRcdHJldHVybiAnc3VjY2Vzcyc7XG5cdFx0fVxuXHRcdGVsc2UgaWYgKHR5cGUgPT09ICdjbGllbnQtcmVxdWVzdCcpIHtcblx0XHRcdHJldHVybiAncHJpbWFyeSc7XG5cdFx0fVxuXHRcdGVsc2Uge1xuXHRcdFx0cmV0dXJuICdzZWNvbmRhcnknO1xuXHRcdH1cblx0fVxuXG5cdHJlbW92ZUFsbExvZ3MoKSB7XG5cdFx0dGhpcy5fZHMuY29uZmlybSgnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBhbGwgbG9ncz8nKS50aGVuKCgpID0+IHtcblx0XHRcdHRoaXMuX3NlcnZpY2VzLl9zb2NrZXQuY2FsbCgncmVtb3ZlQWxsRG9jdW1lbnRzJywgJ2xvZ3MnKTtcblx0XHR9LCAoKSA9PiB7IH0pO1xuXHR9XG59XG4iLCI8c3R5bGU+XG5cdC5sYWJlbC1hY2NvcmRpb24ge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGNvbG9yOiBibGFjaztcblx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdH1cblx0bmdiLWFjY29yZGlvbiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0LmhvdmVyVGhpczpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogbGlnaHRibHVlO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxuXHRcblx0LmZhLXBsdXMge1xuXHRcdGNvbG9yOiBibGFjaztcblx0fVxuXHQuZmEtbWludXMge1xuXHRcdGNvbG9yOiBibGFjaztcblx0fVxuXHRcblx0LnNlbGVjdGVkIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XG5cdH1cblx0LnNlbGVjdGVkOmhvdmVyIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblx0LmNhcmQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG48L3N0eWxlPlxuXG48ZGl2IGNsYXNzPVwicm93XCI+XG5cdDxkaXYgY2xhc3M9XCJjb2wtbGctMTJcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCI+PGI+RmlsdGVyczwvYj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cInJvd1wiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctMTJcIj5cblx0XHRcdFx0XHRcdDxyZXNwb25zaXZlLWJ1dHRvbi1ncm91cCBjb2xsYXBzZVNpemU9XCI5MDBcIj5cblx0XHRcdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW25nQ2xhc3NdPVwiWydidG4nLCBzZWxlY3RlZFR5cGVzLmluY2x1ZGVzKCdlcnJvcicpICYmIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ2RvY3VtZW50JykgJiYgc2VsZWN0ZWRUeXBlcy5pbmNsdWRlcygncXVlcnknKSAmJiBzZWxlY3RlZFR5cGVzLmluY2x1ZGVzKCdjbGllbnQtcmVxdWVzdCcpICYmIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ2NsaWVudC1yZXNwb25zZScpID8gJ2J0bi1zdWNjZXNzJyA6ICdidG4td2FybmluZyddXCIgKGNsaWNrKT1cInNlbGVjdFR5cGUoJ2FsbCcpXCI+QWxsPC9idXR0b24+XG5cdFx0XHRcdFx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIFtuZ0NsYXNzXT1cIlsnYnRuJywgc2VsZWN0ZWRUeXBlcy5pbmNsdWRlcygnZXJyb3InKSA/ICdidG4tc3VjY2VzcycgOiAnYnRuLXdhcm5pbmcnXVwiIChjbGljayk9XCJzZWxlY3RUeXBlKCdlcnJvcicpXCI+RXJyb3JzPC9idXR0b24+XG5cdFx0XHRcdFx0XHRcdDxidXR0b24gdHlwZT1cImJ1dHRvblwiIFtuZ0NsYXNzXT1cIlsnYnRuJywgc2VsZWN0ZWRUeXBlcy5pbmNsdWRlcygnZG9jdW1lbnQnKSA/ICdidG4tc3VjY2VzcycgOiAnYnRuLXdhcm5pbmcnXVwiIChjbGljayk9XCJzZWxlY3RUeXBlKCdkb2N1bWVudCcpXCI+RG9jdW1lbnQ8L2J1dHRvbj5cblx0XHRcdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgW25nQ2xhc3NdPVwiWydidG4nLCBzZWxlY3RlZFR5cGVzLmluY2x1ZGVzKCdxdWVyeScpID8gJ2J0bi1zdWNjZXNzJyA6ICdidG4td2FybmluZyddXCIgKGNsaWNrKT1cInNlbGVjdFR5cGUoJ3F1ZXJ5JylcIj5RdWVyeTwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbbmdDbGFzc109XCJbJ2J0bicsIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ3F1ZXJ5UmVzcG9uc2UnKSA/ICdidG4tc3VjY2VzcycgOiAnYnRuLXdhcm5pbmcnXVwiIChjbGljayk9XCJzZWxlY3RUeXBlKCdxdWVyeVJlc3BvbnNlJylcIj5RdWVyeSBSZXNwb25zZTwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbbmdDbGFzc109XCJbJ2J0bicsIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ2NsaWVudC1yZXF1ZXN0JykgPyAnYnRuLXN1Y2Nlc3MnIDogJ2J0bi13YXJuaW5nJ11cIiAoY2xpY2spPVwic2VsZWN0VHlwZSgnY2xpZW50LXJlcXVlc3QnKVwiPkNsaWVudCBSZXF1ZXN0czwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbbmdDbGFzc109XCJbJ2J0bicsIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ2NsaWVudC1yZXNwb25zZScpID8gJ2J0bi1zdWNjZXNzJyA6ICdidG4td2FybmluZyddXCIgKGNsaWNrKT1cInNlbGVjdFR5cGUoJ2NsaWVudC1yZXNwb25zZScpXCI+Q2xpZW50IFJlc3BvbnNlczwvYnV0dG9uPlxuXHRcdFx0XHRcdFx0XHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBbbmdDbGFzc109XCJbJ2J0bicsIHNlbGVjdGVkVHlwZXMuaW5jbHVkZXMoJ2NhbGxNZXRob2RJbnRlcm5hbCcpID8gJ2J0bi1zdWNjZXNzJyA6ICdidG4td2FybmluZyddXCIgKGNsaWNrKT1cInNlbGVjdFR5cGUoJ2NhbGxNZXRob2RJbnRlcm5hbCcpXCI+Q2FsbCBNZXRob2QgSW50ZXJuYWw8L2J1dHRvbj5cblx0XHRcdFx0XHRcdFx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlclwiIChjbGljayk9XCJyZW1vdmVBbGxMb2dzKClcIj5SRU1PVkUgQUxMIExPR1M8L2J1dHRvbj5cblx0XHRcdFx0XHRcdDwvcmVzcG9uc2l2ZS1idXR0b24tZ3JvdXA+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwicm93XCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxMHB4O1wiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctMlwiPlxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwiZm9ybS1jb250cm9sLWxhYmVsXCI+VXNlcjwvbGFiZWw+XG5cdFx0XHRcdFx0XHQ8bmctc2VsZWN0IFsobmdNb2RlbCldPVwidXNlclwiIChjaGFuZ2UpPVwiZ2V0TG9nRGF0YSgpXCIgcGxhY2Vob2xkZXI9XCJTZWxlY3QgVXNlclwiPlxuXHRcdFx0XHRcdFx0XHQ8bmctb3B0aW9uICpuZ0Zvcj1cImxldCB1c2VyIG9mIHVzZXJzXCIgW3ZhbHVlXT1cInVzZXIuZnVsbG5hbWVcIj57e3VzZXIuZnVsbG5hbWV9fTwvbmctb3B0aW9uPlxuXHRcdFx0XHRcdFx0PC9uZy1zZWxlY3Q+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNvbC1sZy0yXCI+XG5cdFx0XHRcdFx0XHQ8bGFiZWwgY2xhc3M9XCJmb3JtLWNvbnRyb2wtbGFiZWxcIj5Db2xsZWN0aW9uPC9sYWJlbD5cblx0XHRcdFx0XHRcdDxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiY29sbGVjdGlvblwiIChjaGFuZ2UpPVwiZ2V0TG9nRGF0YSgpXCIgcGxhY2Vob2xkZXI9XCJJbnB1dCBDb2xscyBTZXAgQnkgLCAmICEgZm9yICFOb3RcIj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLWxnLTJcIj5cblx0XHRcdFx0XHRcdDxsYWJlbCBjbGFzcz1cImZvcm0tY29udHJvbC1sYWJlbFwiPk1ldGhvZDwvbGFiZWw+XG5cdFx0XHRcdFx0XHQ8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cIm1ldGhvZFwiIChjaGFuZ2UpPVwiZ2V0TG9nRGF0YSgpXCIgcGxhY2Vob2xkZXI9XCJJbnB1dCBNZXRob2RzIFNlcCBCeSAsICYgISBmb3IgIU5vdFwiPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctMlwiPlxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwiZm9ybS1jb250cm9sLWxhYmVsXCI+Um91dGU8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJyb3V0ZVwiIChjaGFuZ2UpPVwiZ2V0TG9nRGF0YSgpXCIgcGxhY2Vob2xkZXI9XCJJbnB1dCBSb3V0ZXMgU2VwIEJ5ICwgJiAhIGZvciAhTm90XCI+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNvbC1sZy0yXCI+XG5cdFx0XHRcdFx0XHQ8bGFiZWwgY2xhc3M9XCJmb3JtLWNvbnRyb2wtbGFiZWxcIj5Eb2N1bWVudDwvbGFiZWw+XG5cdFx0XHRcdFx0XHQ8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImlkX2RvY3VtZW50XCIgKGNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIiBwbGFjZWhvbGRlcj1cIklucHV0IElkcyBTZXAgQnkgLCAmICEgZm9yICFOb3RcIj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJyb3dcIiBzdHlsZT1cIm1hcmdpbi10b3A6IDEwcHg7XCI+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImNvbC1sZy0zXCI+XG5cdFx0XHRcdFx0XHQ8bGFiZWwgY2xhc3M9XCJmb3JtLWNvbnRyb2wtbGFiZWxcIj5EYXRlIFN0YXJ0PC9sYWJlbD5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxuXHRcdFx0XHRcdFx0XHQ8aW5wdXQgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImRhdGVTdGFydEVsZW1cIiBuZ2JEYXRlcGlja2VyICNkU3RhcnQ9XCJuZ2JEYXRlcGlja2VyXCIgKGNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIj5cblx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImlucHV0LWdyb3VwLWFwcGVuZFwiIChjbGljayk9XCJkU3RhcnQudG9nZ2xlKClcIj5cblx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtdGV4dFwiPlxuXHRcdFx0XHRcdFx0XHRcdFx0PGkgY2xhc3M9XCJmYSBmYS1jYWxlbmRhclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cblx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLWxnLTNcIj5cblx0XHRcdFx0XHRcdDxsYWJlbCBjbGFzcz1cImZvcm0tY29udHJvbC1sYWJlbFwiPlRpbWUgU3RhcnQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PG5nYi10aW1lcGlja2VyIFsobmdNb2RlbCldPVwidGltZVN0YXJ0RWxlbVwiIG1lcmlkaWFuPVwiT05cIiBbc2Vjb25kc109XCJ0cnVlXCIgKGNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIj48L25nYi10aW1lcGlja2VyPlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctM1wiPlxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwiZm9ybS1jb250cm9sLWxhYmVsXCI+RGF0ZSBFbmQ8L2xhYmVsPlxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XG5cdFx0XHRcdFx0XHRcdDxpbnB1dCBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiZGF0ZUVuZEVsZW1cIiBuZ2JEYXRlcGlja2VyICNkRW5kPVwibmdiRGF0ZXBpY2tlclwiIChjaGFuZ2UpPVwiZ2V0TG9nRGF0YSgpXCI+XG5cdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cC1hcHBlbmRcIiAoY2xpY2spPVwiZEVuZC50b2dnbGUoKVwiPlxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cC10ZXh0XCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8aSBjbGFzcz1cImZhIGZhLWNhbGVuZGFyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuXHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJjb2wtbGctM1wiPlxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwiZm9ybS1jb250cm9sLWxhYmVsXCI+VGltZSBFbmQ8L2xhYmVsPjxicj5cblx0XHRcdFx0XHRcdDxuZ2ItdGltZXBpY2tlciBbKG5nTW9kZWwpXT1cInRpbWVFbmRFbGVtXCIgbWVyaWRpYW49XCJPTlwiIFtzZWNvbmRzXT1cInRydWVcIiAoY2hhbmdlKT1cImdldExvZ0RhdGEoKVwiPjwvbmdiLXRpbWVwaWNrZXI+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwicm93XCI+XG5cdDxkaXYgY2xhc3M9XCJjb2wtbGctOFwiPlxuXHRcdDxsYWJlbCBjbGFzcz1cImZvcm0tY29udHJvbC1sYWJlbFwiPkVudHJpZXMgUGVyIFBhZ2U8L2xhYmVsPlxuXHRcdDxzZWxlY3QgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBbKG5nTW9kZWwpXT1cImVudHJpZXNfcGVyX3BhZ2VcIiAoY2hhbmdlKT1cImdldExvZ0RhdGEoKVwiPlxuXHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjEwXCI+MTA8L29wdGlvbj5cblx0XHRcdDxvcHRpb24gdmFsdWU9XCIyNVwiPjI1PC9vcHRpb24+XG5cdFx0XHQ8b3B0aW9uIHZhbHVlPVwiNTBcIj41MDwvb3B0aW9uPlxuXHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjEwMFwiPjEwMDwvb3B0aW9uPlxuXHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjI1MFwiPjI1MDwvb3B0aW9uPlxuXHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjUwMFwiPjUwMDwvb3B0aW9uPlxuXHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjEwMDBcIj4xMDAwPC9vcHRpb24+XG5cdFx0XHQ8b3B0aW9uIHZhbHVlPVwiNTAwMFwiPjUwMDA8L29wdGlvbj5cblx0XHQ8L3NlbGVjdD5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJjb2wtbGctNFwiPlxuXHRcdDxuZ2ItcGFnaW5hdGlvbiBjbGFzcz1cImZsb2F0LXJpZ2h0XCJcblx0XHRib3VuZGFyeUxpbmtzPVwidHJ1ZVwiXG5cdFx0W2NvbGxlY3Rpb25TaXplXT1cImxvZ19jbnRcIlxuXHRcdGRpcmVjdGlvbkxpbmtzPVwidHJ1ZVwiXG5cdFx0ZWxsaXBzZXM9XCJmYWxzZVwiXG5cdFx0WyhwYWdlKV09XCJwYWdlX251bVwiXG5cdFx0bWF4U2l6ZT1cIjZcIlxuXHRcdFtwYWdlU2l6ZV09XCJlbnRyaWVzX3Blcl9wYWdlXCJcblx0XHRyb3RhdGU9XCJ0cnVlXCJcblx0XHQocGFnZUNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIlxuXHRcdD5cblx0XHQ8L25nYi1wYWdpbmF0aW9uPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInJvd1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweFwiPlxuXHQ8bmdiLWFjY29yZGlvbiAjYWNjPVwibmdiQWNjb3JkaW9uXCIgYWN0aXZlSWRzPVwiXCI+XG5cdFx0PG5nYi1wYW5lbCAqbmdGb3I9XCJsZXQgbG9nIG9mIGxvZ3M7IGxldCBpID0gaW5kZXhcIiBbaWRdPVwiJ2xvZ18nICsgaVwiPlxuXHRcdFx0PG5nLXRlbXBsYXRlIG5nYlBhbmVsVGl0bGU+XG5cdFx0XHRcdDxkaXY+IFxuXHRcdFx0XHRcdDxsYWJlbCBjbGFzcz1cImxhYmVsLWFjY29yZGlvblwiIHN0eWxlPVwid2lkdGg6IDkwJTsgaGVpZ2h0OiAyMnB4XCI+XG5cdFx0XHRcdFx0XHQ8c3Ryb25nIGNsYXNzPVwicHVsbC1sZWZ0XCI+VHlwZToge3sgbG9nLnR5cGUgfX17e2xvZy5tZXRob2QgPyAnIC0gTWV0aG9kOiAnICsgbG9nLm1ldGhvZCA6ICcnIH19e3tsb2cuY29sbGVjdGlvbiA/ICcgLSBDb2xsZWN0aW9uOiAnICsgbG9nLmNvbGxlY3Rpb24gOiAnJyB9fXt7bG9nLnVzZXIgPyAnIC0gVXNlcjogJyArIGxvZy51c2VyIDogJycgfX17e2xvZy5yb3V0ZSA/ICcgLSBSb3V0ZTogJyArIGxvZy5yb3V0ZSA6ICcnIH19e3tsb2cuaWRfZG9jdW1lbnQgPyAnIC0gaWRfZG9jdW1lbnQ6ICcgKyBsb2cuaWRfZG9jdW1lbnQgOiAnJyB9fXt7bG9nLm1lc3NhZ2VJZCA/ICcgLSBtZXNzYWdlSWQ6ICcgKyBsb2cubWVzc2FnZUlkIDogJycgfX08L3N0cm9uZz5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwicHVsbC1yaWdodFwiPnt7IGxvZy5jcmVhdGVkQXQgfCBkYXRlIDogJ21lZGl1bScgfX08L3A+XG5cdFx0XHRcdFx0PC9sYWJlbD5cblx0XHRcdFx0XHQ8aSAqbmdJZj1cIiFhY2MuYWN0aXZlSWRzLmluY2x1ZGVzKCdsb2dfJyArIGkpXCIgY2xhc3M9XCJmYSBmYS1wbHVzIHB1bGwtcmlnaHRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG5cdFx0XHRcdFx0PGkgKm5nSWY9XCJhY2MuYWN0aXZlSWRzLmluY2x1ZGVzKCdsb2dfJyArIGkpXCIgY2xhc3M9XCJmYSBmYS1taW51cyBwdWxsLXJpZ2h0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0XHQ8bmctdGVtcGxhdGUgbmdiUGFuZWxDb250ZW50PlxuXHRcdFx0XHQ8ZGl2ICpuZ0lmPVwibG9nLnBheWxvYWRcIj5cblx0XHRcdFx0XHQ8cHJlPnt7IGxvZy5wYXlsb2FkIHwganNvblBhcnNlIH19PC9wcmU+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiIWxvZy5wYXlsb2FkXCI+XG5cdFx0XHRcdFx0Tm8gRGF0YVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvbmctdGVtcGxhdGU+XG5cdFx0PC9uZ2ItcGFuZWw+XG5cdDwvbmdiLWFjY29yZGlvbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInJvd1wiIHN0eWxlPVwibWFyZ2luLXRvcDogMTBweFwiPlxuXHQ8ZGl2IGNsYXNzPVwiY29sLWxnLTRcIj5cblx0XHQ8ZGl2IGNsYXNzPVwicm93XCI+IFxuXHRcdFx0PGRpdiBjbGFzcz1cImNvbC1sZy04XCI+XG5cdFx0XHRcdDxsYWJlbCBjbGFzcz1cImZvcm0tY29udHJvbC1sYWJlbFwiPkVudHJpZXMgUGVyIFBhZ2U8L2xhYmVsPlxuXHRcdFx0XHQ8c2VsZWN0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJlbnRyaWVzX3Blcl9wYWdlXCIgKGNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIj5cblx0XHRcdFx0XHQ8b3B0aW9uIHZhbHVlPVwiMTBcIj4xMDwvb3B0aW9uPlxuXHRcdFx0XHRcdDxvcHRpb24gdmFsdWU9XCIyNVwiPjI1PC9vcHRpb24+XG5cdFx0XHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjUwXCI+NTA8L29wdGlvbj5cblx0XHRcdFx0XHQ8b3B0aW9uIHZhbHVlPVwiMTAwXCI+MTAwPC9vcHRpb24+XG5cdFx0XHRcdFx0PG9wdGlvbiB2YWx1ZT1cIjI1MFwiPjI1MDwvb3B0aW9uPlxuXHRcdFx0XHRcdDxvcHRpb24gdmFsdWU9XCI1MDBcIj41MDA8L29wdGlvbj5cblx0XHRcdFx0XHQ8b3B0aW9uIHZhbHVlPVwiMTAwMFwiPjEwMDA8L29wdGlvbj5cblx0XHRcdFx0XHQ8b3B0aW9uIHZhbHVlPVwiNTAwMFwiPjUwMDA8L29wdGlvbj5cblx0XHRcdFx0PC9zZWxlY3Q+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJjb2wtbGctOFwiPlxuXHRcdDxuZ2ItcGFnaW5hdGlvbiBjbGFzcz1cImZsb2F0LXJpZ2h0XCJcblx0XHRib3VuZGFyeUxpbmtzPVwidHJ1ZVwiXG5cdFx0W2NvbGxlY3Rpb25TaXplXT1cImxvZ19jbnRcIlxuXHRcdGRpcmVjdGlvbkxpbmtzPVwidHJ1ZVwiXG5cdFx0ZWxsaXBzZXM9XCJmYWxzZVwiXG5cdFx0WyhwYWdlKV09XCJwYWdlX251bVwiXG5cdFx0bWF4U2l6ZT1cIjZcIlxuXHRcdFtwYWdlU2l6ZV09XCJlbnRyaWVzX3Blcl9wYWdlXCJcblx0XHRyb3RhdGU9XCJ0cnVlXCJcblx0XHQocGFnZUNoYW5nZSk9XCJnZXRMb2dEYXRhKClcIlxuXHRcdD5cblx0XHQ8L25nYi1wYWdpbmF0aW9uPlxuXHQ8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXN0YXR1cy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvYXBwLXN0YXR1cy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRvY3VtZW50IH0gZnJvbSAnLi9jb2xsZWN0aW9uLWRvY3VtZW50Lm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBTdGF0dXNNb2RlbCBleHRlbmRzIENvbGxlY3Rpb25Eb2N1bWVudCB7XG5cdG1lc3NhZ2U6IHN0cmluZztcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1kb2N1bWVudC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvY29sbGVjdGlvbi1kb2N1bWVudC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDb2xsZWN0aW9uRG9jdW1lbnQge1xuXHRfaWQ/OiBhbnk7XG5cdF9fdj86IG51bWJlcjtcblx0Y3JlYXRlZEF0PzogRGF0ZTtcblx0dXBkYXRlZEF0PzogRGF0ZTtcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvbi1qb2IubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL2Nyb24tam9iLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uRG9jdW1lbnQgfSBmcm9tICcuL2NvbGxlY3Rpb24tZG9jdW1lbnQubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyb25Kb2JNb2RlbCBleHRlbmRzIENvbGxlY3Rpb25Eb2N1bWVudCB7XG5cdG5hbWU6IHN0cmluZztcblx0cmVwZWF0OiBib29sZWFuO1xuXHR0aW1lX3RvX3J1bjogc3RyaW5nO1xuXHRtZXRob2RfcnVuOiBzdHJpbmc7XG5cdG1ldGhvZF9ydW5fZGF0YT86IE9iamVjdDtcblx0bWV0aG9kX2NvbXBsZXRlPzogc3RyaW5nO1xuXHRtZXRob2RfY29tcGxldGVfZGF0YT86IE9iamVjdDtcblx0cnVubmluZzogYm9vbGVhbjtcblx0dGltZXpvbmU/OiBzdHJpbmc7XG5cdG5leHRfcnVuPzogRGF0ZTtcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL21vZGVscy9kaWFsb2cubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgRGlhbG9nSW5wdXRGaWVsZE1vZGVsIHtcblx0bGFiZWw6IHN0cmluZztcblx0Zm9ybTogc3RyaW5nO1xuXHRkYXRhOiBzdHJpbmcgfCBudW1iZXIgfCBhbnlbXTsgXG5cdHZhbGlkYXRvcnM6IGFueVtdO1xuXHR2YWxpZGF0b3JFcnJvcnM/OiBzdHJpbmdbXTtcblx0dmFsaWRhdG9yTXNnPzogc3RyaW5nW107XG5cdHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXHRyZXF1aXJlZD86IGJvb2xlYW47XG5cdHR5cGU/OiBEaWFsb2dJbnB1dEZpZWxkVHlwZXM7XG5cdG9wdGlvbnM/OiBEaWFsb2dJbnB1dEZpZWxkU2VsZWN0T3B0aW9uc1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpYWxvZ0lucHV0RmllbGRTZWxlY3RPcHRpb25zIHtcblx0dmFsdWU6IHN0cmluZyB8IG51bWJlcjtcblx0dGV4dDogc3RyaW5nO1xufVxuXG50eXBlIERpYWxvZ0lucHV0RmllbGRUeXBlcyA9ICd0ZXh0JyB8ICdudW1iZXInIHwgJ3NlbGVjdCcgfCAnbmctc2VsZWN0JyB8ICdzdGF0ZScgfCAnZW1haWwnIHwgJ3Bhc3N3b3JkJyB8ICd0ZXh0YXJlYSc7Il19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvZmlsZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRvY3VtZW50IH0gZnJvbSAnLi9jb2xsZWN0aW9uLWRvY3VtZW50Lm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBGaWxlTW9kZWwgZXh0ZW5kcyBDb2xsZWN0aW9uRG9jdW1lbnQge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHNpemU6IG51bWJlcjtcblx0a2V5OiBzdHJpbmc7XG5cdHR5cGU6IHN0cmluZztcblx0b3JkZXI6IG51bWJlcjtcblx0c3RhdHVzPzogc3RyaW5nO1xufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLW1ldGhvZC1sYXRlbmN5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL21vZGVscy9sb2ctbWV0aG9kLWxhdGVuY3kubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25Eb2N1bWVudCB9IGZyb20gJy4vY29sbGVjdGlvbi1kb2N1bWVudC5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9nTWV0aG9kTGF0ZW5jeU1vZGVsIGV4dGVuZHMgQ29sbGVjdGlvbkRvY3VtZW50IHtcblx0ZGF0ZV9zdGFydDogRGF0ZTtcblx0ZGF0ZV9lbmQ/OiBEYXRlO1xuXHRsYXRlbmN5X21zOiBudW1iZXI7XG5cdG1ldGhvZDogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLW1haW4tdGFiLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL21vZGVscy9uYXZiYXItbWFpbi10YWIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTmF2YmFyTWFpblRhYk1vZGVsIHtcbiAgICB0eXBlOiBOYXZiYXJNYWluVGFiVHlwZTtcbiAgICBsaW5rczogTmF2YmFyTWFpblRhYkxpbmtNb2RlbFtdO1xuXG4gICAgLy9Ecm9wIERvd25zXG4gICAgcm9sZXM/OiBzdHJpbmdbXTsgLy8gUm9sZXMgdG8gc2hvdyBtYWluIG5hdiBsYWJlbFxuICAgIGxhYmVsPzogc3RyaW5nOyAvL01haW4gTmF2IGxhYmVsXG5cbiAgICBsZWZ0PzogbnVtYmVyO1xuICAgIHRvdXJBbmNob3I/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgTmF2YmFyTWFpblRhYlR5cGUgPSAnbGluaycgfCAnZHJvcGRvd24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5hdmJhck1haW5UYWJMaW5rTW9kZWwge1xuICAgIHJvdXRlckxpbms6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHJvbGU6IHN0cmluZztcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvcGFnaW5hdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlY2xhcmUgdHlwZSBTb3J0TW9uZ28gPSBzdHJpbmcgfCBFeGNsdWRlPFNvcnREaXJlY3Rpb24sIHtcbiAgICAkbWV0YTogc3RyaW5nO1xufT4gfCBzdHJpbmdbXSB8IHtcbiAgICBba2V5OiBzdHJpbmddOiBTb3J0RGlyZWN0aW9uO1xufSB8IE1hcDxzdHJpbmcsIFNvcnREaXJlY3Rpb24+IHwgW3N0cmluZywgU29ydERpcmVjdGlvbl1bXSB8IFtzdHJpbmcsIFNvcnREaXJlY3Rpb25dO1xuXG4vKiogQHB1YmxpYyAqL1xuZXhwb3J0IGRlY2xhcmUgdHlwZSBTb3J0RGlyZWN0aW9uID0gMSB8IC0xIHwgJ2FzYycgfCAnZGVzYycgfCAnYXNjZW5kaW5nJyB8ICdkZXNjZW5kaW5nJyB8IHtcbiAgICAkbWV0YTogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0aW9uT3B0aW9ucyB7XG5cdGxpbWl0PzogbnVtYmVyO1xuXHRza2lwPzogbnVtYmVyO1xuXHRzb3J0PzogU29ydE1vbmdvO1xuXHRmaWVsZHM/OiB7XG5cdFx0W2tleTogc3RyaW5nXTogbnVtYmVyO1xuXHR9O1xufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvcGVybWlzc2lvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBNb2R1bGVQZXJtaXNzaW9uTW9kZWwge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHZpZXdzOiBNb2R1bGVQZXJtaXNzaW9uVmlld01vZGVsW107XG5cdGFwcHJvdmFsPzogTW9kdWxlUGVybWlzc2lvbkFwcHJvdmFsTW9kZWw7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kdWxlUGVybWlzc2lvblZpZXdNb2RlbCB7XG5cdGxpbms6IHN0cmluZztcblx0bGFiZWw6IHN0cmluZztcblx0aGFzX3BhcmFtZXRlcjogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2R1bGVQZXJtaXNzaW9uQXBwcm92YWxNb2RlbCB7XG5cdHR5cGU6IHN0cmluZztcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWRhdGEtbGFiZWwubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL3NlbGVjdC1kYXRhLWxhYmVsLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNlbGVjdERhdGFMYWJlbE1vZGVsIHtcblx0ZGF0YTogc3RyaW5nO1xuXHRsYWJlbDogc3RyaW5nO1xuXHRzZWxlY3RlZDogYm9vbGVhbjtcblx0dHlwZTogc3RyaW5nO1xuXHRzdWJEYXRhOiBzdHJpbmc7XG5cdHN1YnR5cGU6IHN0cmluZztcblx0c3ViTGFiZWw6IHN0cmluZztcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL21vZGVscy9zdWJzY3JpcHRpb24ubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBTdWJzY3JpcHRpb25Nb2RlbCB7XG5cdFtrZXk6IHN0cmluZ106IFN1YnNjcmlwdGlvblB1Yk1vZGVsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNjcmlwdGlvblB1Yk1vZGVsIHtcblx0Y2hlY2s/OiBhbnk7XG5cdFxuXHQvKiBcblx0XHROYW1lOiBwcmVGdW5jdGlvblxuXHRcdFR5cGU6IEZ1bmN0aW9uXG5cdFx0SW5wdXRzOiAwIG9yIG1vcmUgcHVibGljYXRpb24gcGFyYW1ldGVycyAoaWU6IGlkX2J1bGt0YW5rOiBzdHJpbmcpXG5cdFx0T3V0cHV0czogUHJvbWlzZTxPYmplY3Q+XG5cdFx0UmVhc29uOiBGb3IgYWdncmVnYXRlIHB1YnMgdG8gc3RheSBjdXJyZW50IChydW5zIGJlZm9yZSBmdW5jdGlvbikgdG8gZ2V0IGxhdGVzdCBzdWItZGF0YVxuXHRcdFJlcXVpcmVkOiBTaG91bGQgYmUgdXNlZCB3aXRoIGFnZ3JlZ2F0ZSBwdWJzXG5cdCovXG5cdHByZUZ1bmN0aW9uPzogKC4uLnBhcmFtZXRlcnM6IGFueVtdKSA9PiBQcm9taXNlPE9iamVjdD47XG5cblx0LyogXG5cdFx0TmFtZTogZnVuY3Rpb25cblx0XHRUeXBlOiBGdW5jdGlvblxuXHRcdElucHV0czogMCBvciBtb3JlIHB1YmxpY2F0aW9uIHBhcmFtZXRlcnMgKGllOiBpZF9idWxrdGFuazogc3RyaW5nKVxuXHRcdE91dHB1dHM6IFByb21pc2U8YW55IHwgYW55W10+XG5cdFx0UmVhc29uOiBSdW5zIHB1YmxpY2F0aW9uIHF1ZXJ5IHRvIGdldCBkYXRhIHRvIHNlbmQgdG8gY2xpZW50XG5cdFx0UmVxdWlyZWQ6IEFsd2F5c1xuXHQqL1xuXHRmdW5jdGlvbjogKC4uLnBhcmFtZXRlcnM6IGFueVtdKSA9PiBQcm9taXNlPGFueSB8IGFueVtdPjtcblxuXHQvKiBcblx0XHROYW1lOiBjb2xsZWN0aW9uc1xuXHRcdFR5cGU6IEFycmF5XG5cdFx0SW5wdXRzOiBOL0Fcblx0XHRPdXRwdXRzOiBOL0Fcblx0XHRSZWFzb246IEFsbCBjb2xsZWN0aW9ucyB3aGljaCB3aWxsIGJlIHdhdGNoaW5nIG9wbG9nIHRvIHJlLXJ1biB0aGlzIHB1YlxuXHRcdFJlcXVpcmVkOiBBbHdheXNcblx0Ki9cblx0Y29sbGVjdGlvbnM6IHN0cmluZ1tdO1xuXG5cdC8qIFxuXHRcdE5hbWU6IGZldGNoRnVuY3Rpb25cblx0XHRUeXBlOiBGdW5jdGlvblxuXHRcdElucHV0czogRG9jdW1lbnQgdGhhdCBpcyBiZWluZyBtb2RpZmllZCAoYW55IGNvbGxlY3Rpb24gaW4gY29sbGVjdGlvbnMpLCBwdWJsaWNhdGlvbiBwYXJhbWV0ZXJzIE9SIHByZUZ1bmN0aW9uIG9iamVjdFxuXHRcdE91dHB1dHM6IGJvb2xlYW5cblx0XHRSZWFzb246IFJ1bnMgdGhpcyBmdW5jdGlvbiB0byBzZWUgaWYgd2Ugc2hvdWxkIHJlLXJ1biBwdWJsaWNhdGlvbiBxdWVyeVxuXHRcdFJlcXVpcmVkOiBTaG91bGQgYmUgdXNlZCBpZiBwdWJsaWNhdGlvbiBwYXJhbWV0ZXJzIGFyZSBwcmVzZW50XG5cdCovXG5cdGZldGNoRnVuY3Rpb24/OiAoZG9jdW1lbnQ6IE9iamVjdCwgLi4ucGFyYW1ldGVyczogYW55W10pID0+IGJvb2xlYW47XG5cblx0LyogXG5cdFx0TmFtZTogd3Nfc3BlY2lmaWNcblx0XHRUeXBlOiBCb29sZWFuXG5cdFx0SW5wdXRzOiBOL0Fcblx0XHRPdXRwdXRzOiBOL0Fcblx0XHRSZWFzb246IFVzZSBpZiB1c2VyIGlzIG5lZWRlZCAoaWUgJ3VzZXJzJyBwdWJsaWNhdGlvbiwgb25seSBzZW5kICdBZG1pbicgaWYgJ3N1cGVyLWFkbWluJyByb2xlKVxuXHRcdFJlcXVpcmVkOiBPbmx5IGlmIGZ1bmN0aW9uIGhhcyBwYXJhbWV0ZXIvc1xuXHRcdC0gTG93IHBlcmZvcm1hbmNlIGFzIGlmIHJ1bnMgcHViIGZvciBlYWNoIHVzZXIsIG9ubHkgdXNlIGlmIG5lZWRlZFxuXHQqL1xuXHR3c19zcGVjaWZpYz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZlQ2xpZW50U3Vic2NyaXB0aW9uTW9kZWwge1xuXHRtZXNzYWdlSWQ6IG51bWJlcjtcblx0bWVzc2FnZVJvdXRlOiBzdHJpbmc7XG5cdHN1YnNjcmlwdGlvbjogc3RyaW5nO1xuXHRwYXJhbWV0ZXJzOiBhbnlbXTtcblx0c3ViamVjdDogU3ViamVjdDxhbnk+O1xufSJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC10aWNrZXQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL3N1cHBvcnQtdGlja2V0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uRG9jdW1lbnQgfSBmcm9tICcuL2NvbGxlY3Rpb24tZG9jdW1lbnQubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1cHBvcnRUaWNrZXRNb2RlbCBleHRlbmRzIENvbGxlY3Rpb25Eb2N1bWVudCB7XG5cdHR5cGU6IFN1cHBvcnRUaWNrZXRUeXBlO1xuXHRwcmlvcml0eTogU3VwcG9ydFRpY2tldFByaW9yaXR5O1xuXHRpc3N1ZTogc3RyaW5nO1xuXHRzdXBwb3J0X3RpY2tldF9udW1iZXI6IG51bWJlcjtcblx0c3VwcG9ydF90aWNrZXRfbnVtYmVyX3N0cmluZzogc3RyaW5nO1xuXHRzdGF0dXM6IFN1cHBvcnRUaWNrZXRTdGF0dXM7XG5cdHN1YnN0YXR1czogU3VwcG9ydFRpY2tldFN1YnN0YXR1cztcblx0Y2xpZW50OiBzdHJpbmc7XG5cdGlkX2NsaWVudDogc3RyaW5nO1xuXHRtZXNzYWdlczogU3VwcG9ydFRpY2tldE1lc3NhZ2VNb2RlbFtdO1xuXHRkYXRlX2NyZWF0ZWQ6IERhdGU7XG5cdGRhdGVfY3JlYXRlZF9zdHJpbmc6IHN0cmluZztcblx0aWRfdXNlcl9jcmVhdGVkOiBzdHJpbmc7XG5cdHVzZXJfY3JlYXRlZDogc3RyaW5nO1xuXHRiaWxsYWJsZTogYm9vbGVhbjtcblx0ZGF0ZV9pbnZlc3RpZ2F0aW9uPzogRGF0ZTtcblx0ZGF0ZV9jbG9zZWQ/OiBEYXRlO1xuXHRmaWxlczogc3RyaW5nW107XG5cdGN1cnJlbnRfd2F0Y2hlcnM6IFN1cHBvcnRUaWNrZXRXYXRjaGVyc01vZGVsW107XG5cdGNsaWVudF91c2VyOiBTdXBwb3J0VGlja2V0Q2xpZW50VXNlck1vZGVsO1xuXHR1c2Vyc19hc3NpZ25lZDogU3VwcG9ydFRpY2tldFVzZXJBc3NpZ25lZE1vZGVsW107XG5cdGVzdGltYXRlZF9iaWxsYWJsZV9ob3Vycz86IG51bWJlcjtcblx0YmlsbGFibGVfaG91cnM/OiBudW1iZXI7XG5cdGJpbGxfZGVzY3JpcHRpb246IHN0cmluZztcblx0dGFza3M6IFN1cHBvcnRUaWNrZXRUYXNrTW9kZWxbXTtcblx0bm90ZXM6IFN1cHBvcnRUaWNrZXROb3RlTW9kZWxbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdXBwb3J0VGlja2V0Q2xpZW50VXNlck1vZGVsIHtcblx0aWRfdXNlcjogc3RyaW5nO1xuXHR1c2VyOiBzdHJpbmc7XG5cdGVtYWlsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFN1cHBvcnRUaWNrZXRQcmlvcml0eSA9ICdIaWdoJyB8ICdMb3cnO1xuZXhwb3J0IHR5cGUgU3VwcG9ydFRpY2tldFR5cGUgPSAnU3lzdGVtIEltcGFpcm1lbnQnIHwgJ1JlcXVlc3QgTmV3IEZlYXR1cmUnIHwgJ0dlbmVyYWwgSW5xdWVyeScgfCAnTmV3IEJ1aWxkJztcblxuZXhwb3J0IHR5cGUgU3VwcG9ydFRpY2tldFN0YXR1cyA9ICdPcGVuZWQnIHwgJ1JldmlldycgfCAnQ2xvc2VkJztcblxuZXhwb3J0IHR5cGUgU3VwcG9ydFRpY2tldFN1YnN0YXR1cyA9ICdOZXcnIHwgJ1dvcmsgSW4gUHJvZ3Jlc3MnIHwgJ0lkbGUnIHwgJ0F3YWl0aW5nIEN1c3RvbWVyIEludGVyYWN0aW9uJztcblxuZXhwb3J0IGludGVyZmFjZSBTdXBwb3J0VGlja2V0TWVzc2FnZU1vZGVsIHtcblx0bWVzc2FnZTogc3RyaW5nO1xuXHRpZF91c2VyOiBzdHJpbmc7XG5cdHVzZXI6IHN0cmluZztcblx0ZGF0ZTogRGF0ZTtcblx0dHlwZTogU3VwcG9ydFRpY2tldE1lc3NhZ2VUeXBlO1xufVxuXG50eXBlIFN1cHBvcnRUaWNrZXRNZXNzYWdlVHlwZSA9ICdSZXNvbHZlSU8nIHwgJ0NsaWVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VwcG9ydFRpY2tldFdhdGNoZXJzTW9kZWwge1xuXHR1c2VyOiBzdHJpbmc7XG5cdGlkX3VzZXI6IHN0cmluZztcblx0ZW1haWw6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdXBwb3J0VGlja2V0VGFza01vZGVsIHtcblx0ZGVzY3JpcHRpb246IHN0cmluZztcblx0Y29tcGxldGVkOiBib29sZWFuO1xuXHRpZF91c2VyOiBzdHJpbmc7XG5cdHVzZXI6IHN0cmluZztcblx0ZGF0ZV9jcmVhdGVkOiBEYXRlO1xuXHRkYXRlX2NvbXBsZXRlZD86IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VwcG9ydFRpY2tldE5vdGVNb2RlbCB7XG5cdGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cdGlkX3VzZXI6IHN0cmluZztcblx0dXNlcjogc3RyaW5nO1xuXHRkYXRlX2NyZWF0ZWQ6IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VwcG9ydFRpY2tldFVzZXJBc3NpZ25lZE1vZGVsICB7XG5cdGlkX3VzZXI6IHN0cmluZztcblx0dXNlcjogc3RyaW5nO1xuXHRkYXRlX2NyZWF0ZWQ6IERhdGU7XG59ICJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1ncm91cC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvdXNlci1ncm91cC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRvY3VtZW50IH0gZnJvbSAnLi9jb2xsZWN0aW9uLWRvY3VtZW50Lm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBVc2VyR3JvdXBNb2RlbCBleHRlbmRzIENvbGxlY3Rpb25Eb2N1bWVudCB7XG5cdG5hbWU6IHN0cmluZztcblx0cGVybWlzc2lvbnM6IFVzZXJHcm91cFBlcm1pc3Npb25Nb2RlbFtdO1xuXHRub3RpZmljYXRpb25zOiBVc2VyR3JvdXBOb3RpZmljYXRpb25Nb2RlbFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJHcm91cE5vdGlmaWNhdGlvbk1vZGVsIHtcblx0bmFtZTogc3RyaW5nO1xuXHRzZWxlY3RlZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyR3JvdXBQZXJtaXNzaW9uTW9kZWwge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHNlbGVjdGVkOiBib29sZWFuO1xuXHR2aWV3czogVXNlckdyb3VwVmlld01vZGVsW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckdyb3VwVmlld01vZGVsIHtcblx0bGluazogc3RyaW5nO1xuXHRzZWxlY3RlZDogYm9vbGVhbjtcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9tb2RlbHMvdXNlci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRvY3VtZW50IH0gZnJvbSAnLi9jb2xsZWN0aW9uLWRvY3VtZW50Lm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBVc2VyTW9kZWwgZXh0ZW5kcyBDb2xsZWN0aW9uRG9jdW1lbnQge1xuXHRyb2xlczogVXNlclJvbGVNb2RlbDtcblx0dXNlcm5hbWU6IHN0cmluZztcblx0ZW1haWw6IHN0cmluZztcblx0ZnVsbG5hbWU6IHN0cmluZztcblx0YWN0aXZlOiBib29sZWFuO1xuXHRwaG9uZW51bWJlcjogc3RyaW5nO1xuXHRyZWFkb25seTogYm9vbGVhbjtcblx0b3RoZXI6IE90aGVyT2JqZWN0O1xuXG5cdC8vc2VjdXJpdHlcblx0YXR0ZW1wdHM6IG51bWJlcjtcblx0c2FsdDogc3RyaW5nO1xuXHRoYXNoOiBzdHJpbmc7XG5cblx0bGFzdD86IERhdGU7XG5cdHNldHRpbmdzPzogVXNlclNldHRpbmdzTW9kZWw7XG5cdHNlcnZpY2VzPzogT2JqZWN0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJTZXR0aW5nc01vZGVsIHtcblx0dGFibGVfY29sb3I6IHN0cmluZztcblx0dGFibGVfZm9udF9jb2xvcjogc3RyaW5nO1xuXHRzZWNvbmRhcnlfdGFibGVfY29sb3I6IHN0cmluZztcblx0c2Vjb25kYXJ5X3RhYmxlX2ZvbnRfY29sb3I6IHN0cmluZztcblx0dGVydGlhcnlfdGFibGVfY29sb3I6IHN0cmluZztcblx0dGVydGlhcnlfdGFibGVfZm9udF9jb2xvcjogc3RyaW5nO1xuXHRmb250X3NpemU6IG51bWJlcjtcblx0Y29sbGFwc2FibGVfbWVudTogYm9vbGVhbjtcblx0ZW50cmllc19wZXJfcGFnZTogc3RyaW5nXG5cdHdhcm5pbmdfY29sb3I6IHN0cmluZztcblx0d2FybmluZ19mb250X2NvbG9yOiBzdHJpbmc7XG5cdHdhcm5pbmdfaG92ZXJfY29sb3I6IHN0cmluZztcblx0c3VjY2Vzc19jb2xvcjogc3RyaW5nO1xuXHRzdWNjZXNzX2ZvbnRfY29sb3I6IHN0cmluZztcblx0c3VjY2Vzc19ob3Zlcl9jb2xvcjogc3RyaW5nO1xuXHRkYW5nZXJfY29sb3I6IHN0cmluZztcblx0ZGFuZ2VyX2ZvbnRfY29sb3I6IHN0cmluZztcblx0ZGFuZ2VyX2hvdmVyX2NvbG9yOiBzdHJpbmc7XG5cdGluZm9fY29sb3I6IHN0cmluZztcblx0aW5mb19mb250X2NvbG9yOiBzdHJpbmc7XG5cdGluZm9faG92ZXJfY29sb3I6IHN0cmluZztcblx0cHJpbWFyeV9jb2xvcjogc3RyaW5nO1xuXHRwcmltYXJ5X2ZvbnRfY29sb3I6IHN0cmluZztcblx0cHJpbWFyeV9ob3Zlcl9jb2xvcjogc3RyaW5nO1xuXHRzZWNvbmRhcnlfY29sb3I6IHN0cmluZztcblx0c2Vjb25kYXJ5X2ZvbnRfY29sb3I6IHN0cmluZztcblx0c2Vjb25kYXJ5X2hvdmVyX2NvbG9yOiBzdHJpbmc7XG5cdHJvdXRpbmdfcHJlZmVyZW5jZTogc3RyaW5nO1xuXHRvcGVuaW5nX3JvdXRlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclJvbGVNb2RlbCB7XG5cdHN1cGVyX2FkbWluOiBib29sZWFuO1xuXHRhcHByb3ZhbHM6IFVzZXJSb2xlQXBwcm92YWxNb2RlbFtdO1xuXHRncm91cHM6IFVzZXJSb2xlR3JvdXBNb2RlbFtdO1xuXHRub3RpZmljYXRpb25zOiBzdHJpbmdbXTtcblx0bWlzY3M6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJSb2xlQXBwcm92YWxNb2RlbCB7XG5cdHR5cGU6IHN0cmluZzsgLy8gcG8gb3IgYWZlIG9yIGNoZW1pY2FsXG5cdGtleV8xOiBzdHJpbmc7IC8vIGRlcGFydG1lbnQgb3IgYWNjb3VudGluZyBjb2RlXG5cdGtleV8yOiBzdHJpbmc7IC8vIG9yZGVyIHR5cGVcblx0a2V5XzM6IHN0cmluZzsgLy8gb3RoZXIvYWRkaXRpb25hbFxuXHRuYW1lOiBzdHJpbmc7IC8vIGFwcHJvdmFsIG5hbWVcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyUm9sZUdyb3VwTW9kZWwge1xuXHRuYW1lOiBzdHJpbmc7XG5cdHZpZXdzOiBzdHJpbmdbXTtcblx0eWFyZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdGhlck9iamVjdCB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufSJdfQ==