@selfcommunity/react-core 0.1.21-alpha.1 → 0.1.22-alpha.1
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.
- package/lib/cjs/hooks/useSCFetchFeed.d.ts.map +1 -1
- package/lib/cjs/hooks/useSCFetchFeed.js +18 -13
- package/lib/cjs/hooks/useSCFetchFeed.js.map +1 -1
- package/lib/esm/hooks/useSCFetchFeed.d.ts.map +1 -1
- package/lib/esm/hooks/useSCFetchFeed.js +19 -14
- package/lib/esm/hooks/useSCFetchFeed.js.map +1 -1
- package/lib/umd/react-core.js +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchFeed.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAIvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;CAS/B,CAAC;
|
|
1
|
+
{"version":3,"file":"useSCFetchFeed.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAIvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;CAS/B,CAAC;AAyGF;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,YAAY,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtD,UAAU,CAAC,EAAE,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IAChD,cAAc,CAAC,EAAE,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IACpD,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,OA0LA"}
|
|
@@ -56,9 +56,7 @@ function feedDataReducer(state, action) {
|
|
|
56
56
|
_state = Object.assign(Object.assign({}, state), { componentLoaded: false, reload: false });
|
|
57
57
|
break;
|
|
58
58
|
case exports.feedDataActionTypes.UPDATE_DATA:
|
|
59
|
-
_state = {
|
|
60
|
-
feedData: action.payload.data,
|
|
61
|
-
};
|
|
59
|
+
_state = Object.assign(Object.assign({}, state), action.payload);
|
|
62
60
|
break;
|
|
63
61
|
}
|
|
64
62
|
utils_1.LRUCache.set((0, Cache_1.getStateFeedCacheKey)(state.id), _state);
|
|
@@ -122,10 +120,10 @@ function useSCFetchFeed(props) {
|
|
|
122
120
|
return params.offset ? parseInt(params.offset) : 0;
|
|
123
121
|
};
|
|
124
122
|
/**
|
|
125
|
-
*
|
|
123
|
+
* Feed revalidation
|
|
126
124
|
*/
|
|
127
125
|
const revalidate = (url, forward) => {
|
|
128
|
-
return
|
|
126
|
+
return performFetchData(url, false).then((res) => {
|
|
129
127
|
let feedData;
|
|
130
128
|
if (forward) {
|
|
131
129
|
let start = state.feedData.slice(0, state.feedData.length - res.results.length);
|
|
@@ -142,9 +140,9 @@ function useSCFetchFeed(props) {
|
|
|
142
140
|
});
|
|
143
141
|
};
|
|
144
142
|
/**
|
|
145
|
-
* Get
|
|
143
|
+
* Get Feed data
|
|
146
144
|
*/
|
|
147
|
-
const
|
|
145
|
+
const performFetchData = (url, seekCache = true) => {
|
|
148
146
|
const __feedDataCacheKey = (0, Cache_1.getFeedCacheKey)(id, state.next);
|
|
149
147
|
if (seekCache && utils_1.LRUCache.hasKey(__feedDataCacheKey) && cacheStrategy !== utils_1.CacheStrategies.NETWORK_ONLY) {
|
|
150
148
|
return Promise.resolve(utils_1.LRUCache.get(__feedDataCacheKey));
|
|
@@ -152,7 +150,7 @@ function useSCFetchFeed(props) {
|
|
|
152
150
|
return api_services_1.http
|
|
153
151
|
.request({
|
|
154
152
|
url,
|
|
155
|
-
method:
|
|
153
|
+
method: endpoint.method,
|
|
156
154
|
})
|
|
157
155
|
.then((res) => {
|
|
158
156
|
if (res.status >= 300) {
|
|
@@ -168,7 +166,7 @@ function useSCFetchFeed(props) {
|
|
|
168
166
|
function getPreviousPage() {
|
|
169
167
|
if (endpoint && state.previous && !state.isLoadingPrevious) {
|
|
170
168
|
dispatch({ type: exports.feedDataActionTypes.LOADING_PREVIOUS });
|
|
171
|
-
|
|
169
|
+
performFetchData(state.previous)
|
|
172
170
|
.then((res) => {
|
|
173
171
|
let currentOffset = Math.max(getCurrentOffset(res.previous), 0);
|
|
174
172
|
let currentPage = Math.ceil(currentOffset / queryParams.limit + 1);
|
|
@@ -198,7 +196,7 @@ function useSCFetchFeed(props) {
|
|
|
198
196
|
function getNextPage() {
|
|
199
197
|
if (endpoint && state.next && !state.isLoadingNext) {
|
|
200
198
|
dispatch({ type: exports.feedDataActionTypes.LOADING_NEXT });
|
|
201
|
-
|
|
199
|
+
performFetchData(state.next)
|
|
202
200
|
.then((res) => {
|
|
203
201
|
let currentOffset = Math.max(getCurrentOffset(res.next) - queryParams.limit, 0);
|
|
204
202
|
let currentPage = Math.ceil(currentOffset / queryParams.limit + 1);
|
|
@@ -239,10 +237,17 @@ function useSCFetchFeed(props) {
|
|
|
239
237
|
getNextPage();
|
|
240
238
|
}
|
|
241
239
|
}, [state.reload]);
|
|
242
|
-
|
|
243
|
-
|
|
240
|
+
/**
|
|
241
|
+
* Update component state
|
|
242
|
+
* Re-sync next/previous url
|
|
243
|
+
* When an element is added in the head of a rendered list, fix the next/previous url
|
|
244
|
+
* to avoid importing posts already in the list
|
|
245
|
+
* @param payload
|
|
246
|
+
*/
|
|
247
|
+
function updateState(payload) {
|
|
248
|
+
dispatch({ type: exports.feedDataActionTypes.UPDATE_DATA, payload: payload });
|
|
244
249
|
}
|
|
245
|
-
return Object.assign(Object.assign({}, state), {
|
|
250
|
+
return Object.assign(Object.assign({}, state), { updateState,
|
|
246
251
|
queryParams,
|
|
247
252
|
getNextPage,
|
|
248
253
|
getPreviousPage,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchFeed.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":";;;AAAA,iCAAqD;AACrD,gDAAkD;AAElD,8DAAwF;AACxF,gDAAuE;AACvE,
|
|
1
|
+
{"version":3,"file":"useSCFetchFeed.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchFeed.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAIvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;CAS/B,CAAC;
|
|
1
|
+
{"version":3,"file":"useSCFetchFeed.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAY,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAC,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AAIvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;CAS/B,CAAC;AAyGF;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,YAAY,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtD,UAAU,CAAC,EAAE,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IAChD,cAAc,CAAC,EAAE,CAAC,IAAI,KAAA,EAAE,MAAM,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IACpD,aAAa,CAAC,EAAE,eAAe,CAAC;CACjC,OA0LA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useEffect, useMemo, useReducer } from 'react';
|
|
2
2
|
import { SCOPE_SC_CORE } from '../constants/Errors';
|
|
3
|
-
import {
|
|
3
|
+
import { http } from '@selfcommunity/api-services';
|
|
4
4
|
import { CacheStrategies, Logger, LRUCache } from '@selfcommunity/utils';
|
|
5
5
|
import { getFeedCacheKey, getStateFeedCacheKey } from '../constants/Cache';
|
|
6
6
|
import { appendURLSearchParams } from '@selfcommunity/utils';
|
|
@@ -53,9 +53,7 @@ function feedDataReducer(state, action) {
|
|
|
53
53
|
_state = Object.assign(Object.assign({}, state), { componentLoaded: false, reload: false });
|
|
54
54
|
break;
|
|
55
55
|
case feedDataActionTypes.UPDATE_DATA:
|
|
56
|
-
_state = {
|
|
57
|
-
feedData: action.payload.data,
|
|
58
|
-
};
|
|
56
|
+
_state = Object.assign(Object.assign({}, state), action.payload);
|
|
59
57
|
break;
|
|
60
58
|
}
|
|
61
59
|
LRUCache.set(getStateFeedCacheKey(state.id), _state);
|
|
@@ -119,10 +117,10 @@ export default function useSCFetchFeed(props) {
|
|
|
119
117
|
return params.offset ? parseInt(params.offset) : 0;
|
|
120
118
|
};
|
|
121
119
|
/**
|
|
122
|
-
*
|
|
120
|
+
* Feed revalidation
|
|
123
121
|
*/
|
|
124
122
|
const revalidate = (url, forward) => {
|
|
125
|
-
return
|
|
123
|
+
return performFetchData(url, false).then((res) => {
|
|
126
124
|
let feedData;
|
|
127
125
|
if (forward) {
|
|
128
126
|
let start = state.feedData.slice(0, state.feedData.length - res.results.length);
|
|
@@ -139,9 +137,9 @@ export default function useSCFetchFeed(props) {
|
|
|
139
137
|
});
|
|
140
138
|
};
|
|
141
139
|
/**
|
|
142
|
-
* Get
|
|
140
|
+
* Get Feed data
|
|
143
141
|
*/
|
|
144
|
-
const
|
|
142
|
+
const performFetchData = (url, seekCache = true) => {
|
|
145
143
|
const __feedDataCacheKey = getFeedCacheKey(id, state.next);
|
|
146
144
|
if (seekCache && LRUCache.hasKey(__feedDataCacheKey) && cacheStrategy !== CacheStrategies.NETWORK_ONLY) {
|
|
147
145
|
return Promise.resolve(LRUCache.get(__feedDataCacheKey));
|
|
@@ -149,7 +147,7 @@ export default function useSCFetchFeed(props) {
|
|
|
149
147
|
return http
|
|
150
148
|
.request({
|
|
151
149
|
url,
|
|
152
|
-
method:
|
|
150
|
+
method: endpoint.method,
|
|
153
151
|
})
|
|
154
152
|
.then((res) => {
|
|
155
153
|
if (res.status >= 300) {
|
|
@@ -165,7 +163,7 @@ export default function useSCFetchFeed(props) {
|
|
|
165
163
|
function getPreviousPage() {
|
|
166
164
|
if (endpoint && state.previous && !state.isLoadingPrevious) {
|
|
167
165
|
dispatch({ type: feedDataActionTypes.LOADING_PREVIOUS });
|
|
168
|
-
|
|
166
|
+
performFetchData(state.previous)
|
|
169
167
|
.then((res) => {
|
|
170
168
|
let currentOffset = Math.max(getCurrentOffset(res.previous), 0);
|
|
171
169
|
let currentPage = Math.ceil(currentOffset / queryParams.limit + 1);
|
|
@@ -195,7 +193,7 @@ export default function useSCFetchFeed(props) {
|
|
|
195
193
|
function getNextPage() {
|
|
196
194
|
if (endpoint && state.next && !state.isLoadingNext) {
|
|
197
195
|
dispatch({ type: feedDataActionTypes.LOADING_NEXT });
|
|
198
|
-
|
|
196
|
+
performFetchData(state.next)
|
|
199
197
|
.then((res) => {
|
|
200
198
|
let currentOffset = Math.max(getCurrentOffset(res.next) - queryParams.limit, 0);
|
|
201
199
|
let currentPage = Math.ceil(currentOffset / queryParams.limit + 1);
|
|
@@ -236,10 +234,17 @@ export default function useSCFetchFeed(props) {
|
|
|
236
234
|
getNextPage();
|
|
237
235
|
}
|
|
238
236
|
}, [state.reload]);
|
|
239
|
-
|
|
240
|
-
|
|
237
|
+
/**
|
|
238
|
+
* Update component state
|
|
239
|
+
* Re-sync next/previous url
|
|
240
|
+
* When an element is added in the head of a rendered list, fix the next/previous url
|
|
241
|
+
* to avoid importing posts already in the list
|
|
242
|
+
* @param payload
|
|
243
|
+
*/
|
|
244
|
+
function updateState(payload) {
|
|
245
|
+
dispatch({ type: feedDataActionTypes.UPDATE_DATA, payload: payload });
|
|
241
246
|
}
|
|
242
|
-
return Object.assign(Object.assign({}, state), {
|
|
247
|
+
return Object.assign(Object.assign({}, state), { updateState,
|
|
243
248
|
queryParams,
|
|
244
249
|
getNextPage,
|
|
245
250
|
getPreviousPage,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchFeed.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAC,MAAM,OAAO,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAElD,OAAO,
|
|
1
|
+
{"version":3,"file":"useSCFetchFeed.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchFeed.ts"],"names":[],"mappings":"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"}
|