ngx-techlify-core 11.5.0 → 14.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. package/README.md +24 -24
  2. package/esm2020/lib/action-popup/action-popup.component.mjs +34 -0
  3. package/{esm2015/lib/action-popup/action-popup.model.js → esm2020/lib/action-popup/action-popup.model.mjs} +3 -3
  4. package/esm2020/lib/action-popup/action-popup.module.mjs +32 -0
  5. package/{esm2015/lib/action-popup/index.js → esm2020/lib/action-popup/index.mjs} +3 -3
  6. package/esm2020/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.mjs +18 -0
  7. package/esm2020/lib/audit-log/audit-log-for-model/audit-log-for-model.component.mjs +51 -0
  8. package/esm2020/lib/audit-log/audit-log-for-model/audit-log-for-model.module.mjs +40 -0
  9. package/esm2020/lib/audit-log/audit-log-list/audit-log-list-routing.module.mjs +18 -0
  10. package/esm2020/lib/audit-log/audit-log-list/audit-log-list.component.mjs +139 -0
  11. package/esm2020/lib/audit-log/audit-log-list/audit-log-list.module.mjs +48 -0
  12. package/esm2020/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.mjs +18 -0
  13. package/esm2020/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.mjs +74 -0
  14. package/esm2020/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.mjs +40 -0
  15. package/esm2020/lib/audit-log/audit-log-routing.module.mjs +25 -0
  16. package/esm2020/lib/audit-log/audit-log-view/audit-log-view-routing.module.mjs +18 -0
  17. package/esm2020/lib/audit-log/audit-log-view/audit-log-view.component.mjs +51 -0
  18. package/esm2020/lib/audit-log/audit-log-view/audit-log-view.module.mjs +32 -0
  19. package/esm2020/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.mjs +18 -0
  20. package/esm2020/lib/audit-log/audit-log-view-model/audit-log-view-model.component.mjs +56 -0
  21. package/esm2020/lib/audit-log/audit-log-view-model/audit-log-view-model.module.mjs +32 -0
  22. package/esm2020/lib/audit-log/audit-log.module.mjs +31 -0
  23. package/esm2020/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.mjs +18 -0
  24. package/esm2020/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.mjs +37 -0
  25. package/esm2020/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.mjs +32 -0
  26. package/{esm2015/lib/base-model/index.js → esm2020/lib/base-model/index.mjs} +4 -4
  27. package/esm2020/lib/base-model/techlify-form-component.class.mjs +49 -0
  28. package/esm2020/lib/base-model/techlify-listing-component.class.mjs +41 -0
  29. package/esm2020/lib/base-model/techlify-service.class.mjs +64 -0
  30. package/esm2020/lib/core/alert.service.mjs +38 -0
  31. package/esm2020/lib/core/api-prefix.interceptor.mjs +26 -0
  32. package/esm2020/lib/core/authentication.guard.mjs +35 -0
  33. package/esm2020/lib/core/authentication.service.mjs +54 -0
  34. package/esm2020/lib/core/cache.interceptor.mjs +58 -0
  35. package/esm2020/lib/core/config.service.mjs +45 -0
  36. package/esm2020/lib/core/core.module.mjs +63 -0
  37. package/esm2020/lib/core/credentials.service.mjs +79 -0
  38. package/esm2020/lib/core/dataManager.service.mjs +119 -0
  39. package/esm2020/lib/core/error-handler.interceptor.mjs +48 -0
  40. package/esm2020/lib/core/error-handler.service.mjs +55 -0
  41. package/esm2020/lib/core/filter.service.mjs +37 -0
  42. package/esm2020/lib/core/form-validator.service.mjs +24 -0
  43. package/esm2020/lib/core/header.interceptor.mjs +24 -0
  44. package/esm2020/lib/core/http-cache.service.mjs +107 -0
  45. package/esm2020/lib/core/http.service.mjs +84 -0
  46. package/{esm2015/lib/core/index.js → esm2020/lib/core/index.mjs} +22 -21
  47. package/{esm2015/lib/core/logger.service.js → esm2020/lib/core/logger.service.mjs} +100 -100
  48. package/esm2020/lib/core/route-reusable-strategy.mjs +36 -0
  49. package/esm2020/lib/core/snack/snack.component.mjs +33 -0
  50. package/esm2020/lib/core/snack/snack.module.mjs +36 -0
  51. package/esm2020/lib/core/storage.service.mjs +38 -0
  52. package/esm2020/lib/core/techlify-config.model.mjs +28 -0
  53. package/esm2020/lib/core/token.interceptor.mjs +28 -0
  54. package/esm2020/lib/data-table/data-table.component.mjs +208 -0
  55. package/esm2020/lib/data-table/data-table.model.mjs +11 -0
  56. package/esm2020/lib/data-table/data-table.module.mjs +36 -0
  57. package/{esm2015/lib/data-table/index.js → esm2020/lib/data-table/index.mjs} +3 -3
  58. package/{esm2015/lib/date-validator.js → esm2020/lib/date-validator.mjs} +10 -10
  59. package/esm2020/lib/document-viewer/document-viewer.component.mjs +65 -0
  60. package/esm2020/lib/document-viewer/document-viewer.module.mjs +36 -0
  61. package/{esm2015/lib/document-viewer/index.js → esm2020/lib/document-viewer/index.mjs} +3 -3
  62. package/{esm2015/lib/document-viewer/viewer-config.model.js → esm2020/lib/document-viewer/viewer-config.model.mjs} +3 -3
  63. package/esm2020/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.mjs +32 -0
  64. package/esm2020/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.mjs +76 -0
  65. package/esm2020/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.mjs +36 -0
  66. package/{esm2015/lib/email-subscription/email-subscription-for-user/index.js → esm2020/lib/email-subscription/email-subscription-for-user/index.mjs} +2 -2
  67. package/esm2020/lib/email-subscription/email-subscription-routing.module.mjs +18 -0
  68. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.mjs +18 -0
  69. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.mjs +105 -0
  70. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.mjs +44 -0
  71. package/{esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.js → esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.mjs} +2 -2
  72. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.mjs +34 -0
  73. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.mjs +161 -0
  74. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.mjs +44 -0
  75. package/{esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.js → esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.mjs} +1 -1
  76. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.mjs +18 -0
  77. package/esm2020/lib/email-subscription/email-subscription-type/email-subscription-type.module.mjs +22 -0
  78. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.mjs +18 -0
  79. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.mjs +101 -0
  80. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.mjs +43 -0
  81. package/{esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.js → esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.mjs} +2 -2
  82. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.mjs +34 -0
  83. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.mjs +165 -0
  84. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.mjs +48 -0
  85. package/{esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.js → esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.mjs} +2 -2
  86. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.mjs +18 -0
  87. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.mjs +52 -0
  88. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.mjs +40 -0
  89. package/{esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.js → esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.mjs} +2 -2
  90. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.mjs +18 -0
  91. package/esm2020/lib/email-subscription/email-subscription-user/email-subscription-user.module.mjs +22 -0
  92. package/esm2020/lib/email-subscription/email-subscription.module.mjs +22 -0
  93. package/esm2020/lib/entity-files/entity-file-form/entity-file-form.component.mjs +144 -0
  94. package/esm2020/lib/entity-files/entity-file.service.mjs +43 -0
  95. package/esm2020/lib/entity-files/entity-files-view-all.component.mjs +320 -0
  96. package/esm2020/lib/entity-files/entity-files-view-all.module.mjs +66 -0
  97. package/{esm2015/lib/entity-files/index.js → esm2020/lib/entity-files/index.mjs} +3 -3
  98. package/esm2020/lib/export-excel/export-excel-button/export-excel-button.component.mjs +32 -0
  99. package/esm2020/lib/export-excel/export-excel.module.mjs +24 -0
  100. package/esm2020/lib/file-dropper/file-dropper.component.mjs +125 -0
  101. package/{esm2015/lib/file-dropper/file-dropper.model.js → esm2020/lib/file-dropper/file-dropper.model.mjs} +3 -3
  102. package/esm2020/lib/file-dropper/file-dropper.module.mjs +30 -0
  103. package/{esm2015/lib/file-dropper/index.js → esm2020/lib/file-dropper/index.mjs} +3 -3
  104. package/esm2020/lib/import-csv/data-import/data-import.component.mjs +18 -0
  105. package/esm2020/lib/import-csv/failed-items-list/failed-items-list.component.mjs +35 -0
  106. package/esm2020/lib/import-csv/field-mapping/field-mapping.component.mjs +153 -0
  107. package/esm2020/lib/import-csv/import-csv-config.mjs +2 -0
  108. package/esm2020/lib/import-csv/import-csv.component.mjs +198 -0
  109. package/esm2020/lib/import-csv/import-csv.module.mjs +74 -0
  110. package/esm2020/lib/import-csv/import-history-list/import-history-list.component.mjs +71 -0
  111. package/esm2020/lib/import-csv/import-success/import-success.component.mjs +24 -0
  112. package/{esm2015/lib/loader/index.js → esm2020/lib/loader/index.mjs} +2 -2
  113. package/esm2020/lib/loader/loader.component.mjs +23 -0
  114. package/esm2020/lib/loader/loader.module.mjs +28 -0
  115. package/esm2020/lib/login-history-for-user/login-history-for-user-routing.module.mjs +26 -0
  116. package/esm2020/lib/login-history-for-user/login-history-for-user.component.mjs +92 -0
  117. package/esm2020/lib/login-history-for-user/login-history-for-user.module.mjs +44 -0
  118. package/esm2020/lib/material.module.mjs +115 -0
  119. package/esm2020/lib/note/comment-form/comment-form.component.mjs +77 -0
  120. package/{esm2015/lib/note/index.js → esm2020/lib/note/index.mjs} +4 -4
  121. package/esm2020/lib/note/note-form/note-form.component.mjs +79 -0
  122. package/esm2020/lib/note/note-list/note-list.component.mjs +148 -0
  123. package/esm2020/lib/note/note.module.mjs +54 -0
  124. package/esm2020/lib/note/note.service.mjs +29 -0
  125. package/esm2020/lib/read-more/read-more.component.mjs +43 -0
  126. package/esm2020/lib/read-more/read-more.module.mjs +30 -0
  127. package/esm2020/lib/request-helper/request-helper.service.mjs +106 -0
  128. package/{esm2015/lib/searchable-selector/index.js → esm2020/lib/searchable-selector/index.mjs} +3 -3
  129. package/esm2020/lib/searchable-selector/mat-select-infinite-scroll.directive.mjs +84 -0
  130. package/esm2020/lib/searchable-selector/searchable-selector.component.mjs +350 -0
  131. package/esm2020/lib/searchable-selector/searchable-selector.module.mjs +41 -0
  132. package/esm2020/lib/techlify-feature/on-off-switch/on-off-switch.component.mjs +24 -0
  133. package/esm2020/lib/techlify-feature/techlify-feature-enabled.directive.mjs +73 -0
  134. package/esm2020/lib/techlify-feature/techlify-feature-listing.component.mjs +172 -0
  135. package/esm2020/lib/techlify-feature/techlify-feature.module.mjs +48 -0
  136. package/{esm2015/lib/techlify-feature/techlify-feature.routing.js → esm2020/lib/techlify-feature/techlify-feature.routing.mjs} +12 -12
  137. package/esm2020/lib/techlify-feature/techlify-feature.service.mjs +26 -0
  138. package/{esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.js → esm2020/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.mjs} +15 -15
  139. package/esm2020/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.mjs +285 -0
  140. package/esm2020/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.mjs +38 -0
  141. package/esm2020/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.mjs +180 -0
  142. package/esm2020/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.mjs +46 -0
  143. package/esm2020/lib/techlify-update/techlify-update-form/techlify-update-form.component.mjs +114 -0
  144. package/esm2020/lib/techlify-update/techlify-update-form/techlify-update-form.module.mjs +38 -0
  145. package/esm2020/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.mjs +28 -0
  146. package/esm2020/lib/techlify-update/techlify-update-history/techlify-update-history.component.mjs +144 -0
  147. package/esm2020/lib/techlify-update/techlify-update-history/techlify-update-history.module.mjs +47 -0
  148. package/esm2020/lib/techlify-update/techlify-update-routing.module.mjs +28 -0
  149. package/esm2020/lib/techlify-update/techlify-update.module.mjs +51 -0
  150. package/esm2020/lib/techlify-update/techlify-update.service.mjs +41 -0
  151. package/esm2020/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.mjs +162 -0
  152. package/esm2020/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.mjs +77 -0
  153. package/esm2020/lib/techlify-update/update-notifier/update-notifier.component.mjs +53 -0
  154. package/esm2020/lib/techlify-update/update-notifier/update-notifier.module.mjs +39 -0
  155. package/esm2020/lib/techlify-update/update-view/update-view.component.mjs +38 -0
  156. package/esm2020/lib/techlify-update/update-view/update-view.module.mjs +30 -0
  157. package/esm2020/lib/timeline-filter/calculate-timeline.mjs +101 -0
  158. package/{esm2015/lib/timeline-filter/index.js → esm2020/lib/timeline-filter/index.mjs} +4 -4
  159. package/esm2020/lib/timeline-filter/timeline-filter-routing.module.mjs +18 -0
  160. package/esm2020/lib/timeline-filter/timeline-filter.component.mjs +237 -0
  161. package/esm2020/lib/timeline-filter/timeline-filter.module.mjs +60 -0
  162. package/{esm2015/lib/timeline-filter/timeline.model.js → esm2020/lib/timeline-filter/timeline.model.mjs} +18 -18
  163. package/{esm2015/lib/utility/date-utils.service.js → esm2020/lib/utility/date-utils.service.mjs} +50 -48
  164. package/{esm2015/lib/utility/index.js → esm2020/lib/utility/index.mjs} +4 -4
  165. package/esm2020/lib/utility/num-items-selector.component.mjs +31 -0
  166. package/esm2020/lib/utility/number-selector.component.mjs +42 -0
  167. package/esm2020/lib/utility/utility.module.mjs +28 -0
  168. package/esm2020/ngx-techlify-core.mjs +5 -0
  169. package/esm2020/public-api.mjs +97 -0
  170. package/fesm2015/ngx-techlify-core.mjs +7890 -0
  171. package/fesm2015/ngx-techlify-core.mjs.map +1 -0
  172. package/fesm2020/ngx-techlify-core.mjs +7795 -0
  173. package/fesm2020/ngx-techlify-core.mjs.map +1 -0
  174. package/index.d.ts +6 -0
  175. package/lib/action-popup/action-popup.component.d.ts +18 -14
  176. package/lib/action-popup/action-popup.component.d.ts.map +1 -0
  177. package/lib/action-popup/action-popup.model.d.ts +6 -5
  178. package/lib/action-popup/action-popup.model.d.ts.map +1 -0
  179. package/lib/action-popup/action-popup.module.d.ts +11 -2
  180. package/lib/action-popup/action-popup.module.d.ts.map +1 -0
  181. package/lib/action-popup/index.d.ts +3 -2
  182. package/lib/action-popup/index.d.ts.map +1 -0
  183. package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts +8 -2
  184. package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts.map +1 -0
  185. package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts +16 -12
  186. package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts.map +1 -0
  187. package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts +14 -2
  188. package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts.map +1 -0
  189. package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts +8 -2
  190. package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts.map +1 -0
  191. package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +36 -32
  192. package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts.map +1 -0
  193. package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +16 -2
  194. package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts.map +1 -0
  195. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts +8 -2
  196. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts.map +1 -0
  197. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +23 -19
  198. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts.map +1 -0
  199. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +14 -2
  200. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts.map +1 -0
  201. package/lib/audit-log/audit-log-routing.module.d.ts +8 -2
  202. package/lib/audit-log/audit-log-routing.module.d.ts.map +1 -0
  203. package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts +8 -2
  204. package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts.map +1 -0
  205. package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts +21 -17
  206. package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts.map +1 -0
  207. package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts +12 -2
  208. package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts.map +1 -0
  209. package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts +8 -2
  210. package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts.map +1 -0
  211. package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts +19 -15
  212. package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts.map +1 -0
  213. package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts +12 -2
  214. package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts.map +1 -0
  215. package/lib/audit-log/audit-log.module.d.ts +11 -2
  216. package/lib/audit-log/audit-log.module.d.ts.map +1 -0
  217. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts +8 -2
  218. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts.map +1 -0
  219. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts +15 -11
  220. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts.map +1 -0
  221. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts +12 -2
  222. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts.map +1 -0
  223. package/lib/base-model/index.d.ts +4 -3
  224. package/lib/base-model/index.d.ts.map +1 -0
  225. package/lib/base-model/techlify-form-component.class.d.ts +44 -43
  226. package/lib/base-model/techlify-form-component.class.d.ts.map +1 -0
  227. package/lib/base-model/techlify-listing-component.class.d.ts +48 -47
  228. package/lib/base-model/techlify-listing-component.class.d.ts.map +1 -0
  229. package/lib/base-model/techlify-service.class.d.ts +53 -52
  230. package/lib/base-model/techlify-service.class.d.ts.map +1 -0
  231. package/lib/core/alert.service.d.ts +16 -12
  232. package/lib/core/alert.service.d.ts.map +1 -0
  233. package/lib/core/api-prefix.interceptor.d.ts +15 -11
  234. package/lib/core/api-prefix.interceptor.d.ts.map +1 -0
  235. package/lib/core/authentication.guard.d.ts +14 -10
  236. package/lib/core/authentication.guard.d.ts.map +1 -0
  237. package/lib/core/authentication.service.d.ts +27 -23
  238. package/lib/core/authentication.service.d.ts.map +1 -0
  239. package/lib/core/cache.interceptor.d.ts +25 -21
  240. package/lib/core/cache.interceptor.d.ts.map +1 -0
  241. package/lib/core/config.service.d.ts +23 -19
  242. package/lib/core/config.service.d.ts.map +1 -0
  243. package/lib/core/core.module.d.ts +12 -3
  244. package/lib/core/core.module.d.ts.map +1 -0
  245. package/lib/core/credentials.service.d.ts +40 -36
  246. package/lib/core/credentials.service.d.ts.map +1 -0
  247. package/lib/core/dataManager.service.d.ts +74 -70
  248. package/lib/core/dataManager.service.d.ts.map +1 -0
  249. package/lib/core/error-handler.interceptor.d.ts +18 -14
  250. package/lib/core/error-handler.interceptor.d.ts.map +1 -0
  251. package/lib/core/error-handler.service.d.ts +18 -14
  252. package/lib/core/error-handler.service.d.ts.map +1 -0
  253. package/lib/core/filter.service.d.ts +12 -0
  254. package/lib/core/filter.service.d.ts.map +1 -0
  255. package/lib/core/form-validator.service.d.ts +12 -8
  256. package/lib/core/form-validator.service.d.ts.map +1 -0
  257. package/lib/core/header.interceptor.d.ts +12 -8
  258. package/lib/core/header.interceptor.d.ts.map +1 -0
  259. package/lib/core/http-cache.service.d.ts +58 -54
  260. package/lib/core/http-cache.service.d.ts.map +1 -0
  261. package/lib/core/http.service.d.ts +60 -56
  262. package/lib/core/http.service.d.ts.map +1 -0
  263. package/lib/core/index.d.ts +22 -20
  264. package/lib/core/index.d.ts.map +1 -0
  265. package/lib/core/logger.service.d.ts +86 -85
  266. package/lib/core/logger.service.d.ts.map +1 -0
  267. package/lib/core/route-reusable-strategy.d.ts +17 -13
  268. package/lib/core/route-reusable-strategy.d.ts.map +1 -0
  269. package/lib/core/snack/snack.component.d.ts +14 -8
  270. package/lib/core/snack/snack.component.d.ts.map +1 -0
  271. package/lib/core/snack/snack.module.d.ts +11 -2
  272. package/lib/core/snack/snack.module.d.ts.map +1 -0
  273. package/lib/core/storage.service.d.ts +19 -15
  274. package/lib/core/storage.service.d.ts.map +1 -0
  275. package/lib/core/techlify-config.model.d.ts +19 -18
  276. package/lib/core/techlify-config.model.d.ts.map +1 -0
  277. package/lib/core/token.interceptor.d.ts +15 -11
  278. package/lib/core/token.interceptor.d.ts.map +1 -0
  279. package/lib/data-table/data-table.component.d.ts +64 -60
  280. package/lib/data-table/data-table.component.d.ts.map +1 -0
  281. package/lib/data-table/data-table.model.d.ts +47 -46
  282. package/lib/data-table/data-table.model.d.ts.map +1 -0
  283. package/lib/data-table/data-table.module.d.ts +12 -2
  284. package/lib/data-table/data-table.module.d.ts.map +1 -0
  285. package/lib/data-table/index.d.ts +3 -2
  286. package/lib/data-table/index.d.ts.map +1 -0
  287. package/lib/date-validator.d.ts +2 -1
  288. package/lib/date-validator.d.ts.map +1 -0
  289. package/lib/document-viewer/document-viewer.component.d.ts +20 -16
  290. package/lib/document-viewer/document-viewer.component.d.ts.map +1 -0
  291. package/lib/document-viewer/document-viewer.module.d.ts +12 -2
  292. package/lib/document-viewer/document-viewer.module.d.ts.map +1 -0
  293. package/lib/document-viewer/index.d.ts +3 -2
  294. package/lib/document-viewer/index.d.ts.map +1 -0
  295. package/lib/document-viewer/viewer-config.model.d.ts +6 -5
  296. package/lib/document-viewer/viewer-config.model.d.ts.map +1 -0
  297. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts +13 -7
  298. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts.map +1 -0
  299. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts +21 -17
  300. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts.map +1 -0
  301. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts +13 -2
  302. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts.map +1 -0
  303. package/lib/email-subscription/email-subscription-for-user/index.d.ts +2 -1
  304. package/lib/email-subscription/email-subscription-for-user/index.d.ts.map +1 -0
  305. package/lib/email-subscription/email-subscription-routing.module.d.ts +8 -2
  306. package/lib/email-subscription/email-subscription-routing.module.d.ts.map +1 -0
  307. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts +8 -2
  308. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts.map +1 -0
  309. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts +36 -32
  310. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts.map +1 -0
  311. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts +15 -2
  312. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts.map +1 -0
  313. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts +2 -1
  314. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts.map +1 -0
  315. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts +15 -9
  316. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts.map +1 -0
  317. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts +34 -30
  318. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts.map +1 -0
  319. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts +15 -2
  320. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts.map +1 -0
  321. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts +2 -1
  322. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts.map +1 -0
  323. package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts +8 -2
  324. package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts.map +1 -0
  325. package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts +9 -2
  326. package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts.map +1 -0
  327. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts +8 -2
  328. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts.map +1 -0
  329. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts +36 -32
  330. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts.map +1 -0
  331. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts +15 -2
  332. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts.map +1 -0
  333. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts +2 -1
  334. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts.map +1 -0
  335. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts +15 -9
  336. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts.map +1 -0
  337. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts +36 -32
  338. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts.map +1 -0
  339. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts +16 -2
  340. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts.map +1 -0
  341. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts +2 -1
  342. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts.map +1 -0
  343. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts +8 -2
  344. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts.map +1 -0
  345. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts +17 -13
  346. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts.map +1 -0
  347. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts +14 -2
  348. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts.map +1 -0
  349. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts +2 -1
  350. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts.map +1 -0
  351. package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts +8 -2
  352. package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts.map +1 -0
  353. package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts +9 -2
  354. package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts.map +1 -0
  355. package/lib/email-subscription/email-subscription.module.d.ts +9 -2
  356. package/lib/email-subscription/email-subscription.module.d.ts.map +1 -0
  357. package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts +42 -38
  358. package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts.map +1 -0
  359. package/lib/entity-files/entity-file.service.d.ts +15 -11
  360. package/lib/entity-files/entity-file.service.d.ts.map +1 -0
  361. package/lib/entity-files/entity-files-view-all.component.d.ts +69 -65
  362. package/lib/entity-files/entity-files-view-all.component.d.ts.map +1 -0
  363. package/lib/entity-files/entity-files-view-all.module.d.ts +20 -2
  364. package/lib/entity-files/entity-files-view-all.module.d.ts.map +1 -0
  365. package/lib/entity-files/index.d.ts +3 -2
  366. package/lib/entity-files/index.d.ts.map +1 -0
  367. package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts +12 -8
  368. package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts.map +1 -0
  369. package/lib/export-excel/export-excel.module.d.ts +10 -2
  370. package/lib/export-excel/export-excel.module.d.ts.map +1 -0
  371. package/lib/file-dropper/file-dropper.component.d.ts +37 -33
  372. package/lib/file-dropper/file-dropper.component.d.ts.map +1 -0
  373. package/lib/file-dropper/file-dropper.model.d.ts +11 -10
  374. package/lib/file-dropper/file-dropper.model.d.ts.map +1 -0
  375. package/lib/file-dropper/file-dropper.module.d.ts +11 -2
  376. package/lib/file-dropper/file-dropper.module.d.ts.map +1 -0
  377. package/lib/file-dropper/index.d.ts +3 -2
  378. package/lib/file-dropper/index.d.ts.map +1 -0
  379. package/lib/import-csv/data-import/data-import.component.d.ts +10 -6
  380. package/lib/import-csv/data-import/data-import.component.d.ts.map +1 -0
  381. package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts +16 -12
  382. package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts.map +1 -0
  383. package/lib/import-csv/field-mapping/field-mapping.component.d.ts +38 -34
  384. package/lib/import-csv/field-mapping/field-mapping.component.d.ts.map +1 -0
  385. package/lib/import-csv/import-csv-config.d.ts +18 -17
  386. package/lib/import-csv/import-csv-config.d.ts.map +1 -0
  387. package/lib/import-csv/import-csv.component.d.ts +37 -33
  388. package/lib/import-csv/import-csv.component.d.ts.map +1 -0
  389. package/lib/import-csv/import-csv.module.d.ts +21 -2
  390. package/lib/import-csv/import-csv.module.d.ts.map +1 -0
  391. package/lib/import-csv/import-history-list/import-history-list.component.d.ts +25 -21
  392. package/lib/import-csv/import-history-list/import-history-list.component.d.ts.map +1 -0
  393. package/lib/import-csv/import-success/import-success.component.d.ts +12 -8
  394. package/lib/import-csv/import-success/import-success.component.d.ts.map +1 -0
  395. package/lib/loader/index.d.ts +2 -1
  396. package/lib/loader/index.d.ts.map +1 -0
  397. package/lib/loader/loader.component.d.ts +12 -8
  398. package/lib/loader/loader.component.d.ts.map +1 -0
  399. package/lib/loader/loader.module.d.ts +10 -2
  400. package/lib/loader/loader.module.d.ts.map +1 -0
  401. package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts +8 -2
  402. package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts.map +1 -0
  403. package/lib/login-history-for-user/login-history-for-user.component.d.ts +27 -23
  404. package/lib/login-history-for-user/login-history-for-user.component.d.ts.map +1 -0
  405. package/lib/login-history-for-user/login-history-for-user.module.d.ts +15 -2
  406. package/lib/login-history-for-user/login-history-for-user.module.d.ts.map +1 -0
  407. package/lib/material.module.d.ts +27 -2
  408. package/lib/material.module.d.ts.map +1 -0
  409. package/lib/note/comment-form/comment-form.component.d.ts +26 -22
  410. package/lib/note/comment-form/comment-form.component.d.ts.map +1 -0
  411. package/lib/note/index.d.ts +4 -3
  412. package/lib/note/index.d.ts.map +1 -0
  413. package/lib/note/note-form/note-form.component.d.ts +31 -27
  414. package/lib/note/note-form/note-form.component.d.ts.map +1 -0
  415. package/lib/note/note-list/note-list.component.d.ts +32 -28
  416. package/lib/note/note-list/note-list.component.d.ts.map +1 -0
  417. package/lib/note/note.module.d.ts +17 -2
  418. package/lib/note/note.module.d.ts.map +1 -0
  419. package/lib/note/note.service.d.ts +13 -9
  420. package/lib/note/note.service.d.ts.map +1 -0
  421. package/lib/read-more/read-more.component.d.ts +16 -12
  422. package/lib/read-more/read-more.component.d.ts.map +1 -0
  423. package/lib/read-more/read-more.module.d.ts +11 -2
  424. package/lib/read-more/read-more.module.d.ts.map +1 -0
  425. package/lib/request-helper/request-helper.service.d.ts +41 -0
  426. package/lib/request-helper/request-helper.service.d.ts.map +1 -0
  427. package/lib/searchable-selector/index.d.ts +3 -2
  428. package/lib/searchable-selector/index.d.ts.map +1 -0
  429. package/lib/searchable-selector/mat-select-infinite-scroll.directive.d.ts +27 -23
  430. package/lib/searchable-selector/mat-select-infinite-scroll.directive.d.ts.map +1 -0
  431. package/lib/searchable-selector/searchable-selector.component.d.ts +85 -81
  432. package/lib/searchable-selector/searchable-selector.component.d.ts.map +1 -0
  433. package/lib/searchable-selector/searchable-selector.module.d.ts +13 -2
  434. package/lib/searchable-selector/searchable-selector.module.d.ts.map +1 -0
  435. package/lib/techlify-feature/on-off-switch/on-off-switch.component.d.ts +13 -9
  436. package/lib/techlify-feature/on-off-switch/on-off-switch.component.d.ts.map +1 -0
  437. package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +21 -17
  438. package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts.map +1 -0
  439. package/lib/techlify-feature/techlify-feature-listing.component.d.ts +41 -37
  440. package/lib/techlify-feature/techlify-feature-listing.component.d.ts.map +1 -0
  441. package/lib/techlify-feature/techlify-feature.module.d.ts +17 -2
  442. package/lib/techlify-feature/techlify-feature.module.d.ts.map +1 -0
  443. package/lib/techlify-feature/techlify-feature.routing.d.ts +3 -2
  444. package/lib/techlify-feature/techlify-feature.routing.d.ts.map +1 -0
  445. package/lib/techlify-feature/techlify-feature.service.d.ts +12 -8
  446. package/lib/techlify-feature/techlify-feature.service.d.ts.map +1 -0
  447. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.d.ts +13 -12
  448. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.d.ts.map +1 -0
  449. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts +80 -76
  450. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts.map +1 -0
  451. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.d.ts +13 -2
  452. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.d.ts.map +1 -0
  453. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.d.ts +62 -58
  454. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.d.ts.map +1 -0
  455. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.d.ts +15 -2
  456. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.d.ts.map +1 -0
  457. package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts +34 -30
  458. package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts.map +1 -0
  459. package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts +13 -2
  460. package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts.map +1 -0
  461. package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts +8 -2
  462. package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts.map +1 -0
  463. package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts +35 -31
  464. package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts.map +1 -0
  465. package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts +16 -2
  466. package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts.map +1 -0
  467. package/lib/techlify-update/techlify-update-routing.module.d.ts +8 -2
  468. package/lib/techlify-update/techlify-update-routing.module.d.ts.map +1 -0
  469. package/lib/techlify-update/techlify-update.module.d.ts +17 -2
  470. package/lib/techlify-update/techlify-update.module.d.ts.map +1 -0
  471. package/lib/techlify-update/techlify-update.service.d.ts +17 -13
  472. package/lib/techlify-update/techlify-update.service.d.ts.map +1 -0
  473. package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts +35 -31
  474. package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts.map +1 -0
  475. package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts +29 -25
  476. package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts.map +1 -0
  477. package/lib/techlify-update/update-notifier/update-notifier.component.d.ts +20 -16
  478. package/lib/techlify-update/update-notifier/update-notifier.component.d.ts.map +1 -0
  479. package/lib/techlify-update/update-notifier/update-notifier.module.d.ts +14 -2
  480. package/lib/techlify-update/update-notifier/update-notifier.module.d.ts.map +1 -0
  481. package/lib/techlify-update/update-view/update-view.component.d.ts +18 -14
  482. package/lib/techlify-update/update-view/update-view.component.d.ts.map +1 -0
  483. package/lib/techlify-update/update-view/update-view.module.d.ts +11 -2
  484. package/lib/techlify-update/update-view/update-view.module.d.ts.map +1 -0
  485. package/lib/timeline-filter/calculate-timeline.d.ts +7 -6
  486. package/lib/timeline-filter/calculate-timeline.d.ts.map +1 -0
  487. package/lib/timeline-filter/index.d.ts +4 -3
  488. package/lib/timeline-filter/index.d.ts.map +1 -0
  489. package/lib/timeline-filter/timeline-filter-routing.module.d.ts +8 -2
  490. package/lib/timeline-filter/timeline-filter-routing.module.d.ts.map +1 -0
  491. package/lib/timeline-filter/timeline-filter.component.d.ts +66 -61
  492. package/lib/timeline-filter/timeline-filter.component.d.ts.map +1 -0
  493. package/lib/timeline-filter/timeline-filter.module.d.ts +19 -2
  494. package/lib/timeline-filter/timeline-filter.module.d.ts.map +1 -0
  495. package/lib/timeline-filter/timeline.model.d.ts +18 -17
  496. package/lib/timeline-filter/timeline.model.d.ts.map +1 -0
  497. package/lib/utility/date-utils.service.d.ts +25 -21
  498. package/lib/utility/date-utils.service.d.ts.map +1 -0
  499. package/lib/utility/index.d.ts +4 -3
  500. package/lib/utility/index.d.ts.map +1 -0
  501. package/lib/utility/num-items-selector.component.d.ts +20 -16
  502. package/lib/utility/num-items-selector.component.d.ts.map +1 -0
  503. package/lib/utility/number-selector.component.d.ts +24 -20
  504. package/lib/utility/number-selector.component.d.ts.map +1 -0
  505. package/lib/utility/utility.module.d.ts +11 -2
  506. package/lib/utility/utility.module.d.ts.map +1 -0
  507. package/ngx-techlify-core.d.ts.map +1 -0
  508. package/package.json +21 -9
  509. package/public-api.d.ts +94 -92
  510. package/public-api.d.ts.map +1 -0
  511. package/src/lib/timeline-filter/README.md +60 -0
  512. package/bundles/ngx-techlify-core.umd.js +0 -8449
  513. package/bundles/ngx-techlify-core.umd.js.map +0 -1
  514. package/bundles/ngx-techlify-core.umd.min.js +0 -2
  515. package/bundles/ngx-techlify-core.umd.min.js.map +0 -1
  516. package/esm2015/lib/action-popup/action-popup.component.js +0 -32
  517. package/esm2015/lib/action-popup/action-popup.module.js +0 -26
  518. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.js +0 -12
  519. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.component.js +0 -49
  520. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.module.js +0 -25
  521. package/esm2015/lib/audit-log/audit-log-list/audit-log-list-routing.module.js +0 -12
  522. package/esm2015/lib/audit-log/audit-log-list/audit-log-list.component.js +0 -132
  523. package/esm2015/lib/audit-log/audit-log-list/audit-log-list.module.js +0 -29
  524. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.js +0 -12
  525. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.js +0 -67
  526. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.js +0 -25
  527. package/esm2015/lib/audit-log/audit-log-routing.module.js +0 -19
  528. package/esm2015/lib/audit-log/audit-log-view/audit-log-view-routing.module.js +0 -12
  529. package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +0 -60
  530. package/esm2015/lib/audit-log/audit-log-view/audit-log-view.module.js +0 -21
  531. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.js +0 -12
  532. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +0 -57
  533. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.module.js +0 -21
  534. package/esm2015/lib/audit-log/audit-log.module.js +0 -20
  535. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.js +0 -12
  536. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.js +0 -35
  537. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.js +0 -21
  538. package/esm2015/lib/base-model/techlify-form-component.class.js +0 -51
  539. package/esm2015/lib/base-model/techlify-listing-component.class.js +0 -41
  540. package/esm2015/lib/base-model/techlify-service.class.js +0 -64
  541. package/esm2015/lib/core/alert.service.js +0 -40
  542. package/esm2015/lib/core/api-prefix.interceptor.js +0 -28
  543. package/esm2015/lib/core/authentication.guard.js +0 -39
  544. package/esm2015/lib/core/authentication.service.js +0 -59
  545. package/esm2015/lib/core/cache.interceptor.js +0 -60
  546. package/esm2015/lib/core/config.service.js +0 -47
  547. package/esm2015/lib/core/core.module.js +0 -42
  548. package/esm2015/lib/core/credentials.service.js +0 -84
  549. package/esm2015/lib/core/dataManager.service.js +0 -121
  550. package/esm2015/lib/core/error-handler.interceptor.js +0 -53
  551. package/esm2015/lib/core/error-handler.service.js +0 -60
  552. package/esm2015/lib/core/form-validator.service.js +0 -23
  553. package/esm2015/lib/core/header.interceptor.js +0 -22
  554. package/esm2015/lib/core/http-cache.service.js +0 -110
  555. package/esm2015/lib/core/http.service.js +0 -82
  556. package/esm2015/lib/core/route-reusable-strategy.js +0 -35
  557. package/esm2015/lib/core/snack/snack.component.js +0 -33
  558. package/esm2015/lib/core/snack/snack.module.js +0 -25
  559. package/esm2015/lib/core/storage.service.js +0 -37
  560. package/esm2015/lib/core/techlify-config.model.js +0 -28
  561. package/esm2015/lib/core/token.interceptor.js +0 -30
  562. package/esm2015/lib/data-table/data-table.component.js +0 -190
  563. package/esm2015/lib/data-table/data-table.model.js +0 -11
  564. package/esm2015/lib/data-table/data-table.module.js +0 -25
  565. package/esm2015/lib/document-viewer/document-viewer.component.js +0 -58
  566. package/esm2015/lib/document-viewer/document-viewer.module.js +0 -25
  567. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.js +0 -26
  568. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.js +0 -72
  569. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.js +0 -23
  570. package/esm2015/lib/email-subscription/email-subscription-routing.module.js +0 -12
  571. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.js +0 -12
  572. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.js +0 -102
  573. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.js +0 -28
  574. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.js +0 -28
  575. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +0 -153
  576. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.js +0 -27
  577. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.js +0 -12
  578. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type.module.js +0 -15
  579. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.js +0 -12
  580. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.js +0 -99
  581. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.js +0 -27
  582. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.js +0 -28
  583. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.js +0 -155
  584. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.js +0 -29
  585. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.js +0 -12
  586. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +0 -50
  587. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.js +0 -25
  588. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.js +0 -12
  589. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user.module.js +0 -15
  590. package/esm2015/lib/email-subscription/email-subscription.module.js +0 -15
  591. package/esm2015/lib/entity-files/entity-file-form/entity-file-form.component.js +0 -147
  592. package/esm2015/lib/entity-files/entity-file.service.js +0 -45
  593. package/esm2015/lib/entity-files/entity-files-view-all.component.js +0 -304
  594. package/esm2015/lib/entity-files/entity-files-view-all.module.js +0 -40
  595. package/esm2015/lib/export-excel/export-excel-button/export-excel-button.component.js +0 -32
  596. package/esm2015/lib/export-excel/export-excel.module.js +0 -17
  597. package/esm2015/lib/file-dropper/file-dropper.component.js +0 -122
  598. package/esm2015/lib/file-dropper/file-dropper.module.js +0 -21
  599. package/esm2015/lib/import-csv/data-import/data-import.component.js +0 -18
  600. package/esm2015/lib/import-csv/failed-items-list/failed-items-list.component.js +0 -33
  601. package/esm2015/lib/import-csv/field-mapping/field-mapping.component.js +0 -148
  602. package/esm2015/lib/import-csv/import-csv-config.js +0 -2
  603. package/esm2015/lib/import-csv/import-csv.component.js +0 -196
  604. package/esm2015/lib/import-csv/import-csv.module.js +0 -46
  605. package/esm2015/lib/import-csv/import-history-list/import-history-list.component.js +0 -71
  606. package/esm2015/lib/import-csv/import-success/import-success.component.js +0 -19
  607. package/esm2015/lib/loader/loader.component.js +0 -22
  608. package/esm2015/lib/loader/loader.module.js +0 -21
  609. package/esm2015/lib/login-history-for-user/login-history-for-user-routing.module.js +0 -20
  610. package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +0 -88
  611. package/esm2015/lib/login-history-for-user/login-history-for-user.module.js +0 -27
  612. package/esm2015/lib/material.module.js +0 -62
  613. package/esm2015/lib/note/comment-form/comment-form.component.js +0 -73
  614. package/esm2015/lib/note/note-form/note-form.component.js +0 -81
  615. package/esm2015/lib/note/note-list/note-list.component.js +0 -151
  616. package/esm2015/lib/note/note.module.js +0 -36
  617. package/esm2015/lib/note/note.service.js +0 -31
  618. package/esm2015/lib/read-more/read-more.component.js +0 -43
  619. package/esm2015/lib/read-more/read-more.module.js +0 -21
  620. package/esm2015/lib/searchable-selector/mat-select-infinite-scroll.directive.js +0 -81
  621. package/esm2015/lib/searchable-selector/searchable-selector.component.js +0 -307
  622. package/esm2015/lib/searchable-selector/searchable-selector.module.js +0 -28
  623. package/esm2015/lib/techlify-feature/on-off-switch/on-off-switch.component.js +0 -27
  624. package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +0 -78
  625. package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +0 -177
  626. package/esm2015/lib/techlify-feature/techlify-feature.module.js +0 -30
  627. package/esm2015/lib/techlify-feature/techlify-feature.service.js +0 -28
  628. package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.js +0 -269
  629. package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.js +0 -25
  630. package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.js +0 -168
  631. package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.js +0 -29
  632. package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.component.js +0 -114
  633. package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.module.js +0 -28
  634. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.js +0 -22
  635. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.component.js +0 -143
  636. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.module.js +0 -28
  637. package/esm2015/lib/techlify-update/techlify-update-routing.module.js +0 -22
  638. package/esm2015/lib/techlify-update/techlify-update.module.js +0 -30
  639. package/esm2015/lib/techlify-update/techlify-update.service.js +0 -43
  640. package/esm2015/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.js +0 -161
  641. package/esm2015/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.js +0 -82
  642. package/esm2015/lib/techlify-update/update-notifier/update-notifier.component.js +0 -62
  643. package/esm2015/lib/techlify-update/update-notifier/update-notifier.module.js +0 -29
  644. package/esm2015/lib/techlify-update/update-view/update-view.component.js +0 -36
  645. package/esm2015/lib/techlify-update/update-view/update-view.module.js +0 -24
  646. package/esm2015/lib/timeline-filter/calculate-timeline.js +0 -102
  647. package/esm2015/lib/timeline-filter/timeline-filter-routing.module.js +0 -12
  648. package/esm2015/lib/timeline-filter/timeline-filter.component.js +0 -213
  649. package/esm2015/lib/timeline-filter/timeline-filter.module.js +0 -23
  650. package/esm2015/lib/utility/num-items-selector.component.js +0 -30
  651. package/esm2015/lib/utility/number-selector.component.js +0 -38
  652. package/esm2015/lib/utility/utility.module.js +0 -21
  653. package/esm2015/ngx-techlify-core.js +0 -60
  654. package/esm2015/public-api.js +0 -96
  655. package/fesm2015/ngx-techlify-core.js +0 -7150
  656. package/fesm2015/ngx-techlify-core.js.map +0 -1
  657. package/ngx-techlify-core.d.ts +0 -59
  658. package/ngx-techlify-core.metadata.json +0 -1
@@ -0,0 +1,51 @@
1
+ import { ReadMoreModule } from '../read-more/read-more.module';
2
+ import { TechlifyUpdateFormModule } from './techlify-update-form/techlify-update-form.module';
3
+ import { TechlifyUpdateRoutingModule } from './techlify-update-routing.module';
4
+ import { NgModule } from '@angular/core';
5
+ import { CommonModule } from '@angular/common';
6
+ import { TechlifyUpdatesListComponent } from './techlify-updates-list/techlify-updates-list.component';
7
+ import { InfiniteScrollModule } from 'ngx-infinite-scroll';
8
+ import { ReactiveFormsModule } from '@angular/forms';
9
+ import { MaterialModule } from '../material.module';
10
+ import { FlexLayoutModule } from '@angular/flex-layout';
11
+ import { ActionPopupModule } from '../action-popup/action-popup.module';
12
+ import * as i0 from "@angular/core";
13
+ export class TechlifyUpdateModule {
14
+ }
15
+ TechlifyUpdateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
+ TechlifyUpdateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateModule, declarations: [TechlifyUpdatesListComponent], imports: [CommonModule,
17
+ ReactiveFormsModule,
18
+ InfiniteScrollModule,
19
+ FlexLayoutModule,
20
+ MaterialModule,
21
+ ActionPopupModule,
22
+ TechlifyUpdateRoutingModule,
23
+ TechlifyUpdateFormModule,
24
+ ReadMoreModule] });
25
+ TechlifyUpdateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateModule, imports: [CommonModule,
26
+ ReactiveFormsModule,
27
+ InfiniteScrollModule,
28
+ FlexLayoutModule,
29
+ MaterialModule,
30
+ ActionPopupModule,
31
+ TechlifyUpdateRoutingModule,
32
+ TechlifyUpdateFormModule,
33
+ ReadMoreModule] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ declarations: [TechlifyUpdatesListComponent],
38
+ imports: [
39
+ CommonModule,
40
+ ReactiveFormsModule,
41
+ InfiniteScrollModule,
42
+ FlexLayoutModule,
43
+ MaterialModule,
44
+ ActionPopupModule,
45
+ TechlifyUpdateRoutingModule,
46
+ TechlifyUpdateFormModule,
47
+ ReadMoreModule,
48
+ ]
49
+ }]
50
+ }] });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdXBkYXRlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFnQnhFLE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFiaEIsNEJBQTRCLGFBRXpDLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLDJCQUEyQjtRQUMzQix3QkFBd0I7UUFDeEIsY0FBYztrSEFHTCxvQkFBb0IsWUFYN0IsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQixvQkFBb0I7UUFDcEIsZ0JBQWdCO1FBQ2hCLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsMkJBQTJCO1FBQzNCLHdCQUF3QjtRQUN4QixjQUFjOzJGQUdMLG9CQUFvQjtrQkFkaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDNUMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLDJCQUEyQjt3QkFDM0Isd0JBQXdCO3dCQUN4QixjQUFjO3FCQUNmO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhZE1vcmVNb2R1bGUgfSBmcm9tICcuLi9yZWFkLW1vcmUvcmVhZC1tb3JlLm1vZHVsZSc7XHJcbmltcG9ydCB7IFRlY2hsaWZ5VXBkYXRlRm9ybU1vZHVsZSB9IGZyb20gJy4vdGVjaGxpZnktdXBkYXRlLWZvcm0vdGVjaGxpZnktdXBkYXRlLWZvcm0ubW9kdWxlJztcclxuaW1wb3J0IHsgVGVjaGxpZnlVcGRhdGVSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi90ZWNobGlmeS11cGRhdGUtcm91dGluZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUZWNobGlmeVVwZGF0ZXNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi90ZWNobGlmeS11cGRhdGVzLWxpc3QvdGVjaGxpZnktdXBkYXRlcy1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEluZmluaXRlU2Nyb2xsTW9kdWxlIH0gZnJvbSAnbmd4LWluZmluaXRlLXNjcm9sbCc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi4vbWF0ZXJpYWwubW9kdWxlJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2ZsZXgtbGF5b3V0JztcclxuaW1wb3J0IHsgQWN0aW9uUG9wdXBNb2R1bGUgfSBmcm9tICcuLi9hY3Rpb24tcG9wdXAvYWN0aW9uLXBvcHVwLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1RlY2hsaWZ5VXBkYXRlc0xpc3RDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBJbmZpbml0ZVNjcm9sbE1vZHVsZSxcclxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXHJcbiAgICBNYXRlcmlhbE1vZHVsZSxcclxuICAgIEFjdGlvblBvcHVwTW9kdWxlLFxyXG4gICAgVGVjaGxpZnlVcGRhdGVSb3V0aW5nTW9kdWxlLFxyXG4gICAgVGVjaGxpZnlVcGRhdGVGb3JtTW9kdWxlLFxyXG4gICAgUmVhZE1vcmVNb2R1bGUsXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVjaGxpZnlVcGRhdGVNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../core/http.service";
4
+ export class TechlifyUpdateService {
5
+ constructor(http) {
6
+ this.http = http;
7
+ }
8
+ getTechlifyUpdates(filters) {
9
+ return this.http.get(`api/techlify-updates`, { params: filters }).toPromise();
10
+ }
11
+ createTechlifyUpdate(techlifyUpdate) {
12
+ return this.http.post(`api/techlify-updates`, techlifyUpdate).toPromise();
13
+ }
14
+ updateTechlifyUpdate(techlifyUpdate) {
15
+ return this.http.put(`api/techlify-updates/${techlifyUpdate.id}`, techlifyUpdate).toPromise();
16
+ }
17
+ deleteTechlifyUpdate(techlifyUpdateId) {
18
+ return this.http.delete(`api/techlify-updates/${techlifyUpdateId}`).toPromise();
19
+ }
20
+ getTechlifyUpdate(techlifyUpdateId) {
21
+ return this.http.get(`api/techlify-updates/${techlifyUpdateId}`).toPromise();
22
+ }
23
+ getNewUpdateForCurrentUser() {
24
+ return this.http.get(`api/current-user-techlify-updates`).toPromise();
25
+ }
26
+ createUpdateViewRecord(techlifyUpdateView) {
27
+ return this.http.post(`api/techlify-update-views`, techlifyUpdateView).toPromise();
28
+ }
29
+ updateCurrentUserUpdates() {
30
+ return this.http.get(`api/techlify-updates/update-view`).toPromise();
31
+ }
32
+ }
33
+ TechlifyUpdateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable });
34
+ TechlifyUpdateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateService, providedIn: 'root' });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdateService, decorators: [{
36
+ type: Injectable,
37
+ args: [{
38
+ providedIn: 'root'
39
+ }]
40
+ }], ctorParameters: function () { return [{ type: i1.HttpService }]; } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdXBkYXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL3RlY2hsaWZ5LXVwZGF0ZS90ZWNobGlmeS11cGRhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUFvQixJQUFpQjtRQUFqQixTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUksQ0FBQztJQUUxQyxrQkFBa0IsQ0FBQyxPQUFZO1FBQzdCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoRixDQUFDO0lBRUQsb0JBQW9CLENBQUMsY0FBbUI7UUFDdEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxjQUFjLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQsb0JBQW9CLENBQUMsY0FBbUI7UUFDdEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsY0FBYyxDQUFDLEVBQUUsRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2hHLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxnQkFBcUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3QkFBd0IsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ2xGLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxnQkFBcUI7UUFDckMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQy9FLENBQUM7SUFFRCwwQkFBMEI7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3hFLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxrQkFBdUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JGLENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3ZFLENBQUM7O2tIQWxDVSxxQkFBcUI7c0hBQXJCLHFCQUFxQixjQUZwQixNQUFNOzJGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHR0cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVjaGxpZnlVcGRhdGVTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSkgeyB9XHJcblxyXG4gIGdldFRlY2hsaWZ5VXBkYXRlcyhmaWx0ZXJzOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGBhcGkvdGVjaGxpZnktdXBkYXRlc2AsIHsgcGFyYW1zOiBmaWx0ZXJzIH0pLnRvUHJvbWlzZSgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlVGVjaGxpZnlVcGRhdGUodGVjaGxpZnlVcGRhdGU6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGBhcGkvdGVjaGxpZnktdXBkYXRlc2AsIHRlY2hsaWZ5VXBkYXRlKS50b1Byb21pc2UoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVRlY2hsaWZ5VXBkYXRlKHRlY2hsaWZ5VXBkYXRlOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGBhcGkvdGVjaGxpZnktdXBkYXRlcy8ke3RlY2hsaWZ5VXBkYXRlLmlkfWAsIHRlY2hsaWZ5VXBkYXRlKS50b1Byb21pc2UoKTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZVRlY2hsaWZ5VXBkYXRlKHRlY2hsaWZ5VXBkYXRlSWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoYGFwaS90ZWNobGlmeS11cGRhdGVzLyR7dGVjaGxpZnlVcGRhdGVJZH1gKS50b1Byb21pc2UoKTtcclxuICB9XHJcblxyXG4gIGdldFRlY2hsaWZ5VXBkYXRlKHRlY2hsaWZ5VXBkYXRlSWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYGFwaS90ZWNobGlmeS11cGRhdGVzLyR7dGVjaGxpZnlVcGRhdGVJZH1gKS50b1Byb21pc2UoKTtcclxuICB9XHJcblxyXG4gIGdldE5ld1VwZGF0ZUZvckN1cnJlbnRVc2VyKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYGFwaS9jdXJyZW50LXVzZXItdGVjaGxpZnktdXBkYXRlc2ApLnRvUHJvbWlzZSgpO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlVXBkYXRlVmlld1JlY29yZCh0ZWNobGlmeVVwZGF0ZVZpZXc6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGBhcGkvdGVjaGxpZnktdXBkYXRlLXZpZXdzYCwgdGVjaGxpZnlVcGRhdGVWaWV3KS50b1Byb21pc2UoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUN1cnJlbnRVc2VyVXBkYXRlcygpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGBhcGkvdGVjaGxpZnktdXBkYXRlcy91cGRhdGUtdmlld2ApLnRvUHJvbWlzZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,162 @@
1
+ import { __decorate } from "tslib";
2
+ import { UntilDestroy } from '@ngneat/until-destroy';
3
+ import { untilDestroyed } from '@ngneat/until-destroy';
4
+ import { ActionPopupComponent } from './../../action-popup/action-popup.component';
5
+ import { TechlifyUpdateFormComponent } from './../techlify-update-form/techlify-update-form.component';
6
+ import { UntypedFormControl } from '@angular/forms';
7
+ import { Component } from '@angular/core';
8
+ import { debounceTime } from 'rxjs/operators';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/material/dialog";
11
+ import * as i2 from "../../core/alert.service";
12
+ import * as i3 from "./../techlify-update.service";
13
+ import * as i4 from "@angular/forms";
14
+ import * as i5 from "@angular/common";
15
+ import * as i6 from "ngx-infinite-scroll";
16
+ import * as i7 from "@angular/flex-layout/flex";
17
+ import * as i8 from "@angular/material/button";
18
+ import * as i9 from "@angular/material/form-field";
19
+ import * as i10 from "@angular/material/icon";
20
+ import * as i11 from "@angular/material/input";
21
+ import * as i12 from "@angular/material/sort";
22
+ import * as i13 from "@angular/material/table";
23
+ import * as i14 from "../../read-more/read-more.component";
24
+ let TechlifyUpdatesListComponent = class TechlifyUpdatesListComponent {
25
+ constructor(dialog, alertService, techlifyUpdateService, fb) {
26
+ this.dialog = dialog;
27
+ this.alertService = alertService;
28
+ this.techlifyUpdateService = techlifyUpdateService;
29
+ this.fb = fb;
30
+ this.techlifyUpdates = [];
31
+ this.displayedColumns = [
32
+ 'index',
33
+ 'title',
34
+ 'version',
35
+ 'released_on',
36
+ 'learn_more_link',
37
+ 'description',
38
+ 'creator',
39
+ 'actions'
40
+ ];
41
+ this.page = 1;
42
+ this.perPage = 25;
43
+ this.isWorking = false;
44
+ this.filterFormGroup = this.fb.group({
45
+ search: new UntypedFormControl(''),
46
+ version: new UntypedFormControl(''),
47
+ sort_by: new UntypedFormControl('released_on|DESC'),
48
+ });
49
+ }
50
+ ngOnInit() {
51
+ this.loadData();
52
+ this.listenChanges();
53
+ }
54
+ listenChanges() {
55
+ this.filterFormGroup.valueChanges.pipe(debounceTime(500), untilDestroyed(this))
56
+ .subscribe(changes => {
57
+ this.reload();
58
+ });
59
+ }
60
+ ngOnDestroy() { }
61
+ async loadData() {
62
+ try {
63
+ this.isWorking = true;
64
+ var filters = this.filterFormGroup.value;
65
+ filters.perPage = this.perPage;
66
+ filters.page = this.page;
67
+ let result = await this.techlifyUpdateService.getTechlifyUpdates(filters);
68
+ this.lastPage = result.last_page || this.page;
69
+ this.techlifyUpdates = this.techlifyUpdates.concat(result.data);
70
+ }
71
+ catch (error) {
72
+ this.alertService.addAlert("Unable to process, try later", "warn");
73
+ }
74
+ finally {
75
+ this.isWorking = false;
76
+ }
77
+ }
78
+ reload() {
79
+ this.techlifyUpdates = [];
80
+ this.page = 1;
81
+ if (!this.isWorking) {
82
+ this.loadData();
83
+ }
84
+ }
85
+ onScroll() {
86
+ if (!this.isWorking && this.page < this.lastPage) {
87
+ this.page += 1;
88
+ this.loadData();
89
+ }
90
+ }
91
+ modifyTechlifyUpdate(model) {
92
+ const dialogRef = this.dialog.open(TechlifyUpdateFormComponent, {
93
+ width: "600px",
94
+ data: {
95
+ techlifyUpdateDetails: model,
96
+ }
97
+ });
98
+ dialogRef.afterClosed().subscribe(result => {
99
+ if (result) {
100
+ this.reload();
101
+ }
102
+ });
103
+ }
104
+ async deleteTechlifyUpdate(model) {
105
+ const dialogRef = this.dialog.open(ActionPopupComponent, {
106
+ width: "400px",
107
+ data: {
108
+ title: "Delete Update",
109
+ message: `Are you sure to delete this update?`
110
+ },
111
+ autoFocus: false
112
+ });
113
+ dialogRef.afterClosed().subscribe(async (result) => {
114
+ if (result) {
115
+ //Action confirmed
116
+ try {
117
+ await this.techlifyUpdateService.deleteTechlifyUpdate(model.id);
118
+ this.alertService.addAlert("Successfully deleted the update", "success");
119
+ this.reload();
120
+ }
121
+ catch (error) {
122
+ this.alertService.addAlert("Unable to process, try later", "warn");
123
+ }
124
+ }
125
+ });
126
+ }
127
+ resetFieldValue(field) {
128
+ this.filterFormGroup.get(field).setValue("");
129
+ }
130
+ sortColumn(event) {
131
+ var direction = event.direction.toString().toUpperCase();
132
+ this.assignFilter(event.active, direction);
133
+ }
134
+ assignFilter(column, direction) {
135
+ switch (column) {
136
+ case 'title': {
137
+ return this.filterFormGroup.get('sort_by').setValue("title|" + direction);
138
+ }
139
+ case 'released_on': {
140
+ return this.filterFormGroup.get('sort_by').setValue("released_on|" + direction);
141
+ }
142
+ case 'version': {
143
+ return this.filterFormGroup.get('sort_by').setValue("version|" + direction);
144
+ }
145
+ default: {
146
+ return this.filterFormGroup.get('sort_by').setValue("created_at|DESC");
147
+ }
148
+ }
149
+ ;
150
+ }
151
+ };
152
+ TechlifyUpdatesListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdatesListComponent, deps: [{ token: i1.MatDialog }, { token: i2.AlertService }, { token: i3.TechlifyUpdateService }, { token: i4.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
153
+ TechlifyUpdatesListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: TechlifyUpdatesListComponent, selector: "app-techlify-updates-list", ngImport: i0, template: "<section class=\"p-4\" fxLayout=\"column\">\r\n <h3 class=\"primary-color text-center\">\r\n App Updates\r\n <button mat-raised-button (click)=\"modifyTechlifyUpdate()\" class=\"primary-bg text-white\">\r\n <mat-icon>\r\n add\r\n </mat-icon>\r\n Create\r\n </button>\r\n </h3>\r\n <form [formGroup]=\"filterFormGroup\" fxLayout=\"row wrap\" fxLayoutGap=\"0.5rem\" fxFlex=\"100%\" style=\"font-size: 12px;\">\r\n <mat-form-field fxFlex=\"0 1 calc(100% - 0.5rem)\" fxFlex.gt-md=\"0 1 calc(15% - 0.5rem)\" appearance=\"outline\"\r\n fxFlex.gt-sm=\"0 1 calc(20% - 0.5rem)\">\r\n <input type=\"text\" matInput formControlName=\"search\" placeholder=\"Title\" autocomplete=\"off\" />\r\n <button mat-button *ngIf=\"filterFormGroup.get('search').value\" matSuffix mat-icon-button\r\n (click)=\"resetFieldValue('search')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n <mat-form-field fxFlex=\"0 1 calc(100% - 0.5rem)\" fxFlex.gt-md=\"0 1 calc(15% - 0.5rem)\" appearance=\"outline\"\r\n fxFlex.gt-sm=\"0 1 calc(20% - 0.5rem)\">\r\n <input type=\"text\" matInput formControlName=\"version\" placeholder=\"Version\" autocomplete=\"off\" />\r\n <button mat-button *ngIf=\"filterFormGroup.get('version').value\" matSuffix mat-icon-button\r\n (click)=\"resetFieldValue('version')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </form>\r\n\r\n <table mat-table [dataSource]=\"techlifyUpdates\" class=\"mat-elevation-z8 w-100\" matSort multiTemplateDataRows\r\n (matSortChange)=\"sortColumn($event)\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\r\n (scrolled)=\"onScroll()\">\r\n\r\n <!-- Index Column -->\r\n <ng-container matColumnDef=\"index\">\r\n <th mat-header-cell *matHeaderCellDef> # </th>\r\n <td mat-cell *matCellDef=\"let element;let i=dataIndex\"> {{ i+1 }} </td>\r\n </ng-container>\r\n\r\n <!-- Course Column -->\r\n <ng-container matColumnDef=\"title\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Title </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.title}} </td>\r\n </ng-container>\r\n\r\n <!-- Version Column -->\r\n <ng-container matColumnDef=\"version\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Version </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.version}} </td>\r\n </ng-container>\r\n\r\n <!-- Released On Column -->\r\n <ng-container matColumnDef=\"released_on\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Released On </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.released_on | date:'mediumDate'}} </td>\r\n </ng-container>\r\n\r\n <!-- Learn More Link Column -->\r\n <ng-container matColumnDef=\"learn_more_link\">\r\n <th mat-header-cell *matHeaderCellDef> Learn more link </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <a [href]=\"element?.learn_more_link\" target=\"_blank\">\r\n {{element?.learn_more_link}}\r\n </a>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Description Column -->\r\n <ng-container matColumnDef=\"description\">\r\n <th mat-header-cell *matHeaderCellDef> Description </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <app-read-more [text]=\"element?.description\" [maxLength]=\"50\"></app-read-more>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Creator Column -->\r\n <ng-container matColumnDef=\"creator\">\r\n <th mat-header-cell *matHeaderCellDef> Creator </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{element?.creator?.name}}\r\n <div fxLayout class=\"small\">\r\n {{element?.created_at | date : 'mediumDate'}}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Actions Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef> Actions </th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"secondary-color\">\r\n <button type=\"button\" class=\"secondary-color\" mat-icon-button (click)=\"modifyTechlifyUpdate(element)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n\r\n <button type=\"button\" class=\"secondary-color\" mat-icon-button (click)=\"deleteTechlifyUpdate(element)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</section>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "directive", type: i7.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i7.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i7.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i9.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i9.MatSuffix, selector: "[matSuffix]" }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i12.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i12.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i13.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i13.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i13.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i13.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i13.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i13.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i13.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i13.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i13.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i13.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i14.ReadMoreComponent, selector: "app-read-more", inputs: ["text", "maxLength"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] });
154
+ TechlifyUpdatesListComponent = __decorate([
155
+ UntilDestroy()
156
+ ], TechlifyUpdatesListComponent);
157
+ export { TechlifyUpdatesListComponent };
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TechlifyUpdatesListComponent, decorators: [{
159
+ type: Component,
160
+ args: [{ selector: 'app-techlify-updates-list', template: "<section class=\"p-4\" fxLayout=\"column\">\r\n <h3 class=\"primary-color text-center\">\r\n App Updates\r\n <button mat-raised-button (click)=\"modifyTechlifyUpdate()\" class=\"primary-bg text-white\">\r\n <mat-icon>\r\n add\r\n </mat-icon>\r\n Create\r\n </button>\r\n </h3>\r\n <form [formGroup]=\"filterFormGroup\" fxLayout=\"row wrap\" fxLayoutGap=\"0.5rem\" fxFlex=\"100%\" style=\"font-size: 12px;\">\r\n <mat-form-field fxFlex=\"0 1 calc(100% - 0.5rem)\" fxFlex.gt-md=\"0 1 calc(15% - 0.5rem)\" appearance=\"outline\"\r\n fxFlex.gt-sm=\"0 1 calc(20% - 0.5rem)\">\r\n <input type=\"text\" matInput formControlName=\"search\" placeholder=\"Title\" autocomplete=\"off\" />\r\n <button mat-button *ngIf=\"filterFormGroup.get('search').value\" matSuffix mat-icon-button\r\n (click)=\"resetFieldValue('search')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n <mat-form-field fxFlex=\"0 1 calc(100% - 0.5rem)\" fxFlex.gt-md=\"0 1 calc(15% - 0.5rem)\" appearance=\"outline\"\r\n fxFlex.gt-sm=\"0 1 calc(20% - 0.5rem)\">\r\n <input type=\"text\" matInput formControlName=\"version\" placeholder=\"Version\" autocomplete=\"off\" />\r\n <button mat-button *ngIf=\"filterFormGroup.get('version').value\" matSuffix mat-icon-button\r\n (click)=\"resetFieldValue('version')\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n </form>\r\n\r\n <table mat-table [dataSource]=\"techlifyUpdates\" class=\"mat-elevation-z8 w-100\" matSort multiTemplateDataRows\r\n (matSortChange)=\"sortColumn($event)\" infiniteScroll [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\"\r\n (scrolled)=\"onScroll()\">\r\n\r\n <!-- Index Column -->\r\n <ng-container matColumnDef=\"index\">\r\n <th mat-header-cell *matHeaderCellDef> # </th>\r\n <td mat-cell *matCellDef=\"let element;let i=dataIndex\"> {{ i+1 }} </td>\r\n </ng-container>\r\n\r\n <!-- Course Column -->\r\n <ng-container matColumnDef=\"title\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Title </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.title}} </td>\r\n </ng-container>\r\n\r\n <!-- Version Column -->\r\n <ng-container matColumnDef=\"version\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Version </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.version}} </td>\r\n </ng-container>\r\n\r\n <!-- Released On Column -->\r\n <ng-container matColumnDef=\"released_on\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header disableClear> Released On </th>\r\n <td mat-cell *matCellDef=\"let element\"> {{element?.released_on | date:'mediumDate'}} </td>\r\n </ng-container>\r\n\r\n <!-- Learn More Link Column -->\r\n <ng-container matColumnDef=\"learn_more_link\">\r\n <th mat-header-cell *matHeaderCellDef> Learn more link </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <a [href]=\"element?.learn_more_link\" target=\"_blank\">\r\n {{element?.learn_more_link}}\r\n </a>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Description Column -->\r\n <ng-container matColumnDef=\"description\">\r\n <th mat-header-cell *matHeaderCellDef> Description </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <app-read-more [text]=\"element?.description\" [maxLength]=\"50\"></app-read-more>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Creator Column -->\r\n <ng-container matColumnDef=\"creator\">\r\n <th mat-header-cell *matHeaderCellDef> Creator </th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n {{element?.creator?.name}}\r\n <div fxLayout class=\"small\">\r\n {{element?.created_at | date : 'mediumDate'}}\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- Actions Column -->\r\n <ng-container matColumnDef=\"actions\">\r\n <th mat-header-cell *matHeaderCellDef> Actions </th>\r\n <td mat-cell *matCellDef=\"let element\" class=\"secondary-color\">\r\n <button type=\"button\" class=\"secondary-color\" mat-icon-button (click)=\"modifyTechlifyUpdate(element)\">\r\n <mat-icon>edit</mat-icon>\r\n </button>\r\n\r\n <button type=\"button\" class=\"secondary-color\" mat-icon-button (click)=\"deleteTechlifyUpdate(element)\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n</section>\r\n" }]
161
+ }], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: i2.AlertService }, { type: i3.TechlifyUpdateService }, { type: i4.UntypedFormBuilder }]; } });
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVjaGxpZnktdXBkYXRlcy1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3RlY2hsaWZ5LXVwZGF0ZXMtbGlzdC90ZWNobGlmeS11cGRhdGVzLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90ZWNobGlmeS11cGRhdGUvdGVjaGxpZnktdXBkYXRlcy1saXN0L3RlY2hsaWZ5LXVwZGF0ZXMtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUV2RyxPQUFPLEVBQUUsa0JBQWtCLEVBQXNCLE1BQU0sZ0JBQWdCLENBQUM7QUFJeEUsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7SUFRakMsNEJBQTRCLFNBQTVCLDRCQUE0QjtJQWtCdkMsWUFDVSxNQUFpQixFQUNqQixZQUEwQixFQUMxQixxQkFBNEMsRUFDNUMsRUFBc0I7UUFIdEIsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBckJoQyxvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUM1QixxQkFBZ0IsR0FBYTtZQUMzQixPQUFPO1lBQ1AsT0FBTztZQUNQLFNBQVM7WUFDVCxhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGFBQWE7WUFDYixTQUFTO1lBQ1QsU0FBUztTQUNWLENBQUM7UUFDRixTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBRWpCLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVN6QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ25DLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUNsQyxPQUFPLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7WUFDbkMsT0FBTyxFQUFFLElBQUksa0JBQWtCLENBQUMsa0JBQWtCLENBQUM7U0FDcEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDNUUsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXLEtBQUssQ0FBQztJQUVqQixLQUFLLENBQUMsUUFBUTtRQUNaLElBQUk7WUFDRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN0QixJQUFJLE9BQU8sR0FBUSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQztZQUM5QyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDL0IsT0FBTyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3pCLElBQUksTUFBTSxHQUFRLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGtCQUFrQixDQUNuRSxPQUFPLENBQ1IsQ0FBQztZQUNGLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzlDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2pFO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNwRTtnQkFDTztZQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsZUFBZSxHQUFHLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hELElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQ2YsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQVc7UUFDOUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDOUQsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUU7Z0JBQ0oscUJBQXFCLEVBQUUsS0FBSzthQUM3QjtTQUNGLENBQUMsQ0FBQztRQUVILFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDekMsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBVTtRQUNuQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUN2RCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBZTtnQkFDakIsS0FBSyxFQUFFLGVBQWU7Z0JBQ3RCLE9BQU8sRUFBRSxxQ0FBcUM7YUFDL0M7WUFDRCxTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDLENBQUM7UUFFSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBQyxNQUFNLEVBQUMsRUFBRTtZQUMvQyxJQUFJLE1BQU0sRUFBRTtnQkFDVixrQkFBa0I7Z0JBQ2xCLElBQUk7b0JBQ0YsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNoRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FDeEIsaUNBQWlDLEVBQ2pDLFNBQVMsQ0FDVixDQUFDO29CQUNGLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDZjtnQkFBQyxPQUFPLEtBQUssRUFBRTtvQkFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsRUFBRSxNQUFNLENBQUMsQ0FBQztpQkFDcEU7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQUs7UUFDZCxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3pELElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQU0sRUFBRSxTQUFTO1FBQzVCLFFBQVEsTUFBTSxFQUFFO1lBQ2QsS0FBSyxPQUFPLENBQUMsQ0FBQztnQkFDWixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDLENBQUM7YUFDM0U7WUFDRCxLQUFLLGFBQWEsQ0FBQyxDQUFDO2dCQUNsQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLENBQUM7YUFDakY7WUFDRCxLQUFLLFNBQVMsQ0FBQyxDQUFDO2dCQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsQ0FBQzthQUM3RTtZQUNELE9BQU8sQ0FBQyxDQUFDO2dCQUNQLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7YUFDeEU7U0FDRjtRQUFBLENBQUM7SUFDSixDQUFDO0NBRUYsQ0FBQTt5SEFuSlksNEJBQTRCOzZHQUE1Qiw0QkFBNEIsaUVDbkJ6Qyw4cUpBd0dBO0FEckZhLDRCQUE0QjtJQU54QyxZQUFZLEVBQUU7R0FNRiw0QkFBNEIsQ0FtSnhDO1NBbkpZLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUx4QyxTQUFTOytCQUNFLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVudGlsRGVzdHJveSB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XHJcbmltcG9ydCB7IHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95JztcclxuaW1wb3J0IHsgQWN0aW9uUG9wdXAgfSBmcm9tICcuLy4uLy4uL2FjdGlvbi1wb3B1cC9hY3Rpb24tcG9wdXAubW9kZWwnO1xyXG5pbXBvcnQgeyBBY3Rpb25Qb3B1cENvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vYWN0aW9uLXBvcHVwL2FjdGlvbi1wb3B1cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZWNobGlmeVVwZGF0ZUZvcm1Db21wb25lbnQgfSBmcm9tICcuLy4uL3RlY2hsaWZ5LXVwZGF0ZS1mb3JtL3RlY2hsaWZ5LXVwZGF0ZS1mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRlY2hsaWZ5VXBkYXRlU2VydmljZSB9IGZyb20gJy4vLi4vdGVjaGxpZnktdXBkYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9hbGVydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQFVudGlsRGVzdHJveSgpXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXRlY2hsaWZ5LXVwZGF0ZXMtbGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RlY2hsaWZ5LXVwZGF0ZXMtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGVjaGxpZnktdXBkYXRlcy1saXN0LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRlY2hsaWZ5VXBkYXRlc0xpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHRlY2hsaWZ5VXBkYXRlczogYW55W10gPSBbXTtcclxuICBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSA9IFtcclxuICAgICdpbmRleCcsXHJcbiAgICAndGl0bGUnLFxyXG4gICAgJ3ZlcnNpb24nLFxyXG4gICAgJ3JlbGVhc2VkX29uJyxcclxuICAgICdsZWFybl9tb3JlX2xpbmsnLFxyXG4gICAgJ2Rlc2NyaXB0aW9uJyxcclxuICAgICdjcmVhdG9yJyxcclxuICAgICdhY3Rpb25zJ1xyXG4gIF07XHJcbiAgcGFnZTogbnVtYmVyID0gMTtcclxuICBsYXN0UGFnZTogbnVtYmVyO1xyXG4gIHBlclBhZ2U6IG51bWJlciA9IDI1O1xyXG4gIGlzV29ya2luZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGZpbHRlckZvcm1Hcm91cDogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgdGVjaGxpZnlVcGRhdGVTZXJ2aWNlOiBUZWNobGlmeVVwZGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmZpbHRlckZvcm1Hcm91cCA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBzZWFyY2g6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycpLFxyXG4gICAgICB2ZXJzaW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKSxcclxuICAgICAgc29ydF9ieTogbmV3IFVudHlwZWRGb3JtQ29udHJvbCgncmVsZWFzZWRfb258REVTQycpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMubG9hZERhdGEoKTtcclxuICAgIHRoaXMubGlzdGVuQ2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgbGlzdGVuQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuZmlsdGVyRm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSg1MDApLCB1bnRpbERlc3Ryb3llZCh0aGlzKSlcclxuICAgICAgLnN1YnNjcmliZShjaGFuZ2VzID0+IHtcclxuICAgICAgICB0aGlzLnJlbG9hZCgpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkgeyB9XHJcblxyXG4gIGFzeW5jIGxvYWREYXRhKCkge1xyXG4gICAgdHJ5IHtcclxuICAgICAgdGhpcy5pc1dvcmtpbmcgPSB0cnVlO1xyXG4gICAgICB2YXIgZmlsdGVyczogYW55ID0gdGhpcy5maWx0ZXJGb3JtR3JvdXAudmFsdWU7XHJcbiAgICAgIGZpbHRlcnMucGVyUGFnZSA9IHRoaXMucGVyUGFnZTtcclxuICAgICAgZmlsdGVycy5wYWdlID0gdGhpcy5wYWdlO1xyXG4gICAgICBsZXQgcmVzdWx0OiBhbnkgPSBhd2FpdCB0aGlzLnRlY2hsaWZ5VXBkYXRlU2VydmljZS5nZXRUZWNobGlmeVVwZGF0ZXMoXHJcbiAgICAgICAgZmlsdGVyc1xyXG4gICAgICApO1xyXG4gICAgICB0aGlzLmxhc3RQYWdlID0gcmVzdWx0Lmxhc3RfcGFnZSB8fCB0aGlzLnBhZ2U7XHJcbiAgICAgIHRoaXMudGVjaGxpZnlVcGRhdGVzID0gdGhpcy50ZWNobGlmeVVwZGF0ZXMuY29uY2F0KHJlc3VsdC5kYXRhKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KFwiVW5hYmxlIHRvIHByb2Nlc3MsIHRyeSBsYXRlclwiLCBcIndhcm5cIik7XHJcbiAgICB9XHJcbiAgICBmaW5hbGx5IHtcclxuICAgICAgdGhpcy5pc1dvcmtpbmcgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbG9hZCgpIHtcclxuICAgIHRoaXMudGVjaGxpZnlVcGRhdGVzID0gW107XHJcbiAgICB0aGlzLnBhZ2UgPSAxO1xyXG4gICAgaWYgKCF0aGlzLmlzV29ya2luZykge1xyXG4gICAgICB0aGlzLmxvYWREYXRhKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblNjcm9sbCgpIHtcclxuICAgIGlmICghdGhpcy5pc1dvcmtpbmcgJiYgdGhpcy5wYWdlIDwgdGhpcy5sYXN0UGFnZSkge1xyXG4gICAgICB0aGlzLnBhZ2UgKz0gMTtcclxuICAgICAgdGhpcy5sb2FkRGF0YSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbW9kaWZ5VGVjaGxpZnlVcGRhdGUobW9kZWw/OiBhbnkpIHtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVGVjaGxpZnlVcGRhdGVGb3JtQ29tcG9uZW50LCB7XHJcbiAgICAgIHdpZHRoOiBcIjYwMHB4XCIsXHJcbiAgICAgIGRhdGE6IHtcclxuICAgICAgICB0ZWNobGlmeVVwZGF0ZURldGFpbHM6IG1vZGVsLFxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgIHRoaXMucmVsb2FkKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgZGVsZXRlVGVjaGxpZnlVcGRhdGUobW9kZWw6IGFueSkge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBY3Rpb25Qb3B1cENvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogXCI0MDBweFwiLFxyXG4gICAgICBkYXRhOiA8QWN0aW9uUG9wdXA+e1xyXG4gICAgICAgIHRpdGxlOiBcIkRlbGV0ZSBVcGRhdGVcIixcclxuICAgICAgICBtZXNzYWdlOiBgQXJlIHlvdSBzdXJlIHRvIGRlbGV0ZSB0aGlzIHVwZGF0ZT9gXHJcbiAgICAgIH0sXHJcbiAgICAgIGF1dG9Gb2N1czogZmFsc2VcclxuICAgIH0pO1xyXG5cclxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShhc3luYyByZXN1bHQgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgLy9BY3Rpb24gY29uZmlybWVkXHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgIGF3YWl0IHRoaXMudGVjaGxpZnlVcGRhdGVTZXJ2aWNlLmRlbGV0ZVRlY2hsaWZ5VXBkYXRlKG1vZGVsLmlkKTtcclxuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KFxyXG4gICAgICAgICAgICBcIlN1Y2Nlc3NmdWxseSBkZWxldGVkIHRoZSB1cGRhdGVcIixcclxuICAgICAgICAgICAgXCJzdWNjZXNzXCJcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICB0aGlzLnJlbG9hZCgpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hZGRBbGVydChcIlVuYWJsZSB0byBwcm9jZXNzLCB0cnkgbGF0ZXJcIiwgXCJ3YXJuXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICByZXNldEZpZWxkVmFsdWUoZmllbGQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5maWx0ZXJGb3JtR3JvdXAuZ2V0KGZpZWxkKS5zZXRWYWx1ZShcIlwiKTtcclxuICB9XHJcblxyXG4gIHNvcnRDb2x1bW4oZXZlbnQpIHtcclxuICAgIHZhciBkaXJlY3Rpb24gPSBldmVudC5kaXJlY3Rpb24udG9TdHJpbmcoKS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgdGhpcy5hc3NpZ25GaWx0ZXIoZXZlbnQuYWN0aXZlLCBkaXJlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgYXNzaWduRmlsdGVyKGNvbHVtbiwgZGlyZWN0aW9uKSB7XHJcbiAgICBzd2l0Y2ggKGNvbHVtbikge1xyXG4gICAgICBjYXNlICd0aXRsZSc6IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJGb3JtR3JvdXAuZ2V0KCdzb3J0X2J5Jykuc2V0VmFsdWUoXCJ0aXRsZXxcIiArIGRpcmVjdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSAncmVsZWFzZWRfb24nOiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybUdyb3VwLmdldCgnc29ydF9ieScpLnNldFZhbHVlKFwicmVsZWFzZWRfb258XCIgKyBkaXJlY3Rpb24pO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgJ3ZlcnNpb24nOiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRm9ybUdyb3VwLmdldCgnc29ydF9ieScpLnNldFZhbHVlKFwidmVyc2lvbnxcIiArIGRpcmVjdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgZGVmYXVsdDoge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmZpbHRlckZvcm1Hcm91cC5nZXQoJ3NvcnRfYnknKS5zZXRWYWx1ZShcImNyZWF0ZWRfYXR8REVTQ1wiKTtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxzZWN0aW9uIGNsYXNzPVwicC00XCIgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICA8aDMgY2xhc3M9XCJwcmltYXJ5LWNvbG9yIHRleHQtY2VudGVyXCI+XHJcbiAgICBBcHAgVXBkYXRlc1xyXG4gICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwibW9kaWZ5VGVjaGxpZnlVcGRhdGUoKVwiIGNsYXNzPVwicHJpbWFyeS1iZyB0ZXh0LXdoaXRlXCI+XHJcbiAgICAgIDxtYXQtaWNvbj5cclxuICAgICAgICBhZGRcclxuICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgQ3JlYXRlXHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2gzPlxyXG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwiZmlsdGVyRm9ybUdyb3VwXCIgZnhMYXlvdXQ9XCJyb3cgd3JhcFwiIGZ4TGF5b3V0R2FwPVwiMC41cmVtXCIgZnhGbGV4PVwiMTAwJVwiIHN0eWxlPVwiZm9udC1zaXplOiAxMnB4O1wiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjAgMSBjYWxjKDEwMCUgLSAwLjVyZW0pXCIgZnhGbGV4Lmd0LW1kPVwiMCAxIGNhbGMoMTUlIC0gMC41cmVtKVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcclxuICAgICAgZnhGbGV4Lmd0LXNtPVwiMCAxIGNhbGMoMjAlIC0gMC41cmVtKVwiPlxyXG4gICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJzZWFyY2hcIiBwbGFjZWhvbGRlcj1cIlRpdGxlXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgLz5cclxuICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uICpuZ0lmPVwiZmlsdGVyRm9ybUdyb3VwLmdldCgnc2VhcmNoJykudmFsdWVcIiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cInJlc2V0RmllbGRWYWx1ZSgnc2VhcmNoJylcIj5cclxuICAgICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgZnhGbGV4PVwiMCAxIGNhbGMoMTAwJSAtIDAuNXJlbSlcIiBmeEZsZXguZ3QtbWQ9XCIwIDEgY2FsYygxNSUgLSAwLjVyZW0pXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxyXG4gICAgICBmeEZsZXguZ3Qtc209XCIwIDEgY2FsYygyMCUgLSAwLjVyZW0pXCI+XHJcbiAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInZlcnNpb25cIiBwbGFjZWhvbGRlcj1cIlZlcnNpb25cIiBhdXRvY29tcGxldGU9XCJvZmZcIiAvPlxyXG4gICAgICA8YnV0dG9uIG1hdC1idXR0b24gKm5nSWY9XCJmaWx0ZXJGb3JtR3JvdXAuZ2V0KCd2ZXJzaW9uJykudmFsdWVcIiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uXHJcbiAgICAgICAgKGNsaWNrKT1cInJlc2V0RmllbGRWYWx1ZSgndmVyc2lvbicpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvZm9ybT5cclxuXHJcbiAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJ0ZWNobGlmeVVwZGF0ZXNcIiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejggdy0xMDBcIiBtYXRTb3J0IG11bHRpVGVtcGxhdGVEYXRhUm93c1xyXG4gICAgKG1hdFNvcnRDaGFuZ2UpPVwic29ydENvbHVtbigkZXZlbnQpXCIgaW5maW5pdGVTY3JvbGwgW2luZmluaXRlU2Nyb2xsRGlzdGFuY2VdPVwiMlwiIFtpbmZpbml0ZVNjcm9sbFRocm90dGxlXT1cIjUwXCJcclxuICAgIChzY3JvbGxlZCk9XCJvblNjcm9sbCgpXCI+XHJcblxyXG4gICAgPCEtLSBJbmRleCBDb2x1bW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImluZGV4XCI+XHJcbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+ICMgPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnQ7bGV0IGk9ZGF0YUluZGV4XCI+IHt7IGkrMSB9fSA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBDb3Vyc2UgQ29sdW1uIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ0aXRsZVwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlciBkaXNhYmxlQ2xlYXI+IFRpdGxlIDwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+IHt7ZWxlbWVudD8udGl0bGV9fSA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBWZXJzaW9uIENvbHVtbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidmVyc2lvblwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlciBkaXNhYmxlQ2xlYXI+IFZlcnNpb24gPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj4ge3tlbGVtZW50Py52ZXJzaW9ufX0gPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gUmVsZWFzZWQgT24gQ29sdW1uIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJyZWxlYXNlZF9vblwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIG1hdC1zb3J0LWhlYWRlciBkaXNhYmxlQ2xlYXI+IFJlbGVhc2VkIE9uIDwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+IHt7ZWxlbWVudD8ucmVsZWFzZWRfb24gfCBkYXRlOidtZWRpdW1EYXRlJ319IDwvdGQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIExlYXJuIE1vcmUgTGluayBDb2x1bW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImxlYXJuX21vcmVfbGlua1wiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPiBMZWFybiBtb3JlIGxpbmsgPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cclxuICAgICAgICA8YSBbaHJlZl09XCJlbGVtZW50Py5sZWFybl9tb3JlX2xpbmtcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cclxuICAgICAgICAgIHt7ZWxlbWVudD8ubGVhcm5fbW9yZV9saW5rfX1cclxuICAgICAgICA8L2E+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIERlc2NyaXB0aW9uIENvbHVtbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGVzY3JpcHRpb25cIj5cclxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gRGVzY3JpcHRpb24gPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cclxuICAgICAgICA8YXBwLXJlYWQtbW9yZSBbdGV4dF09XCJlbGVtZW50Py5kZXNjcmlwdGlvblwiIFttYXhMZW5ndGhdPVwiNTBcIj48L2FwcC1yZWFkLW1vcmU+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENyZWF0b3IgQ29sdW1uIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjcmVhdG9yXCI+XHJcbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IENyZWF0b3IgPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cclxuICAgICAgICB7e2VsZW1lbnQ/LmNyZWF0b3I/Lm5hbWV9fVxyXG4gICAgICAgIDxkaXYgZnhMYXlvdXQgY2xhc3M9XCJzbWFsbFwiPlxyXG4gICAgICAgICAge3tlbGVtZW50Py5jcmVhdGVkX2F0IHwgZGF0ZSA6ICdtZWRpdW1EYXRlJ319XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEFjdGlvbnMgQ29sdW1uIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25zXCI+XHJcbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IEFjdGlvbnMgPC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIiBjbGFzcz1cInNlY29uZGFyeS1jb2xvclwiPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic2Vjb25kYXJ5LWNvbG9yXCIgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJtb2RpZnlUZWNobGlmeVVwZGF0ZShlbGVtZW50KVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPmVkaXQ8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInNlY29uZGFyeS1jb2xvclwiIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZGVsZXRlVGVjaGxpZnlVcGRhdGUoZWxlbWVudClcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cclxuICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zO1wiPjwvdHI+XHJcbiAgPC90YWJsZT5cclxuPC9zZWN0aW9uPlxyXG4iXX0=
@@ -0,0 +1,77 @@
1
+ import { Component, Inject } from '@angular/core';
2
+ import { MAT_SNACK_BAR_DATA } from '@angular/material/snack-bar';
3
+ import { UpdateViewComponent } from '../../update-view/update-view.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/snack-bar";
6
+ import * as i2 from "@angular/material/dialog";
7
+ import * as i3 from "@angular/router";
8
+ import * as i4 from "./../../techlify-update.service";
9
+ import * as i5 from "./../../../core/alert.service";
10
+ import * as i6 from "@angular/material/button";
11
+ import * as i7 from "@angular/material/icon";
12
+ import * as i8 from "@angular/material/tooltip";
13
+ import * as i9 from "@angular/flex-layout/flex";
14
+ export class UpdateNotifierSnackComponent {
15
+ constructor(data, snackBarRef, dialog, router, techlifyUpdateService, alertService) {
16
+ this.data = data;
17
+ this.snackBarRef = snackBarRef;
18
+ this.dialog = dialog;
19
+ this.router = router;
20
+ this.techlifyUpdateService = techlifyUpdateService;
21
+ this.alertService = alertService;
22
+ this.maxDescriptionLength = 70;
23
+ this.descriptionText = '';
24
+ }
25
+ ngOnInit() {
26
+ this.techlifyUpdate = this.data.techlifyUpdate;
27
+ this.rootNavUrl = this.data.rootNavUrl;
28
+ this.determineDescription(this.techlifyUpdate?.description);
29
+ }
30
+ close() {
31
+ this.createUpdateViewRecord();
32
+ this.snackBarRef.dismiss();
33
+ }
34
+ determineDescription(description) {
35
+ if (!description || description.length <= this.maxDescriptionLength) {
36
+ this.descriptionText = description;
37
+ return;
38
+ }
39
+ this.descriptionText = description.substring(0, this.maxDescriptionLength) + "...";
40
+ }
41
+ openUpdateView() {
42
+ this.close();
43
+ const dialogRef = this.dialog.open(UpdateViewComponent, {
44
+ width: "800px",
45
+ autoFocus: false,
46
+ data: {
47
+ techlifyUpdate: this.techlifyUpdate,
48
+ rootNavUrl: this.data.rootNavUrl
49
+ } // Any data passed here will be injected into the model
50
+ });
51
+ }
52
+ openUpdateHistory() {
53
+ this.close();
54
+ this.router.navigate([this.rootNavUrl + "/update-history"]);
55
+ }
56
+ async createUpdateViewRecord() {
57
+ try {
58
+ var techlifyUpdateView = {
59
+ update_id: this.techlifyUpdate?.id
60
+ };
61
+ let result = await this.techlifyUpdateService.createUpdateViewRecord(techlifyUpdateView);
62
+ }
63
+ catch (error) {
64
+ this.alertService.addAlert("Unable to process, try later", "warn");
65
+ }
66
+ }
67
+ }
68
+ UpdateNotifierSnackComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierSnackComponent, deps: [{ token: MAT_SNACK_BAR_DATA }, { token: i1.MatSnackBarRef }, { token: i2.MatDialog }, { token: i3.Router }, { token: i4.TechlifyUpdateService }, { token: i5.AlertService }], target: i0.ɵɵFactoryTarget.Component });
69
+ UpdateNotifierSnackComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UpdateNotifierSnackComponent, selector: "app-update-notifier-snack", ngImport: i0, template: "<div fxLayout=\"column\">\r\n <div fxLayout=\"row wrap\" fxLayoutAlign=\"space-between\">\r\n <div fxLayout=\"row wrap\" fxLayoutGap=\"1rem\">\r\n <span fxLayoutAlign=\"center center\">\r\n <mat-icon class=\"large-icon primary-color\">\r\n <span class=\"material-icons-outlined\">\r\n grading\r\n </span>\r\n </mat-icon>\r\n </span>\r\n <div fxLayout=\"column\">\r\n <h5 class=\"primary-color text-truncate\" matTooltip=\"{{techlifyUpdate?.title}}\" matTooltipPosition=\"below\">\r\n App Update: {{techlifyUpdate?.title}}\r\n </h5>\r\n <small class=\"text-muted\">\r\n Version : {{techlifyUpdate?.version}}\r\n </small>\r\n </div>\r\n </div>\r\n <div fxLayoutAlign=\"end center\" class=\"text-muted\">\r\n <button mat-icon-button type=\"button\" (click)=\"close()\">\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div fxLayout=\"row\" class=\"text-muted\" style=\"margin-top: 1rem;\" [innerHtml]=\"descriptionText\">\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between\">\r\n <button type=\"button\" mat-button class=\"primary-color\" (click)=\"openUpdateHistory()\">\r\n <mat-icon>\r\n history\r\n </mat-icon>\r\n Update History\r\n </button>\r\n <button type=\"button\" mat-raised-button class=\"primary-bg text-white\" (click)=\"openUpdateView()\">\r\n View\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".large-icon{transform:scale(1.5)}.primary-color{color:#009fdd!important}.primary-bg{background-color:#009fdd!important}.text-muted,.text-white{color:#d3d3d3}.text-truncate{width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}@media screen and (max-width: 1440px){.text-truncate{width:350px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}@media screen and (max-width: 1024px){.text-truncate{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}@media screen and (max-width: 1024px){.text-truncate{width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}\n"], dependencies: [{ kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i9.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i9.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i9.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }] });
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierSnackComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'app-update-notifier-snack', template: "<div fxLayout=\"column\">\r\n <div fxLayout=\"row wrap\" fxLayoutAlign=\"space-between\">\r\n <div fxLayout=\"row wrap\" fxLayoutGap=\"1rem\">\r\n <span fxLayoutAlign=\"center center\">\r\n <mat-icon class=\"large-icon primary-color\">\r\n <span class=\"material-icons-outlined\">\r\n grading\r\n </span>\r\n </mat-icon>\r\n </span>\r\n <div fxLayout=\"column\">\r\n <h5 class=\"primary-color text-truncate\" matTooltip=\"{{techlifyUpdate?.title}}\" matTooltipPosition=\"below\">\r\n App Update: {{techlifyUpdate?.title}}\r\n </h5>\r\n <small class=\"text-muted\">\r\n Version : {{techlifyUpdate?.version}}\r\n </small>\r\n </div>\r\n </div>\r\n <div fxLayoutAlign=\"end center\" class=\"text-muted\">\r\n <button mat-icon-button type=\"button\" (click)=\"close()\">\r\n <mat-icon>clear</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div fxLayout=\"row\" class=\"text-muted\" style=\"margin-top: 1rem;\" [innerHtml]=\"descriptionText\">\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutAlign=\"space-between\">\r\n <button type=\"button\" mat-button class=\"primary-color\" (click)=\"openUpdateHistory()\">\r\n <mat-icon>\r\n history\r\n </mat-icon>\r\n Update History\r\n </button>\r\n <button type=\"button\" mat-raised-button class=\"primary-bg text-white\" (click)=\"openUpdateView()\">\r\n View\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".large-icon{transform:scale(1.5)}.primary-color{color:#009fdd!important}.primary-bg{background-color:#009fdd!important}.text-muted,.text-white{color:#d3d3d3}.text-truncate{width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}@media screen and (max-width: 1440px){.text-truncate{width:350px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}@media screen and (max-width: 1024px){.text-truncate{width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}@media screen and (max-width: 1024px){.text-truncate{width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}}\n"] }]
73
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
74
+ type: Inject,
75
+ args: [MAT_SNACK_BAR_DATA]
76
+ }] }, { type: i1.MatSnackBarRef }, { type: i2.MatDialog }, { type: i3.Router }, { type: i4.TechlifyUpdateService }, { type: i5.AlertService }]; } });
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLW5vdGlmaWVyLXNuYWNrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXItc25hY2svdXBkYXRlLW5vdGlmaWVyLXNuYWNrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXItc25hY2svdXBkYXRlLW5vdGlmaWVyLXNuYWNrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQWtCLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7O0FBUTlFLE1BQU0sT0FBTyw0QkFBNEI7SUFNdkMsWUFDcUMsSUFBUyxFQUNwQyxXQUFpRCxFQUNqRCxNQUFpQixFQUNqQixNQUFjLEVBQ2QscUJBQTRDLEVBQzVDLFlBQTBCO1FBTEMsU0FBSSxHQUFKLElBQUksQ0FBSztRQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBc0M7UUFDakQsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVhwQyx5QkFBb0IsR0FBUSxFQUFFLENBQUM7UUFDL0Isb0JBQWUsR0FBUSxFQUFFLENBQUM7SUFXdEIsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDdkMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsV0FBVyxDQUFDLENBQUE7SUFDN0QsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxXQUFnQjtRQUNuQyxJQUFJLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ25FLElBQUksQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDO1lBQ25DLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ3JGLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDdEQsS0FBSyxFQUFFLE9BQU87WUFDZCxTQUFTLEVBQUUsS0FBSztZQUNoQixJQUFJLEVBQUU7Z0JBQ0osY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVO2FBQ2pDLENBQUMsdURBQXVEO1NBQzFELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCO1FBQzFCLElBQUk7WUFDRixJQUFJLGtCQUFrQixHQUFHO2dCQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFO2FBQ25DLENBQUM7WUFDRixJQUFJLE1BQU0sR0FBUSxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQy9GO1FBQ0QsT0FBTyxLQUFLLEVBQUU7WUFDWixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNwRTtJQUNILENBQUM7O3lIQTdEVSw0QkFBNEIsa0JBTzdCLGtCQUFrQjs2R0FQakIsNEJBQTRCLGlFQ2J6QyxvL0NBdUNBOzJGRDFCYSw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCOzswQkFXbEMsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLy4uLy4uLy4uL2NvcmUvYWxlcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFRlY2hsaWZ5VXBkYXRlU2VydmljZSB9IGZyb20gJy4vLi4vLi4vdGVjaGxpZnktdXBkYXRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEVtYmVkZGVkVmlld1JlZiwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXJSZWYsIE1BVF9TTkFDS19CQVJfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IFVwZGF0ZVZpZXdDb21wb25lbnQgfSBmcm9tICcuLi8uLi91cGRhdGUtdmlldy91cGRhdGUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtdXBkYXRlLW5vdGlmaWVyLXNuYWNrJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdXBkYXRlLW5vdGlmaWVyLXNuYWNrLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi91cGRhdGUtbm90aWZpZXItc25hY2suY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXBkYXRlTm90aWZpZXJTbmFja0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgbWF4RGVzY3JpcHRpb25MZW5ndGg6IGFueSA9IDcwO1xyXG4gIGRlc2NyaXB0aW9uVGV4dDogYW55ID0gJyc7XHJcbiAgdGVjaGxpZnlVcGRhdGU6IGFueTtcclxuICByb290TmF2VXJsOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChNQVRfU05BQ0tfQkFSX0RBVEEpIHB1YmxpYyBkYXRhOiBhbnksXHJcbiAgICBwcml2YXRlIHNuYWNrQmFyUmVmOiBNYXRTbmFja0JhclJlZjxFbWJlZGRlZFZpZXdSZWY8YW55Pj4sXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgdGVjaGxpZnlVcGRhdGVTZXJ2aWNlOiBUZWNobGlmeVVwZGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRlY2hsaWZ5VXBkYXRlID0gdGhpcy5kYXRhLnRlY2hsaWZ5VXBkYXRlO1xyXG4gICAgdGhpcy5yb290TmF2VXJsID0gdGhpcy5kYXRhLnJvb3ROYXZVcmw7XHJcbiAgICB0aGlzLmRldGVybWluZURlc2NyaXB0aW9uKHRoaXMudGVjaGxpZnlVcGRhdGU/LmRlc2NyaXB0aW9uKVxyXG4gIH1cclxuXHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNyZWF0ZVVwZGF0ZVZpZXdSZWNvcmQoKTtcclxuICAgIHRoaXMuc25hY2tCYXJSZWYuZGlzbWlzcygpO1xyXG4gIH1cclxuXHJcbiAgZGV0ZXJtaW5lRGVzY3JpcHRpb24oZGVzY3JpcHRpb246IGFueSkge1xyXG4gICAgaWYgKCFkZXNjcmlwdGlvbiB8fCBkZXNjcmlwdGlvbi5sZW5ndGggPD0gdGhpcy5tYXhEZXNjcmlwdGlvbkxlbmd0aCkge1xyXG4gICAgICB0aGlzLmRlc2NyaXB0aW9uVGV4dCA9IGRlc2NyaXB0aW9uO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmRlc2NyaXB0aW9uVGV4dCA9IGRlc2NyaXB0aW9uLnN1YnN0cmluZygwLCB0aGlzLm1heERlc2NyaXB0aW9uTGVuZ3RoKSArIFwiLi4uXCI7XHJcbiAgfVxyXG5cclxuICBvcGVuVXBkYXRlVmlldygpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2UoKTtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVXBkYXRlVmlld0NvbXBvbmVudCwge1xyXG4gICAgICB3aWR0aDogXCI4MDBweFwiLFxyXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlLFxyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgdGVjaGxpZnlVcGRhdGU6IHRoaXMudGVjaGxpZnlVcGRhdGUsXHJcbiAgICAgICAgcm9vdE5hdlVybDogdGhpcy5kYXRhLnJvb3ROYXZVcmxcclxuICAgICAgfSAvLyBBbnkgZGF0YSBwYXNzZWQgaGVyZSB3aWxsIGJlIGluamVjdGVkIGludG8gdGhlIG1vZGVsXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5VcGRhdGVIaXN0b3J5KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMucm9vdE5hdlVybCArIFwiL3VwZGF0ZS1oaXN0b3J5XCJdKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGNyZWF0ZVVwZGF0ZVZpZXdSZWNvcmQoKSB7XHJcbiAgICB0cnkge1xyXG4gICAgICB2YXIgdGVjaGxpZnlVcGRhdGVWaWV3ID0ge1xyXG4gICAgICAgIHVwZGF0ZV9pZDogdGhpcy50ZWNobGlmeVVwZGF0ZT8uaWRcclxuICAgICAgfTtcclxuICAgICAgbGV0IHJlc3VsdDogYW55ID0gYXdhaXQgdGhpcy50ZWNobGlmeVVwZGF0ZVNlcnZpY2UuY3JlYXRlVXBkYXRlVmlld1JlY29yZCh0ZWNobGlmeVVwZGF0ZVZpZXcpO1xyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFkZEFsZXJ0KFwiVW5hYmxlIHRvIHByb2Nlc3MsIHRyeSBsYXRlclwiLCBcIndhcm5cIik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICA8ZGl2IGZ4TGF5b3V0PVwicm93IHdyYXBcIiBmeExheW91dEFsaWduPVwic3BhY2UtYmV0d2VlblwiPlxyXG4gICAgPGRpdiBmeExheW91dD1cInJvdyB3cmFwXCIgZnhMYXlvdXRHYXA9XCIxcmVtXCI+XHJcbiAgICAgIDxzcGFuIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibGFyZ2UtaWNvbiBwcmltYXJ5LWNvbG9yXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zLW91dGxpbmVkXCI+XHJcbiAgICAgICAgICAgIGdyYWRpbmdcclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICAgICAgICA8aDUgY2xhc3M9XCJwcmltYXJ5LWNvbG9yIHRleHQtdHJ1bmNhdGVcIiBtYXRUb29sdGlwPVwie3t0ZWNobGlmeVVwZGF0ZT8udGl0bGV9fVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImJlbG93XCI+XHJcbiAgICAgICAgICBBcHAgVXBkYXRlOiB7e3RlY2hsaWZ5VXBkYXRlPy50aXRsZX19XHJcbiAgICAgICAgPC9oNT5cclxuICAgICAgICA8c21hbGwgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+XHJcbiAgICAgICAgICBWZXJzaW9uIDoge3t0ZWNobGlmeVVwZGF0ZT8udmVyc2lvbn19XHJcbiAgICAgICAgPC9zbWFsbD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgZnhMYXlvdXRBbGlnbj1cImVuZCBjZW50ZXJcIiBjbGFzcz1cInRleHQtbXV0ZWRcIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjbG9zZSgpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uPmNsZWFyPC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJ0ZXh0LW11dGVkXCIgc3R5bGU9XCJtYXJnaW4tdG9wOiAxcmVtO1wiIFtpbm5lckh0bWxdPVwiZGVzY3JpcHRpb25UZXh0XCI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1iZXR3ZWVuXCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtYnV0dG9uIGNsYXNzPVwicHJpbWFyeS1jb2xvclwiIChjbGljayk9XCJvcGVuVXBkYXRlSGlzdG9yeSgpXCI+XHJcbiAgICAgIDxtYXQtaWNvbj5cclxuICAgICAgICBoaXN0b3J5XHJcbiAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgIFVwZGF0ZSBIaXN0b3J5XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG1hdC1yYWlzZWQtYnV0dG9uIGNsYXNzPVwicHJpbWFyeS1iZyB0ZXh0LXdoaXRlXCIgKGNsaWNrKT1cIm9wZW5VcGRhdGVWaWV3KClcIj5cclxuICAgICAgVmlld1xyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,53 @@
1
+ import { UpdateNotifierSnackComponent } from './update-notifier-snack/update-notifier-snack.component';
2
+ import { Component, Input } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/snack-bar";
5
+ import * as i2 from "./../techlify-update.service";
6
+ import * as i3 from "../../core/alert.service";
7
+ export class UpdateNotifierComponent {
8
+ constructor(snackBar, techlifyUpdateService, alertService) {
9
+ this.snackBar = snackBar;
10
+ this.techlifyUpdateService = techlifyUpdateService;
11
+ this.alertService = alertService;
12
+ this.rootNavUrl = '/techlify-updates';
13
+ }
14
+ ngOnInit() {
15
+ }
16
+ ngAfterViewInit() {
17
+ setTimeout(x => {
18
+ this.getNewUpdate();
19
+ }, 5000);
20
+ }
21
+ async getNewUpdate() {
22
+ try {
23
+ let result = await this.techlifyUpdateService.getNewUpdateForCurrentUser();
24
+ this.techlifyUpdate = result.item;
25
+ if (this.techlifyUpdate) {
26
+ this.showUpdate();
27
+ }
28
+ }
29
+ catch (error) {
30
+ console.log("Current user updates failed");
31
+ }
32
+ }
33
+ showUpdate() {
34
+ this.snackBar.openFromComponent(UpdateNotifierSnackComponent, {
35
+ data: {
36
+ techlifyUpdate: this.techlifyUpdate,
37
+ rootNavUrl: this.rootNavUrl
38
+ },
39
+ horizontalPosition: 'right',
40
+ verticalPosition: 'top',
41
+ panelClass: ['white-bg']
42
+ });
43
+ }
44
+ }
45
+ UpdateNotifierComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierComponent, deps: [{ token: i1.MatSnackBar }, { token: i2.TechlifyUpdateService }, { token: i3.AlertService }], target: i0.ɵɵFactoryTarget.Component });
46
+ UpdateNotifierComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: UpdateNotifierComponent, selector: "app-update-notifier", inputs: { rootNavUrl: "rootNavUrl" }, ngImport: i0, template: "", styles: ["::ng-deep .white-bg{background-color:#fff}\n"] });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierComponent, decorators: [{
48
+ type: Component,
49
+ args: [{ selector: 'app-update-notifier', template: "", styles: ["::ng-deep .white-bg{background-color:#fff}\n"] }]
50
+ }], ctorParameters: function () { return [{ type: i1.MatSnackBar }, { type: i2.TechlifyUpdateService }, { type: i3.AlertService }]; }, propDecorators: { rootNavUrl: [{
51
+ type: Input
52
+ }] } });
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLW5vdGlmaWVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlY2hsaWZ5LWNvcmUvc3JjL2xpYi90ZWNobGlmeS11cGRhdGUvdXBkYXRlLW5vdGlmaWVyL3VwZGF0ZS1ub3RpZmllci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUV2RyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTekQsTUFBTSxPQUFPLHVCQUF1QjtJQUlsQyxZQUNVLFFBQXFCLEVBQ3JCLHFCQUE0QyxFQUM1QyxZQUEwQjtRQUYxQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFMM0IsZUFBVSxHQUFXLG1CQUFtQixDQUFDO0lBTTlDLENBQUM7SUFFTCxRQUFRO0lBQ1IsQ0FBQztJQUVELGVBQWU7UUFDYixVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDYixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELEtBQUssQ0FBQyxZQUFZO1FBQ2hCLElBQUk7WUFDRixJQUFJLE1BQU0sR0FBUSxNQUFNLElBQUksQ0FBQyxxQkFBcUIsQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1lBQ2hGLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNsQyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzthQUNuQjtTQUNGO1FBQ0QsT0FBTyxLQUFLLEVBQUU7WUFDWixPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLENBQUM7U0FDNUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsNEJBQTRCLEVBQUU7WUFDNUQsSUFBSSxFQUFFO2dCQUNKLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztnQkFDbkMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO2FBQzVCO1lBQ0Qsa0JBQWtCLEVBQUUsT0FBTztZQUMzQixnQkFBZ0IsRUFBRSxLQUFLO1lBQ3ZCLFVBQVUsRUFBRSxDQUFDLFVBQVUsQ0FBQztTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDOztvSEExQ1UsdUJBQXVCO3dHQUF2Qix1QkFBdUIsaUdDWHBDLEVBQUE7MkZEV2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjtpS0FNdEIsVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVwZGF0ZU5vdGlmaWVyU25hY2tDb21wb25lbnQgfSBmcm9tICcuL3VwZGF0ZS1ub3RpZmllci1zbmFjay91cGRhdGUtbm90aWZpZXItc25hY2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGVjaGxpZnlVcGRhdGVTZXJ2aWNlIH0gZnJvbSAnLi8uLi90ZWNobGlmeS11cGRhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL2NvcmUvYWxlcnQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC11cGRhdGUtbm90aWZpZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91cGRhdGUtbm90aWZpZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VwZGF0ZS1ub3RpZmllci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGRhdGVOb3RpZmllckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgdGVjaGxpZnlVcGRhdGU6IGFueTtcclxuICBASW5wdXQoKSByb290TmF2VXJsOiBzdHJpbmcgPSAnL3RlY2hsaWZ5LXVwZGF0ZXMnO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxyXG4gICAgcHJpdmF0ZSB0ZWNobGlmeVVwZGF0ZVNlcnZpY2U6IFRlY2hsaWZ5VXBkYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgYWxlcnRTZXJ2aWNlOiBBbGVydFNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoeCA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0TmV3VXBkYXRlKCk7XHJcbiAgICB9LCA1MDAwKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldE5ld1VwZGF0ZSgpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGxldCByZXN1bHQ6IGFueSA9IGF3YWl0IHRoaXMudGVjaGxpZnlVcGRhdGVTZXJ2aWNlLmdldE5ld1VwZGF0ZUZvckN1cnJlbnRVc2VyKCk7XHJcbiAgICAgIHRoaXMudGVjaGxpZnlVcGRhdGUgPSByZXN1bHQuaXRlbTtcclxuICAgICAgaWYgKHRoaXMudGVjaGxpZnlVcGRhdGUpIHtcclxuICAgICAgICB0aGlzLnNob3dVcGRhdGUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiQ3VycmVudCB1c2VyIHVwZGF0ZXMgZmFpbGVkXCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2hvd1VwZGF0ZSgpIHtcclxuICAgIHRoaXMuc25hY2tCYXIub3BlbkZyb21Db21wb25lbnQoVXBkYXRlTm90aWZpZXJTbmFja0NvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgdGVjaGxpZnlVcGRhdGU6IHRoaXMudGVjaGxpZnlVcGRhdGUsXHJcbiAgICAgICAgcm9vdE5hdlVybDogdGhpcy5yb290TmF2VXJsXHJcbiAgICAgIH0sXHJcbiAgICAgIGhvcml6b250YWxQb3NpdGlvbjogJ3JpZ2h0JyxcclxuICAgICAgdmVydGljYWxQb3NpdGlvbjogJ3RvcCcsXHJcbiAgICAgIHBhbmVsQ2xhc3M6IFsnd2hpdGUtYmcnXVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCIiXX0=
@@ -0,0 +1,39 @@
1
+ import { ActionPopupModule } from './../../action-popup/action-popup.module';
2
+ import { FlexLayoutModule } from '@angular/flex-layout';
3
+ import { MaterialModule } from './../../material.module';
4
+ import { UpdateViewModule } from './../update-view/update-view.module';
5
+ import { NgModule } from '@angular/core';
6
+ import { CommonModule } from '@angular/common';
7
+ import { UpdateNotifierComponent } from './update-notifier.component';
8
+ import { UpdateNotifierSnackComponent } from './update-notifier-snack/update-notifier-snack.component';
9
+ import * as i0 from "@angular/core";
10
+ export class UpdateNotifierModule {
11
+ }
12
+ UpdateNotifierModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ UpdateNotifierModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierModule, declarations: [UpdateNotifierComponent, UpdateNotifierSnackComponent], imports: [CommonModule,
14
+ MaterialModule,
15
+ UpdateViewModule,
16
+ FlexLayoutModule,
17
+ ActionPopupModule], exports: [UpdateNotifierComponent] });
18
+ UpdateNotifierModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierModule, imports: [CommonModule,
19
+ MaterialModule,
20
+ UpdateViewModule,
21
+ FlexLayoutModule,
22
+ ActionPopupModule] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: UpdateNotifierModule, decorators: [{
24
+ type: NgModule,
25
+ args: [{
26
+ declarations: [UpdateNotifierComponent, UpdateNotifierSnackComponent],
27
+ imports: [
28
+ CommonModule,
29
+ MaterialModule,
30
+ UpdateViewModule,
31
+ FlexLayoutModule,
32
+ ActionPopupModule
33
+ ],
34
+ exports: [
35
+ UpdateNotifierComponent,
36
+ ]
37
+ }]
38
+ }] });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLW5vdGlmaWVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvdGVjaGxpZnktdXBkYXRlL3VwZGF0ZS1ub3RpZmllci91cGRhdGUtbm90aWZpZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQzs7QUFnQnZHLE1BQU0sT0FBTyxvQkFBb0I7O2lIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQixpQkFaZCx1QkFBdUIsRUFBRSw0QkFBNEIsYUFFaEUsWUFBWTtRQUNaLGNBQWM7UUFDZCxnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGlCQUFpQixhQUdqQix1QkFBdUI7a0hBR2xCLG9CQUFvQixZQVZ6QixZQUFZO1FBQ1osY0FBYztRQUNkLGdCQUFnQjtRQUNoQixnQkFBZ0I7UUFDaEIsaUJBQWlCOzJGQU1aLG9CQUFvQjtrQkFiaEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSw0QkFBNEIsQ0FBQztvQkFDckUsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsdUJBQXVCO3FCQUMxQjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGlvblBvcHVwTW9kdWxlIH0gZnJvbSAnLi8uLi8uLi9hY3Rpb24tcG9wdXAvYWN0aW9uLXBvcHVwLm1vZHVsZSc7XHJcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XHJcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi8uLi8uLi9tYXRlcmlhbC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBVcGRhdGVWaWV3TW9kdWxlIH0gZnJvbSAnLi8uLi91cGRhdGUtdmlldy91cGRhdGUtdmlldy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBVcGRhdGVOb3RpZmllckNvbXBvbmVudCB9IGZyb20gJy4vdXBkYXRlLW5vdGlmaWVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVwZGF0ZU5vdGlmaWVyU25hY2tDb21wb25lbnQgfSBmcm9tICcuL3VwZGF0ZS1ub3RpZmllci1zbmFjay91cGRhdGUtbm90aWZpZXItc25hY2suY29tcG9uZW50JztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbVXBkYXRlTm90aWZpZXJDb21wb25lbnQsIFVwZGF0ZU5vdGlmaWVyU25hY2tDb21wb25lbnRdLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBNYXRlcmlhbE1vZHVsZSxcclxuICAgICAgICBVcGRhdGVWaWV3TW9kdWxlLFxyXG4gICAgICAgIEZsZXhMYXlvdXRNb2R1bGUsXHJcbiAgICAgICAgQWN0aW9uUG9wdXBNb2R1bGVcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgVXBkYXRlTm90aWZpZXJDb21wb25lbnQsXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGRhdGVOb3RpZmllck1vZHVsZSB7IH1cclxuIl19