@chat21/chat21-ionic 2.0.13 → 3.0.5-9.2

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 (716) hide show
  1. package/.github/workflows/docker-community-push-latest.yml +22 -0
  2. package/.github/workflows/docker-image-tag-community-tag-push.yml +21 -0
  3. package/CHANGELOG.md +637 -212
  4. package/Dockerfile +1 -2
  5. package/LICENSE +21 -661
  6. package/README.md +40 -9
  7. package/angular.json +230 -0
  8. package/browserslist +12 -0
  9. package/config.xml +60 -47
  10. package/deploy_pre.sh +14 -12
  11. package/deploy_prod.sh +26 -6
  12. package/env.sample +28 -9
  13. package/ionic.config.json +2 -2
  14. package/karma.conf.js +31 -0
  15. package/nginx.conf +1 -1
  16. package/package.json +91 -105
  17. package/publish_pre.sh +33 -0
  18. package/publish_prod.sh +33 -0
  19. package/resources/Android/icon/drawable-hdpi-icon.png +0 -0
  20. package/resources/Android/icon/drawable-ldpi-icon.png +0 -0
  21. package/resources/Android/icon/drawable-mdpi-icon.png +0 -0
  22. package/resources/Android/icon/drawable-xhdpi-icon.png +0 -0
  23. package/resources/Android/icon/drawable-xxhdpi-icon.png +0 -0
  24. package/resources/Android/icon/drawable-xxxhdpi-icon.png +0 -0
  25. package/resources/Android/icon.png +0 -0
  26. package/resources/Android/splash/drawable-land-hdpi-screen.png +0 -0
  27. package/resources/Android/splash/drawable-land-ldpi-screen.png +0 -0
  28. package/resources/Android/splash/drawable-land-mdpi-screen.png +0 -0
  29. package/resources/Android/splash/drawable-land-xhdpi-screen.png +0 -0
  30. package/resources/Android/splash/drawable-land-xxhdpi-screen.png +0 -0
  31. package/resources/Android/splash/drawable-land-xxxhdpi-screen.png +0 -0
  32. package/resources/Android/splash/drawable-port-hdpi-screen.png +0 -0
  33. package/resources/Android/splash/drawable-port-ldpi-screen.png +0 -0
  34. package/resources/Android/splash/drawable-port-mdpi-screen.png +0 -0
  35. package/resources/Android/splash/drawable-port-xhdpi-screen.png +0 -0
  36. package/resources/Android/splash/drawable-port-xxhdpi-screen.png +0 -0
  37. package/resources/Android/splash/drawable-port-xxxhdpi-screen.png +0 -0
  38. package/resources/Android/splash.png +0 -0
  39. package/src/app/app-routing.module.ts +90 -0
  40. package/src/app/app.component.html +26 -0
  41. package/src/app/app.component.scss +11 -0
  42. package/src/app/app.component.spec.ts +47 -0
  43. package/src/app/app.component.ts +1154 -128
  44. package/src/app/app.module.ts +314 -135
  45. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.html +143 -0
  46. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.scss +335 -0
  47. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.spec.ts +179 -0
  48. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.ts +303 -0
  49. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.html +149 -0
  50. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.scss +199 -0
  51. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.spec.ts +24 -0
  52. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.ts +97 -0
  53. package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.html +17 -0
  54. package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.scss +83 -0
  55. package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.spec.ts +27 -0
  56. package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.ts +43 -0
  57. package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.html +76 -0
  58. package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.scss +51 -0
  59. package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.spec.ts +84 -0
  60. package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.ts +215 -0
  61. package/src/app/chatlib/conversation-detail/message/buttons/action-button/action-button.component.html +3 -0
  62. package/src/app/chatlib/conversation-detail/message/buttons/action-button/action-button.component.scss +83 -0
  63. package/src/app/chatlib/conversation-detail/message/buttons/action-button/action-button.component.spec.ts +25 -0
  64. package/src/app/chatlib/conversation-detail/message/buttons/action-button/action-button.component.ts +37 -0
  65. package/src/app/chatlib/conversation-detail/message/buttons/link-button/link-button.component.html +24 -0
  66. package/src/app/chatlib/conversation-detail/message/buttons/link-button/link-button.component.scss +61 -0
  67. package/src/app/chatlib/conversation-detail/message/buttons/link-button/link-button.component.spec.ts +25 -0
  68. package/src/app/chatlib/conversation-detail/message/buttons/link-button/link-button.component.ts +30 -0
  69. package/src/app/chatlib/conversation-detail/message/buttons/text-button/text-button.component.html +3 -0
  70. package/src/app/chatlib/conversation-detail/message/buttons/text-button/text-button.component.scss +47 -0
  71. package/src/app/chatlib/conversation-detail/message/buttons/text-button/text-button.component.spec.ts +25 -0
  72. package/src/app/chatlib/conversation-detail/message/buttons/text-button/text-button.component.ts +29 -0
  73. package/src/app/chatlib/conversation-detail/message/frame/frame.component.html +3 -0
  74. package/{bin/chat21-ionic → src/app/chatlib/conversation-detail/message/frame/frame.component.scss} +0 -0
  75. package/src/app/chatlib/conversation-detail/message/frame/frame.component.spec.ts +25 -0
  76. package/src/app/chatlib/conversation-detail/message/frame/frame.component.ts +33 -0
  77. package/src/app/chatlib/conversation-detail/message/image/image.component.html +10 -0
  78. package/src/app/chatlib/conversation-detail/message/image/image.component.scss +34 -0
  79. package/src/app/chatlib/conversation-detail/message/image/image.component.spec.ts +35 -0
  80. package/src/app/chatlib/conversation-detail/message/image/image.component.ts +78 -0
  81. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.html +2 -0
  82. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.scss +15 -0
  83. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.spec.ts +27 -0
  84. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.ts +35 -0
  85. package/src/app/chatlib/conversation-detail/message/message-attachment/message-attachment.component.html +56 -0
  86. package/src/app/chatlib/conversation-detail/message/message-attachment/message-attachment.component.scss +169 -0
  87. package/src/app/chatlib/conversation-detail/message/message-attachment/message-attachment.component.spec.ts +33 -0
  88. package/src/app/chatlib/conversation-detail/message/message-attachment/message-attachment.component.ts +80 -0
  89. package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.html +18 -0
  90. package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.scss +27 -0
  91. package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.spec.ts +25 -0
  92. package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.ts +24 -0
  93. package/src/app/chatlib/conversation-detail/message/text/text.component.html +5 -0
  94. package/src/app/chatlib/conversation-detail/message/text/text.component.scss +26 -0
  95. package/src/app/chatlib/conversation-detail/message/text/text.component.spec.ts +33 -0
  96. package/src/app/chatlib/conversation-detail/message/text/text.component.ts +56 -0
  97. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +154 -0
  98. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.scss +222 -0
  99. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.spec.ts +24 -0
  100. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.ts +113 -0
  101. package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.html +46 -0
  102. package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.scss +200 -0
  103. package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.spec.ts +27 -0
  104. package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.ts +135 -0
  105. package/src/app/components/authentication/login/login.component.html +65 -0
  106. package/src/app/components/authentication/login/login.component.scss +85 -0
  107. package/src/app/components/authentication/login/login.component.spec.ts +24 -0
  108. package/src/app/components/authentication/login/login.component.ts +174 -0
  109. package/src/app/components/contacts-directory/contacts-directory.component.html +22 -0
  110. package/src/app/components/contacts-directory/contacts-directory.component.scss +123 -0
  111. package/src/app/components/contacts-directory/contacts-directory.component.spec.ts +24 -0
  112. package/src/app/components/contacts-directory/contacts-directory.component.ts +109 -0
  113. package/src/app/components/conversation-detail/bubble-day-message/bubble-day-message.component.html +3 -0
  114. package/src/app/components/conversation-detail/bubble-day-message/bubble-day-message.component.scss +21 -0
  115. package/src/app/components/conversation-detail/bubble-day-message/bubble-day-message.component.spec.ts +24 -0
  116. package/src/app/components/conversation-detail/bubble-day-message/bubble-day-message.component.ts +14 -0
  117. package/src/app/components/conversation-detail/bubble-my-message/bubble-my-message.component.html +54 -0
  118. package/src/app/components/conversation-detail/bubble-my-message/bubble-my-message.component.scss +98 -0
  119. package/src/app/components/conversation-detail/bubble-my-message/bubble-my-message.component.spec.ts +24 -0
  120. package/src/app/components/conversation-detail/bubble-my-message/bubble-my-message.component.ts +84 -0
  121. package/src/app/components/conversation-detail/bubble-others-message/bubble-others-message.component.html +30 -0
  122. package/src/app/components/conversation-detail/bubble-others-message/bubble-others-message.component.scss +83 -0
  123. package/src/app/components/conversation-detail/bubble-others-message/bubble-others-message.component.spec.ts +24 -0
  124. package/src/app/components/conversation-detail/bubble-others-message/bubble-others-message.component.ts +68 -0
  125. package/src/app/components/conversation-detail/bubble-system-message/bubble-system-message.component.html +3 -0
  126. package/src/app/components/conversation-detail/bubble-system-message/bubble-system-message.component.scss +10 -0
  127. package/src/app/components/conversation-detail/bubble-system-message/bubble-system-message.component.spec.ts +24 -0
  128. package/src/app/components/conversation-detail/bubble-system-message/bubble-system-message.component.ts +14 -0
  129. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.html +71 -0
  130. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.scss +161 -0
  131. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.spec.ts +24 -0
  132. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.ts +133 -0
  133. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.html +64 -0
  134. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.scss +124 -0
  135. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.spec.ts +25 -0
  136. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +685 -0
  137. package/src/app/components/conversation-detail/option-header/option-header.component.html +13 -0
  138. package/src/app/components/conversation-detail/option-header/option-header.component.scss +0 -0
  139. package/src/app/components/conversation-detail/option-header/option-header.component.spec.ts +24 -0
  140. package/src/app/components/conversation-detail/option-header/option-header.component.ts +24 -0
  141. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.html +64 -0
  142. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.scss +135 -0
  143. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.spec.ts +24 -0
  144. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.ts +53 -0
  145. package/src/app/components/conversation-info/conversation-info.module.ts +13 -0
  146. package/src/app/components/conversation-info/info-content/info-content.component.html +18 -0
  147. package/src/app/components/conversation-info/info-content/info-content.component.scss +5 -0
  148. package/src/app/components/conversation-info/info-content/info-content.component.spec.ts +24 -0
  149. package/src/app/components/conversation-info/info-content/info-content.component.ts +395 -0
  150. package/src/app/components/conversation-info/info-direct/info-direct.component.html +57 -0
  151. package/src/app/components/conversation-info/info-direct/info-direct.component.scss +62 -0
  152. package/src/app/components/conversation-info/info-direct/info-direct.component.spec.ts +24 -0
  153. package/src/app/components/conversation-info/info-direct/info-direct.component.ts +67 -0
  154. package/src/app/components/conversation-info/info-group/info-group.component.html +115 -0
  155. package/src/app/components/conversation-info/info-group/info-group.component.scss +80 -0
  156. package/src/app/components/conversation-info/info-group/info-group.component.spec.ts +24 -0
  157. package/src/app/components/conversation-info/info-group/info-group.component.ts +218 -0
  158. package/src/app/components/conversation-info/info-support-group/info-support-group.component.html +6 -0
  159. package/src/app/components/conversation-info/info-support-group/info-support-group.component.scss +0 -0
  160. package/src/app/components/conversation-info/info-support-group/info-support-group.component.spec.ts +24 -0
  161. package/src/app/components/conversation-info/info-support-group/info-support-group.component.ts +29 -0
  162. package/src/app/components/ddp-header/ddp-header.component.html +31 -0
  163. package/src/app/components/ddp-header/ddp-header.component.scss +26 -0
  164. package/src/app/components/ddp-header/ddp-header.component.spec.ts +24 -0
  165. package/src/app/components/ddp-header/ddp-header.component.ts +33 -0
  166. package/src/app/components/image-viewer/image-viewer.component.html +23 -0
  167. package/src/app/components/image-viewer/image-viewer.component.scss +107 -0
  168. package/src/app/components/image-viewer/image-viewer.component.spec.ts +24 -0
  169. package/src/app/components/image-viewer/image-viewer.component.ts +38 -0
  170. package/src/app/components/project-item/project-item.component.html +147 -0
  171. package/src/app/components/project-item/project-item.component.scss +669 -0
  172. package/src/app/components/project-item/project-item.component.spec.ts +24 -0
  173. package/src/app/components/project-item/project-item.component.ts +350 -0
  174. package/src/app/components/utils/avatar-profile/avatar-profile.component.html +12 -0
  175. package/src/app/components/utils/avatar-profile/avatar-profile.component.scss +29 -0
  176. package/src/app/components/utils/avatar-profile/avatar-profile.component.spec.ts +24 -0
  177. package/src/app/components/utils/avatar-profile/avatar-profile.component.ts +41 -0
  178. package/src/app/components/utils/user-presence/user-presence.component.html +2 -0
  179. package/src/app/components/utils/user-presence/user-presence.component.scss +24 -0
  180. package/src/app/components/utils/user-presence/user-presence.component.spec.ts +24 -0
  181. package/src/app/components/utils/user-presence/user-presence.component.ts +159 -0
  182. package/src/app/directives/autofocus.directive.ts +41 -0
  183. package/src/app/directives/html-entities-encode.pipe.spec.ts +8 -0
  184. package/src/app/directives/html-entities-encode.pipe.ts +17 -0
  185. package/src/app/directives/marked.pipe.spec.ts +8 -0
  186. package/src/app/directives/marked.pipe.ts +27 -0
  187. package/src/app/directives/safe-html.pipe.ts +16 -0
  188. package/src/app/pages/authentication/login/login-routing.module.ts +17 -0
  189. package/src/app/pages/authentication/login/login.module.ts +39 -0
  190. package/src/app/pages/authentication/login/login.page.html +7 -0
  191. package/src/app/pages/authentication/login/login.page.scss +5 -0
  192. package/src/app/pages/authentication/login/login.page.spec.ts +24 -0
  193. package/src/app/pages/authentication/login/login.page.ts +187 -0
  194. package/src/app/pages/contacts-directory/contacts-directory-routing.module.ts +17 -0
  195. package/src/app/pages/contacts-directory/contacts-directory.module.ts +42 -0
  196. package/src/app/pages/contacts-directory/contacts-directory.page.html +19 -0
  197. package/src/app/pages/contacts-directory/contacts-directory.page.scss +0 -0
  198. package/src/app/pages/contacts-directory/contacts-directory.page.spec.ts +24 -0
  199. package/src/app/pages/contacts-directory/contacts-directory.page.ts +125 -0
  200. package/src/app/pages/conversation-detail/conversation-detail-routing.module.ts +17 -0
  201. package/src/app/pages/conversation-detail/conversation-detail.module.ts +69 -0
  202. package/src/app/pages/conversation-detail/conversation-detail.page.html +191 -0
  203. package/src/app/pages/conversation-detail/conversation-detail.page.scss +492 -0
  204. package/src/app/pages/conversation-detail/conversation-detail.page.spec.ts +24 -0
  205. package/src/app/pages/conversation-detail/conversation-detail.page.ts +1525 -0
  206. package/src/app/pages/conversations-list/conversations-list-routing.module.ts +17 -0
  207. package/src/app/pages/conversations-list/conversations-list.module.ts +43 -0
  208. package/src/app/pages/conversations-list/conversations-list.page.html +112 -0
  209. package/src/app/pages/conversations-list/conversations-list.page.scss +302 -0
  210. package/src/app/pages/conversations-list/conversations-list.page.spec.ts +24 -0
  211. package/src/app/pages/conversations-list/conversations-list.page.ts +1032 -0
  212. package/src/app/pages/details/details-routing.module.ts +17 -0
  213. package/src/app/pages/details/details.module.ts +21 -0
  214. package/src/app/pages/details/details.page.html +28 -0
  215. package/src/app/pages/details/details.page.scss +23 -0
  216. package/src/app/pages/details/details.page.spec.ts +24 -0
  217. package/src/app/pages/details/details.page.ts +65 -0
  218. package/src/app/pages/loader-preview/loader-preview-routing.module.ts +17 -0
  219. package/src/app/pages/loader-preview/loader-preview.module.ts +29 -0
  220. package/src/app/pages/loader-preview/loader-preview.page.html +62 -0
  221. package/src/app/pages/loader-preview/loader-preview.page.scss +117 -0
  222. package/src/app/pages/loader-preview/loader-preview.page.spec.ts +24 -0
  223. package/src/app/pages/loader-preview/loader-preview.page.ts +353 -0
  224. package/src/app/pages/profile-info/profile-info-routing.module.ts +17 -0
  225. package/src/app/pages/profile-info/profile-info.module.ts +41 -0
  226. package/src/app/pages/profile-info/profile-info.page.html +86 -0
  227. package/src/app/pages/profile-info/profile-info.page.scss +264 -0
  228. package/src/app/pages/profile-info/profile-info.page.spec.ts +24 -0
  229. package/src/app/pages/profile-info/profile-info.page.ts +223 -0
  230. package/src/app/pages/unassigned-conversations/unassigned-conversations-routing.module.ts +17 -0
  231. package/src/app/pages/unassigned-conversations/unassigned-conversations.module.ts +22 -0
  232. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.html +22 -0
  233. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.scss +79 -0
  234. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.spec.ts +24 -0
  235. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.ts +116 -0
  236. package/src/app/services/app-config.ts +107 -0
  237. package/src/app/services/canned-responses/canned-responses.service.spec.ts +12 -0
  238. package/src/app/services/canned-responses/canned-responses.service.ts +49 -0
  239. package/src/app/services/contacts/contacts.service.spec.ts +12 -0
  240. package/src/app/services/contacts/contacts.service.ts +172 -0
  241. package/src/app/services/events-service.ts +79 -0
  242. package/src/app/services/nav-proxy.service.spec.ts +12 -0
  243. package/src/app/services/nav-proxy.service.ts +80 -0
  244. package/src/app/services/network-service/network.service.spec.ts +12 -0
  245. package/src/app/services/network-service/network.service.ts +46 -0
  246. package/src/app/services/tiledesk/tiledesk.service.spec.ts +12 -0
  247. package/src/app/services/tiledesk/tiledesk.service.ts +99 -0
  248. package/src/app/services/websocket/websocket-js.ts +560 -0
  249. package/src/app/services/websocket/websocket.service.spec.ts +12 -0
  250. package/src/app/services/websocket/websocket.service.ts +292 -0
  251. package/src/app/shared/shared-conversation-info.module.ts +33 -0
  252. package/src/app/shared/shared.module.ts +130 -0
  253. package/src/{utils → app/utils}/constants.ts-e +0 -0
  254. package/src/app/utils/scrollbar-theme.directive.ts +63 -0
  255. package/src/assets/i18n/en.json +122 -38
  256. package/src/assets/i18n/it.json +101 -10
  257. package/src/assets/icon/favicon.ico +0 -0
  258. package/src/assets/icon/ionic_favicon.png +0 -0
  259. package/src/assets/images/f21ico-done.svg +1 -0
  260. package/src/assets/images/f21ico-done_all.svg +1 -0
  261. package/src/assets/images/f21ico-schedule.svg +1 -0
  262. package/src/assets/images/file-alt-solid.png +0 -0
  263. package/src/assets/images/no_conversation.jpg +0 -0
  264. package/src/assets/{img → images}/no_image.png +0 -0
  265. package/src/assets/js/chat21client.js +1027 -0
  266. package/src/assets/js/mqtt/4.1.0/mqtt.min.js +1 -0
  267. package/src/assets/js/mqtt/4.2.6/mqtt.min.js +1 -0
  268. package/src/assets/js/mqtt/4.2.8/mqtt.min.js +1 -0
  269. package/src/assets/logo.png +0 -0
  270. package/src/assets/shapes.svg +1 -0
  271. package/src/assets/sounds/pling.mp3 +0 -0
  272. package/src/assets/transparent.png +0 -0
  273. package/src/chat-config-mqtt-ver-uploaded.json +22 -0
  274. package/src/chat-config-mqtt.json +26 -0
  275. package/src/chat-config-pre-test.json +32 -0
  276. package/src/chat-config-pre.json +23 -0
  277. package/src/chat-config-template.json +20 -6
  278. package/src/chat-config.json +30 -0
  279. package/src/{models → chat21-core/models}/conversation.ts +6 -2
  280. package/src/{models → chat21-core/models}/group.ts +7 -5
  281. package/src/{models → chat21-core/models}/message.ts +8 -8
  282. package/src/{models → chat21-core/models}/upload.ts +5 -5
  283. package/src/{models → chat21-core/models}/user.ts +2 -1
  284. package/src/chat21-core/providers/abstract/app-storage.service.spec.ts +15 -0
  285. package/src/chat21-core/providers/abstract/app-storage.service.ts +17 -0
  286. package/src/chat21-core/providers/abstract/archivedconversations-handler.service.spec.ts +13 -0
  287. package/src/chat21-core/providers/abstract/archivedconversations-handler.service.ts +34 -0
  288. package/src/chat21-core/providers/abstract/conversation-handler-builder.service.spec.ts +12 -0
  289. package/src/chat21-core/providers/abstract/conversation-handler-builder.service.ts +11 -0
  290. package/src/chat21-core/providers/abstract/conversation-handler.service.spec.ts +12 -0
  291. package/src/chat21-core/providers/abstract/conversation-handler.service.ts +43 -0
  292. package/src/chat21-core/providers/abstract/conversations-handler.service.spec.ts +12 -0
  293. package/src/chat21-core/providers/abstract/conversations-handler.service.ts +42 -0
  294. package/src/chat21-core/providers/abstract/groups-handler.service.spec.ts +12 -0
  295. package/src/chat21-core/providers/abstract/groups-handler.service.ts +28 -0
  296. package/src/chat21-core/providers/abstract/image-repo.service.spec.ts +12 -0
  297. package/src/chat21-core/providers/abstract/image-repo.service.ts +26 -0
  298. package/src/chat21-core/providers/abstract/logger.service.spec.ts +12 -0
  299. package/src/chat21-core/providers/abstract/logger.service.ts +16 -0
  300. package/src/chat21-core/providers/abstract/messagingAuth.service.spec.ts +12 -0
  301. package/src/chat21-core/providers/abstract/messagingAuth.service.ts +54 -0
  302. package/src/chat21-core/providers/abstract/notifications.service.spec.ts +12 -0
  303. package/src/chat21-core/providers/abstract/notifications.service.ts +31 -0
  304. package/src/chat21-core/providers/abstract/presence.service.spec.ts +12 -0
  305. package/src/chat21-core/providers/abstract/presence.service.ts +34 -0
  306. package/src/chat21-core/providers/abstract/typing.service.spec.ts +12 -0
  307. package/src/chat21-core/providers/abstract/typing.service.ts +31 -0
  308. package/src/chat21-core/providers/abstract/upload.service.spec.ts +12 -0
  309. package/src/chat21-core/providers/abstract/upload.service.ts +39 -0
  310. package/src/chat21-core/providers/chat-manager.ts +282 -0
  311. package/src/chat21-core/providers/custom-translate.service.spec.ts +12 -0
  312. package/src/chat21-core/providers/custom-translate.service.ts +42 -0
  313. package/src/chat21-core/providers/firebase/firebase-archivedconversations-handler.ts +476 -0
  314. package/src/chat21-core/providers/firebase/firebase-auth-service.ts +376 -0
  315. package/src/chat21-core/providers/firebase/firebase-conversation-handler-builder.service.ts +19 -0
  316. package/src/chat21-core/providers/firebase/firebase-conversation-handler.ts +416 -0
  317. package/src/chat21-core/providers/firebase/firebase-conversations-handler.ts +570 -0
  318. package/src/chat21-core/providers/firebase/firebase-groups-handler.ts +303 -0
  319. package/src/chat21-core/providers/firebase/firebase-image-repo.ts +40 -0
  320. package/src/chat21-core/providers/firebase/firebase-init-service.ts +31 -0
  321. package/src/chat21-core/providers/firebase/firebase-notifications.ts +246 -0
  322. package/src/chat21-core/providers/firebase/firebase-presence.service.ts +190 -0
  323. package/src/chat21-core/providers/firebase/firebase-typing.service.ts +93 -0
  324. package/src/chat21-core/providers/firebase/firebase-upload.service.ts +106 -0
  325. package/src/chat21-core/providers/localSessionStorage.ts +215 -0
  326. package/src/chat21-core/providers/logger/customLogger.ts +70 -0
  327. package/src/chat21-core/providers/logger/loggerInstance.ts +20 -0
  328. package/src/chat21-core/providers/mqtt/chat-service.ts +44 -0
  329. package/src/chat21-core/providers/mqtt/mqtt-archivedconversations-handler.ts +707 -0
  330. package/src/chat21-core/providers/mqtt/mqtt-auth-service.ts +313 -0
  331. package/src/chat21-core/providers/mqtt/mqtt-conversation-handler-builder.service.ts +25 -0
  332. package/src/chat21-core/providers/mqtt/mqtt-conversation-handler.ts +446 -0
  333. package/src/chat21-core/providers/mqtt/mqtt-conversations-handler.ts +601 -0
  334. package/src/chat21-core/providers/mqtt/mqtt-groups-handler.ts +139 -0
  335. package/src/chat21-core/providers/mqtt/mqtt-notifications.ts +122 -0
  336. package/src/chat21-core/providers/mqtt/mqtt-presence.service.ts +229 -0
  337. package/src/chat21-core/providers/mqtt/mqtt-typing.service.ts +93 -0
  338. package/src/chat21-core/providers/native/native-image-repo.ts +30 -0
  339. package/src/chat21-core/providers/native/native-upload-service.ts +85 -0
  340. package/src/chat21-core/providers/tiledesk/tiledesk-auth.service.spec.ts +12 -0
  341. package/src/chat21-core/providers/tiledesk/tiledesk-auth.service.ts +211 -0
  342. package/src/chat21-core/utils/constants.ts +109 -0
  343. package/src/chat21-core/utils/user-typing/user-typing.component.html +6 -0
  344. package/src/chat21-core/utils/user-typing/user-typing.component.scss +62 -0
  345. package/src/chat21-core/utils/user-typing/user-typing.component.spec.ts +24 -0
  346. package/src/chat21-core/utils/user-typing/user-typing.component.ts +114 -0
  347. package/src/chat21-core/utils/utils-message.ts +117 -0
  348. package/src/chat21-core/utils/utils-user.ts +46 -0
  349. package/src/chat21-core/utils/utils.ts +893 -0
  350. package/src/firebase-messaging-sw-template.js +1 -1
  351. package/src/global.scss +585 -0
  352. package/src/index.html +71 -42
  353. package/src/main.ts +12 -0
  354. package/src/manifest.json +0 -11
  355. package/src/models/department.ts +12 -0
  356. package/src/polyfills.ts +73 -0
  357. package/src/test.ts +21 -0
  358. package/src/theme/variables.scss +236 -93
  359. package/src/variables.scss +30 -0
  360. package/src/zone-flags.ts +5 -0
  361. package/tsconfig.app.json +14 -0
  362. package/tsconfig.json +23 -18
  363. package/tsconfig.spec.json +19 -0
  364. package/tslint.json +84 -7
  365. package/app.json +0 -7
  366. package/curl +0 -1
  367. package/deploy_dev.sh +0 -28
  368. package/docs/changelog.html +0 -227
  369. package/docs/classes/ConversationModel.html +0 -1022
  370. package/docs/classes/GroupModel.html +0 -527
  371. package/docs/classes/MessageModel.html +0 -843
  372. package/docs/classes/UploadModel.html +0 -417
  373. package/docs/classes/UserModel.html +0 -728
  374. package/docs/classes/_DetailPage.html +0 -144
  375. package/docs/classes/_MasterPage.html +0 -144
  376. package/docs/components/ArchivedConversationsPage.html +0 -1024
  377. package/docs/components/ChatBubble.html +0 -327
  378. package/docs/components/DettaglioConversazionePage.html +0 -6060
  379. package/docs/components/ElasticTextarea.html +0 -619
  380. package/docs/components/InfoAdvancedPage.html +0 -656
  381. package/docs/components/InfoConversationPage.html +0 -5681
  382. package/docs/components/InfoMessagePage.html +0 -993
  383. package/docs/components/InfoUserPage.html +0 -1420
  384. package/docs/components/ListaConversazioniPage.html +0 -3576
  385. package/docs/components/LoginPage.html +0 -1457
  386. package/docs/components/MyApp.html +0 -1388
  387. package/docs/components/PlaceholderPage.html +0 -397
  388. package/docs/components/PopoverPage.html +0 -986
  389. package/docs/components/PopoverProfilePage.html +0 -639
  390. package/docs/components/ProfilePage.html +0 -1187
  391. package/docs/components/RegisterPage.html +0 -1271
  392. package/docs/components/ResetpwdPage.html +0 -1039
  393. package/docs/components/UpdateImageProfilePage.html +0 -997
  394. package/docs/components/UsersPage.html +0 -1297
  395. package/docs/coverage.html +0 -1421
  396. package/docs/dependencies.html +0 -210
  397. package/docs/directives/AutosizeDirective.html +0 -556
  398. package/docs/fonts/FontAwesome.otf +0 -0
  399. package/docs/fonts/fontawesome-webfont.eot +0 -0
  400. package/docs/fonts/fontawesome-webfont.svg +0 -685
  401. package/docs/fonts/fontawesome-webfont.ttf +0 -0
  402. package/docs/fonts/fontawesome-webfont.woff +0 -0
  403. package/docs/fonts/fontawesome-webfont.woff2 +0 -0
  404. package/docs/fonts/ionicons.eot +0 -0
  405. package/docs/fonts/ionicons.svg +0 -2090
  406. package/docs/fonts/ionicons.ttf +0 -0
  407. package/docs/fonts/ionicons.woff +0 -0
  408. package/docs/fonts/ionicons.woff2 +0 -0
  409. package/docs/fonts/roboto-v15-latin-300.eot +0 -0
  410. package/docs/fonts/roboto-v15-latin-300.svg +0 -314
  411. package/docs/fonts/roboto-v15-latin-300.ttf +0 -0
  412. package/docs/fonts/roboto-v15-latin-300.woff +0 -0
  413. package/docs/fonts/roboto-v15-latin-300.woff2 +0 -0
  414. package/docs/fonts/roboto-v15-latin-700.eot +0 -0
  415. package/docs/fonts/roboto-v15-latin-700.svg +0 -310
  416. package/docs/fonts/roboto-v15-latin-700.ttf +0 -0
  417. package/docs/fonts/roboto-v15-latin-700.woff +0 -0
  418. package/docs/fonts/roboto-v15-latin-700.woff2 +0 -0
  419. package/docs/fonts/roboto-v15-latin-italic.eot +0 -0
  420. package/docs/fonts/roboto-v15-latin-italic.svg +0 -323
  421. package/docs/fonts/roboto-v15-latin-italic.ttf +0 -0
  422. package/docs/fonts/roboto-v15-latin-italic.woff +0 -0
  423. package/docs/fonts/roboto-v15-latin-italic.woff2 +0 -0
  424. package/docs/fonts/roboto-v15-latin-regular.eot +0 -0
  425. package/docs/fonts/roboto-v15-latin-regular.svg +0 -308
  426. package/docs/fonts/roboto-v15-latin-regular.ttf +0 -0
  427. package/docs/fonts/roboto-v15-latin-regular.woff +0 -0
  428. package/docs/fonts/roboto-v15-latin-regular.woff2 +0 -0
  429. package/docs/graph/dependencies.svg +0 -870
  430. package/docs/images/compodoc-vectorise-inverted.png +0 -0
  431. package/docs/images/compodoc-vectorise-inverted.svg +0 -201
  432. package/docs/images/compodoc-vectorise.png +0 -0
  433. package/docs/images/compodoc-vectorise.svg +0 -201
  434. package/docs/images/coverage-badge-documentation.svg +0 -9
  435. package/docs/images/coverage-badge.svg +0 -9
  436. package/docs/images/favicon.ico +0 -0
  437. package/docs/index.html +0 -233
  438. package/docs/injectables/AppConfigProvider.html +0 -411
  439. package/docs/injectables/AuthService.html +0 -1016
  440. package/docs/injectables/ChatArchivedConversationsHandler.html +0 -1832
  441. package/docs/injectables/ChatContactsSynchronizer.html +0 -841
  442. package/docs/injectables/ChatConversationHandler.html +0 -1960
  443. package/docs/injectables/ChatConversationsHandler.html +0 -2584
  444. package/docs/injectables/ChatManager.html +0 -1779
  445. package/docs/injectables/ChatPresenceHandler.html +0 -1187
  446. package/docs/injectables/CustomTranslateService.html +0 -496
  447. package/docs/injectables/DatabaseProvider.html +0 -1444
  448. package/docs/injectables/GroupService.html +0 -1458
  449. package/docs/injectables/MessagingService.html +0 -1165
  450. package/docs/injectables/NavProxyService.html +0 -1028
  451. package/docs/injectables/TiledeskConversationProvider.html +0 -945
  452. package/docs/injectables/UploadService.html +0 -791
  453. package/docs/injectables/UserService.html +0 -1612
  454. package/docs/js/compodoc.js +0 -14
  455. package/docs/js/lazy-load-graphs.js +0 -44
  456. package/docs/js/libs/EventDispatcher.js +0 -5
  457. package/docs/js/libs/bootstrap-native.js +0 -2
  458. package/docs/js/libs/clipboard.min.js +0 -7
  459. package/docs/js/libs/custom-elements-es5-adapter.js +0 -15
  460. package/docs/js/libs/custom-elements.min.js +0 -38
  461. package/docs/js/libs/d3.v3.min.js +0 -2
  462. package/docs/js/libs/deep-iterator.js +0 -2
  463. package/docs/js/libs/es6-shim.min.js +0 -11
  464. package/docs/js/libs/htmlparser.js +0 -23
  465. package/docs/js/libs/innersvg.js +0 -9
  466. package/docs/js/libs/lit-html.js +0 -1
  467. package/docs/js/libs/prism.js +0 -14
  468. package/docs/js/libs/promise.min.js +0 -6
  469. package/docs/js/libs/svg-pan-zoom.min.js +0 -3
  470. package/docs/js/libs/tablesort.min.js +0 -6
  471. package/docs/js/libs/tablesort.number.min.js +0 -6
  472. package/docs/js/libs/vis.min.js +0 -46
  473. package/docs/js/libs/zepto.min.js +0 -2
  474. package/docs/js/menu-wc.js +0 -594
  475. package/docs/js/menu.js +0 -261
  476. package/docs/js/routes.js +0 -280
  477. package/docs/js/search/lunr.min.js +0 -6
  478. package/docs/js/search/search-lunr.js +0 -67
  479. package/docs/js/search/search.js +0 -268
  480. package/docs/js/search/search_index.js +0 -4
  481. package/docs/js/sourceCode.js +0 -58
  482. package/docs/js/svg-pan-zoom.controls.js +0 -53
  483. package/docs/js/tabs.js +0 -21
  484. package/docs/js/tree.js +0 -147
  485. package/docs/license.html +0 -664
  486. package/docs/miscellaneous/functions.html +0 -2417
  487. package/docs/miscellaneous/variables.html +0 -994
  488. package/docs/modules/AppModule/dependencies.svg +0 -454
  489. package/docs/modules/AppModule.html +0 -967
  490. package/docs/modules/ArchivedConversationsPageModule/dependencies.svg +0 -50
  491. package/docs/modules/ArchivedConversationsPageModule.html +0 -225
  492. package/docs/modules/DettaglioConversazionePageModule/dependencies.svg +0 -66
  493. package/docs/modules/DettaglioConversazionePageModule.html +0 -256
  494. package/docs/modules/InfoAdvancedPageModule/dependencies.svg +0 -50
  495. package/docs/modules/InfoAdvancedPageModule.html +0 -225
  496. package/docs/modules/InfoConversationPageModule/dependencies.svg +0 -50
  497. package/docs/modules/InfoConversationPageModule.html +0 -227
  498. package/docs/modules/InfoUserPageModule/dependencies.svg +0 -50
  499. package/docs/modules/InfoUserPageModule.html +0 -225
  500. package/docs/modules/ListaConversazioniPageModule/dependencies.svg +0 -66
  501. package/docs/modules/ListaConversazioniPageModule.html +0 -255
  502. package/docs/modules/LoginModule/dependencies.svg +0 -66
  503. package/docs/modules/LoginModule.html +0 -253
  504. package/docs/modules/PlaceholderPageModule/dependencies.svg +0 -66
  505. package/docs/modules/PlaceholderPageModule.html +0 -253
  506. package/docs/modules/PopoverPageModule/dependencies.svg +0 -66
  507. package/docs/modules/PopoverPageModule.html +0 -253
  508. package/docs/modules/PopoverProfilePageModule/dependencies.svg +0 -66
  509. package/docs/modules/PopoverProfilePageModule.html +0 -253
  510. package/docs/modules/ProfilePageModule/dependencies.svg +0 -66
  511. package/docs/modules/ProfilePageModule.html +0 -253
  512. package/docs/modules/RegisterModule/dependencies.svg +0 -66
  513. package/docs/modules/RegisterModule.html +0 -253
  514. package/docs/modules/ResetpwdModule/dependencies.svg +0 -66
  515. package/docs/modules/ResetpwdModule.html +0 -253
  516. package/docs/modules/UpdateImageProfilePageModule/dependencies.svg +0 -66
  517. package/docs/modules/UpdateImageProfilePageModule.html +0 -253
  518. package/docs/modules/UsersModule/dependencies.svg +0 -66
  519. package/docs/modules/UsersModule.html +0 -253
  520. package/docs/modules.html +0 -379
  521. package/docs/overview.html +0 -1033
  522. package/docs/styles/bootstrap-card.css +0 -219
  523. package/docs/styles/bootstrap.min.css +0 -5
  524. package/docs/styles/compodoc.css +0 -996
  525. package/docs/styles/font-awesome.min.css +0 -4
  526. package/docs/styles/ionicons.min.css +0 -11
  527. package/docs/styles/laravel.css +0 -69
  528. package/docs/styles/material.css +0 -109
  529. package/docs/styles/original.css +0 -47
  530. package/docs/styles/postmark.css +0 -224
  531. package/docs/styles/prism.css +0 -267
  532. package/docs/styles/readthedocs.css +0 -108
  533. package/docs/styles/reset.css +0 -48
  534. package/docs/styles/stripe.css +0 -65
  535. package/docs/styles/style.css +0 -7
  536. package/docs/styles/tablesort.css +0 -33
  537. package/docs/styles/vagrant.css +0 -96
  538. package/firebase-functions/.firebaserc +0 -5
  539. package/firebase-functions/firebase.json +0 -1
  540. package/firebase-functions/functions/index.js +0 -208
  541. package/firebase-functions/functions/package.json +0 -9
  542. package/google-services.json +0 -42
  543. package/hooks/README.md +0 -196
  544. package/resources/android/icon/drawable-hdpi-icon.png +0 -0
  545. package/resources/android/icon/drawable-ldpi-icon.png +0 -0
  546. package/resources/android/icon/drawable-mdpi-icon.png +0 -0
  547. package/resources/android/icon/drawable-xhdpi-icon.png +0 -0
  548. package/resources/android/icon/drawable-xxhdpi-icon.png +0 -0
  549. package/resources/android/icon/drawable-xxxhdpi-icon.png +0 -0
  550. package/resources/android/splash/drawable-land-hdpi-screen.png +0 -0
  551. package/resources/android/splash/drawable-land-ldpi-screen.png +0 -0
  552. package/resources/android/splash/drawable-land-mdpi-screen.png +0 -0
  553. package/resources/android/splash/drawable-land-xhdpi-screen.png +0 -0
  554. package/resources/android/splash/drawable-land-xxhdpi-screen.png +0 -0
  555. package/resources/android/splash/drawable-land-xxxhdpi-screen.png +0 -0
  556. package/resources/android/splash/drawable-port-hdpi-screen.png +0 -0
  557. package/resources/android/splash/drawable-port-ldpi-screen.png +0 -0
  558. package/resources/android/splash/drawable-port-mdpi-screen.png +0 -0
  559. package/resources/android/splash/drawable-port-xhdpi-screen.png +0 -0
  560. package/resources/android/splash/drawable-port-xxhdpi-screen.png +0 -0
  561. package/resources/android/splash/drawable-port-xxxhdpi-screen.png +0 -0
  562. package/resources/icon.png +0 -0
  563. package/resources/icon.png.md5 +0 -1
  564. package/resources/ios/icon/icon-1024.png +0 -0
  565. package/resources/ios/icon/icon-40.png +0 -0
  566. package/resources/ios/icon/icon-40@2x.png +0 -0
  567. package/resources/ios/icon/icon-40@3x.png +0 -0
  568. package/resources/ios/icon/icon-50.png +0 -0
  569. package/resources/ios/icon/icon-50@2x.png +0 -0
  570. package/resources/ios/icon/icon-60.png +0 -0
  571. package/resources/ios/icon/icon-60@2x.png +0 -0
  572. package/resources/ios/icon/icon-60@3x.png +0 -0
  573. package/resources/ios/icon/icon-72.png +0 -0
  574. package/resources/ios/icon/icon-72@2x.png +0 -0
  575. package/resources/ios/icon/icon-76.png +0 -0
  576. package/resources/ios/icon/icon-76@2x.png +0 -0
  577. package/resources/ios/icon/icon-83.5@2x.png +0 -0
  578. package/resources/ios/icon/icon-small.png +0 -0
  579. package/resources/ios/icon/icon-small@2x.png +0 -0
  580. package/resources/ios/icon/icon-small@3x.png +0 -0
  581. package/resources/ios/icon/icon.png +0 -0
  582. package/resources/ios/icon/icon@2x.png +0 -0
  583. package/resources/ios/splash/Default-568h@2x~iphone.png +0 -0
  584. package/resources/ios/splash/Default-667h.png +0 -0
  585. package/resources/ios/splash/Default-736h.png +0 -0
  586. package/resources/ios/splash/Default-Landscape-736h.png +0 -0
  587. package/resources/ios/splash/Default-Landscape@2x~ipad.png +0 -0
  588. package/resources/ios/splash/Default-Landscape@~ipadpro.png +0 -0
  589. package/resources/ios/splash/Default-Landscape~ipad.png +0 -0
  590. package/resources/ios/splash/Default-Portrait@2x~ipad.png +0 -0
  591. package/resources/ios/splash/Default-Portrait@~ipadpro.png +0 -0
  592. package/resources/ios/splash/Default-Portrait~ipad.png +0 -0
  593. package/resources/ios/splash/Default@2x~iphone.png +0 -0
  594. package/resources/ios/splash/Default@2x~universal~anyany.png +0 -0
  595. package/resources/ios/splash/Default~iphone.png +0 -0
  596. package/resources/splash.png +0 -0
  597. package/resources/splash.png.md5 +0 -1
  598. package/server.js +0 -7
  599. package/src/app/app.html +0 -56
  600. package/src/app/app.scss +0 -236
  601. package/src/app/main.ts +0 -9
  602. package/src/assets/chat-background.jpg +0 -0
  603. package/src/assets/chat21-ionic-pattern-2.svg +0 -5110
  604. package/src/assets/chat21-ionic-pattern.png +0 -0
  605. package/src/assets/chat21-ionic-pattern.svg +0 -1
  606. package/src/assets/download.svg +0 -1
  607. package/src/assets/dummyDump.sql +0 -1
  608. package/src/assets/icon/favicon_old.ico +0 -0
  609. package/src/assets/img/c21-down-gray.svg +0 -1
  610. package/src/assets/img/chat21-icon.png +0 -0
  611. package/src/assets/img/f21ico-attached.svg +0 -1
  612. package/src/assets/img/f21ico-close.svg +0 -1
  613. package/src/assets/img/f21ico-photo.svg +0 -1
  614. package/src/assets/img/ic_keyboard_arrow_down_black_24px.svg +0 -4
  615. package/src/assets/img/ic_keyboard_arrow_down_white_24px.svg +0 -4
  616. package/src/assets/img/icon.png +0 -0
  617. package/src/assets/message-mine.png +0 -0
  618. package/src/assets/message-other.png +0 -0
  619. package/src/assets/pling.mp3 +0 -0
  620. package/src/assets/splash.png +0 -0
  621. package/src/declarations.d.ts +0 -14
  622. package/src/directives/autosize/autosize.ts +0 -82
  623. package/src/environments/environment.pre.ts +0 -22
  624. package/src/environments/environment.prod.ts +0 -22
  625. package/src/environments/environment.ts +0 -21
  626. package/src/pages/_DetailPage.ts +0 -1
  627. package/src/pages/_MasterPage.ts +0 -1
  628. package/src/pages/archived-conversations/archived-conversations.html +0 -32
  629. package/src/pages/archived-conversations/archived-conversations.module.ts +0 -13
  630. package/src/pages/archived-conversations/archived-conversations.scss +0 -153
  631. package/src/pages/archived-conversations/archived-conversations.ts +0 -121
  632. package/src/pages/authentication/login/login.html +0 -58
  633. package/src/pages/authentication/login/login.module.ts +0 -16
  634. package/src/pages/authentication/login/login.scss +0 -121
  635. package/src/pages/authentication/login/login.ts +0 -221
  636. package/src/pages/authentication/register/register.html +0 -88
  637. package/src/pages/authentication/register/register.module.ts +0 -16
  638. package/src/pages/authentication/register/register.scss +0 -95
  639. package/src/pages/authentication/register/register.ts +0 -122
  640. package/src/pages/authentication/resetpwd/resetpwd.html +0 -40
  641. package/src/pages/authentication/resetpwd/resetpwd.module.ts +0 -16
  642. package/src/pages/authentication/resetpwd/resetpwd.scss +0 -102
  643. package/src/pages/authentication/resetpwd/resetpwd.ts +0 -93
  644. package/src/pages/components/chatBubble_old/chatBubble.scss +0 -83
  645. package/src/pages/components/chatBubble_old/chatBubble.ts +0 -30
  646. package/src/pages/components/elasticTextarea_old.ts +0 -46
  647. package/src/pages/dettaglio-conversazione/dettaglio-conversazione.html +0 -261
  648. package/src/pages/dettaglio-conversazione/dettaglio-conversazione.module.ts +0 -19
  649. package/src/pages/dettaglio-conversazione/dettaglio-conversazione.scss +0 -701
  650. package/src/pages/dettaglio-conversazione/dettaglio-conversazione.ts +0 -1395
  651. package/src/pages/index.ts +0 -5
  652. package/src/pages/info-advanced/info-advanced.html +0 -90
  653. package/src/pages/info-advanced/info-advanced.module.ts +0 -13
  654. package/src/pages/info-advanced/info-advanced.scss +0 -196
  655. package/src/pages/info-advanced/info-advanced.ts +0 -44
  656. package/src/pages/info-conversation/info-conversation.html +0 -225
  657. package/src/pages/info-conversation/info-conversation.module.ts +0 -15
  658. package/src/pages/info-conversation/info-conversation.scss +0 -444
  659. package/src/pages/info-conversation/info-conversation.ts +0 -1233
  660. package/src/pages/info-message/info-message.html +0 -74
  661. package/src/pages/info-message/info-message.module.ts +0 -13
  662. package/src/pages/info-message/info-message.scss +0 -216
  663. package/src/pages/info-message/info-message.ts +0 -89
  664. package/src/pages/info-user/info-user.html +0 -89
  665. package/src/pages/info-user/info-user.module.ts +0 -13
  666. package/src/pages/info-user/info-user.scss +0 -187
  667. package/src/pages/info-user/info-user.ts +0 -177
  668. package/src/pages/lista-conversazioni/lista-conversazioni.html +0 -88
  669. package/src/pages/lista-conversazioni/lista-conversazioni.module.ts +0 -18
  670. package/src/pages/lista-conversazioni/lista-conversazioni.scss +0 -245
  671. package/src/pages/lista-conversazioni/lista-conversazioni.ts +0 -736
  672. package/src/pages/placeholder/placeholder.html +0 -3
  673. package/src/pages/placeholder/placeholder.module.ts +0 -16
  674. package/src/pages/placeholder/placeholder.scss +0 -23
  675. package/src/pages/placeholder/placeholder.ts +0 -18
  676. package/src/pages/popover/popover.html +0 -27
  677. package/src/pages/popover/popover.module.ts +0 -16
  678. package/src/pages/popover/popover.scss +0 -23
  679. package/src/pages/popover/popover.ts +0 -95
  680. package/src/pages/popover-profile/popover-profile.html +0 -20
  681. package/src/pages/popover-profile/popover-profile.module.ts +0 -16
  682. package/src/pages/popover-profile/popover-profile.scss +0 -10
  683. package/src/pages/popover-profile/popover-profile.ts +0 -40
  684. package/src/pages/profile/profile.html +0 -54
  685. package/src/pages/profile/profile.module.ts +0 -16
  686. package/src/pages/profile/profile.scss +0 -45
  687. package/src/pages/profile/profile.ts +0 -108
  688. package/src/pages/update-image-profile/update-image-profile.html +0 -39
  689. package/src/pages/update-image-profile/update-image-profile.module.ts +0 -16
  690. package/src/pages/update-image-profile/update-image-profile.scss +0 -50
  691. package/src/pages/update-image-profile/update-image-profile.ts +0 -111
  692. package/src/pages/users/users.html +0 -55
  693. package/src/pages/users/users.module.ts +0 -16
  694. package/src/pages/users/users.scss +0 -10
  695. package/src/pages/users/users.ts +0 -222
  696. package/src/providers/app-config/app-config.ts +0 -33
  697. package/src/providers/auth-service.ts +0 -140
  698. package/src/providers/canned-responses-service/canned-responses-service.ts +0 -57
  699. package/src/providers/chat-archived-conversations-handler.ts +0 -283
  700. package/src/providers/chat-contacts-synchronizer.ts +0 -179
  701. package/src/providers/chat-conversation-handler.ts +0 -547
  702. package/src/providers/chat-conversations-handler.ts +0 -519
  703. package/src/providers/chat-manager/chat-manager.ts +0 -246
  704. package/src/providers/chat-presence-handler.ts +0 -188
  705. package/src/providers/database/database.ts +0 -214
  706. package/src/providers/group/group.ts +0 -243
  707. package/src/providers/messaging-service.ts +0 -267
  708. package/src/providers/nav-proxy.ts +0 -104
  709. package/src/providers/tiledesk-conversation/tiledesk-conversation.ts +0 -134
  710. package/src/providers/translate-service.ts +0 -61
  711. package/src/providers/upload-service/upload-service.ts +0 -117
  712. package/src/providers/user/user.ts +0 -320
  713. package/src/service-worker.js +0 -30
  714. package/src/utils/constants.ts +0 -73
  715. package/src/utils/utils.ts +0 -548
  716. package/src/videochat.php +0 -20
@@ -1,134 +0,0 @@
1
- import { Http, Headers, RequestOptions, Response } from '@angular/http';
2
- import { Injectable } from '@angular/core';
3
- // import { Observable } from 'rxjs/Observable';
4
- // import { BehaviorSubject } from 'rxjs/BehaviorSubject';
5
- import { Observable } from 'rxjs';
6
- import { BehaviorSubject } from 'rxjs';
7
- // firebase
8
- import * as firebase from 'firebase/app';
9
- // ====== [BEGIN chat21]
10
- import { ChatManager } from '../../providers/chat-manager/chat-manager';
11
- import { UserService } from '../../providers/user/user';
12
- import { AppConfigProvider } from '../../providers/app-config/app-config';
13
-
14
- // ====== [END chat21]
15
-
16
-
17
- @Injectable()
18
- export class TiledeskConversationProvider {
19
-
20
- private BASE_URL: string;
21
-
22
- private appId : string;
23
-
24
- /**
25
- * Contains the status of the conversation closing.
26
- *
27
- * When a new conversation is added from firebase, it will be added to the isConversationClosingMap with a false value.
28
- *
29
- * When an existing conversation is removed from firebase, it will be removed from the isConversationClosingMap.
30
- *
31
- * When an user clicks on a conversation to close it,
32
- * the conversation with conversationID will be set to true within the isConversationClosingMap.
33
- *
34
- * If an error occurs the conversation with conversationID will be set to false.
35
- *
36
- */
37
- private isConversationClosingMap: Map<string, boolean>;
38
-
39
- constructor(
40
- public http: Http,
41
- private chatManager: ChatManager,
42
- public appConfig: AppConfigProvider,
43
- private userService: UserService
44
- ) {
45
- this.init();
46
- this.isConversationClosingMap = new Map();
47
- }
48
-
49
- private init() {
50
- //this.BASE_URL = "https://us-central1-chat-v2-dev.cloudfunctions.net";
51
- this.BASE_URL = this.appConfig.getConfig().firebaseConfig.chat21ApiUrl;
52
- console.log("TiledeskConversationProvider::init::BASE_URL::url", this.BASE_URL);
53
-
54
- // retrieve the appId from the chat21 sdk
55
- this.appId = this.chatManager.getTenant();
56
- // console.log("TiledeskConversationProvider::init::appId::url", this.appId);
57
- }
58
-
59
- // public test() : void {
60
- // console.log("TiledeskConversationProvider::test::", "ALL OK!");
61
- // }
62
-
63
-
64
- // Service available at https://github.com/chat21/chat21-cloud-functions/blob/master/docs/api.md#delete-a-conversation
65
- // Syntax:
66
- // curl -X DELETE \
67
- // -H 'Content-Type: application/json' \
68
- // -H "Authorization: Bearer <FIREBASE_ID_TOKEN>" \
69
- // https://us-central1-<FIREBASE_PROJECT_ID>.cloudfunctions.net/api/<APP_ID>/conversations/<RECIPIENT_ID>
70
-
71
- public deleteConversation(recipientId, callback) {
72
- //const appId = this.chatManager.getTenant();
73
- // const token = this.userService.returnToken();
74
- var that = this;
75
- // const token = this.userService.returnToken(); // retrieve the user auth token
76
-
77
- // console.log('appId: ', appId);
78
- console.log('appId2: ', this.appId);
79
-
80
- firebase.auth().currentUser.getIdToken(/* forceRefresh */ true)
81
- .then(function(token) {
82
- console.log('idToken.', token);
83
- // create the header of the request
84
- const headers = new Headers();
85
- headers.append('Accept', 'application/json');
86
- headers.append('Content-Type', 'application/json');
87
- headers.append('Authorization', 'Bearer ' + token);
88
-
89
- const url = that.BASE_URL + '/api/' + that.appId + '/conversations/' + recipientId;
90
- console.log('deleteConversation. URL:', url);
91
-
92
- const options = new RequestOptions({ headers: headers });
93
- that.http
94
- .delete(url, options)
95
- .map((response: Response) => {
96
- callback(response, null);
97
- }).subscribe();
98
- }).catch(function(error) {
99
- // Handle error
100
- console.log('idToken error: ', error);
101
- callback(null, error);
102
- });
103
- }
104
-
105
- /**
106
- * Returns the status of the conversations with conversationId from isConversationClosingMap
107
- *
108
- * @param conversationId the conversation id
109
- * @returns true if the conversation is waiting to be closed, false otherwise
110
- */
111
- public getClosingConversation(conversationId) {
112
- return this.isConversationClosingMap[conversationId];
113
- }
114
-
115
- /**
116
- * Add the conversation with conversationId to the isConversationClosingMap
117
- *
118
- * @param conversationId the id of the conversation of which it wants to save the state
119
- * @param status true if the conversation is waiting to be closed, false otherwise
120
- */
121
- public setClosingConversation(conversationId, status) {
122
- this.isConversationClosingMap[conversationId] = status;
123
- }
124
-
125
- /**
126
- * Delete the conversation with conversationId from the isConversationClosingMap
127
- *
128
- * @param conversationId the id of the conversation of which is wants to delete
129
- */
130
- public deleteClosingConversation(conversationId) {
131
- this.isConversationClosingMap.delete(conversationId);
132
- }
133
-
134
- }
@@ -1,61 +0,0 @@
1
-
2
-
3
- import { Injectable } from '@angular/core';
4
- import 'rxjs/add/operator/map';
5
-
6
- import { TranslateService } from '@ngx-translate/core';
7
-
8
- @Injectable()
9
-
10
- export class CustomTranslateService {
11
-
12
-
13
- public ARRAY_DAYS: string[];
14
- public LABEL_TO: string;
15
- public LABEL_LAST_ACCESS: string;
16
- public LABEL_TOMORROW: string;
17
- public LABEL_TODAY: string;
18
- //public translate: TranslateService;
19
-
20
- //constructor(public translate: TranslateService) {
21
- lang:any;
22
- constructor(public translate: TranslateService) {
23
-
24
- // this language will be used as a fallback when a translation isn't found in the current language
25
- const language = document.documentElement.lang;
26
- console.log('language: ', language, this.translate);
27
- this.translate.use(language);
28
-
29
- this.translate.get('LABEL_TODAY').subscribe(
30
- value => {
31
- // value is our translated string
32
- this.LABEL_TODAY = value;
33
- }
34
- );
35
- this.translate.get('LABEL_TOMORROW').subscribe(
36
- value => {
37
- // value is our translated string
38
- this.LABEL_TOMORROW = value;
39
- }
40
- );
41
-
42
- this.translate.get('LABEL_LAST_ACCESS').subscribe(
43
- value => {
44
- // value is our translated string
45
- this.LABEL_LAST_ACCESS = value;
46
- }
47
- );
48
- this.translate.get('LABEL_TO').subscribe(
49
- value => {
50
- // value is our translated string
51
- this.LABEL_TO = value;
52
- }
53
- ),
54
- this.translate.get('ARRAY_DAYS').subscribe(
55
- value => {
56
- // value is our translated string
57
- this.ARRAY_DAYS = value;
58
- }
59
- )
60
- }
61
- }
@@ -1,117 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import 'rxjs/add/operator/map';
3
- import { Config } from 'ionic-angular';
4
-
5
- import * as firebase from 'firebase';
6
-
7
-
8
- import { UploadModel } from '../../models/upload';
9
-
10
-
11
- @Injectable()
12
- /**
13
- * DESC PROVIDER
14
- */
15
- export class UploadService {
16
- private tenant: string;
17
- private uidCurrentUser: string;
18
-
19
- constructor(
20
- //private af: AngularFire,
21
- //private db: AngularFireDatabase
22
- public config: Config
23
- ) {
24
- // recupero tenant
25
- let appConfig = this.config.get("appConfig");
26
- this.tenant = appConfig.tenant;
27
- }
28
-
29
- private createGuid() {
30
- return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
31
- // tslint:disable-next-line:no-bitwise
32
- const r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8);
33
- return v.toString(16);
34
- });
35
- }
36
-
37
-
38
- pushUploadMessage(upload: UploadModel): any {
39
- const uid = this.createGuid();
40
- const urlImagesNodeFirebase = '/public/images/' + uid + '/';
41
- console.log('pushUpload::::::::::::: ', urlImagesNodeFirebase);
42
- // Create a root reference
43
- const storageRef = firebase.storage().ref();
44
- // Create a reference to 'mountains.jpg'
45
- const mountainsRef = storageRef.child(urlImagesNodeFirebase);
46
- return mountainsRef.put(upload.file);
47
- // .then(function(snapshot) {
48
- // console.log('Uploaded a blob or file! ', snapshot.downloadURL);
49
- // this.observable.next(snapshot.downloadURL);
50
- // });
51
- }
52
-
53
- pushUploadImage(upload: UploadModel): any {
54
- const uid = this.createGuid();
55
- const urlImagesNodeFirebase = '/public/images/' + uid + '/';
56
- console.log('pushUpload::::::::::::: ', urlImagesNodeFirebase);
57
- // Create a root reference
58
- const storageRef = firebase.storage().ref();
59
- // Create a reference to 'mountains.jpg'
60
- const mountainsRef = storageRef.child(urlImagesNodeFirebase);
61
- return mountainsRef.put(upload.file);
62
- }
63
-
64
- pushUpload(upload: UploadModel) {
65
- // recupero current user id
66
- this.uidCurrentUser = firebase.auth().currentUser.uid;
67
- const urlImagesNodeFirebase = '/apps/'+this.tenant+'/contacts/'+this.uidCurrentUser+"-imageProfile";
68
- var next = function(snapshot) {
69
- // upload in progress
70
- var snapshotRef = snapshot as firebase.storage.UploadTaskSnapshot;
71
- var percent = snapshotRef.bytesTransferred / snapshotRef.totalBytes * 100;
72
- console.log("snapshot::::::::::::: ",percent);
73
- upload.progress = percent;
74
- };
75
- var error = function(error) {
76
- // upload failed
77
- console.log(error);
78
- };
79
- var complete = function() {
80
- // upload success
81
- upload.url = uploadTask.snapshot.downloadURL;
82
- upload.name = upload.file.name;
83
- upload.progress = 100;
84
- };
85
- let storageRef = firebase.storage().ref();
86
- let uploadTask = storageRef.child(urlImagesNodeFirebase).put(upload.file);
87
-
88
- // This is equivalent to the first example.
89
- var subscribe = uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED);
90
- subscribe(next, error, complete);
91
- }
92
-
93
- display(uidContact: string, format?: string) {
94
- //https://firebasestorage.googleapis.com/v0/b/chat-v2-dev.appspot.com/o/profiles%2F5aaa99024c3b110014b478f0%2Fthumb_photo.jpg?alt=media&token=45fe1056-4b58-440a-8efd-1b85e54514ce
95
- if(uidContact && uidContact!=''){
96
- var urlImagesNodeFirebase: string;
97
- if(format == 'thumb'){
98
- urlImagesNodeFirebase = '/profiles/'+uidContact+'/thumb_photo.jpg';
99
- } else {
100
- urlImagesNodeFirebase = '/profiles/'+uidContact+'/photo.jpg';
101
- }
102
- console.log('urlImagesNodeFirebase:: '+firebase.storage().ref()+urlImagesNodeFirebase);
103
- const storage = firebase.storage().ref().child(urlImagesNodeFirebase);
104
- return storage.getDownloadURL();
105
- }
106
- // function onResolve(foundURL) {
107
- // console.log('foundURL', foundURL);
108
- // return foundURL;
109
- // }
110
- // function onReject(error){
111
- // console.log('error.code', error.code);
112
- // return;
113
- // }
114
- }
115
-
116
-
117
- }
@@ -1,320 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import 'rxjs/add/operator/map';
3
- import { Events, Platform } from 'ionic-angular';
4
-
5
- // models
6
- import { UserModel } from '../../models/user';
7
- //import { GroupModel } from '../../models/group';
8
- // firebase
9
- import * as firebase from 'firebase/app';
10
- // utils
11
- import { getNowTimestamp, contactsRef } from '../../utils/utils';
12
- import { SYSTEM, URL_NO_IMAGE, LABEL_NOICON } from '../../utils/constants';
13
-
14
- // services
15
- import { ChatManager } from '../../providers/chat-manager/chat-manager';
16
- import { ChatPresenceHandler} from '../../providers/chat-presence-handler';
17
- import { MessagingService } from '../../providers/messaging-service';
18
-
19
- /**
20
- * DESC PROVIDER
21
- */
22
- @Injectable()
23
- export class UserService {
24
- public currentUserDetails: UserModel;
25
- public urlNodeContacts: string;
26
- public uidLastOpenConversation: string;
27
- public token: string;
28
- public userUid: string;
29
-
30
-
31
- constructor(
32
- public platform: Platform,
33
- public events: Events,
34
- public chatManager: ChatManager,
35
- public chatPresenceHandler: ChatPresenceHandler,
36
- public msgService: MessagingService
37
- ) {
38
- /**
39
- * 1 - controllo se l'utente è autenticato e rimango in ascolto
40
- * 2 - recupero tenant e impoto url contatti
41
- */
42
- platform.ready().then(() => {
43
- const tenant = this.chatManager.getTenant();
44
- this.urlNodeContacts = '/apps/'+tenant+'/contacts/';
45
- this.onAuthStateChanged();
46
- });
47
- }
48
-
49
- // setUserDetail(uid): any {
50
- // // controllo se il nodo esiste prima di restituire il risultato
51
- // //// DA FARE ////
52
- // const urlNodeFirebase = this.urlNodeContacts+uid;
53
- // const userFirebase = firebase.database().ref(urlNodeFirebase);
54
- // return userFirebase;
55
- // }
56
-
57
- saveCurrentUserDetail(uid: string, email: string, firstname: string, lastname: string){
58
- let timestamp = getNowTimestamp();
59
- console.log("saveCurrentUserDetail: ",this.urlNodeContacts, uid, firstname, lastname);
60
- return firebase.database().ref(this.urlNodeContacts)
61
- .child(uid).set({uid:uid, email:email, firstname:firstname, lastname:lastname, timestamp:timestamp, imageurl:''})
62
- }
63
-
64
- // setCurrentUserDetails(uid, email) {
65
- // const urlNodeFirebase = this.urlNodeContacts+uid;
66
- // let that = this;
67
- // const userFirebase = firebase.database().ref(urlNodeFirebase);
68
- // userFirebase.on('value', function(snapshot) {
69
- // if (snapshot.val()){
70
- // const user = snapshot.val();
71
- // const fullname = user.firstname+" "+user.lastname;
72
- // that.currentUserDetails = new UserModel(user.uid, user.email, user.firstname, user.lastname, fullname, '');
73
- // }
74
- // else {
75
- // that.currentUserDetails = new UserModel(uid, email, '', '', uid, '');
76
- // // aggiorno user nel nodo firebase contacts
77
- // that.saveCurrentUserDetail(uid, email, '', '');
78
- // }
79
- // // salvo dettaglio currentUser nel singlelton
80
- // that.applicationContext.setCurrentUserDetail(that.currentUserDetails);
81
- // });
82
- // // salvo reference e dettaglio currentUser nel singlelton
83
- // this.applicationContext.setRef(userFirebase, 'contact');
84
- // }
85
-
86
- // getCurrentUserDetails(){
87
- // console.log("getCurrentUserDetails: ", this.currentUserDetails);
88
- // if (this.currentUserDetails){
89
- // return this.currentUserDetails;
90
- // }
91
- // return;
92
- // }
93
-
94
-
95
- /**
96
- * RECUPERO DETTAGLIO UTENTE
97
- * @param uid
98
- * 1 - leggo nodo contacts con uid passato
99
- * 2 - creo un model userDetails vouto e rimango in attesa
100
- * 3 - recupero il dettaglio utente se esiste
101
- * 4 - pubblico dettaglio utente (subscribe in profile.ts)
102
- */
103
- loadUserDetail(uid){
104
- console.log("loadUserDetail: ", uid);
105
- const userFirebase = this.initUserDetails(uid);
106
- return userFirebase.once('value');
107
- // let that = this;
108
- // userFirebase.on("value", function(snapshot) {
109
- // let userDetail = new UserModel(snapshot.key, '', '', snapshot.key, '', '');
110
- // if (snapshot.val()){
111
- // const user = snapshot.val();
112
- // const fullname = user.firstname+" "+user.lastname;
113
- // userDetail = new UserModel(
114
- // snapshot.key,
115
- // user.email,
116
- // user.firstname,
117
- // user.lastname,
118
- // fullname.trim(),
119
- // user.imageurl
120
- // );
121
- // }
122
- // console.log("loadUserDetail: ", userDetail);
123
- // that.events.publish('loadUserDetail:complete', userDetail);
124
- // });
125
- }
126
-
127
- getUserDetail(uid): any {
128
- const tenant = this.chatManager.getTenant();
129
- const urlNodeConcacts = contactsRef(tenant) + uid;
130
- var ref = firebase.database().ref(urlNodeConcacts).once('value');
131
- console.log("UserService::getUserDetail::ref:", urlNodeConcacts);
132
- return ref;
133
- }
134
-
135
- // getSenderDetail(conversationWith): any {
136
- // const tenant = this.chatManager.getTenant();
137
- // const urlNodeAttributes = '/apps/' + tenant + '/groups/' + conversationWith;
138
- // var ref = firebase.database().ref(urlNodeAttributes).once('value');
139
- // console.log("urlNodeAttributes::getSenderDetail::ref:", urlNodeAttributes);
140
- // return ref;
141
- // }
142
-
143
- getListMembers(members): UserModel[]{
144
- let arrayMembers = [];
145
- members.forEach(member => {
146
- console.log("loadUserDetail: ", member);
147
- let userDetail = new UserModel(member, '', '', member, '', URL_NO_IMAGE);
148
- if (member.trim() !== '' && member.trim() !== SYSTEM) {
149
- this.getUserDetail(member)
150
- .then(function(snapshot) {
151
- if (snapshot.val()){
152
- const user = snapshot.val();
153
- const fullname = user.firstname+" "+user.lastname;
154
- let imageUrl = URL_NO_IMAGE;
155
- if(user.imageurl && user.imageurl !== LABEL_NOICON){
156
- imageUrl = user.imageurl;
157
- }
158
- userDetail = new UserModel(
159
- snapshot.key,
160
- user.email,
161
- user.firstname,
162
- user.lastname,
163
- fullname.trim(),
164
- imageUrl
165
- );
166
- console.log("userDetail: ", userDetail)
167
- }
168
- console.log("---------------> : ", member);
169
- arrayMembers.push(userDetail);
170
- })
171
- .catch(function(err) {
172
- console.log('Unable to get permission to notify.', err);
173
- });
174
- }
175
- });
176
- return arrayMembers;
177
- }
178
-
179
-
180
-
181
-
182
- // loadGroupDetail(uidUser, uidGroup){
183
- // console.log("loadGroudDetail: ", uidGroup);
184
- // const userFirebase = this.initGroupDetails(uidUser, uidGroup);
185
- // let that = this;
186
- // userFirebase.on("value", function(snapshot) {
187
- // let groupDetail = new GroupModel(snapshot.key, 0, '', [], '', '');
188
- // if (snapshot.val()){
189
- // const group = snapshot.val();
190
- // groupDetail = new GroupModel(
191
- // snapshot.key,
192
- // group.createdOn,
193
- // group.iconURL,
194
- // group.members,
195
- // group.name,
196
- // group.owner
197
- // );
198
- // }
199
- // console.log("loadGroupDetail: ", groupDetail);
200
- // that.events.publish('loadGroupDetail:complete', groupDetail);
201
- // });
202
- // }
203
-
204
- /**
205
- * CONTROLLO SE L'UTENTE E' AUTENTICATO
206
- * rimango in ascolto sul login logout
207
- * LOGOUT:
208
- * 1 - cancello utente dal nodo presenze
209
- * 2 - rimuovo il token
210
- * 3 - passo lo stato offline al chatmanager
211
- * LOGIN:
212
- * 1 - imposto stato di connessione utente
213
- * 2 - aggiorno il token
214
- * 3 - carico il dettaglio utente (o ne creo uno nuovo)
215
- * 4 - passo lo stato online al chatmanager
216
- */
217
- onAuthStateChanged(){
218
- console.log("UserService::onAuthStateChanged");
219
-
220
- firebase.auth().onAuthStateChanged(user => {
221
- console.log("UserService::onAuthStateChanged::user:", user);
222
-
223
- if (!user) {
224
- console.log(" 3 - PASSO OFFLINE AL CHAT MANAGER");
225
- this.chatManager.goOffLine();
226
- }
227
- else{
228
- this.userUid = user.uid;
229
- console.log(" 1 - IMPOSTO STATO CONNESSO UTENTE ");
230
- this.chatPresenceHandler.setupMyPresence(user.uid);
231
- console.log(" 2 - AGGIORNO IL TOKEN ::: ", user);
232
- const keySubscription = 'eventGetToken';
233
- this.events.subscribe(keySubscription, this.callbackGetToken);
234
- //this.addSubscription(keySubscription);
235
- //this.msgService.getToken();
236
-
237
- this.msgService.getToken(); //this.getToken(); // perchè???
238
- console.log(" 3 - CARICO IL DETTAGLIO UTENTE ::: ");
239
- let that = this;
240
- const userFirebase = this.initUserDetails(user.uid);
241
- userFirebase.on('value', function(snapshot) {
242
- if (snapshot.val()){
243
- const user = snapshot.val();
244
- const fullname = user.firstname+" "+user.lastname;
245
- that.currentUserDetails = new UserModel(user.uid, user.email, user.firstname, user.lastname, fullname, user.imageurl);
246
- }
247
- else {
248
- that.currentUserDetails = new UserModel(user.uid, user.email, '', '', user.uid, '');
249
- that.saveCurrentUserDetail(user.uid, user.email, '', '');
250
- }
251
- console.log(" 4 - PASSO ONLINE AL CHAT MANAGER");
252
- that.chatManager.goOnLine(that.currentUserDetails);
253
- });
254
- }
255
- });
256
- }
257
-
258
- callbackGetToken: any = (token) => {
259
- console.log(" 4 - callbackGetToken");
260
- this.msgService.updateToken(this.userUid, token);
261
- this.token = token;
262
- }
263
-
264
- // getToken() {
265
- // // https://firebase.google.com/docs/auth/admin/verify-id-tokens
266
- // const that = this;
267
- // console.log('getToken. firebase.auth().currentUser: ', firebase.auth().currentUser);
268
- // if(firebase.auth().currentUser){
269
- // firebase.auth().currentUser.getIdToken(/* forceRefresh */ true)
270
- // .then(function(idToken) {
271
- // that.token = idToken;
272
- // console.log('idToken.', idToken);
273
- // that.msgService.updateToken(that.userUid, idToken);
274
- // }).catch(function(error) {
275
- // // Handle error
276
- // console.log('error idToken.', error);
277
- // });
278
- // }
279
-
280
- // }
281
-
282
-
283
- returnToken():string{
284
- return this.token;
285
- }
286
-
287
- /**
288
- * IMPOSTO FIREBASE REFERENCE
289
- * imposto la reference al nodo di firebase dettaglio utente uid
290
- * @param uid
291
- */
292
- initUserDetails(uid) {
293
- const urlNodeFirebase = this.urlNodeContacts+uid;
294
- return firebase.database().ref(urlNodeFirebase);
295
- }
296
-
297
- initGroupDetails(uidUser, uidGroup) {
298
- const tenant = this.chatManager.getTenant();
299
- const urlNodeContacts = '/apps/'+tenant+'/users/'+uidUser+'/groups/'+uidGroup;
300
- return firebase.database().ref(urlNodeContacts);
301
- }
302
-
303
- getUidLastOpenConversation(): string {
304
- return this.uidLastOpenConversation;
305
- }
306
-
307
- /**
308
- * LOGUOT FIREBASE
309
- * al logout vado in automatico su onAuthStateChanged
310
- */
311
- logoutUser() {
312
- console.log("UserService::logoutUser");
313
- console.log(" 1 - CANCELLO L'UTENTE DAL NODO PRESENZE");
314
- this.chatPresenceHandler.goOffline();
315
- console.log(" 2 - RIMUOVO IL TOKEN");
316
- this.msgService.removeToken();
317
- return firebase.auth().signOut();
318
- }
319
-
320
- }
@@ -1,30 +0,0 @@
1
- /**
2
- * Check out https://googlechrome.github.io/sw-toolbox/ for
3
- * more info on how to use sw-toolbox to custom configure your service worker.
4
- */
5
-
6
-
7
- 'use strict';
8
- importScripts('./build/sw-toolbox.js');
9
-
10
- self.toolbox.options.cache = {
11
- name: 'ionic-cache'
12
- };
13
-
14
- // pre-cache our key assets
15
- self.toolbox.precache(
16
- [
17
- './build/main.js',
18
- './build/main.css',
19
- './build/polyfills.js',
20
- 'index.html',
21
- 'manifest.json'
22
- ]
23
- );
24
-
25
- // dynamically cache any other local assets
26
- self.toolbox.router.any('/*', self.toolbox.cacheFirst);
27
-
28
- // for any other requests go to the network, cache,
29
- // and then only use that cached resource if your user goes offline
30
- self.toolbox.router.default = self.toolbox.networkFirst;