@selfcommunity/react-core 0.4.0-alpha.4 → 0.4.0-alpha.41

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 (198) hide show
  1. package/lib/cjs/components/provider/SCUserProvider/index.d.ts.map +1 -1
  2. package/lib/cjs/components/provider/SCUserProvider/index.js +6 -0
  3. package/lib/cjs/components/provider/SCUserProvider/index.js.map +1 -1
  4. package/lib/cjs/components/router/index.js +1 -1
  5. package/lib/cjs/constants/Cache.d.ts +23 -14
  6. package/lib/cjs/constants/Cache.d.ts.map +1 -1
  7. package/lib/cjs/constants/Cache.js +28 -16
  8. package/lib/cjs/constants/Cache.js.map +1 -1
  9. package/lib/cjs/constants/ContextProviders.js +2 -2
  10. package/lib/cjs/constants/ContextProviders.js.map +1 -1
  11. package/lib/cjs/constants/Features.d.ts +0 -42
  12. package/lib/cjs/constants/Features.d.ts.map +1 -1
  13. package/lib/cjs/constants/Features.js +1 -43
  14. package/lib/cjs/constants/Features.js.map +1 -1
  15. package/lib/cjs/constants/Notification.d.ts +8 -0
  16. package/lib/cjs/constants/Notification.d.ts.map +1 -1
  17. package/lib/cjs/constants/Notification.js +9 -1
  18. package/lib/cjs/constants/Notification.js.map +1 -1
  19. package/lib/cjs/constants/Notifications.d.ts +1 -0
  20. package/lib/cjs/constants/Notifications.d.ts.map +1 -1
  21. package/lib/cjs/constants/Notifications.js +2 -1
  22. package/lib/cjs/constants/Notifications.js.map +1 -1
  23. package/lib/cjs/constants/Preferences.d.ts +8 -0
  24. package/lib/cjs/constants/Preferences.d.ts.map +1 -1
  25. package/lib/cjs/constants/Preferences.js +11 -2
  26. package/lib/cjs/constants/Preferences.js.map +1 -1
  27. package/lib/cjs/constants/Routes.d.ts +1 -0
  28. package/lib/cjs/constants/Routes.d.ts.map +1 -1
  29. package/lib/cjs/constants/Routes.js +3 -1
  30. package/lib/cjs/constants/Routes.js.map +1 -1
  31. package/lib/cjs/hooks/useSCAuth.js +2 -2
  32. package/lib/cjs/hooks/useSCAuth.js.map +1 -1
  33. package/lib/cjs/hooks/useSCFetchAddressingTagList.d.ts.map +1 -1
  34. package/lib/cjs/hooks/useSCFetchAddressingTagList.js +2 -25
  35. package/lib/cjs/hooks/useSCFetchAddressingTagList.js.map +1 -1
  36. package/lib/cjs/hooks/useSCFetchCategory.d.ts.map +1 -1
  37. package/lib/cjs/hooks/useSCFetchCategory.js +13 -11
  38. package/lib/cjs/hooks/useSCFetchCategory.js.map +1 -1
  39. package/lib/cjs/hooks/useSCFetchCommentObjects.d.ts +2 -2
  40. package/lib/cjs/hooks/useSCFetchCommentObjects.d.ts.map +1 -1
  41. package/lib/cjs/hooks/useSCFetchCommentObjects.js.map +1 -1
  42. package/lib/cjs/hooks/useSCFetchContributors.d.ts +2 -2
  43. package/lib/cjs/hooks/useSCFetchContributors.d.ts.map +1 -1
  44. package/lib/cjs/hooks/useSCFetchContributors.js.map +1 -1
  45. package/lib/cjs/hooks/useSCFetchFeed.js +1 -1
  46. package/lib/cjs/hooks/useSCFetchFeed.js.map +1 -1
  47. package/lib/cjs/hooks/useSCFetchFeedObject.d.ts +3 -4
  48. package/lib/cjs/hooks/useSCFetchFeedObject.d.ts.map +1 -1
  49. package/lib/cjs/hooks/useSCFetchFeedObject.js +15 -9
  50. package/lib/cjs/hooks/useSCFetchFeedObject.js.map +1 -1
  51. package/lib/cjs/hooks/useSCFetchIncubator.d.ts +4 -1
  52. package/lib/cjs/hooks/useSCFetchIncubator.d.ts.map +1 -1
  53. package/lib/cjs/hooks/useSCFetchIncubator.js +28 -7
  54. package/lib/cjs/hooks/useSCFetchIncubator.js.map +1 -1
  55. package/lib/cjs/hooks/useSCFetchPrivateMessageSnippets.d.ts +26 -0
  56. package/lib/cjs/hooks/useSCFetchPrivateMessageSnippets.d.ts.map +1 -0
  57. package/lib/cjs/hooks/useSCFetchPrivateMessageSnippets.js +111 -0
  58. package/lib/cjs/hooks/useSCFetchPrivateMessageSnippets.js.map +1 -0
  59. package/lib/cjs/hooks/useSCFetchReactions.d.ts +1 -0
  60. package/lib/cjs/hooks/useSCFetchReactions.d.ts.map +1 -1
  61. package/lib/cjs/hooks/useSCFetchReactions.js +8 -31
  62. package/lib/cjs/hooks/useSCFetchReactions.js.map +1 -1
  63. package/lib/cjs/hooks/useSCFetchUser.d.ts.map +1 -1
  64. package/lib/cjs/hooks/useSCFetchUser.js +9 -4
  65. package/lib/cjs/hooks/useSCFetchUser.js.map +1 -1
  66. package/lib/cjs/hooks/useSCFetchVote.d.ts +58 -0
  67. package/lib/cjs/hooks/useSCFetchVote.d.ts.map +1 -0
  68. package/lib/cjs/hooks/useSCFetchVote.js +208 -0
  69. package/lib/cjs/hooks/useSCFetchVote.js.map +1 -0
  70. package/lib/cjs/hooks/useSCFollowedCategoriesManager.d.ts.map +1 -1
  71. package/lib/cjs/hooks/useSCFollowedCategoriesManager.js +11 -7
  72. package/lib/cjs/hooks/useSCFollowedCategoriesManager.js.map +1 -1
  73. package/lib/cjs/hooks/useSCFollowedManager.d.ts.map +1 -1
  74. package/lib/cjs/hooks/useSCFollowedManager.js +9 -6
  75. package/lib/cjs/hooks/useSCFollowedManager.js.map +1 -1
  76. package/lib/cjs/hooks/useSCSettingsManager.d.ts +23 -0
  77. package/lib/cjs/hooks/useSCSettingsManager.d.ts.map +1 -0
  78. package/lib/cjs/hooks/useSCSettingsManager.js +101 -0
  79. package/lib/cjs/hooks/useSCSettingsManager.js.map +1 -0
  80. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.d.ts +10 -0
  81. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.d.ts.map +1 -1
  82. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.js +24 -22
  83. package/lib/cjs/hooks/useSCSubscribedIncubatorsManager.js.map +1 -1
  84. package/lib/cjs/hooks/useSCWebPushMessaging.d.ts +2 -0
  85. package/lib/cjs/hooks/useSCWebPushMessaging.d.ts.map +1 -1
  86. package/lib/cjs/hooks/useSCWebPushMessaging.js +124 -67
  87. package/lib/cjs/hooks/useSCWebPushMessaging.js.map +1 -1
  88. package/lib/cjs/index.d.ts +4 -2
  89. package/lib/cjs/index.d.ts.map +1 -1
  90. package/lib/cjs/index.js +6 -2
  91. package/lib/cjs/index.js.map +1 -1
  92. package/lib/cjs/types/context.d.ts +24 -1
  93. package/lib/cjs/types/context.d.ts.map +1 -1
  94. package/lib/cjs/types/index.d.ts +2 -2
  95. package/lib/cjs/types/index.d.ts.map +1 -1
  96. package/lib/cjs/utils/validator.d.ts.map +1 -1
  97. package/lib/cjs/utils/validator.js +1 -2
  98. package/lib/cjs/utils/validator.js.map +1 -1
  99. package/lib/esm/components/provider/SCUserProvider/index.d.ts.map +1 -1
  100. package/lib/esm/components/provider/SCUserProvider/index.js +6 -0
  101. package/lib/esm/components/provider/SCUserProvider/index.js.map +1 -1
  102. package/lib/esm/components/router/index.js +1 -1
  103. package/lib/esm/constants/Cache.d.ts +23 -14
  104. package/lib/esm/constants/Cache.d.ts.map +1 -1
  105. package/lib/esm/constants/Cache.js +23 -14
  106. package/lib/esm/constants/Cache.js.map +1 -1
  107. package/lib/esm/constants/ContextProviders.js +2 -2
  108. package/lib/esm/constants/ContextProviders.js.map +1 -1
  109. package/lib/esm/constants/Features.d.ts +0 -42
  110. package/lib/esm/constants/Features.d.ts.map +1 -1
  111. package/lib/esm/constants/Features.js +0 -42
  112. package/lib/esm/constants/Features.js.map +1 -1
  113. package/lib/esm/constants/Notification.d.ts +8 -0
  114. package/lib/esm/constants/Notification.d.ts.map +1 -1
  115. package/lib/esm/constants/Notification.js +8 -0
  116. package/lib/esm/constants/Notification.js.map +1 -1
  117. package/lib/esm/constants/Notifications.d.ts +1 -0
  118. package/lib/esm/constants/Notifications.d.ts.map +1 -1
  119. package/lib/esm/constants/Notifications.js +1 -0
  120. package/lib/esm/constants/Notifications.js.map +1 -1
  121. package/lib/esm/constants/Preferences.d.ts +8 -0
  122. package/lib/esm/constants/Preferences.d.ts.map +1 -1
  123. package/lib/esm/constants/Preferences.js +8 -0
  124. package/lib/esm/constants/Preferences.js.map +1 -1
  125. package/lib/esm/constants/Routes.d.ts +1 -0
  126. package/lib/esm/constants/Routes.d.ts.map +1 -1
  127. package/lib/esm/constants/Routes.js +2 -0
  128. package/lib/esm/constants/Routes.js.map +1 -1
  129. package/lib/esm/hooks/useSCAuth.js +2 -2
  130. package/lib/esm/hooks/useSCAuth.js.map +1 -1
  131. package/lib/esm/hooks/useSCFetchAddressingTagList.d.ts.map +1 -1
  132. package/lib/esm/hooks/useSCFetchAddressingTagList.js +3 -3
  133. package/lib/esm/hooks/useSCFetchAddressingTagList.js.map +1 -1
  134. package/lib/esm/hooks/useSCFetchCategory.d.ts.map +1 -1
  135. package/lib/esm/hooks/useSCFetchCategory.js +15 -13
  136. package/lib/esm/hooks/useSCFetchCategory.js.map +1 -1
  137. package/lib/esm/hooks/useSCFetchCommentObjects.d.ts +2 -2
  138. package/lib/esm/hooks/useSCFetchCommentObjects.d.ts.map +1 -1
  139. package/lib/esm/hooks/useSCFetchCommentObjects.js.map +1 -1
  140. package/lib/esm/hooks/useSCFetchContributors.d.ts +2 -2
  141. package/lib/esm/hooks/useSCFetchContributors.d.ts.map +1 -1
  142. package/lib/esm/hooks/useSCFetchContributors.js.map +1 -1
  143. package/lib/esm/hooks/useSCFetchFeed.js +1 -1
  144. package/lib/esm/hooks/useSCFetchFeed.js.map +1 -1
  145. package/lib/esm/hooks/useSCFetchFeedObject.d.ts +3 -4
  146. package/lib/esm/hooks/useSCFetchFeedObject.d.ts.map +1 -1
  147. package/lib/esm/hooks/useSCFetchFeedObject.js +12 -6
  148. package/lib/esm/hooks/useSCFetchFeedObject.js.map +1 -1
  149. package/lib/esm/hooks/useSCFetchIncubator.d.ts +4 -1
  150. package/lib/esm/hooks/useSCFetchIncubator.d.ts.map +1 -1
  151. package/lib/esm/hooks/useSCFetchIncubator.js +29 -8
  152. package/lib/esm/hooks/useSCFetchIncubator.js.map +1 -1
  153. package/lib/esm/hooks/useSCFetchPrivateMessageSnippets.d.ts +26 -0
  154. package/lib/esm/hooks/useSCFetchPrivateMessageSnippets.d.ts.map +1 -0
  155. package/lib/esm/hooks/useSCFetchPrivateMessageSnippets.js +109 -0
  156. package/lib/esm/hooks/useSCFetchPrivateMessageSnippets.js.map +1 -0
  157. package/lib/esm/hooks/useSCFetchReactions.d.ts +1 -0
  158. package/lib/esm/hooks/useSCFetchReactions.d.ts.map +1 -1
  159. package/lib/esm/hooks/useSCFetchReactions.js +9 -9
  160. package/lib/esm/hooks/useSCFetchReactions.js.map +1 -1
  161. package/lib/esm/hooks/useSCFetchUser.d.ts.map +1 -1
  162. package/lib/esm/hooks/useSCFetchUser.js +10 -5
  163. package/lib/esm/hooks/useSCFetchUser.js.map +1 -1
  164. package/lib/esm/hooks/useSCFetchVote.d.ts +58 -0
  165. package/lib/esm/hooks/useSCFetchVote.d.ts.map +1 -0
  166. package/lib/esm/hooks/useSCFetchVote.js +202 -0
  167. package/lib/esm/hooks/useSCFetchVote.js.map +1 -0
  168. package/lib/esm/hooks/useSCFollowedCategoriesManager.d.ts.map +1 -1
  169. package/lib/esm/hooks/useSCFollowedCategoriesManager.js +11 -7
  170. package/lib/esm/hooks/useSCFollowedCategoriesManager.js.map +1 -1
  171. package/lib/esm/hooks/useSCFollowedManager.d.ts.map +1 -1
  172. package/lib/esm/hooks/useSCFollowedManager.js +9 -6
  173. package/lib/esm/hooks/useSCFollowedManager.js.map +1 -1
  174. package/lib/esm/hooks/useSCSettingsManager.d.ts +23 -0
  175. package/lib/esm/hooks/useSCSettingsManager.d.ts.map +1 -0
  176. package/lib/esm/hooks/useSCSettingsManager.js +98 -0
  177. package/lib/esm/hooks/useSCSettingsManager.js.map +1 -0
  178. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.d.ts +10 -0
  179. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.d.ts.map +1 -1
  180. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.js +24 -22
  181. package/lib/esm/hooks/useSCSubscribedIncubatorsManager.js.map +1 -1
  182. package/lib/esm/hooks/useSCWebPushMessaging.d.ts +2 -0
  183. package/lib/esm/hooks/useSCWebPushMessaging.d.ts.map +1 -1
  184. package/lib/esm/hooks/useSCWebPushMessaging.js +121 -67
  185. package/lib/esm/hooks/useSCWebPushMessaging.js.map +1 -1
  186. package/lib/esm/index.d.ts +4 -2
  187. package/lib/esm/index.d.ts.map +1 -1
  188. package/lib/esm/index.js +3 -1
  189. package/lib/esm/index.js.map +1 -1
  190. package/lib/esm/types/context.d.ts +24 -1
  191. package/lib/esm/types/context.d.ts.map +1 -1
  192. package/lib/esm/types/index.d.ts +2 -2
  193. package/lib/esm/types/index.d.ts.map +1 -1
  194. package/lib/esm/utils/validator.d.ts.map +1 -1
  195. package/lib/esm/utils/validator.js +2 -3
  196. package/lib/esm/utils/validator.js.map +1 -1
  197. package/lib/umd/react-core.js +1 -1
  198. package/package.json +11 -10
@@ -6,7 +6,6 @@ const utils_1 = require("@selfcommunity/utils");
6
6
  const Errors_1 = require("../constants/Errors");
7
7
  const types_1 = require("@selfcommunity/types");
8
8
  const use_deep_compare_effect_1 = require("use-deep-compare-effect");
9
- const utils_2 = require("@selfcommunity/utils");
10
9
  const Cache_1 = require("../constants/Cache");
11
10
  /**
12
11
  :::info
@@ -18,12 +17,12 @@ const Cache_1 = require("../constants/Cache");
18
17
  * @param object.feedObjectType
19
18
  * @param object.cacheStrategy
20
19
  */
21
- function useSCFetchFeedObject({ id = null, feedObject = null, feedObjectType = types_1.SCFeedObjectTypologyType.POST || types_1.SCFeedObjectTypologyType.DISCUSSION || types_1.SCFeedObjectTypologyType.STATUS, cacheStrategy = utils_2.CacheStrategies.CACHE_FIRST, }) {
20
+ function useSCFetchFeedObject({ id = null, feedObject = null, feedObjectType = types_1.SCContributionType.POST || types_1.SCContributionType.DISCUSSION || types_1.SCContributionType.STATUS, cacheStrategy = utils_1.CacheStrategies.CACHE_FIRST, }) {
22
21
  const __feedObjectId = feedObject ? feedObject.id : id;
23
22
  const __feedObjectType = feedObject ? feedObject.type : feedObjectType;
24
23
  // CACHE
25
24
  const __feedObjectCacheKey = (0, Cache_1.getFeedObjectCacheKey)(__feedObjectId, __feedObjectType);
26
- const [obj, setObj] = (0, react_1.useState)(cacheStrategy !== utils_2.CacheStrategies.NETWORK_ONLY ? utils_2.LRUCache.get(__feedObjectCacheKey, feedObject) : feedObject);
25
+ const [obj, setObj] = (0, react_1.useState)(cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY ? utils_1.LRUCache.get(__feedObjectCacheKey, feedObject) : feedObject);
27
26
  const [error, setError] = (0, react_1.useState)(null);
28
27
  /**
29
28
  * Memoized fetchFeedObject
@@ -49,10 +48,10 @@ function useSCFetchFeedObject({ id = null, feedObject = null, feedObjectType = t
49
48
  fetchFeedObject()
50
49
  .then((obj) => {
51
50
  setObj(obj);
52
- utils_2.LRUCache.set(__feedObjectCacheKey, obj);
51
+ utils_1.LRUCache.set(__feedObjectCacheKey, obj);
53
52
  })
54
53
  .catch((err) => {
55
- utils_2.LRUCache.delete(__feedObjectCacheKey);
54
+ utils_1.LRUCache.delete(__feedObjectCacheKey);
56
55
  setError(`FeedObject with id ${id} not found`);
57
56
  utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, `FeedObject with id ${id} not found`);
58
57
  utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, err.message);
@@ -61,16 +60,23 @@ function useSCFetchFeedObject({ id = null, feedObject = null, feedObjectType = t
61
60
  }, [__feedObjectId, __feedObjectType]);
62
61
  (0, use_deep_compare_effect_1.useDeepCompareEffectNoCheck)(() => {
63
62
  if (feedObject) {
64
- if (cacheStrategy === utils_2.CacheStrategies.NETWORK_ONLY) {
63
+ if (cacheStrategy === utils_1.CacheStrategies.NETWORK_ONLY) {
65
64
  setObj(feedObject);
66
- utils_2.LRUCache.set(__feedObjectCacheKey, feedObject);
65
+ utils_1.LRUCache.set(__feedObjectCacheKey, feedObject);
67
66
  }
68
67
  else {
69
- setObj(utils_2.LRUCache.get(__feedObjectCacheKey, feedObject));
68
+ setObj(utils_1.LRUCache.get(__feedObjectCacheKey, feedObject));
70
69
  }
71
70
  }
72
71
  }, [feedObject]);
73
- return { obj, setObj, error };
72
+ return {
73
+ obj,
74
+ setObj: (newObj) => {
75
+ utils_1.LRUCache.set(__feedObjectCacheKey, newObj);
76
+ setObj(Object.assign({}, newObj));
77
+ },
78
+ error,
79
+ };
74
80
  }
75
81
  exports.default = useSCFetchFeedObject;
76
82
  //# sourceMappingURL=useSCFetchFeedObject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchFeedObject.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeedObject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSCFetchFeedObject.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeedObject.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { SCIncubatorType } from '@selfcommunity/types';
3
+ import { CacheStrategies } from '@selfcommunity/utils';
3
4
  /**
4
5
  :::info
5
6
  This custom hook is used to fetch an incubator object.
@@ -7,10 +8,12 @@ import { SCIncubatorType } from '@selfcommunity/types';
7
8
  * @param object
8
9
  * @param object.id
9
10
  * @param object.incubator
11
+ * @param object.cacheStrategy
10
12
  */
11
- export default function useSCFetchIncubator({ id, incubator }: {
13
+ export default function useSCFetchIncubator({ id, incubator, cacheStrategy, }: {
12
14
  id?: number;
13
15
  incubator?: SCIncubatorType;
16
+ cacheStrategy?: CacheStrategies;
14
17
  }): {
15
18
  scIncubator: SCIncubatorType;
16
19
  setSCIncubator: import("react").Dispatch<import("react").SetStateAction<SCIncubatorType>>;
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchIncubator.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchIncubator.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAIrD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAAC,EAAS,EAAE,SAAgB,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,eAAe,CAAA;CAAC;;;;EA0CpH"}
1
+ {"version":3,"file":"useSCFetchIncubator.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchIncubator.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAC,eAAe,EAA4C,MAAM,sBAAsB,CAAC;AAMhG;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,EAAS,EACT,SAAgB,EAChB,aAA2C,GAC5C,EAAE;IACD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC;;;;EA8DA"}
@@ -4,6 +4,9 @@ const react_1 = require("react");
4
4
  const Errors_1 = require("../constants/Errors");
5
5
  const api_services_1 = require("@selfcommunity/api-services");
6
6
  const utils_1 = require("@selfcommunity/utils");
7
+ const Cache_1 = require("../constants/Cache");
8
+ const use_deep_compare_effect_1 = require("use-deep-compare-effect");
9
+ const SCUserProvider_1 = require("../components/provider/SCUserProvider");
7
10
  /**
8
11
  :::info
9
12
  This custom hook is used to fetch an incubator object.
@@ -11,9 +14,17 @@ const utils_1 = require("@selfcommunity/utils");
11
14
  * @param object
12
15
  * @param object.id
13
16
  * @param object.incubator
17
+ * @param object.cacheStrategy
14
18
  */
15
- function useSCFetchIncubator({ id = null, incubator = null }) {
16
- const [scIncubator, setSCIncubator] = (0, react_1.useState)(incubator);
19
+ function useSCFetchIncubator({ id = null, incubator = null, cacheStrategy = utils_1.CacheStrategies.CACHE_FIRST, }) {
20
+ const __incubatorId = incubator ? incubator.id : id;
21
+ // CONTEXT
22
+ const scUserContext = (0, SCUserProvider_1.useSCUser)();
23
+ const authUserId = scUserContext.user ? scUserContext.user.id : null;
24
+ // CACHE
25
+ const __incubatorCacheKey = (0, Cache_1.getIncubatorObjectCacheKey)(__incubatorId);
26
+ const __incubator = authUserId ? incubator : (0, utils_1.objectWithoutProperties)(incubator, ['subscribed']);
27
+ const [scIncubator, setSCIncubator] = (0, react_1.useState)(cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY ? utils_1.LRUCache.get(__incubatorCacheKey, __incubator) : null);
17
28
  const [error, setError] = (0, react_1.useState)(null);
18
29
  /**
19
30
  * Memoized fetchIncubator
@@ -21,7 +32,7 @@ function useSCFetchIncubator({ id = null, incubator = null }) {
21
32
  const fetchIncubator = (0, react_1.useMemo)(() => () => {
22
33
  return api_services_1.http
23
34
  .request({
24
- url: api_services_1.Endpoints.GetASpecificIncubator.url({ id: id }),
35
+ url: api_services_1.Endpoints.GetASpecificIncubator.url({ id: __incubatorId }),
25
36
  method: api_services_1.Endpoints.GetASpecificIncubator.method,
26
37
  })
27
38
  .then((res) => {
@@ -30,23 +41,33 @@ function useSCFetchIncubator({ id = null, incubator = null }) {
30
41
  }
31
42
  return Promise.resolve(res.data);
32
43
  });
33
- }, [id]);
44
+ }, [__incubatorId]);
34
45
  /**
35
46
  * If id resolve the obj
36
47
  */
37
48
  (0, react_1.useEffect)(() => {
38
- if (id) {
49
+ if (__incubatorId && (!scIncubator || (scIncubator && __incubatorId !== scIncubator.id))) {
39
50
  fetchIncubator()
40
51
  .then((obj) => {
41
- setSCIncubator(obj);
52
+ const _i = authUserId ? obj : (0, utils_1.objectWithoutProperties)(obj, ['subscribed']);
53
+ setSCIncubator(_i);
54
+ utils_1.LRUCache.set(__incubatorCacheKey, _i);
42
55
  })
43
56
  .catch((err) => {
57
+ utils_1.LRUCache.delete(__incubatorCacheKey);
44
58
  setError(`Incubator with id ${id} not found`);
45
59
  utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, `Incubator with id ${id} not found`);
46
60
  utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, err.message);
47
61
  });
48
62
  }
49
- }, [id]);
63
+ }, [__incubatorId]);
64
+ (0, use_deep_compare_effect_1.useDeepCompareEffectNoCheck)(() => {
65
+ if (incubator) {
66
+ const _i = authUserId ? incubator : (0, utils_1.objectWithoutProperties)(incubator, ['subscribed']);
67
+ setSCIncubator(_i);
68
+ utils_1.LRUCache.set(__incubatorCacheKey, _i);
69
+ }
70
+ }, [incubator]);
50
71
  return { scIncubator, setSCIncubator, error };
51
72
  }
52
73
  exports.default = useSCFetchIncubator;
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchIncubator.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchIncubator.ts"],"names":[],"mappings":";;AAAA,iCAAmD;AACnD,gDAAkD;AAElD,8DAA0E;AAC1E,gDAA4C;AAE5C;;;;;;;GAOG;AACH,SAAwB,mBAAmB,CAAC,EAAC,EAAE,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,EAA6C;IACnH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAkB,SAAS,CAAC,CAAC;IAC3E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAS,IAAI,CAAC,CAAC;IAEjD;;OAEG;IACH,MAAM,cAAc,GAAG,IAAA,eAAO,EAC5B,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,OAAO,mBAAI;aACR,OAAO,CAAC;YACP,GAAG,EAAE,wBAAS,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,CAAC;YAClD,MAAM,EAAE,wBAAS,CAAC,qBAAqB,CAAC,MAAM;SAC/C,CAAC;aACD,IAAI,CAAC,CAAC,GAAkC,EAAE,EAAE;YAC3C,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;gBACrB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACP,CAAC,EACD,CAAC,EAAE,CAAC,CACL,CAAC;IAEF;;OAEG;IACH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,EAAE,EAAE;YACN,cAAc,EAAE;iBACb,IAAI,CAAC,CAAC,GAAoB,EAAE,EAAE;gBAC7B,cAAc,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,QAAQ,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;gBAC9C,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,qBAAqB,EAAE,YAAY,CAAC,CAAC;gBACjE,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,OAAO,EAAC,WAAW,EAAE,cAAc,EAAE,KAAK,EAAC,CAAC;AAC9C,CAAC;AA1CD,sCA0CC"}
1
+ {"version":3,"file":"useSCFetchIncubator.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchIncubator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { SCPrivateMessageSnippetType } from '@selfcommunity/types';
2
+ import { CacheStrategies } from '@selfcommunity/utils';
3
+ /**
4
+ :::info
5
+ This custom hook is used to fetch snippets.
6
+ @param object.cacheStrategy
7
+
8
+ :::tipContext can be consumed in this way:
9
+
10
+ ```jsx
11
+ const {snippets, isLoading} = useSCFetchPrivateMessageSnippets();
12
+ ```
13
+ :::
14
+ * @param props
15
+ */
16
+ declare const useSCFetchPrivateMessageSnippets: (props?: {
17
+ cacheStrategy?: CacheStrategies;
18
+ }) => {
19
+ data: {
20
+ snippets: SCPrivateMessageSnippetType[];
21
+ isLoading: boolean;
22
+ };
23
+ updateSnippets: (updatedData: any) => void;
24
+ };
25
+ export default useSCFetchPrivateMessageSnippets;
26
+ //# sourceMappingURL=useSCFetchPrivateMessageSnippets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSCFetchPrivateMessageSnippets.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchPrivateMessageSnippets.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAC,2BAA2B,EAAC,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAuBvE;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,gCAAgC,WAAY;IAAC,aAAa,CAAC,EAAE,eAAe,CAAA;CAAC;;kBASrC,2BAA2B,EAAE;mBAAa,OAAO;;;CAmE9F,CAAC;AAEF,eAAe,gCAAgC,CAAC"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const react_1 = require("react");
13
+ const Errors_1 = require("../constants/Errors");
14
+ const api_services_1 = require("@selfcommunity/api-services");
15
+ const utils_1 = require("@selfcommunity/utils");
16
+ const Cache_1 = require("../constants/Cache");
17
+ const SCUserProvider_1 = require("../components/provider/SCUserProvider");
18
+ const init = { snippets: [], isLoading: true };
19
+ // HYDRATE the cache
20
+ const hydrate = (ids) => {
21
+ if (!ids) {
22
+ return null;
23
+ }
24
+ const snippets = ids.map((id) => {
25
+ const __snippetCacheKey = (0, Cache_1.getPmSnippetObjectCacheKey)(id);
26
+ return utils_1.LRUCache.get(__snippetCacheKey);
27
+ });
28
+ if (snippets.filter((c) => !c).length > 0) {
29
+ // REVALIDATE CACHE
30
+ return null;
31
+ }
32
+ return snippets;
33
+ };
34
+ /**
35
+ :::info
36
+ This custom hook is used to fetch snippets.
37
+ @param object.cacheStrategy
38
+
39
+ :::tipContext can be consumed in this way:
40
+
41
+ ```jsx
42
+ const {snippets, isLoading} = useSCFetchPrivateMessageSnippets();
43
+ ```
44
+ :::
45
+ * @param props
46
+ */
47
+ const useSCFetchPrivateMessageSnippets = (props) => {
48
+ // PROPS
49
+ const { cacheStrategy = utils_1.CacheStrategies.CACHE_FIRST } = props || {};
50
+ // CACHE
51
+ const __snippetsCacheKey = (0, Cache_1.getPmSnippetsObjectCacheKey)();
52
+ // STATE
53
+ const snippets = cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY ? hydrate(utils_1.LRUCache.get(__snippetsCacheKey, null)) : null;
54
+ const [data, setData] = (0, react_1.useState)(snippets !== null ? { snippets, isLoading: false } : init);
55
+ // HOOKS
56
+ const scUserContext = (0, SCUserProvider_1.useSCUser)();
57
+ /**
58
+ * Fetch snippets
59
+ */
60
+ const fetchSnippets = (next = api_services_1.Endpoints.GetSnippets.url()) => __awaiter(void 0, void 0, void 0, function* () {
61
+ const response = yield api_services_1.http.request({
62
+ url: next,
63
+ method: api_services_1.Endpoints.GetSnippets.method,
64
+ });
65
+ const data = response.data;
66
+ if (data.next) {
67
+ return data.results.concat(yield fetchSnippets(data.next));
68
+ }
69
+ return data.results;
70
+ });
71
+ /**
72
+ * Get snippets
73
+ */
74
+ (0, react_1.useEffect)(() => {
75
+ if (cacheStrategy === utils_1.CacheStrategies.CACHE_FIRST && snippets) {
76
+ return;
77
+ }
78
+ scUserContext.user &&
79
+ fetchSnippets()
80
+ .then((data) => {
81
+ setData({ snippets: data, isLoading: false });
82
+ utils_1.LRUCache.set(__snippetsCacheKey, data.map((snippet) => {
83
+ const __snippetCacheKey = (0, Cache_1.getPmSnippetObjectCacheKey)(snippet.id);
84
+ utils_1.LRUCache.set(__snippetCacheKey, snippet);
85
+ return snippet.id;
86
+ }));
87
+ })
88
+ .catch((error) => {
89
+ console.log(error);
90
+ utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, 'Unable to retrieve snippets');
91
+ });
92
+ }, [scUserContext]);
93
+ /**
94
+ * Updated snippets list
95
+ * @param updatedData
96
+ */
97
+ const updateSnippets = (updatedData) => {
98
+ if (updatedData) {
99
+ setData({ snippets: updatedData, isLoading: false });
100
+ //cache update
101
+ utils_1.LRUCache.set(__snippetsCacheKey, updatedData.map((snippet) => {
102
+ const __snippetCacheKey = (0, Cache_1.getPmSnippetObjectCacheKey)(snippet.id);
103
+ utils_1.LRUCache.set(__snippetCacheKey, snippet);
104
+ return snippet.id;
105
+ }));
106
+ }
107
+ };
108
+ return { data, updateSnippets };
109
+ };
110
+ exports.default = useSCFetchPrivateMessageSnippets;
111
+ //# sourceMappingURL=useSCFetchPrivateMessageSnippets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSCFetchPrivateMessageSnippets.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchPrivateMessageSnippets.tsx"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ import { CacheStrategies } from '@selfcommunity/utils';
16
16
  declare const useSCFetchReactions: (props?: {
17
17
  cacheStrategy?: CacheStrategies;
18
18
  }) => {
19
+ default: SCReactionType;
19
20
  reactions: SCReactionType[];
20
21
  isLoading: boolean;
21
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchReactions.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchReactions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAyBvE;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,mBAAmB,WAAY;IAAC,aAAa,CAAC,EAAE,eAAe,CAAA;CAAC;eAYvB,cAAc,EAAE;eAAa,OAAO;CA8ClF,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"useSCFetchReactions.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchReactions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAwBvE;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,mBAAmB,WAAY;IAAC,aAAa,CAAC,EAAE,eAAe,CAAA;CAAC;aAYzB,cAAc;eAAa,cAAc,EAAE;eAAa,OAAO;CAgD3G,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -1,27 +1,4 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
3
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
4
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -34,12 +11,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
34
11
  Object.defineProperty(exports, "__esModule", { value: true });
35
12
  const react_1 = require("react");
36
13
  const Errors_1 = require("../constants/Errors");
14
+ const types_1 = require("@selfcommunity/types");
37
15
  const api_services_1 = require("@selfcommunity/api-services");
38
16
  const utils_1 = require("@selfcommunity/utils");
39
17
  const Cache_1 = require("../constants/Cache");
40
18
  const SCPreferencesProvider_1 = require("../components/provider/SCPreferencesProvider");
41
- const SCFeatures = __importStar(require("../constants/Features"));
42
- const init = { reactions: [], isLoading: true };
19
+ const init = { default: null, reactions: [], isLoading: true };
43
20
  // HYDRATE the cache
44
21
  const hydrate = (ids) => {
45
22
  if (!ids) {
@@ -74,10 +51,10 @@ const useSCFetchReactions = (props) => {
74
51
  // PROPS
75
52
  const { cacheStrategy = utils_1.CacheStrategies.CACHE_FIRST } = props || {};
76
53
  // CACHE
77
- const __categoriesCacheKey = (0, Cache_1.getReactionsObjectCacheKey)();
54
+ const __reactionsCacheKey = (0, Cache_1.getReactionsObjectCacheKey)();
78
55
  // STATE
79
- const reactions = cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY ? hydrate(utils_1.LRUCache.get(__categoriesCacheKey, null)) : null;
80
- const [data, setData] = (0, react_1.useState)(reactions !== null ? { reactions, isLoading: false } : init);
56
+ const reactions = cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY ? hydrate(utils_1.LRUCache.get(__reactionsCacheKey, null)) : null;
57
+ const [data, setData] = (0, react_1.useState)(reactions !== null ? { default: reactions.find((reaction) => reaction.id === 1), reactions, isLoading: false } : init);
81
58
  /**
82
59
  * Fetch reactions
83
60
  */
@@ -99,13 +76,13 @@ const useSCFetchReactions = (props) => {
99
76
  if (cacheStrategy === utils_1.CacheStrategies.CACHE_FIRST && reactions) {
100
77
  return;
101
78
  }
102
- if (!scPreferences.features.includes(SCFeatures.REACTION)) {
79
+ if (!scPreferences.features.includes(types_1.SCFeatureName.REACTION)) {
103
80
  return;
104
81
  }
105
82
  fetchReactions()
106
83
  .then((data) => {
107
- setData({ reactions: data, isLoading: false });
108
- utils_1.LRUCache.set(__categoriesCacheKey, data.map((r) => {
84
+ setData({ reactions: data, isLoading: false, default: data.find((reaction) => reaction.id === 1) });
85
+ utils_1.LRUCache.set(__reactionsCacheKey, data.map((r) => {
109
86
  const __categoryCacheKey = (0, Cache_1.getReactionObjectCacheKey)(r.id);
110
87
  utils_1.LRUCache.set(__categoryCacheKey, r);
111
88
  return r.id;
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchReactions.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchReactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSCFetchReactions.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchReactions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAIhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC;;;;EA4CzG"}
1
+ {"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAMhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC;;;;EAkDzG"}
@@ -4,6 +4,7 @@ const react_1 = require("react");
4
4
  const Errors_1 = require("../constants/Errors");
5
5
  const api_services_1 = require("@selfcommunity/api-services");
6
6
  const utils_1 = require("@selfcommunity/utils");
7
+ const SCUserProvider_1 = require("../components/provider/SCUserProvider");
7
8
  /**
8
9
  :::info
9
10
  This custom hook is used to fetch a user object.
@@ -13,7 +14,11 @@ const utils_1 = require("@selfcommunity/utils");
13
14
  * @param object.user
14
15
  */
15
16
  function useSCFetchUser({ id = null, user = null }) {
16
- const [scUser, setSCUser] = (0, react_1.useState)(user);
17
+ // CONTEXT
18
+ const scUserContext = (0, SCUserProvider_1.useSCUser)();
19
+ const authUserId = scUserContext.user ? scUserContext.user.id : null;
20
+ const __user = authUserId ? user : (0, utils_1.objectWithoutProperties)(user, ['connection_status']);
21
+ const [scUser, setSCUser] = (0, react_1.useState)(__user);
17
22
  const [error, setError] = (0, react_1.useState)(null);
18
23
  /**
19
24
  * Memoized fetchUser
@@ -38,7 +43,7 @@ function useSCFetchUser({ id = null, user = null }) {
38
43
  if (id) {
39
44
  fetchUser()
40
45
  .then((obj) => {
41
- setSCUser(obj);
46
+ setSCUser(authUserId ? obj : (0, utils_1.objectWithoutProperties)(obj, ['connection_status']));
42
47
  })
43
48
  .catch((err) => {
44
49
  setError(`User with id ${id} not found`);
@@ -47,9 +52,9 @@ function useSCFetchUser({ id = null, user = null }) {
47
52
  });
48
53
  }
49
54
  else {
50
- setSCUser(user);
55
+ setSCUser(__user);
51
56
  }
52
- }, [id, user]);
57
+ }, [id, __user]);
53
58
  return { scUser, setSCUser, error };
54
59
  }
55
60
  exports.default = useSCFetchUser;
@@ -1 +1 @@
1
- {"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";;AAAA,iCAAmD;AACnD,gDAAkD;AAElD,8DAA0E;AAC1E,gDAA4C;AAE5C;;;;;;;GAOG;AACH,SAAwB,cAAc,CAAC,EAAC,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAA4C;IACxG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAa,IAAI,CAAC,CAAC;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAS,IAAI,CAAC,CAAC;IAEjD;;OAEG;IACH,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,OAAO,mBAAI;aACR,OAAO,CAAC;YACP,GAAG,EAAE,wBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,CAAC;YACjC,MAAM,EAAE,wBAAS,CAAC,IAAI,CAAC,MAAM;SAC9B,CAAC;aACD,IAAI,CAAC,CAAC,GAA6B,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;gBACrB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACP,CAAC,EACD,CAAC,EAAE,CAAC,CACL,CAAC;IAEF;;OAEG;IACH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,EAAE,EAAE;YACN,SAAS,EAAE;iBACR,IAAI,CAAC,CAAC,GAAe,EAAE,EAAE;gBACxB,SAAS,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;gBACzC,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;gBAC5D,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;SACN;aAAM;YACL,SAAS,CAAC,IAAI,CAAC,CAAC;SACjB;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IAEf,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;AACpC,CAAC;AA5CD,iCA4CC"}
1
+ {"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";;AAAA,iCAAmD;AACnD,gDAAkD;AAElD,8DAA0E;AAC1E,gDAAqE;AACrE,0EAAgE;AAGhE;;;;;;;GAOG;AACH,SAAwB,cAAc,CAAC,EAAC,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAA4C;IACxG,UAAU;IACV,MAAM,aAAa,GAAsB,IAAA,0BAAS,GAAE,CAAC;IACrD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,+BAAuB,EAAa,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAEpG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAa,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAS,IAAI,CAAC,CAAC;IAEjD;;OAEG;IACH,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,OAAO,mBAAI;aACR,OAAO,CAAC;YACP,GAAG,EAAE,wBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,EAAE,EAAC,CAAC;YACjC,MAAM,EAAE,wBAAS,CAAC,IAAI,CAAC,MAAM;SAC9B,CAAC;aACD,IAAI,CAAC,CAAC,GAA6B,EAAE,EAAE;YACtC,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;gBACrB,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5B;YACD,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACP,CAAC,EACD,CAAC,EAAE,CAAC,CACL,CAAC;IAEF;;OAEG;IACH,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,EAAE,EAAE;YACN,SAAS,EAAE;iBACR,IAAI,CAAC,CAAC,GAAe,EAAE,EAAE;gBACxB,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,+BAAuB,EAAa,GAAG,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAChG,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;gBACzC,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;gBAC5D,cAAM,CAAC,KAAK,CAAC,sBAAa,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;SACN;aAAM;YACL,SAAS,CAAC,MAAM,CAAC,CAAC;SACnB;IACH,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;IAEjB,OAAO,EAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAC,CAAC;AACpC,CAAC;AAlDD,iCAkDC"}
@@ -0,0 +1,58 @@
1
+ import { CacheStrategies } from '@selfcommunity/utils';
2
+ import { SCCommentType, SCContributionType, SCFeedObjectType, SCReactionType, SCVoteType } from '@selfcommunity/types';
3
+ interface FetchVoteProps {
4
+ /**
5
+ * Id of the contribution object to vote
6
+ * @default null
7
+ */
8
+ id: number;
9
+ /**
10
+ * Type of the contribution object to vote
11
+ * @default null
12
+ */
13
+ contributionType: SCContributionType;
14
+ /**
15
+ * Contribution object to vote
16
+ * @default null
17
+ */
18
+ contribution?: SCFeedObjectType | SCCommentType | null;
19
+ /**
20
+ * onVote callback
21
+ * @default null
22
+ */
23
+ onVote?: (contribution: SCFeedObjectType | SCCommentType) => any;
24
+ /**
25
+ * Cache strategy
26
+ * @default CACHE_FIRST
27
+ * */
28
+ cacheStrategy?: CacheStrategies;
29
+ }
30
+ /**
31
+ :::info
32
+ This custom hook is used to fetch a contribution vote.
33
+ :::
34
+ */
35
+ export default function useSCFetchVote({ id, contribution, contributionType, onVote, cacheStrategy, }: FetchVoteProps): {
36
+ isLoading: boolean;
37
+ isVoting: boolean;
38
+ handleVote: (reaction?: SCReactionType) => void;
39
+ reactions: {
40
+ default: SCReactionType;
41
+ reactions: SCReactionType[];
42
+ isLoading: boolean;
43
+ };
44
+ error: string;
45
+ handleFetchVoteList: ({ reaction, reset }: {
46
+ reaction?: SCReactionType;
47
+ reset?: boolean;
48
+ }) => void;
49
+ voteList: SCVoteType[];
50
+ isLoadingVoteList: boolean;
51
+ voteListHasNext: boolean;
52
+ contributionVoted: boolean;
53
+ contributionVoteCount: number;
54
+ contributionReaction: SCReactionType;
55
+ contributionReactionsCount: [];
56
+ };
57
+ export {};
58
+ //# sourceMappingURL=useSCFetchVote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSCFetchVote.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchVote.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EACL,aAAa,EACb,kBAAkB,EAElB,gBAAgB,EAGhB,cAAc,EAEd,UAAU,EACX,MAAM,sBAAsB,CAAC;AAU9B,UAAU,cAAc;IACtB;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;;OAGG;IACH,gBAAgB,EAAE,kBAAkB,CAAC;IACrC;;;OAGG;IACH,YAAY,CAAC,EAAE,gBAAgB,GAAG,aAAa,GAAG,IAAI,CAAC;IAEvD;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,gBAAgB,GAAG,aAAa,KAAK,GAAG,CAAC;IACjE;;;SAGK;IACL,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC;AAED;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,EAAE,EACF,YAAmB,EACnB,gBAAgB,EAChB,MAAa,EACb,aAA2C,GAC5C,EAAE,cAAc;;;4BA+FgB,cAAc;;;;;;;;mBAqE8B,cAAc;gBAAU,OAAO;;;;;;;;;EA4C3G"}