@data-client/core 0.14.10 → 0.14.16
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/README.md +7 -1
- package/data_client_logo_and_text.svg +9 -8
- package/dist/index.js +62 -40
- package/dist/index.umd.min.js +1 -1
- package/legacy/actionTypes.js +23 -12
- package/legacy/actions.js +1 -1
- package/legacy/controller/actions/createExpireAll.js +3 -3
- package/legacy/controller/actions/createFetch.js +3 -3
- package/legacy/controller/actions/createInvalidate.js +3 -3
- package/legacy/controller/actions/createInvalidateAll.js +3 -3
- package/legacy/controller/actions/createOptimistic.js +3 -3
- package/legacy/controller/actions/createReset.js +3 -3
- package/legacy/controller/actions/createSet.js +3 -3
- package/legacy/controller/actions/createSetResponse.js +3 -3
- package/legacy/controller/actions/createSubscription.js +4 -4
- package/legacy/index.js +2 -1
- package/legacy/manager/LogoutManager.js +3 -3
- package/legacy/manager/NetworkManager.js +6 -6
- package/legacy/manager/SubscriptionManager.js +4 -4
- package/legacy/state/reducer/createReducer.js +11 -11
- package/legacy/state/reducer/invalidateReducer.js +3 -3
- package/legacy/state/reducer/setResponseReducer.js +4 -4
- package/lib/actionTypes.d.ts +11 -0
- package/lib/actionTypes.d.ts.map +1 -1
- package/lib/actionTypes.js +23 -12
- package/lib/actions.d.ts +13 -12
- package/lib/actions.d.ts.map +1 -1
- package/lib/actions.js +1 -1
- package/lib/controller/Controller.d.ts +2 -2
- package/lib/controller/Controller.d.ts.map +1 -1
- package/lib/controller/actions/createExpireAll.js +3 -3
- package/lib/controller/actions/createFetch.js +3 -3
- package/lib/controller/actions/createInvalidate.js +3 -3
- package/lib/controller/actions/createInvalidateAll.js +3 -3
- package/lib/controller/actions/createOptimistic.js +3 -3
- package/lib/controller/actions/createReset.js +3 -3
- package/lib/controller/actions/createSet.js +3 -3
- package/lib/controller/actions/createSetResponse.js +3 -3
- package/lib/controller/actions/createSubscription.js +4 -4
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/manager/LogoutManager.js +3 -3
- package/lib/manager/NetworkManager.js +6 -6
- package/lib/manager/SubscriptionManager.js +4 -4
- package/lib/state/reducer/createReducer.js +11 -11
- package/lib/state/reducer/invalidateReducer.js +3 -3
- package/lib/state/reducer/setResponseReducer.js +4 -4
- package/package.json +2 -2
- package/src/actionTypes.ts +23 -11
- package/src/actions.ts +23 -22
- package/src/controller/actions/createExpireAll.ts +2 -2
- package/src/controller/actions/createFetch.ts +2 -2
- package/src/controller/actions/createInvalidate.ts +2 -2
- package/src/controller/actions/createInvalidateAll.ts +2 -2
- package/src/controller/actions/createOptimistic.ts +2 -2
- package/src/controller/actions/createReset.ts +2 -2
- package/src/controller/actions/createSet.ts +2 -2
- package/src/controller/actions/createSetResponse.ts +2 -2
- package/src/controller/actions/createSubscription.ts +3 -3
- package/src/index.ts +1 -0
- package/src/manager/LogoutManager.ts +2 -2
- package/src/manager/NetworkManager.ts +5 -5
- package/src/manager/SubscriptionManager.ts +3 -3
- package/src/manager/__tests__/logoutManager.ts +3 -3
- package/src/manager/__tests__/networkManager.ts +6 -6
- package/src/manager/__tests__/subscriptionManager.ts +4 -4
- package/src/state/__tests__/reducer.ts +22 -22
- package/src/state/reducer/createReducer.ts +18 -18
- package/src/state/reducer/invalidateReducer.ts +2 -2
- package/src/state/reducer/setResponseReducer.ts +3 -3
- package/ts3.4/actionTypes.d.ts +11 -0
- package/ts3.4/actions.d.ts +13 -12
- package/ts3.4/controller/Controller.d.ts +2 -2
- package/ts3.4/index.d.ts +1 -0
package/README.md
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
<h1>
|
|
2
|
+
<div align="center">
|
|
3
|
+
<a href="https://dataclient.io" target="_blank" rel="noopener">
|
|
4
|
+
<img alt="Reactive Data Client" src="./data_client_logo_and_text.svg?sanitize=true">
|
|
5
|
+
</a>
|
|
6
|
+
</div>
|
|
7
|
+
</h1>
|
|
2
8
|
|
|
3
9
|
[](https://circleci.com/gh/reactive/data-client)
|
|
4
10
|
[](https://app.codecov.io/gh/reactive/data-client?branch=master)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
|
2
2
|
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
3
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
-
viewBox="
|
|
4
|
+
viewBox="69 220 1136 205" height="100" xml:space="preserve">
|
|
5
5
|
<style type="text/css">
|
|
6
|
-
.st0{fill
|
|
6
|
+
.st0{fill:current;}
|
|
7
|
+
.st1{fill:#3E96DB;}
|
|
7
8
|
</style>
|
|
8
9
|
<g>
|
|
9
10
|
<g>
|
|
@@ -46,18 +47,18 @@
|
|
|
46
47
|
</g>
|
|
47
48
|
</g>
|
|
48
49
|
<g>
|
|
49
|
-
<path class="
|
|
50
|
+
<path class="st1" d="M275.11,347.41c-21.84,54.68-67.33,87.9-101.61,74.21c-1.86-0.74-3.65-1.61-5.36-2.59
|
|
50
51
|
c31.37,7.82,68.88-18.56,86.22-61.96c18.43-46.13,7.09-94.02-25.32-106.97c-19.2-7.67-41.49-1.36-60.3,14.65
|
|
51
52
|
c23.82-34.07,57.23-51.76,83.86-41.13C286.87,237.31,296.95,292.74,275.11,347.41z"/>
|
|
52
|
-
<path class="
|
|
53
|
+
<path class="st1" d="M215.54,391.87c-67.76-21.72-114.76-64.06-104.98-94.57c0.53-1.66,1.22-3.24,2.06-4.76
|
|
53
54
|
c-3.46,28.09,34.11,62.97,87.9,80.22c57.17,18.33,111.01,9.8,120.25-19.05c5.48-17.09-5.92-37.48-28-55.07
|
|
54
55
|
c44.07,22.77,70.76,53.62,63.16,77.33C346.16,406.48,283.3,413.6,215.54,391.87z"/>
|
|
55
|
-
<path class="
|
|
56
|
+
<path class="st1" d="M161.63,326.13c37.03-27.02,76.92-35.4,89.08-18.72c0.66,0.91,1.22,1.86,1.7,2.88
|
|
56
57
|
c-13.31-12.47-45.72-6.16-75.13,15.29c-31.25,22.79-47.25,54.05-35.75,69.82c6.81,9.34,21.75,11.15,39.29,6.34
|
|
57
58
|
c-28.58,14.29-54.78,16.46-64.23,3.51C104.44,388.57,124.6,353.15,161.63,326.13z"/>
|
|
58
|
-
<circle class="
|
|
59
|
-
<circle class="
|
|
60
|
-
<circle class="
|
|
59
|
+
<circle class="st1" cx="212.69" cy="340.87" r="11.83"/>
|
|
60
|
+
<circle class="st1" cx="143.77" cy="298.83" r="11.83"/>
|
|
61
|
+
<circle class="st1" cx="318.02" cy="274.77" r="11.83"/>
|
|
61
62
|
</g>
|
|
62
63
|
</g>
|
|
63
64
|
</svg>
|
package/dist/index.js
CHANGED
|
@@ -32,20 +32,42 @@ function createMeta(expiryLength, fetchedAt) {
|
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
-
const
|
|
36
|
-
const
|
|
37
|
-
const
|
|
38
|
-
const
|
|
39
|
-
const
|
|
40
|
-
const
|
|
41
|
-
const
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
const
|
|
45
|
-
const
|
|
35
|
+
const FETCH = 'rdc/fetch';
|
|
36
|
+
const SET = 'rdc/set';
|
|
37
|
+
const SET_RESPONSE = 'rdc/setresponse';
|
|
38
|
+
const OPTIMISTIC = 'rdc/optimistic';
|
|
39
|
+
const RESET = 'rdc/reset';
|
|
40
|
+
const SUBSCRIBE = 'rdc/subscribe';
|
|
41
|
+
const UNSUBSCRIBE = 'rdc/unsubscribe';
|
|
42
|
+
const INVALIDATE = 'rdc/invalidate';
|
|
43
|
+
const INVALIDATEALL = 'rdc/invalidateall';
|
|
44
|
+
const EXPIREALL = 'rdc/expireall';
|
|
45
|
+
const GC = 'rdc/gc';
|
|
46
|
+
const FETCH_TYPE = FETCH;
|
|
47
|
+
const SET_TYPE = SET;
|
|
48
|
+
const SET_RESPONSE_TYPE = SET_RESPONSE;
|
|
49
|
+
const OPTIMISTIC_TYPE = OPTIMISTIC;
|
|
50
|
+
const RESET_TYPE = RESET;
|
|
51
|
+
const SUBSCRIBE_TYPE = SUBSCRIBE;
|
|
52
|
+
const UNSUBSCRIBE_TYPE = UNSUBSCRIBE;
|
|
53
|
+
const INVALIDATE_TYPE = INVALIDATE;
|
|
54
|
+
const INVALIDATEALL_TYPE = INVALIDATEALL;
|
|
55
|
+
const EXPIREALL_TYPE = EXPIREALL;
|
|
56
|
+
const GC_TYPE = GC;
|
|
46
57
|
|
|
47
58
|
var actionTypes = /*#__PURE__*/Object.freeze({
|
|
48
59
|
__proto__: null,
|
|
60
|
+
FETCH: FETCH,
|
|
61
|
+
SET: SET,
|
|
62
|
+
SET_RESPONSE: SET_RESPONSE,
|
|
63
|
+
OPTIMISTIC: OPTIMISTIC,
|
|
64
|
+
RESET: RESET,
|
|
65
|
+
SUBSCRIBE: SUBSCRIBE,
|
|
66
|
+
UNSUBSCRIBE: UNSUBSCRIBE,
|
|
67
|
+
INVALIDATE: INVALIDATE,
|
|
68
|
+
INVALIDATEALL: INVALIDATEALL,
|
|
69
|
+
EXPIREALL: EXPIREALL,
|
|
70
|
+
GC: GC,
|
|
49
71
|
FETCH_TYPE: FETCH_TYPE,
|
|
50
72
|
SET_TYPE: SET_TYPE,
|
|
51
73
|
SET_RESPONSE_TYPE: SET_RESPONSE_TYPE,
|
|
@@ -66,7 +88,7 @@ function createOptimistic(endpoint, args, fetchedAt) {
|
|
|
66
88
|
throw new Error('Negative expiry length are not allowed.');
|
|
67
89
|
}
|
|
68
90
|
return {
|
|
69
|
-
type:
|
|
91
|
+
type: OPTIMISTIC,
|
|
70
92
|
key: endpoint.key(...args),
|
|
71
93
|
args,
|
|
72
94
|
endpoint,
|
|
@@ -102,7 +124,7 @@ function invalidateReducer(state, action) {
|
|
|
102
124
|
delete itemMeta.error;
|
|
103
125
|
meta[key] = itemMeta;
|
|
104
126
|
};
|
|
105
|
-
if (action.type ===
|
|
127
|
+
if (action.type === INVALIDATE) {
|
|
106
128
|
invalidateKey(action.key);
|
|
107
129
|
} else {
|
|
108
130
|
Object.keys(endpoints).forEach(key => {
|
|
@@ -163,7 +185,7 @@ function setResponseReducer(state, action, controller) {
|
|
|
163
185
|
var _state$meta$action$ke;
|
|
164
186
|
let response;
|
|
165
187
|
// for true set's response is contained in action
|
|
166
|
-
if (action.type ===
|
|
188
|
+
if (action.type === OPTIMISTIC) {
|
|
167
189
|
// this should never happen
|
|
168
190
|
/* istanbul ignore if */
|
|
169
191
|
if (!action.endpoint.getOptimisticResponse) return state;
|
|
@@ -261,14 +283,14 @@ function reduceError(state, action, error) {
|
|
|
261
283
|
}
|
|
262
284
|
/** Filter all requests with same serialization that did not start after the resolving request */
|
|
263
285
|
function filterOptimistic(state, resolvingAction) {
|
|
264
|
-
return state.optimistic.filter(optimisticAction => optimisticAction.key !== resolvingAction.key || (optimisticAction.type ===
|
|
286
|
+
return state.optimistic.filter(optimisticAction => optimisticAction.key !== resolvingAction.key || (optimisticAction.type === OPTIMISTIC ? optimisticAction.meta.fetchedAt !== resolvingAction.meta.fetchedAt : optimisticAction.meta.date > resolvingAction.meta.date));
|
|
265
287
|
}
|
|
266
288
|
|
|
267
289
|
function createReducer(controller) {
|
|
268
290
|
return function reducer(state, action) {
|
|
269
291
|
if (!state) state = initialState;
|
|
270
292
|
switch (action.type) {
|
|
271
|
-
case
|
|
293
|
+
case GC:
|
|
272
294
|
// inline deletes are fine as these should have 0 refcounts
|
|
273
295
|
action.entities.forEach(([key, pk]) => {
|
|
274
296
|
var _entities$key, _entityMeta$key;
|
|
@@ -280,20 +302,20 @@ function createReducer(controller) {
|
|
|
280
302
|
delete state.meta[fetchKey];
|
|
281
303
|
});
|
|
282
304
|
return state;
|
|
283
|
-
case
|
|
305
|
+
case FETCH:
|
|
284
306
|
return fetchReducer(state, action);
|
|
285
|
-
case
|
|
307
|
+
case OPTIMISTIC:
|
|
286
308
|
// eslint-disable-next-line no-fallthrough
|
|
287
|
-
case
|
|
309
|
+
case SET_RESPONSE:
|
|
288
310
|
return setResponseReducer(state, action, controller);
|
|
289
|
-
case
|
|
311
|
+
case SET:
|
|
290
312
|
return setReducer(state, action, controller);
|
|
291
|
-
case
|
|
292
|
-
case
|
|
313
|
+
case INVALIDATEALL:
|
|
314
|
+
case INVALIDATE:
|
|
293
315
|
return invalidateReducer(state, action);
|
|
294
|
-
case
|
|
316
|
+
case EXPIREALL:
|
|
295
317
|
return expireReducer(state, action);
|
|
296
|
-
case
|
|
318
|
+
case RESET:
|
|
297
319
|
return {
|
|
298
320
|
...initialState,
|
|
299
321
|
lastReset: action.date
|
|
@@ -326,7 +348,7 @@ function createSubscription(endpoint, {
|
|
|
326
348
|
args
|
|
327
349
|
}) {
|
|
328
350
|
return {
|
|
329
|
-
type:
|
|
351
|
+
type: SUBSCRIBE,
|
|
330
352
|
endpoint,
|
|
331
353
|
args,
|
|
332
354
|
key: endpoint.key(...args)
|
|
@@ -336,7 +358,7 @@ function createUnsubscription(endpoint, {
|
|
|
336
358
|
args
|
|
337
359
|
}) {
|
|
338
360
|
return {
|
|
339
|
-
type:
|
|
361
|
+
type: UNSUBSCRIBE,
|
|
340
362
|
key: endpoint.key(...args),
|
|
341
363
|
args,
|
|
342
364
|
endpoint
|
|
@@ -362,7 +384,7 @@ function createSetResponse(endpoint, {
|
|
|
362
384
|
throw new Error('Negative expiry length are not allowed.');
|
|
363
385
|
}
|
|
364
386
|
return {
|
|
365
|
-
type:
|
|
387
|
+
type: SET_RESPONSE,
|
|
366
388
|
key: endpoint.key(...args),
|
|
367
389
|
response,
|
|
368
390
|
args: args.map(ensurePojo$1),
|
|
@@ -378,7 +400,7 @@ function createSet(schema, {
|
|
|
378
400
|
value
|
|
379
401
|
}) {
|
|
380
402
|
return {
|
|
381
|
-
type:
|
|
403
|
+
type: SET,
|
|
382
404
|
value,
|
|
383
405
|
args: args.map(ensurePojo$1),
|
|
384
406
|
schema,
|
|
@@ -388,14 +410,14 @@ function createSet(schema, {
|
|
|
388
410
|
|
|
389
411
|
function createReset() {
|
|
390
412
|
return {
|
|
391
|
-
type:
|
|
413
|
+
type: RESET,
|
|
392
414
|
date: Date.now()
|
|
393
415
|
};
|
|
394
416
|
}
|
|
395
417
|
|
|
396
418
|
function createInvalidateAll(testKey) {
|
|
397
419
|
return {
|
|
398
|
-
type:
|
|
420
|
+
type: INVALIDATEALL,
|
|
399
421
|
testKey
|
|
400
422
|
};
|
|
401
423
|
}
|
|
@@ -404,7 +426,7 @@ function createInvalidate(endpoint, {
|
|
|
404
426
|
args
|
|
405
427
|
}) {
|
|
406
428
|
return {
|
|
407
|
-
type:
|
|
429
|
+
type: INVALIDATE,
|
|
408
430
|
key: endpoint.key(...args)
|
|
409
431
|
};
|
|
410
432
|
}
|
|
@@ -427,7 +449,7 @@ function createFetch(endpoint, {
|
|
|
427
449
|
promise
|
|
428
450
|
};
|
|
429
451
|
return {
|
|
430
|
-
type:
|
|
452
|
+
type: FETCH,
|
|
431
453
|
key: endpoint.key(...args),
|
|
432
454
|
args,
|
|
433
455
|
endpoint,
|
|
@@ -437,7 +459,7 @@ function createFetch(endpoint, {
|
|
|
437
459
|
|
|
438
460
|
function createExpireAll(testKey) {
|
|
439
461
|
return {
|
|
440
|
-
type:
|
|
462
|
+
type: EXPIREALL,
|
|
441
463
|
testKey
|
|
442
464
|
};
|
|
443
465
|
}
|
|
@@ -822,7 +844,7 @@ class NetworkManager {
|
|
|
822
844
|
this.controller = controller;
|
|
823
845
|
return next => action => {
|
|
824
846
|
switch (action.type) {
|
|
825
|
-
case
|
|
847
|
+
case FETCH:
|
|
826
848
|
this.handleFetch(action);
|
|
827
849
|
// This is the only case that causes any state change
|
|
828
850
|
// It's important to intercept other fetches as we don't want to trigger reducers during
|
|
@@ -831,7 +853,7 @@ class NetworkManager {
|
|
|
831
853
|
return next(action);
|
|
832
854
|
}
|
|
833
855
|
return Promise.resolve();
|
|
834
|
-
case
|
|
856
|
+
case SET_RESPONSE:
|
|
835
857
|
// only set after new state is computed
|
|
836
858
|
return next(action).then(() => {
|
|
837
859
|
if (action.key in this.fetched) {
|
|
@@ -851,7 +873,7 @@ class NetworkManager {
|
|
|
851
873
|
}
|
|
852
874
|
}
|
|
853
875
|
});
|
|
854
|
-
case
|
|
876
|
+
case RESET:
|
|
855
877
|
{
|
|
856
878
|
const rejectors = {
|
|
857
879
|
...this.rejectors
|
|
@@ -888,7 +910,7 @@ class NetworkManager {
|
|
|
888
910
|
/** Used by DevtoolsManager to determine whether to log an action */
|
|
889
911
|
skipLogging(action) {
|
|
890
912
|
/* istanbul ignore next */
|
|
891
|
-
return action.type ===
|
|
913
|
+
return action.type === FETCH && action.key in this.fetched;
|
|
892
914
|
}
|
|
893
915
|
allSettled() {
|
|
894
916
|
const fetches = Object.values(this.fetched);
|
|
@@ -1280,14 +1302,14 @@ class SubscriptionManager {
|
|
|
1280
1302
|
this.controller = controller;
|
|
1281
1303
|
return next => action => {
|
|
1282
1304
|
switch (action.type) {
|
|
1283
|
-
case
|
|
1305
|
+
case SUBSCRIBE:
|
|
1284
1306
|
try {
|
|
1285
1307
|
this.handleSubscribe(action);
|
|
1286
1308
|
} catch (e) {
|
|
1287
1309
|
console.error(e);
|
|
1288
1310
|
}
|
|
1289
1311
|
return Promise.resolve();
|
|
1290
|
-
case
|
|
1312
|
+
case UNSUBSCRIBE:
|
|
1291
1313
|
this.handleUnsubscribe(action);
|
|
1292
1314
|
return Promise.resolve();
|
|
1293
1315
|
default:
|
|
@@ -1509,7 +1531,7 @@ class LogoutManager {
|
|
|
1509
1531
|
} = {}) {
|
|
1510
1532
|
this.middleware = controller => next => async action => {
|
|
1511
1533
|
await next(action);
|
|
1512
|
-
if (action.type ===
|
|
1534
|
+
if (action.type === SET_RESPONSE && action.error && this.shouldLogout(action.response)) {
|
|
1513
1535
|
this.handleLogout(controller);
|
|
1514
1536
|
}
|
|
1515
1537
|
};
|
package/dist/index.umd.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@data-client/normalizr")):"function"==typeof define&&define.amd?define(["exports","@data-client/normalizr"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).RDC=e.RDC||{},e.RDC.Core={}),e.normalizr)}(this,(function(e,t){"use strict";function s(e,t){const s=Date.now();return{fetchedAt:null!=t?t:s,date:s,expiresAt:s+e}}const i="rdc/fetch",n="rdc/set",r="rdc/setresponse",o="rdc/optimistic",a="rdc/reset",c="rdc/subscribe",l="rdc/unsubscribe",h="rdc/invalidate",d="rdc/invalidateall",u="rdc/expireall",p="rdc/gc";var f=Object.freeze({__proto__:null,FETCH_TYPE:i,SET_TYPE:n,SET_RESPONSE_TYPE:r,OPTIMISTIC_TYPE:o,RESET_TYPE:a,SUBSCRIBE_TYPE:c,UNSUBSCRIBE_TYPE:l,INVALIDATE_TYPE:h,INVALIDATEALL_TYPE:d,EXPIREALL_TYPE:u,GC_TYPE:p});function y(e,t,i){var n;return{type:o,key:e.key(...t),args:t,endpoint:e,meta:s(null!=(n=e.dataExpiryLength)?n:6e4,i)}}class g extends Error{}function m(e,t,s){return"AbortError"===s.name?Object.assign({},e,{optimistic:v(e,t)}):Object.assign({},e,{meta:Object.assign({},e.meta,{[t.key]:{date:t.meta.date,error:s,expiresAt:t.meta.expiresAt,errorPolicy:null==t.endpoint.errorPolicy?void 0:t.endpoint.errorPolicy(s)}}),optimistic:v(e,t)})}function v(e,t){return e.optimistic.filter((e=>e.key!==t.key||(e.type===o?e.meta.fetchedAt!==t.meta.fetchedAt:e.meta.date>t.meta.date)))}const E={entities:{},endpoints:{},indexes:{},meta:{},entityMeta:{},optimistic:[],lastReset:0};var b=Object.freeze({__proto__:null,MemoCache:t.MemoCache,INVALID:t.INVALID,initialState:E});function L(e,{args:t}){return{type:c,endpoint:e,args:t,key:e.key(...t)}}function O(e,{args:t}){return{type:l,key:e.key(...t),args:t,endpoint:e}}var S="undefined"!=typeof FormData?e=>e instanceof FormData?Object.fromEntries(e.entries()):e:e=>e;function I(e,{args:t,fetchedAt:i,response:n,error:o=!1}){var a,c;const l=o?null!=(a=e.errorExpiryLength)?a:1e3:null!=(c=e.dataExpiryLength)?c:6e4;return{type:r,key:e.key(...t),response:n,args:t.map(S),endpoint:e,meta:s(l,i),error:o}}function x(e,{args:t,fetchedAt:i,value:r}){return{type:n,value:r,args:t.map(S),schema:e,meta:s(6e4,i)}}function A(){return{type:a,date:Date.now()}}function w(e){return{type:d,testKey:e}}function k(e,{args:t}){return{type:h,key:e.key(...t)}}function j(e,{args:t}){let s=0,n=0;const r=new Promise(((e,t)=>{[s,n]=[e,t]})),o={fetchedAt:Date.now(),resolve:s,reject:n,promise:r};return{type:i,key:e.key(...t),args:t,endpoint:e,meta:o}}function _(e){return{type:u,testKey:e}}var R=Object.freeze({__proto__:null,createSubscription:L,createUnsubscription:O,createSetResponse:I,createSet:x,createReset:A,createOptimistic:y,createMeta:s,createInvalidateAll:w,createInvalidate:k,createFetch:j,createExpireAll:_});function T(e,t){return e.meta[t]}const P=e=>{throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")},q=()=>E;class D{constructor({dispatch:e=P,getState:s=q,memo:i=new t.MemoCache}={}){this.fetch=(e,...s)=>{const i=j(e,{args:s});return this.dispatch(i),e.schema?i.meta.promise.then((i=>t.denormalize(e.schema,i,{},s))):i.meta.promise},this.fetchIfStale=(e,...s)=>{const{data:i,expiresAt:n,expiryStatus:r}=this.getResponse(e,...s,this.getState());return r!==t.ExpiryStatus.Invalid&&Date.now()<=n?i:this.fetch(e,...s)},this.invalidate=(e,...t)=>null!==t[0]?this.dispatch(k(e,{args:t})):Promise.resolve(),this.invalidateAll=e=>this.dispatch(w((t=>e.testKey(t)))),this.expireAll=e=>this.dispatch(_((t=>e.testKey(t)))),this.resetEntireStore=()=>this.dispatch(A()),this.setResponse=(e,...t)=>{const s=t[t.length-1],i=I(e,{args:t.slice(0,t.length-1),response:s});return this.dispatch(i)},this.setError=(e,...t)=>{const s=t[t.length-1],i=I(e,{args:t.slice(0,t.length-1),response:s,error:!0});return this.dispatch(i)},this.resolve=(e,t)=>this.dispatch(I(e,t)),this.subscribe=(e,...t)=>null!==t[0]?this.dispatch(L(e,{args:t})):Promise.resolve(),this.unsubscribe=(e,...t)=>null!==t[0]?this.dispatch(O(e,{args:t})):Promise.resolve(),this.snapshot=(e,t)=>new C(this,e,t),this.dispatch=e,this.getState=s,this.memo=i}set(e,...t){const s=t[t.length-1],i=x(e,{args:t.slice(0,t.length-1),value:s});return this.dispatch(i)}getError(e,...t){if(null===t[0])return;const s=t[t.length-1],i=t.slice(0,t.length-1),n=e.key(...i),r=T(s,n);return void 0===s.endpoints[n]||"soft"!==(null==r?void 0:r.errorPolicy)?null==r?void 0:r.error:void 0}getResponse(e,...s){const i=s[s.length-1],n=s.slice(0,s.length-1).map(S),r=1!==n.length||null!==n[0],o=r?e.key(...n):"",a=r?i.endpoints[o]:void 0,c=e.schema,l=T(i,o);let h=null==l?void 0:l.expiresAt;const d=void 0===a&&void 0!==c,u=d?this.memo.buildQueryKey(c,n,i.entities,i.indexes,o):a;if(!r)return{data:u,expiryStatus:t.ExpiryStatus.Valid,expiresAt:1/0};let p=!1;if(d)p=!t.validateQueryKey(u);else if(!c||!M(c))return{data:a,expiryStatus:null!=l&&l.invalidated?t.ExpiryStatus.Invalid:a&&!e.invalidIfStale?t.ExpiryStatus.Valid:t.ExpiryStatus.InvalidIfStale,expiresAt:h||0};const{data:f,paths:y}=this.memo.denormalize(c,u,i.entities,n);return!h&&p&&(h=1),this.getSchemaResponse(f,y,i.entityMeta,h,e.invalidIfStale||p,l)}get(e,...t){const s=t[t.length-1],i=t.slice(0,t.length-1).map(S);return this.memo.query(e,i,s.entities,s.indexes)}getSchemaResponse(e,s,i,n,r,o={}){const a="symbol"==typeof e;n||(n=function(e,t){let s=1/0;for(const{pk:n,key:r}of e){var i;const e=null==(i=t[r])||null==(i=i[n])?void 0:i.expiresAt;e<s&&(s=e)}return s}(s,i));return{data:e,expiryStatus:null!=o&&o.invalidated||a&&(null==o||!o.error)?t.ExpiryStatus.Invalid:a||r?t.ExpiryStatus.InvalidIfStale:t.ExpiryStatus.Valid,expiresAt:n}}}function M(e){if(t.isEntity(e))return!0;if(Array.isArray(e))return 0!==e.length&&M(e[0]);if(e&&("object"==typeof e||"function"==typeof e)){const t="schema"in e?e.schema:e;return"function"==typeof t?M(t):Object.values(t).some((e=>M(e)))}return!1}class C{constructor(e,t,s=0){this.state=void 0,this.controller=void 0,this.fetchedAt=void 0,this.abort=C.abort,this.state=t,this.controller=e,this.fetchedAt=s}getResponse(e,...t){return this.controller.getResponse(e,...t,this.state)}getError(e,...t){return this.controller.getError(e,...t,this.state)}get(e,...t){return this.controller.get(e,...t,this.state)}}C.abort=new g;class H extends Error{constructor(){super("Aborted due to RESET"),this.name="ResetError"}}class N{isOnline(){return void 0===navigator.onLine||navigator.onLine}addOnlineListener(e){addEventListener("online",e)}removeOnlineListener(e){removeEventListener("online",e)}addOfflineListener(e){addEventListener("offline",e)}removeOfflineListener(e){removeEventListener("offline",e)}}class F{isOnline(){return!0}addOnlineListener(){}removeOnlineListener(){}addOfflineListener(){}removeOfflineListener(){}}let z;z="undefined"!=typeof navigator&&"function"==typeof addEventListener?N:F;var Y=z;let V={};class B{constructor(e,t){this.started=!1,this.actions=[],this.maxBufferLength=100,this.devTools="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__.connect(Object.assign({},V,e)),null!=e&&e.maxAge&&(this.maxBufferLength=2*e.maxAge),t&&(this.skipLogging=t)}handleAction(e,t){this.started?this.devTools.send(e,t):(this.actions.length>this.maxBufferLength&&(this.actions=this.actions.slice(this.maxBufferLength/2)),this.actions.push([e,t]))}init(e){}cleanup(){}}B.prototype.middleware=()=>e=>t=>e(t);Object.hasOwn=Object.hasOwn||function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},Object.defineProperty(e,"ExpiryStatus",{enumerable:!0,get:function(){return t.ExpiryStatus}}),e.Controller=D,e.DefaultConnectionListener=Y,e.DevToolsManager=B,e.LogoutManager=class{constructor({handleLogout:e,shouldLogout:t}={}){this.middleware=e=>t=>async s=>{await t(s),s.type===r&&s.error&&this.shouldLogout(s.response)&&this.handleLogout(e)},e&&(this.handleLogout=e),t&&(this.shouldLogout=t)}cleanup(){}shouldLogout(e){return 401===e.status}handleLogout(e){e.resetEntireStore()}},e.NetworkManager=class{constructor({dataExpiryLength:e=6e4,errorExpiryLength:t=1e3}={}){this.fetched=Object.create(null),this.resolvers={},this.rejectors={},this.fetchedAt={},this.controller=new D,this.middleware=e=>(this.controller=e,t=>s=>{switch(s.type){case i:return this.handleFetch(s),void 0!==s.endpoint.getOptimisticResponse&&s.endpoint.sideEffect?t(s):Promise.resolve();case r:return t(s).then((()=>{if(s.key in this.fetched){var t;const i=null==(t=e.getState().meta[s.key])?void 0:t.error;i?this.handleSet(I(s.endpoint,{args:s.args,response:i,fetchedAt:s.meta.fetchedAt,error:!0})):this.handleSet(s)}}));case a:{const e=Object.assign({},this.rejectors);return this.clearAll(),t(s).then((()=>{for(const t in e)e[t](new H)}))}default:return t(s)}}),this.dataExpiryLength=e,this.errorExpiryLength=t}init(){delete this.cleanupDate}cleanup(){this.cleanupDate=Date.now()}skipLogging(e){return e.type===i&&e.key in this.fetched}allSettled(){const e=Object.values(this.fetched);if(e.length)return Promise.allSettled(e)}clearAll(){for(const e in this.rejectors)this.clear(e)}clear(e){this.fetched[e].catch((()=>{})),delete this.resolvers[e],delete this.rejectors[e],delete this.fetched[e],delete this.fetchedAt[e]}getLastReset(){return this.cleanupDate?this.cleanupDate:this.controller.getState().lastReset}handleFetch(e){const{resolve:t,reject:s,fetchedAt:i}=e.meta,n=!e.endpoint.sideEffect,r=()=>{let r=e.endpoint(...e.args);return n||(r=(e=>e.then((e=>(t(e),e))).catch((e=>{throw s(e),e})))(r)),r=r.then((t=>{let s=this.getLastReset();return i>=s&&this.controller.resolve(e.endpoint,{args:e.args,response:t,fetchedAt:i}),t})).catch((t=>{const s=this.getLastReset();throw i>=s&&this.controller.resolve(e.endpoint,{args:e.args,response:t,fetchedAt:i,error:!0}),t})),r};return n?this.throttle(e.key,r,i).then((e=>t(e))).catch((e=>s(e))):r().catch((()=>{}))}handleSet(e){if(e.key in this.fetched){let t;t=e.error?this.rejectors[e.key]:this.resolvers[e.key],t(e.response),this.clear(e.key)}}throttle(e,t,s){const i=this.getLastReset();return e in this.fetched&&this.fetchedAt[e]>i||(this.fetched[e]=new Promise(((t,s)=>{this.resolvers[e]=t,this.rejectors[e]=s})),this.fetchedAt[e]=s,this.idleCallback((()=>{t().catch((()=>null))}),{timeout:500})),this.fetched[e]}idleCallback(e,t){e()}},e.PollingSubscription=class{constructor(e,t,s){if(this.frequencyHistogram=new Map,this.offlineListener=()=>{this.cleanup(),this.connectionListener.addOnlineListener(this.onlineListener)},this.onlineListener=()=>{this.connectionListener.removeOnlineListener(this.onlineListener);const e=Date.now();this.startId=setTimeout((()=>{this.startId&&(delete this.startId,this.update(),this.run())}),Math.max(0,this.lastFetchTime()-e+this.frequency)),this.connectionListener.addOfflineListener(this.offlineListener)},void 0===e.endpoint.pollFrequency)throw new Error("frequency needed for polling subscription");this.endpoint=e.endpoint,this.frequency=e.endpoint.pollFrequency,this.args=e.args,this.key=e.key,this.frequencyHistogram.set(this.frequency,1),this.controller=t,this.connectionListener=s||new Y,this.connectionListener.isOnline()?this.onlineListener():this.offlineListener()}add(e){void 0!==e&&(this.frequencyHistogram.has(e)?this.frequencyHistogram.set(e,this.frequencyHistogram.get(e)+1):(this.frequencyHistogram.set(e,1),e<this.frequency&&(this.frequency=e,this.run())))}remove(e){if(void 0===e)return!1;if(this.frequencyHistogram.has(e)&&(this.frequencyHistogram.set(e,this.frequencyHistogram.get(e)-1),this.frequencyHistogram.get(e)<1)){if(this.frequencyHistogram.delete(e),0===this.frequencyHistogram.size)return this.cleanup(),!0;e<=this.frequency&&(this.frequency=Math.min(...this.frequencyHistogram.keys()),this.run())}return!1}cleanup(){this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId),this.lastIntervalId&&(clearInterval(this.lastIntervalId),delete this.lastIntervalId),this.startId&&(clearTimeout(this.startId),delete this.startId),this.connectionListener.removeOnlineListener(this.onlineListener),this.connectionListener.removeOfflineListener(this.offlineListener)}update(){const e=this.endpoint,t=function(...t){return e.call(this,...t)};Object.assign(t,this.endpoint),t.dataExpiryLength=this.frequency/2,t.errorExpiryLength=this.frequency/10,t.errorPolicy=()=>"soft",t.key=()=>this.key,this.controller.fetch(t,...this.args).catch((()=>null))}run(){this.startId||(this.intervalId&&(this.lastIntervalId=this.intervalId),this.intervalId=setInterval((()=>{this.lastIntervalId&&(clearInterval(this.lastIntervalId),delete this.lastIntervalId),this.intervalId&&this.update()}),this.frequency))}lastFetchTime(){var e,t;return null!=(e=null==(t=this.controller.getState().meta[this.key])?void 0:t.date)?e:0}},e.ResetError=H,e.SubscriptionManager=class{constructor(e){this.subscriptions={},this.controller=new D,this.middleware=e=>(this.controller=e,e=>t=>{switch(t.type){case c:try{this.handleSubscribe(t)}catch(e){console.error(e)}return Promise.resolve();case l:return this.handleUnsubscribe(t),Promise.resolve();default:return e(t)}}),this.Subscription=e}cleanup(){for(const e in this.subscriptions)this.subscriptions[e].cleanup()}handleSubscribe(e){const t=e.key;if(t in this.subscriptions){const s=e.endpoint.pollFrequency;this.subscriptions[t].add(s)}else this.subscriptions[t]=new this.Subscription(e,this.controller)}handleUnsubscribe(e){const t=e.key;if(t in this.subscriptions){const s=e.endpoint.pollFrequency;this.subscriptions[t].remove(s)&&delete this.subscriptions[t]}}},e.__INTERNAL__=b,e.actionTypes=f,e.actions=R,e.applyManager=function(e,t){return e.map(((e,s)=>(e.middleware||(e.middleware=null==e.getMiddleware?void 0:e.getMiddleware()),({dispatch:i,getState:n})=>(0===s&&(t.dispatch=i,t.getState=n),e.middleware(t)))))},e.createReducer=function(e){return function(s,c){switch(s||(s=E),c.type){case p:return c.entities.forEach((([e,t])=>{var i,n;null==(i=s.entities[e])||delete i[t],null==(n=s.entityMeta[e])||delete n[t]})),c.endpoints.forEach((e=>{delete s.endpoints[e],delete s.meta[e]})),s;case i:return function(e,t){if(t.endpoint.getOptimisticResponse&&t.endpoint.sideEffect){const s=y(t.endpoint,t.args,t.meta.fetchedAt);return Object.assign({},e,{optimistic:[...e.optimistic,s]})}return e}(s,c);case o:case r:return function(e,s,i){if(s.error)return m(e,s,s.response);try{var n;let r;if(s.type===o){if(!s.endpoint.getOptimisticResponse)return e;try{r=s.endpoint.getOptimisticResponse.call(s.endpoint,i.snapshot(e,s.meta.fetchedAt),...s.args)}catch(t){if(t.constructor===g)return e;throw t}}else r=s.response;const{result:a,entities:c,indexes:l,entityMeta:h}=t.normalize(s.endpoint.schema,r,s.args,e,s.meta),d=Object.assign({},e.endpoints,{[s.key]:a});try{if(s.endpoint.update){const e=s.endpoint.update(a,...s.args);Object.keys(e).forEach((t=>{d[t]=e[t](d[t])}))}}catch(e){console.error(`The following error occured during Endpoint.update() for ${s.key}`),console.error(e)}return{entities:c,endpoints:d,indexes:l,meta:Object.assign({},e.meta,{[s.key]:{date:s.meta.date,expiresAt:s.meta.expiresAt,prevExpiresAt:null==(n=e.meta[s.key])?void 0:n.expiresAt}}),entityMeta:h,optimistic:v(e,s),lastReset:e.lastReset}}catch(t){return"object"==typeof t&&(t.message=`Error processing ${s.key}\n\nFull Schema: ${JSON.stringify(s.endpoint.schema,void 0,2)}\n\nError:\n${t.message}`,"response"in s&&(t.response=s.response),t.status=400),m(e,s,t)}}(s,c,e);case n:return function(e,s,i){let n;if("function"==typeof s.value){const t=i.get(s.schema,...s.args,e);if(void 0===t)return e;n=s.value(t)}else n=s.value;try{const{entities:i,indexes:r,entityMeta:o}=t.normalize(s.schema,n,s.args,e,s.meta);return{entities:i,endpoints:e.endpoints,indexes:r,meta:e.meta,entityMeta:o,optimistic:e.optimistic,lastReset:e.lastReset}}catch(t){return e}}(s,c,e);case d:case h:return function(e,t){const s=Object.assign({},e.endpoints),i=Object.assign({},e.meta),n=e=>{delete s[e];const t=Object.assign({},i[e],{expiresAt:0,invalidated:!0});delete t.error,i[e]=t};return t.type===h?n(t.key):Object.keys(s).forEach((e=>{t.testKey(e)&&n(e)})),Object.assign({},e,{endpoints:s,meta:i})}(s,c);case u:return function(e,t){const s=Object.assign({},e.meta);return Object.keys(s).forEach((e=>{t.testKey(e)&&(s[e]=Object.assign({},s[e],{expiresAt:1}))})),Object.assign({},e,{meta:s})}(s,c);case a:return Object.assign({},E,{lastReset:c.date});default:return s}}},e.initialState=E,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@data-client/normalizr")):"function"==typeof define&&define.amd?define(["exports","@data-client/normalizr"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).RDC=e.RDC||{},e.RDC.Core={}),e.normalizr)}(this,(function(e,t){"use strict";function s(e,t){const s=Date.now();return{fetchedAt:null!=t?t:s,date:s,expiresAt:s+e}}const i="rdc/fetch",n="rdc/set",r="rdc/setresponse",o="rdc/optimistic",a="rdc/reset",c="rdc/subscribe",l="rdc/unsubscribe",h="rdc/invalidate",d="rdc/invalidateall",u="rdc/expireall",p="rdc/gc",f=i,y=n,g=r,m=o,v=a,E=c,L=l,b=h,S=d,I=u,O=p;var A=Object.freeze({__proto__:null,FETCH:i,SET:n,SET_RESPONSE:r,OPTIMISTIC:o,RESET:a,SUBSCRIBE:c,UNSUBSCRIBE:l,INVALIDATE:h,INVALIDATEALL:d,EXPIREALL:u,GC:p,FETCH_TYPE:f,SET_TYPE:y,SET_RESPONSE_TYPE:g,OPTIMISTIC_TYPE:m,RESET_TYPE:v,SUBSCRIBE_TYPE:E,UNSUBSCRIBE_TYPE:L,INVALIDATE_TYPE:b,INVALIDATEALL_TYPE:S,EXPIREALL_TYPE:I,GC_TYPE:O});function x(e,t,i){var n;return{type:o,key:e.key(...t),args:t,endpoint:e,meta:s(null!=(n=e.dataExpiryLength)?n:6e4,i)}}class w extends Error{}function k(e,t,s){return"AbortError"===s.name?Object.assign({},e,{optimistic:R(e,t)}):Object.assign({},e,{meta:Object.assign({},e.meta,{[t.key]:{date:t.meta.date,error:s,expiresAt:t.meta.expiresAt,errorPolicy:null==t.endpoint.errorPolicy?void 0:t.endpoint.errorPolicy(s)}}),optimistic:R(e,t)})}function R(e,t){return e.optimistic.filter((e=>e.key!==t.key||(e.type===o?e.meta.fetchedAt!==t.meta.fetchedAt:e.meta.date>t.meta.date)))}const T={entities:{},endpoints:{},indexes:{},meta:{},entityMeta:{},optimistic:[],lastReset:0};var j=Object.freeze({__proto__:null,MemoCache:t.MemoCache,INVALID:t.INVALID,initialState:T});function _(e,{args:t}){return{type:c,endpoint:e,args:t,key:e.key(...t)}}function P(e,{args:t}){return{type:l,key:e.key(...t),args:t,endpoint:e}}var q="undefined"!=typeof FormData?e=>e instanceof FormData?Object.fromEntries(e.entries()):e:e=>e;function D(e,{args:t,fetchedAt:i,response:n,error:o=!1}){var a,c;const l=o?null!=(a=e.errorExpiryLength)?a:1e3:null!=(c=e.dataExpiryLength)?c:6e4;return{type:r,key:e.key(...t),response:n,args:t.map(q),endpoint:e,meta:s(l,i),error:o}}function M(e,{args:t,fetchedAt:i,value:r}){return{type:n,value:r,args:t.map(q),schema:e,meta:s(6e4,i)}}function C(){return{type:a,date:Date.now()}}function N(e){return{type:d,testKey:e}}function H(e,{args:t}){return{type:h,key:e.key(...t)}}function F(e,{args:t}){let s=0,n=0;const r=new Promise(((e,t)=>{[s,n]=[e,t]})),o={fetchedAt:Date.now(),resolve:s,reject:n,promise:r};return{type:i,key:e.key(...t),args:t,endpoint:e,meta:o}}function B(e){return{type:u,testKey:e}}var z=Object.freeze({__proto__:null,createSubscription:_,createUnsubscription:P,createSetResponse:D,createSet:M,createReset:C,createOptimistic:x,createMeta:s,createInvalidateAll:N,createInvalidate:H,createFetch:F,createExpireAll:B});function U(e,t){return e.meta[t]}const V=e=>{throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")},Y=()=>T;class K{constructor({dispatch:e=V,getState:s=Y,memo:i=new t.MemoCache}={}){this.fetch=(e,...s)=>{const i=F(e,{args:s});return this.dispatch(i),e.schema?i.meta.promise.then((i=>t.denormalize(e.schema,i,{},s))):i.meta.promise},this.fetchIfStale=(e,...s)=>{const{data:i,expiresAt:n,expiryStatus:r}=this.getResponse(e,...s,this.getState());return r!==t.ExpiryStatus.Invalid&&Date.now()<=n?i:this.fetch(e,...s)},this.invalidate=(e,...t)=>null!==t[0]?this.dispatch(H(e,{args:t})):Promise.resolve(),this.invalidateAll=e=>this.dispatch(N((t=>e.testKey(t)))),this.expireAll=e=>this.dispatch(B((t=>e.testKey(t)))),this.resetEntireStore=()=>this.dispatch(C()),this.setResponse=(e,...t)=>{const s=t[t.length-1],i=D(e,{args:t.slice(0,t.length-1),response:s});return this.dispatch(i)},this.setError=(e,...t)=>{const s=t[t.length-1],i=D(e,{args:t.slice(0,t.length-1),response:s,error:!0});return this.dispatch(i)},this.resolve=(e,t)=>this.dispatch(D(e,t)),this.subscribe=(e,...t)=>null!==t[0]?this.dispatch(_(e,{args:t})):Promise.resolve(),this.unsubscribe=(e,...t)=>null!==t[0]?this.dispatch(P(e,{args:t})):Promise.resolve(),this.snapshot=(e,t)=>new $(this,e,t),this.dispatch=e,this.getState=s,this.memo=i}set(e,...t){const s=t[t.length-1],i=M(e,{args:t.slice(0,t.length-1),value:s});return this.dispatch(i)}getError(e,...t){if(null===t[0])return;const s=t[t.length-1],i=t.slice(0,t.length-1),n=e.key(...i),r=U(s,n);return void 0===s.endpoints[n]||"soft"!==(null==r?void 0:r.errorPolicy)?null==r?void 0:r.error:void 0}getResponse(e,...s){const i=s[s.length-1],n=s.slice(0,s.length-1).map(q),r=1!==n.length||null!==n[0],o=r?e.key(...n):"",a=r?i.endpoints[o]:void 0,c=e.schema,l=U(i,o);let h=null==l?void 0:l.expiresAt;const d=void 0===a&&void 0!==c,u=d?this.memo.buildQueryKey(c,n,i.entities,i.indexes,o):a;if(!r)return{data:u,expiryStatus:t.ExpiryStatus.Valid,expiresAt:1/0};let p=!1;if(d)p=!t.validateQueryKey(u);else if(!c||!X(c))return{data:a,expiryStatus:null!=l&&l.invalidated?t.ExpiryStatus.Invalid:a&&!e.invalidIfStale?t.ExpiryStatus.Valid:t.ExpiryStatus.InvalidIfStale,expiresAt:h||0};const{data:f,paths:y}=this.memo.denormalize(c,u,i.entities,n);return!h&&p&&(h=1),this.getSchemaResponse(f,y,i.entityMeta,h,e.invalidIfStale||p,l)}get(e,...t){const s=t[t.length-1],i=t.slice(0,t.length-1).map(q);return this.memo.query(e,i,s.entities,s.indexes)}getSchemaResponse(e,s,i,n,r,o={}){const a="symbol"==typeof e;n||(n=function(e,t){let s=1/0;for(const{pk:n,key:r}of e){var i;const e=null==(i=t[r])||null==(i=i[n])?void 0:i.expiresAt;e<s&&(s=e)}return s}(s,i));return{data:e,expiryStatus:null!=o&&o.invalidated||a&&(null==o||!o.error)?t.ExpiryStatus.Invalid:a||r?t.ExpiryStatus.InvalidIfStale:t.ExpiryStatus.Valid,expiresAt:n}}}function X(e){if(t.isEntity(e))return!0;if(Array.isArray(e))return 0!==e.length&&X(e[0]);if(e&&("object"==typeof e||"function"==typeof e)){const t="schema"in e?e.schema:e;return"function"==typeof t?X(t):Object.values(t).some((e=>X(e)))}return!1}class ${constructor(e,t,s=0){this.state=void 0,this.controller=void 0,this.fetchedAt=void 0,this.abort=$.abort,this.state=t,this.controller=e,this.fetchedAt=s}getResponse(e,...t){return this.controller.getResponse(e,...t,this.state)}getError(e,...t){return this.controller.getError(e,...t,this.state)}get(e,...t){return this.controller.get(e,...t,this.state)}}$.abort=new w;class G extends Error{constructor(){super("Aborted due to RESET"),this.name="ResetError"}}class Q{isOnline(){return void 0===navigator.onLine||navigator.onLine}addOnlineListener(e){addEventListener("online",e)}removeOnlineListener(e){removeEventListener("online",e)}addOfflineListener(e){addEventListener("offline",e)}removeOfflineListener(e){removeEventListener("offline",e)}}class J{isOnline(){return!0}addOnlineListener(){}removeOnlineListener(){}addOfflineListener(){}removeOfflineListener(){}}let W;W="undefined"!=typeof navigator&&"function"==typeof addEventListener?Q:J;var Z=W;let ee={};class te{constructor(e,t){this.started=!1,this.actions=[],this.maxBufferLength=100,this.devTools="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__.connect(Object.assign({},ee,e)),null!=e&&e.maxAge&&(this.maxBufferLength=2*e.maxAge),t&&(this.skipLogging=t)}handleAction(e,t){this.started?this.devTools.send(e,t):(this.actions.length>this.maxBufferLength&&(this.actions=this.actions.slice(this.maxBufferLength/2)),this.actions.push([e,t]))}init(e){}cleanup(){}}te.prototype.middleware=()=>e=>t=>e(t);Object.hasOwn=Object.hasOwn||function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},Object.defineProperty(e,"ExpiryStatus",{enumerable:!0,get:function(){return t.ExpiryStatus}}),e.Controller=K,e.DefaultConnectionListener=Z,e.DevToolsManager=te,e.LogoutManager=class{constructor({handleLogout:e,shouldLogout:t}={}){this.middleware=e=>t=>async s=>{await t(s),s.type===r&&s.error&&this.shouldLogout(s.response)&&this.handleLogout(e)},e&&(this.handleLogout=e),t&&(this.shouldLogout=t)}cleanup(){}shouldLogout(e){return 401===e.status}handleLogout(e){e.resetEntireStore()}},e.NetworkManager=class{constructor({dataExpiryLength:e=6e4,errorExpiryLength:t=1e3}={}){this.fetched=Object.create(null),this.resolvers={},this.rejectors={},this.fetchedAt={},this.controller=new K,this.middleware=e=>(this.controller=e,t=>s=>{switch(s.type){case i:return this.handleFetch(s),void 0!==s.endpoint.getOptimisticResponse&&s.endpoint.sideEffect?t(s):Promise.resolve();case r:return t(s).then((()=>{if(s.key in this.fetched){var t;const i=null==(t=e.getState().meta[s.key])?void 0:t.error;i?this.handleSet(D(s.endpoint,{args:s.args,response:i,fetchedAt:s.meta.fetchedAt,error:!0})):this.handleSet(s)}}));case a:{const e=Object.assign({},this.rejectors);return this.clearAll(),t(s).then((()=>{for(const t in e)e[t](new G)}))}default:return t(s)}}),this.dataExpiryLength=e,this.errorExpiryLength=t}init(){delete this.cleanupDate}cleanup(){this.cleanupDate=Date.now()}skipLogging(e){return e.type===i&&e.key in this.fetched}allSettled(){const e=Object.values(this.fetched);if(e.length)return Promise.allSettled(e)}clearAll(){for(const e in this.rejectors)this.clear(e)}clear(e){this.fetched[e].catch((()=>{})),delete this.resolvers[e],delete this.rejectors[e],delete this.fetched[e],delete this.fetchedAt[e]}getLastReset(){return this.cleanupDate?this.cleanupDate:this.controller.getState().lastReset}handleFetch(e){const{resolve:t,reject:s,fetchedAt:i}=e.meta,n=!e.endpoint.sideEffect,r=()=>{let r=e.endpoint(...e.args);return n||(r=(e=>e.then((e=>(t(e),e))).catch((e=>{throw s(e),e})))(r)),r=r.then((t=>{let s=this.getLastReset();return i>=s&&this.controller.resolve(e.endpoint,{args:e.args,response:t,fetchedAt:i}),t})).catch((t=>{const s=this.getLastReset();throw i>=s&&this.controller.resolve(e.endpoint,{args:e.args,response:t,fetchedAt:i,error:!0}),t})),r};return n?this.throttle(e.key,r,i).then((e=>t(e))).catch((e=>s(e))):r().catch((()=>{}))}handleSet(e){if(e.key in this.fetched){let t;t=e.error?this.rejectors[e.key]:this.resolvers[e.key],t(e.response),this.clear(e.key)}}throttle(e,t,s){const i=this.getLastReset();return e in this.fetched&&this.fetchedAt[e]>i||(this.fetched[e]=new Promise(((t,s)=>{this.resolvers[e]=t,this.rejectors[e]=s})),this.fetchedAt[e]=s,this.idleCallback((()=>{t().catch((()=>null))}),{timeout:500})),this.fetched[e]}idleCallback(e,t){e()}},e.PollingSubscription=class{constructor(e,t,s){if(this.frequencyHistogram=new Map,this.offlineListener=()=>{this.cleanup(),this.connectionListener.addOnlineListener(this.onlineListener)},this.onlineListener=()=>{this.connectionListener.removeOnlineListener(this.onlineListener);const e=Date.now();this.startId=setTimeout((()=>{this.startId&&(delete this.startId,this.update(),this.run())}),Math.max(0,this.lastFetchTime()-e+this.frequency)),this.connectionListener.addOfflineListener(this.offlineListener)},void 0===e.endpoint.pollFrequency)throw new Error("frequency needed for polling subscription");this.endpoint=e.endpoint,this.frequency=e.endpoint.pollFrequency,this.args=e.args,this.key=e.key,this.frequencyHistogram.set(this.frequency,1),this.controller=t,this.connectionListener=s||new Z,this.connectionListener.isOnline()?this.onlineListener():this.offlineListener()}add(e){void 0!==e&&(this.frequencyHistogram.has(e)?this.frequencyHistogram.set(e,this.frequencyHistogram.get(e)+1):(this.frequencyHistogram.set(e,1),e<this.frequency&&(this.frequency=e,this.run())))}remove(e){if(void 0===e)return!1;if(this.frequencyHistogram.has(e)&&(this.frequencyHistogram.set(e,this.frequencyHistogram.get(e)-1),this.frequencyHistogram.get(e)<1)){if(this.frequencyHistogram.delete(e),0===this.frequencyHistogram.size)return this.cleanup(),!0;e<=this.frequency&&(this.frequency=Math.min(...this.frequencyHistogram.keys()),this.run())}return!1}cleanup(){this.intervalId&&(clearInterval(this.intervalId),delete this.intervalId),this.lastIntervalId&&(clearInterval(this.lastIntervalId),delete this.lastIntervalId),this.startId&&(clearTimeout(this.startId),delete this.startId),this.connectionListener.removeOnlineListener(this.onlineListener),this.connectionListener.removeOfflineListener(this.offlineListener)}update(){const e=this.endpoint,t=function(...t){return e.call(this,...t)};Object.assign(t,this.endpoint),t.dataExpiryLength=this.frequency/2,t.errorExpiryLength=this.frequency/10,t.errorPolicy=()=>"soft",t.key=()=>this.key,this.controller.fetch(t,...this.args).catch((()=>null))}run(){this.startId||(this.intervalId&&(this.lastIntervalId=this.intervalId),this.intervalId=setInterval((()=>{this.lastIntervalId&&(clearInterval(this.lastIntervalId),delete this.lastIntervalId),this.intervalId&&this.update()}),this.frequency))}lastFetchTime(){var e,t;return null!=(e=null==(t=this.controller.getState().meta[this.key])?void 0:t.date)?e:0}},e.ResetError=G,e.SubscriptionManager=class{constructor(e){this.subscriptions={},this.controller=new K,this.middleware=e=>(this.controller=e,e=>t=>{switch(t.type){case c:try{this.handleSubscribe(t)}catch(e){console.error(e)}return Promise.resolve();case l:return this.handleUnsubscribe(t),Promise.resolve();default:return e(t)}}),this.Subscription=e}cleanup(){for(const e in this.subscriptions)this.subscriptions[e].cleanup()}handleSubscribe(e){const t=e.key;if(t in this.subscriptions){const s=e.endpoint.pollFrequency;this.subscriptions[t].add(s)}else this.subscriptions[t]=new this.Subscription(e,this.controller)}handleUnsubscribe(e){const t=e.key;if(t in this.subscriptions){const s=e.endpoint.pollFrequency;this.subscriptions[t].remove(s)&&delete this.subscriptions[t]}}},e.__INTERNAL__=j,e.actionTypes=A,e.actions=z,e.applyManager=function(e,t){return e.map(((e,s)=>(e.middleware||(e.middleware=null==e.getMiddleware?void 0:e.getMiddleware()),({dispatch:i,getState:n})=>(0===s&&(t.dispatch=i,t.getState=n),e.middleware(t)))))},e.createReducer=function(e){return function(s,c){switch(s||(s=T),c.type){case p:return c.entities.forEach((([e,t])=>{var i,n;null==(i=s.entities[e])||delete i[t],null==(n=s.entityMeta[e])||delete n[t]})),c.endpoints.forEach((e=>{delete s.endpoints[e],delete s.meta[e]})),s;case i:return function(e,t){if(t.endpoint.getOptimisticResponse&&t.endpoint.sideEffect){const s=x(t.endpoint,t.args,t.meta.fetchedAt);return Object.assign({},e,{optimistic:[...e.optimistic,s]})}return e}(s,c);case o:case r:return function(e,s,i){if(s.error)return k(e,s,s.response);try{var n;let r;if(s.type===o){if(!s.endpoint.getOptimisticResponse)return e;try{r=s.endpoint.getOptimisticResponse.call(s.endpoint,i.snapshot(e,s.meta.fetchedAt),...s.args)}catch(t){if(t.constructor===w)return e;throw t}}else r=s.response;const{result:a,entities:c,indexes:l,entityMeta:h}=t.normalize(s.endpoint.schema,r,s.args,e,s.meta),d=Object.assign({},e.endpoints,{[s.key]:a});try{if(s.endpoint.update){const e=s.endpoint.update(a,...s.args);Object.keys(e).forEach((t=>{d[t]=e[t](d[t])}))}}catch(e){console.error(`The following error occured during Endpoint.update() for ${s.key}`),console.error(e)}return{entities:c,endpoints:d,indexes:l,meta:Object.assign({},e.meta,{[s.key]:{date:s.meta.date,expiresAt:s.meta.expiresAt,prevExpiresAt:null==(n=e.meta[s.key])?void 0:n.expiresAt}}),entityMeta:h,optimistic:R(e,s),lastReset:e.lastReset}}catch(t){return"object"==typeof t&&(t.message=`Error processing ${s.key}\n\nFull Schema: ${JSON.stringify(s.endpoint.schema,void 0,2)}\n\nError:\n${t.message}`,"response"in s&&(t.response=s.response),t.status=400),k(e,s,t)}}(s,c,e);case n:return function(e,s,i){let n;if("function"==typeof s.value){const t=i.get(s.schema,...s.args,e);if(void 0===t)return e;n=s.value(t)}else n=s.value;try{const{entities:i,indexes:r,entityMeta:o}=t.normalize(s.schema,n,s.args,e,s.meta);return{entities:i,endpoints:e.endpoints,indexes:r,meta:e.meta,entityMeta:o,optimistic:e.optimistic,lastReset:e.lastReset}}catch(t){return e}}(s,c,e);case d:case h:return function(e,t){const s=Object.assign({},e.endpoints),i=Object.assign({},e.meta),n=e=>{delete s[e];const t=Object.assign({},i[e],{expiresAt:0,invalidated:!0});delete t.error,i[e]=t};return t.type===h?n(t.key):Object.keys(s).forEach((e=>{t.testKey(e)&&n(e)})),Object.assign({},e,{endpoints:s,meta:i})}(s,c);case u:return function(e,t){const s=Object.assign({},e.meta);return Object.keys(s).forEach((e=>{t.testKey(e)&&(s[e]=Object.assign({},s[e],{expiresAt:1}))})),Object.assign({},e,{meta:s})}(s,c);case a:return Object.assign({},T,{lastReset:c.date});default:return s}}},e.initialState=T,Object.defineProperty(e,"__esModule",{value:!0})}));
|
package/legacy/actionTypes.js
CHANGED
|
@@ -1,12 +1,23 @@
|
|
|
1
|
-
export const
|
|
2
|
-
export const
|
|
3
|
-
export const
|
|
4
|
-
export const
|
|
5
|
-
export const
|
|
6
|
-
export const
|
|
7
|
-
export const
|
|
8
|
-
export const
|
|
9
|
-
export const
|
|
10
|
-
export const
|
|
11
|
-
export const
|
|
12
|
-
|
|
1
|
+
export const FETCH = 'rdc/fetch';
|
|
2
|
+
export const SET = 'rdc/set';
|
|
3
|
+
export const SET_RESPONSE = 'rdc/setresponse';
|
|
4
|
+
export const OPTIMISTIC = 'rdc/optimistic';
|
|
5
|
+
export const RESET = 'rdc/reset';
|
|
6
|
+
export const SUBSCRIBE = 'rdc/subscribe';
|
|
7
|
+
export const UNSUBSCRIBE = 'rdc/unsubscribe';
|
|
8
|
+
export const INVALIDATE = 'rdc/invalidate';
|
|
9
|
+
export const INVALIDATEALL = 'rdc/invalidateall';
|
|
10
|
+
export const EXPIREALL = 'rdc/expireall';
|
|
11
|
+
export const GC = 'rdc/gc';
|
|
12
|
+
export const FETCH_TYPE = FETCH;
|
|
13
|
+
export const SET_TYPE = SET;
|
|
14
|
+
export const SET_RESPONSE_TYPE = SET_RESPONSE;
|
|
15
|
+
export const OPTIMISTIC_TYPE = OPTIMISTIC;
|
|
16
|
+
export const RESET_TYPE = RESET;
|
|
17
|
+
export const SUBSCRIBE_TYPE = SUBSCRIBE;
|
|
18
|
+
export const UNSUBSCRIBE_TYPE = UNSUBSCRIBE;
|
|
19
|
+
export const INVALIDATE_TYPE = INVALIDATE;
|
|
20
|
+
export const INVALIDATEALL_TYPE = INVALIDATEALL;
|
|
21
|
+
export const EXPIREALL_TYPE = EXPIREALL;
|
|
22
|
+
export const GC_TYPE = GC;
|
|
23
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGRVRDSCIsIlNFVCIsIlNFVF9SRVNQT05TRSIsIk9QVElNSVNUSUMiLCJSRVNFVCIsIlNVQlNDUklCRSIsIlVOU1VCU0NSSUJFIiwiSU5WQUxJREFURSIsIklOVkFMSURBVEVBTEwiLCJFWFBJUkVBTEwiLCJHQyIsIkZFVENIX1RZUEUiLCJTRVRfVFlQRSIsIlNFVF9SRVNQT05TRV9UWVBFIiwiT1BUSU1JU1RJQ19UWVBFIiwiUkVTRVRfVFlQRSIsIlNVQlNDUklCRV9UWVBFIiwiVU5TVUJTQ1JJQkVfVFlQRSIsIklOVkFMSURBVEVfVFlQRSIsIklOVkFMSURBVEVBTExfVFlQRSIsIkVYUElSRUFMTF9UWVBFIiwiR0NfVFlQRSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9hY3Rpb25UeXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgRkVUQ0ggPSAncmRjL2ZldGNoJyBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBTRVQgPSAncmRjL3NldCcgYXMgY29uc3Q7XG5leHBvcnQgY29uc3QgU0VUX1JFU1BPTlNFID0gJ3JkYy9zZXRyZXNwb25zZScgYXMgY29uc3Q7XG5leHBvcnQgY29uc3QgT1BUSU1JU1RJQyA9ICdyZGMvb3B0aW1pc3RpYycgYXMgY29uc3Q7XG5leHBvcnQgY29uc3QgUkVTRVQgPSAncmRjL3Jlc2V0JyBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBTVUJTQ1JJQkUgPSAncmRjL3N1YnNjcmliZScgYXMgY29uc3Q7XG5leHBvcnQgY29uc3QgVU5TVUJTQ1JJQkUgPSAncmRjL3Vuc3Vic2NyaWJlJyBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBJTlZBTElEQVRFID0gJ3JkYy9pbnZhbGlkYXRlJyBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBJTlZBTElEQVRFQUxMID0gJ3JkYy9pbnZhbGlkYXRlYWxsJyBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCBFWFBJUkVBTEwgPSAncmRjL2V4cGlyZWFsbCcgYXMgY29uc3Q7XG5leHBvcnQgY29uc3QgR0MgPSAncmRjL2djJyBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IEZFVENIX1RZUEUgPSBGRVRDSDtcbmV4cG9ydCBjb25zdCBTRVRfVFlQRSA9IFNFVDtcbmV4cG9ydCBjb25zdCBTRVRfUkVTUE9OU0VfVFlQRSA9IFNFVF9SRVNQT05TRTtcbmV4cG9ydCBjb25zdCBPUFRJTUlTVElDX1RZUEUgPSBPUFRJTUlTVElDO1xuZXhwb3J0IGNvbnN0IFJFU0VUX1RZUEUgPSBSRVNFVDtcbmV4cG9ydCBjb25zdCBTVUJTQ1JJQkVfVFlQRSA9IFNVQlNDUklCRTtcbmV4cG9ydCBjb25zdCBVTlNVQlNDUklCRV9UWVBFID0gVU5TVUJTQ1JJQkU7XG5leHBvcnQgY29uc3QgSU5WQUxJREFURV9UWVBFID0gSU5WQUxJREFURTtcbmV4cG9ydCBjb25zdCBJTlZBTElEQVRFQUxMX1RZUEUgPSBJTlZBTElEQVRFQUxMO1xuZXhwb3J0IGNvbnN0IEVYUElSRUFMTF9UWVBFID0gRVhQSVJFQUxMO1xuZXhwb3J0IGNvbnN0IEdDX1RZUEUgPSBHQztcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNQSxLQUFLLEdBQUcsV0FBb0I7QUFDekMsT0FBTyxNQUFNQyxHQUFHLEdBQUcsU0FBa0I7QUFDckMsT0FBTyxNQUFNQyxZQUFZLEdBQUcsaUJBQTBCO0FBQ3RELE9BQU8sTUFBTUMsVUFBVSxHQUFHLGdCQUF5QjtBQUNuRCxPQUFPLE1BQU1DLEtBQUssR0FBRyxXQUFvQjtBQUN6QyxPQUFPLE1BQU1DLFNBQVMsR0FBRyxlQUF3QjtBQUNqRCxPQUFPLE1BQU1DLFdBQVcsR0FBRyxpQkFBMEI7QUFDckQsT0FBTyxNQUFNQyxVQUFVLEdBQUcsZ0JBQXlCO0FBQ25ELE9BQU8sTUFBTUMsYUFBYSxHQUFHLG1CQUE0QjtBQUN6RCxPQUFPLE1BQU1DLFNBQVMsR0FBRyxlQUF3QjtBQUNqRCxPQUFPLE1BQU1DLEVBQUUsR0FBRyxRQUFpQjtBQUVuQyxPQUFPLE1BQU1DLFVBQVUsR0FBR1gsS0FBSztBQUMvQixPQUFPLE1BQU1ZLFFBQVEsR0FBR1gsR0FBRztBQUMzQixPQUFPLE1BQU1ZLGlCQUFpQixHQUFHWCxZQUFZO0FBQzdDLE9BQU8sTUFBTVksZUFBZSxHQUFHWCxVQUFVO0FBQ3pDLE9BQU8sTUFBTVksVUFBVSxHQUFHWCxLQUFLO0FBQy9CLE9BQU8sTUFBTVksY0FBYyxHQUFHWCxTQUFTO0FBQ3ZDLE9BQU8sTUFBTVksZ0JBQWdCLEdBQUdYLFdBQVc7QUFDM0MsT0FBTyxNQUFNWSxlQUFlLEdBQUdYLFVBQVU7QUFDekMsT0FBTyxNQUFNWSxrQkFBa0IsR0FBR1gsYUFBYTtBQUMvQyxPQUFPLE1BQU1ZLGNBQWMsR0FBR1gsU0FBUztBQUN2QyxPQUFPLE1BQU1ZLE9BQU8sR0FBR1gsRUFBRSIsImlnbm9yZUxpc3QiOltdfQ==
|
package/legacy/actions.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FjdGlvbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEZW5vcm1hbGl6ZSxcbiAgRW5kcG9pbnRJbnRlcmZhY2UsXG4gIFF1ZXJ5YWJsZSxcbiAgUmVzb2x2ZVR5cGUsXG4gIFVua25vd25FcnJvcixcbn0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB0eXBlIHtcbiAgU0VULFxuICBSRVNFVCxcbiAgRkVUQ0gsXG4gIFNVQlNDUklCRSxcbiAgVU5TVUJTQ1JJQkUsXG4gIElOVkFMSURBVEUsXG4gIEdDLFxuICBPUFRJTUlTVElDLFxuICBJTlZBTElEQVRFQUxMLFxuICBFWFBJUkVBTEwsXG4gIFNFVF9SRVNQT05TRSxcbn0gZnJvbSAnLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IEVuZHBvaW50VXBkYXRlRnVuY3Rpb24gfSBmcm9tICcuL2NvbnRyb2xsZXIvdHlwZXMuanMnO1xuXG50eXBlIEVuZHBvaW50QW5kVXBkYXRlPEUgZXh0ZW5kcyBFbmRwb2ludEludGVyZmFjZT4gPSBFbmRwb2ludEludGVyZmFjZSAmIHtcbiAgdXBkYXRlPzogRW5kcG9pbnRVcGRhdGVGdW5jdGlvbjxFPjtcbn07XG50eXBlIEVuZHBvaW50RGVmYXVsdCA9IEVuZHBvaW50SW50ZXJmYWNlICYge1xuICB1cGRhdGU/OiBFbmRwb2ludFVwZGF0ZUZ1bmN0aW9uPEVuZHBvaW50SW50ZXJmYWNlPjtcbn07XG5cbi8qKiBHZW5lcmFsIG1ldGEtZGF0YSBmb3Igb3BlcmF0b3JzICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbk1ldGEge1xuICByZWFkb25seSBmZXRjaGVkQXQ6IG51bWJlcjtcbiAgcmVhZG9ubHkgZGF0ZTogbnVtYmVyO1xuICByZWFkb25seSBleHBpcmVzQXQ6IG51bWJlcjtcbn1cblxuLyoqIEFjdGlvbiBmb3IgQ29udHJvbGxlci5zZXQoKSAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXRBY3Rpb248UyBleHRlbmRzIFF1ZXJ5YWJsZSA9IGFueT4ge1xuICB0eXBlOiB0eXBlb2YgU0VUO1xuICBzY2hlbWE6IFM7XG4gIGFyZ3M6IHJlYWRvbmx5IGFueVtdO1xuICBtZXRhOiBBY3Rpb25NZXRhO1xuICB2YWx1ZToge30gfCAoKHByZXZpb3VzVmFsdWU6IERlbm9ybWFsaXplPFM+KSA9PiB7fSk7XG59XG5cbi8qIHNldFJlc3BvbnNlICovXG5leHBvcnQgaW50ZXJmYWNlIFNldFJlc3BvbnNlQWN0aW9uQmFzZTxcbiAgRSBleHRlbmRzIEVuZHBvaW50QW5kVXBkYXRlPEU+ID0gRW5kcG9pbnREZWZhdWx0LFxuPiB7XG4gIHR5cGU6IHR5cGVvZiBTRVRfUkVTUE9OU0U7XG4gIGVuZHBvaW50OiBFO1xuICBhcmdzOiByZWFkb25seSBhbnlbXTtcbiAga2V5OiBzdHJpbmc7XG4gIG1ldGE6IEFjdGlvbk1ldGE7XG59XG5leHBvcnQgaW50ZXJmYWNlIFNldFJlc3BvbnNlQWN0aW9uU3VjY2VzczxcbiAgRSBleHRlbmRzIEVuZHBvaW50QW5kVXBkYXRlPEU+ID0gRW5kcG9pbnREZWZhdWx0LFxuPiBleHRlbmRzIFNldFJlc3BvbnNlQWN0aW9uQmFzZTxFPiB7XG4gIHJlc3BvbnNlOiBSZXNvbHZlVHlwZTxFPjtcbiAgZXJyb3I/OiBmYWxzZTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2V0UmVzcG9uc2VBY3Rpb25FcnJvcjxcbiAgRSBleHRlbmRzIEVuZHBvaW50QW5kVXBkYXRlPEU+ID0gRW5kcG9pbnREZWZhdWx0LFxuPiBleHRlbmRzIFNldFJlc3BvbnNlQWN0aW9uQmFzZTxFPiB7XG4gIHJlc3BvbnNlOiBVbmtub3duRXJyb3I7XG4gIGVycm9yOiB0cnVlO1xufVxuLyoqIEFjdGlvbiBmb3IgQ29udHJvbGxlci5zZXRSZXNwb25zZSgpICovXG5leHBvcnQgdHlwZSBTZXRSZXNwb25zZUFjdGlvbjxcbiAgRSBleHRlbmRzIEVuZHBvaW50QW5kVXBkYXRlPEU+ID0gRW5kcG9pbnREZWZhdWx0LFxuPiA9IFNldFJlc3BvbnNlQWN0aW9uU3VjY2VzczxFPiB8IFNldFJlc3BvbnNlQWN0aW9uRXJyb3I8RT47XG5cbi8qIEZFVENIICovXG5leHBvcnQgaW50ZXJmYWNlIEZldGNoTWV0YSB7XG4gIGZldGNoZWRBdDogbnVtYmVyO1xuICByZXNvbHZlOiAodmFsdWU/OiBhbnkgfCBQcm9taXNlTGlrZTxhbnk+KSA9PiB2b2lkO1xuICByZWplY3Q6IChyZWFzb24/OiBhbnkpID0+IHZvaWQ7XG4gIHByb21pc2U6IFByb21pc2VMaWtlPGFueT47XG59XG5cbi8qKiBBY3Rpb24gZm9yIENvbnRyb2xsZXIuZmV0Y2goKSAqL1xuZXhwb3J0IGludGVyZmFjZSBGZXRjaEFjdGlvbjxFIGV4dGVuZHMgRW5kcG9pbnRBbmRVcGRhdGU8RT4gPSBFbmRwb2ludERlZmF1bHQ+IHtcbiAgdHlwZTogdHlwZW9mIEZFVENIO1xuICBlbmRwb2ludDogRTtcbiAgYXJnczogcmVhZG9ubHkgWy4uLlBhcmFtZXRlcnM8RT5dO1xuICBrZXk6IHN0cmluZztcbiAgbWV0YTogRmV0Y2hNZXRhO1xufVxuXG4vKiBPUFRJTUlTVElDICovXG4vKiogQWN0aW9uIGZvciBFbmRwb2ludC5nZXRPcHRpbWlzdGljUmVzcG9uc2UoKSAqL1xuZXhwb3J0IGludGVyZmFjZSBPcHRpbWlzdGljQWN0aW9uPFxuICBFIGV4dGVuZHMgRW5kcG9pbnRBbmRVcGRhdGU8RT4gPSBFbmRwb2ludERlZmF1bHQsXG4+IHtcbiAgdHlwZTogdHlwZW9mIE9QVElNSVNUSUM7XG4gIGVuZHBvaW50OiBFO1xuICBhcmdzOiByZWFkb25seSBhbnlbXTtcbiAga2V5OiBzdHJpbmc7XG4gIG1ldGE6IEFjdGlvbk1ldGE7XG4gIGVycm9yPzogZmFsc2U7XG59XG5cbi8qIFNVQlNDUklCRSAqL1xuLyoqIEFjdGlvbiBmb3IgQ29udHJvbGxlci5zdWJzY3JpYmUoKSAqL1xuZXhwb3J0IGludGVyZmFjZSBTdWJzY3JpYmVBY3Rpb248XG4gIEUgZXh0ZW5kcyBFbmRwb2ludEFuZFVwZGF0ZTxFPiA9IEVuZHBvaW50RGVmYXVsdCxcbj4ge1xuICB0eXBlOiB0eXBlb2YgU1VCU0NSSUJFO1xuICBlbmRwb2ludDogRTtcbiAgYXJnczogcmVhZG9ubHkgYW55W107XG4gIGtleTogc3RyaW5nO1xufVxuXG4vKiogQWN0aW9uIGZvciBDb250cm9sbGVyLnVuc3Vic2NyaWJlKCkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVW5zdWJzY3JpYmVBY3Rpb248XG4gIEUgZXh0ZW5kcyBFbmRwb2ludEFuZFVwZGF0ZTxFPiA9IEVuZHBvaW50RGVmYXVsdCxcbj4ge1xuICB0eXBlOiB0eXBlb2YgVU5TVUJTQ1JJQkU7XG4gIGVuZHBvaW50OiBFO1xuICBhcmdzOiByZWFkb25seSBhbnlbXTtcbiAga2V5OiBzdHJpbmc7XG59XG5cbi8qIEVYUElSWSAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBpcmVBbGxBY3Rpb24ge1xuICB0eXBlOiB0eXBlb2YgRVhQSVJFQUxMO1xuICB0ZXN0S2V5OiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW47XG59XG5cbi8qIElOVkFMSURBVEUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW52YWxpZGF0ZUFsbEFjdGlvbiB7XG4gIHR5cGU6IHR5cGVvZiBJTlZBTElEQVRFQUxMO1xuICB0ZXN0S2V5OiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW52YWxpZGF0ZUFjdGlvbiB7XG4gIHR5cGU6IHR5cGVvZiBJTlZBTElEQVRFO1xuICBrZXk6IHN0cmluZztcbn1cblxuLyogUkVTRVQgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzZXRBY3Rpb24ge1xuICB0eXBlOiB0eXBlb2YgUkVTRVQ7XG4gIGRhdGU6IG51bWJlcjtcbn1cblxuLyogR0MgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR0NBY3Rpb24ge1xuICB0eXBlOiB0eXBlb2YgR0M7XG4gIGVudGl0aWVzOiBbc3RyaW5nLCBzdHJpbmddW107XG4gIGVuZHBvaW50czogc3RyaW5nW107XG59XG5cbi8qKiBAc2VlIGh0dHBzOi8vZGF0YWNsaWVudC5pby9kb2NzL2FwaS9BY3Rpb25zICovXG5leHBvcnQgdHlwZSBBY3Rpb25UeXBlcyA9XG4gIHwgRmV0Y2hBY3Rpb25cbiAgfCBPcHRpbWlzdGljQWN0aW9uXG4gIHwgU2V0QWN0aW9uXG4gIHwgU2V0UmVzcG9uc2VBY3Rpb25cbiAgfCBTdWJzY3JpYmVBY3Rpb25cbiAgfCBVbnN1YnNjcmliZUFjdGlvblxuICB8IEludmFsaWRhdGVBY3Rpb25cbiAgfCBJbnZhbGlkYXRlQWxsQWN0aW9uXG4gIHwgRXhwaXJlQWxsQWN0aW9uXG4gIHwgUmVzZXRBY3Rpb25cbiAgfCBHQ0FjdGlvbjtcbiJdLCJtYXBwaW5ncyI6IiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EXPIREALL } from '../../actionTypes.js';
|
|
2
2
|
export function createExpireAll(testKey) {
|
|
3
3
|
return {
|
|
4
|
-
type:
|
|
4
|
+
type: EXPIREALL,
|
|
5
5
|
testKey
|
|
6
6
|
};
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJFWFBJUkVBTEwiLCJjcmVhdGVFeHBpcmVBbGwiLCJ0ZXN0S2V5IiwidHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cm9sbGVyL2FjdGlvbnMvY3JlYXRlRXhwaXJlQWxsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVYUElSRUFMTCB9IGZyb20gJy4uLy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCB0eXBlIHsgRXhwaXJlQWxsQWN0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRXhwaXJlQWxsKFxuICB0ZXN0S2V5OiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW4sXG4pOiBFeHBpcmVBbGxBY3Rpb24ge1xuICByZXR1cm4ge1xuICAgIHR5cGU6IEVYUElSRUFMTCxcbiAgICB0ZXN0S2V5LFxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxTQUFTLFFBQVEsc0JBQXNCO0FBR2hELE9BQU8sU0FBU0MsZUFBZUEsQ0FDN0JDLE9BQWlDLEVBQ2hCO0VBQ2pCLE9BQU87SUFDTEMsSUFBSSxFQUFFSCxTQUFTO0lBQ2ZFO0VBQ0YsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FETCH } from '../../actionTypes.js';
|
|
2
2
|
/**
|
|
3
3
|
* Requesting a fetch to begin
|
|
4
4
|
*/
|
|
@@ -17,11 +17,11 @@ export function createFetch(endpoint, {
|
|
|
17
17
|
promise
|
|
18
18
|
};
|
|
19
19
|
return {
|
|
20
|
-
type:
|
|
20
|
+
type: FETCH,
|
|
21
21
|
key: endpoint.key(...args),
|
|
22
22
|
args,
|
|
23
23
|
endpoint,
|
|
24
24
|
meta
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGRVRDSCIsImNyZWF0ZUZldGNoIiwiZW5kcG9pbnQiLCJhcmdzIiwicmVzb2x2ZSIsInJlamVjdCIsInByb21pc2UiLCJQcm9taXNlIiwiYSIsImIiLCJtZXRhIiwiZmV0Y2hlZEF0IiwiRGF0ZSIsIm5vdyIsInR5cGUiLCJrZXkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9hY3Rpb25zL2NyZWF0ZUZldGNoLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRW5kcG9pbnRJbnRlcmZhY2UsIE5JIH0gZnJvbSAnQGRhdGEtY2xpZW50L25vcm1hbGl6cic7XG5cbmltcG9ydCB7IEZFVENIIH0gZnJvbSAnLi4vLi4vYWN0aW9uVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBGZXRjaEFjdGlvbiwgRmV0Y2hNZXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMuanMnO1xuaW1wb3J0IHsgRW5kcG9pbnRVcGRhdGVGdW5jdGlvbiB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuLyoqXG4gKiBSZXF1ZXN0aW5nIGEgZmV0Y2ggdG8gYmVnaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZldGNoPFxuICBFIGV4dGVuZHMgRW5kcG9pbnRJbnRlcmZhY2UgJiB7IHVwZGF0ZT86IEVuZHBvaW50VXBkYXRlRnVuY3Rpb248RT4gfSxcbj4oXG4gIGVuZHBvaW50OiBFLFxuICB7IGFyZ3MgfTogeyBhcmdzOiByZWFkb25seSBbLi4uUGFyYW1ldGVyczxFPl0gfSxcbik6IEZldGNoQWN0aW9uPEU+IHtcbiAgbGV0IHJlc29sdmU6ICh2YWx1ZT86IGFueSB8IFByb21pc2VMaWtlPGFueT4pID0+IHZvaWQgPSAwIGFzIGFueTtcbiAgbGV0IHJlamVjdDogKHJlYXNvbj86IGFueSkgPT4gdm9pZCA9IDAgYXMgYW55O1xuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8YW55PigoYSwgYikgPT4ge1xuICAgIFtyZXNvbHZlLCByZWplY3RdID0gW2EsIGJdO1xuICB9KTtcbiAgY29uc3QgbWV0YTogRmV0Y2hNZXRhID0ge1xuICAgIGZldGNoZWRBdDogRGF0ZS5ub3coKSxcbiAgICByZXNvbHZlLFxuICAgIHJlamVjdCxcbiAgICBwcm9taXNlLFxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgdHlwZTogRkVUQ0gsXG4gICAga2V5OiBlbmRwb2ludC5rZXkoLi4uYXJncyksXG4gICAgYXJncyxcbiAgICBlbmRwb2ludCxcbiAgICBtZXRhLFxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxLQUFLLFFBQVEsc0JBQXNCO0FBSTVDO0FBQ0E7QUFDQTtBQUNBLE9BQU8sU0FBU0MsV0FBV0EsQ0FHekJDLFFBQVcsRUFDWDtFQUFFQztBQUE0QyxDQUFDLEVBQy9CO0VBQ2hCLElBQUlDLE9BQWlELEdBQUcsQ0FBUTtFQUNoRSxJQUFJQyxNQUE4QixHQUFHLENBQVE7RUFDN0MsTUFBTUMsT0FBTyxHQUFHLElBQUlDLE9BQU8sQ0FBTSxDQUFDQyxDQUFDLEVBQUVDLENBQUMsS0FBSztJQUN6QyxDQUFDTCxPQUFPLEVBQUVDLE1BQU0sQ0FBQyxHQUFHLENBQUNHLENBQUMsRUFBRUMsQ0FBQyxDQUFDO0VBQzVCLENBQUMsQ0FBQztFQUNGLE1BQU1DLElBQWUsR0FBRztJQUN0QkMsU0FBUyxFQUFFQyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCVCxPQUFPO0lBQ1BDLE1BQU07SUFDTkM7RUFDRixDQUFDO0VBRUQsT0FBTztJQUNMUSxJQUFJLEVBQUVkLEtBQUs7SUFDWGUsR0FBRyxFQUFFYixRQUFRLENBQUNhLEdBQUcsQ0FBQyxHQUFHWixJQUFJLENBQUM7SUFDMUJBLElBQUk7SUFDSkQsUUFBUTtJQUNSUTtFQUNGLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { INVALIDATE } from '../../actionTypes.js';
|
|
2
2
|
export function createInvalidate(endpoint, {
|
|
3
3
|
args
|
|
4
4
|
}) {
|
|
5
5
|
return {
|
|
6
|
-
type:
|
|
6
|
+
type: INVALIDATE,
|
|
7
7
|
key: endpoint.key(...args)
|
|
8
8
|
};
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJTlZBTElEQVRFIiwiY3JlYXRlSW52YWxpZGF0ZSIsImVuZHBvaW50IiwiYXJncyIsInR5cGUiLCJrZXkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9hY3Rpb25zL2NyZWF0ZUludmFsaWRhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFbmRwb2ludEludGVyZmFjZSB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuXG5pbXBvcnQgeyBJTlZBTElEQVRFIH0gZnJvbSAnLi4vLi4vYWN0aW9uVHlwZXMuanMnO1xuaW1wb3J0IHR5cGUgeyBJbnZhbGlkYXRlQWN0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSW52YWxpZGF0ZTxFIGV4dGVuZHMgRW5kcG9pbnRJbnRlcmZhY2U+KFxuICBlbmRwb2ludDogRSxcbiAgeyBhcmdzIH06IHsgYXJnczogcmVhZG9ubHkgWy4uLlBhcmFtZXRlcnM8RT5dIH0sXG4pOiBJbnZhbGlkYXRlQWN0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBJTlZBTElEQVRFLFxuICAgIGtleTogZW5kcG9pbnQua2V5KC4uLmFyZ3MpLFxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxVQUFVLFFBQVEsc0JBQXNCO0FBR2pELE9BQU8sU0FBU0MsZ0JBQWdCQSxDQUM5QkMsUUFBVyxFQUNYO0VBQUVDO0FBQTRDLENBQUMsRUFDN0I7RUFDbEIsT0FBTztJQUNMQyxJQUFJLEVBQUVKLFVBQVU7SUFDaEJLLEdBQUcsRUFBRUgsUUFBUSxDQUFDRyxHQUFHLENBQUMsR0FBR0YsSUFBSTtFQUMzQixDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { INVALIDATEALL } from '../../actionTypes.js';
|
|
2
2
|
export function createInvalidateAll(testKey) {
|
|
3
3
|
return {
|
|
4
|
-
type:
|
|
4
|
+
type: INVALIDATEALL,
|
|
5
5
|
testKey
|
|
6
6
|
};
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJTlZBTElEQVRFQUxMIiwiY3JlYXRlSW52YWxpZGF0ZUFsbCIsInRlc3RLZXkiLCJ0eXBlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyb2xsZXIvYWN0aW9ucy9jcmVhdGVJbnZhbGlkYXRlQWxsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElOVkFMSURBVEVBTEwgfSBmcm9tICcuLi8uLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IEludmFsaWRhdGVBbGxBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVJbnZhbGlkYXRlQWxsKFxuICB0ZXN0S2V5OiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW4sXG4pOiBJbnZhbGlkYXRlQWxsQWN0aW9uIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBJTlZBTElEQVRFQUxMLFxuICAgIHRlc3RLZXksXG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLGFBQWEsUUFBUSxzQkFBc0I7QUFHcEQsT0FBTyxTQUFTQyxtQkFBbUJBLENBQ2pDQyxPQUFpQyxFQUNaO0VBQ3JCLE9BQU87SUFDTEMsSUFBSSxFQUFFSCxhQUFhO0lBQ25CRTtFQUNGLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createMeta } from './createMeta.js';
|
|
2
|
-
import {
|
|
2
|
+
import { OPTIMISTIC } from '../../actionTypes.js';
|
|
3
3
|
export function createOptimistic(endpoint, args, fetchedAt) {
|
|
4
4
|
var _endpoint$dataExpiryL, _endpoint$dataExpiryL2;
|
|
5
5
|
/* istanbul ignore next */
|
|
@@ -7,11 +7,11 @@ export function createOptimistic(endpoint, args, fetchedAt) {
|
|
|
7
7
|
throw new Error('Negative expiry length are not allowed.');
|
|
8
8
|
}
|
|
9
9
|
return {
|
|
10
|
-
type:
|
|
10
|
+
type: OPTIMISTIC,
|
|
11
11
|
key: endpoint.key(...args),
|
|
12
12
|
args,
|
|
13
13
|
endpoint,
|
|
14
14
|
meta: createMeta((_endpoint$dataExpiryL2 = endpoint.dataExpiryLength) != null ? _endpoint$dataExpiryL2 : 60000, fetchedAt)
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVNZXRhIiwiT1BUSU1JU1RJQyIsImNyZWF0ZU9wdGltaXN0aWMiLCJlbmRwb2ludCIsImFyZ3MiLCJmZXRjaGVkQXQiLCJfZW5kcG9pbnQkZGF0YUV4cGlyeUwiLCJfZW5kcG9pbnQkZGF0YUV4cGlyeUwyIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZGF0YUV4cGlyeUxlbmd0aCIsIkVycm9yIiwidHlwZSIsImtleSIsIm1ldGEiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udHJvbGxlci9hY3Rpb25zL2NyZWF0ZU9wdGltaXN0aWMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFbmRwb2ludEludGVyZmFjZSB9IGZyb20gJ0BkYXRhLWNsaWVudC9ub3JtYWxpenInO1xuXG5pbXBvcnQgeyBjcmVhdGVNZXRhIH0gZnJvbSAnLi9jcmVhdGVNZXRhLmpzJztcbmltcG9ydCB7IE9QVElNSVNUSUMgfSBmcm9tICcuLi8uLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IE9wdGltaXN0aWNBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IEVuZHBvaW50VXBkYXRlRnVuY3Rpb24gfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVPcHRpbWlzdGljPFxuICBFIGV4dGVuZHMgRW5kcG9pbnRJbnRlcmZhY2UgJiB7XG4gICAgdXBkYXRlPzogRW5kcG9pbnRVcGRhdGVGdW5jdGlvbjxFPjtcbiAgfSxcbj4oXG4gIGVuZHBvaW50OiBFLFxuICBhcmdzOiByZWFkb25seSBbLi4uUGFyYW1ldGVyczxFPl0sXG4gIGZldGNoZWRBdDogbnVtYmVyLFxuKTogT3B0aW1pc3RpY0FjdGlvbjxFPiB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmIChcbiAgICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50JyAmJlxuICAgIChlbmRwb2ludC5kYXRhRXhwaXJ5TGVuZ3RoID8/IDApIDwgMFxuICApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05lZ2F0aXZlIGV4cGlyeSBsZW5ndGggYXJlIG5vdCBhbGxvd2VkLicpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBPUFRJTUlTVElDLFxuICAgIGtleTogZW5kcG9pbnQua2V5KC4uLmFyZ3MpLFxuICAgIGFyZ3MsXG4gICAgZW5kcG9pbnQsXG4gICAgbWV0YTogY3JlYXRlTWV0YShlbmRwb2ludC5kYXRhRXhwaXJ5TGVuZ3RoID8/IDYwMDAwLCBmZXRjaGVkQXQpLFxuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxVQUFVLFFBQVEsaUJBQWlCO0FBQzVDLFNBQVNDLFVBQVUsUUFBUSxzQkFBc0I7QUFJakQsT0FBTyxTQUFTQyxnQkFBZ0JBLENBSzlCQyxRQUFXLEVBQ1hDLElBQWlDLEVBQ2pDQyxTQUFpQixFQUNJO0VBQUEsSUFBQUMscUJBQUEsRUFBQUMsc0JBQUE7RUFDckI7RUFDQSxJQUNFQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLGFBQWEsSUFDdEMsRUFBQUoscUJBQUEsR0FBQ0gsUUFBUSxDQUFDUSxnQkFBZ0IsWUFBQUwscUJBQUEsR0FBSSxDQUFDLElBQUksQ0FBQyxFQUNwQztJQUNBLE1BQU0sSUFBSU0sS0FBSyxDQUFDLHlDQUF5QyxDQUFDO0VBQzVEO0VBRUEsT0FBTztJQUNMQyxJQUFJLEVBQUVaLFVBQVU7SUFDaEJhLEdBQUcsRUFBRVgsUUFBUSxDQUFDVyxHQUFHLENBQUMsR0FBR1YsSUFBSSxDQUFDO0lBQzFCQSxJQUFJO0lBQ0pELFFBQVE7SUFDUlksSUFBSSxFQUFFZixVQUFVLEVBQUFPLHNCQUFBLEdBQUNKLFFBQVEsQ0FBQ1EsZ0JBQWdCLFlBQUFKLHNCQUFBLEdBQUksS0FBSyxFQUFFRixTQUFTO0VBQ2hFLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RESET } from '../../actionTypes.js';
|
|
2
2
|
export function createReset() {
|
|
3
3
|
return {
|
|
4
|
-
type:
|
|
4
|
+
type: RESET,
|
|
5
5
|
date: Date.now()
|
|
6
6
|
};
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSRVNFVCIsImNyZWF0ZVJlc2V0IiwidHlwZSIsImRhdGUiLCJEYXRlIiwibm93Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyb2xsZXIvYWN0aW9ucy9jcmVhdGVSZXNldC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSRVNFVCB9IGZyb20gJy4uLy4uL2FjdGlvblR5cGVzLmpzJztcbmltcG9ydCB0eXBlIHsgUmVzZXRBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZXNldCgpOiBSZXNldEFjdGlvbiB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogUkVTRVQsXG4gICAgZGF0ZTogRGF0ZS5ub3coKSxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsS0FBSyxRQUFRLHNCQUFzQjtBQUc1QyxPQUFPLFNBQVNDLFdBQVdBLENBQUEsRUFBZ0I7RUFDekMsT0FBTztJQUNMQyxJQUFJLEVBQUVGLEtBQUs7SUFDWEcsSUFBSSxFQUFFQyxJQUFJLENBQUNDLEdBQUcsQ0FBQztFQUNqQixDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createMeta } from './createMeta.js';
|
|
2
|
-
import {
|
|
2
|
+
import { SET } from '../../actionTypes.js';
|
|
3
3
|
import ensurePojo from '../ensurePojo.js';
|
|
4
4
|
export function createSet(schema, {
|
|
5
5
|
args,
|
|
@@ -7,11 +7,11 @@ export function createSet(schema, {
|
|
|
7
7
|
value
|
|
8
8
|
}) {
|
|
9
9
|
return {
|
|
10
|
-
type:
|
|
10
|
+
type: SET,
|
|
11
11
|
value,
|
|
12
12
|
args: args.map(ensurePojo),
|
|
13
13
|
schema,
|
|
14
14
|
meta: createMeta(60000, fetchedAt)
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVNZXRhIiwiU0VUIiwiZW5zdXJlUG9qbyIsImNyZWF0ZVNldCIsInNjaGVtYSIsImFyZ3MiLCJmZXRjaGVkQXQiLCJ2YWx1ZSIsInR5cGUiLCJtYXAiLCJtZXRhIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRyb2xsZXIvYWN0aW9ucy9jcmVhdGVTZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEZW5vcm1hbGl6ZSxcbiAgUXVlcnlhYmxlLFxuICBTY2hlbWFBcmdzLFxufSBmcm9tICdAZGF0YS1jbGllbnQvbm9ybWFsaXpyJztcblxuaW1wb3J0IHsgY3JlYXRlTWV0YSB9IGZyb20gJy4vY3JlYXRlTWV0YS5qcyc7XG5pbXBvcnQgeyBTRVQgfSBmcm9tICcuLi8uLi9hY3Rpb25UeXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNldEFjdGlvbiB9IGZyb20gJy4uLy4uL3R5cGVzLmpzJztcbmltcG9ydCBlbnN1cmVQb2pvIGZyb20gJy4uL2Vuc3VyZVBvam8uanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2V0PFMgZXh0ZW5kcyBRdWVyeWFibGU+KFxuICBzY2hlbWE6IFMsXG4gIHtcbiAgICBhcmdzLFxuICAgIGZldGNoZWRBdCxcbiAgICB2YWx1ZSxcbiAgfToge1xuICAgIGFyZ3M6IHJlYWRvbmx5IFsuLi5TY2hlbWFBcmdzPFM+XTtcbiAgICB2YWx1ZToge30gfCAoKHByZXZpb3VzVmFsdWU6IERlbm9ybWFsaXplPFM+KSA9PiB7fSk7XG4gICAgZmV0Y2hlZEF0PzogbnVtYmVyO1xuICB9LFxuKTogU2V0QWN0aW9uPFM+IHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiBTRVQsXG4gICAgdmFsdWUsXG4gICAgYXJnczogYXJncy5tYXAoZW5zdXJlUG9qbykgYXMgU2NoZW1hQXJnczxTPixcbiAgICBzY2hlbWEsXG4gICAgbWV0YTogY3JlYXRlTWV0YSg2MDAwMCwgZmV0Y2hlZEF0KSxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBTUEsU0FBU0EsVUFBVSxRQUFRLGlCQUFpQjtBQUM1QyxTQUFTQyxHQUFHLFFBQVEsc0JBQXNCO0FBRTFDLE9BQU9DLFVBQVUsTUFBTSxrQkFBa0I7QUFFekMsT0FBTyxTQUFTQyxTQUFTQSxDQUN2QkMsTUFBUyxFQUNUO0VBQ0VDLElBQUk7RUFDSkMsU0FBUztFQUNUQztBQUtGLENBQUMsRUFDYTtFQUNkLE9BQU87SUFDTEMsSUFBSSxFQUFFUCxHQUFHO0lBQ1RNLEtBQUs7SUFDTEYsSUFBSSxFQUFFQSxJQUFJLENBQUNJLEdBQUcsQ0FBQ1AsVUFBVSxDQUFrQjtJQUMzQ0UsTUFBTTtJQUNOTSxJQUFJLEVBQUVWLFVBQVUsQ0FBQyxLQUFLLEVBQUVNLFNBQVM7RUFDbkMsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
|