ngx-techlify-core 11.4.8 → 11.4.9

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 (341) hide show
  1. package/README.md +24 -24
  2. package/bundles/ngx-techlify-core.umd.js +8085 -8047
  3. package/bundles/ngx-techlify-core.umd.js.map +1 -1
  4. package/bundles/ngx-techlify-core.umd.min.js +1 -1
  5. package/bundles/ngx-techlify-core.umd.min.js.map +1 -1
  6. package/esm2015/lib/action-popup/action-popup.component.js +32 -32
  7. package/esm2015/lib/action-popup/action-popup.model.js +3 -3
  8. package/esm2015/lib/action-popup/action-popup.module.js +26 -26
  9. package/esm2015/lib/action-popup/index.js +3 -3
  10. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.js +12 -12
  11. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.component.js +49 -49
  12. package/esm2015/lib/audit-log/audit-log-for-model/audit-log-for-model.module.js +25 -25
  13. package/esm2015/lib/audit-log/audit-log-list/audit-log-list-routing.module.js +12 -12
  14. package/esm2015/lib/audit-log/audit-log-list/audit-log-list.component.js +132 -132
  15. package/esm2015/lib/audit-log/audit-log-list/audit-log-list.module.js +29 -29
  16. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.js +12 -12
  17. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.js +67 -67
  18. package/esm2015/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.js +25 -25
  19. package/esm2015/lib/audit-log/audit-log-routing.module.js +19 -19
  20. package/esm2015/lib/audit-log/audit-log-view/audit-log-view-routing.module.js +12 -12
  21. package/esm2015/lib/audit-log/audit-log-view/audit-log-view.component.js +60 -60
  22. package/esm2015/lib/audit-log/audit-log-view/audit-log-view.module.js +21 -21
  23. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.js +12 -12
  24. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.component.js +57 -57
  25. package/esm2015/lib/audit-log/audit-log-view-model/audit-log-view-model.module.js +21 -21
  26. package/esm2015/lib/audit-log/audit-log.module.js +20 -20
  27. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.js +12 -12
  28. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.js +35 -35
  29. package/esm2015/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.js +21 -21
  30. package/esm2015/lib/base-model/index.js +4 -4
  31. package/esm2015/lib/base-model/techlify-form-component.class.js +51 -51
  32. package/esm2015/lib/base-model/techlify-listing-component.class.js +41 -41
  33. package/esm2015/lib/base-model/techlify-service.class.js +64 -64
  34. package/esm2015/lib/core/alert.service.js +39 -39
  35. package/esm2015/lib/core/api-prefix.interceptor.js +28 -28
  36. package/esm2015/lib/core/authentication.guard.js +39 -39
  37. package/esm2015/lib/core/authentication.service.js +59 -59
  38. package/esm2015/lib/core/cache.interceptor.js +60 -60
  39. package/esm2015/lib/core/config.service.js +47 -47
  40. package/esm2015/lib/core/core.module.js +42 -42
  41. package/esm2015/lib/core/credentials.service.js +84 -84
  42. package/esm2015/lib/core/dataManager.service.js +120 -120
  43. package/esm2015/lib/core/error-handler.interceptor.js +53 -53
  44. package/esm2015/lib/core/error-handler.service.js +59 -59
  45. package/esm2015/lib/core/form-validator.service.js +23 -23
  46. package/esm2015/lib/core/header.interceptor.js +22 -22
  47. package/esm2015/lib/core/http-cache.service.js +110 -110
  48. package/esm2015/lib/core/http.service.js +82 -82
  49. package/esm2015/lib/core/index.js +21 -21
  50. package/esm2015/lib/core/logger.service.js +100 -100
  51. package/esm2015/lib/core/route-reusable-strategy.js +35 -35
  52. package/esm2015/lib/core/snack/snack.component.js +33 -33
  53. package/esm2015/lib/core/snack/snack.module.js +25 -25
  54. package/esm2015/lib/core/storage.service.js +36 -36
  55. package/esm2015/lib/core/techlify-config.model.js +28 -28
  56. package/esm2015/lib/core/token.interceptor.js +30 -30
  57. package/esm2015/lib/data-table/data-table.component.js +190 -190
  58. package/esm2015/lib/data-table/data-table.model.js +11 -11
  59. package/esm2015/lib/data-table/data-table.module.js +25 -25
  60. package/esm2015/lib/data-table/index.js +3 -3
  61. package/esm2015/lib/date-validator.js +10 -10
  62. package/esm2015/lib/document-viewer/document-viewer.component.js +58 -58
  63. package/esm2015/lib/document-viewer/document-viewer.module.js +25 -25
  64. package/esm2015/lib/document-viewer/index.js +3 -3
  65. package/esm2015/lib/document-viewer/viewer-config.model.js +3 -3
  66. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.js +26 -26
  67. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.js +72 -72
  68. package/esm2015/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.js +23 -23
  69. package/esm2015/lib/email-subscription/email-subscription-for-user/index.js +2 -2
  70. package/esm2015/lib/email-subscription/email-subscription-routing.module.js +12 -12
  71. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.js +12 -12
  72. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.js +102 -102
  73. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.js +28 -28
  74. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.js +2 -2
  75. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.js +28 -28
  76. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.js +153 -153
  77. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.js +27 -27
  78. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.js +1 -1
  79. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.js +12 -12
  80. package/esm2015/lib/email-subscription/email-subscription-type/email-subscription-type.module.js +15 -15
  81. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.js +12 -12
  82. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.js +99 -99
  83. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.js +27 -27
  84. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.js +2 -2
  85. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.js +28 -28
  86. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.js +155 -155
  87. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.js +29 -29
  88. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.js +2 -2
  89. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.js +12 -12
  90. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.js +50 -50
  91. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.js +25 -25
  92. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.js +2 -2
  93. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.js +12 -12
  94. package/esm2015/lib/email-subscription/email-subscription-user/email-subscription-user.module.js +15 -15
  95. package/esm2015/lib/email-subscription/email-subscription.module.js +15 -15
  96. package/esm2015/lib/entity-files/entity-file-form/entity-file-form.component.js +147 -138
  97. package/esm2015/lib/entity-files/entity-file.service.js +42 -42
  98. package/esm2015/lib/entity-files/entity-files-view-all.component.js +234 -208
  99. package/esm2015/lib/entity-files/entity-files-view-all.module.js +40 -34
  100. package/esm2015/lib/entity-files/index.js +3 -3
  101. package/esm2015/lib/export-excel/export-excel-button/export-excel-button.component.js +32 -32
  102. package/esm2015/lib/export-excel/export-excel.module.js +17 -17
  103. package/esm2015/lib/file-dropper/file-dropper.component.js +122 -122
  104. package/esm2015/lib/file-dropper/file-dropper.model.js +3 -3
  105. package/esm2015/lib/file-dropper/file-dropper.module.js +21 -21
  106. package/esm2015/lib/file-dropper/index.js +3 -3
  107. package/esm2015/lib/import-csv/data-import/data-import.component.js +18 -18
  108. package/esm2015/lib/import-csv/failed-items-list/failed-items-list.component.js +33 -33
  109. package/esm2015/lib/import-csv/field-mapping/field-mapping.component.js +148 -148
  110. package/esm2015/lib/import-csv/import-csv-config.js +2 -2
  111. package/esm2015/lib/import-csv/import-csv.component.js +196 -196
  112. package/esm2015/lib/import-csv/import-csv.module.js +46 -46
  113. package/esm2015/lib/import-csv/import-history-list/import-history-list.component.js +71 -71
  114. package/esm2015/lib/import-csv/import-success/import-success.component.js +19 -19
  115. package/esm2015/lib/loader/index.js +2 -2
  116. package/esm2015/lib/loader/loader.component.js +22 -22
  117. package/esm2015/lib/loader/loader.module.js +21 -21
  118. package/esm2015/lib/login-history-for-user/login-history-for-user-routing.module.js +20 -20
  119. package/esm2015/lib/login-history-for-user/login-history-for-user.component.js +88 -88
  120. package/esm2015/lib/login-history-for-user/login-history-for-user.module.js +27 -27
  121. package/esm2015/lib/material.module.js +60 -60
  122. package/esm2015/lib/note/comment-form/comment-form.component.js +73 -73
  123. package/esm2015/lib/note/index.js +4 -4
  124. package/esm2015/lib/note/note-form/note-form.component.js +81 -81
  125. package/esm2015/lib/note/note-list/note-list.component.js +151 -151
  126. package/esm2015/lib/note/note.module.js +36 -36
  127. package/esm2015/lib/note/note.service.js +31 -31
  128. package/esm2015/lib/read-more/read-more.component.js +43 -43
  129. package/esm2015/lib/read-more/read-more.module.js +21 -21
  130. package/esm2015/lib/searchable-selector/index.js +3 -3
  131. package/esm2015/lib/searchable-selector/mat-select-infinite-scroll.directive.js +81 -81
  132. package/esm2015/lib/searchable-selector/searchable-selector.component.js +307 -307
  133. package/esm2015/lib/searchable-selector/searchable-selector.module.js +28 -28
  134. package/esm2015/lib/techlify-feature/on-off-switch/on-off-switch.component.js +27 -27
  135. package/esm2015/lib/techlify-feature/techlify-feature-enabled.directive.js +78 -78
  136. package/esm2015/lib/techlify-feature/techlify-feature-listing.component.js +177 -177
  137. package/esm2015/lib/techlify-feature/techlify-feature.module.js +30 -30
  138. package/esm2015/lib/techlify-feature/techlify-feature.routing.js +12 -12
  139. package/esm2015/lib/techlify-feature/techlify-feature.service.js +28 -28
  140. package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.js +15 -15
  141. package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.js +269 -269
  142. package/esm2015/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.js +25 -25
  143. package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.js +168 -168
  144. package/esm2015/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.js +29 -29
  145. package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.component.js +114 -114
  146. package/esm2015/lib/techlify-update/techlify-update-form/techlify-update-form.module.js +28 -28
  147. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.js +22 -22
  148. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.component.js +143 -143
  149. package/esm2015/lib/techlify-update/techlify-update-history/techlify-update-history.module.js +28 -28
  150. package/esm2015/lib/techlify-update/techlify-update-routing.module.js +22 -22
  151. package/esm2015/lib/techlify-update/techlify-update.module.js +30 -30
  152. package/esm2015/lib/techlify-update/techlify-update.service.js +43 -43
  153. package/esm2015/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.js +161 -161
  154. package/esm2015/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.js +82 -82
  155. package/esm2015/lib/techlify-update/update-notifier/update-notifier.component.js +62 -62
  156. package/esm2015/lib/techlify-update/update-notifier/update-notifier.module.js +29 -29
  157. package/esm2015/lib/techlify-update/update-view/update-view.component.js +36 -36
  158. package/esm2015/lib/techlify-update/update-view/update-view.module.js +24 -24
  159. package/esm2015/lib/timeline-filter/calculate-timeline.js +102 -102
  160. package/esm2015/lib/timeline-filter/index.js +4 -4
  161. package/esm2015/lib/timeline-filter/timeline-filter-routing.module.js +12 -12
  162. package/esm2015/lib/timeline-filter/timeline-filter.component.js +213 -213
  163. package/esm2015/lib/timeline-filter/timeline-filter.module.js +23 -23
  164. package/esm2015/lib/timeline-filter/timeline.model.js +18 -18
  165. package/esm2015/lib/utility/date-utils.service.js +48 -48
  166. package/esm2015/lib/utility/index.js +4 -4
  167. package/esm2015/lib/utility/num-items-selector.component.js +29 -29
  168. package/esm2015/lib/utility/number-selector.component.js +38 -38
  169. package/esm2015/lib/utility/utility.module.js +20 -20
  170. package/esm2015/ngx-techlify-core.js +60 -60
  171. package/esm2015/public-api.js +96 -96
  172. package/fesm2015/ngx-techlify-core.js +6941 -6903
  173. package/fesm2015/ngx-techlify-core.js.map +1 -1
  174. package/lib/action-popup/action-popup.component.d.ts +14 -14
  175. package/lib/action-popup/action-popup.model.d.ts +5 -5
  176. package/lib/action-popup/action-popup.module.d.ts +2 -2
  177. package/lib/action-popup/index.d.ts +2 -2
  178. package/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.d.ts +2 -2
  179. package/lib/audit-log/audit-log-for-model/audit-log-for-model.component.d.ts +12 -12
  180. package/lib/audit-log/audit-log-for-model/audit-log-for-model.module.d.ts +2 -2
  181. package/lib/audit-log/audit-log-list/audit-log-list-routing.module.d.ts +2 -2
  182. package/lib/audit-log/audit-log-list/audit-log-list.component.d.ts +32 -32
  183. package/lib/audit-log/audit-log-list/audit-log-list.module.d.ts +2 -2
  184. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.d.ts +2 -2
  185. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.d.ts +19 -19
  186. package/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.d.ts +2 -2
  187. package/lib/audit-log/audit-log-routing.module.d.ts +2 -2
  188. package/lib/audit-log/audit-log-view/audit-log-view-routing.module.d.ts +2 -2
  189. package/lib/audit-log/audit-log-view/audit-log-view.component.d.ts +17 -17
  190. package/lib/audit-log/audit-log-view/audit-log-view.module.d.ts +2 -2
  191. package/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.d.ts +2 -2
  192. package/lib/audit-log/audit-log-view-model/audit-log-view-model.component.d.ts +15 -15
  193. package/lib/audit-log/audit-log-view-model/audit-log-view-model.module.d.ts +2 -2
  194. package/lib/audit-log/audit-log.module.d.ts +2 -2
  195. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.d.ts +2 -2
  196. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.d.ts +11 -11
  197. package/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.d.ts +2 -2
  198. package/lib/base-model/index.d.ts +3 -3
  199. package/lib/base-model/techlify-form-component.class.d.ts +43 -43
  200. package/lib/base-model/techlify-listing-component.class.d.ts +47 -47
  201. package/lib/base-model/techlify-service.class.d.ts +52 -52
  202. package/lib/core/alert.service.d.ts +12 -12
  203. package/lib/core/api-prefix.interceptor.d.ts +11 -11
  204. package/lib/core/authentication.guard.d.ts +10 -10
  205. package/lib/core/authentication.service.d.ts +23 -23
  206. package/lib/core/cache.interceptor.d.ts +21 -21
  207. package/lib/core/config.service.d.ts +19 -19
  208. package/lib/core/core.module.d.ts +3 -3
  209. package/lib/core/credentials.service.d.ts +36 -36
  210. package/lib/core/dataManager.service.d.ts +70 -70
  211. package/lib/core/error-handler.interceptor.d.ts +14 -14
  212. package/lib/core/error-handler.service.d.ts +14 -14
  213. package/lib/core/form-validator.service.d.ts +8 -8
  214. package/lib/core/header.interceptor.d.ts +8 -8
  215. package/lib/core/http-cache.service.d.ts +54 -54
  216. package/lib/core/http.service.d.ts +56 -56
  217. package/lib/core/index.d.ts +20 -20
  218. package/lib/core/logger.service.d.ts +85 -85
  219. package/lib/core/route-reusable-strategy.d.ts +13 -13
  220. package/lib/core/snack/snack.component.d.ts +8 -8
  221. package/lib/core/snack/snack.module.d.ts +2 -2
  222. package/lib/core/storage.service.d.ts +15 -15
  223. package/lib/core/techlify-config.model.d.ts +18 -18
  224. package/lib/core/token.interceptor.d.ts +11 -11
  225. package/lib/data-table/data-table.component.d.ts +60 -60
  226. package/lib/data-table/data-table.model.d.ts +46 -46
  227. package/lib/data-table/data-table.module.d.ts +2 -2
  228. package/lib/data-table/index.d.ts +2 -2
  229. package/lib/date-validator.d.ts +1 -1
  230. package/lib/document-viewer/document-viewer.component.d.ts +16 -16
  231. package/lib/document-viewer/document-viewer.module.d.ts +2 -2
  232. package/lib/document-viewer/index.d.ts +2 -2
  233. package/lib/document-viewer/viewer-config.model.d.ts +5 -5
  234. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.d.ts +7 -7
  235. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.d.ts +17 -17
  236. package/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.d.ts +2 -2
  237. package/lib/email-subscription/email-subscription-for-user/index.d.ts +1 -1
  238. package/lib/email-subscription/email-subscription-routing.module.d.ts +2 -2
  239. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.d.ts +2 -2
  240. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.d.ts +32 -32
  241. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.d.ts +2 -2
  242. package/lib/email-subscription/email-subscription-type/email-subscription-type-form/index.d.ts +1 -1
  243. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.d.ts +9 -9
  244. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.d.ts +30 -30
  245. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.d.ts +2 -2
  246. package/lib/email-subscription/email-subscription-type/email-subscription-type-list/index.d.ts +1 -1
  247. package/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.d.ts +2 -2
  248. package/lib/email-subscription/email-subscription-type/email-subscription-type.module.d.ts +2 -2
  249. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.d.ts +2 -2
  250. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.d.ts +32 -32
  251. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.d.ts +2 -2
  252. package/lib/email-subscription/email-subscription-user/email-subscription-user-form/index.d.ts +1 -1
  253. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.d.ts +9 -9
  254. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.d.ts +32 -32
  255. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.d.ts +2 -2
  256. package/lib/email-subscription/email-subscription-user/email-subscription-user-list/index.d.ts +1 -1
  257. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.d.ts +2 -2
  258. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.d.ts +13 -13
  259. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.d.ts +2 -2
  260. package/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/index.d.ts +1 -1
  261. package/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.d.ts +2 -2
  262. package/lib/email-subscription/email-subscription-user/email-subscription-user.module.d.ts +2 -2
  263. package/lib/email-subscription/email-subscription.module.d.ts +2 -2
  264. package/lib/entity-files/entity-file-form/entity-file-form.component.d.ts +38 -34
  265. package/lib/entity-files/entity-file.service.d.ts +10 -10
  266. package/lib/entity-files/entity-files-view-all.component.d.ts +51 -45
  267. package/lib/entity-files/entity-files-view-all.module.d.ts +2 -2
  268. package/lib/entity-files/index.d.ts +2 -2
  269. package/lib/export-excel/export-excel-button/export-excel-button.component.d.ts +8 -8
  270. package/lib/export-excel/export-excel.module.d.ts +2 -2
  271. package/lib/file-dropper/file-dropper.component.d.ts +33 -33
  272. package/lib/file-dropper/file-dropper.model.d.ts +10 -10
  273. package/lib/file-dropper/file-dropper.module.d.ts +2 -2
  274. package/lib/file-dropper/index.d.ts +2 -2
  275. package/lib/import-csv/data-import/data-import.component.d.ts +6 -6
  276. package/lib/import-csv/failed-items-list/failed-items-list.component.d.ts +12 -12
  277. package/lib/import-csv/field-mapping/field-mapping.component.d.ts +34 -34
  278. package/lib/import-csv/import-csv-config.d.ts +17 -17
  279. package/lib/import-csv/import-csv.component.d.ts +33 -33
  280. package/lib/import-csv/import-csv.module.d.ts +2 -2
  281. package/lib/import-csv/import-history-list/import-history-list.component.d.ts +21 -21
  282. package/lib/import-csv/import-success/import-success.component.d.ts +8 -8
  283. package/lib/loader/index.d.ts +1 -1
  284. package/lib/loader/loader.component.d.ts +8 -8
  285. package/lib/loader/loader.module.d.ts +2 -2
  286. package/lib/login-history-for-user/login-history-for-user-routing.module.d.ts +2 -2
  287. package/lib/login-history-for-user/login-history-for-user.component.d.ts +23 -23
  288. package/lib/login-history-for-user/login-history-for-user.module.d.ts +2 -2
  289. package/lib/material.module.d.ts +2 -2
  290. package/lib/note/comment-form/comment-form.component.d.ts +22 -22
  291. package/lib/note/index.d.ts +3 -3
  292. package/lib/note/note-form/note-form.component.d.ts +27 -27
  293. package/lib/note/note-list/note-list.component.d.ts +28 -28
  294. package/lib/note/note.module.d.ts +2 -2
  295. package/lib/note/note.service.d.ts +9 -9
  296. package/lib/read-more/read-more.component.d.ts +12 -12
  297. package/lib/read-more/read-more.module.d.ts +2 -2
  298. package/lib/searchable-selector/index.d.ts +2 -2
  299. package/lib/searchable-selector/mat-select-infinite-scroll.directive.d.ts +23 -23
  300. package/lib/searchable-selector/searchable-selector.component.d.ts +81 -81
  301. package/lib/searchable-selector/searchable-selector.module.d.ts +2 -2
  302. package/lib/techlify-feature/on-off-switch/on-off-switch.component.d.ts +9 -9
  303. package/lib/techlify-feature/techlify-feature-enabled.directive.d.ts +17 -17
  304. package/lib/techlify-feature/techlify-feature-listing.component.d.ts +37 -37
  305. package/lib/techlify-feature/techlify-feature.module.d.ts +2 -2
  306. package/lib/techlify-feature/techlify-feature.routing.d.ts +2 -2
  307. package/lib/techlify-feature/techlify-feature.service.d.ts +8 -8
  308. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-config.model.d.ts +12 -12
  309. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.d.ts +76 -76
  310. package/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.d.ts +2 -2
  311. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.d.ts +58 -58
  312. package/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.d.ts +2 -2
  313. package/lib/techlify-update/techlify-update-form/techlify-update-form.component.d.ts +30 -30
  314. package/lib/techlify-update/techlify-update-form/techlify-update-form.module.d.ts +2 -2
  315. package/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.d.ts +2 -2
  316. package/lib/techlify-update/techlify-update-history/techlify-update-history.component.d.ts +31 -31
  317. package/lib/techlify-update/techlify-update-history/techlify-update-history.module.d.ts +2 -2
  318. package/lib/techlify-update/techlify-update-routing.module.d.ts +2 -2
  319. package/lib/techlify-update/techlify-update.module.d.ts +2 -2
  320. package/lib/techlify-update/techlify-update.service.d.ts +13 -13
  321. package/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.d.ts +31 -31
  322. package/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.d.ts +25 -25
  323. package/lib/techlify-update/update-notifier/update-notifier.component.d.ts +16 -16
  324. package/lib/techlify-update/update-notifier/update-notifier.module.d.ts +2 -2
  325. package/lib/techlify-update/update-view/update-view.component.d.ts +14 -14
  326. package/lib/techlify-update/update-view/update-view.module.d.ts +2 -2
  327. package/lib/timeline-filter/calculate-timeline.d.ts +6 -6
  328. package/lib/timeline-filter/index.d.ts +3 -3
  329. package/lib/timeline-filter/timeline-filter-routing.module.d.ts +2 -2
  330. package/lib/timeline-filter/timeline-filter.component.d.ts +61 -61
  331. package/lib/timeline-filter/timeline-filter.module.d.ts +2 -2
  332. package/lib/timeline-filter/timeline.model.d.ts +17 -17
  333. package/lib/utility/date-utils.service.d.ts +21 -21
  334. package/lib/utility/index.d.ts +3 -3
  335. package/lib/utility/num-items-selector.component.d.ts +16 -16
  336. package/lib/utility/number-selector.component.d.ts +20 -20
  337. package/lib/utility/utility.module.d.ts +2 -2
  338. package/ngx-techlify-core.d.ts +59 -59
  339. package/ngx-techlify-core.metadata.json +1 -1
  340. package/package.json +2 -2
  341. package/public-api.d.ts +92 -92
@@ -1,40 +1,40 @@
1
- import { Injectable } from '@angular/core';
2
- import { MatSnackBar } from '@angular/material/snack-bar';
3
- import { ErrorSnackComponent, SuccessSnackComponent } from './snack/snack.component';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/material/snack-bar";
6
- /**
7
- * Service used to manage alerts in the entire system frontend
8
- *
9
- * @author Gokula Prasanna
10
- * @since 20210131
11
- */
12
- export class AlertService {
13
- constructor(snackBar) {
14
- this.snackBar = snackBar;
15
- }
16
- addAlert(message, alertType, duration = 3) {
17
- if (alertType == "success") {
18
- this.snackBar.openFromComponent(SuccessSnackComponent, {
19
- duration: 1000 * duration,
20
- data: message
21
- });
22
- }
23
- else {
24
- this.snackBar.openFromComponent(ErrorSnackComponent, {
25
- duration: 1000 * duration,
26
- data: message
27
- });
28
- }
29
- }
30
- }
31
- AlertService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AlertService_Factory() { return new AlertService(i0.ɵɵinject(i1.MatSnackBar)); }, token: AlertService, providedIn: "root" });
32
- AlertService.decorators = [
33
- { type: Injectable, args: [{
34
- providedIn: 'root'
35
- },] }
36
- ];
37
- AlertService.ctorParameters = () => [
38
- { type: MatSnackBar }
39
- ];
1
+ import { Injectable } from '@angular/core';
2
+ import { MatSnackBar } from '@angular/material/snack-bar';
3
+ import { ErrorSnackComponent, SuccessSnackComponent } from './snack/snack.component';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/material/snack-bar";
6
+ /**
7
+ * Service used to manage alerts in the entire system frontend
8
+ *
9
+ * @author Gokula Prasanna
10
+ * @since 20210131
11
+ */
12
+ export class AlertService {
13
+ constructor(snackBar) {
14
+ this.snackBar = snackBar;
15
+ }
16
+ addAlert(message, alertType, duration = 3) {
17
+ if (alertType == "success") {
18
+ this.snackBar.openFromComponent(SuccessSnackComponent, {
19
+ duration: 1000 * duration,
20
+ data: message
21
+ });
22
+ }
23
+ else {
24
+ this.snackBar.openFromComponent(ErrorSnackComponent, {
25
+ duration: 1000 * duration,
26
+ data: message
27
+ });
28
+ }
29
+ }
30
+ }
31
+ AlertService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AlertService_Factory() { return new AlertService(i0.ɵɵinject(i1.MatSnackBar)); }, token: AlertService, providedIn: "root" });
32
+ AlertService.decorators = [
33
+ { type: Injectable, args: [{
34
+ providedIn: 'root'
35
+ },] }
36
+ ];
37
+ AlertService.ctorParameters = () => [
38
+ { type: MatSnackBar }
39
+ ];
40
40
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9hbGVydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7QUFFckY7Ozs7O0dBS0c7QUFJSCxNQUFNLE9BQU8sWUFBWTtJQUVyQixZQUFtQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO0lBQUksQ0FBQztJQUU3QyxRQUFRLENBQUMsT0FBZSxFQUFFLFNBQWlCLEVBQUUsUUFBUSxHQUFHLENBQUM7UUFDckQsSUFBSSxTQUFTLElBQUksU0FBUyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLEVBQUU7Z0JBQ25ELFFBQVEsRUFBRSxJQUFJLEdBQUcsUUFBUTtnQkFDekIsSUFBSSxFQUFFLE9BQU87YUFDaEIsQ0FBQyxDQUFDO1NBQ047YUFDSTtZQUNELElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ2pELFFBQVEsRUFBRSxJQUFJLEdBQUcsUUFBUTtnQkFDekIsSUFBSSxFQUFFLE9BQU87YUFDaEIsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDOzs7O1lBcEJKLFVBQVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQjs7O1lBWFEsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBFcnJvclNuYWNrQ29tcG9uZW50LCBTdWNjZXNzU25hY2tDb21wb25lbnQgfSBmcm9tICcuL3NuYWNrL3NuYWNrLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogU2VydmljZSB1c2VkIHRvIG1hbmFnZSBhbGVydHMgaW4gdGhlIGVudGlyZSBzeXN0ZW0gZnJvbnRlbmRcclxuICogXHJcbiAqIEBhdXRob3IgR29rdWxhIFByYXNhbm5hXHJcbiAqIEBzaW5jZSAyMDIxMDEzMVxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbGVydFNlcnZpY2Uge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzbmFja0JhcjogTWF0U25hY2tCYXIpIHsgfVxyXG5cclxuICAgIGFkZEFsZXJ0KG1lc3NhZ2U6IHN0cmluZywgYWxlcnRUeXBlOiBzdHJpbmcsIGR1cmF0aW9uID0gMykge1xyXG4gICAgICAgIGlmIChhbGVydFR5cGUgPT0gXCJzdWNjZXNzXCIpIHtcclxuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuRnJvbUNvbXBvbmVudChTdWNjZXNzU25hY2tDb21wb25lbnQsIHtcclxuICAgICAgICAgICAgICAgIGR1cmF0aW9uOiAxMDAwICogZHVyYXRpb24sXHJcbiAgICAgICAgICAgICAgICBkYXRhOiBtZXNzYWdlXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuRnJvbUNvbXBvbmVudChFcnJvclNuYWNrQ29tcG9uZW50LCB7XHJcbiAgICAgICAgICAgICAgICBkdXJhdGlvbjogMTAwMCAqIGR1cmF0aW9uLFxyXG4gICAgICAgICAgICAgICAgZGF0YTogbWVzc2FnZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,28 +1,28 @@
1
- import { Injectable } from '@angular/core';
2
- import { ConfigService } from './config.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./config.service";
5
- /**
6
- * Prefixes all requests not starting with `http[s]` with `environment.serverUrl`.
7
- */
8
- export class ApiPrefixInterceptor {
9
- constructor(configService) {
10
- this.configService = configService;
11
- }
12
- intercept(request, next) {
13
- if (!/^(http|https):/i.test(request.url)) {
14
- request = request.clone({ url: this.configService.getApiUrl() + request.url });
15
- }
16
- return next.handle(request);
17
- }
18
- }
19
- ApiPrefixInterceptor.ɵprov = i0.ɵɵdefineInjectable({ factory: function ApiPrefixInterceptor_Factory() { return new ApiPrefixInterceptor(i0.ɵɵinject(i1.ConfigService)); }, token: ApiPrefixInterceptor, providedIn: "root" });
20
- ApiPrefixInterceptor.decorators = [
21
- { type: Injectable, args: [{
22
- providedIn: 'root'
23
- },] }
24
- ];
25
- ApiPrefixInterceptor.ctorParameters = () => [
26
- { type: ConfigService }
27
- ];
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXByZWZpeC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9hcGktcHJlZml4LmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFFakQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUksQ0FBQztJQUVyRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QyxPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7Ozs7WUFaRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVBRLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yLCBIdHRwSGFuZGxlciwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4vY29uZmlnLnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIFByZWZpeGVzIGFsbCByZXF1ZXN0cyBub3Qgc3RhcnRpbmcgd2l0aCBgaHR0cFtzXWAgd2l0aCBgZW52aXJvbm1lbnQuc2VydmVyVXJsYC5cclxuICovXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaVByZWZpeEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlKSB7IH1cclxuXHJcbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xyXG4gICAgaWYgKCEvXihodHRwfGh0dHBzKTovaS50ZXN0KHJlcXVlc3QudXJsKSkge1xyXG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7IHVybDogdGhpcy5jb25maWdTZXJ2aWNlLmdldEFwaVVybCgpICsgcmVxdWVzdC51cmwgfSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import { ConfigService } from './config.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./config.service";
5
+ /**
6
+ * Prefixes all requests not starting with `http[s]` with `environment.serverUrl`.
7
+ */
8
+ export class ApiPrefixInterceptor {
9
+ constructor(configService) {
10
+ this.configService = configService;
11
+ }
12
+ intercept(request, next) {
13
+ if (!/^(http|https):/i.test(request.url)) {
14
+ request = request.clone({ url: this.configService.getApiUrl() + request.url });
15
+ }
16
+ return next.handle(request);
17
+ }
18
+ }
19
+ ApiPrefixInterceptor.ɵprov = i0.ɵɵdefineInjectable({ factory: function ApiPrefixInterceptor_Factory() { return new ApiPrefixInterceptor(i0.ɵɵinject(i1.ConfigService)); }, token: ApiPrefixInterceptor, providedIn: "root" });
20
+ ApiPrefixInterceptor.decorators = [
21
+ { type: Injectable, args: [{
22
+ providedIn: 'root'
23
+ },] }
24
+ ];
25
+ ApiPrefixInterceptor.ctorParameters = () => [
26
+ { type: ConfigService }
27
+ ];
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLXByZWZpeC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9hcGktcHJlZml4LmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFFakQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQW9CLGFBQTRCO1FBQTVCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUksQ0FBQztJQUVyRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUN4QyxPQUFPLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzlCLENBQUM7Ozs7WUFaRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVBRLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEhhbmRsZXIsIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJy4vY29uZmlnLnNlcnZpY2UnO1xuXG4vKipcbiAqIFByZWZpeGVzIGFsbCByZXF1ZXN0cyBub3Qgc3RhcnRpbmcgd2l0aCBgaHR0cFtzXWAgd2l0aCBgZW52aXJvbm1lbnQuc2VydmVyVXJsYC5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXBpUHJlZml4SW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSkgeyB9XG5cbiAgaW50ZXJjZXB0KHJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIGlmICghL14oaHR0cHxodHRwcyk6L2kudGVzdChyZXF1ZXN0LnVybCkpIHtcbiAgICAgIHJlcXVlc3QgPSByZXF1ZXN0LmNsb25lKHsgdXJsOiB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0QXBpVXJsKCkgKyByZXF1ZXN0LnVybCB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICB9XG59XG4iXX0=
@@ -1,39 +1,39 @@
1
- import { Injectable } from '@angular/core';
2
- import { Router } from '@angular/router';
3
- import { CredentialsService } from './credentials.service';
4
- import { Logger } from './logger.service';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/router";
7
- import * as i2 from "./credentials.service";
8
- const log = new Logger('AuthenticationGuard');
9
- export class AuthenticationGuard {
10
- constructor(router, credentialsService) {
11
- this.router = router;
12
- this.credentialsService = credentialsService;
13
- }
14
- canActivate(route, state) {
15
- return this.isUserAuthenticated(route, state);
16
- }
17
- canLoad(route, state) {
18
- return this.isUserAuthenticated(route, state);
19
- }
20
- isUserAuthenticated(route, state) {
21
- if (this.credentialsService.isAuthenticated) {
22
- return true;
23
- }
24
- log.debug('Not authenticated, redirecting and adding redirect url...');
25
- this.router.navigate(['/login'], { queryParams: { redirect: state.url }, replaceUrl: true });
26
- return false;
27
- }
28
- }
29
- AuthenticationGuard.ɵprov = i0.ɵɵdefineInjectable({ factory: function AuthenticationGuard_Factory() { return new AuthenticationGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.CredentialsService)); }, token: AuthenticationGuard, providedIn: "root" });
30
- AuthenticationGuard.decorators = [
31
- { type: Injectable, args: [{
32
- providedIn: 'root'
33
- },] }
34
- ];
35
- AuthenticationGuard.ctorParameters = () => [
36
- { type: Router },
37
- { type: CredentialsService }
38
- ];
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvYXV0aGVudGljYXRpb24uZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUE0RCxNQUFNLGlCQUFpQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQUUxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBSzlDLE1BQU0sT0FBTyxtQkFBbUI7SUFFOUIsWUFBb0IsTUFBYyxFQUN4QixrQkFBc0M7UUFENUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUN4Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBQUksQ0FBQztJQUVyRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUE2QixFQUFFLEtBQTBCO1FBQy9ELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUMzRSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLEVBQUU7WUFDM0MsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELEdBQUcsQ0FBQyxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Ozs7WUF4QkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFSUSxNQUFNO1lBQ04sa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIENhbkFjdGl2YXRlLCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQ3JlZGVudGlhbHNTZXJ2aWNlIH0gZnJvbSAnLi9jcmVkZW50aWFscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSAnLi9sb2dnZXIuc2VydmljZSc7XHJcblxyXG5jb25zdCBsb2cgPSBuZXcgTG9nZ2VyKCdBdXRoZW50aWNhdGlvbkd1YXJkJyk7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvbkd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBjcmVkZW50aWFsc1NlcnZpY2U6IENyZWRlbnRpYWxzU2VydmljZSkgeyB9XHJcblxyXG4gIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNVc2VyQXV0aGVudGljYXRlZChyb3V0ZSwgc3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgY2FuTG9hZChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlzVXNlckF1dGhlbnRpY2F0ZWQocm91dGUsIHN0YXRlKTtcclxuICB9XHJcblxyXG4gIGlzVXNlckF1dGhlbnRpY2F0ZWQocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5jcmVkZW50aWFsc1NlcnZpY2UuaXNBdXRoZW50aWNhdGVkKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGxvZy5kZWJ1ZygnTm90IGF1dGhlbnRpY2F0ZWQsIHJlZGlyZWN0aW5nIGFuZCBhZGRpbmcgcmVkaXJlY3QgdXJsLi4uJyk7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9sb2dpbiddLCB7IHF1ZXJ5UGFyYW1zOiB7IHJlZGlyZWN0OiBzdGF0ZS51cmwgfSwgcmVwbGFjZVVybDogdHJ1ZSB9KTtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
1
+ import { Injectable } from '@angular/core';
2
+ import { Router } from '@angular/router';
3
+ import { CredentialsService } from './credentials.service';
4
+ import { Logger } from './logger.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ import * as i2 from "./credentials.service";
8
+ const log = new Logger('AuthenticationGuard');
9
+ export class AuthenticationGuard {
10
+ constructor(router, credentialsService) {
11
+ this.router = router;
12
+ this.credentialsService = credentialsService;
13
+ }
14
+ canActivate(route, state) {
15
+ return this.isUserAuthenticated(route, state);
16
+ }
17
+ canLoad(route, state) {
18
+ return this.isUserAuthenticated(route, state);
19
+ }
20
+ isUserAuthenticated(route, state) {
21
+ if (this.credentialsService.isAuthenticated) {
22
+ return true;
23
+ }
24
+ log.debug('Not authenticated, redirecting and adding redirect url...');
25
+ this.router.navigate(['/login'], { queryParams: { redirect: state.url }, replaceUrl: true });
26
+ return false;
27
+ }
28
+ }
29
+ AuthenticationGuard.ɵprov = i0.ɵɵdefineInjectable({ factory: function AuthenticationGuard_Factory() { return new AuthenticationGuard(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.CredentialsService)); }, token: AuthenticationGuard, providedIn: "root" });
30
+ AuthenticationGuard.decorators = [
31
+ { type: Injectable, args: [{
32
+ providedIn: 'root'
33
+ },] }
34
+ ];
35
+ AuthenticationGuard.ctorParameters = () => [
36
+ { type: Router },
37
+ { type: CredentialsService }
38
+ ];
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvYXV0aGVudGljYXRpb24uZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUE0RCxNQUFNLGlCQUFpQixDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7OztBQUUxQyxNQUFNLEdBQUcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBSzlDLE1BQU0sT0FBTyxtQkFBbUI7SUFFOUIsWUFBb0IsTUFBYyxFQUN4QixrQkFBc0M7UUFENUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUN4Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBQUksQ0FBQztJQUVyRCxXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUNuRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUE2QixFQUFFLEtBQTBCO1FBQy9ELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUMzRSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLEVBQUU7WUFDM0MsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELEdBQUcsQ0FBQyxLQUFLLENBQUMsMkRBQTJELENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM3RixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Ozs7WUF4QkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFSUSxNQUFNO1lBQ04sa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBDYW5BY3RpdmF0ZSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBDcmVkZW50aWFsc1NlcnZpY2UgfSBmcm9tICcuL2NyZWRlbnRpYWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSAnLi9sb2dnZXIuc2VydmljZSc7XG5cbmNvbnN0IGxvZyA9IG5ldyBMb2dnZXIoJ0F1dGhlbnRpY2F0aW9uR3VhcmQnKTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25HdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY3JlZGVudGlhbHNTZXJ2aWNlOiBDcmVkZW50aWFsc1NlcnZpY2UpIHsgfVxuXG4gIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzVXNlckF1dGhlbnRpY2F0ZWQocm91dGUsIHN0YXRlKTtcbiAgfVxuXG4gIGNhbkxvYWQocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNVc2VyQXV0aGVudGljYXRlZChyb3V0ZSwgc3RhdGUpO1xuICB9XG5cbiAgaXNVc2VyQXV0aGVudGljYXRlZChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5jcmVkZW50aWFsc1NlcnZpY2UuaXNBdXRoZW50aWNhdGVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBsb2cuZGVidWcoJ05vdCBhdXRoZW50aWNhdGVkLCByZWRpcmVjdGluZyBhbmQgYWRkaW5nIHJlZGlyZWN0IHVybC4uLicpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xvZ2luJ10sIHsgcXVlcnlQYXJhbXM6IHsgcmVkaXJlY3Q6IHN0YXRlLnVybCB9LCByZXBsYWNlVXJsOiB0cnVlIH0pO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG59XG4iXX0=
@@ -1,59 +1,59 @@
1
- import { __awaiter } from "tslib";
2
- import { Injectable } from '@angular/core';
3
- import { of } from 'rxjs';
4
- import { concatMap } from 'rxjs/operators';
5
- import { CredentialsService } from './credentials.service';
6
- import { HttpService } from './http.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./credentials.service";
9
- import * as i2 from "./http.service";
10
- /**
11
- * Provides a base for authentication workflow.
12
- * The login/logout methods should be replaced with proper implementation.
13
- */
14
- export class AuthenticationService {
15
- constructor(credentialsService, http) {
16
- this.credentialsService = credentialsService;
17
- this.http = http;
18
- }
19
- /**
20
- * Authenticates the user.
21
- * @param context The login parameters.
22
- * @return The user credentials.
23
- */
24
- login(context) {
25
- const data = {};
26
- return this.http
27
- .skipToken()
28
- .post('oauth/token', context)
29
- .pipe(concatMap((tokenInfo) => __awaiter(this, void 0, void 0, function* () {
30
- tokenInfo.expires_in = Date.now() + (tokenInfo.expires_in * 1000);
31
- data.token = tokenInfo;
32
- data.user = {};
33
- this.credentialsService.setCredentials(data, context.remember);
34
- const userInfo = yield this.http.get('api/user/current').toPromise();
35
- data.user = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user;
36
- this.credentialsService.setCredentials(data, context.remember);
37
- return data;
38
- })));
39
- }
40
- /**
41
- * Logs out the user and clear credentials.
42
- * @return True if the user was logged out successfully.
43
- */
44
- logout() {
45
- this.credentialsService.setCredentials();
46
- return of(true);
47
- }
48
- }
49
- AuthenticationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AuthenticationService_Factory() { return new AuthenticationService(i0.ɵɵinject(i1.CredentialsService), i0.ɵɵinject(i2.HttpService)); }, token: AuthenticationService, providedIn: "root" });
50
- AuthenticationService.decorators = [
51
- { type: Injectable, args: [{
52
- providedIn: 'root'
53
- },] }
54
- ];
55
- AuthenticationService.ctorParameters = () => [
56
- { type: CredentialsService },
57
- { type: HttpService }
58
- ];
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBZSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUU3Qzs7O0dBR0c7QUFJSCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQW9CLGtCQUFzQyxFQUFVLElBQWlCO1FBQWpFLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUksQ0FBQztJQUUxRjs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLE9BQVk7UUFDaEIsTUFBTSxJQUFJLEdBQWdCLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsU0FBUyxFQUFFO2FBQ1gsSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUM7YUFDNUIsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFPLFNBQWMsRUFBRSxFQUFFO1lBQ2pDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztZQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxNQUFNLFFBQVEsR0FBUSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUUsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsSUFBSSxDQUFDO1lBQzNCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQSxDQUFDLENBQ0gsQ0FBQTtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNO1FBRUosSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Ozs7WUF2Q0YsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFUcUIsa0JBQWtCO1lBQy9CLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjb25jYXRNYXAsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ3JlZGVudGlhbHMsIENyZWRlbnRpYWxzU2VydmljZSB9IGZyb20gJy4vY3JlZGVudGlhbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi9odHRwLnNlcnZpY2UnO1xyXG5cclxuLyoqXHJcbiAqIFByb3ZpZGVzIGEgYmFzZSBmb3IgYXV0aGVudGljYXRpb24gd29ya2Zsb3cuXHJcbiAqIFRoZSBsb2dpbi9sb2dvdXQgbWV0aG9kcyBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCBwcm9wZXIgaW1wbGVtZW50YXRpb24uXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoZW50aWNhdGlvblNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNyZWRlbnRpYWxzU2VydmljZTogQ3JlZGVudGlhbHNTZXJ2aWNlLCBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogQXV0aGVudGljYXRlcyB0aGUgdXNlci5cclxuICAgKiBAcGFyYW0gY29udGV4dCBUaGUgbG9naW4gcGFyYW1ldGVycy5cclxuICAgKiBAcmV0dXJuIFRoZSB1c2VyIGNyZWRlbnRpYWxzLlxyXG4gICAqL1xyXG4gIGxvZ2luKGNvbnRleHQ6IGFueSk6IE9ic2VydmFibGU8Q3JlZGVudGlhbHM+IHtcclxuICAgIGNvbnN0IGRhdGEgPSA8Q3JlZGVudGlhbHM+e307XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5za2lwVG9rZW4oKVxyXG4gICAgICAucG9zdCgnb2F1dGgvdG9rZW4nLCBjb250ZXh0KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjb25jYXRNYXAoYXN5bmMgKHRva2VuSW5mbzogYW55KSA9PiB7XHJcbiAgICAgICAgICB0b2tlbkluZm8uZXhwaXJlc19pbiA9IERhdGUubm93KCkgKyAodG9rZW5JbmZvLmV4cGlyZXNfaW4gKiAxMDAwKTtcclxuICAgICAgICAgIGRhdGEudG9rZW4gPSB0b2tlbkluZm87XHJcbiAgICAgICAgICBkYXRhLnVzZXIgPSB7fTtcclxuICAgICAgICAgIHRoaXMuY3JlZGVudGlhbHNTZXJ2aWNlLnNldENyZWRlbnRpYWxzKGRhdGEsIGNvbnRleHQucmVtZW1iZXIpO1xyXG4gICAgICAgICAgY29uc3QgdXNlckluZm86IGFueSA9IGF3YWl0IHRoaXMuaHR0cC5nZXQoJ2FwaS91c2VyL2N1cnJlbnQnKS50b1Byb21pc2UoKTtcclxuICAgICAgICAgIGRhdGEudXNlciA9IHVzZXJJbmZvPy51c2VyO1xyXG4gICAgICAgICAgdGhpcy5jcmVkZW50aWFsc1NlcnZpY2Uuc2V0Q3JlZGVudGlhbHMoZGF0YSwgY29udGV4dC5yZW1lbWJlcik7XHJcbiAgICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBMb2dzIG91dCB0aGUgdXNlciBhbmQgY2xlYXIgY3JlZGVudGlhbHMuXHJcbiAgICogQHJldHVybiBUcnVlIGlmIHRoZSB1c2VyIHdhcyBsb2dnZWQgb3V0IHN1Y2Nlc3NmdWxseS5cclxuICAgKi9cclxuICBsb2dvdXQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcblxyXG4gICAgdGhpcy5jcmVkZW50aWFsc1NlcnZpY2Uuc2V0Q3JlZGVudGlhbHMoKTtcclxuICAgIHJldHVybiBvZih0cnVlKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
1
+ import { __awaiter } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { of } from 'rxjs';
4
+ import { concatMap } from 'rxjs/operators';
5
+ import { CredentialsService } from './credentials.service';
6
+ import { HttpService } from './http.service';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "./credentials.service";
9
+ import * as i2 from "./http.service";
10
+ /**
11
+ * Provides a base for authentication workflow.
12
+ * The login/logout methods should be replaced with proper implementation.
13
+ */
14
+ export class AuthenticationService {
15
+ constructor(credentialsService, http) {
16
+ this.credentialsService = credentialsService;
17
+ this.http = http;
18
+ }
19
+ /**
20
+ * Authenticates the user.
21
+ * @param context The login parameters.
22
+ * @return The user credentials.
23
+ */
24
+ login(context) {
25
+ const data = {};
26
+ return this.http
27
+ .skipToken()
28
+ .post('oauth/token', context)
29
+ .pipe(concatMap((tokenInfo) => __awaiter(this, void 0, void 0, function* () {
30
+ tokenInfo.expires_in = Date.now() + (tokenInfo.expires_in * 1000);
31
+ data.token = tokenInfo;
32
+ data.user = {};
33
+ this.credentialsService.setCredentials(data, context.remember);
34
+ const userInfo = yield this.http.get('api/user/current').toPromise();
35
+ data.user = userInfo === null || userInfo === void 0 ? void 0 : userInfo.user;
36
+ this.credentialsService.setCredentials(data, context.remember);
37
+ return data;
38
+ })));
39
+ }
40
+ /**
41
+ * Logs out the user and clear credentials.
42
+ * @return True if the user was logged out successfully.
43
+ */
44
+ logout() {
45
+ this.credentialsService.setCredentials();
46
+ return of(true);
47
+ }
48
+ }
49
+ AuthenticationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AuthenticationService_Factory() { return new AuthenticationService(i0.ɵɵinject(i1.CredentialsService), i0.ɵɵinject(i2.HttpService)); }, token: AuthenticationService, providedIn: "root" });
50
+ AuthenticationService.decorators = [
51
+ { type: Injectable, args: [{
52
+ providedIn: 'root'
53
+ },] }
54
+ ];
55
+ AuthenticationService.ctorParameters = () => [
56
+ { type: CredentialsService },
57
+ { type: HttpService }
58
+ ];
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC10ZWNobGlmeS1jb3JlL3NyYy9saWIvY29yZS9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBZSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUU3Qzs7O0dBR0c7QUFJSCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQW9CLGtCQUFzQyxFQUFVLElBQWlCO1FBQWpFLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFhO0lBQUksQ0FBQztJQUUxRjs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLE9BQVk7UUFDaEIsTUFBTSxJQUFJLEdBQWdCLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxJQUFJO2FBQ2IsU0FBUyxFQUFFO2FBQ1gsSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUM7YUFDNUIsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFPLFNBQWMsRUFBRSxFQUFFO1lBQ2pDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztZQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxNQUFNLFFBQVEsR0FBUSxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDMUUsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsSUFBSSxDQUFDO1lBQzNCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQSxDQUFDLENBQ0gsQ0FBQTtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNO1FBRUosSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Ozs7WUF2Q0YsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFUcUIsa0JBQWtCO1lBQy9CLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb25jYXRNYXAsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENyZWRlbnRpYWxzLCBDcmVkZW50aWFsc1NlcnZpY2UgfSBmcm9tICcuL2NyZWRlbnRpYWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuL2h0dHAuc2VydmljZSc7XG5cbi8qKlxuICogUHJvdmlkZXMgYSBiYXNlIGZvciBhdXRoZW50aWNhdGlvbiB3b3JrZmxvdy5cbiAqIFRoZSBsb2dpbi9sb2dvdXQgbWV0aG9kcyBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCBwcm9wZXIgaW1wbGVtZW50YXRpb24uXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjcmVkZW50aWFsc1NlcnZpY2U6IENyZWRlbnRpYWxzU2VydmljZSwgcHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSkgeyB9XG5cbiAgLyoqXG4gICAqIEF1dGhlbnRpY2F0ZXMgdGhlIHVzZXIuXG4gICAqIEBwYXJhbSBjb250ZXh0IFRoZSBsb2dpbiBwYXJhbWV0ZXJzLlxuICAgKiBAcmV0dXJuIFRoZSB1c2VyIGNyZWRlbnRpYWxzLlxuICAgKi9cbiAgbG9naW4oY29udGV4dDogYW55KTogT2JzZXJ2YWJsZTxDcmVkZW50aWFscz4ge1xuICAgIGNvbnN0IGRhdGEgPSA8Q3JlZGVudGlhbHM+e307XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnNraXBUb2tlbigpXG4gICAgICAucG9zdCgnb2F1dGgvdG9rZW4nLCBjb250ZXh0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNvbmNhdE1hcChhc3luYyAodG9rZW5JbmZvOiBhbnkpID0+IHtcbiAgICAgICAgICB0b2tlbkluZm8uZXhwaXJlc19pbiA9IERhdGUubm93KCkgKyAodG9rZW5JbmZvLmV4cGlyZXNfaW4gKiAxMDAwKTtcbiAgICAgICAgICBkYXRhLnRva2VuID0gdG9rZW5JbmZvO1xuICAgICAgICAgIGRhdGEudXNlciA9IHt9O1xuICAgICAgICAgIHRoaXMuY3JlZGVudGlhbHNTZXJ2aWNlLnNldENyZWRlbnRpYWxzKGRhdGEsIGNvbnRleHQucmVtZW1iZXIpO1xuICAgICAgICAgIGNvbnN0IHVzZXJJbmZvOiBhbnkgPSBhd2FpdCB0aGlzLmh0dHAuZ2V0KCdhcGkvdXNlci9jdXJyZW50JykudG9Qcm9taXNlKCk7XG4gICAgICAgICAgZGF0YS51c2VyID0gdXNlckluZm8/LnVzZXI7XG4gICAgICAgICAgdGhpcy5jcmVkZW50aWFsc1NlcnZpY2Uuc2V0Q3JlZGVudGlhbHMoZGF0YSwgY29udGV4dC5yZW1lbWJlcik7XG4gICAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgICAgIH0pXG4gICAgICApXG4gIH1cblxuICAvKipcbiAgICogTG9ncyBvdXQgdGhlIHVzZXIgYW5kIGNsZWFyIGNyZWRlbnRpYWxzLlxuICAgKiBAcmV0dXJuIFRydWUgaWYgdGhlIHVzZXIgd2FzIGxvZ2dlZCBvdXQgc3VjY2Vzc2Z1bGx5LlxuICAgKi9cbiAgbG9nb3V0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuXG4gICAgdGhpcy5jcmVkZW50aWFsc1NlcnZpY2Uuc2V0Q3JlZGVudGlhbHMoKTtcbiAgICByZXR1cm4gb2YodHJ1ZSk7XG4gIH1cblxufVxuIl19
@@ -1,60 +1,60 @@
1
- import { Injectable } from '@angular/core';
2
- import { HttpResponse } from '@angular/common/http';
3
- import { HttpCacheService } from './http-cache.service';
4
- import { Observable } from 'rxjs';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "./http-cache.service";
7
- /**
8
- * Caches HTTP requests.
9
- * Use ExtendedHttpClient fluent API to configure caching for each request.
10
- */
11
- export class CacheInterceptor {
12
- constructor(httpCacheService) {
13
- this.httpCacheService = httpCacheService;
14
- this.forceUpdate = false;
15
- }
16
- /**
17
- * Configures interceptor options
18
- * @param {{update: boolean}} options If update option is enabled, forces request to be made and updates cache entry.
19
- * @return {CacheInterceptor} The configured instance.
20
- */
21
- configure(options) {
22
- const instance = new CacheInterceptor(this.httpCacheService);
23
- if (options && options.update) {
24
- instance.forceUpdate = true;
25
- }
26
- return instance;
27
- }
28
- intercept(request, next) {
29
- if (request.method !== 'GET') {
30
- return next.handle(request);
31
- }
32
- return new Observable((subscriber) => {
33
- const cachedData = this.forceUpdate ? null : this.httpCacheService.getCacheData(request.urlWithParams);
34
- if (cachedData !== null) {
35
- // Create new response to avoid side-effects
36
- subscriber.next(new HttpResponse(cachedData));
37
- subscriber.complete();
38
- }
39
- else {
40
- next.handle(request)
41
- .subscribe(event => {
42
- if (event instanceof HttpResponse) {
43
- this.httpCacheService.setCacheData(request.urlWithParams, event);
44
- }
45
- subscriber.next(event);
46
- }, error => subscriber.error(error), () => subscriber.complete());
47
- }
48
- });
49
- }
50
- }
51
- CacheInterceptor.ɵprov = i0.ɵɵdefineInjectable({ factory: function CacheInterceptor_Factory() { return new CacheInterceptor(i0.ɵɵinject(i1.HttpCacheService)); }, token: CacheInterceptor, providedIn: "root" });
52
- CacheInterceptor.decorators = [
53
- { type: Injectable, args: [{
54
- providedIn: 'root'
55
- },] }
56
- ];
57
- CacheInterceptor.ctorParameters = () => [
58
- { type: HttpCacheService }
59
- ];
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvY2FjaGUuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQXdELFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQUU5Qzs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBRjlDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0lBRThCLENBQUM7SUFFM0Q7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxPQUFxQztRQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDN0IsUUFBUSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7U0FDN0I7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEtBQUssRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0I7UUFFRCxPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsVUFBc0MsRUFBRSxFQUFFO1lBQy9ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdkcsSUFBSSxVQUFVLEtBQUssSUFBSSxFQUFFO2dCQUN2Qiw0Q0FBNEM7Z0JBQzVDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsVUFBb0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hELFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUN2QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztxQkFDakIsU0FBUyxDQUNSLEtBQUssQ0FBQyxFQUFFO29CQUNOLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRTt3QkFDakMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO3FCQUNsRTtvQkFDRCxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QixDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUNoQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQzVCLENBQUM7YUFDTDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztZQS9DRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVRRLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cEV2ZW50LCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBIYW5kbGVyLCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBIdHRwQ2FjaGVTZXJ2aWNlIH0gZnJvbSAnLi9odHRwLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKipcclxuICogQ2FjaGVzIEhUVFAgcmVxdWVzdHMuXHJcbiAqIFVzZSBFeHRlbmRlZEh0dHBDbGllbnQgZmx1ZW50IEFQSSB0byBjb25maWd1cmUgY2FjaGluZyBmb3IgZWFjaCByZXF1ZXN0LlxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2FjaGVJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcblxyXG4gIHByaXZhdGUgZm9yY2VVcGRhdGUgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwQ2FjaGVTZXJ2aWNlOiBIdHRwQ2FjaGVTZXJ2aWNlKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29uZmlndXJlcyBpbnRlcmNlcHRvciBvcHRpb25zXHJcbiAgICogQHBhcmFtIHt7dXBkYXRlOiBib29sZWFufX0gb3B0aW9ucyBJZiB1cGRhdGUgb3B0aW9uIGlzIGVuYWJsZWQsIGZvcmNlcyByZXF1ZXN0IHRvIGJlIG1hZGUgYW5kIHVwZGF0ZXMgY2FjaGUgZW50cnkuXHJcbiAgICogQHJldHVybiB7Q2FjaGVJbnRlcmNlcHRvcn0gVGhlIGNvbmZpZ3VyZWQgaW5zdGFuY2UuXHJcbiAgICovXHJcbiAgY29uZmlndXJlKG9wdGlvbnM/OiB7IHVwZGF0ZT86IGJvb2xlYW4gfSB8IG51bGwpOiBDYWNoZUludGVyY2VwdG9yIHtcclxuICAgIGNvbnN0IGluc3RhbmNlID0gbmV3IENhY2hlSW50ZXJjZXB0b3IodGhpcy5odHRwQ2FjaGVTZXJ2aWNlKTtcclxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMudXBkYXRlKSB7XHJcbiAgICAgIGluc3RhbmNlLmZvcmNlVXBkYXRlID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBpbnN0YW5jZTtcclxuICB9XHJcblxyXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgIGlmIChyZXF1ZXN0Lm1ldGhvZCAhPT0gJ0dFVCcpIHtcclxuICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxIdHRwRXZlbnQ8YW55Pj4pID0+IHtcclxuICAgICAgY29uc3QgY2FjaGVkRGF0YSA9IHRoaXMuZm9yY2VVcGRhdGUgPyBudWxsIDogdGhpcy5odHRwQ2FjaGVTZXJ2aWNlLmdldENhY2hlRGF0YShyZXF1ZXN0LnVybFdpdGhQYXJhbXMpO1xyXG4gICAgICBpZiAoY2FjaGVkRGF0YSAhPT0gbnVsbCkge1xyXG4gICAgICAgIC8vIENyZWF0ZSBuZXcgcmVzcG9uc2UgdG8gYXZvaWQgc2lkZS1lZmZlY3RzXHJcbiAgICAgICAgc3Vic2NyaWJlci5uZXh0KG5ldyBIdHRwUmVzcG9uc2UoY2FjaGVkRGF0YSBhcyBPYmplY3QpKTtcclxuICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbmV4dC5oYW5kbGUocmVxdWVzdClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIGV2ZW50ID0+IHtcclxuICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaHR0cENhY2hlU2VydmljZS5zZXRDYWNoZURhdGEocmVxdWVzdC51cmxXaXRoUGFyYW1zLCBldmVudCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dChldmVudCk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGVycm9yID0+IHN1YnNjcmliZXIuZXJyb3IoZXJyb3IpLFxyXG4gICAgICAgICAgICAoKSA9PiBzdWJzY3JpYmVyLmNvbXBsZXRlKClcclxuICAgICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
1
+ import { Injectable } from '@angular/core';
2
+ import { HttpResponse } from '@angular/common/http';
3
+ import { HttpCacheService } from './http-cache.service';
4
+ import { Observable } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./http-cache.service";
7
+ /**
8
+ * Caches HTTP requests.
9
+ * Use ExtendedHttpClient fluent API to configure caching for each request.
10
+ */
11
+ export class CacheInterceptor {
12
+ constructor(httpCacheService) {
13
+ this.httpCacheService = httpCacheService;
14
+ this.forceUpdate = false;
15
+ }
16
+ /**
17
+ * Configures interceptor options
18
+ * @param {{update: boolean}} options If update option is enabled, forces request to be made and updates cache entry.
19
+ * @return {CacheInterceptor} The configured instance.
20
+ */
21
+ configure(options) {
22
+ const instance = new CacheInterceptor(this.httpCacheService);
23
+ if (options && options.update) {
24
+ instance.forceUpdate = true;
25
+ }
26
+ return instance;
27
+ }
28
+ intercept(request, next) {
29
+ if (request.method !== 'GET') {
30
+ return next.handle(request);
31
+ }
32
+ return new Observable((subscriber) => {
33
+ const cachedData = this.forceUpdate ? null : this.httpCacheService.getCacheData(request.urlWithParams);
34
+ if (cachedData !== null) {
35
+ // Create new response to avoid side-effects
36
+ subscriber.next(new HttpResponse(cachedData));
37
+ subscriber.complete();
38
+ }
39
+ else {
40
+ next.handle(request)
41
+ .subscribe(event => {
42
+ if (event instanceof HttpResponse) {
43
+ this.httpCacheService.setCacheData(request.urlWithParams, event);
44
+ }
45
+ subscriber.next(event);
46
+ }, error => subscriber.error(error), () => subscriber.complete());
47
+ }
48
+ });
49
+ }
50
+ }
51
+ CacheInterceptor.ɵprov = i0.ɵɵdefineInjectable({ factory: function CacheInterceptor_Factory() { return new CacheInterceptor(i0.ɵɵinject(i1.HttpCacheService)); }, token: CacheInterceptor, providedIn: "root" });
52
+ CacheInterceptor.decorators = [
53
+ { type: Injectable, args: [{
54
+ providedIn: 'root'
55
+ },] }
56
+ ];
57
+ CacheInterceptor.ctorParameters = () => [
58
+ { type: HttpCacheService }
59
+ ];
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvY2FjaGUuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQXdELFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQUU5Qzs7O0dBR0c7QUFJSCxNQUFNLE9BQU8sZ0JBQWdCO0lBSTNCLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBRjlDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0lBRThCLENBQUM7SUFFM0Q7Ozs7T0FJRztJQUNILFNBQVMsQ0FBQyxPQUFxQztRQUM3QyxNQUFNLFFBQVEsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDN0IsUUFBUSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7U0FDN0I7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDcEQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEtBQUssRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0I7UUFFRCxPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsVUFBc0MsRUFBRSxFQUFFO1lBQy9ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDdkcsSUFBSSxVQUFVLEtBQUssSUFBSSxFQUFFO2dCQUN2Qiw0Q0FBNEM7Z0JBQzVDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsVUFBb0IsQ0FBQyxDQUFDLENBQUM7Z0JBQ3hELFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUN2QjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztxQkFDakIsU0FBUyxDQUNSLEtBQUssQ0FBQyxFQUFFO29CQUNOLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRTt3QkFDakMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO3FCQUNsRTtvQkFDRCxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN6QixDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUNoQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQzVCLENBQUM7YUFDTDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztZQS9DRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVRRLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yLCBIdHRwSGFuZGxlciwgSHR0cFJlcXVlc3QsIEh0dHBSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEh0dHBDYWNoZVNlcnZpY2UgfSBmcm9tICcuL2h0dHAtY2FjaGUuc2VydmljZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJzY3JpYmVyIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQ2FjaGVzIEhUVFAgcmVxdWVzdHMuXG4gKiBVc2UgRXh0ZW5kZWRIdHRwQ2xpZW50IGZsdWVudCBBUEkgdG8gY29uZmlndXJlIGNhY2hpbmcgZm9yIGVhY2ggcmVxdWVzdC5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2FjaGVJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgcHJpdmF0ZSBmb3JjZVVwZGF0ZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cENhY2hlU2VydmljZTogSHR0cENhY2hlU2VydmljZSkgeyB9XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZXMgaW50ZXJjZXB0b3Igb3B0aW9uc1xuICAgKiBAcGFyYW0ge3t1cGRhdGU6IGJvb2xlYW59fSBvcHRpb25zIElmIHVwZGF0ZSBvcHRpb24gaXMgZW5hYmxlZCwgZm9yY2VzIHJlcXVlc3QgdG8gYmUgbWFkZSBhbmQgdXBkYXRlcyBjYWNoZSBlbnRyeS5cbiAgICogQHJldHVybiB7Q2FjaGVJbnRlcmNlcHRvcn0gVGhlIGNvbmZpZ3VyZWQgaW5zdGFuY2UuXG4gICAqL1xuICBjb25maWd1cmUob3B0aW9ucz86IHsgdXBkYXRlPzogYm9vbGVhbiB9IHwgbnVsbCk6IENhY2hlSW50ZXJjZXB0b3Ige1xuICAgIGNvbnN0IGluc3RhbmNlID0gbmV3IENhY2hlSW50ZXJjZXB0b3IodGhpcy5odHRwQ2FjaGVTZXJ2aWNlKTtcbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnVwZGF0ZSkge1xuICAgICAgaW5zdGFuY2UuZm9yY2VVcGRhdGUgPSB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gaW5zdGFuY2U7XG4gIH1cblxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgaWYgKHJlcXVlc3QubWV0aG9kICE9PSAnR0VUJykge1xuICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoc3Vic2NyaWJlcjogU3Vic2NyaWJlcjxIdHRwRXZlbnQ8YW55Pj4pID0+IHtcbiAgICAgIGNvbnN0IGNhY2hlZERhdGEgPSB0aGlzLmZvcmNlVXBkYXRlID8gbnVsbCA6IHRoaXMuaHR0cENhY2hlU2VydmljZS5nZXRDYWNoZURhdGEocmVxdWVzdC51cmxXaXRoUGFyYW1zKTtcbiAgICAgIGlmIChjYWNoZWREYXRhICE9PSBudWxsKSB7XG4gICAgICAgIC8vIENyZWF0ZSBuZXcgcmVzcG9uc2UgdG8gYXZvaWQgc2lkZS1lZmZlY3RzXG4gICAgICAgIHN1YnNjcmliZXIubmV4dChuZXcgSHR0cFJlc3BvbnNlKGNhY2hlZERhdGEgYXMgT2JqZWN0KSk7XG4gICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5leHQuaGFuZGxlKHJlcXVlc3QpXG4gICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgIGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5odHRwQ2FjaGVTZXJ2aWNlLnNldENhY2hlRGF0YShyZXF1ZXN0LnVybFdpdGhQYXJhbXMsIGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGVycm9yID0+IHN1YnNjcmliZXIuZXJyb3IoZXJyb3IpLFxuICAgICAgICAgICAgKCkgPT4gc3Vic2NyaWJlci5jb21wbGV0ZSgpXG4gICAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG59XG4iXX0=
@@ -1,47 +1,47 @@
1
- import { Injectable } from '@angular/core';
2
- import { TechlifyConfig } from "./techlify-config.model";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./techlify-config.model";
5
- /**
6
- * Service that provides settings for all other services
7
- *
8
- * @author Joshua Kissoon
9
- * @since 20170709
10
- */
11
- export class ConfigService {
12
- constructor(config) {
13
- this.config = config;
14
- }
15
- getConfigsRaw() {
16
- return this.config.rawConfigs;
17
- }
18
- getProjectKey() {
19
- return this.config.projectKey;
20
- }
21
- getApiUrl() {
22
- return this.config.apiUrl;
23
- }
24
- getAuthClientSecret() {
25
- return this.config.authClientSecret;
26
- }
27
- getStorage() {
28
- return this.config.storage ? this.config.storage : localStorage;
29
- }
30
- getAuthGrantType() {
31
- return this.config.authGrantType;
32
- }
33
- getCredentialsKey() {
34
- return this.config.projectKey + "_" + ConfigService.BASE_CREDENTIALS;
35
- }
36
- }
37
- ConfigService.BASE_CREDENTIALS = "credentials";
38
- ConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(i0.ɵɵinject(i1.TechlifyConfig)); }, token: ConfigService, providedIn: "root" });
39
- ConfigService.decorators = [
40
- { type: Injectable, args: [{
41
- providedIn: 'root'
42
- },] }
43
- ];
44
- ConfigService.ctorParameters = () => [
45
- { type: TechlifyConfig }
46
- ];
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUV6RDs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBTXhCLFlBQVksTUFBc0I7UUFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDdEMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO0lBQ25DLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsR0FBRyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7SUFDdkUsQ0FBQzs7QUFsQ2EsOEJBQWdCLEdBQUcsYUFBYSxDQUFDOzs7WUFMaEQsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFWUSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgVGVjaGxpZnlDb25maWcgfSBmcm9tIFwiLi90ZWNobGlmeS1jb25maWcubW9kZWxcIjtcclxuXHJcbi8qKlxyXG4gKiBTZXJ2aWNlIHRoYXQgcHJvdmlkZXMgc2V0dGluZ3MgZm9yIGFsbCBvdGhlciBzZXJ2aWNlc1xyXG4gKlxyXG4gKiBAYXV0aG9yIEpvc2h1YSBLaXNzb29uXHJcbiAqIEBzaW5jZSAyMDE3MDcwOVxyXG4gKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlnU2VydmljZSB7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgQkFTRV9DUkVERU5USUFMUyA9IFwiY3JlZGVudGlhbHNcIjtcclxuXHJcbiAgcHJpdmF0ZSBjb25maWc6IFRlY2hsaWZ5Q29uZmlnO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihjb25maWc6IFRlY2hsaWZ5Q29uZmlnKSB7XHJcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcclxuICB9XHJcblxyXG4gIGdldENvbmZpZ3NSYXcoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWcucmF3Q29uZmlncztcclxuICB9XHJcblxyXG4gIGdldFByb2plY3RLZXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWcucHJvamVjdEtleTtcclxuICB9XHJcblxyXG4gIGdldEFwaVVybCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy5hcGlVcmw7XHJcbiAgfVxyXG5cclxuICBnZXRBdXRoQ2xpZW50U2VjcmV0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmF1dGhDbGllbnRTZWNyZXQ7XHJcbiAgfVxyXG5cclxuICBnZXRTdG9yYWdlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLnN0b3JhZ2UgPyB0aGlzLmNvbmZpZy5zdG9yYWdlIDogbG9jYWxTdG9yYWdlO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXV0aEdyYW50VHlwZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy5hdXRoR3JhbnRUeXBlO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q3JlZGVudGlhbHNLZXkoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWcucHJvamVjdEtleSArIFwiX1wiICsgQ29uZmlnU2VydmljZS5CQVNFX0NSRURFTlRJQUxTO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
1
+ import { Injectable } from '@angular/core';
2
+ import { TechlifyConfig } from "./techlify-config.model";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./techlify-config.model";
5
+ /**
6
+ * Service that provides settings for all other services
7
+ *
8
+ * @author Joshua Kissoon
9
+ * @since 20170709
10
+ */
11
+ export class ConfigService {
12
+ constructor(config) {
13
+ this.config = config;
14
+ }
15
+ getConfigsRaw() {
16
+ return this.config.rawConfigs;
17
+ }
18
+ getProjectKey() {
19
+ return this.config.projectKey;
20
+ }
21
+ getApiUrl() {
22
+ return this.config.apiUrl;
23
+ }
24
+ getAuthClientSecret() {
25
+ return this.config.authClientSecret;
26
+ }
27
+ getStorage() {
28
+ return this.config.storage ? this.config.storage : localStorage;
29
+ }
30
+ getAuthGrantType() {
31
+ return this.config.authGrantType;
32
+ }
33
+ getCredentialsKey() {
34
+ return this.config.projectKey + "_" + ConfigService.BASE_CREDENTIALS;
35
+ }
36
+ }
37
+ ConfigService.BASE_CREDENTIALS = "credentials";
38
+ ConfigService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(i0.ɵɵinject(i1.TechlifyConfig)); }, token: ConfigService, providedIn: "root" });
39
+ ConfigService.decorators = [
40
+ { type: Injectable, args: [{
41
+ providedIn: 'root'
42
+ },] }
43
+ ];
44
+ ConfigService.ctorParameters = () => [
45
+ { type: TechlifyConfig }
46
+ ];
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdGVjaGxpZnktY29yZS9zcmMvbGliL2NvcmUvY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQUV6RDs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxhQUFhO0lBTXhCLFlBQVksTUFBc0I7UUFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7SUFDdEMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO0lBQ25DLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEdBQUcsR0FBRyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7SUFDdkUsQ0FBQzs7QUFsQ2EsOEJBQWdCLEdBQUcsYUFBYSxDQUFDOzs7WUFMaEQsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFWUSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUZWNobGlmeUNvbmZpZyB9IGZyb20gXCIuL3RlY2hsaWZ5LWNvbmZpZy5tb2RlbFwiO1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBwcm92aWRlcyBzZXR0aW5ncyBmb3IgYWxsIG90aGVyIHNlcnZpY2VzXG4gKlxuICogQGF1dGhvciBKb3NodWEgS2lzc29vblxuICogQHNpbmNlIDIwMTcwNzA5XG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpZ1NlcnZpY2Uge1xuXG4gIHB1YmxpYyBzdGF0aWMgQkFTRV9DUkVERU5USUFMUyA9IFwiY3JlZGVudGlhbHNcIjtcblxuICBwcml2YXRlIGNvbmZpZzogVGVjaGxpZnlDb25maWc7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBUZWNobGlmeUNvbmZpZykge1xuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICB9XG5cbiAgZ2V0Q29uZmlnc1JhdygpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcucmF3Q29uZmlncztcbiAgfVxuXG4gIGdldFByb2plY3RLZXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLnByb2plY3RLZXk7XG4gIH1cblxuICBnZXRBcGlVcmwoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmFwaVVybDtcbiAgfVxuXG4gIGdldEF1dGhDbGllbnRTZWNyZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmF1dGhDbGllbnRTZWNyZXQ7XG4gIH1cblxuICBnZXRTdG9yYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5zdG9yYWdlID8gdGhpcy5jb25maWcuc3RvcmFnZSA6IGxvY2FsU3RvcmFnZTtcbiAgfVxuXG4gIGdldEF1dGhHcmFudFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmF1dGhHcmFudFR5cGU7XG4gIH1cblxuICBnZXRDcmVkZW50aWFsc0tleSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcucHJvamVjdEtleSArIFwiX1wiICsgQ29uZmlnU2VydmljZS5CQVNFX0NSRURFTlRJQUxTO1xuICB9XG5cbn1cbiJdfQ==