@selfcommunity/react-ui 0.7.0-alpha.25 → 0.7.0-alpha.27

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 (122) hide show
  1. package/lib/cjs/components/CategoriesFollowed/CategoriesFollowed.d.ts.map +1 -1
  2. package/lib/cjs/components/CategoriesFollowed/CategoriesFollowed.js +41 -29
  3. package/lib/cjs/components/CategoriesFollowed/CategoriesFollowed.js.map +1 -1
  4. package/lib/cjs/components/CategoriesFollowed/Skeleton.d.ts.map +1 -1
  5. package/lib/cjs/components/CategoriesFollowed/Skeleton.js +3 -1
  6. package/lib/cjs/components/CategoriesFollowed/Skeleton.js.map +1 -1
  7. package/lib/cjs/components/CategoriesPopular/CategoriesPopular.d.ts.map +1 -1
  8. package/lib/cjs/components/CategoriesPopular/CategoriesPopular.js +37 -26
  9. package/lib/cjs/components/CategoriesPopular/CategoriesPopular.js.map +1 -1
  10. package/lib/cjs/components/CategoriesPopular/Skeleton.d.ts.map +1 -1
  11. package/lib/cjs/components/CategoriesPopular/Skeleton.js +3 -1
  12. package/lib/cjs/components/CategoriesPopular/Skeleton.js.map +1 -1
  13. package/lib/cjs/components/CategoriesSuggestion/CategoriesSuggestion.d.ts +6 -0
  14. package/lib/cjs/components/CategoriesSuggestion/CategoriesSuggestion.d.ts.map +1 -1
  15. package/lib/cjs/components/CategoriesSuggestion/CategoriesSuggestion.js +31 -25
  16. package/lib/cjs/components/CategoriesSuggestion/CategoriesSuggestion.js.map +1 -1
  17. package/lib/cjs/components/CategoriesSuggestion/Skeleton.d.ts.map +1 -1
  18. package/lib/cjs/components/CategoriesSuggestion/Skeleton.js +3 -1
  19. package/lib/cjs/components/CategoriesSuggestion/Skeleton.js.map +1 -1
  20. package/lib/cjs/components/IncubatorSuggestion/IncubatorSuggestion.d.ts +6 -0
  21. package/lib/cjs/components/IncubatorSuggestion/IncubatorSuggestion.d.ts.map +1 -1
  22. package/lib/cjs/components/IncubatorSuggestion/IncubatorSuggestion.js +33 -25
  23. package/lib/cjs/components/IncubatorSuggestion/IncubatorSuggestion.js.map +1 -1
  24. package/lib/cjs/components/IncubatorsList/IncubatorsList.d.ts +7 -1
  25. package/lib/cjs/components/IncubatorsList/IncubatorsList.d.ts.map +1 -1
  26. package/lib/cjs/components/IncubatorsList/IncubatorsList.js +47 -29
  27. package/lib/cjs/components/IncubatorsList/IncubatorsList.js.map +1 -1
  28. package/lib/cjs/components/PeopleSuggestion/PeopleSuggestion.d.ts +6 -0
  29. package/lib/cjs/components/PeopleSuggestion/PeopleSuggestion.d.ts.map +1 -1
  30. package/lib/cjs/components/PeopleSuggestion/PeopleSuggestion.js +38 -41
  31. package/lib/cjs/components/PeopleSuggestion/PeopleSuggestion.js.map +1 -1
  32. package/lib/cjs/components/PollSuggestion/PollSuggestion.d.ts +7 -1
  33. package/lib/cjs/components/PollSuggestion/PollSuggestion.d.ts.map +1 -1
  34. package/lib/cjs/components/PollSuggestion/PollSuggestion.js +32 -24
  35. package/lib/cjs/components/PollSuggestion/PollSuggestion.js.map +1 -1
  36. package/lib/cjs/components/RelatedFeedObjects/RelatedFeedObjects.d.ts +7 -1
  37. package/lib/cjs/components/RelatedFeedObjects/RelatedFeedObjects.d.ts.map +1 -1
  38. package/lib/cjs/components/RelatedFeedObjects/RelatedFeedObjects.js +39 -29
  39. package/lib/cjs/components/RelatedFeedObjects/RelatedFeedObjects.js.map +1 -1
  40. package/lib/cjs/components/TrendingFeed/TrendingFeed.d.ts +6 -0
  41. package/lib/cjs/components/TrendingFeed/TrendingFeed.d.ts.map +1 -1
  42. package/lib/cjs/components/TrendingFeed/TrendingFeed.js +33 -26
  43. package/lib/cjs/components/TrendingFeed/TrendingFeed.js.map +1 -1
  44. package/lib/cjs/components/TrendingPeople/TrendingPeople.d.ts +6 -0
  45. package/lib/cjs/components/TrendingPeople/TrendingPeople.d.ts.map +1 -1
  46. package/lib/cjs/components/TrendingPeople/TrendingPeople.js +41 -30
  47. package/lib/cjs/components/TrendingPeople/TrendingPeople.js.map +1 -1
  48. package/lib/cjs/components/UserFollowers/UserFollowers.d.ts +6 -0
  49. package/lib/cjs/components/UserFollowers/UserFollowers.d.ts.map +1 -1
  50. package/lib/cjs/components/UserFollowers/UserFollowers.js +69 -43
  51. package/lib/cjs/components/UserFollowers/UserFollowers.js.map +1 -1
  52. package/lib/cjs/components/UsersFollowed/UsersFollowed.d.ts +6 -0
  53. package/lib/cjs/components/UsersFollowed/UsersFollowed.d.ts.map +1 -1
  54. package/lib/cjs/components/UsersFollowed/UsersFollowed.js +48 -34
  55. package/lib/cjs/components/UsersFollowed/UsersFollowed.js.map +1 -1
  56. package/lib/cjs/utils/tools.d.ts +29 -0
  57. package/lib/cjs/utils/tools.d.ts.map +1 -0
  58. package/lib/cjs/utils/tools.js +81 -0
  59. package/lib/cjs/utils/tools.js.map +1 -0
  60. package/lib/esm/components/CategoriesFollowed/CategoriesFollowed.d.ts.map +1 -1
  61. package/lib/esm/components/CategoriesFollowed/CategoriesFollowed.js +46 -34
  62. package/lib/esm/components/CategoriesFollowed/CategoriesFollowed.js.map +1 -1
  63. package/lib/esm/components/CategoriesFollowed/Skeleton.d.ts.map +1 -1
  64. package/lib/esm/components/CategoriesFollowed/Skeleton.js +3 -1
  65. package/lib/esm/components/CategoriesFollowed/Skeleton.js.map +1 -1
  66. package/lib/esm/components/CategoriesPopular/CategoriesPopular.d.ts.map +1 -1
  67. package/lib/esm/components/CategoriesPopular/CategoriesPopular.js +40 -29
  68. package/lib/esm/components/CategoriesPopular/CategoriesPopular.js.map +1 -1
  69. package/lib/esm/components/CategoriesPopular/Skeleton.d.ts.map +1 -1
  70. package/lib/esm/components/CategoriesPopular/Skeleton.js +3 -1
  71. package/lib/esm/components/CategoriesPopular/Skeleton.js.map +1 -1
  72. package/lib/esm/components/CategoriesSuggestion/CategoriesSuggestion.d.ts +6 -0
  73. package/lib/esm/components/CategoriesSuggestion/CategoriesSuggestion.d.ts.map +1 -1
  74. package/lib/esm/components/CategoriesSuggestion/CategoriesSuggestion.js +35 -29
  75. package/lib/esm/components/CategoriesSuggestion/CategoriesSuggestion.js.map +1 -1
  76. package/lib/esm/components/CategoriesSuggestion/Skeleton.d.ts.map +1 -1
  77. package/lib/esm/components/CategoriesSuggestion/Skeleton.js +3 -1
  78. package/lib/esm/components/CategoriesSuggestion/Skeleton.js.map +1 -1
  79. package/lib/esm/components/IncubatorSuggestion/IncubatorSuggestion.d.ts +6 -0
  80. package/lib/esm/components/IncubatorSuggestion/IncubatorSuggestion.d.ts.map +1 -1
  81. package/lib/esm/components/IncubatorSuggestion/IncubatorSuggestion.js +36 -28
  82. package/lib/esm/components/IncubatorSuggestion/IncubatorSuggestion.js.map +1 -1
  83. package/lib/esm/components/IncubatorsList/IncubatorsList.d.ts +7 -1
  84. package/lib/esm/components/IncubatorsList/IncubatorsList.d.ts.map +1 -1
  85. package/lib/esm/components/IncubatorsList/IncubatorsList.js +49 -31
  86. package/lib/esm/components/IncubatorsList/IncubatorsList.js.map +1 -1
  87. package/lib/esm/components/PeopleSuggestion/PeopleSuggestion.d.ts +6 -0
  88. package/lib/esm/components/PeopleSuggestion/PeopleSuggestion.d.ts.map +1 -1
  89. package/lib/esm/components/PeopleSuggestion/PeopleSuggestion.js +40 -43
  90. package/lib/esm/components/PeopleSuggestion/PeopleSuggestion.js.map +1 -1
  91. package/lib/esm/components/PollSuggestion/PollSuggestion.d.ts +7 -1
  92. package/lib/esm/components/PollSuggestion/PollSuggestion.d.ts.map +1 -1
  93. package/lib/esm/components/PollSuggestion/PollSuggestion.js +35 -27
  94. package/lib/esm/components/PollSuggestion/PollSuggestion.js.map +1 -1
  95. package/lib/esm/components/RelatedFeedObjects/RelatedFeedObjects.d.ts +7 -1
  96. package/lib/esm/components/RelatedFeedObjects/RelatedFeedObjects.d.ts.map +1 -1
  97. package/lib/esm/components/RelatedFeedObjects/RelatedFeedObjects.js +42 -32
  98. package/lib/esm/components/RelatedFeedObjects/RelatedFeedObjects.js.map +1 -1
  99. package/lib/esm/components/TrendingFeed/TrendingFeed.d.ts +6 -0
  100. package/lib/esm/components/TrendingFeed/TrendingFeed.d.ts.map +1 -1
  101. package/lib/esm/components/TrendingFeed/TrendingFeed.js +36 -29
  102. package/lib/esm/components/TrendingFeed/TrendingFeed.js.map +1 -1
  103. package/lib/esm/components/TrendingPeople/TrendingPeople.d.ts +6 -0
  104. package/lib/esm/components/TrendingPeople/TrendingPeople.d.ts.map +1 -1
  105. package/lib/esm/components/TrendingPeople/TrendingPeople.js +43 -32
  106. package/lib/esm/components/TrendingPeople/TrendingPeople.js.map +1 -1
  107. package/lib/esm/components/UserFollowers/UserFollowers.d.ts +6 -0
  108. package/lib/esm/components/UserFollowers/UserFollowers.d.ts.map +1 -1
  109. package/lib/esm/components/UserFollowers/UserFollowers.js +72 -46
  110. package/lib/esm/components/UserFollowers/UserFollowers.js.map +1 -1
  111. package/lib/esm/components/UsersFollowed/UsersFollowed.d.ts +6 -0
  112. package/lib/esm/components/UsersFollowed/UsersFollowed.d.ts.map +1 -1
  113. package/lib/esm/components/UsersFollowed/UsersFollowed.js +51 -37
  114. package/lib/esm/components/UsersFollowed/UsersFollowed.js.map +1 -1
  115. package/lib/esm/utils/tools.d.ts +29 -0
  116. package/lib/esm/utils/tools.d.ts.map +1 -0
  117. package/lib/esm/utils/tools.js +76 -0
  118. package/lib/esm/utils/tools.js.map +1 -0
  119. package/lib/umd/react-ui.js +11 -11
  120. package/lib/umd/react-ui.js.LICENSE.txt +1 -1
  121. package/lib/umd/react-ui.js.map +1 -1
  122. package/package.json +3 -3
@@ -1,11 +1,12 @@
1
- import React, { useContext, useEffect, useState } from 'react';
1
+ import React, { useContext, useEffect, useMemo, useReducer, useState } from 'react';
2
2
  import { styled } from '@mui/material/styles';
3
3
  import List from '@mui/material/List';
4
4
  import { Button, CardContent, ListItem, Typography, useMediaQuery, useTheme } from '@mui/material';
5
5
  import Widget from '../Widget';
6
6
  import { http, Endpoints } from '@selfcommunity/api-services';
7
- import { Logger } from '@selfcommunity/utils';
8
- import { SCPreferences, SCPreferencesContext, SCUserContext, useIsComponentMountedRef } from '@selfcommunity/react-core';
7
+ import { CacheStrategies, Logger } from '@selfcommunity/utils';
8
+ import { SCCache, SCPreferences, SCPreferencesContext, SCUserContext, useIsComponentMountedRef } from '@selfcommunity/react-core';
9
+ import { actionToolsTypes, dataToolsReducer, stateToolsInitializer } from '../../utils/tools';
9
10
  import Skeleton from './Skeleton';
10
11
  import User from '../User';
11
12
  import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
@@ -87,108 +88,133 @@ export default function UserFollowers(inProps) {
87
88
  props: inProps,
88
89
  name: PREFIX
89
90
  });
90
- const { userId, autoHide, className, UserProps = {} } = props;
91
+ const { userId, autoHide, className, UserProps = {}, cacheStrategy = CacheStrategies.NETWORK_ONLY, onHeightChange, onStateChange } = props;
91
92
  // REFS
92
93
  const isMountedRef = useIsComponentMountedRef();
93
94
  // STATE
94
95
  const theme = useTheme();
95
96
  const isMobile = useMediaQuery(theme.breakpoints.down('md'));
96
- const [followers, setFollowers] = useState([]);
97
- const [visibleUsers, setVisibleUsers] = useState(limit);
98
- const [loading, setLoading] = useState(true);
99
- const [hasMore, setHasMore] = useState(false);
100
- const [total, setTotal] = useState(0);
97
+ const [state, dispatch] = useReducer(dataToolsReducer, {
98
+ isLoadingNext: true,
99
+ next: `${Endpoints.UserFollowers.url({ id: userId })}?limit=10`,
100
+ cacheKey: SCCache.getToolsStateCacheKey(SCCache.USER_FOLLOWERS_TOOLS_STATE_CACHE_PREFIX_KEY, userId),
101
+ cacheStrategy
102
+ }, stateToolsInitializer);
101
103
  const [openUserFollowersDialog, setOpenUserFollowersDialog] = useState(false);
102
- const [next, setNext] = useState(`${Endpoints.UserFollowers.url({ id: userId })}?limit=10`);
104
+ // CONST
105
+ const authUserId = scUserContext.user ? scUserContext.user.id : null;
103
106
  /**
104
107
  * Fetches the list of users followers
105
108
  */
106
- function fetchFollowers() {
107
- if (next) {
109
+ const fetchFollowers = useMemo(() => () => {
110
+ if (state.next) {
108
111
  http
109
112
  .request({
110
- url: next,
113
+ url: state.next,
111
114
  method: Endpoints.UserFollowers.method
112
115
  })
113
116
  .then((res) => {
114
- if (isMountedRef.current) {
117
+ if (res.status < 300 && isMountedRef.current) {
115
118
  const data = res.data;
116
- setFollowers([...followers, ...data.results]);
117
- setHasMore(data.count > visibleUsers);
118
- setNext(data['next']);
119
- setLoading(false);
120
- setTotal(data.count);
119
+ dispatch({
120
+ type: actionToolsTypes.LOAD_NEXT_SUCCESS,
121
+ payload: {
122
+ results: data.results,
123
+ count: data.count,
124
+ next: data.next
125
+ }
126
+ });
121
127
  }
122
128
  })
123
129
  .catch((error) => {
124
- setLoading(false);
130
+ dispatch({ type: actionToolsTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
125
131
  Logger.error(SCOPE_SC_UI, error);
126
132
  });
127
133
  }
128
- }
134
+ }, [dispatch, state.next, state.isLoadingNext]);
129
135
  /**
130
136
  * On mount, fetches the list of users followers
131
137
  */
132
138
  useEffect(() => {
133
- if (!contentAvailability && !scUserContext.user) {
139
+ if (!userId) {
134
140
  return;
135
141
  }
136
- if (!userId) {
142
+ else if (cacheStrategy === CacheStrategies.NETWORK_ONLY) {
143
+ fetchFollowers();
144
+ onStateChange && onStateChange({ cacheStrategy: CacheStrategies.CACHE_FIRST });
145
+ }
146
+ else if (!contentAvailability && !authUserId) {
137
147
  return;
138
148
  }
139
- fetchFollowers();
140
- }, [scUserContext.user]);
149
+ }, [authUserId]);
150
+ /**
151
+ * Virtual feed update
152
+ */
153
+ useEffect(() => {
154
+ onHeightChange && onHeightChange();
155
+ }, [state.results.length]);
141
156
  /**
142
157
  * Handles followers counter update on follow/unfollow action.
143
158
  * @param user
144
159
  */
145
160
  function handleFollowersUpdate(user) {
146
- const newUsers = [...followers];
147
- const index = newUsers.findIndex((u) => u.id === user.id);
148
- if (index !== -1) {
149
- if (user.connection_status === 'followed') {
150
- newUsers[index].followers_counter = user.followers_counter - 1;
151
- newUsers[index].connection_status = null;
152
- }
153
- else {
154
- newUsers[index].followers_counter = user.followers_counter + 1;
155
- newUsers[index].connection_status = 'followed';
161
+ if (scUserContext.user['id'] === userId) {
162
+ dispatch({
163
+ type: actionToolsTypes.SET_RESULTS,
164
+ payload: { results: state.results.filter((u) => u.id !== user.id), count: state.count - 1 }
165
+ });
166
+ }
167
+ else {
168
+ const newUsers = [...state.results];
169
+ const index = newUsers.findIndex((u) => u.id === user.id);
170
+ if (index !== -1) {
171
+ if (user.connection_status === 'followed') {
172
+ newUsers[index].followers_counter = user.followers_counter - 1;
173
+ newUsers[index].connection_status = null;
174
+ }
175
+ else {
176
+ newUsers[index].followers_counter = user.followers_counter + 1;
177
+ newUsers[index].connection_status = 'followed';
178
+ }
179
+ dispatch({
180
+ type: actionToolsTypes.SET_RESULTS,
181
+ payload: { results: newUsers }
182
+ });
156
183
  }
157
- setFollowers(newUsers);
158
184
  }
159
185
  }
160
186
  /**
161
187
  * Renders the list of users followers
162
188
  */
163
- if (loading) {
164
- React.createElement(Skeleton, null);
189
+ if (state.isLoadingNext) {
190
+ return React.createElement(Skeleton, null);
165
191
  }
166
192
  const u = (React.createElement(CardContent, null,
167
- React.createElement(Typography, { className: classes.title, variant: "h5" }, `${intl.formatMessage(messages.title, { total: total })}`),
168
- !total ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" }, `${intl.formatMessage(messages.noFollowers)}`)) : (React.createElement(React.Fragment, null,
169
- React.createElement(List, null, followers.slice(0, visibleUsers).map((user) => (React.createElement(ListItem, { key: user.id },
193
+ React.createElement(Typography, { className: classes.title, variant: "h5" }, `${intl.formatMessage(messages.title, { total: state.count })}`),
194
+ !state.count ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" }, `${intl.formatMessage(messages.noFollowers)}`)) : (React.createElement(React.Fragment, null,
195
+ React.createElement(List, null, state.results.slice(0, limit).map((user) => (React.createElement(ListItem, { key: user.id },
170
196
  React.createElement(User, Object.assign({ elevation: 0, user: user, className: classes.followersItem }, (followEnabled
171
197
  ? { followConnectUserButtonProps: { onFollow: handleFollowersUpdate } }
172
198
  : { followConnectUserButtonProps: { onChangeConnectionStatus: handleFollowersUpdate } }), UserProps)))))),
173
- hasMore && (React.createElement(Button, { size: "small", className: classes.showMore, onClick: () => setOpenUserFollowersDialog(true) },
199
+ limit < state.count && (React.createElement(Button, { size: "small", className: classes.showMore, onClick: () => setOpenUserFollowersDialog(true) },
174
200
  React.createElement(FormattedMessage, { id: "ui.userFollowers.button.showAll", defaultMessage: "ui.userFollowers.button.showAll" }))),
175
- openUserFollowersDialog && (React.createElement(BaseDialog, { title: isMobile ? (React.createElement(FormattedMessage, { id: "ui.userFollowers.modal.title", defaultMessage: "ui.userFollowers.modal.title" })) : (`${intl.formatMessage(messages.title, { total: total })}`), onClose: () => setOpenUserFollowersDialog(false), open: openUserFollowersDialog }, loading ? (React.createElement(CentralProgress, { size: 50 })) : (React.createElement(InfiniteScroll, { dataLength: followers.length, next: fetchFollowers, hasMoreNext: Boolean(next), loaderNext: React.createElement(CentralProgress, { size: 30 }), height: isMobile ? '100vh' : 400, endMessage: React.createElement("p", { style: { textAlign: 'center' } },
201
+ openUserFollowersDialog && (React.createElement(BaseDialog, { title: isMobile ? (React.createElement(FormattedMessage, { id: "ui.userFollowers.modal.title", defaultMessage: "ui.userFollowers.modal.title" })) : (`${intl.formatMessage(messages.title, { total: state.count })}`), onClose: () => setOpenUserFollowersDialog(false), open: openUserFollowersDialog }, state.isLoadingNext ? (React.createElement(CentralProgress, { size: 50 })) : (React.createElement(InfiniteScroll, { dataLength: state.results.length, next: fetchFollowers, hasMoreNext: Boolean(state.next), loaderNext: React.createElement(CentralProgress, { size: 30 }), height: isMobile ? '100vh' : 400, endMessage: React.createElement("p", { style: { textAlign: 'center' } },
176
202
  React.createElement("b", null,
177
203
  React.createElement(FormattedMessage, { id: "ui.userFollowers.noMoreResults", defaultMessage: "ui.userFollowers.noMoreResults" }))) },
178
- React.createElement(List, null, followers.map((f) => (React.createElement(ListItem, { key: f.id },
204
+ React.createElement(List, null, state.results.map((f) => (React.createElement(ListItem, { key: f.id },
179
205
  React.createElement(User, Object.assign({ elevation: 0, user: f, className: classes.followersItem }, (followEnabled
180
206
  ? { followConnectUserButtonProps: { onFollow: handleFollowersUpdate } }
181
207
  : { followConnectUserButtonProps: { onChangeConnectionStatus: handleFollowersUpdate } }), UserProps))))))))))))));
182
208
  /**
183
209
  * if there are no results and autoHide prop is set to true ,component is hidden
184
210
  */
185
- if (autoHide && !total) {
211
+ if (autoHide && !state.count) {
186
212
  return React.createElement(HiddenPlaceholder, null);
187
213
  }
188
214
  /**
189
215
  * If content availability community option is false and user is anonymous , component is hidden.
190
216
  */
191
- if (!contentAvailability && !scUserContext.user) {
217
+ if (!contentAvailability && !authUserId) {
192
218
  return React.createElement(HiddenPlaceholder, null);
193
219
  }
194
220
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"UserFollowers.js","sourceRoot":"","sources":["../../../../src/components/UserFollowers/UserFollowers.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserFollowers.js","sourceRoot":"","sources":["../../../../src/components/UserFollowers/UserFollowers.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { CacheStrategies } from '@selfcommunity/utils';
1
2
  import { UserProps } from '../User';
2
3
  import { VirtualScrollerItemProps } from '../../types/virtualScroller';
3
4
  export interface UsersFollowedProps extends VirtualScrollerItemProps {
@@ -21,6 +22,11 @@ export interface UsersFollowedProps extends VirtualScrollerItemProps {
21
22
  * @default empty object
22
23
  */
23
24
  UserProps?: UserProps;
25
+ /**
26
+ * Caching strategies
27
+ * @default CacheStrategies.CACHE_FIRST
28
+ */
29
+ cacheStrategy?: CacheStrategies;
24
30
  }
25
31
  /**
26
32
  * > API documentation for the Community-JS Users Followed component. Learn about the available props and the CSS API.
@@ -1 +1 @@
1
- {"version":3,"file":"UsersFollowed.d.ts","sourceRoot":"","sources":["../../../../src/components/UsersFollowed/UsersFollowed.tsx"],"names":[],"mappings":"AAiBA,OAAa,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AASxC,OAAO,EAAC,wBAAwB,EAAC,MAAM,6BAA6B,CAAC;AAkCrE,MAAM,WAAW,kBAAmB,SAAQ,wBAAwB;IAClE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAsN9E"}
1
+ {"version":3,"file":"UsersFollowed.d.ts","sourceRoot":"","sources":["../../../../src/components/UsersFollowed/UsersFollowed.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAC,eAAe,EAAS,MAAM,sBAAsB,CAAC;AAW7D,OAAa,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AASxC,OAAO,EAAC,wBAAwB,EAAC,MAAM,6BAA6B,CAAC;AAmCrE,MAAM,WAAW,kBAAmB,SAAQ,wBAAwB;IAClE;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAyO9E"}
@@ -1,11 +1,11 @@
1
- import React, { useContext, useEffect, useState } from 'react';
1
+ import React, { useContext, useEffect, useMemo, useReducer, useState } from 'react';
2
2
  import { styled } from '@mui/material/styles';
3
3
  import List from '@mui/material/List';
4
4
  import { Button, CardContent, ListItem, Typography, useMediaQuery, useTheme } from '@mui/material';
5
5
  import Widget from '../Widget';
6
6
  import { http, Endpoints } from '@selfcommunity/api-services';
7
- import { Logger } from '@selfcommunity/utils';
8
- import { SCPreferences, SCPreferencesContext, SCUserContext, useIsComponentMountedRef } from '@selfcommunity/react-core';
7
+ import { CacheStrategies, Logger } from '@selfcommunity/utils';
8
+ import { SCCache, SCPreferences, SCPreferencesContext, SCUserContext, useIsComponentMountedRef } from '@selfcommunity/react-core';
9
9
  import Skeleton from './Skeleton';
10
10
  import User from '../User';
11
11
  import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
@@ -16,6 +16,7 @@ import CentralProgress from '../../shared/CentralProgress';
16
16
  import InfiniteScroll from '../../shared/InfiniteScroll';
17
17
  import { useThemeProps } from '@mui/system';
18
18
  import HiddenPlaceholder from '../../shared/HiddenPlaceholder';
19
+ import { actionToolsTypes, dataToolsReducer, stateToolsInitializer } from '../../utils/tools';
19
20
  const messages = defineMessages({
20
21
  title: {
21
22
  id: 'ui.usersFollowed.title',
@@ -87,29 +88,33 @@ export default function UsersFollowed(inProps) {
87
88
  props: inProps,
88
89
  name: PREFIX
89
90
  });
90
- const { userId, autoHide, className, UserProps = {}, onHeightChange } = props;
91
+ const { userId, autoHide, className, UserProps = {}, cacheStrategy = CacheStrategies.NETWORK_ONLY, onHeightChange, onStateChange } = props;
91
92
  // REFS
92
93
  const isMountedRef = useIsComponentMountedRef();
93
94
  // STATE
94
95
  const theme = useTheme();
95
96
  const isMobile = useMediaQuery(theme.breakpoints.down('md'));
96
- const [followed, setFollowed] = useState([]);
97
- const [loading, setLoading] = useState(true);
98
- const [hasMore, setHasMore] = useState(false);
99
- const [total, setTotal] = useState(0);
97
+ const [state, dispatch] = useReducer(dataToolsReducer, {
98
+ isLoadingNext: true,
99
+ next: `${Endpoints.UsersFollowed.url({ id: userId })}?limit=10`,
100
+ cacheKey: SCCache.getToolsStateCacheKey(SCCache.USERS_FOLLOWED_TOOLS_STATE_CACHE_PREFIX_KEY, userId),
101
+ cacheStrategy
102
+ }, stateToolsInitializer);
100
103
  const [openUsersFollowedDialog, setOpenUsersFollowedDialog] = useState(false);
101
- const [next, setNext] = useState(`${Endpoints.UsersFollowed.url({ id: userId })}?limit=10`);
104
+ // CONST
105
+ const authUserId = scUserContext.user ? scUserContext.user.id : null;
102
106
  /**
103
107
  * Handles list change on user follow
104
108
  */
105
109
  function handleOnFollowUser(user, follow) {
106
110
  if (scUserContext.user['id'] === userId) {
107
- setFollowed(followed.filter((u) => u.id !== user.id));
108
- setTotal((prev) => prev - 1);
109
- setHasMore(total - 1 > limit);
111
+ dispatch({
112
+ type: actionToolsTypes.SET_RESULTS,
113
+ payload: { results: state.results.filter((u) => u.id !== user.id), count: state.count - 1 }
114
+ });
110
115
  }
111
116
  else {
112
- const newUsers = [...followed];
117
+ const newUsers = [...state.results];
113
118
  const index = newUsers.findIndex((u) => u.id === user.id);
114
119
  if (index !== -1) {
115
120
  if (user.connection_status === 'followed') {
@@ -120,36 +125,42 @@ export default function UsersFollowed(inProps) {
120
125
  newUsers[index].followers_counter = user.followers_counter + 1;
121
126
  newUsers[index].connection_status = 'followed';
122
127
  }
123
- setFollowed(newUsers);
128
+ dispatch({
129
+ type: actionToolsTypes.SET_RESULTS,
130
+ payload: { results: newUsers }
131
+ });
124
132
  }
125
133
  }
126
134
  }
127
135
  /**
128
136
  * Fetches the list of users followed
129
137
  */
130
- function fetchFollowed() {
131
- if (next) {
138
+ const fetchFollowed = useMemo(() => () => {
139
+ if (state.next) {
132
140
  http
133
141
  .request({
134
- url: next,
142
+ url: state.next,
135
143
  method: Endpoints.UsersFollowed.method
136
144
  })
137
145
  .then((res) => {
138
- if (isMountedRef.current) {
146
+ if (res.status < 300 && isMountedRef.current) {
139
147
  const data = res.data;
140
- setFollowed([...followed, ...data.results]);
141
- setHasMore(data.count > limit);
142
- setNext(data['next']);
143
- setLoading(false);
144
- setTotal(data.count);
148
+ dispatch({
149
+ type: actionToolsTypes.LOAD_NEXT_SUCCESS,
150
+ payload: {
151
+ results: data.results,
152
+ count: data.count,
153
+ next: data.next
154
+ }
155
+ });
145
156
  }
146
157
  })
147
158
  .catch((error) => {
148
- setLoading(false);
159
+ dispatch({ type: actionToolsTypes.LOAD_NEXT_FAILURE, payload: { errorLoadNext: error } });
149
160
  Logger.error(SCOPE_SC_UI, error);
150
161
  });
151
162
  }
152
- }
163
+ }, [dispatch, state.next, state.isLoadingNext]);
153
164
  /**
154
165
  * On mount, fetches the list of users followed
155
166
  */
@@ -157,43 +168,46 @@ export default function UsersFollowed(inProps) {
157
168
  if (!userId) {
158
169
  return;
159
170
  }
160
- if (!contentAvailability && !scUserContext.user) {
171
+ else if (!contentAvailability && !scUserContext.user) {
161
172
  return;
162
173
  }
163
- fetchFollowed();
164
- }, [scUserContext.user]);
174
+ else if (cacheStrategy === CacheStrategies.NETWORK_ONLY) {
175
+ fetchFollowed();
176
+ onStateChange && onStateChange({ cacheStrategy: CacheStrategies.CACHE_FIRST });
177
+ }
178
+ }, [authUserId]);
165
179
  /**
166
180
  * Virtual feed update
167
181
  */
168
182
  useEffect(() => {
169
183
  onHeightChange && onHeightChange();
170
- }, [followed.length, loading]);
184
+ }, [state.results]);
171
185
  /**
172
186
  * Renders the list of users followed
173
187
  */
174
- if (loading) {
188
+ if (state.isLoadingNext) {
175
189
  return React.createElement(Skeleton, null);
176
190
  }
177
191
  const u = (React.createElement(CardContent, null,
178
- React.createElement(Typography, { className: classes.title, variant: "h5" }, `${intl.formatMessage(messages.title, { total: total })}`),
179
- !total ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" }, `${intl.formatMessage(messages.noUsers)}`)) : (React.createElement(React.Fragment, null,
180
- React.createElement(List, null, followed.slice(0, limit).map((user) => (React.createElement(ListItem, { key: user.id },
192
+ React.createElement(Typography, { className: classes.title, variant: "h5" }, `${intl.formatMessage(messages.title, { total: state.count })}`),
193
+ !state.count ? (React.createElement(Typography, { className: classes.noResults, variant: "body2" }, `${intl.formatMessage(messages.noUsers)}`)) : (React.createElement(React.Fragment, null,
194
+ React.createElement(List, null, state.results.slice(0, limit).map((user) => (React.createElement(ListItem, { key: user.id },
181
195
  React.createElement(User, Object.assign({ elevation: 0, user: user }, (followEnabled
182
196
  ? { followConnectUserButtonProps: { onFollow: handleOnFollowUser } }
183
197
  : { followConnectUserButtonProps: { onChangeConnectionStatus: handleOnFollowUser } }), { className: classes.followedItem }, UserProps)))))),
184
- hasMore && (React.createElement(Button, { size: "small", className: classes.showMore, onClick: () => setOpenUsersFollowedDialog(true) },
198
+ limit < state.count && (React.createElement(Button, { size: "small", className: classes.showMore, onClick: () => setOpenUsersFollowedDialog(true) },
185
199
  React.createElement(FormattedMessage, { id: "ui.usersFollowed.button.showAll", defaultMessage: "ui.usersFollowed.button.showAll" }))),
186
- openUsersFollowedDialog && (React.createElement(BaseDialog, { title: isMobile ? (React.createElement(FormattedMessage, { id: "ui.usersFollowed.modal.title", defaultMessage: "ui.usersFollowed.modal.title" })) : (`${intl.formatMessage(messages.title, { total: total })}`), onClose: () => setOpenUsersFollowedDialog(false), open: openUsersFollowedDialog }, loading ? (React.createElement(CentralProgress, { size: 50 })) : (React.createElement(InfiniteScroll, { dataLength: followed.length, next: fetchFollowed, hasMoreNext: Boolean(next), loaderNext: React.createElement(CentralProgress, { size: 30 }), height: isMobile ? '100vh' : 400, endMessage: React.createElement("p", { style: { textAlign: 'center' } },
200
+ openUsersFollowedDialog && (React.createElement(BaseDialog, { title: isMobile ? (React.createElement(FormattedMessage, { id: "ui.usersFollowed.modal.title", defaultMessage: "ui.usersFollowed.modal.title" })) : (`${intl.formatMessage(messages.title, { total: state.count })}`), onClose: () => setOpenUsersFollowedDialog(false), open: openUsersFollowedDialog }, state.isLoadingNext ? (React.createElement(CentralProgress, { size: 50 })) : (React.createElement(InfiniteScroll, { dataLength: state.results.length, next: fetchFollowed, hasMoreNext: Boolean(state.next), loaderNext: React.createElement(CentralProgress, { size: 30 }), height: isMobile ? '100vh' : 400, endMessage: React.createElement("p", { style: { textAlign: 'center' } },
187
201
  React.createElement("b", null,
188
202
  React.createElement(FormattedMessage, { id: "ui.usersFollowed.noMoreResults", defaultMessage: "ui.usersFollowed.noMoreResults" }))) },
189
- React.createElement(List, null, followed.map((f) => (React.createElement(ListItem, { key: f.id },
203
+ React.createElement(List, null, state.results.map((f) => (React.createElement(ListItem, { key: f.id },
190
204
  React.createElement(User, Object.assign({ elevation: 0, user: f }, UserProps, { className: classes.followedItem }, (followEnabled
191
205
  ? { followConnectUserButtonProps: { onFollow: handleOnFollowUser } }
192
206
  : { followConnectUserButtonProps: { onChangeConnectionStatus: handleOnFollowUser } })))))))))))))));
193
207
  /**
194
208
  * if there are no results and autoHide prop is set to true ,component is hidden
195
209
  */
196
- if (autoHide && !total) {
210
+ if (autoHide && !state.count) {
197
211
  return React.createElement(HiddenPlaceholder, null);
198
212
  }
199
213
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"UsersFollowed.js","sourceRoot":"","sources":["../../../../src/components/UsersFollowed/UsersFollowed.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UsersFollowed.js","sourceRoot":"","sources":["../../../../src/components/UsersFollowed/UsersFollowed.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAClF,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAC5C,OAAO,IAAI,MAAM,oBAAoB,CAAC;AACtC,OAAO,EAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AACjG,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,OAAO,EAAC,IAAI,EAAE,SAAS,EAAe,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAC,eAAe,EAAE,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,aAAa,EACb,oBAAoB,EAEpB,aAAa,EAEb,wBAAwB,EACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,IAAiB,MAAM,SAAS,CAAC;AACxC,OAAO,EAAC,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AACrE,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAC,gBAAgB,EAAE,gBAAgB,EAAE,qBAAqB,EAAC,MAAM,mBAAmB,CAAC;AAE5F,MAAM,QAAQ,GAAG,cAAc,CAAC;IAC9B,KAAK,EAAE;QACL,EAAE,EAAE,wBAAwB;QAC5B,cAAc,EAAE,wBAAwB;KACzC;IACD,OAAO,EAAE;QACP,EAAE,EAAE,qCAAqC;QACzC,cAAc,EAAE,qCAAqC;KACtD;CACF,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,MAAM,OAAO,GAAG;IACd,IAAI,EAAE,GAAG,MAAM,OAAO;IACtB,KAAK,EAAE,GAAG,MAAM,QAAQ;IACxB,YAAY,EAAE,GAAG,MAAM,gBAAgB;IACvC,SAAS,EAAE,GAAG,MAAM,aAAa;IACjC,QAAQ,EAAE,GAAG,MAAM,YAAY;CAChC,CAAC;AAEF,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI;CAClD,CAAC,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,CAAC;IACf,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9B,CAAC,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,EAAE;QAC9B,YAAY,EAAE,KAAK,CAAC,OAAO,EAAE;KAC9B;CACF,CAAC,CAAC,CAAC;AA8BJ;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAA2B;IAC/D,QAAQ;IACR,MAAM,KAAK,GAAG,CAAC,CAAC;IAEhB,OAAO;IACP,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IAEvB,UAAU;IACV,MAAM,aAAa,GAAsB,UAAU,CAAC,aAAa,CAAC,CAAC;IACnE,MAAM,oBAAoB,GAA6B,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACxF,MAAM,mBAAmB,GACvB,aAAa,CAAC,mCAAmC,IAAI,oBAAoB,CAAC,WAAW;QACrF,oBAAoB,CAAC,WAAW,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC,KAAK,CAAC;IAC5F,MAAM,aAAa,GACjB,aAAa,CAAC,6BAA6B,IAAI,oBAAoB,CAAC,WAAW;QAC/E,oBAAoB,CAAC,WAAW,CAAC,aAAa,CAAC,6BAA6B,CAAC,CAAC,KAAK,CAAC;IAEtF,QAAQ;IACR,MAAM,KAAK,GAAuB,aAAa,CAAC;QAC9C,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IACH,MAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,GAAG,EAAE,EAAE,aAAa,GAAG,eAAe,CAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAC,GAAG,KAAK,CAAC;IAEzI,OAAO;IACP,MAAM,YAAY,GAAG,wBAAwB,EAAE,CAAC;IAEhD,QAAQ;IACR,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAClC,gBAAgB,EAChB;QACE,aAAa,EAAE,IAAI;QACnB,IAAI,EAAE,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,MAAM,EAAC,CAAC,WAAW;QAC7D,QAAQ,EAAE,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,2CAA2C,EAAE,MAAM,CAAC;QACpG,aAAa;KACd,EACD,qBAAqB,CACtB,CAAC;IACF,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEvF,QAAQ;IACR,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE;;OAEG;IACH,SAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM;QACtC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE;YACvC,QAAQ,CAAC;gBACP,IAAI,EAAE,gBAAgB,CAAC,WAAW;gBAClC,OAAO,EAAE,EAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,EAAC;aAC1F,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,IAAI,IAAI,CAAC,iBAAiB,KAAK,UAAU,EAAE;oBACzC,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;oBAC/D,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAAC;iBAC1C;qBAAM;oBACL,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;oBAC/D,QAAQ,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,UAAU,CAAC;iBAChD;gBACD,QAAQ,CAAC;oBACP,IAAI,EAAE,gBAAgB,CAAC,WAAW;oBAClC,OAAO,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC;iBAC7B,CAAC,CAAC;aACJ;SACF;IACH,CAAC;IAED;;OAEG;IACH,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,IAAI,KAAK,CAAC,IAAI,EAAE;YACd,IAAI;iBACD,OAAO,CAAC;gBACP,GAAG,EAAE,KAAK,CAAC,IAAI;gBACf,MAAM,EAAE,SAAS,CAAC,aAAa,CAAC,MAAM;aACvC,CAAC;iBACD,IAAI,CAAC,CAAC,GAAsB,EAAE,EAAE;gBAC/B,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE;oBAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;oBACtB,QAAQ,CAAC;wBACP,IAAI,EAAE,gBAAgB,CAAC,iBAAiB;wBACxC,OAAO,EAAE;4BACP,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,IAAI,EAAE,IAAI,CAAC,IAAI;yBAChB;qBACF,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,QAAQ,CAAC,EAAC,IAAI,EAAE,gBAAgB,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAC,aAAa,EAAE,KAAK,EAAC,EAAC,CAAC,CAAC;gBACtF,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,CAC5C,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;aAAM,IAAI,CAAC,mBAAmB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;YACtD,OAAO;SACR;aAAM,IAAI,aAAa,KAAK,eAAe,CAAC,YAAY,EAAE;YACzD,aAAa,EAAE,CAAC;YAChB,aAAa,IAAI,aAAa,CAAC,EAAC,aAAa,EAAE,eAAe,CAAC,WAAW,EAAC,CAAC,CAAC;SAC9E;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,IAAI,cAAc,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB;;OAEG;IACH,IAAI,KAAK,CAAC,aAAa,EAAE;QACvB,OAAO,oBAAC,QAAQ,OAAG,CAAC;KACrB;IACD,MAAM,CAAC,GAAG,CACR,oBAAC,WAAW;QACV,oBAAC,UAAU,IAAC,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAC,IAAI,IAAE,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,CAAC,EAAE,CAAc;QAC9H,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CACd,oBAAC,UAAU,IAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAC,OAAO,IAAE,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAc,CACnH,CAAC,CAAC,CAAC,CACF,oBAAC,KAAK,CAAC,QAAQ;YACb,oBAAC,IAAI,QACF,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAgB,EAAE,EAAE,CAAC,CACvD,oBAAC,QAAQ,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBACpB,oBAAC,IAAI,kBACH,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,IAAI,IACN,CAAC,aAAa;oBAChB,CAAC,CAAC,EAAC,4BAA4B,EAAE,EAAC,QAAQ,EAAE,kBAAkB,EAAC,EAAC;oBAChE,CAAC,CAAC,EAAC,4BAA4B,EAAE,EAAC,wBAAwB,EAAE,kBAAkB,EAAC,EAAC,CAAC,IACnF,SAAS,EAAE,OAAO,CAAC,YAAY,IAC3B,SAAS,EACb,CACO,CACZ,CAAC,CACG;YACN,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,CACtB,oBAAC,MAAM,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC;gBAC/F,oBAAC,gBAAgB,IAAC,EAAE,EAAC,iCAAiC,EAAC,cAAc,EAAC,iCAAiC,GAAG,CACnG,CACV;YACA,uBAAuB,IAAI,CAC1B,oBAAC,UAAU,IACT,KAAK,EACH,QAAQ,CAAC,CAAC,CAAC,CACT,oBAAC,gBAAgB,IAAC,EAAE,EAAC,8BAA8B,EAAC,cAAc,EAAC,8BAA8B,GAAG,CACrG,CAAC,CAAC,CAAC,CACF,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,CAAC,EAAE,CAC9D,EAEH,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAChD,IAAI,EAAE,uBAAuB,IAC5B,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CACrB,oBAAC,eAAe,IAAC,IAAI,EAAE,EAAE,GAAI,CAC9B,CAAC,CAAC,CAAC,CACF,oBAAC,cAAc,IACb,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,EAChC,IAAI,EAAE,aAAa,EACnB,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAChC,UAAU,EAAE,oBAAC,eAAe,IAAC,IAAI,EAAE,EAAE,GAAI,EACzC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAChC,UAAU,EACR,2BAAG,KAAK,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAC;oBAC7B;wBACE,oBAAC,gBAAgB,IAAC,EAAE,EAAC,gCAAgC,EAAC,cAAc,EAAC,gCAAgC,GAAG,CACtG,CACF;gBAEN,oBAAC,IAAI,QACF,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACxB,oBAAC,QAAQ,IAAC,GAAG,EAAE,CAAC,CAAC,EAAE;oBACjB,oBAAC,IAAI,kBACH,SAAS,EAAE,CAAC,EACZ,IAAI,EAAE,CAAC,IACH,SAAS,IACb,SAAS,EAAE,OAAO,CAAC,YAAY,IAC3B,CAAC,aAAa;wBAChB,CAAC,CAAC,EAAC,4BAA4B,EAAE,EAAC,QAAQ,EAAE,kBAAkB,EAAC,EAAC;wBAChE,CAAC,CAAC,EAAC,4BAA4B,EAAE,EAAC,wBAAwB,EAAE,kBAAkB,EAAC,EAAC,CAAC,EACnF,CACO,CACZ,CAAC,CACG,CACQ,CAClB,CACU,CACd,CACc,CAClB,CACW,CACf,CAAC;IAEF;;OAEG;IACH,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;QAC5B,OAAO,oBAAC,iBAAiB,OAAG,CAAC;KAC9B;IACD;;OAEG;IACH,IAAI,CAAC,mBAAmB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;QAC/C,OAAO,oBAAC,iBAAiB,OAAG,CAAC;KAC9B;IACD;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,oBAAC,iBAAiB,OAAG,CAAC;KAC9B;IACD;;OAEG;IACH,OAAO,oBAAC,IAAI,IAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAG,CAAC,CAAQ,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @hidden
3
+ * We have complex state logic that involves multiple sub-values,
4
+ * so useReducer is preferable to useState.
5
+ * Define all possible auth action types label
6
+ * Use this to export actions and dispatch an action
7
+ */
8
+ export declare const actionToolsTypes: {
9
+ LOADING_NEXT: string;
10
+ LOADING_PREVIOUS: string;
11
+ LOAD_NEXT_SUCCESS: string;
12
+ LOAD_PREVIOUS_SUCCESS: string;
13
+ LOAD_NEXT_FAILURE: string;
14
+ LOAD_PREVIOUS_FAILURE: string;
15
+ SET_RESULTS: string;
16
+ SET_VISIBLE_ITEMS: string;
17
+ };
18
+ /**
19
+ * Manage tools state reducer
20
+ * @param state
21
+ * @param action
22
+ */
23
+ export declare function dataToolsReducer(state: any, action: any): any;
24
+ /**
25
+ * Define initial tools state
26
+ * @param data
27
+ */
28
+ export declare function stateToolsInitializer(data: any): any;
29
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/utils/tools.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;CAS5B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,OAgD7C;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,KAAA,OAgBzC"}
@@ -0,0 +1,76 @@
1
+ import { CacheStrategies, LRUCache } from '@selfcommunity/utils';
2
+ /**
3
+ * @hidden
4
+ * We have complex state logic that involves multiple sub-values,
5
+ * so useReducer is preferable to useState.
6
+ * Define all possible auth action types label
7
+ * Use this to export actions and dispatch an action
8
+ */
9
+ export const actionToolsTypes = {
10
+ LOADING_NEXT: '_loading_next',
11
+ LOADING_PREVIOUS: '_loading_previous',
12
+ LOAD_NEXT_SUCCESS: '_load_next_success',
13
+ LOAD_PREVIOUS_SUCCESS: '_load_previous_success',
14
+ LOAD_NEXT_FAILURE: '_load_next_failure',
15
+ LOAD_PREVIOUS_FAILURE: '_load_previous_failure',
16
+ SET_RESULTS: '_set_results',
17
+ SET_VISIBLE_ITEMS: '_set_visible_items'
18
+ };
19
+ /**
20
+ * Manage tools state reducer
21
+ * @param state
22
+ * @param action
23
+ */
24
+ export function dataToolsReducer(state, action) {
25
+ let _state = Object.assign({}, state);
26
+ switch (action.type) {
27
+ case actionToolsTypes.LOADING_NEXT:
28
+ _state = Object.assign(Object.assign({}, state), { isLoadingNext: true, errorLoadNext: null });
29
+ break;
30
+ case actionToolsTypes.LOADING_PREVIOUS:
31
+ _state = Object.assign(Object.assign({}, state), { isLoadingPrevious: true, errorLoadPrevious: null });
32
+ break;
33
+ case actionToolsTypes.LOAD_NEXT_SUCCESS:
34
+ _state = Object.assign(Object.assign({}, state), { isLoadingNext: false, count: action.payload.count, next: action.payload.next ? action.payload.next : null, results: [...state.results, ...action.payload.results], errorLoadNext: null });
35
+ break;
36
+ case actionToolsTypes.LOAD_PREVIOUS_SUCCESS:
37
+ _state = Object.assign(Object.assign({}, state), { isLoadingPrevious: false, count: action.payload.count, previous: action.payload.previous ? action.payload.previous : null, results: [...action.payload.results, ...state.results], errorPreviousNext: null });
38
+ break;
39
+ case actionToolsTypes.SET_RESULTS:
40
+ _state = Object.assign(Object.assign(Object.assign({}, state), { results: [...action.payload.results] }), (action.payload.count ? { count: action.payload.count } : {}));
41
+ break;
42
+ case actionToolsTypes.SET_VISIBLE_ITEMS:
43
+ _state = Object.assign(Object.assign({}, state), { visibleItems: action.payload.visibleItems });
44
+ break;
45
+ case actionToolsTypes.LOAD_NEXT_FAILURE:
46
+ _state = Object.assign(Object.assign({}, state), { isLoadingNext: false, errorLoadNext: action.payload.error });
47
+ break;
48
+ case actionToolsTypes.LOAD_PREVIOUS_FAILURE:
49
+ _state = Object.assign(Object.assign({}, state), { isLoadingNext: false, errorLoadPrevious: action.payload.error });
50
+ break;
51
+ }
52
+ LRUCache.set(_state.cacheKey, _state);
53
+ return _state;
54
+ }
55
+ /**
56
+ * Define initial tools state
57
+ * @param data
58
+ */
59
+ export function stateToolsInitializer(data) {
60
+ let _initState = {
61
+ cacheKey: data.cacheKey ? data.cacheKey : null,
62
+ count: data.count ? data.count : 0,
63
+ results: data.results ? data.results : [],
64
+ next: data.next ? data.next : null,
65
+ previous: data.previous ? data.previous : null,
66
+ isLoadingNext: data.isLoadingNext ? data.isLoadingNext : false,
67
+ isLoadingPrevious: data.isLoadingPrevious ? data.isLoadingPrevious : false,
68
+ visibleItems: data.visibleItems ? data.visibleItems : null
69
+ };
70
+ if (_initState.cacheKey && LRUCache.hasKey(_initState.cacheKey) && data.cacheStrategy !== CacheStrategies.NETWORK_ONLY) {
71
+ const _cachedStateData = LRUCache.get(_initState.cacheKey);
72
+ return Object.assign(Object.assign({}, _initState), _cachedStateData);
73
+ }
74
+ return _initState;
75
+ }
76
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/utils/tools.ts"],"names":[],"mappings":"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"}