tin-spa 2.13.14 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/README.md +2 -2
  2. package/__ivy_ngcc__/fesm2015/tin-spa.js +6813 -0
  3. package/__ivy_ngcc__/fesm2015/tin-spa.js.map +1 -0
  4. package/bundles/tin-spa.umd.js +3867 -0
  5. package/bundles/tin-spa.umd.js.map +1 -0
  6. package/bundles/tin-spa.umd.min.js +16 -0
  7. package/bundles/tin-spa.umd.min.js.map +1 -0
  8. package/esm2015/lib/classes/Classes.js +241 -0
  9. package/esm2015/lib/components/activity/activity.component.js +26 -0
  10. package/esm2015/lib/components/attach/attach.component.js +107 -0
  11. package/esm2015/lib/components/change-password/change-password.component.js +91 -0
  12. package/esm2015/lib/components/check/check.component.js +63 -0
  13. package/esm2015/lib/components/chips/chips.component.js +67 -0
  14. package/esm2015/lib/components/create-account/create-account.component.js +78 -0
  15. package/esm2015/lib/components/date/date.component.js +45 -0
  16. package/esm2015/lib/components/datetime/datetime.component.js +44 -0
  17. package/esm2015/lib/components/html/html.component.js +97 -0
  18. package/esm2015/lib/components/label/label.component.js +29 -0
  19. package/esm2015/lib/components/loader/loader.component.js +30 -0
  20. package/esm2015/lib/components/login/login.component.js +122 -0
  21. package/esm2015/lib/components/logs/logs.component.js +43 -0
  22. package/esm2015/lib/components/message/messageDialog.component.js +31 -0
  23. package/esm2015/lib/components/money/money.component.js +50 -0
  24. package/esm2015/lib/components/nav-menu/nav-menu.component.js +51 -0
  25. package/esm2015/lib/components/option/option.component.js +62 -0
  26. package/esm2015/lib/components/profile/profile.component.js +108 -0
  27. package/esm2015/lib/components/profiles/profiles.component.js +16 -0
  28. package/esm2015/lib/components/recover-account/recover-account.component.js +52 -0
  29. package/esm2015/lib/components/roles/addRoleDialog.component.js +59 -0
  30. package/esm2015/lib/components/roles/editRoleDialog.component.js +57 -0
  31. package/esm2015/lib/components/roles/roles.component.js +131 -0
  32. package/esm2015/lib/components/roles/viewRoleDialog.component.js +38 -0
  33. package/esm2015/lib/components/select/select.component.js +73 -0
  34. package/esm2015/lib/components/settings/settings.component.js +63 -0
  35. package/esm2015/lib/components/signup/signup.component.js +56 -0
  36. package/esm2015/lib/components/steps/steps.component.js +98 -0
  37. package/esm2015/lib/components/table/table.component.js +109 -0
  38. package/esm2015/lib/components/text/text.component.js +165 -0
  39. package/esm2015/lib/components/tiles/tiles.component.js +41 -0
  40. package/esm2015/lib/components/timeout/timeout.component.js +90 -0
  41. package/esm2015/lib/components/tin-spa.component.js +19 -0
  42. package/esm2015/lib/components/users/addUserDialog.component.js +53 -0
  43. package/esm2015/lib/components/users/editUserDialog.component.js +96 -0
  44. package/esm2015/lib/components/users/users.component.js +130 -0
  45. package/esm2015/lib/components/viewer/viewer.component.js +67 -0
  46. package/esm2015/lib/components/viewer/viewerDialog.component.js +76 -0
  47. package/esm2015/lib/dnd.directive.js +51 -0
  48. package/esm2015/lib/modules/spa-admin.module.js +67 -0
  49. package/esm2015/lib/modules/spa-index.module.js +33 -0
  50. package/esm2015/lib/modules/spa-mat.module.js +53 -0
  51. package/esm2015/lib/modules/spa-user.module.js +31 -0
  52. package/esm2015/lib/services/auth.service.js +153 -0
  53. package/esm2015/lib/services/data.service.js +78 -0
  54. package/esm2015/lib/services/export.service.js +29 -0
  55. package/esm2015/lib/services/loader-interceptor.service.js +77 -0
  56. package/esm2015/lib/services/loader.service.js +17 -0
  57. package/esm2015/lib/services/log.service.js +76 -0
  58. package/esm2015/lib/services/message.service.js +58 -0
  59. package/esm2015/lib/services/storage.service.js +42 -0
  60. package/esm2015/lib/services/tin-spa.service.js +14 -0
  61. package/esm2015/lib/tin-spa.module.js +91 -0
  62. package/esm2015/public-api.js +58 -0
  63. package/esm2015/tin-spa.js +9 -0
  64. package/esm5/lib/classes/Classes.js +298 -0
  65. package/esm5/lib/components/activity/activity.component.js +27 -0
  66. package/esm5/lib/components/attach/attach.component.js +119 -0
  67. package/esm5/lib/components/change-password/change-password.component.js +93 -0
  68. package/esm5/lib/components/check/check.component.js +64 -0
  69. package/esm5/lib/components/chips/chips.component.js +69 -0
  70. package/esm5/lib/components/create-account/create-account.component.js +80 -0
  71. package/esm5/lib/components/date/date.component.js +46 -0
  72. package/esm5/lib/components/datetime/datetime.component.js +45 -0
  73. package/esm5/lib/components/html/html.component.js +98 -0
  74. package/esm5/lib/components/label/label.component.js +30 -0
  75. package/esm5/lib/components/loader/loader.component.js +32 -0
  76. package/esm5/lib/components/login/login.component.js +125 -0
  77. package/esm5/lib/components/logs/logs.component.js +45 -0
  78. package/esm5/lib/components/message/messageDialog.component.js +32 -0
  79. package/esm5/lib/components/money/money.component.js +51 -0
  80. package/esm5/lib/components/nav-menu/nav-menu.component.js +53 -0
  81. package/esm5/lib/components/option/option.component.js +63 -0
  82. package/esm5/lib/components/profile/profile.component.js +112 -0
  83. package/esm5/lib/components/profiles/profiles.component.js +18 -0
  84. package/esm5/lib/components/recover-account/recover-account.component.js +54 -0
  85. package/esm5/lib/components/roles/addRoleDialog.component.js +61 -0
  86. package/esm5/lib/components/roles/editRoleDialog.component.js +59 -0
  87. package/esm5/lib/components/roles/roles.component.js +138 -0
  88. package/esm5/lib/components/roles/viewRoleDialog.component.js +39 -0
  89. package/esm5/lib/components/select/select.component.js +75 -0
  90. package/esm5/lib/components/settings/settings.component.js +66 -0
  91. package/esm5/lib/components/signup/signup.component.js +58 -0
  92. package/esm5/lib/components/steps/steps.component.js +110 -0
  93. package/esm5/lib/components/table/table.component.js +111 -0
  94. package/esm5/lib/components/text/text.component.js +168 -0
  95. package/esm5/lib/components/tiles/tiles.component.js +42 -0
  96. package/esm5/lib/components/timeout/timeout.component.js +92 -0
  97. package/esm5/lib/components/tin-spa.component.js +17 -0
  98. package/esm5/lib/components/users/addUserDialog.component.js +55 -0
  99. package/esm5/lib/components/users/editUserDialog.component.js +99 -0
  100. package/esm5/lib/components/users/users.component.js +135 -0
  101. package/esm5/lib/components/viewer/viewer.component.js +68 -0
  102. package/esm5/lib/components/viewer/viewerDialog.component.js +77 -0
  103. package/esm5/lib/dnd.directive.js +52 -0
  104. package/esm5/lib/modules/spa-admin.module.js +70 -0
  105. package/esm5/lib/modules/spa-index.module.js +36 -0
  106. package/esm5/lib/modules/spa-mat.module.js +56 -0
  107. package/esm5/lib/modules/spa-user.module.js +34 -0
  108. package/esm5/lib/services/auth.service.js +155 -0
  109. package/esm5/lib/services/data.service.js +79 -0
  110. package/esm5/lib/services/export.service.js +30 -0
  111. package/esm5/lib/services/loader-interceptor.service.js +79 -0
  112. package/esm5/lib/services/loader.service.js +18 -0
  113. package/esm5/lib/services/log.service.js +112 -0
  114. package/esm5/lib/services/message.service.js +59 -0
  115. package/esm5/lib/services/storage.service.js +74 -0
  116. package/esm5/lib/services/tin-spa.service.js +16 -0
  117. package/esm5/lib/tin-spa.module.js +94 -0
  118. package/esm5/public-api.js +58 -0
  119. package/esm5/tin-spa.js +9 -0
  120. package/fesm2015/tin-spa.js +3398 -0
  121. package/fesm2015/tin-spa.js.map +1 -0
  122. package/fesm5/tin-spa.js +3623 -0
  123. package/fesm5/tin-spa.js.map +1 -0
  124. package/lib/classes/Classes.d.ts +216 -374
  125. package/lib/components/activity/activity.component.d.ts +5 -3
  126. package/lib/components/activity/activity.component.d.ts.__ivy_ngcc_bak +8 -0
  127. package/lib/components/attach/attach.component.d.ts +30 -16
  128. package/lib/components/attach/attach.component.d.ts.__ivy_ngcc_bak +39 -0
  129. package/lib/components/change-password/change-password.component.d.ts +25 -0
  130. package/lib/components/change-password/change-password.component.d.ts.__ivy_ngcc_bak +20 -0
  131. package/lib/components/check/check.component.d.ts +6 -9
  132. package/lib/components/check/check.component.d.ts.__ivy_ngcc_bak +16 -0
  133. package/lib/components/chips/chips.component.d.ts +5 -3
  134. package/lib/components/chips/chips.component.d.ts.__ivy_ngcc_bak +15 -0
  135. package/lib/components/create-account/create-account.component.d.ts +30 -0
  136. package/lib/components/create-account/create-account.component.d.ts.__ivy_ngcc_bak +25 -0
  137. package/lib/components/date/date.component.d.ts +15 -26
  138. package/lib/components/date/date.component.d.ts.__ivy_ngcc_bak +13 -0
  139. package/lib/components/datetime/datetime.component.d.ts +5 -7
  140. package/lib/components/datetime/datetime.component.d.ts.__ivy_ngcc_bak +12 -0
  141. package/lib/components/html/html.component.d.ts +13 -12
  142. package/lib/components/html/html.component.d.ts.__ivy_ngcc_bak +12 -0
  143. package/lib/components/label/label.component.d.ts +5 -5
  144. package/lib/components/label/label.component.d.ts.__ivy_ngcc_bak +8 -0
  145. package/lib/components/loader/loader.component.d.ts +5 -3
  146. package/lib/components/loader/loader.component.d.ts.__ivy_ngcc_bak +9 -0
  147. package/lib/components/login/login.component.d.ts +34 -0
  148. package/lib/components/login/login.component.d.ts.__ivy_ngcc_bak +29 -0
  149. package/lib/components/logs/logs.component.d.ts +22 -0
  150. package/lib/components/logs/logs.component.d.ts.__ivy_ngcc_bak +17 -0
  151. package/lib/components/message/messageDialog.component.d.ts +5 -3
  152. package/lib/components/message/messageDialog.component.d.ts.__ivy_ngcc_bak +12 -0
  153. package/lib/components/money/money.component.d.ts +8 -29
  154. package/lib/components/money/money.component.d.ts.__ivy_ngcc_bak +14 -0
  155. package/lib/components/nav-menu/nav-menu.component.d.ts +7 -23
  156. package/lib/components/nav-menu/nav-menu.component.d.ts.__ivy_ngcc_bak +17 -0
  157. package/lib/components/option/option.component.d.ts +6 -16
  158. package/lib/components/option/option.component.d.ts.__ivy_ngcc_bak +17 -0
  159. package/lib/components/profile/profile.component.d.ts +35 -0
  160. package/lib/components/profile/profile.component.d.ts.__ivy_ngcc_bak +30 -0
  161. package/lib/components/profiles/profiles.component.d.ts +10 -0
  162. package/lib/components/profiles/profiles.component.d.ts.__ivy_ngcc_bak +5 -0
  163. package/lib/components/recover-account/recover-account.component.d.ts +20 -0
  164. package/lib/components/recover-account/recover-account.component.d.ts.__ivy_ngcc_bak +15 -0
  165. package/lib/components/roles/addRoleDialog.component.d.ts +24 -0
  166. package/lib/components/roles/addRoleDialog.component.d.ts.__ivy_ngcc_bak +19 -0
  167. package/lib/components/roles/editRoleDialog.component.d.ts +24 -0
  168. package/lib/components/roles/editRoleDialog.component.d.ts.__ivy_ngcc_bak +19 -0
  169. package/lib/components/roles/roles.component.d.ts +34 -0
  170. package/lib/components/roles/roles.component.d.ts.__ivy_ngcc_bak +29 -0
  171. package/lib/components/roles/viewRoleDialog.component.d.ts +20 -0
  172. package/lib/components/roles/viewRoleDialog.component.d.ts.__ivy_ngcc_bak +15 -0
  173. package/lib/components/select/select.component.d.ts +23 -21
  174. package/lib/components/select/select.component.d.ts.__ivy_ngcc_bak +20 -0
  175. package/lib/components/settings/settings.component.d.ts +21 -0
  176. package/lib/{pages/settings/settings.component.d.ts → components/settings/settings.component.d.ts.__ivy_ngcc_bak} +2 -5
  177. package/lib/components/signup/signup.component.d.ts +25 -0
  178. package/lib/{pages/signup/signup.component.d.ts → components/signup/signup.component.d.ts.__ivy_ngcc_bak} +4 -7
  179. package/lib/components/steps/steps.component.d.ts +13 -20
  180. package/lib/components/steps/steps.component.d.ts.__ivy_ngcc_bak +15 -0
  181. package/lib/components/table/table.component.d.ts +24 -85
  182. package/lib/components/table/table.component.d.ts.__ivy_ngcc_bak +25 -0
  183. package/lib/components/text/text.component.d.ts +17 -38
  184. package/lib/components/text/text.component.d.ts.__ivy_ngcc_bak +37 -0
  185. package/lib/components/tiles/tiles.component.d.ts +10 -22
  186. package/lib/components/tiles/tiles.component.d.ts.__ivy_ngcc_bak +11 -0
  187. package/lib/components/timeout/timeout.component.d.ts +26 -0
  188. package/lib/components/timeout/timeout.component.d.ts.__ivy_ngcc_bak +21 -0
  189. package/lib/components/tin-spa.component.d.ts +9 -4
  190. package/lib/components/tin-spa.component.d.ts.__ivy_ngcc_bak +5 -0
  191. package/lib/components/users/addUserDialog.component.d.ts +21 -0
  192. package/lib/components/users/addUserDialog.component.d.ts.__ivy_ngcc_bak +16 -0
  193. package/lib/components/users/editUserDialog.component.d.ts +32 -0
  194. package/lib/components/users/editUserDialog.component.d.ts.__ivy_ngcc_bak +27 -0
  195. package/lib/components/users/users.component.d.ts +40 -0
  196. package/lib/components/users/users.component.d.ts.__ivy_ngcc_bak +35 -0
  197. package/lib/components/viewer/viewer.component.d.ts +8 -12
  198. package/lib/components/viewer/viewer.component.d.ts.__ivy_ngcc_bak +16 -0
  199. package/lib/components/viewer/viewerDialog.component.d.ts +8 -8
  200. package/lib/components/viewer/viewerDialog.component.d.ts.__ivy_ngcc_bak +19 -0
  201. package/lib/dnd.directive.d.ts +13 -0
  202. package/lib/dnd.directive.d.ts.__ivy_ngcc_bak +8 -0
  203. package/lib/modules/spa-admin.module.d.ts +19 -13
  204. package/lib/modules/spa-admin.module.d.ts.__ivy_ngcc_bak +2 -0
  205. package/lib/modules/spa-index.module.d.ts +11 -11
  206. package/lib/modules/spa-index.module.d.ts.__ivy_ngcc_bak +2 -0
  207. package/lib/modules/spa-mat.module.d.ts +32 -36
  208. package/lib/modules/spa-mat.module.d.ts.__ivy_ngcc_bak +2 -0
  209. package/lib/modules/spa-user.module.d.ts +10 -9
  210. package/lib/modules/spa-user.module.d.ts.__ivy_ngcc_bak +2 -0
  211. package/lib/services/auth.service.d.ts +15 -27
  212. package/lib/services/auth.service.d.ts.__ivy_ngcc_bak +45 -0
  213. package/lib/services/data.service.d.ts +27 -0
  214. package/lib/services/data.service.d.ts.__ivy_ngcc_bak +23 -0
  215. package/lib/services/export.service.d.ts +8 -3
  216. package/lib/services/export.service.d.ts.__ivy_ngcc_bak +7 -0
  217. package/lib/services/loader-interceptor.service.d.ts +6 -5
  218. package/lib/services/loader-interceptor.service.d.ts.__ivy_ngcc_bak +18 -0
  219. package/lib/services/loader.service.d.ts +4 -3
  220. package/lib/services/loader.service.d.ts.__ivy_ngcc_bak +5 -0
  221. package/lib/services/log.service.d.ts +5 -4
  222. package/lib/services/log.service.d.ts.__ivy_ngcc_bak +16 -0
  223. package/lib/services/message.service.d.ts +5 -5
  224. package/lib/services/message.service.d.ts.__ivy_ngcc_bak +12 -0
  225. package/lib/services/storage.service.d.ts +4 -3
  226. package/lib/services/storage.service.d.ts.__ivy_ngcc_bak +7 -0
  227. package/lib/services/tin-spa.service.d.ts +4 -3
  228. package/lib/services/tin-spa.service.d.ts.__ivy_ngcc_bak +3 -0
  229. package/lib/tin-spa.module.d.ts +35 -84
  230. package/lib/tin-spa.module.d.ts.__ivy_ngcc_bak +2 -0
  231. package/package.json +23 -23
  232. package/public-api.d.ts +21 -50
  233. package/tin-spa.d.ts +10 -0
  234. package/tin-spa.d.ts.__ivy_ngcc_bak +8 -0
  235. package/tin-spa.metadata.json +1 -0
  236. package/esm2020/lib/classes/Classes.mjs +0 -112
  237. package/esm2020/lib/classes/LibClasses.mjs +0 -180
  238. package/esm2020/lib/classes/TinCore.mjs +0 -569
  239. package/esm2020/lib/components/activity/activity.component.mjs +0 -24
  240. package/esm2020/lib/components/alert/alert.component.mjs +0 -43
  241. package/esm2020/lib/components/attach/attach.component.mjs +0 -102
  242. package/esm2020/lib/components/capsules/capsules.component.mjs +0 -63
  243. package/esm2020/lib/components/cards/cards.component.mjs +0 -103
  244. package/esm2020/lib/components/check/check.component.mjs +0 -67
  245. package/esm2020/lib/components/chips/chips.component.mjs +0 -58
  246. package/esm2020/lib/components/date/date.component.mjs +0 -106
  247. package/esm2020/lib/components/datetime/datetime.component.mjs +0 -55
  248. package/esm2020/lib/components/email/email.component.mjs +0 -133
  249. package/esm2020/lib/components/filter/filter.component.mjs +0 -58
  250. package/esm2020/lib/components/form/form.component.mjs +0 -293
  251. package/esm2020/lib/components/html/html.component.mjs +0 -34
  252. package/esm2020/lib/components/label/label.component.mjs +0 -31
  253. package/esm2020/lib/components/list-dialog/list-dialog.component.mjs +0 -68
  254. package/esm2020/lib/components/loader/loader.component.mjs +0 -25
  255. package/esm2020/lib/components/message/messageDialog.component.mjs +0 -33
  256. package/esm2020/lib/components/money/currency-input-mask.directive.mjs +0 -185
  257. package/esm2020/lib/components/money/currency-input-mask.module.mjs +0 -28
  258. package/esm2020/lib/components/money/money.component.mjs +0 -137
  259. package/esm2020/lib/components/multi-select/multi-select.component.mjs +0 -165
  260. package/esm2020/lib/components/multi-text/multi-text.component.mjs +0 -208
  261. package/esm2020/lib/components/nav-menu/nav-menu.component.mjs +0 -88
  262. package/esm2020/lib/components/notes/notes.component.mjs +0 -62
  263. package/esm2020/lib/components/number/number.component.mjs +0 -131
  264. package/esm2020/lib/components/option/option.component.mjs +0 -92
  265. package/esm2020/lib/components/page/page.component.mjs +0 -101
  266. package/esm2020/lib/components/search/search.component.mjs +0 -36
  267. package/esm2020/lib/components/select/select.component.mjs +0 -75
  268. package/esm2020/lib/components/select-bitwise/select-bitwise.component.mjs +0 -87
  269. package/esm2020/lib/components/select-common/select-common.component.mjs +0 -206
  270. package/esm2020/lib/components/select-internal/select-internal.component.mjs +0 -75
  271. package/esm2020/lib/components/select-lite/select-lite.component.mjs +0 -18
  272. package/esm2020/lib/components/statuses/statuses.component.mjs +0 -44
  273. package/esm2020/lib/components/steps/steps.component.mjs +0 -112
  274. package/esm2020/lib/components/suffix/suffix.component.mjs +0 -70
  275. package/esm2020/lib/components/table/detailsDialog.component.mjs +0 -406
  276. package/esm2020/lib/components/table/table.component.mjs +0 -440
  277. package/esm2020/lib/components/table-action/table-action.component.mjs +0 -80
  278. package/esm2020/lib/components/table-header/table-header.component.mjs +0 -148
  279. package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +0 -406
  280. package/esm2020/lib/components/table-internal/table-internal.component.mjs +0 -441
  281. package/esm2020/lib/components/table-lite/detailsDialog-lite.component.mjs +0 -404
  282. package/esm2020/lib/components/table-lite/table-lite.component.mjs +0 -441
  283. package/esm2020/lib/components/table-row/table-row.component.mjs +0 -93
  284. package/esm2020/lib/components/tabs/tabs.component.mjs +0 -74
  285. package/esm2020/lib/components/text/text.component.mjs +0 -259
  286. package/esm2020/lib/components/tiles/tiles.component.mjs +0 -99
  287. package/esm2020/lib/components/tin-spa.component.mjs +0 -19
  288. package/esm2020/lib/components/viewer/viewer.component.mjs +0 -83
  289. package/esm2020/lib/components/viewer/viewerDialog.component.mjs +0 -95
  290. package/esm2020/lib/modules/admin/admin-routing.module.mjs +0 -71
  291. package/esm2020/lib/modules/admin/admin.module.mjs +0 -26
  292. package/esm2020/lib/modules/index/index-routing.module.mjs +0 -27
  293. package/esm2020/lib/modules/index/index.module.mjs +0 -26
  294. package/esm2020/lib/modules/spa-admin.module.mjs +0 -71
  295. package/esm2020/lib/modules/spa-index.module.mjs +0 -54
  296. package/esm2020/lib/modules/spa-mat.module.mjs +0 -84
  297. package/esm2020/lib/modules/spa-user.module.mjs +0 -47
  298. package/esm2020/lib/modules/user/user-routing.module.mjs +0 -23
  299. package/esm2020/lib/modules/user/user.module.mjs +0 -26
  300. package/esm2020/lib/pages/accounts/accountDialog.component.mjs +0 -56
  301. package/esm2020/lib/pages/accounts/accounts.component.mjs +0 -70
  302. package/esm2020/lib/pages/app-models/app-models.component.mjs +0 -56
  303. package/esm2020/lib/pages/approvals/approvals.component.mjs +0 -19
  304. package/esm2020/lib/pages/approvals-config/approvals-config.component.mjs +0 -165
  305. package/esm2020/lib/pages/bug/bug.component.mjs +0 -14
  306. package/esm2020/lib/pages/change-password/change-password.component.mjs +0 -92
  307. package/esm2020/lib/pages/create-account/create-account.component.mjs +0 -110
  308. package/esm2020/lib/pages/customers/customers.component.mjs +0 -21
  309. package/esm2020/lib/pages/departments/departments.component.mjs +0 -22
  310. package/esm2020/lib/pages/employees/employees.component.mjs +0 -20
  311. package/esm2020/lib/pages/grades/grades.component.mjs +0 -14
  312. package/esm2020/lib/pages/inventory/inventory.component.mjs +0 -99
  313. package/esm2020/lib/pages/inventory/quantityDialog.component.mjs +0 -53
  314. package/esm2020/lib/pages/invitations-table/invitations-table.component.mjs +0 -71
  315. package/esm2020/lib/pages/login/login.component.mjs +0 -166
  316. package/esm2020/lib/pages/logs/logs.component.mjs +0 -42
  317. package/esm2020/lib/pages/membership/membership.component.mjs +0 -44
  318. package/esm2020/lib/pages/notifications/notifications.component.mjs +0 -90
  319. package/esm2020/lib/pages/notifications-config/notifications-config.component.mjs +0 -113
  320. package/esm2020/lib/pages/plans/plans.component.mjs +0 -44
  321. package/esm2020/lib/pages/positions/positions.component.mjs +0 -21
  322. package/esm2020/lib/pages/profile/profile.component.mjs +0 -94
  323. package/esm2020/lib/pages/recover-account/recover-account.component.mjs +0 -46
  324. package/esm2020/lib/pages/roles/addRoleDialog.component.mjs +0 -60
  325. package/esm2020/lib/pages/roles/roles.component.mjs +0 -151
  326. package/esm2020/lib/pages/settings/settings.component.mjs +0 -54
  327. package/esm2020/lib/pages/signup/signup.component.mjs +0 -50
  328. package/esm2020/lib/pages/suppliers/suppliers.component.mjs +0 -22
  329. package/esm2020/lib/pages/tasks/tasks.component.mjs +0 -86
  330. package/esm2020/lib/pages/tenant-settings/tenant-settings.component.mjs +0 -228
  331. package/esm2020/lib/pages/tenants/tenants.component.mjs +0 -47
  332. package/esm2020/lib/pages/transactions/transactDialog.component.mjs +0 -80
  333. package/esm2020/lib/pages/transactions/transactions.component.mjs +0 -101
  334. package/esm2020/lib/pages/users/users.component.mjs +0 -141
  335. package/esm2020/lib/pages/welcome/welcome.component.mjs +0 -86
  336. package/esm2020/lib/pipes/camelToWords.pipe.mjs +0 -17
  337. package/esm2020/lib/select-context.directive.mjs +0 -23
  338. package/esm2020/lib/services/auth.service.mjs +0 -175
  339. package/esm2020/lib/services/button.service.mjs +0 -162
  340. package/esm2020/lib/services/condition.service.mjs +0 -32
  341. package/esm2020/lib/services/csv.service.mjs +0 -49
  342. package/esm2020/lib/services/datalib.service.mjs +0 -861
  343. package/esm2020/lib/services/dialog.service.mjs +0 -125
  344. package/esm2020/lib/services/export.service.mjs +0 -16
  345. package/esm2020/lib/services/http.service.mjs +0 -79
  346. package/esm2020/lib/services/loader-interceptor.service.mjs +0 -86
  347. package/esm2020/lib/services/loader.service.mjs +0 -17
  348. package/esm2020/lib/services/log.service.mjs +0 -77
  349. package/esm2020/lib/services/message.service.mjs +0 -59
  350. package/esm2020/lib/services/notifications.service.mjs +0 -33
  351. package/esm2020/lib/services/storage.service.mjs +0 -34
  352. package/esm2020/lib/services/table-config.service.mjs +0 -78
  353. package/esm2020/lib/services/tin-spa.service.mjs +0 -14
  354. package/esm2020/lib/tin-spa.module.mjs +0 -225
  355. package/esm2020/public-api.mjs +0 -90
  356. package/esm2020/tin-spa.mjs +0 -5
  357. package/fesm2015/tin-spa.mjs +0 -11711
  358. package/fesm2015/tin-spa.mjs.map +0 -1
  359. package/fesm2020/tin-spa.mjs +0 -11718
  360. package/fesm2020/tin-spa.mjs.map +0 -1
  361. package/index.d.ts +0 -5
  362. package/lib/classes/LibClasses.d.ts +0 -173
  363. package/lib/classes/TinCore.d.ts +0 -59
  364. package/lib/components/alert/alert.component.d.ts +0 -15
  365. package/lib/components/capsules/capsules.component.d.ts +0 -26
  366. package/lib/components/cards/cards.component.d.ts +0 -39
  367. package/lib/components/email/email.component.d.ts +0 -40
  368. package/lib/components/filter/filter.component.d.ts +0 -20
  369. package/lib/components/form/form.component.d.ts +0 -47
  370. package/lib/components/list-dialog/list-dialog.component.d.ts +0 -23
  371. package/lib/components/money/currency-input-mask.directive.d.ts +0 -41
  372. package/lib/components/money/currency-input-mask.module.d.ts +0 -9
  373. package/lib/components/multi-select/multi-select.component.d.ts +0 -47
  374. package/lib/components/multi-text/multi-text.component.d.ts +0 -56
  375. package/lib/components/notes/notes.component.d.ts +0 -19
  376. package/lib/components/number/number.component.d.ts +0 -41
  377. package/lib/components/page/page.component.d.ts +0 -38
  378. package/lib/components/search/search.component.d.ts +0 -15
  379. package/lib/components/select-bitwise/select-bitwise.component.d.ts +0 -31
  380. package/lib/components/select-common/select-common.component.d.ts +0 -53
  381. package/lib/components/select-internal/select-internal.component.d.ts +0 -23
  382. package/lib/components/select-lite/select-lite.component.d.ts +0 -8
  383. package/lib/components/statuses/statuses.component.d.ts +0 -12
  384. package/lib/components/suffix/suffix.component.d.ts +0 -23
  385. package/lib/components/table/detailsDialog.component.d.ts +0 -86
  386. package/lib/components/table-action/table-action.component.d.ts +0 -25
  387. package/lib/components/table-header/table-header.component.d.ts +0 -46
  388. package/lib/components/table-internal/detailsDialog-internal.component.d.ts +0 -86
  389. package/lib/components/table-internal/table-internal.component.d.ts +0 -91
  390. package/lib/components/table-lite/detailsDialog-lite.component.d.ts +0 -86
  391. package/lib/components/table-lite/table-lite.component.d.ts +0 -91
  392. package/lib/components/table-row/table-row.component.d.ts +0 -31
  393. package/lib/components/tabs/tabs.component.d.ts +0 -32
  394. package/lib/modules/admin/admin-routing.module.d.ts +0 -7
  395. package/lib/modules/admin/admin.module.d.ts +0 -9
  396. package/lib/modules/index/index-routing.module.d.ts +0 -7
  397. package/lib/modules/index/index.module.d.ts +0 -9
  398. package/lib/modules/user/user-routing.module.d.ts +0 -7
  399. package/lib/modules/user/user.module.d.ts +0 -9
  400. package/lib/pages/accounts/accountDialog.component.d.ts +0 -27
  401. package/lib/pages/accounts/accounts.component.d.ts +0 -25
  402. package/lib/pages/app-models/app-models.component.d.ts +0 -15
  403. package/lib/pages/approvals/approvals.component.d.ts +0 -10
  404. package/lib/pages/approvals-config/approvals-config.component.d.ts +0 -24
  405. package/lib/pages/bug/bug.component.d.ts +0 -8
  406. package/lib/pages/change-password/change-password.component.d.ts +0 -27
  407. package/lib/pages/create-account/create-account.component.d.ts +0 -34
  408. package/lib/pages/customers/customers.component.d.ts +0 -12
  409. package/lib/pages/departments/departments.component.d.ts +0 -14
  410. package/lib/pages/employees/employees.component.d.ts +0 -12
  411. package/lib/pages/grades/grades.component.d.ts +0 -8
  412. package/lib/pages/inventory/inventory.component.d.ts +0 -25
  413. package/lib/pages/inventory/quantityDialog.component.d.ts +0 -23
  414. package/lib/pages/invitations-table/invitations-table.component.d.ts +0 -19
  415. package/lib/pages/login/login.component.d.ts +0 -46
  416. package/lib/pages/logs/logs.component.d.ts +0 -14
  417. package/lib/pages/membership/membership.component.d.ts +0 -13
  418. package/lib/pages/notifications/notifications.component.d.ts +0 -16
  419. package/lib/pages/notifications-config/notifications-config.component.d.ts +0 -17
  420. package/lib/pages/plans/plans.component.d.ts +0 -13
  421. package/lib/pages/positions/positions.component.d.ts +0 -12
  422. package/lib/pages/profile/profile.component.d.ts +0 -35
  423. package/lib/pages/recover-account/recover-account.component.d.ts +0 -18
  424. package/lib/pages/roles/addRoleDialog.component.d.ts +0 -24
  425. package/lib/pages/roles/roles.component.d.ts +0 -42
  426. package/lib/pages/suppliers/suppliers.component.d.ts +0 -14
  427. package/lib/pages/tasks/tasks.component.d.ts +0 -27
  428. package/lib/pages/tenant-settings/tenant-settings.component.d.ts +0 -47
  429. package/lib/pages/tenants/tenants.component.d.ts +0 -17
  430. package/lib/pages/transactions/transactDialog.component.d.ts +0 -26
  431. package/lib/pages/transactions/transactions.component.d.ts +0 -31
  432. package/lib/pages/users/users.component.d.ts +0 -28
  433. package/lib/pages/welcome/welcome.component.d.ts +0 -25
  434. package/lib/pipes/camelToWords.pipe.d.ts +0 -7
  435. package/lib/select-context.directive.d.ts +0 -10
  436. package/lib/services/button.service.d.ts +0 -30
  437. package/lib/services/condition.service.d.ts +0 -10
  438. package/lib/services/csv.service.d.ts +0 -10
  439. package/lib/services/datalib.service.d.ts +0 -125
  440. package/lib/services/dialog.service.d.ts +0 -20
  441. package/lib/services/http.service.d.ts +0 -22
  442. package/lib/services/notifications.service.d.ts +0 -12
  443. package/lib/services/table-config.service.d.ts +0 -17
@@ -0,0 +1,125 @@
1
+ import { __decorate } from "tslib";
2
+ //-----------------Change for Build and Reference purposes for SERVICES ONLY---------//
3
+ import { HttpService, ApiResponse, Core, Constants } from "tin-core";
4
+ // import { HttpService,ApiResponse, Core, Constants } from 'tin-core';
5
+ //----------------------------------------------------------------------------------//
6
+ import { MessageService } from "../../services/message.service";
7
+ import { StorageService } from "../../services/storage.service";
8
+ import { AuthService } from "../../services/auth.service";
9
+ import { Component, Input } from "@angular/core";
10
+ import { Router, ActivatedRoute } from "@angular/router";
11
+ import { DataService } from "../../services/data.service";
12
+ import { LogService } from "./../../services/log.service";
13
+ // import { AuthService } from "../services/auth.service";
14
+ // import { ApiResponse, Core } from "../classes/TinCore";
15
+ import { User, AppConfig } from "../../classes/Classes";
16
+ var LoginComponent = /** @class */ (function () {
17
+ function LoginComponent(httpService, storageService, router, messageService, dataService, authService, logService) {
18
+ this.httpService = httpService;
19
+ this.storageService = storageService;
20
+ this.router = router;
21
+ this.messageService = messageService;
22
+ this.dataService = dataService;
23
+ this.authService = authService;
24
+ this.logService = logService;
25
+ this.user = new User();
26
+ this.hide = true;
27
+ this.isProcessing = false;
28
+ this.appConfig = new AppConfig();
29
+ }
30
+ LoginComponent.prototype.ngOnInit = function () {
31
+ this.authService.updateloggedin(false);
32
+ this.authService.updateRole(null);
33
+ this.storageService.clear();
34
+ };
35
+ LoginComponent.prototype.signup = function () {
36
+ this.router.navigate(["signup"]);
37
+ };
38
+ LoginComponent.prototype.recoverAccount = function () {
39
+ this.router.navigate(["recover-account"]);
40
+ };
41
+ LoginComponent.prototype.login = function () {
42
+ var _this = this;
43
+ if (this.user.userID == "" || this.user.password == "") {
44
+ this.messageService.toast("Please enter your credentials");
45
+ return;
46
+ }
47
+ this.logService.info("logging in");
48
+ this.isProcessing = true;
49
+ this.dataService.login(this.user).subscribe(function (apiResponse) {
50
+ _this.isProcessing = false;
51
+ if (apiResponse.message == "success") {
52
+ if (apiResponse.ds.dtUser[0]["authType"] == 'local' && !_this.appConfig.localAuth) {
53
+ _this.messageService.toast("Contact Admin: Authentication Type error");
54
+ return;
55
+ }
56
+ if (apiResponse.ds.dtUser[0]["authType"] == 'AD' && !_this.appConfig.ADAuth) {
57
+ _this.messageService.toast("Contact Admin: Authentication Type error");
58
+ return;
59
+ }
60
+ _this.authService.updateloggedin(true);
61
+ _this.authService.updateToken(apiResponse.ds.dtUser[0]["token"]);
62
+ _this.storageService.store(Constants.AUTH_TOKEN, apiResponse.ds.dtUser[0]["token"]);
63
+ _this.authService.updateTokenExpire(apiResponse.ds.dtUser[0]["tokenExpire"]);
64
+ _this.storageService.store(Constants.AUTH_TOKEN_EXPIRE, apiResponse.ds.dtUser[0]["tokenExpire"]);
65
+ _this.authService.updateCurrentUser(_this.user.userID);
66
+ _this.storageService.store(Constants.AUTH_USER, _this.user.userID);
67
+ _this.authService.updateLoggedUserFullName(apiResponse.ds.dtProfile[0]["firstName"]);
68
+ _this.storageService.store(Constants.AUTH_NAME, apiResponse.ds.dtProfile[0]["firstName"]);
69
+ _this.authService.updateRole(apiResponse.ds.dtRole[0]);
70
+ _this.storageService.store(Constants.AUTH_ROLES, JSON.stringify(apiResponse.ds.dtRole[0]));
71
+ // this.setRole(apiResponse.dt[0]["accessLevel"]);
72
+ // this.setRole("1");
73
+ if (apiResponse.ds.dtUser[0]["changePassword"] == "0") {
74
+ _this.router.navigate(["home"]);
75
+ // this.messageService.toast("Welcome");
76
+ _this.logService.info("logged in");
77
+ }
78
+ else {
79
+ _this.router.navigate(["home/user/change-password"]);
80
+ }
81
+ }
82
+ else {
83
+ _this.messageService.toast("Error: " + apiResponse.message);
84
+ _this.user.password = "";
85
+ }
86
+ }, function (error) {
87
+ _this.isProcessing = false;
88
+ _this.messageService.toast(_this.httpService.Error(error));
89
+ });
90
+ };
91
+ LoginComponent.prototype.setRole = function (roleID) {
92
+ var _this = this;
93
+ this.dataService
94
+ .GetRole("id", roleID)
95
+ .subscribe(function (apiResponse) {
96
+ _this.authService.updateRole(apiResponse.dt[0]);
97
+ _this.storageService.store(Constants.AUTH_ROLES, JSON.stringify(apiResponse.dt[0]));
98
+ });
99
+ };
100
+ LoginComponent.ctorParameters = function () { return [
101
+ { type: HttpService },
102
+ { type: StorageService },
103
+ { type: Router },
104
+ { type: MessageService },
105
+ { type: DataService },
106
+ { type: AuthService },
107
+ { type: LogService }
108
+ ]; };
109
+ __decorate([
110
+ Input()
111
+ ], LoginComponent.prototype, "config", void 0);
112
+ __decorate([
113
+ Input()
114
+ ], LoginComponent.prototype, "appConfig", void 0);
115
+ LoginComponent = __decorate([
116
+ Component({
117
+ selector: "spa-login",
118
+ template: "\r\n <div class=\"tin-bg-login login-page\">\r\n\r\n\r\n <div *ngIf=\"config.logo!=''\" class=\"d-flex justify-content-center row align-items-center\" style=\"margin-top:3em;margin-bottom:1em\">\r\n\r\n <img *ngIf=\"config.logoSize=='normal'\" [src]=\"config.logo\" style=\"height:100px;margin-right:3em;margin-left:3em\" />\r\n <img *ngIf=\"config.logoSize=='medium'\" [src]=\"config.logo\" style=\"height:150px;margin-right:3em;margin-left:3em\" />\r\n <img *ngIf=\"config.logoSize=='large'\" [src]=\"config.logo\" style=\"height:250px;margin-right:3em;margin-left:3em\" />\r\n\r\n </div>\r\n\r\n\r\n <div *ngIf=\"config.logo ==''\" style=\"margin-top:2em\">\r\n <!-- Add margin top when there is no logo -->\r\n </div>\r\n\r\n\r\n <div class=\"d-flex justify-content-center row align-items-center\" style=\"margin-top:3em\">\r\n\r\n\r\n <div class=\"d-none d-sm-block\">\r\n\r\n </div>\r\n\r\n <div style=\"margin-left:1em\">\r\n\r\n\r\n\r\n <mat-card class=\"mat-elevation-z3\" style=\"width:400px; \">\r\n\r\n <mat-card-header>\r\n <mat-card-title>{{config.appName}}</mat-card-title>\r\n </mat-card-header>\r\n\r\n <mat-card-content>\r\n\r\n\r\n <div class=\"tin-input mt-2\">\r\n\r\n <mat-form-field style=\"width: 100%;\">\r\n <mat-label>Username</mat-label>\r\n <input id=\"txtUserID\" matInput #parentInput placeholder=\"Enter Username\" [(ngModel)]=\"user.userID\" autocomplete=\"off\" autofocus>\r\n </mat-form-field>\r\n\r\n <mat-form-field >\r\n <mat-label>Password</mat-label>\r\n <input id=\"txtPassword\" matInput [type]=\"hide ? 'password' : 'text'\" (keyup.enter)=\"login()\" [(ngModel)]=\"user.password\" autocomplete=\"off\" >\r\n <button mat-icon-button matSuffix (click)=\"hide = !hide\" [attr.aria-label]=\"'Hide password'\" [attr.aria-pressed]=\"hide\">\r\n <mat-icon style=\"font-size: 18px;\">{{hide ? 'visibility_off' : 'visibility'}}</mat-icon>\r\n </button>\r\n </mat-form-field>\r\n\r\n\r\n </div>\r\n\r\n </mat-card-content>\r\n\r\n\r\n <mat-card-actions>\r\n\r\n <div class=\"row \">\r\n\r\n <div class=\"col d-flex justify-content-center\">\r\n\r\n <button id=\"btnLogin\" mat-raised-button [disabled]=\"isProcessing\" style=\"width: 100px;\" (click)=\"login()\" color=\"primary\">Login</button>\r\n </div>\r\n\r\n <div class=\"col d-flex justify-content-center\" *ngIf=\"config.selfService\">\r\n <button id=\"btnSignup\" mat-stroked-button color=\"primary\" style=\"width: 100px;\" (click)=\"signup()\">Signup</button>\r\n </div>\r\n\r\n </div>\r\n\r\n </mat-card-actions>\r\n\r\n </mat-card>\r\n\r\n <div *ngIf=\"config.selfService\">\r\n <br />\r\n <a mat-button id=\"lnkRecover\" style=\"margin-left: 1em\" (click)=\"recoverAccount()\">Forgot your password ?</a>\r\n </div>\r\n\r\n\r\n\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n\r\n\r\n </div>\r\n\r\n",
119
+ styles: [".login-page{position:absolute;top:0;left:0;right:0;bottom:0;overflow:auto}.tin-bg-login{background-image:url(~/assets/login-bg.jpg);background-size:100%}"]
120
+ })
121
+ ], LoginComponent);
122
+ return LoginComponent;
123
+ }());
124
+ export { LoginComponent };
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdGluLXNwYS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsdUZBQXVGO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDckUsdUVBQXVFO0FBQ3ZFLHNGQUFzRjtBQUN0RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsMERBQTBEO0FBQzFELDBEQUEwRDtBQUMxRCxPQUFPLEVBQUUsSUFBSSxFQUFlLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBV3JFO0lBQ0Usd0JBQ1UsV0FBd0IsRUFDeEIsY0FBOEIsRUFDL0IsTUFBYyxFQUNiLGNBQThCLEVBQzlCLFdBQXdCLEVBQ3pCLFdBQXdCLEVBQ3ZCLFVBQXNCO1FBTnRCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3pCLGdCQUFXLEdBQVgs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QUFRLEVBQUUsV0FBVztZQUNyQixrc0dBQXFDOztTQUV0QyxDQUFDO09BQ1csY0FBYyxDQW9IMUI7SUFBRCxxQkFBQztDQUFBLEFBcEhELElBb0hDO1NBcEhZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy0tLS0tLS0tLS0tLS0tLS0tQ2hhbmdlIGZvciBCdWlsZCBhbmQgUmVmZXJlbmNlIHB1cnBvc2VzIGZvciBTRVJWSUNFUyBPTkxZLS0tLS0tLS0tLy9cclxuaW1wb3J0IHsgSHR0cFNlcnZpY2UsIEFwaVJlc3BvbnNlLCBDb3JlLCBDb25zdGFudHMgfSBmcm9tIFwidGluLWNvcmVcIjtcclxuLy8gaW1wb3J0IHsgSHR0cFNlcnZpY2UsQXBpUmVzcG9uc2UsIENvcmUsIENvbnN0YW50cyB9IGZyb20gJ3Rpbi1jb3JlJztcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLy9cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgUm91dGVyLCBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyXCI7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSBcIi4vLi4vLi4vc2VydmljZXMvbG9nLnNlcnZpY2VcIjtcclxuLy8gaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlXCI7XHJcbi8vIGltcG9ydCB7IEFwaVJlc3BvbnNlLCBDb3JlIH0gZnJvbSBcIi4uL2NsYXNzZXMvVGluQ29yZVwiO1xyXG5pbXBvcnQgeyBVc2VyLCBsb2dpbkNvbmZpZywgQXBwQ29uZmlnIH0gZnJvbSBcIi4uLy4uL2NsYXNzZXMvQ2xhc3Nlc1wiO1xyXG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbi8vIGltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3N0b3JhZ2Uuc2VydmljZVwiO1xyXG4vLyBpbXBvcnQgeyBDb25zdGFudHMgfSBmcm9tIFwiLi4vLi4vY2xhc3Nlcy9UaW5TcGFcIjtcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInNwYS1sb2dpblwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vbG9naW4uY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vbG9naW4uY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSxcclxuICAgIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VTZXJ2aWNlLFxyXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgIHB1YmxpYyBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGxvZ1NlcnZpY2U6IExvZ1NlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIHB1YmxpYyB1c2VyID0gbmV3IFVzZXIoKTtcclxuICBoaWRlID0gdHJ1ZTtcclxuICBpc1Byb2Nlc3Npbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBjb25maWc6IGxvZ2luQ29uZmlnO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UudXBkYXRlbG9nZ2VkaW4oZmFsc2UpO1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS51cGRhdGVSb2xlKG51bGwpO1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5jbGVhcigpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgYXBwQ29uZmlnID0gbmV3IEFwcENvbmZpZygpO1xyXG5cclxuICBwdWJsaWMgc2lnbnVwKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wic2lnbnVwXCJdKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWNvdmVyQWNjb3VudCgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcInJlY292ZXItYWNjb3VudFwiXSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9naW4oKSB7XHJcblxyXG4gICAgaWYgKHRoaXMudXNlci51c2VySUQgPT0gXCJcIiB8fCB0aGlzLnVzZXIucGFzc3dvcmQgPT0gXCJcIikge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiUGxlYXNlIGVudGVyIHlvdXIgY3JlZGVudGlhbHNcIik7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcblxyXG4gICAgdGhpcy5sb2dTZXJ2aWNlLmluZm8oXCJsb2dnaW5nIGluXCIpO1xyXG5cclxuICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmxvZ2luKHRoaXMudXNlcikuc3Vic2NyaWJlKFxyXG4gICAgICAoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgaWYgKGFwaVJlc3BvbnNlLm1lc3NhZ2UgPT0gXCJzdWNjZXNzXCIpIHtcclxuXHJcblxyXG4gICAgICAgICAgaWYgKGFwaVJlc3BvbnNlLmRzLmR0VXNlclswXVtcImF1dGhUeXBlXCJdID09ICdsb2NhbCcgJiYgIXRoaXMuYXBwQ29uZmlnLmxvY2FsQXV0aCl7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJDb250YWN0IEFkbWluOiBBdXRoZW50aWNhdGlvbiBUeXBlIGVycm9yXCIpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKGFwaVJlc3BvbnNlLmRzLmR0VXNlclswXVtcImF1dGhUeXBlXCJdID09ICdBRCcgJiYgIXRoaXMuYXBwQ29uZmlnLkFEQXV0aCkge1xyXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiQ29udGFjdCBBZG1pbjogQXV0aGVudGljYXRpb24gVHlwZSBlcnJvclwiKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZWxvZ2dlZGluKHRydWUpO1xyXG5cclxuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UudXBkYXRlVG9rZW4oYXBpUmVzcG9uc2UuZHMuZHRVc2VyWzBdW1widG9rZW5cIl0pO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zdG9yZShDb25zdGFudHMuQVVUSF9UT0tFTiwgYXBpUmVzcG9uc2UuZHMuZHRVc2VyWzBdW1widG9rZW5cIl0pO1xyXG5cclxuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UudXBkYXRlVG9rZW5FeHBpcmUoYXBpUmVzcG9uc2UuZHMuZHRVc2VyWzBdW1widG9rZW5FeHBpcmVcIl0pO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zdG9yZShDb25zdGFudHMuQVVUSF9UT0tFTl9FWFBJUkUsIGFwaVJlc3BvbnNlLmRzLmR0VXNlclswXVtcInRva2VuRXhwaXJlXCJdKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZUN1cnJlbnRVc2VyKHRoaXMudXNlci51c2VySUQpO1xyXG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zdG9yZShDb25zdGFudHMuQVVUSF9VU0VSLCB0aGlzLnVzZXIudXNlcklEKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZUxvZ2dlZFVzZXJGdWxsTmFtZSggYXBpUmVzcG9uc2UuZHMuZHRQcm9maWxlWzBdW1wiZmlyc3ROYW1lXCJdICk7XHJcbiAgICAgICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnN0b3JlKENvbnN0YW50cy5BVVRIX05BTUUsIGFwaVJlc3BvbnNlLmRzLmR0UHJvZmlsZVswXVtcImZpcnN0TmFtZVwiXVxyXG4gICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZVJvbGUoYXBpUmVzcG9uc2UuZHMuZHRSb2xlWzBdKTtcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc3RvcmUoQ29uc3RhbnRzLkFVVEhfUk9MRVMsIEpTT04uc3RyaW5naWZ5KGFwaVJlc3BvbnNlLmRzLmR0Um9sZVswXSkpO1xyXG4gICAgICAgICAgLy8gdGhpcy5zZXRSb2xlKGFwaVJlc3BvbnNlLmR0WzBdW1wiYWNjZXNzTGV2ZWxcIl0pO1xyXG5cclxuICAgICAgICAgIC8vIHRoaXMuc2V0Um9sZShcIjFcIik7XHJcblxyXG4gICAgICAgICAgaWYgKGFwaVJlc3BvbnNlLmRzLmR0VXNlclswXVtcImNoYW5nZVBhc3N3b3JkXCJdID09IFwiMFwiKSB7XHJcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcImhvbWVcIl0pO1xyXG4gICAgICAgICAgICAvLyB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiV2VsY29tZVwiKTtcclxuICAgICAgICAgICAgdGhpcy5sb2dTZXJ2aWNlLmluZm8oXCJsb2dnZWQgaW5cIik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCJob21lL3VzZXIvY2hhbmdlLXBhc3N3b3JkXCJdKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJFcnJvcjogXCIgKyBhcGlSZXNwb25zZS5tZXNzYWdlKTtcclxuICAgICAgICAgIHRoaXMudXNlci5wYXNzd29yZCA9IFwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLmlzUHJvY2Vzc2luZyA9IGZhbHNlO1xyXG5cclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KHRoaXMuaHR0cFNlcnZpY2UuRXJyb3IoZXJyb3IpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNldFJvbGUocm9sZUlEOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZGF0YVNlcnZpY2VcclxuICAgICAgLkdldFJvbGUoXCJpZFwiLCByb2xlSUQpXHJcbiAgICAgIC5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2UudXBkYXRlUm9sZShhcGlSZXNwb25zZS5kdFswXSk7XHJcblxyXG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc3RvcmUoXHJcbiAgICAgICAgICBDb25zdGFudHMuQVVUSF9ST0xFUyxcclxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGFwaVJlc3BvbnNlLmR0WzBdKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,45 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, ViewChild } from '@angular/core';
3
+ import { DataService } from "../../services/data.service";
4
+ import { MatTableDataSource } from '@angular/material/table';
5
+ import { AuthService } from '../../services/auth.service';
6
+ var LogsComponent = /** @class */ (function () {
7
+ function LogsComponent(authService, dataService) {
8
+ this.authService = authService;
9
+ this.dataService = dataService;
10
+ this.isProcessing = false;
11
+ this._filterText = "";
12
+ this.displayedColumns = ["dateLogged", "userID", "fullName", "source", "details"];
13
+ }
14
+ LogsComponent.prototype.ngOnInit = function () {
15
+ this.loadLogs();
16
+ };
17
+ LogsComponent.prototype.loadLogs = function () {
18
+ var _this = this;
19
+ this.dataService.GetLog("all", "").subscribe(function (apiResponse) {
20
+ _this.logs = new MatTableDataSource(apiResponse.dt);
21
+ _this.logs.paginator = _this.logsPaginator;
22
+ _this.applyFilter(_this._filterText);
23
+ });
24
+ };
25
+ LogsComponent.prototype.applyFilter = function (filterValue) {
26
+ this.logs.filter = filterValue.trim().toLowerCase();
27
+ };
28
+ LogsComponent.ctorParameters = function () { return [
29
+ { type: AuthService },
30
+ { type: DataService }
31
+ ]; };
32
+ __decorate([
33
+ ViewChild("logsPaginator")
34
+ ], LogsComponent.prototype, "logsPaginator", void 0);
35
+ LogsComponent = __decorate([
36
+ Component({
37
+ selector: 'spa-logs',
38
+ template: "<h4>Logs</h4>\r\n<hr />\r\n\r\n<div class=\"container-fluid\">\r\n\r\n\r\n <div class=\"row justify-content-between\" style=\"padding-bottom: 10px\">\r\n <div class=\"col-2\">\r\n\r\n <!-- <mat-form-field>\r\n <input matInput [(ngModel)]=\"_filterText\" (keyup)=\"applyFilter($event.target.value) \" placeholder=\"Filter\" autocomplete=\"off\">\r\n </mat-form-field> -->\r\n\r\n </div>\r\n <div class=\"col-3\">\r\n <mat-form-field style=\"font-size:12px\">\r\n <mat-label>Filter</mat-label>\r\n <input id=\"txtFilter\" matInput [(ngModel)]=\"_filterText\" (keyup)=\"applyFilter($event.target.value)\" placeholder=\"Enter Filter text\" autocomplete=\"off\">\r\n </mat-form-field>\r\n <button id=\"btnFilter\" mat-mini-fab color=\"primary\" (click)=\"loadLogs()\" style=\"margin-right:3em;margin-top:5px\"><mat-icon class=\"refreshIcon\">refresh</mat-icon></button>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n <p *ngIf=\"!logs\"><em>Loading...</em></p>\r\n\r\n\r\n <div class=\"mat-elevation-z8\" *ngIf=\"logs\">\r\n\r\n <table id=\"tblTable\" mat-table [dataSource]=\"logs\">\r\n\r\n\r\n <ng-container matColumnDef=\"userID\">\r\n <th mat-header-cell *matHeaderCellDef> User ID </th>\r\n <td mat-cell *matCellDef=\"let log\"> {{log.userID}} </td>\r\n </ng-container>\r\n\r\n\r\n <ng-container matColumnDef=\"dateLogged\">\r\n <th mat-header-cell *matHeaderCellDef class=\"datetime\"> Date Logged </th>\r\n <td mat-cell *matCellDef=\"let log\"> {{log.dateLogged | date: 'dd MMM yy HH:mm:ss'}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"source\">\r\n <th mat-header-cell *matHeaderCellDef> Source </th>\r\n <td mat-cell *matCellDef=\"let log\"> {{log.source}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"details\">\r\n <th mat-header-cell *matHeaderCellDef> Details </th>\r\n <td mat-cell *matCellDef=\"let log\"> {{log.details}} </td>\r\n </ng-container>\r\n\r\n <ng-container matColumnDef=\"fullName\">\r\n <th mat-header-cell *matHeaderCellDef> Name </th>\r\n <td mat-cell *matCellDef=\"let user\"> {{user.firstName}} {{user.lastName}} </td>\r\n </ng-container>\r\n\r\n\r\n\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n\r\n\r\n </table>\r\n\r\n </div>\r\n\r\n <mat-paginator #logsPaginator [pageSizeOptions]=\"[50, 100, 200]\" showFirstLastButtons></mat-paginator>\r\n</div>\r\n\r\n",
39
+ styles: [".mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}.refreshIcon{font-size:22px!important;margin-top:-7px!important}"]
40
+ })
41
+ ], LogsComponent);
42
+ return LogsComponent;
43
+ }());
44
+ export { LogsComponent };
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly90aW4tc3BhLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbG9ncy9sb2dzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU8xRDtJQUNFLHVCQUFzQixXQUF3QixFQUFVLFdBQXdCO1FBQTFELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFNaEYsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFHOUIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFJakIscUJBQWdCLEdBQWEsQ0FBRSxZQUFZLEVBQUUsUUFBUSxFQUFDLFVBQVUsRUFBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFiRixDQUFDO0lBRXJGLGdDQUFRLEdBQVI7UUFDSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQVdNLGdDQUFRLEdBQWY7UUFBQSxpQkFRQztRQVBDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQ3pDLFVBQUMsV0FBd0I7WUFDdkIsS0FBSSxDQUFDLElBQUksR0FBRyxJQUFJLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRCxLQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFJLENBQUMsYUFBYSxDQUFDO1lBQ3pDLEtBQUksQ0FBQyxXQUFXLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELG1DQUFXLEdBQVgsVUFBWSxXQUFtQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEQsQ0FBQzs7Z0JBM0JrQyxXQUFXO2dCQUF1QixXQUFXOztJQU9wRDtRQUEzQixTQUFTLENBQUMsZUFBZSxDQUFDO3dEQUE2QjtJQVI3QyxhQUFhO1FBTHpCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxVQUFVO1lBQ3BCLHNrRkFBb0M7O1NBRXJDLENBQUM7T0FDVyxhQUFhLENBK0J6QjtJQUFELG9CQUFDO0NBQUEsQUEvQkQsSUErQkM7U0EvQlksYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFwaVJlc3BvbnNlIH0gZnJvbSAndGluLWNvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWxvZ3MnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9sb2dzLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9nc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgcHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgICAgdGhpcy5sb2FkTG9ncygpO1xyXG4gIH1cclxuXHJcbiAgaXNQcm9jZXNzaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQFZpZXdDaGlsZChcImxvZ3NQYWdpbmF0b3JcIikgbG9nc1BhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xyXG5cclxuICBfZmlsdGVyVGV4dCA9IFwiXCI7XHJcblxyXG4gIGxvZ3M7XHJcblxyXG4gIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdID0gWyBcImRhdGVMb2dnZWRcIiwgXCJ1c2VySURcIixcImZ1bGxOYW1lXCIsXCJzb3VyY2VcIiwgXCJkZXRhaWxzXCJdO1xyXG5cclxuICBwdWJsaWMgbG9hZExvZ3MoKSB7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkdldExvZyhcImFsbFwiLFwiXCIpLnN1YnNjcmliZShcclxuICAgICAgKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9ncyA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoYXBpUmVzcG9uc2UuZHQpO1xyXG4gICAgICAgIHRoaXMubG9ncy5wYWdpbmF0b3IgPSB0aGlzLmxvZ3NQYWdpbmF0b3I7XHJcbiAgICAgICAgdGhpcy5hcHBseUZpbHRlcih0aGlzLl9maWx0ZXJUZXh0KTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGFwcGx5RmlsdGVyKGZpbHRlclZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMubG9ncy5maWx0ZXIgPSBmaWx0ZXJWYWx1ZS50cmltKCkudG9Mb3dlckNhc2UoKTtcclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { __decorate, __param } from "tslib";
2
+ import { Component, Inject } from '@angular/core';
3
+ import { MatDialog, MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
4
+ var messageDialog = /** @class */ (function () {
5
+ function messageDialog(dialogRef, data) {
6
+ this.dialogRef = dialogRef;
7
+ this.data = data;
8
+ }
9
+ messageDialog.prototype.ngOnInit = function () {
10
+ this.messageType = this.data.type;
11
+ this._messageSubject = this.data.subject;
12
+ this._messageDetails = this.data.details;
13
+ };
14
+ messageDialog.prototype.response = function (resp) {
15
+ this.dialogRef.close(resp);
16
+ };
17
+ messageDialog.ctorParameters = function () { return [
18
+ { type: MatDialogRef },
19
+ { type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
20
+ ]; };
21
+ messageDialog = __decorate([
22
+ Component({
23
+ selector: 'lib-app-message',
24
+ template: "\r\n <h2 mat-dialog-title>\r\n\r\n <mat-label *ngIf=\"messageType=='confirm'\">Confirm</mat-label>\r\n <mat-label *ngIf=\"messageType=='info'\">Information</mat-label>\r\n <mat-label *ngIf=\"messageType=='error'\">Error</mat-label>\r\n\r\n </h2>\r\n\r\n <mat-dialog-content class=\"mat-typography\">\r\n\r\n\r\n <!-- Confirm -->\r\n <p *ngIf=\"messageType=='confirm'\">{{_messageDetails}}</p>\r\n\r\n\r\n <!-- Information -->\r\n <div *ngIf=\"messageType=='info'\">\r\n\r\n <h3>{{_messageSubject}}</h3>\r\n <mat-label>{{_messageDetails}}</mat-label>\r\n\r\n </div>\r\n\r\n\r\n <!-- Error -->\r\n <div *ngIf=\"messageType=='error'\">\r\n\r\n <mat-label>{{_messageDetails}}</mat-label>\r\n\r\n </div>\r\n\r\n\r\n </mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n\r\n <button id=\"btnYes\" mat-stroked-button *ngIf=\"messageType=='confirm'\" (click)=\"response('yes')\" cdkFocusInitial>Yes</button>\r\n\r\n <button id=\"btnNo\" mat-stroked-button *ngIf=\"messageType=='confirm'\" (click)=\"response('no')\" >No</button>\r\n\r\n <button id=\"btnOK\" mat-stroked-button *ngIf=\"messageType=='info' || messageType=='error'\" (click)=\"response('ok')\" cdkFocusInitial>OK</button>\r\n\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n"
25
+ }),
26
+ __param(1, Inject(MAT_DIALOG_DATA))
27
+ ], messageDialog);
28
+ return messageDialog;
29
+ }());
30
+ export { messageDialog };
31
+ ;
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZURpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly90aW4tc3BhLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbWVzc2FnZS9tZXNzYWdlRGlhbG9nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFTcEY7SUFFRSx1QkFBb0IsU0FBc0MsRUFBa0MsSUFBSTtRQUE1RSxjQUFTLEdBQVQsU0FBUyxDQUE2QjtRQUFrQyxTQUFJLEdBQUosSUFBSSxDQUFBO0lBQUksQ0FBQztJQUdyRyxnQ0FBUSxHQUFSO1FBRUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQTtRQUNqQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFFM0MsQ0FBQztJQU1ELGdDQUFRLEdBQVIsVUFBUyxJQUFZO1FBRW5CLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTdCLENBQUM7O2dCQW5COEIsWUFBWTtnREFBa0IsTUFBTSxTQUFDLGVBQWU7O0lBRnhFLGFBQWE7UUFMekIsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQiwwd0NBQTZDO1NBQzlDLENBQUM7UUFJNkQsV0FBQSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUE7T0FGekUsYUFBYSxDQXVCekI7SUFBRCxvQkFBQztDQUFBLEFBdkJELElBdUJDO1NBdkJZLGFBQWE7QUF1QnpCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYXBwLW1lc3NhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXNzYWdlRGlhbG9nLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIG1lc3NhZ2VEaWFsb2cgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPG1lc3NhZ2VEaWFsb2c+LCBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEpIHsgfVxyXG5cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgdGhpcy5tZXNzYWdlVHlwZSA9IHRoaXMuZGF0YS50eXBlXHJcbiAgICB0aGlzLl9tZXNzYWdlU3ViamVjdCA9IHRoaXMuZGF0YS5zdWJqZWN0O1xyXG4gICAgdGhpcy5fbWVzc2FnZURldGFpbHMgPSB0aGlzLmRhdGEuZGV0YWlscztcclxuXHJcbiAgfVxyXG5cclxuICBtZXNzYWdlVHlwZTtcclxuICBfbWVzc2FnZVN1YmplY3Q7XHJcbiAgX21lc3NhZ2VEZXRhaWxzO1xyXG5cclxuICByZXNwb25zZShyZXNwOiBzdHJpbmcpIHtcclxuXHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXNwKTtcclxuXHJcbiAgfVxyXG5cclxufTtcclxuXHJcblxyXG5cclxuIl19
@@ -0,0 +1,51 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ var MoneyComponent = /** @class */ (function () {
4
+ function MoneyComponent() {
5
+ this.readonly = false;
6
+ this.display = "";
7
+ this.value = "";
8
+ this.valueChange = new EventEmitter();
9
+ this.width = "100%";
10
+ this.hint = "";
11
+ this.currency = "$";
12
+ }
13
+ MoneyComponent.prototype.ngOnInit = function () {
14
+ };
15
+ MoneyComponent.prototype.ngOnChanges = function () {
16
+ };
17
+ MoneyComponent.prototype.changed = function () {
18
+ this.valueChange.emit(this.value);
19
+ };
20
+ __decorate([
21
+ Input()
22
+ ], MoneyComponent.prototype, "readonly", void 0);
23
+ __decorate([
24
+ Input()
25
+ ], MoneyComponent.prototype, "display", void 0);
26
+ __decorate([
27
+ Input()
28
+ ], MoneyComponent.prototype, "value", void 0);
29
+ __decorate([
30
+ Output()
31
+ ], MoneyComponent.prototype, "valueChange", void 0);
32
+ __decorate([
33
+ Input()
34
+ ], MoneyComponent.prototype, "width", void 0);
35
+ __decorate([
36
+ Input()
37
+ ], MoneyComponent.prototype, "hint", void 0);
38
+ __decorate([
39
+ Input()
40
+ ], MoneyComponent.prototype, "currency", void 0);
41
+ MoneyComponent = __decorate([
42
+ Component({
43
+ selector: 'spa-money',
44
+ template: "\r\n<div class=\"tin-input-row\">\r\n\r\n<Label>{{currency}}</Label>\r\n<mat-form-field [hintLabel]=\"hint\" style=\"padding-right: 20px;\" [ngStyle]=\"{'width':width}\" >\r\n <mat-label>{{display}}</mat-label>\r\n <!-- <span>$</span> -->\r\n <input matInput class=\"example-right-align\" autocomplete=\"off\" type=\"number\" min=\"0.00\" step=\"0.01\" [(ngModel)]=\"value \" [placeholder]=\"display\" (change)=\"changed()\" [readonly]=\"readonly\" />\r\n<!-- <span matTextSuffix>.00</span> -->\r\n</mat-form-field>\r\n</div>\r\n\r\n\r\n\r\n\r\n",
45
+ styles: ["input.example-right-align{-moz-appearance:textfield}.example-right-align{text-align:right}input.example-right-align::-webkit-inner-spin-button,input.example-right-align::-webkit-outer-spin-button{display:none}.curr{background-color:red}"]
46
+ })
47
+ ], MoneyComponent);
48
+ return MoneyComponent;
49
+ }());
50
+ export { MoneyComponent };
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdGluLXNwYS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL21vbmV5L21vbmV5LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVMvRTtJQUVFO1FBV1MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNWLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsQyxVQUFLLEdBQUcsTUFBTSxDQUFBO1FBQ2QsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGFBQVEsR0FBRyxHQUFHLENBQUM7SUFsQlIsQ0FBQztJQUVqQixpQ0FBUSxHQUFSO0lBR0EsQ0FBQztJQUVELG9DQUFXLEdBQVg7SUFFQSxDQUFDO0lBZUQsZ0NBQU8sR0FBUDtRQUVFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVwQyxDQUFDO0lBakJRO1FBQVIsS0FBSyxFQUFFO29EQUFrQjtJQUNqQjtRQUFSLEtBQUssRUFBRTttREFBYztJQUNiO1FBQVIsS0FBSyxFQUFFO2lEQUFZO0lBQ1Y7UUFBVCxNQUFNLEVBQUU7dURBQWtDO0lBRWxDO1FBQVIsS0FBSyxFQUFFO2lEQUFlO0lBQ2Q7UUFBUixLQUFLLEVBQUU7Z0RBQVc7SUFDVjtRQUFSLEtBQUssRUFBRTtvREFBZ0I7SUFwQmIsY0FBYztRQUwxQixTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsV0FBVztZQUNyQixvakJBQXFDOztTQUV0QyxDQUFDO09BQ1csY0FBYyxDQWlDMUI7SUFBRCxxQkFBQztDQUFBLEFBakNELElBaUNDO1NBakNZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbi8vIGltcG9ydCB7IEN1cnJlbmN5UGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvcmUgfSBmcm9tICd0aW4tY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwYS1tb25leScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21vbmV5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tb25leS5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE1vbmV5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG5cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCkge1xyXG5cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZGlzcGxheSA9IFwiXCI7XHJcbiAgQElucHV0KCkgdmFsdWUgPSBcIlwiO1xyXG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KCkgd2lkdGggPSBcIjEwMCVcIlxyXG4gIEBJbnB1dCgpIGhpbnQgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIGN1cnJlbmN5ID0gXCIkXCI7XHJcblxyXG5cclxuXHJcblxyXG5cclxuICBjaGFuZ2VkKCl7XHJcblxyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,53 @@
1
+ import { __decorate } from "tslib";
2
+ import { AppConfig } from './../../classes/Classes';
3
+ import { Component, Input } from '@angular/core';
4
+ import { Router } from '@angular/router';
5
+ import { AuthService } from '../../services/auth.service';
6
+ var NavMenuComponent = /** @class */ (function () {
7
+ function NavMenuComponent(router, authService) {
8
+ this.router = router;
9
+ this.authService = authService;
10
+ this.isExpanded = false;
11
+ this.appConfig = new AppConfig();
12
+ }
13
+ NavMenuComponent.prototype.ngOnInit = function () {
14
+ var _this = this;
15
+ this.authService.loggedUserFullName.subscribe(function (user) { return _this.loggedUserFullName = user; });
16
+ this.authService.myRoleObserv.subscribe(function (rol) { return _this.myRole = rol; });
17
+ this.authService.loggedinObserv.subscribe(function (obj) { return _this.loggedin = obj; });
18
+ };
19
+ NavMenuComponent.prototype.collapse = function () {
20
+ this.isExpanded = false;
21
+ };
22
+ NavMenuComponent.prototype.toggle = function () {
23
+ this.isExpanded = !this.isExpanded;
24
+ };
25
+ // logoff() {
26
+ // // this.authService.updateloggedin(false);
27
+ // // this.authService.updateRole(new Role());
28
+ // this.router.navigate(["login"]);
29
+ // // this.storageService.clear();
30
+ // }
31
+ NavMenuComponent.prototype.redirectTo = function (link) {
32
+ if (link != "") {
33
+ this.router.navigate([link]);
34
+ }
35
+ };
36
+ NavMenuComponent.ctorParameters = function () { return [
37
+ { type: Router },
38
+ { type: AuthService }
39
+ ]; };
40
+ __decorate([
41
+ Input()
42
+ ], NavMenuComponent.prototype, "appConfig", void 0);
43
+ NavMenuComponent = __decorate([
44
+ Component({
45
+ selector: 'spa-nav-menu',
46
+ template: "<header *ngIf=\"loggedin\">\r\n <nav class=\"toolbar navbar navbar-expand-sm navbar-toggleable-sm navbar-light border-bottom box-shadow mb-3 \" style=\"padding-right: 10px;\">\r\n <div class=\"container-fluid\" style=\"padding-right: 0px;\">\r\n <!--<a class=\"navbar-brand\" [routerLink]=\"['/']\">Orbit</a>-->\r\n\r\n <img *ngIf=\"appConfig.logo!=''\" [src]=\"appConfig.logo\" style=\"height: 50px; margin-right: 2em\" />\r\n\r\n\r\n <div style=\"font-size: 20px;\">\r\n {{appConfig.appName}}\r\n </div>\r\n\r\n\r\n <button class=\"navbar-toggler\"\r\n type=\"button\"\r\n data-toggle=\"collapse\"\r\n data-target=\".navbar-collapse\"\r\n aria-label=\"Toggle navigation\"\r\n [attr.aria-expanded]=\"isExpanded\"\r\n (click)=\"toggle()\">\r\n <span class=\"navbar-toggler-icon\"></span>\r\n </button>\r\n\r\n <div *ngIf=\"myRole\" class=\"navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse stack-top\" style=\"margin-right: 0px;\" [ngClass]=\"{ show: isExpanded }\" >\r\n\r\n <button mat-icon-button (click)=\"redirectTo('login')\"> <mat-icon>logout</mat-icon> </button>\r\n\r\n <button id=\"btnUser\" mat-button [matMenuTriggerFor]=\"profileMenu\" style=\"margin-left:2em\"><mat-icon>account_circle</mat-icon> &nbsp;{{loggedUserFullName}}</button>\r\n\r\n <mat-menu #profileMenu=\"matMenu\">\r\n <button id=\"btnProfile\" mat-menu-item (click)=\"redirectTo('home/user/profile')\" >Profile</button>\r\n <button id=\"btnLogOff\" mat-menu-item (click)=\"redirectTo('login')\">Log Off</button>\r\n </mat-menu>\r\n\r\n <div *ngFor=\"let item of appConfig.capItems\">\r\n\r\n <!-- Menu Item -->\r\n <button id=\"btnMenu\" *ngIf=\"myRole[item.name] && !item.capSubItems && item.showMenu\" mat-button (click)=\"redirectTo(item.link)\">{{item.display}}</button>\r\n\r\n <!-- Menu Item with Sub items ignored -->\r\n <button id=\"btnMenu\" *ngIf=\"myRole[item.name] && item.capSubItems && item.showMenu && item.ignoreSubsDisplay\" mat-button (click)=\"redirectTo(item.link)\">{{item.display}}</button>\r\n\r\n <!-- Menu Item with Sub items to display-->\r\n <button id=\"btnMenu\" *ngIf=\"myRole[item.name] && item.capSubItems && item.showMenu && !item.ignoreSubsDisplay\" mat-button [matMenuTriggerFor]=\"adminMenu\">{{item.display}}</button>\r\n\r\n\r\n <!-- Sub Menu Items -->\r\n <mat-menu #adminMenu=\"matMenu\">\r\n\r\n <div *ngFor=\"let subItem of item.capSubItems\">\r\n\r\n <button *ngIf=\"myRole[subItem.name] && subItem.showMenu\" mat-menu-item (click)=\"redirectTo(subItem.link)\">{{subItem.display}}</button>\r\n\r\n </div>\r\n\r\n </mat-menu>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </nav>\r\n</header>\r\n",
47
+ styles: ["a.navbar-brand{white-space:normal;text-align:center;word-break:break-all}html{font-size:14px}@media (min-width:768px){html{font-size:16px}}.box-shadow{box-shadow:0 .25rem .75rem rgba(0,0,0,.05)}.toolbar{height:60px;display:flex;align-items:center;background-color:#03a;color:#fff;font-weight:600}.stack-top{z-index:9;margin:20px}"]
48
+ })
49
+ ], NavMenuComponent);
50
+ return NavMenuComponent;
51
+ }());
52
+ export { NavMenuComponent };
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdGluLXNwYS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL25hdi1tZW51L25hdi1tZW51LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUcsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFPM0Q7SUFFRSwwQkFBbUIsTUFBYyxFQUFTLFdBQXdCO1FBQS9DLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQWFsRSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRVYsY0FBUyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7SUFmaUMsQ0FBQztJQUV2RSxtQ0FBUSxHQUFSO1FBQUEsaUJBTUM7UUFKQyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLEtBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEVBQTlCLENBQThCLENBQUMsQ0FBQTtRQUNyRixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxLQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBakIsQ0FBaUIsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLEtBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFuQixDQUFtQixDQUFDLENBQUE7SUFFdkUsQ0FBQztJQVdELG1DQUFRLEdBQVI7UUFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsaUNBQU0sR0FBTjtRQUNFLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxhQUFhO0lBQ2IsK0NBQStDO0lBQy9DLGdEQUFnRDtJQUNoRCxxQ0FBcUM7SUFDckMsb0NBQW9DO0lBQ3BDLElBQUk7SUFFSixxQ0FBVSxHQUFWLFVBQVcsSUFBWTtRQUVyQixJQUFJLElBQUksSUFBRSxFQUFFLEVBQUM7WUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDOUI7SUFFSCxDQUFDOztnQkF4QzBCLE1BQU07Z0JBQXNCLFdBQVc7O0lBZXpEO1FBQVIsS0FBSyxFQUFFO3VEQUE2QjtJQWpCMUIsZ0JBQWdCO1FBTDVCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxjQUFjO1lBQ3hCLDA3RkFBd0M7O1NBRXpDLENBQUM7T0FDVyxnQkFBZ0IsQ0FnRDVCO0lBQUQsdUJBQUM7Q0FBQSxBQWhERCxJQWdEQztTQWhEWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvZGF0YS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXBwQ29uZmlnIH0gZnJvbSAnLi8uLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgIEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLW5hdi1tZW51JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbmF2LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL25hdi1tZW51LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmF2TWVudUNvbXBvbmVudCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByb3V0ZXI6IFJvdXRlciwgcHVibGljIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG5cclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nZ2VkVXNlckZ1bGxOYW1lLnN1YnNjcmliZSh1c2VyID0+IHRoaXMubG9nZ2VkVXNlckZ1bGxOYW1lID0gdXNlcilcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubXlSb2xlT2JzZXJ2LnN1YnNjcmliZShyb2wgPT4gdGhpcy5teVJvbGUgPSByb2wpO1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dnZWRpbk9ic2Vydi5zdWJzY3JpYmUob2JqID0+IHRoaXMubG9nZ2VkaW4gPSBvYmopXHJcblxyXG4gIH1cclxuXHJcbiAgbXlSb2xlO1xyXG4gIGxvZ2dlZFVzZXJGdWxsTmFtZTogc3RyaW5nO1xyXG4gIGxvZ2dlZGluOiBib29sZWFuO1xyXG4gIGlzRXhwYW5kZWQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgYXBwQ29uZmlnID0gbmV3IEFwcENvbmZpZygpO1xyXG5cclxuXHJcblxyXG4gIGNvbGxhcHNlKCkge1xyXG4gICAgdGhpcy5pc0V4cGFuZGVkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICB0b2dnbGUoKSB7XHJcbiAgICB0aGlzLmlzRXhwYW5kZWQgPSAhdGhpcy5pc0V4cGFuZGVkO1xyXG4gIH1cclxuXHJcbiAgLy8gbG9nb2ZmKCkge1xyXG4gIC8vICAgLy8gdGhpcy5hdXRoU2VydmljZS51cGRhdGVsb2dnZWRpbihmYWxzZSk7XHJcbiAgLy8gICAvLyB0aGlzLmF1dGhTZXJ2aWNlLnVwZGF0ZVJvbGUobmV3IFJvbGUoKSk7XHJcbiAgLy8gICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXCJsb2dpblwiXSk7XHJcbiAgLy8gICAvLyB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmNsZWFyKCk7XHJcbiAgLy8gfVxyXG5cclxuICByZWRpcmVjdFRvKGxpbms6IHN0cmluZyl7XHJcblxyXG4gICAgaWYgKGxpbmshPVwiXCIpe1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbbGlua10pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxuXHJcblxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,63 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ var OptionComponent = /** @class */ (function () {
4
+ function OptionComponent() {
5
+ this.optionValue = "";
6
+ this.optionDisplay = "";
7
+ this.readonly = false;
8
+ this.value = "";
9
+ this.display = "";
10
+ this.show = false;
11
+ this.valueChange = new EventEmitter();
12
+ this.enterPress = new EventEmitter();
13
+ }
14
+ OptionComponent.prototype.ngOnInit = function () {
15
+ };
16
+ OptionComponent.prototype.changed = function () {
17
+ this.valueChange.emit(this.value);
18
+ };
19
+ OptionComponent.prototype.enterPressed = function () {
20
+ this.valueChange.emit();
21
+ };
22
+ OptionComponent.prototype.resetValue = function () {
23
+ this.value = "";
24
+ this.changed();
25
+ };
26
+ __decorate([
27
+ Input()
28
+ ], OptionComponent.prototype, "options", void 0);
29
+ __decorate([
30
+ Input()
31
+ ], OptionComponent.prototype, "optionValue", void 0);
32
+ __decorate([
33
+ Input()
34
+ ], OptionComponent.prototype, "optionDisplay", void 0);
35
+ __decorate([
36
+ Input()
37
+ ], OptionComponent.prototype, "readonly", void 0);
38
+ __decorate([
39
+ Input()
40
+ ], OptionComponent.prototype, "value", void 0);
41
+ __decorate([
42
+ Input()
43
+ ], OptionComponent.prototype, "display", void 0);
44
+ __decorate([
45
+ Input()
46
+ ], OptionComponent.prototype, "show", void 0);
47
+ __decorate([
48
+ Output()
49
+ ], OptionComponent.prototype, "valueChange", void 0);
50
+ __decorate([
51
+ Output()
52
+ ], OptionComponent.prototype, "enterPress", void 0);
53
+ OptionComponent = __decorate([
54
+ Component({
55
+ selector: 'spa-option',
56
+ template: "\r\n<mat-checkbox color=\"primary\" style=\"margin-right:5px\" [(ngModel)]=\"show\" (change)=\"resetValue()\" labelPosition=\"after\">{{display}}</mat-checkbox>\r\n\r\n<mat-form-field style=\"margin-right:10px;width: 0px;\" >\r\n<input matInput />\r\n</mat-form-field>\r\n\r\n<mat-form-field style=\"margin-right:30px\" *ngIf=\"show && !options\">\r\n<input matInput [(ngModel)]=\"value\" width=\"100\" (change)=\"changed()\" (keyup.enter)=\"changed()\" [placeholder]=\"'Enter ' + display\" autocomplete=\"off\" />\r\n</mat-form-field>\r\n\r\n\r\n<mat-form-field style=\"margin-right: 20px;\" width=\"100\" *ngIf=\"show && options\">\r\n <mat-label>{{display}}</mat-label>\r\n <mat-select [(value)]=\"value\" (selectionChange)=\"changed()\" [disabled]=\"readonly\" >\r\n <mat-option *ngFor=\"let row of options\" [value]=\"row[optionValue]\">\r\n {{row[optionDisplay]}}\r\n </mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n\r\n<!-- <spa-text *ngIf=\"show\" style=\"margin-right:30px\" [display]=\"'Enter ' + display\" (enterPress)=\"enterPressed()\" (valueChange)=\"changed($event.target.value)\" width=\"100\" [required]=\"false\" [(value)]=\"value\" ></spa-text> -->\r\n\r\n",
57
+ styles: [""]
58
+ })
59
+ ], OptionComponent);
60
+ return OptionComponent;
61
+ }());
62
+ export { OptionComponent };
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3Rpbi1zcGEvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9vcHRpb24vb3B0aW9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8vRTtJQUVFO1FBUVMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVqQixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLFNBQUksR0FBWSxLQUFLLENBQUM7UUFHckIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBbEIxQixDQUFDO0lBRWpCLGtDQUFRLEdBQVI7SUFDQSxDQUFDO0lBaUJELGlDQUFPLEdBQVA7UUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELHNDQUFZLEdBQVo7UUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxvQ0FBVSxHQUFWO1FBQ0UsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBRWpCLENBQUM7SUF6QlE7UUFBUixLQUFLLEVBQUU7b0RBQWM7SUFDYjtRQUFSLEtBQUssRUFBRTt3REFBa0I7SUFDakI7UUFBUixLQUFLLEVBQUU7MERBQW9CO0lBQ25CO1FBQVIsS0FBSyxFQUFFO3FEQUFrQjtJQUVqQjtRQUFSLEtBQUssRUFBRTtrREFBWTtJQUNYO1FBQVIsS0FBSyxFQUFFO29EQUFjO0lBQ2I7UUFBUixLQUFLLEVBQUU7aURBQXVCO0lBR3JCO1FBQVQsTUFBTSxFQUFFO3dEQUFrQztJQUNqQztRQUFULE1BQU0sRUFBRTt1REFBaUM7SUFwQi9CLGVBQWU7UUFMM0IsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLFlBQVk7WUFDdEIseXJDQUFzQzs7U0FFdkMsQ0FBQztPQUNXLGVBQWUsQ0FvQzNCO0lBQUQsc0JBQUM7Q0FBQSxBQXBDRCxJQW9DQztTQXBDWSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtb3B0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vb3B0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9vcHRpb24uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcHRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgQElucHV0KCkgb3B0aW9uczogYW55O1xyXG4gIEBJbnB1dCgpIG9wdGlvblZhbHVlID0gXCJcIjtcclxuICBASW5wdXQoKSBvcHRpb25EaXNwbGF5ID0gXCJcIjtcclxuICBASW5wdXQoKSByZWFkb25seSA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSB2YWx1ZSA9IFwiXCI7XHJcbiAgQElucHV0KCkgZGlzcGxheSA9IFwiXCI7XHJcbiAgQElucHV0KCkgc2hvdzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBlbnRlclByZXNzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjaGFuZ2VkKCkge1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgZW50ZXJQcmVzc2VkKCl7XHJcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0VmFsdWUoKXtcclxuICAgIHRoaXMudmFsdWUgPSBcIlwiO1xyXG4gICAgdGhpcy5jaGFuZ2VkKCk7XHJcblxyXG4gIH1cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,112 @@
1
+ import { __decorate } from "tslib";
2
+ import { AuthService } from './../../services/auth.service';
3
+ import { HttpService } from 'tin-core';
4
+ import { MessageService } from './../../services/message.service';
5
+ import { DataService } from './../../services/data.service';
6
+ import { Component, Input } from '@angular/core';
7
+ import { AppConfig, Profile } from '../../classes/Classes';
8
+ import { Router } from '@angular/router';
9
+ var ProfileComponent = /** @class */ (function () {
10
+ function ProfileComponent(dataService, messageService, httpService, router, authService) {
11
+ this.dataService = dataService;
12
+ this.messageService = messageService;
13
+ this.httpService = httpService;
14
+ this.router = router;
15
+ this.authService = authService;
16
+ this.appConfig = new AppConfig();
17
+ this.selfProfile = false;
18
+ this.profile = new Profile();
19
+ }
20
+ ProfileComponent.prototype.ngOnInit = function () {
21
+ this.myRole = this.authService.currentRoleSource.value;
22
+ // this.loadRoles();
23
+ if (this.dataService.tmpProfileUserID == "") {
24
+ this.loadProfile(this.authService.currentUser);
25
+ }
26
+ else {
27
+ this.loadProfile(this.dataService.tmpProfileUserID);
28
+ this.dataService.tmpProfileUserID = "";
29
+ }
30
+ // console.log(this.myRole);
31
+ };
32
+ ProfileComponent.prototype.loadProfile = function (userID) {
33
+ var _this = this;
34
+ var action = "all";
35
+ if (this.appConfig.approvals && this.appConfig.employees) {
36
+ action = "set";
37
+ }
38
+ if (this.appConfig.approvals && !this.appConfig.employees) {
39
+ action = "setapp";
40
+ }
41
+ if (!this.appConfig.approvals && this.appConfig.employees) {
42
+ action = "setemp";
43
+ }
44
+ this.dataService.GetProfile(action, userID).subscribe(function (apiResponse) {
45
+ _this.profile = apiResponse.ds.dtProfiles[0];
46
+ if (_this.profile.userID.toLocaleLowerCase() == _this.authService.currentUser.toLocaleLowerCase()) {
47
+ _this.selfProfile = true;
48
+ }
49
+ //get more details
50
+ _this.roles = apiResponse.ds.dtRoles;
51
+ _this.approvalRoles = apiResponse.ds.dtApprovalRoles;
52
+ _this.employees = apiResponse.ds.dtEmployees;
53
+ }, function (error) {
54
+ _this.isProcessing = false;
55
+ _this.messageService.toast(_this.httpService.Error(error));
56
+ });
57
+ };
58
+ ProfileComponent.prototype.loadRoles = function () {
59
+ var _this = this;
60
+ this.dataService.GetRole("all", "").subscribe(function (apiResponse) {
61
+ _this.roles = apiResponse.dt;
62
+ }, function (error) {
63
+ _this.isProcessing = false;
64
+ _this.messageService.toast(_this.httpService.Error(error));
65
+ });
66
+ };
67
+ ProfileComponent.prototype.changePassword = function () {
68
+ this.dataService.tmpProfileUserID = this.profile.userID;
69
+ this.router.navigate(["home/user/change-password"]);
70
+ };
71
+ ProfileComponent.prototype.gotoUsers = function () {
72
+ this.router.navigate(["home/admin/users"]);
73
+ };
74
+ ProfileComponent.prototype.update = function () {
75
+ };
76
+ ProfileComponent.prototype.updateProfile = function () {
77
+ var _this = this;
78
+ this.isProcessing = true;
79
+ this.dataService.UpdateProfile(this.profile, "edit").subscribe(function (apiResponse) {
80
+ _this.isProcessing = false;
81
+ if (apiResponse.message == "success") {
82
+ _this.messageService.toast("Profile Updated");
83
+ }
84
+ else {
85
+ _this.messageService.toast("Error: " + apiResponse.message);
86
+ }
87
+ }, function (error) {
88
+ _this.messageService.toast("Connection failed ");
89
+ _this.isProcessing = false;
90
+ });
91
+ };
92
+ ProfileComponent.ctorParameters = function () { return [
93
+ { type: DataService },
94
+ { type: MessageService },
95
+ { type: HttpService },
96
+ { type: Router },
97
+ { type: AuthService }
98
+ ]; };
99
+ __decorate([
100
+ Input()
101
+ ], ProfileComponent.prototype, "appConfig", void 0);
102
+ ProfileComponent = __decorate([
103
+ Component({
104
+ selector: 'spa-profile',
105
+ template: "\r\n\r\n<div class=\"container\">\r\n\r\n <div class=\"row mt-3\" style=\"font-size:14px;\">\r\n\r\n\r\n <div class=\"col-2 mt-3 \">\r\n\r\n <div class=\"tin-input\">\r\n\r\n\r\n <div class=\"col\">\r\n <mat-icon style=\"font-size: 70px;\">account_circle</mat-icon>\r\n <!-- <img style=\"height: 40px\"> -->\r\n </div>\r\n\r\n <div class=\"col\">\r\n <mat-label id=\"lblUserID\" style=\"font-size: 14px;\">{{profile.userID}}</mat-label>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n\r\n <div class=\"col-8 mt-3\">\r\n\r\n <div class=\"tin-input\" style=\"width: 70%;\">\r\n\r\n <div class=\"tin-input-row\">\r\n\r\n\r\n <div class=\"col\">\r\n <mat-form-field style=\"width:200px\">\r\n <mat-label>FirstName</mat-label>\r\n <input id=\"txtFirstName\" matInput autocomplete=\"off\" [(ngModel)]=\"profile.firstName\" placeholder=\"Enter FirstName\" [readOnly]=\"selfProfile\"/>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"col\">\r\n <mat-form-field style=\"width:200px\">\r\n <mat-label>LastName</mat-label>\r\n <input id=\"txtLastName\" matInput autocomplete=\"off\" [(ngModel)]=\"profile.lastName\" placeholder=\"Enter LastName \" [readOnly]=\"selfProfile\" />\r\n </mat-form-field>\r\n </div>\r\n\r\n </div>\r\n\r\n <div class=\"col\">\r\n <mat-form-field style=\"width:300px\">\r\n <mat-label>Authentication</mat-label>\r\n <input id=\"txtAuth\" matInput autocomplete=\"off\" [(ngModel)]=\"profile.authType\" placeholder=\"Authentication\" readonly/>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"col\">\r\n <mat-form-field style=\"width:300px\">\r\n <mat-label>Email</mat-label>\r\n <input id=\"txtEmail\" matInput autocomplete=\"off\" [(ngModel)]=\"profile.email\" placeholder=\"Enter Email\" [readOnly]=\"selfProfile\"/>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"col\">\r\n\r\n <mat-form-field style=\"width:300px\">\r\n <mat-label>Role</mat-label>\r\n <mat-select id=\"cboRole\" [(value)]=\"profile.roleID\" [disabled]=\"selfProfile\">\r\n <mat-option *ngFor=\"let row of roles\" [value]=\"row.roleID\">\r\n {{row.roleName}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div class=\"col\" *ngIf=\"appConfig.approvals\">\r\n\r\n <mat-form-field style=\"width:300px\">\r\n <mat-label>Approval Role</mat-label>\r\n <mat-select id=\"cboApprovalRole\" [(value)]=\"profile.arID\" [disabled]=\"selfProfile\">\r\n <mat-option *ngFor=\"let row of approvalRoles\" [value]=\"row.arID\">\r\n {{row.arName}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n </div>\r\n\r\n <div class=\"col\" *ngIf=\"appConfig.employees\">\r\n\r\n <mat-form-field style=\"width:300px\">\r\n <mat-label>Employee Profile</mat-label>\r\n <mat-select id=\"cboEmployee\" [(value)]=\"profile.empID\" [disabled]=\"selfProfile\">\r\n <mat-option *ngFor=\"let row of employees\" [value]=\"row.empID\">\r\n {{row.firstName}} {{row.lastName}}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n\r\n\r\n <div class=\"tin-input-row mt-2\">\r\n <button id=\"btnUpdate\" mat-raised-button color=\"primary\" *ngIf=\"!selfProfile\" [disabled]=\"isProcessing\" (click)=\"updateProfile()\" >Update Profile</button>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n <div class=\"col-2 mt-4\">\r\n\r\n <a mat-button id=\"lnkUserManager\" style=\"margin-left: 1em\" *ngIf=\"!selfProfile\" (click)=\"gotoUsers()\" >User Manager</a>\r\n <a mat-button id=\"lnkChangePassword\" style=\"margin-left: 1em\" *ngIf=\"(selfProfile || myRole[dataService.capUsers.name]) && profile.authType=='local'\" (click)=\"changePassword()\" >Change Password</a>\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n</div>\r\n\r\n\r\n\r\n",
106
+ styles: [""]
107
+ })
108
+ ], ProfileComponent);
109
+ return ProfileComponent;
110
+ }());
111
+ export { ProfileComponent };
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly90aW4tc3BhLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcHJvZmlsZS9wcm9maWxlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU96QztJQUdFLDBCQUFtQixXQUF3QixFQUFVLGNBQThCLEVBQVUsV0FBd0IsRUFBVSxNQUFjLEVBQVUsV0FBd0I7UUFBNUosZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQXVCdEssY0FBUyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFHckMsZ0JBQVcsR0FBYSxLQUFLLENBQUM7UUFFOUIsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUE1QjJKLENBQUM7SUFFcEwsbUNBQVEsR0FBUjtRQUVFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUE7UUFFdEQsb0JBQW9CO1FBRXBCLElBQUksSUFBSSxDQUFDLFdB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cnZpY2VzL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAndGluLWNvcmUnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YVNlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcGlSZXNwb25zZSB9IGZyb20gJ3Rpbi1jb3JlJztcclxuaW1wb3J0IHsgQXBwQ29uZmlnLCBQcm9maWxlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLXByb2ZpbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wcm9maWxlLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvZmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaXNQcm9jZXNzaW5nOiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLCBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSwgcHJpdmF0ZSBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgdGhpcy5teVJvbGUgPSB0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRSb2xlU291cmNlLnZhbHVlXHJcblxyXG4gICAgLy8gdGhpcy5sb2FkUm9sZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5kYXRhU2VydmljZS50bXBQcm9maWxlVXNlcklEPT1cIlwiKXtcclxuICAgICAgdGhpcy5sb2FkUHJvZmlsZSh0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyKTtcclxuXHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5sb2FkUHJvZmlsZSh0aGlzLmRhdGFTZXJ2aWNlLnRtcFByb2ZpbGVVc2VySUQpO1xyXG4gICAgICB0aGlzLmRhdGFTZXJ2aWNlLnRtcFByb2ZpbGVVc2VySUQgPSBcIlwiO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBjb25zb2xlLmxvZyh0aGlzLm15Um9sZSk7XHJcblxyXG5cclxuICB9XHJcblxyXG4gIG15Um9sZTtcclxuICBASW5wdXQoKSBhcHBDb25maWcgPSBuZXcgQXBwQ29uZmlnKCk7XHJcblxyXG5cclxuICBzZWxmUHJvZmlsZSA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHJvZmlsZSA9IG5ldyBQcm9maWxlKCk7XHJcbiAgcm9sZXM7XHJcbiAgYXBwcm92YWxSb2xlcztcclxuICBlbXBsb3llZXM7XHJcblxyXG5cclxuICBsb2FkUHJvZmlsZSh1c2VySUQ6IHN0cmluZyl7XHJcblxyXG4gICAgbGV0IGFjdGlvbiA9IFwiYWxsXCI7XHJcblxyXG4gICAgaWYgKHRoaXMuYXBwQ29uZmlnLmFwcHJvdmFscyAmJiB0aGlzLmFwcENvbmZpZy5lbXBsb3llZXMpe1xyXG4gICAgICBhY3Rpb24gPSBcInNldFwiXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuYXBwQ29uZmlnLmFwcHJvdmFscyAmJiAhdGhpcy5hcHBDb25maWcuZW1wbG95ZWVzKXtcclxuICAgICAgYWN0aW9uID0gXCJzZXRhcHBcIlxyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5hcHBDb25maWcuYXBwcm92YWxzICYmIHRoaXMuYXBwQ29uZmlnLmVtcGxveWVlcyl7XHJcbiAgICAgIGFjdGlvbiA9IFwic2V0ZW1wXCJcclxuICAgIH1cclxuXHJcblxyXG4gICAgdGhpcy5kYXRhU2VydmljZS5HZXRQcm9maWxlKGFjdGlvbiwgdXNlcklEKS5zdWJzY3JpYmUoXHJcbiAgICAgIChhcGlSZXNwb25zZTogQXBpUmVzcG9uc2UpID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy5wcm9maWxlID0gYXBpUmVzcG9uc2UuZHMuZHRQcm9maWxlc1swXTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMucHJvZmlsZS51c2VySUQudG9Mb2NhbGVMb3dlckNhc2UoKSA9PSB0aGlzLmF1dGhTZXJ2aWNlLmN1cnJlbnRVc2VyLnRvTG9jYWxlTG93ZXJDYXNlKCkpe1xyXG4gICAgICAgICAgdGhpcy5zZWxmUHJvZmlsZSA9IHRydWVcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vZ2V0IG1vcmUgZGV0YWlsc1xyXG4gICAgICAgIHRoaXMucm9sZXMgPSBhcGlSZXNwb25zZS5kcy5kdFJvbGVzO1xyXG4gICAgICAgIHRoaXMuYXBwcm92YWxSb2xlcyA9IGFwaVJlc3BvbnNlLmRzLmR0QXBwcm92YWxSb2xlcztcclxuICAgICAgICB0aGlzLmVtcGxveWVlcyA9IGFwaVJlc3BvbnNlLmRzLmR0RW1wbG95ZWVzO1xyXG5cclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdCh0aGlzLmh0dHBTZXJ2aWNlLkVycm9yKGVycm9yKSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG5cclxuXHJcbiAgfVxyXG5cclxuICBsb2FkUm9sZXMoKXtcclxuXHJcblxyXG4gICAgdGhpcy5kYXRhU2VydmljZS5HZXRSb2xlKFwiYWxsXCIsIFwiXCIpLnN1YnNjcmliZShcclxuICAgICAgKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgICB0aGlzLnJvbGVzID0gYXBpUmVzcG9uc2UuZHQ7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdCh0aGlzLmh0dHBTZXJ2aWNlLkVycm9yKGVycm9yKSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG5cclxuXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIGNoYW5nZVBhc3N3b3JkKCl7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLnRtcFByb2ZpbGVVc2VySUQgPSB0aGlzLnByb2ZpbGUudXNlcklEO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiaG9tZS91c2VyL2NoYW5nZS1wYXNzd29yZFwiXSk7XHJcbiAgfVxyXG5cclxuICBnb3RvVXNlcnMoKXtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcImhvbWUvYWRtaW4vdXNlcnNcIl0pO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlKCl7XHJcblxyXG4gIH1cclxuXHJcbiAgdXBkYXRlUHJvZmlsZSgpe1xyXG4gICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5VcGRhdGVQcm9maWxlKHRoaXMucHJvZmlsZSwgXCJlZGl0XCIpLnN1YnNjcmliZShcclxuICAgICAgKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGlmIChhcGlSZXNwb25zZS5tZXNzYWdlID09IFwic3VjY2Vzc1wiKSB7XHJcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiUHJvZmlsZSBVcGRhdGVkXCIpO1xyXG5cclxuXHJcblxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UubWVzc2FnZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiQ29ubmVjdGlvbiBmYWlsZWQgXCIpO1xyXG4gICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgIH1cclxuXHJcblxyXG5cclxuXHJcbn1cclxuIl19
@@ -0,0 +1,18 @@
1
+ import { __decorate } from "tslib";
2
+ import { Component } from '@angular/core';
3
+ var ProfilesComponent = /** @class */ (function () {
4
+ function ProfilesComponent() {
5
+ }
6
+ ProfilesComponent.prototype.ngOnInit = function () {
7
+ };
8
+ ProfilesComponent = __decorate([
9
+ Component({
10
+ selector: 'spa-profiles',
11
+ template: "<h6></h6>\r\n<hr>\r\n",
12
+ styles: [""]
13
+ })
14
+ ], ProfilesComponent);
15
+ return ProfilesComponent;
16
+ }());
17
+ export { ProfilesComponent };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdGluLXNwYS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3Byb2ZpbGVzL3Byb2ZpbGVzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQU9sRDtJQUVFO0lBQWdCLENBQUM7SUFFakIsb0NBQVEsR0FBUjtJQUNBLENBQUM7SUFMVSxpQkFBaUI7UUFMN0IsU0FBUyxDQUFDO1lBQ1QsUUFBUSxFQUFFLGNBQWM7WUFDeEIsaUNBQXdDOztTQUV6QyxDQUFDO09BQ1csaUJBQWlCLENBTzdCO0lBQUQsd0JBQUM7Q0FBQSxBQVBELElBT0M7U0FQWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtcHJvZmlsZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9maWxlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZmlsZXMuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9maWxlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcbn1cclxuIl19