@selfcommunity/react-core 0.1.7 → 0.1.8-alpha.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 (395) hide show
  1. package/lib/{types → cjs}/components/provider/SCAlertMessagesProvider/index.d.ts +0 -0
  2. package/lib/{types → cjs}/components/provider/SCAlertMessagesProvider/index.d.ts.map +0 -0
  3. package/lib/cjs/components/provider/SCAlertMessagesProvider/index.js +37 -35
  4. package/lib/cjs/components/provider/SCAlertMessagesProvider/index.js.map +1 -0
  5. package/lib/{types → cjs}/components/provider/SCContextProvider/index.d.ts +0 -0
  6. package/lib/{types → cjs}/components/provider/SCContextProvider/index.d.ts.map +0 -0
  7. package/lib/cjs/components/provider/SCContextProvider/index.js +74 -81
  8. package/lib/cjs/components/provider/SCContextProvider/index.js.map +1 -0
  9. package/lib/{types → cjs}/components/provider/SCLocaleProvider/index.d.ts +0 -0
  10. package/lib/{types → cjs}/components/provider/SCLocaleProvider/index.d.ts.map +0 -0
  11. package/lib/cjs/components/provider/SCLocaleProvider/index.js +86 -121
  12. package/lib/cjs/components/provider/SCLocaleProvider/index.js.map +1 -0
  13. package/lib/{types → cjs}/components/provider/SCNotificationProvider/index.d.ts +0 -0
  14. package/lib/{types → cjs}/components/provider/SCNotificationProvider/index.d.ts.map +0 -0
  15. package/lib/cjs/components/provider/SCNotificationProvider/index.js +41 -41
  16. package/lib/cjs/components/provider/SCNotificationProvider/index.js.map +1 -0
  17. package/lib/{types → cjs}/components/provider/SCPreferencesProvider/index.d.ts +0 -0
  18. package/lib/{types → cjs}/components/provider/SCPreferencesProvider/index.d.ts.map +0 -0
  19. package/lib/cjs/components/provider/SCPreferencesProvider/index.js +61 -62
  20. package/lib/cjs/components/provider/SCPreferencesProvider/index.js.map +1 -0
  21. package/lib/{types → cjs}/components/provider/SCRoutingProvider/index.d.ts +0 -0
  22. package/lib/{types → cjs}/components/provider/SCRoutingProvider/index.d.ts.map +1 -1
  23. package/lib/cjs/components/provider/SCRoutingProvider/index.js +104 -111
  24. package/lib/cjs/components/provider/SCRoutingProvider/index.js.map +1 -0
  25. package/lib/{types → cjs}/components/provider/SCThemeProvider/index.d.ts +0 -0
  26. package/lib/{types → cjs}/components/provider/SCThemeProvider/index.d.ts.map +0 -0
  27. package/lib/cjs/components/provider/SCThemeProvider/index.js +66 -79
  28. package/lib/cjs/components/provider/SCThemeProvider/index.js.map +1 -0
  29. package/lib/{types → cjs}/components/provider/SCUserProvider/index.d.ts +0 -0
  30. package/lib/{types → cjs}/components/provider/SCUserProvider/index.d.ts.map +0 -0
  31. package/lib/cjs/components/provider/SCUserProvider/index.js +215 -270
  32. package/lib/cjs/components/provider/SCUserProvider/index.js.map +1 -0
  33. package/lib/{types → cjs}/components/router/index.d.ts +0 -0
  34. package/lib/{types → cjs}/components/router/index.d.ts.map +0 -0
  35. package/lib/cjs/components/router/index.js +48 -49
  36. package/lib/cjs/components/router/index.js.map +1 -0
  37. package/lib/{types → cjs}/constants/Actions.d.ts +0 -0
  38. package/lib/{types → cjs}/constants/Actions.d.ts.map +0 -0
  39. package/lib/cjs/constants/Actions.js +3 -4
  40. package/lib/cjs/constants/Actions.js.map +1 -0
  41. package/lib/{types → cjs}/constants/ContextProviders.d.ts +0 -0
  42. package/lib/{types → cjs}/constants/ContextProviders.d.ts.map +0 -0
  43. package/lib/cjs/constants/ContextProviders.js +22 -24
  44. package/lib/cjs/constants/ContextProviders.js.map +1 -0
  45. package/lib/{types → cjs}/constants/Device.d.ts +0 -0
  46. package/lib/{types → cjs}/constants/Device.d.ts.map +0 -0
  47. package/lib/cjs/constants/Device.js +3 -5
  48. package/lib/cjs/constants/Device.js.map +1 -0
  49. package/lib/{types → cjs}/constants/Errors.d.ts +0 -0
  50. package/lib/{types → cjs}/constants/Errors.d.ts.map +0 -0
  51. package/lib/cjs/constants/Errors.js +3 -5
  52. package/lib/cjs/constants/Errors.js.map +1 -0
  53. package/lib/{types → cjs}/constants/Features.d.ts +0 -0
  54. package/lib/{types → cjs}/constants/Features.d.ts.map +0 -0
  55. package/lib/cjs/constants/Features.js +43 -83
  56. package/lib/cjs/constants/Features.js.map +1 -0
  57. package/lib/{types → cjs}/constants/Locale.d.ts +0 -0
  58. package/lib/{types → cjs}/constants/Locale.d.ts.map +0 -0
  59. package/lib/cjs/constants/Locale.js +10 -17
  60. package/lib/cjs/constants/Locale.js.map +1 -0
  61. package/lib/{types → cjs}/constants/Notification.d.ts +0 -0
  62. package/lib/{types → cjs}/constants/Notification.d.ts.map +0 -0
  63. package/lib/cjs/constants/Notification.js +44 -53
  64. package/lib/cjs/constants/Notification.js.map +1 -0
  65. package/lib/{types → cjs}/constants/Notifications.d.ts +0 -0
  66. package/lib/{types → cjs}/constants/Notifications.d.ts.map +0 -0
  67. package/lib/cjs/constants/Notifications.js +11 -25
  68. package/lib/cjs/constants/Notifications.js.map +1 -0
  69. package/lib/cjs/constants/Preferences.d.ts +201 -0
  70. package/lib/cjs/constants/Preferences.d.ts.map +1 -0
  71. package/lib/cjs/constants/Preferences.js +184 -292
  72. package/lib/cjs/constants/Preferences.js.map +1 -0
  73. package/lib/{types → cjs}/constants/Routes.d.ts +0 -0
  74. package/lib/{types → cjs}/constants/Routes.d.ts.map +0 -0
  75. package/lib/cjs/constants/Routes.js +38 -59
  76. package/lib/cjs/constants/Routes.js.map +1 -0
  77. package/lib/{types → cjs}/constants/Session.d.ts +0 -0
  78. package/lib/{types → cjs}/constants/Session.d.ts.map +0 -0
  79. package/lib/cjs/constants/Session.js +12 -21
  80. package/lib/cjs/constants/Session.js.map +1 -0
  81. package/lib/{types → cjs}/constants/Theme.d.ts +0 -0
  82. package/lib/{types → cjs}/constants/Theme.d.ts.map +0 -0
  83. package/lib/cjs/constants/Theme.js +3 -4
  84. package/lib/cjs/constants/Theme.js.map +1 -0
  85. package/lib/cjs/constants/WebSocket.d.ts +4 -0
  86. package/lib/cjs/constants/WebSocket.d.ts.map +1 -0
  87. package/lib/cjs/constants/WebSocket.js +6 -9
  88. package/lib/cjs/constants/WebSocket.js.map +1 -0
  89. package/lib/{types → cjs}/hooks/useSCAuth.d.ts +0 -0
  90. package/lib/{types → cjs}/hooks/useSCAuth.d.ts.map +0 -0
  91. package/lib/cjs/hooks/useSCAuth.js +212 -282
  92. package/lib/cjs/hooks/useSCAuth.js.map +1 -0
  93. package/lib/{types → cjs}/hooks/useSCCachingManager.d.ts +0 -0
  94. package/lib/{types → cjs}/hooks/useSCCachingManager.d.ts.map +0 -0
  95. package/lib/cjs/hooks/useSCCachingManager.js +37 -51
  96. package/lib/cjs/hooks/useSCCachingManager.js.map +1 -0
  97. package/lib/{types → cjs}/hooks/useSCConnectionsManager.d.ts +0 -0
  98. package/lib/{types → cjs}/hooks/useSCConnectionsManager.d.ts.map +0 -0
  99. package/lib/cjs/hooks/useSCConnectionsManager.js +190 -254
  100. package/lib/cjs/hooks/useSCConnectionsManager.js.map +1 -0
  101. package/lib/{types → cjs}/hooks/useSCFetchAddressingTagList.d.ts +0 -0
  102. package/lib/{types → cjs}/hooks/useSCFetchAddressingTagList.d.ts.map +0 -0
  103. package/lib/cjs/hooks/useSCFetchAddressingTagList.js +64 -55
  104. package/lib/cjs/hooks/useSCFetchAddressingTagList.js.map +1 -0
  105. package/lib/{types → cjs}/hooks/useSCFetchCategories.d.ts +0 -0
  106. package/lib/{types → cjs}/hooks/useSCFetchCategories.d.ts.map +0 -0
  107. package/lib/cjs/hooks/useSCFetchCategories.js +46 -56
  108. package/lib/cjs/hooks/useSCFetchCategories.js.map +1 -0
  109. package/lib/{types → cjs}/hooks/useSCFetchCategory.d.ts +0 -0
  110. package/lib/{types → cjs}/hooks/useSCFetchCategory.d.ts.map +0 -0
  111. package/lib/cjs/hooks/useSCFetchCategory.js +44 -59
  112. package/lib/cjs/hooks/useSCFetchCategory.js.map +1 -0
  113. package/lib/{types → cjs}/hooks/useSCFetchCommentObject.d.ts +0 -0
  114. package/lib/{types → cjs}/hooks/useSCFetchCommentObject.d.ts.map +0 -0
  115. package/lib/cjs/hooks/useSCFetchCommentObject.js +44 -59
  116. package/lib/cjs/hooks/useSCFetchCommentObject.js.map +1 -0
  117. package/lib/{types → cjs}/hooks/useSCFetchCommentObjects.d.ts +0 -0
  118. package/lib/{types → cjs}/hooks/useSCFetchCommentObjects.d.ts.map +0 -0
  119. package/lib/cjs/hooks/useSCFetchCommentObjects.js +157 -254
  120. package/lib/cjs/hooks/useSCFetchCommentObjects.js.map +1 -0
  121. package/lib/{types → cjs}/hooks/useSCFetchCustomAdv.d.ts +0 -0
  122. package/lib/{types → cjs}/hooks/useSCFetchCustomAdv.d.ts.map +0 -0
  123. package/lib/cjs/hooks/useSCFetchCustomAdv.js +57 -75
  124. package/lib/cjs/hooks/useSCFetchCustomAdv.js.map +1 -0
  125. package/lib/{types → cjs}/hooks/useSCFetchFeedObject.d.ts +0 -0
  126. package/lib/{types → cjs}/hooks/useSCFetchFeedObject.d.ts.map +0 -0
  127. package/lib/cjs/hooks/useSCFetchFeedObject.js +49 -69
  128. package/lib/cjs/hooks/useSCFetchFeedObject.js.map +1 -0
  129. package/lib/{types → cjs}/hooks/useSCFetchIncubator.d.ts +0 -0
  130. package/lib/{types → cjs}/hooks/useSCFetchIncubator.d.ts.map +0 -0
  131. package/lib/cjs/hooks/useSCFetchIncubator.js +44 -59
  132. package/lib/cjs/hooks/useSCFetchIncubator.js.map +1 -0
  133. package/lib/{types → cjs}/hooks/useSCFetchTag.d.ts +0 -0
  134. package/lib/{types → cjs}/hooks/useSCFetchTag.d.ts.map +0 -0
  135. package/lib/cjs/hooks/useSCFetchTag.js +44 -59
  136. package/lib/cjs/hooks/useSCFetchTag.js.map +1 -0
  137. package/lib/{types → cjs}/hooks/useSCFetchUser.d.ts +0 -0
  138. package/lib/{types → cjs}/hooks/useSCFetchUser.d.ts.map +1 -1
  139. package/lib/cjs/hooks/useSCFetchUser.js +47 -59
  140. package/lib/cjs/hooks/useSCFetchUser.js.map +1 -0
  141. package/lib/{types → cjs}/hooks/useSCFollowedCategoriesManager.d.ts +0 -0
  142. package/lib/{types → cjs}/hooks/useSCFollowedCategoriesManager.d.ts.map +0 -0
  143. package/lib/cjs/hooks/useSCFollowedCategoriesManager.js +105 -147
  144. package/lib/cjs/hooks/useSCFollowedCategoriesManager.js.map +1 -0
  145. package/lib/{types → cjs}/hooks/useSCFollowersManager.d.ts +0 -0
  146. package/lib/{types → cjs}/hooks/useSCFollowersManager.d.ts.map +0 -0
  147. package/lib/cjs/hooks/useSCFollowersManager.js +154 -204
  148. package/lib/cjs/hooks/useSCFollowersManager.js.map +1 -0
  149. package/lib/{types → cjs}/hooks/useSCMediaClick.d.ts +0 -0
  150. package/lib/{types → cjs}/hooks/useSCMediaClick.d.ts.map +0 -0
  151. package/lib/cjs/hooks/useSCMediaClick.js +18 -25
  152. package/lib/cjs/hooks/useSCMediaClick.js.map +1 -0
  153. package/lib/{types → cjs}/hooks/useSCSubscribedIncubatorsManager.d.ts +0 -0
  154. package/lib/{types → cjs}/hooks/useSCSubscribedIncubatorsManager.d.ts.map +0 -0
  155. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.js +118 -148
  156. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.js.map +1 -0
  157. package/lib/{types → cjs}/hooks/useSCWebPushMessaging.d.ts +0 -0
  158. package/lib/{types → cjs}/hooks/useSCWebPushMessaging.d.ts.map +0 -0
  159. package/lib/cjs/hooks/useSCWebPushMessaging.js +268 -268
  160. package/lib/cjs/hooks/useSCWebPushMessaging.js.map +1 -0
  161. package/lib/{types → cjs}/hooks/useSCWebSocket.d.ts +0 -0
  162. package/lib/{types → cjs}/hooks/useSCWebSocket.d.ts.map +0 -0
  163. package/lib/cjs/hooks/useSCWebSocket.js +103 -125
  164. package/lib/cjs/hooks/useSCWebSocket.js.map +1 -0
  165. package/lib/{types → cjs}/index.d.ts +0 -0
  166. package/lib/{types → cjs}/index.d.ts.map +0 -0
  167. package/lib/cjs/index.js +131 -144
  168. package/lib/cjs/index.js.map +1 -0
  169. package/lib/cjs/themes/theme.d.ts +9 -0
  170. package/lib/cjs/themes/theme.d.ts.map +1 -0
  171. package/lib/cjs/themes/theme.js +132 -143
  172. package/lib/cjs/themes/theme.js.map +1 -0
  173. package/lib/{types → cjs}/types/context.d.ts +0 -0
  174. package/lib/{types → cjs}/types/context.d.ts.map +0 -0
  175. package/lib/cjs/types/context.js +2 -2
  176. package/lib/cjs/types/context.js.map +1 -0
  177. package/lib/{types → cjs}/types/index.d.ts +0 -0
  178. package/lib/{types → cjs}/types/index.d.ts.map +0 -0
  179. package/lib/cjs/types/index.js +2 -21
  180. package/lib/cjs/types/index.js.map +1 -0
  181. package/lib/{types → cjs}/utils/errors.d.ts +0 -0
  182. package/lib/{types → cjs}/utils/errors.d.ts.map +0 -0
  183. package/lib/cjs/utils/errors.js +138 -149
  184. package/lib/cjs/utils/errors.js.map +1 -0
  185. package/lib/{types → cjs}/utils/locale.d.ts +0 -0
  186. package/lib/{types → cjs}/utils/locale.d.ts.map +0 -0
  187. package/lib/cjs/utils/locale.js +32 -48
  188. package/lib/cjs/utils/locale.js.map +1 -0
  189. package/lib/{types → cjs}/utils/user.d.ts +0 -0
  190. package/lib/{types → cjs}/utils/user.d.ts.map +0 -0
  191. package/lib/cjs/utils/user.js +25 -40
  192. package/lib/cjs/utils/user.js.map +1 -0
  193. package/lib/{types → cjs}/utils/validator.d.ts +0 -0
  194. package/lib/{types → cjs}/utils/validator.d.ts.map +0 -0
  195. package/lib/cjs/utils/validator.js +386 -576
  196. package/lib/cjs/utils/validator.js.map +1 -0
  197. package/lib/esm/components/provider/SCAlertMessagesProvider/index.d.ts +37 -0
  198. package/lib/esm/components/provider/SCAlertMessagesProvider/index.d.ts.map +1 -0
  199. package/lib/esm/components/provider/SCAlertMessagesProvider/index.js +11 -37
  200. package/lib/esm/components/provider/SCAlertMessagesProvider/index.js.map +1 -0
  201. package/lib/esm/components/provider/SCContextProvider/index.d.ts +35 -0
  202. package/lib/esm/components/provider/SCContextProvider/index.d.ts.map +1 -0
  203. package/lib/esm/components/provider/SCContextProvider/index.js +48 -83
  204. package/lib/esm/components/provider/SCContextProvider/index.js.map +1 -0
  205. package/lib/esm/components/provider/SCLocaleProvider/index.d.ts +42 -0
  206. package/lib/esm/components/provider/SCLocaleProvider/index.d.ts.map +1 -0
  207. package/lib/esm/components/provider/SCLocaleProvider/index.js +59 -123
  208. package/lib/esm/components/provider/SCLocaleProvider/index.js.map +1 -0
  209. package/lib/esm/components/provider/SCNotificationProvider/index.d.ts +37 -0
  210. package/lib/esm/components/provider/SCNotificationProvider/index.d.ts.map +1 -0
  211. package/lib/esm/components/provider/SCNotificationProvider/index.js +12 -43
  212. package/lib/esm/components/provider/SCNotificationProvider/index.js.map +1 -0
  213. package/lib/esm/components/provider/SCPreferencesProvider/index.d.ts +38 -0
  214. package/lib/esm/components/provider/SCPreferencesProvider/index.d.ts.map +1 -0
  215. package/lib/esm/components/provider/SCPreferencesProvider/index.js +35 -64
  216. package/lib/esm/components/provider/SCPreferencesProvider/index.js.map +1 -0
  217. package/lib/esm/components/provider/SCRoutingProvider/index.d.ts +39 -0
  218. package/lib/esm/components/provider/SCRoutingProvider/index.d.ts.map +1 -0
  219. package/lib/esm/components/provider/SCRoutingProvider/index.js +78 -113
  220. package/lib/esm/components/provider/SCRoutingProvider/index.js.map +1 -0
  221. package/lib/esm/components/provider/SCThemeProvider/index.d.ts +49 -0
  222. package/lib/esm/components/provider/SCThemeProvider/index.d.ts.map +1 -0
  223. package/lib/esm/components/provider/SCThemeProvider/index.js +36 -81
  224. package/lib/esm/components/provider/SCThemeProvider/index.js.map +1 -0
  225. package/lib/esm/components/provider/SCUserProvider/index.d.ts +38 -0
  226. package/lib/esm/components/provider/SCUserProvider/index.d.ts.map +1 -0
  227. package/lib/esm/components/provider/SCUserProvider/index.js +186 -272
  228. package/lib/esm/components/provider/SCUserProvider/index.js.map +1 -0
  229. package/lib/esm/components/router/index.d.ts +34 -0
  230. package/lib/esm/components/router/index.d.ts.map +1 -0
  231. package/lib/esm/components/router/index.js +24 -50
  232. package/lib/esm/components/router/index.js.map +1 -0
  233. package/lib/esm/constants/Actions.d.ts +2 -0
  234. package/lib/esm/constants/Actions.d.ts.map +1 -0
  235. package/lib/esm/constants/Actions.js +2 -6
  236. package/lib/esm/constants/Actions.js.map +1 -0
  237. package/lib/esm/constants/ContextProviders.d.ts +6 -0
  238. package/lib/esm/constants/ContextProviders.d.ts.map +1 -0
  239. package/lib/esm/constants/ContextProviders.js +18 -26
  240. package/lib/esm/constants/ContextProviders.js.map +1 -0
  241. package/lib/esm/constants/Device.d.ts +6 -0
  242. package/lib/esm/constants/Device.d.ts.map +1 -0
  243. package/lib/esm/constants/Device.js +2 -7
  244. package/lib/esm/constants/Device.js.map +1 -0
  245. package/lib/esm/constants/Errors.d.ts +5 -0
  246. package/lib/esm/constants/Errors.d.ts.map +1 -0
  247. package/lib/esm/constants/Errors.js +2 -7
  248. package/lib/esm/constants/Errors.js.map +1 -0
  249. package/lib/esm/constants/Features.d.ts +41 -0
  250. package/lib/esm/constants/Features.d.ts.map +1 -0
  251. package/lib/esm/constants/Features.js +41 -84
  252. package/lib/esm/constants/Features.js.map +1 -0
  253. package/lib/esm/constants/Locale.d.ts +8 -0
  254. package/lib/esm/constants/Locale.d.ts.map +1 -0
  255. package/lib/esm/constants/Locale.js +8 -18
  256. package/lib/esm/constants/Locale.js.map +1 -0
  257. package/lib/esm/constants/Notification.d.ts +55 -0
  258. package/lib/esm/constants/Notification.d.ts.map +1 -0
  259. package/lib/esm/constants/Notification.js +42 -54
  260. package/lib/esm/constants/Notification.js.map +1 -0
  261. package/lib/esm/constants/Notifications.d.ts +11 -0
  262. package/lib/esm/constants/Notifications.d.ts.map +1 -0
  263. package/lib/esm/constants/Notifications.js +9 -26
  264. package/lib/esm/constants/Notifications.js.map +1 -0
  265. package/lib/esm/constants/Preferences.d.ts +201 -0
  266. package/lib/esm/constants/Preferences.d.ts.map +1 -0
  267. package/lib/esm/constants/Preferences.js +181 -296
  268. package/lib/esm/constants/Preferences.js.map +1 -0
  269. package/lib/esm/constants/Routes.d.ts +29 -0
  270. package/lib/esm/constants/Routes.d.ts.map +1 -0
  271. package/lib/esm/constants/Routes.js +36 -60
  272. package/lib/esm/constants/Routes.js.map +1 -0
  273. package/lib/esm/constants/Session.d.ts +10 -0
  274. package/lib/esm/constants/Session.d.ts.map +1 -0
  275. package/lib/esm/constants/Session.js +10 -22
  276. package/lib/esm/constants/Session.js.map +1 -0
  277. package/lib/esm/constants/Theme.d.ts +2 -0
  278. package/lib/esm/constants/Theme.d.ts.map +1 -0
  279. package/lib/esm/constants/Theme.js +2 -6
  280. package/lib/esm/constants/Theme.js.map +1 -0
  281. package/lib/esm/constants/WebSocket.d.ts +4 -0
  282. package/lib/esm/constants/WebSocket.d.ts.map +1 -0
  283. package/lib/esm/constants/WebSocket.js +4 -10
  284. package/lib/esm/constants/WebSocket.js.map +1 -0
  285. package/lib/esm/hooks/useSCAuth.d.ts +56 -0
  286. package/lib/esm/hooks/useSCAuth.d.ts.map +1 -0
  287. package/lib/esm/hooks/useSCAuth.js +185 -285
  288. package/lib/esm/hooks/useSCAuth.js.map +1 -0
  289. package/lib/esm/hooks/useSCCachingManager.d.ts +19 -0
  290. package/lib/esm/hooks/useSCCachingManager.d.ts.map +1 -0
  291. package/lib/esm/hooks/useSCCachingManager.js +36 -53
  292. package/lib/esm/hooks/useSCCachingManager.js.map +1 -0
  293. package/lib/esm/hooks/useSCConnectionsManager.d.ts +40 -0
  294. package/lib/esm/hooks/useSCConnectionsManager.d.ts.map +1 -0
  295. package/lib/esm/hooks/useSCConnectionsManager.js +186 -256
  296. package/lib/esm/hooks/useSCConnectionsManager.js.map +1 -0
  297. package/lib/esm/hooks/useSCFetchAddressingTagList.d.ts +14 -0
  298. package/lib/esm/hooks/useSCFetchAddressingTagList.d.ts.map +1 -0
  299. package/lib/esm/hooks/useSCFetchAddressingTagList.js +39 -56
  300. package/lib/esm/hooks/useSCFetchAddressingTagList.js.map +1 -0
  301. package/lib/esm/hooks/useSCFetchCategories.d.ts +17 -0
  302. package/lib/esm/hooks/useSCFetchCategories.d.ts.map +1 -0
  303. package/lib/esm/hooks/useSCFetchCategories.js +45 -57
  304. package/lib/esm/hooks/useSCFetchCategories.js.map +1 -0
  305. package/lib/esm/hooks/useSCFetchCategory.d.ts +19 -0
  306. package/lib/esm/hooks/useSCFetchCategory.d.ts.map +1 -0
  307. package/lib/esm/hooks/useSCFetchCategory.js +42 -60
  308. package/lib/esm/hooks/useSCFetchCategory.js.map +1 -0
  309. package/lib/esm/hooks/useSCFetchCommentObject.d.ts +19 -0
  310. package/lib/esm/hooks/useSCFetchCommentObject.d.ts.map +1 -0
  311. package/lib/esm/hooks/useSCFetchCommentObject.js +42 -60
  312. package/lib/esm/hooks/useSCFetchCommentObject.js.map +1 -0
  313. package/lib/esm/hooks/useSCFetchCommentObjects.d.ts +53 -0
  314. package/lib/esm/hooks/useSCFetchCommentObjects.d.ts.map +1 -0
  315. package/lib/esm/hooks/useSCFetchCommentObjects.js +153 -257
  316. package/lib/esm/hooks/useSCFetchCommentObjects.js.map +1 -0
  317. package/lib/esm/hooks/useSCFetchCustomAdv.d.ts +19 -0
  318. package/lib/esm/hooks/useSCFetchCustomAdv.d.ts.map +1 -0
  319. package/lib/esm/hooks/useSCFetchCustomAdv.js +55 -76
  320. package/lib/esm/hooks/useSCFetchCustomAdv.js.map +1 -0
  321. package/lib/esm/hooks/useSCFetchFeedObject.d.ts +21 -0
  322. package/lib/esm/hooks/useSCFetchFeedObject.d.ts.map +1 -0
  323. package/lib/esm/hooks/useSCFetchFeedObject.js +47 -70
  324. package/lib/esm/hooks/useSCFetchFeedObject.js.map +1 -0
  325. package/lib/esm/hooks/useSCFetchIncubator.d.ts +19 -0
  326. package/lib/esm/hooks/useSCFetchIncubator.d.ts.map +1 -0
  327. package/lib/esm/hooks/useSCFetchIncubator.js +42 -60
  328. package/lib/esm/hooks/useSCFetchIncubator.js.map +1 -0
  329. package/lib/esm/hooks/useSCFetchTag.d.ts +19 -0
  330. package/lib/esm/hooks/useSCFetchTag.d.ts.map +1 -0
  331. package/lib/esm/hooks/useSCFetchTag.js +42 -60
  332. package/lib/esm/hooks/useSCFetchTag.js.map +1 -0
  333. package/lib/esm/hooks/useSCFetchUser.d.ts +19 -0
  334. package/lib/esm/hooks/useSCFetchUser.d.ts.map +1 -0
  335. package/lib/esm/hooks/useSCFetchUser.js +45 -60
  336. package/lib/esm/hooks/useSCFetchUser.js.map +1 -0
  337. package/lib/esm/hooks/useSCFollowedCategoriesManager.d.ts +37 -0
  338. package/lib/esm/hooks/useSCFollowedCategoriesManager.d.ts.map +1 -0
  339. package/lib/esm/hooks/useSCFollowedCategoriesManager.js +101 -149
  340. package/lib/esm/hooks/useSCFollowedCategoriesManager.js.map +1 -0
  341. package/lib/esm/hooks/useSCFollowersManager.d.ts +37 -0
  342. package/lib/esm/hooks/useSCFollowersManager.d.ts.map +1 -0
  343. package/lib/esm/hooks/useSCFollowersManager.js +150 -206
  344. package/lib/esm/hooks/useSCFollowersManager.js.map +1 -0
  345. package/lib/esm/hooks/useSCMediaClick.d.ts +4 -0
  346. package/lib/esm/hooks/useSCMediaClick.d.ts.map +1 -0
  347. package/lib/esm/hooks/useSCMediaClick.js +17 -27
  348. package/lib/esm/hooks/useSCMediaClick.js.map +1 -0
  349. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.d.ts +27 -0
  350. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.d.ts.map +1 -0
  351. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.js +114 -150
  352. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.js.map +1 -0
  353. package/lib/esm/hooks/useSCWebPushMessaging.d.ts +9 -0
  354. package/lib/esm/hooks/useSCWebPushMessaging.d.ts.map +1 -0
  355. package/lib/esm/hooks/useSCWebPushMessaging.js +244 -270
  356. package/lib/esm/hooks/useSCWebPushMessaging.js.map +1 -0
  357. package/lib/esm/hooks/useSCWebSocket.d.ts +12 -0
  358. package/lib/esm/hooks/useSCWebSocket.d.ts.map +1 -0
  359. package/lib/esm/hooks/useSCWebSocket.js +99 -127
  360. package/lib/esm/hooks/useSCWebSocket.js.map +1 -0
  361. package/lib/esm/index.d.ts +73 -0
  362. package/lib/esm/index.d.ts.map +1 -0
  363. package/lib/esm/index.js +69 -151
  364. package/lib/esm/index.js.map +1 -0
  365. package/lib/esm/themes/theme.d.ts +9 -0
  366. package/lib/esm/themes/theme.d.ts.map +1 -0
  367. package/lib/esm/themes/theme.js +128 -144
  368. package/lib/esm/themes/theme.js.map +1 -0
  369. package/lib/esm/types/context.d.ts +428 -0
  370. package/lib/esm/types/context.d.ts.map +1 -0
  371. package/lib/esm/types/context.js +2 -3
  372. package/lib/esm/types/context.js.map +1 -0
  373. package/lib/esm/types/index.d.ts +3 -0
  374. package/lib/esm/types/index.d.ts.map +1 -0
  375. package/lib/esm/types/index.js +2 -22
  376. package/lib/esm/types/index.js.map +1 -0
  377. package/lib/esm/utils/errors.d.ts +98 -0
  378. package/lib/esm/utils/errors.d.ts.map +1 -0
  379. package/lib/esm/utils/errors.js +114 -155
  380. package/lib/esm/utils/errors.js.map +1 -0
  381. package/lib/esm/utils/locale.d.ts +10 -0
  382. package/lib/esm/utils/locale.d.ts.map +1 -0
  383. package/lib/esm/utils/locale.js +27 -50
  384. package/lib/esm/utils/locale.js.map +1 -0
  385. package/lib/esm/utils/user.d.ts +41 -0
  386. package/lib/esm/utils/user.d.ts.map +1 -0
  387. package/lib/esm/utils/user.js +23 -46
  388. package/lib/esm/utils/user.js.map +1 -0
  389. package/lib/esm/utils/validator.d.ts +239 -0
  390. package/lib/esm/utils/validator.d.ts.map +1 -0
  391. package/lib/esm/utils/validator.js +352 -588
  392. package/lib/esm/utils/validator.js.map +1 -0
  393. package/lib/umd/react-core.js +1 -1
  394. package/package.json +9 -11
  395. package/lib/types/tsconfig.build.tsbuildinfo +0 -1
@@ -1,20 +1,13 @@
1
1
  "use strict";
2
-
3
- exports.__esModule = true;
4
- exports.default = useSCFollowedCategoriesManager;
5
-
6
- var _react = require("react");
7
-
8
- var _apiServices = require("@selfcommunity/api-services");
9
-
10
- var _useSCCachingManager = _interopRequireDefault(require("./useSCCachingManager"));
11
-
12
- var _Errors = require("../constants/Errors");
13
-
14
- var _utils = require("@selfcommunity/utils");
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = require("react");
7
+ const api_services_1 = require("@selfcommunity/api-services");
8
+ const useSCCachingManager_1 = __importDefault(require("./useSCCachingManager"));
9
+ const Errors_1 = require("../constants/Errors");
10
+ const utils_1 = require("@selfcommunity/utils");
18
11
  /**
19
12
  :::info
20
13
  This custom hook is used to manage the categories followed.
@@ -30,136 +23,101 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
30
23
  :::
31
24
  */
32
25
  function useSCFollowedCategoriesManager(user, updateUser) {
33
- const {
34
- cache,
35
- updateCache,
36
- emptyCache,
37
- data,
38
- setData,
39
- loading,
40
- setLoading,
41
- isLoading
42
- } = (0, _useSCCachingManager.default)();
43
- /**
44
- * Memoized refresh all categories
45
- * It makes a single request to the server and retrieves
46
- * all the categories followed by the user in a single solution
47
- * It might be useful for multi-tab sync
48
- */
49
-
50
- const refresh = (0, _react.useMemo)(() => () => {
51
- emptyCache();
52
-
53
- if (user) {
54
- // Only if user is authenticated
55
- _apiServices.http.request({
56
- url: _apiServices.Endpoints.FollowedCategories.url({
57
- id: user.id
58
- }),
59
- method: _apiServices.Endpoints.FollowedCategories.method
60
- }).then(res => {
61
- if (res.status >= 300) {
62
- return Promise.reject(res);
26
+ const { cache, updateCache, emptyCache, data, setData, loading, setLoading, isLoading } = (0, useSCCachingManager_1.default)();
27
+ /**
28
+ * Memoized refresh all categories
29
+ * It makes a single request to the server and retrieves
30
+ * all the categories followed by the user in a single solution
31
+ * It might be useful for multi-tab sync
32
+ */
33
+ const refresh = (0, react_1.useMemo)(() => () => {
34
+ emptyCache();
35
+ if (user) {
36
+ // Only if user is authenticated
37
+ api_services_1.http
38
+ .request({
39
+ url: api_services_1.Endpoints.FollowedCategories.url({ id: user.id }),
40
+ method: api_services_1.Endpoints.FollowedCategories.method,
41
+ })
42
+ .then((res) => {
43
+ if (res.status >= 300) {
44
+ return Promise.reject(res);
45
+ }
46
+ const categoryIds = res.data.map((c) => c.id);
47
+ updateCache(categoryIds);
48
+ setData(categoryIds);
49
+ return Promise.resolve(res.data);
50
+ })
51
+ .catch((e) => {
52
+ utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, 'Unable to refresh categories followed by the authenticated user.');
53
+ utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, e);
54
+ });
63
55
  }
64
-
65
- const categoryIds = res.data.map(c => c.id);
66
- updateCache(categoryIds);
67
- setData(categoryIds);
68
- return Promise.resolve(res.data);
69
- }).catch(e => {
70
- _utils.Logger.error(_Errors.SCOPE_SC_CORE, 'Unable to refresh categories followed by the authenticated user.');
71
-
72
- _utils.Logger.error(_Errors.SCOPE_SC_CORE, e);
73
- });
74
- }
75
- }, [data, user, cache]);
76
- /**
77
- * Memoized follow/unfollow Category
78
- * Toggle action
79
- */
80
-
81
- const follow = (0, _react.useMemo)(() => category => {
82
- setLoading(prev => [...prev, ...[category.id]]);
83
- return _apiServices.http.request({
84
- url: _apiServices.Endpoints.FollowCategory.url({
85
- id: category.id
86
- }),
87
- method: _apiServices.Endpoints.FollowCategory.method
88
- }).then(res => {
89
- if (res.status >= 300) {
90
- return Promise.reject(res);
91
- }
92
-
93
- updateCache([category.id]);
94
- const isFollowed = data.includes(category.id);
95
- setData(prev => isFollowed ? prev.filter(id => id !== category.id) : [...[category.id], ...prev]);
96
- setLoading(prev => prev.filter(c => c !== category.id));
97
- updateUser({
98
- categories_counter: isFollowed ? data.length - 1 : data.length + 1
99
- });
100
- return Promise.resolve(res.data);
101
- });
102
- }, [data, loading, cache]);
103
- /**
104
- * Check if the user follow the category
105
- * Update the categories cached
106
- * Update categories followed
107
- * @param category
108
- */
109
-
110
- const checkIsCategoryFollowed = category => {
111
- setLoading(prev => prev.includes(category.id) ? prev : [...prev, ...[category.id]]);
112
-
113
- _apiServices.http.request({
114
- url: _apiServices.Endpoints.CheckCategoryIsFollowed.url({
115
- id: category.id
116
- }),
117
- method: _apiServices.Endpoints.CheckCategoryIsFollowed.method
118
- }).then(res => {
119
- if (res.status >= 300) {
120
- return Promise.reject(res);
121
- }
122
-
123
- updateCache([category.id]);
124
- setData(prev => res.data.is_followed ? [...[category.id], ...prev] : prev.filter(id => id !== category.id));
125
- setLoading(prev => prev.filter(c => c !== category.id));
126
- return Promise.resolve(res.data);
127
- });
128
- };
129
- /**
130
- * Memoized isFollowed
131
- * If category is already in cache -> check if the category is in categories,
132
- * otherwise, check if user follow the category
133
- */
134
-
135
-
136
- const isFollowed = (0, _react.useMemo)(() => category => {
137
- if (cache.includes(category.id)) {
138
- return Boolean(data.includes(category.id));
139
- }
140
-
141
- if (!loading.includes(category.id)) {
142
- checkIsCategoryFollowed(category);
143
- }
144
-
145
- return false;
146
- }, [data, loading, cache]);
147
-
148
- if (!user) {
149
- return {
150
- categories: data,
151
- loading,
152
- isLoading
56
+ }, [data, user, cache]);
57
+ /**
58
+ * Memoized follow/unfollow Category
59
+ * Toggle action
60
+ */
61
+ const follow = (0, react_1.useMemo)(() => (category) => {
62
+ setLoading((prev) => [...prev, ...[category.id]]);
63
+ return api_services_1.http
64
+ .request({
65
+ url: api_services_1.Endpoints.FollowCategory.url({ id: category.id }),
66
+ method: api_services_1.Endpoints.FollowCategory.method,
67
+ })
68
+ .then((res) => {
69
+ if (res.status >= 300) {
70
+ return Promise.reject(res);
71
+ }
72
+ updateCache([category.id]);
73
+ const isFollowed = data.includes(category.id);
74
+ setData((prev) => (isFollowed ? prev.filter((id) => id !== category.id) : [...[category.id], ...prev]));
75
+ setLoading((prev) => prev.filter((c) => c !== category.id));
76
+ updateUser({ categories_counter: isFollowed ? data.length - 1 : data.length + 1 });
77
+ return Promise.resolve(res.data);
78
+ });
79
+ }, [data, loading, cache]);
80
+ /**
81
+ * Check if the user follow the category
82
+ * Update the categories cached
83
+ * Update categories followed
84
+ * @param category
85
+ */
86
+ const checkIsCategoryFollowed = (category) => {
87
+ setLoading((prev) => (prev.includes(category.id) ? prev : [...prev, ...[category.id]]));
88
+ api_services_1.http
89
+ .request({
90
+ url: api_services_1.Endpoints.CheckCategoryIsFollowed.url({ id: category.id }),
91
+ method: api_services_1.Endpoints.CheckCategoryIsFollowed.method,
92
+ })
93
+ .then((res) => {
94
+ if (res.status >= 300) {
95
+ return Promise.reject(res);
96
+ }
97
+ updateCache([category.id]);
98
+ setData((prev) => (res.data.is_followed ? [...[category.id], ...prev] : prev.filter((id) => id !== category.id)));
99
+ setLoading((prev) => prev.filter((c) => c !== category.id));
100
+ return Promise.resolve(res.data);
101
+ });
153
102
  };
154
- }
155
-
156
- return {
157
- categories: data,
158
- loading,
159
- isLoading,
160
- follow,
161
- isFollowed,
162
- refresh,
163
- emptyCache
164
- };
165
- }
103
+ /**
104
+ * Memoized isFollowed
105
+ * If category is already in cache -> check if the category is in categories,
106
+ * otherwise, check if user follow the category
107
+ */
108
+ const isFollowed = (0, react_1.useMemo)(() => (category) => {
109
+ if (cache.includes(category.id)) {
110
+ return Boolean(data.includes(category.id));
111
+ }
112
+ if (!loading.includes(category.id)) {
113
+ checkIsCategoryFollowed(category);
114
+ }
115
+ return false;
116
+ }, [data, loading, cache]);
117
+ if (!user) {
118
+ return { categories: data, loading, isLoading };
119
+ }
120
+ return { categories: data, loading, isLoading, follow, isFollowed, refresh, emptyCache };
121
+ }
122
+ exports.default = useSCFollowedCategoriesManager;
123
+ //# sourceMappingURL=useSCFollowedCategoriesManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSCFollowedCategoriesManager.js","sourceRoot":"","sources":["../../../src/hooks/useSCFollowedCategoriesManager.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,18 @@
1
1
  "use strict";
2
-
3
- exports.__esModule = true;
4
- exports.default = useSCFollowedManager;
5
-
6
- var _react = require("react");
7
-
8
- var _apiServices = require("@selfcommunity/api-services");
9
-
10
- var _types = require("@selfcommunity/types");
11
-
12
- var _utils = require("@selfcommunity/utils");
13
-
14
- var _Errors = require("../constants/Errors");
15
-
16
- var _SCPreferencesProvider = require("../components/provider/SCPreferencesProvider");
17
-
18
- var _Preferences = require("../constants/Preferences");
19
-
20
- var _useSCCachingManager = _interopRequireDefault(require("./useSCCachingManager"));
21
-
22
- var _pubsubJs = _interopRequireDefault(require("pubsub-js"));
23
-
24
- var _Notification = require("../constants/Notification");
25
-
26
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
-
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = require("react");
7
+ const api_services_1 = require("@selfcommunity/api-services");
8
+ const types_1 = require("@selfcommunity/types");
9
+ const utils_1 = require("@selfcommunity/utils");
10
+ const Errors_1 = require("../constants/Errors");
11
+ const SCPreferencesProvider_1 = require("../components/provider/SCPreferencesProvider");
12
+ const Preferences_1 = require("../constants/Preferences");
13
+ const useSCCachingManager_1 = __importDefault(require("./useSCCachingManager"));
14
+ const pubsub_js_1 = __importDefault(require("pubsub-js"));
15
+ const Notification_1 = require("../constants/Notification");
28
16
  /**
29
17
  * Used on refresh and in isFollowed method
30
18
  * Check if the user status is 'followed'
@@ -45,188 +33,150 @@ const STATUS_FOLLOWED = 'followed';
45
33
  ```
46
34
  :::
47
35
  */
48
-
49
36
  function useSCFollowedManager(user) {
50
- const {
51
- cache,
52
- updateCache,
53
- emptyCache,
54
- data,
55
- setData,
56
- loading,
57
- setLoading,
58
- isLoading
59
- } = (0, _useSCCachingManager.default)();
60
- const scPreferencesContext = (0, _SCPreferencesProvider.useSCPreferences)();
61
- const followEnabled = _Preferences.CONFIGURATIONS_FOLLOW_ENABLED in scPreferencesContext.preferences && scPreferencesContext.preferences[_Preferences.CONFIGURATIONS_FOLLOW_ENABLED].value;
62
- const notificationFollowSubscription = (0, _react.useRef)(null);
63
- const notificationUnFollowSubscription = (0, _react.useRef)(null);
64
- /**
65
- * Notification subscriber only for FOLLOW
66
- * @param msg
67
- * @param data
68
- */
69
-
70
- const notificationSubscriber = (msg, data) => {
71
- if (data.connection && data.connection_id !== undefined) {
72
- updateCache([data.connection_id]);
73
-
74
- if (_Notification.SCNotificationMapping[data.data.activity_type] === _types.SCNotificationTypologyType.USER_FOLLOW) {
75
- if (!data.includes(user.id)) {
76
- setData(prev => [...[data.connection_id], ...prev]);
37
+ const { cache, updateCache, emptyCache, data, setData, loading, setLoading, isLoading } = (0, useSCCachingManager_1.default)();
38
+ const scPreferencesContext = (0, SCPreferencesProvider_1.useSCPreferences)();
39
+ const followEnabled = Preferences_1.CONFIGURATIONS_FOLLOW_ENABLED in scPreferencesContext.preferences && scPreferencesContext.preferences[Preferences_1.CONFIGURATIONS_FOLLOW_ENABLED].value;
40
+ const notificationFollowSubscription = (0, react_1.useRef)(null);
41
+ const notificationUnFollowSubscription = (0, react_1.useRef)(null);
42
+ /**
43
+ * Notification subscriber only for FOLLOW
44
+ * @param msg
45
+ * @param data
46
+ */
47
+ const notificationSubscriber = (msg, data) => {
48
+ if (data.connection && data.connection_id !== undefined) {
49
+ updateCache([data.connection_id]);
50
+ if (Notification_1.SCNotificationMapping[data.data.activity_type] === types_1.SCNotificationTypologyType.USER_FOLLOW) {
51
+ if (!data.includes(user.id)) {
52
+ setData((prev) => [...[data.connection_id], ...prev]);
53
+ }
54
+ }
55
+ else if (Notification_1.SCNotificationMapping[data.data.activity_type] === types_1.SCNotificationTypologyType.USER_UNFOLLOW) {
56
+ if (data.includes(user.id)) {
57
+ setData((prev) => prev.filter((id) => id !== data.connection_id));
58
+ }
59
+ }
77
60
  }
78
- } else if (_Notification.SCNotificationMapping[data.data.activity_type] === _types.SCNotificationTypologyType.USER_UNFOLLOW) {
79
- if (data.includes(user.id)) {
80
- setData(prev => prev.filter(id => id !== data.connection_id));
61
+ };
62
+ /**
63
+ * Subscribe to notification types user_follow, user_unfollow
64
+ */
65
+ (0, react_1.useEffect)(() => {
66
+ notificationFollowSubscription.current = pubsub_js_1.default.subscribe(`${types_1.SCNotificationTopicType.INTERACTION}.${types_1.SCNotificationTypologyType.USER_FOLLOW}`, notificationSubscriber);
67
+ notificationUnFollowSubscription.current = pubsub_js_1.default.subscribe(`${types_1.SCNotificationTopicType.INTERACTION}.${types_1.SCNotificationTypologyType.USER_UNFOLLOW}`, notificationSubscriber);
68
+ return () => {
69
+ pubsub_js_1.default.unsubscribe(notificationFollowSubscription.current);
70
+ pubsub_js_1.default.unsubscribe(notificationUnFollowSubscription.current);
71
+ };
72
+ }, []);
73
+ /**
74
+ * Memoized refresh all followed
75
+ * It makes a single request to the server and retrieves
76
+ * all the users followed by the authenticated user in a single solution
77
+ * It might be useful for multi-tab sync
78
+ */
79
+ const refresh = (0, react_1.useMemo)(() => () => {
80
+ emptyCache();
81
+ if (user && cache.length > 0) {
82
+ // Only if user is authenticated
83
+ api_services_1.http
84
+ .request({
85
+ url: api_services_1.Endpoints.UserConnectionStatuses.url({}),
86
+ method: api_services_1.Endpoints.UserConnectionStatuses.method,
87
+ data: { users: cache },
88
+ })
89
+ .then((res) => {
90
+ if (res.status >= 300) {
91
+ return Promise.reject(res);
92
+ }
93
+ updateCache(Object.keys(res.data.connection_statuses).map((id) => parseInt(id)));
94
+ setData(Object.entries(res.data.connection_statuses)
95
+ .filter(([k, v]) => v === STATUS_FOLLOWED)
96
+ .map(([k, v]) => parseInt(k)));
97
+ return Promise.resolve(res.data);
98
+ })
99
+ .catch((e) => {
100
+ utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, 'Unable to refresh users followed by the authenticated user.');
101
+ utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, e);
102
+ });
81
103
  }
82
- }
83
- }
84
- };
85
- /**
86
- * Subscribe to notification types user_follow, user_unfollow
87
- */
88
-
89
-
90
- (0, _react.useEffect)(() => {
91
- notificationFollowSubscription.current = _pubsubJs.default.subscribe(`${_types.SCNotificationTopicType.INTERACTION}.${_types.SCNotificationTypologyType.USER_FOLLOW}`, notificationSubscriber);
92
- notificationUnFollowSubscription.current = _pubsubJs.default.subscribe(`${_types.SCNotificationTopicType.INTERACTION}.${_types.SCNotificationTypologyType.USER_UNFOLLOW}`, notificationSubscriber);
93
- return () => {
94
- _pubsubJs.default.unsubscribe(notificationFollowSubscription.current);
95
-
96
- _pubsubJs.default.unsubscribe(notificationUnFollowSubscription.current);
104
+ }, [data, user, cache]);
105
+ /**
106
+ * Memoized follow/unfollow User
107
+ * Toggle action
108
+ */
109
+ const follow = (0, react_1.useMemo)(() => (user) => {
110
+ setLoading((prev) => [...prev, ...[user.id]]);
111
+ return api_services_1.http
112
+ .request({
113
+ url: api_services_1.Endpoints.FollowUser.url({ id: user.id }),
114
+ method: api_services_1.Endpoints.FollowUser.method,
115
+ })
116
+ .then((res) => {
117
+ if (res.status >= 300) {
118
+ return Promise.reject(res);
119
+ }
120
+ updateCache([user.id]);
121
+ const isFollowed = data.includes(user.id);
122
+ setData((prev) => (isFollowed ? prev.filter((id) => id !== user.id) : [...[user.id], ...prev]));
123
+ setLoading((prev) => prev.filter((u) => u !== user.id));
124
+ return Promise.resolve(res.data);
125
+ });
126
+ }, [data, loading, cache]);
127
+ /**
128
+ * Check if the authenticated user follow the user
129
+ * Update the followed cached
130
+ * Update followed user
131
+ * @param user
132
+ */
133
+ const checkIsUserFollowed = (user) => {
134
+ setLoading((prev) => (prev.includes(user.id) ? prev : [...prev, ...[user.id]]));
135
+ api_services_1.http
136
+ .request({
137
+ url: api_services_1.Endpoints.CheckUserFollowed.url({ id: user.id }),
138
+ method: api_services_1.Endpoints.CheckUserFollowed.method,
139
+ })
140
+ .then((res) => {
141
+ if (res.status >= 300) {
142
+ return Promise.reject(res);
143
+ }
144
+ updateCache([user.id]);
145
+ setData((prev) => (res.data.is_followed ? [...prev, ...[user.id]] : prev.filter((id) => id !== user.id)));
146
+ setLoading((prev) => prev.filter((u) => u !== user.id));
147
+ return Promise.resolve(res.data);
148
+ });
97
149
  };
98
- }, []);
99
- /**
100
- * Memoized refresh all followed
101
- * It makes a single request to the server and retrieves
102
- * all the users followed by the authenticated user in a single solution
103
- * It might be useful for multi-tab sync
104
- */
105
-
106
- const refresh = (0, _react.useMemo)(() => () => {
107
- emptyCache();
108
-
109
- if (user && cache.length > 0) {
110
- // Only if user is authenticated
111
- _apiServices.http.request({
112
- url: _apiServices.Endpoints.UserConnectionStatuses.url({}),
113
- method: _apiServices.Endpoints.UserConnectionStatuses.method,
114
- data: {
115
- users: cache
150
+ /**
151
+ * Bypass remote check if the user is followed
152
+ */
153
+ const getConnectionStatus = (0, react_1.useMemo)(() => (user) => {
154
+ const isFollowed = user.connection_status === STATUS_FOLLOWED;
155
+ updateCache([user.id]);
156
+ setData((prev) => (isFollowed ? [...prev, ...[user.id]] : prev));
157
+ return isFollowed;
158
+ }, [data, cache]);
159
+ /**
160
+ * Memoized isFollowed
161
+ * If user is already in cache -> check if the user is in followed,
162
+ * otherwise, check if auth user follow the user
163
+ */
164
+ const isFollowed = (0, react_1.useMemo)(() => (user) => {
165
+ if (cache.includes(user.id)) {
166
+ return Boolean(data.includes(user.id));
116
167
  }
117
- }).then(res => {
118
- if (res.status >= 300) {
119
- return Promise.reject(res);
168
+ if ('connection_status' in user) {
169
+ return getConnectionStatus(user);
120
170
  }
121
-
122
- updateCache(Object.keys(res.data.connection_statuses).map(id => parseInt(id)));
123
- setData(Object.entries(res.data.connection_statuses).filter(([k, v]) => v === STATUS_FOLLOWED).map(([k, v]) => parseInt(k)));
124
- return Promise.resolve(res.data);
125
- }).catch(e => {
126
- _utils.Logger.error(_Errors.SCOPE_SC_CORE, 'Unable to refresh users followed by the authenticated user.');
127
-
128
- _utils.Logger.error(_Errors.SCOPE_SC_CORE, e);
129
- });
130
- }
131
- }, [data, user, cache]);
132
- /**
133
- * Memoized follow/unfollow User
134
- * Toggle action
135
- */
136
-
137
- const follow = (0, _react.useMemo)(() => user => {
138
- setLoading(prev => [...prev, ...[user.id]]);
139
- return _apiServices.http.request({
140
- url: _apiServices.Endpoints.FollowUser.url({
141
- id: user.id
142
- }),
143
- method: _apiServices.Endpoints.FollowUser.method
144
- }).then(res => {
145
- if (res.status >= 300) {
146
- return Promise.reject(res);
147
- }
148
-
149
- updateCache([user.id]);
150
- const isFollowed = data.includes(user.id);
151
- setData(prev => isFollowed ? prev.filter(id => id !== user.id) : [...[user.id], ...prev]);
152
- setLoading(prev => prev.filter(u => u !== user.id));
153
- return Promise.resolve(res.data);
154
- });
155
- }, [data, loading, cache]);
156
- /**
157
- * Check if the authenticated user follow the user
158
- * Update the followed cached
159
- * Update followed user
160
- * @param user
161
- */
162
-
163
- const checkIsUserFollowed = user => {
164
- setLoading(prev => prev.includes(user.id) ? prev : [...prev, ...[user.id]]);
165
-
166
- _apiServices.http.request({
167
- url: _apiServices.Endpoints.CheckUserFollowed.url({
168
- id: user.id
169
- }),
170
- method: _apiServices.Endpoints.CheckUserFollowed.method
171
- }).then(res => {
172
- if (res.status >= 300) {
173
- return Promise.reject(res);
174
- }
175
-
176
- updateCache([user.id]);
177
- setData(prev => res.data.is_followed ? [...prev, ...[user.id]] : prev.filter(id => id !== user.id));
178
- setLoading(prev => prev.filter(u => u !== user.id));
179
- return Promise.resolve(res.data);
180
- });
181
- };
182
- /**
183
- * Bypass remote check if the user is followed
184
- */
185
-
186
-
187
- const getConnectionStatus = (0, _react.useMemo)(() => user => {
188
- const isFollowed = user.connection_status === STATUS_FOLLOWED;
189
- updateCache([user.id]);
190
- setData(prev => isFollowed ? [...prev, ...[user.id]] : prev);
191
- return isFollowed;
192
- }, [data, cache]);
193
- /**
194
- * Memoized isFollowed
195
- * If user is already in cache -> check if the user is in followed,
196
- * otherwise, check if auth user follow the user
197
- */
198
-
199
- const isFollowed = (0, _react.useMemo)(() => user => {
200
- if (cache.includes(user.id)) {
201
- return Boolean(data.includes(user.id));
202
- }
203
-
204
- if ('connection_status' in user) {
205
- return getConnectionStatus(user);
206
- }
207
-
208
- if (!loading.includes(user.id)) {
209
- checkIsUserFollowed(user);
171
+ if (!loading.includes(user.id)) {
172
+ checkIsUserFollowed(user);
173
+ }
174
+ return false;
175
+ }, [data, loading, cache]);
176
+ if (!followEnabled || !user) {
177
+ return { followed: data, loading, isLoading };
210
178
  }
211
-
212
- return false;
213
- }, [data, loading, cache]);
214
-
215
- if (!followEnabled || !user) {
216
- return {
217
- followed: data,
218
- loading,
219
- isLoading
220
- };
221
- }
222
-
223
- return {
224
- followed: data,
225
- loading,
226
- isLoading,
227
- follow,
228
- isFollowed,
229
- refresh,
230
- emptyCache
231
- };
232
- }
179
+ return { followed: data, loading, isLoading, follow, isFollowed, refresh, emptyCache };
180
+ }
181
+ exports.default = useSCFollowedManager;
182
+ //# sourceMappingURL=useSCFollowersManager.js.map