pocketbase-react 0.1.12 → 0.1.14
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/dist/pocketbase-react.js +42 -23
- package/dist/pocketbase-react.min.js +3 -3
- package/es/context/content.d.ts +1 -1
- package/es/context/content.js +34 -19
- package/es/hooks/useAppContent.d.ts +1 -1
- package/es/hooks/useAppContent.js +5 -4
- package/es/service/Storage.d.ts +3 -0
- package/es/service/Storage.js +4 -1
- package/lib/context/content.js +34 -19
- package/lib/hooks/useAppContent.js +5 -4
- package/lib/service/Storage.js +4 -1
- package/package.json +1 -1
- package/src/context/content.tsx +38 -21
- package/src/hooks/useAppContent.ts +6 -5
- package/src/service/Storage.ts +5 -0
package/dist/pocketbase-react.js
CHANGED
|
@@ -5944,6 +5944,9 @@
|
|
|
5944
5944
|
}
|
|
5945
5945
|
}
|
|
5946
5946
|
}
|
|
5947
|
+
StorageService.Constants = {
|
|
5948
|
+
SUBSCRIBED: "subscribed"
|
|
5949
|
+
};
|
|
5947
5950
|
|
|
5948
5951
|
const CustomStorage = {
|
|
5949
5952
|
getItem: async (key, ..._args) => {
|
|
@@ -5980,9 +5983,11 @@
|
|
|
5980
5983
|
const ContentProvider = props => {
|
|
5981
5984
|
const client = useClientContext();
|
|
5982
5985
|
const dispatch = useAppDispatch;
|
|
5983
|
-
const [collections, _] = react.useState(props.collections || []);
|
|
5984
5986
|
const actions = {
|
|
5985
5987
|
subscribe: async collectionName => {
|
|
5988
|
+
var _await$StorageService;
|
|
5989
|
+
const subscribedCollectionsString = (_await$StorageService = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
5990
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
5986
5991
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
5987
5992
|
switch (event.action) {
|
|
5988
5993
|
case 'create':
|
|
@@ -5995,22 +6000,31 @@
|
|
|
5995
6000
|
dispatch(deleteRecord$1(collectionName, event.record));
|
|
5996
6001
|
break;
|
|
5997
6002
|
}
|
|
5998
|
-
}).then(
|
|
5999
|
-
|
|
6000
|
-
|
|
6003
|
+
}).then(() => {
|
|
6004
|
+
if (!subscribedCollections.includes(collectionName)) {
|
|
6005
|
+
subscribedCollections.push(collectionName);
|
|
6006
|
+
}
|
|
6007
|
+
}).catch(_error => {
|
|
6008
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
6009
|
+
}));
|
|
6010
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
6001
6011
|
},
|
|
6002
|
-
unsubscribe: collectionName => {
|
|
6012
|
+
unsubscribe: async collectionName => {
|
|
6013
|
+
var _await$StorageService2;
|
|
6014
|
+
const subscribedCollectionsString = (_await$StorageService2 = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService2 : JSON.stringify([]);
|
|
6015
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
6003
6016
|
if (collectionName) {
|
|
6004
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(
|
|
6005
|
-
|
|
6006
|
-
|
|
6007
|
-
|
|
6008
|
-
})
|
|
6017
|
+
await (client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(() => {
|
|
6018
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
6019
|
+
}).catch(_error => {
|
|
6020
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
6021
|
+
}));
|
|
6009
6022
|
} else {
|
|
6010
|
-
client == null ? void 0 : client.realtime.unsubscribe().then(
|
|
6011
|
-
|
|
6012
|
-
}).catch(_error => {});
|
|
6023
|
+
await (client == null ? void 0 : client.realtime.unsubscribe().then(() => {
|
|
6024
|
+
subscribedCollections = [];
|
|
6025
|
+
}).catch(_error => {}));
|
|
6013
6026
|
}
|
|
6027
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
6014
6028
|
},
|
|
6015
6029
|
fetch: async collectionName => {
|
|
6016
6030
|
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
@@ -6027,14 +6041,18 @@
|
|
|
6027
6041
|
}
|
|
6028
6042
|
};
|
|
6029
6043
|
react.useEffect(() => {
|
|
6030
|
-
if (collections) {
|
|
6031
|
-
collections.forEach(collectionName => {
|
|
6032
|
-
actions.fetch(collectionName);
|
|
6033
|
-
actions.subscribe(collectionName);
|
|
6044
|
+
if (props.collections) {
|
|
6045
|
+
props.collections.forEach(async collectionName => {
|
|
6046
|
+
await actions.fetch(collectionName);
|
|
6047
|
+
await actions.subscribe(collectionName);
|
|
6034
6048
|
});
|
|
6035
6049
|
}
|
|
6036
|
-
return () =>
|
|
6037
|
-
|
|
6050
|
+
return () => {
|
|
6051
|
+
(async () => {
|
|
6052
|
+
await actions.unsubscribe();
|
|
6053
|
+
})();
|
|
6054
|
+
};
|
|
6055
|
+
}, [props.collections]);
|
|
6038
6056
|
return /*#__PURE__*/react.createElement(ContentContext.Provider, {
|
|
6039
6057
|
value: {
|
|
6040
6058
|
actions
|
|
@@ -6247,8 +6265,9 @@
|
|
|
6247
6265
|
const [isSubscribed, setIsSubscribed] = react.useState(false);
|
|
6248
6266
|
async function refetchSubscribeState() {
|
|
6249
6267
|
var _await$StorageService;
|
|
6250
|
-
const
|
|
6251
|
-
|
|
6268
|
+
const subscribedCollectionsString = (_await$StorageService = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
6269
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
6270
|
+
setIsSubscribed(subscribedCollections.includes(collectionName));
|
|
6252
6271
|
}
|
|
6253
6272
|
react.useEffect(() => {
|
|
6254
6273
|
(async () => {
|
|
@@ -6260,9 +6279,9 @@
|
|
|
6260
6279
|
await context.actions.subscribe(collectionName);
|
|
6261
6280
|
await refetchSubscribeState();
|
|
6262
6281
|
},
|
|
6263
|
-
unsubscribe: () => {
|
|
6282
|
+
unsubscribe: async () => {
|
|
6264
6283
|
context.actions.unsubscribe(collectionName);
|
|
6265
|
-
refetchSubscribeState();
|
|
6284
|
+
await refetchSubscribeState();
|
|
6266
6285
|
},
|
|
6267
6286
|
fetch: async () => await context.actions.fetch(collectionName),
|
|
6268
6287
|
create: async record => await context.actions.create(collectionName, record),
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* This source code is licensed under the MIT license found in the
|
|
9
9
|
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*/()}},r.exports),r.exports}var c=Symbol.for("react.element"),a=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),p=Symbol.for("react.provider"),y=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),m=Symbol.iterator;var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},O=Object.assign,w={};function S(e,t,r){this.props=e,this.context=t,this.refs=w,this.updater=r||g}function P(){}function E(e,t,r){this.props=e,this.context=t,this.refs=w,this.updater=r||g}S.prototype.isReactComponent={},S.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},S.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},P.prototype=S.prototype;var j=E.prototype=new P;j.constructor=E,O(j,S.prototype),j.isPureReactComponent=!0;var _=Array.isArray,R=Object.prototype.hasOwnProperty,x={current:null},k={key:!0,ref:!0,__self:!0,__source:!0};function A(e,t,r){var n,o={},i=null,u=null;if(null!=t)for(n in void 0!==t.ref&&(u=t.ref),void 0!==t.key&&(i=""+t.key),t)R.call(t,n)&&!k.hasOwnProperty(n)&&(o[n]=t[n]);var a=arguments.length-2;if(1===a)o.children=r;else if(a>1){for(var s=Array(a),f=0;a>f;f++)s[f]=arguments[f+2];o.children=s}if(e&&e.defaultProps)for(n in a=e.defaultProps)void 0===o[n]&&(o[n]=a[n]);return{$$typeof:c,type:e,key:i,ref:u,props:o,_owner:x.current}}function C(e){return"object"==typeof e&&null!==e&&e.$$typeof===c}var D=/\/+/g;function $(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function I(e,t,r,n,o){var i=typeof e;"undefined"!==i&&"boolean"!==i||(e=null);var u=!1;if(null===e)u=!0;else switch(i){case"string":case"number":u=!0;break;case"object":switch(e.$$typeof){case c:case a:u=!0}}if(u)return o=o(u=e),e=""===n?"."+$(u,0):n,_(o)?(r="",null!=e&&(r=e.replace(D,"$&/")+"/"),I(o,t,r,"",(function(e){return e}))):null!=o&&(C(o)&&(o=function(e,t){return{$$typeof:c,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(o,r+(!o.key||u&&u.key===o.key?"":(""+o.key).replace(D,"$&/")+"/")+e)),t.push(o)),1;if(u=0,n=""===n?".":n+":",_(e))for(var s=0;e.length>s;s++){var f=n+$(i=e[s],s);u+=I(i,t,r,f,o)}else if(f=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=m&&e[m]||e["@@iterator"])?e:null}(e),"function"==typeof f)for(e=f.call(e),s=0;!(i=e.next()).done;)u+=I(i=i.value,t,r,f=n+$(i,s++),o);else if("object"===i)throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(t=e+"")?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return u}function N(e,t,r){if(null==e)return e;var n=[],o=0;return I(e,n,"","",(function(e){return t.call(r,e,o++)})),n}function T(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var U={current:null},M={transition:null},L={map:N,forEach:function(e,t,r){N(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return N(e,(function(){t++})),t},toArray:function(e){return N(e,(function(e){return e}))||[]},only:function(e){if(!C(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},F={Children:L,Component:S,Fragment:s,Profiler:l,PureComponent:E,StrictMode:f,Suspense:b,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{ReactCurrentDispatcher:U,ReactCurrentBatchConfig:M,ReactCurrentOwner:x},cloneElement:function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var n=O({},e.props),o=e.key,i=e.ref,u=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,u=x.current),void 0!==t.key&&(o=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(s in t)R.call(t,s)&&!k.hasOwnProperty(s)&&(n[s]=void 0===t[s]&&void 0!==a?a[s]:t[s])}var s=arguments.length-2;if(1===s)n.children=r;else if(s>1){a=Array(s);for(var f=0;s>f;f++)a[f]=arguments[f+2];n.children=a}return{$$typeof:c,type:e.type,key:o,ref:i,props:n,_owner:u}},createContext:function(e){return(e={$$typeof:y,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:p,_context:e},e.Consumer=e},createElement:A,createFactory:function(e){var t=A.bind(null,e);return t.type=e,t},createRef:function(){return{current:null}},forwardRef:function(e){return{$$typeof:d,render:e}},isValidElement:C,lazy:function(e){return{$$typeof:h,_payload:{_status:-1,_result:e},_init:T}},memo:function(e,t){return{$$typeof:v,type:e,compare:void 0===t?null:t}},startTransition:function(e){var t=M.transition;M.transition={};try{e()}finally{M.transition=t}},unstable_act:function(){throw Error("act(...) is not supported in production builds of React.")},useCallback:function(e,t){return U.current.useCallback(e,t)},useContext:function(e){return U.current.useContext(e)},useDebugValue:function(){},useDeferredValue:function(e){return U.current.useDeferredValue(e)},useEffect:function(e,t){return U.current.useEffect(e,t)},useId:function(){return U.current.useId()},useImperativeHandle:function(e,t,r){return U.current.useImperativeHandle(e,t,r)},useInsertionEffect:function(e,t){return U.current.useInsertionEffect(e,t)},useLayoutEffect:function(e,t){return U.current.useLayoutEffect(e,t)},useMemo:function(e,t){return U.current.useMemo(e,t)},useReducer:function(e,t,r){return U.current.useReducer(e,t,r)},useRef:function(e){return U.current.useRef(e)},useState:function(e){return U.current.useState(e)},useSyncExternalStore:function(e,t,r){return U.current.useSyncExternalStore(e,t,r)},useTransition:function(){return U.current.useTransition()},version:"18.0.0-fc46dba67-20220329"},z=u((function(e){e.exports=F}));const V="SET_RECORDS",J="ADD_RECORD",W="ADD_RECORDS",q="UPDATE_RECORD",K="DELETE_RECORD",B="DELETE_RECORDS",H=(e,t)=>({type:V,key:e,payload:t}),X=(e,t)=>({type:J,key:e,payload:t}),G=(e,t)=>({type:K,key:e,payload:t}),Y=(e,t)=>({type:q,key:e,payload:t});var Q=Object.freeze({__proto__:null,setRecords:H,addRecord:X,addRecords:(e,t)=>({type:W,key:e,payload:t}),deleteRecord:G,deleteRecords:(e,t)=>({type:B,key:e,payload:t}),updateRecord:Y});function Z(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function te(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(r),!0).forEach((function(t){Z(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function re(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var ne="function"==typeof Symbol&&Symbol.observable||"@@observable",oe=function(){return Math.random().toString(36).substring(7).split("").join(".")},ie={INIT:"@@redux/INIT"+oe(),REPLACE:"@@redux/REPLACE"+oe(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+oe()}};function ue(e){if("object"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function ce(e,t,r){var n;if("function"==typeof t&&"function"==typeof r||"function"==typeof r&&"function"==typeof arguments[3])throw Error(re(0));if("function"==typeof t&&void 0===r&&(r=t,t=void 0),void 0!==r){if("function"!=typeof r)throw Error(re(1));return r(ce)(e,t)}if("function"!=typeof e)throw Error(re(2));var o=e,i=t,u=[],c=u,a=!1;function s(){c===u&&(c=u.slice())}function f(){if(a)throw Error(re(3));return i}function l(e){if("function"!=typeof e)throw Error(re(4));if(a)throw Error(re(5));var t=!0;return s(),c.push(e),function(){if(t){if(a)throw Error(re(6));t=!1,s();var r=c.indexOf(e);c.splice(r,1),u=null}}}function p(e){if(!ue(e))throw Error(re(7));if(void 0===e.type)throw Error(re(8));if(a)throw Error(re(9));try{a=!0,i=o(i,e)}finally{a=!1}for(var t=u=c,r=0;t.length>r;r++){(0,t[r])()}return e}function y(e){if("function"!=typeof e)throw Error(re(10));o=e,p({type:ie.REPLACE})}function d(){var e,t=l;return(e={subscribe:function(e){if("object"!=typeof e||null===e)throw Error(re(11));function r(){e.next&&e.next(f())}return r(),{unsubscribe:t(r)}}})[ne]=function(){return this},e}return p({type:ie.INIT}),(n={dispatch:p,subscribe:l,getState:f,replaceReducer:y})[ne]=d,n}function ae(e){for(var t=Object.keys(e),r={},n=0;t.length>n;n++){var o=t[n];"function"==typeof e[o]&&(r[o]=e[o])}var i,u=Object.keys(r);try{!function(e){Object.keys(e).forEach((function(t){var r=e[t];if(void 0===r(void 0,{type:ie.INIT}))throw Error(re(12));if(void 0===r(void 0,{type:ie.PROBE_UNKNOWN_ACTION()}))throw Error(re(13))}))}(r)}catch(e){i=e}return function(e,t){if(void 0===e&&(e={}),i)throw i;for(var n=!1,o={},c=0;u.length>c;c++){var a=u[c],s=e[a],f=(0,r[a])(s,t);if(void 0===f)throw Error(re(14));o[a]=f,n=n||f!==s}return(n=n||u.length!==Object.keys(e).length)?o:e}}function se(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce((function(e,t){return function(){return e(t.apply(void 0,arguments))}}))}function fe(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return function(e){return function(){var r=e.apply(void 0,arguments),n=function(){throw Error(re(15))},o={getState:r.getState,dispatch:function(){return n.apply(void 0,arguments)}},i=t.map((function(e){return e(o)}));return n=se.apply(void 0,i)(r.dispatch),te(te({},r),{},{dispatch:n})}}}function le(){return le=Object.assign?Object.assign.bind():function(e){for(var t=1;arguments.length>t;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},le.apply(this,arguments)}function pe(e,t){return[...t,e]}function ye(e,t){return[...t,...e]}function de(e,t){return t.map((t=>t.id===e.id?e:t))}function be(e,t){return t.filter((t=>t.id!==e.id))}function ve(e,t){return t.filter((t=>!e.includes(t)))}const he=ae({records:(e={},t)=>{var r;const n=null!=(r=e[t.key])?r:[];switch(t.type){case V:if(Array.isArray(t.payload))return le({},e,{[t.key]:t.payload});case J:return le({},e,{[t.key]:pe(t.payload,n)});case W:return le({},e,{[t.key]:ye(t.payload,n)});case K:return le({},e,{[t.key]:be(t.payload,n)});case B:return le({},e,{[t.key]:ve(t.payload,n)});case q:return le({},e,{[t.key]:de(t.payload,n)});default:return e}}});function me(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;t>n;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map((function(e){return"'"+e+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function ge(e){return!!e&&!!e[it]}function Oe(e){return!!e&&(function(e){if(!e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;var r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return r===Object||"function"==typeof r&&Function.toString.call(r)===ut}(e)||Array.isArray(e)||!!e[ot]||!!e.constructor[ot]||_e(e)||Re(e))}function we(e,t,r){void 0===r&&(r=!1),0===Se(e)?(r?Object.keys:ct)(e).forEach((function(n){r&&"symbol"==typeof n||t(n,e[n],e)})):e.forEach((function(r,n){return t(n,r,e)}))}function Se(e){var t=e[it];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:_e(e)?2:Re(e)?3:0}function Pe(e,t){return 2===Se(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ee(e,t,r){var n=Se(e);2===n?e.set(t,r):3===n?(e.delete(t),e.add(r)):e[t]=r}function je(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function _e(e){return et&&e instanceof Map}function Re(e){return tt&&e instanceof Set}function xe(e){return e.o||e.t}function ke(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=at(e);delete t[it];for(var r=ct(t),n=0;r.length>n;n++){var o=r[n],i=t[o];!1===i.writable&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(t[o]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function Ae(e,t){return void 0===t&&(t=!1),De(e)||ge(e)||!Oe(e)||(Se(e)>1&&(e.set=e.add=e.clear=e.delete=Ce),Object.freeze(e),t&&we(e,(function(e,t){return Ae(t,!0)}),!0)),e}function Ce(){me(2)}function De(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function $e(e){var t=st[e];return t||me(18,e),t}function Ie(){return Qe}function Ne(e,t){t&&($e("Patches"),e.u=[],e.s=[],e.v=t)}function Te(e){Ue(e),e.p.forEach(Le),e.p=null}function Ue(e){e===Qe&&(Qe=e.l)}function Me(e){return Qe={p:[],l:Qe,h:e,m:!0,_:0}}function Le(e){var t=e[it];0===t.i||1===t.i?t.j():t.O=!0}function Fe(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.g||$e("ES5").S(t,e,n),n?(r[it].P&&(Te(t),me(4)),Oe(e)&&(e=ze(t,e),t.l||Je(t,e)),t.u&&$e("Patches").M(r[it].t,e,t.u,t.s)):e=ze(t,r,[]),Te(t),t.u&&t.v(t.u,t.s),e!==nt?e:void 0}function ze(e,t,r){if(De(t))return t;var n=t[it];if(!n)return we(t,(function(o,i){return Ve(e,n,t,o,i,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return Je(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var o=4===n.i||5===n.i?n.o=ke(n.k):n.o;we(3===n.i?new Set(o):o,(function(t,i){return Ve(e,n,o,t,i,r)})),Je(e,o,!1),r&&e.u&&$e("Patches").R(n,r,e.u,e.s)}return n.o}function Ve(e,t,r,n,o,i){if(ge(o)){var u=ze(e,o,i&&t&&3!==t.i&&!Pe(t.D,n)?i.concat(n):void 0);if(Ee(r,n,u),!ge(u))return;e.m=!1}if(Oe(o)&&!De(o)){if(!e.h.F&&1>e._)return;ze(e,o),t&&t.A.l||Je(e,o)}}function Je(e,t,r){void 0===r&&(r=!1),e.h.F&&e.m&&Ae(t,r)}function We(e,t){var r=e[it];return(r?xe(r):e)[t]}function qe(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Ke(e){e.P||(e.P=!0,e.l&&Ke(e.l))}function Be(e){e.o||(e.o=ke(e.t))}function He(e,t,r){var n=_e(t)?$e("MapSet").N(t,r):Re(t)?$e("MapSet").T(t,r):e.g?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:Ie(),P:!1,I:!1,D:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=n,i=ft;r&&(o=[n],i=lt);var u=Proxy.revocable(o,i),c=u.revoke,a=u.proxy;return n.k=a,n.j=c,a}(t,r):$e("ES5").J(t,r);return(r?r.A:Ie()).p.push(n),n}function Xe(e){return ge(e)||me(22,e),function e(t){if(!Oe(t))return t;var r,n=t[it],o=Se(t);if(n){if(!n.P&&(4>n.i||!$e("ES5").K(n)))return n.t;n.I=!0,r=Ge(t,o),n.I=!1}else r=Ge(t,o);return we(r,(function(t,o){n&&function(e,t){return 2===Se(e)?e.get(t):e[t]}(n.t,t)===o||Ee(r,t,e(o))})),3===o?new Set(r):r}(e)}function Ge(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return ke(e)}var Ye,Qe,Ze="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),et="undefined"!=typeof Map,tt="undefined"!=typeof Set,rt="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,nt=Ze?Symbol.for("immer-nothing"):((Ye={})["immer-nothing"]=!0,Ye),ot=Ze?Symbol.for("immer-draftable"):"__$immer_draftable",it=Ze?Symbol.for("immer-state"):"__$immer_state",ut=""+Object.prototype.constructor,ct="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,at=Object.getOwnPropertyDescriptors||function(e){var t={};return ct(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},st={},ft={get:function(e,t){if(t===it)return e;var r=xe(e);if(!Pe(r,t))return function(e,t,r){var n,o=qe(t,r);return o?"value"in o?o.value:null===(n=o.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!Oe(n)?n:n===We(e.t,t)?(Be(e),e.o[t]=He(e.A.h,n,e)):n},has:function(e,t){return t in xe(e)},ownKeys:function(e){return Reflect.ownKeys(xe(e))},set:function(e,t,r){var n=qe(xe(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var o=We(xe(e),t),i=null==o?void 0:o[it];if(i&&i.t===r)return e.o[t]=r,e.D[t]=!1,!0;if(je(r,o)&&(void 0!==r||Pe(e.t,t)))return!0;Be(e),Ke(e)}return e.o[t]===r&&"number"!=typeof r&&(void 0!==r||t in e.o)||(e.o[t]=r,e.D[t]=!0,!0)},deleteProperty:function(e,t){return void 0!==We(e.t,t)||t in e.t?(e.D[t]=!1,Be(e),Ke(e)):delete e.D[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=xe(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){me(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){me(12)}},lt={};we(ft,(function(e,t){lt[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),lt.deleteProperty=function(e,t){return lt.set.call(this,e,t,void 0)},lt.set=function(e,t,r){return ft.set.call(this,e[0],t,r,e[0])};var pt=function(){function e(e){var t=this;this.g=rt,this.F=!0,this.produce=function(e,r,n){if("function"==typeof e&&"function"!=typeof r){var o=r;r=e;var i=t;return function(e){var t=this;void 0===e&&(e=o);for(var n=arguments.length,u=Array(n>1?n-1:0),c=1;n>c;c++)u[c-1]=arguments[c];return i.produce(e,(function(e){var n;return(n=r).call.apply(n,[t,e].concat(u))}))}}var u;if("function"!=typeof r&&me(6),void 0!==n&&"function"!=typeof n&&me(7),Oe(e)){var c=Me(t),a=He(t,e,void 0),s=!0;try{u=r(a),s=!1}finally{s?Te(c):Ue(c)}return"undefined"!=typeof Promise&&u instanceof Promise?u.then((function(e){return Ne(c,n),Fe(e,c)}),(function(e){throw Te(c),e})):(Ne(c,n),Fe(u,c))}if(!e||"object"!=typeof e){if(void 0===(u=r(e))&&(u=e),u===nt&&(u=void 0),t.F&&Ae(u,!0),n){var f=[],l=[];$e("Patches").M(e,u,f,l),n(f,l)}return u}me(21,e)},this.produceWithPatches=function(e,r){if("function"==typeof e)return function(r){for(var n=arguments.length,o=Array(n>1?n-1:0),i=1;n>i;i++)o[i-1]=arguments[i];return t.produceWithPatches(r,(function(t){return e.apply(void 0,[t].concat(o))}))};var n,o,i=t.produce(e,r,(function(e,t){n=e,o=t}));return"undefined"!=typeof Promise&&i instanceof Promise?i.then((function(e){return[e,n,o]})):[i,n,o]},"boolean"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),"boolean"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze)}var t=e.prototype;return t.createDraft=function(e){Oe(e)||me(8),ge(e)&&(e=Xe(e));var t=Me(this),r=He(this,e,void 0);return r[it].C=!0,Ue(t),r},t.finishDraft=function(e,t){var r=(e&&e[it]).A;return Ne(r,t),Fe(void 0,r)},t.setAutoFreeze=function(e){this.F=e},t.setUseProxies=function(e){e&&!rt&&me(20),this.g=e},t.applyPatches=function(e,t){var r;for(r=t.length-1;r>=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var o=$e("Patches").$;return ge(e)?o(e,t):this.produce(e,(function(e){return o(e,t)}))},e}(),yt=new pt;function dt(e){return function(t){var r=t.dispatch,n=t.getState;return function(t){return function(o){return"function"==typeof o?o(r,n,e):t(o)}}}}yt.produceWithPatches.bind(yt),yt.setAutoFreeze.bind(yt),yt.setUseProxies.bind(yt),yt.applyPatches.bind(yt),yt.createDraft.bind(yt),yt.finishDraft.bind(yt);var bt=dt();bt.withExtraArgument=dt;var vt,ht=bt,mt=(vt=function(e,t){return vt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},vt(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+t+" is not a constructor or null");function r(){this.constructor=e}vt(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),gt=function(e,t){for(var r=0,n=t.length,o=e.length;n>r;r++,o++)e[o]=t[r];return e},Ot=Object.defineProperty,wt=Object.getOwnPropertySymbols,St=Object.prototype.hasOwnProperty,Pt=Object.prototype.propertyIsEnumerable,Et=function(e,t,r){return t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r},jt="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?se:se.apply(null,arguments)};var _t=function(e){function t(){for(var r=[],n=0;arguments.length>n;n++)r[n]=arguments[n];var o=e.apply(this,r)||this;return Object.setPrototypeOf(o,t.prototype),o}return mt(t,e),Object.defineProperty(t,Symbol.species,{get:function(){return t},enumerable:!1,configurable:!0}),t.prototype.concat=function(){for(var t=[],r=0;arguments.length>r;r++)t[r]=arguments[r];return e.prototype.concat.apply(this,t)},t.prototype.prepend=function(){for(var e=[],r=0;arguments.length>r;r++)e[r]=arguments[r];return 1===e.length&&Array.isArray(e[0])?new(t.bind.apply(t,gt([void 0],e[0].concat(this)))):new(t.bind.apply(t,gt([void 0],e.concat(this))))},t}(Array);function Rt(){return function(e){return function(e){void 0===e&&(e={});var t=e.thunk,r=void 0===t||t;var n=new _t;r&&(!function(e){return"boolean"==typeof e}(r)?n.push(ht.withExtraArgument(r.extraArgument)):n.push(ht));return n}(e)}}!function(){function e(e,t){var r=o[e];return r?r.enumerable=t:o[e]=r={configurable:!0,enumerable:t,get:function(){return ft.get(this[it],e)},set:function(t){ft.set(this[it],e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var o=e[t][it];if(!o.P)switch(o.i){case 5:n(o)&&Ke(o);break;case 4:r(o)&&Ke(o)}}}function r(e){for(var t=e.t,r=e.k,n=ct(r),o=n.length-1;o>=0;o--){var i=n[o];if(i!==it){var u=t[i];if(void 0===u&&!Pe(t,i))return!0;var c=r[i],a=c&&c[it];if(a?a.t!==u:!je(c,u))return!0}}var s=!!t[it];return n.length!==ct(t).length+(s?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;t.length>n;n++)if(!t.hasOwnProperty(n))return!0;return!1}var o={};!function(e,t){st[e]||(st[e]=t)}("ES5",{J:function(t,r){var n=Array.isArray(t),o=function(t,r){if(t){for(var n=Array(r.length),o=0;r.length>o;o++)Object.defineProperty(n,""+o,e(o,!0));return n}var i=at(r);delete i[it];for(var u=ct(i),c=0;u.length>c;c++){var a=u[c];i[a]=e(a,t||!!i[a].enumerable)}return Object.create(Object.getPrototypeOf(r),i)}(n,t),i={i:n?5:4,A:r?r.A:Ie(),P:!1,I:!1,D:{},l:r,t:t,k:o,o:null,O:!1,C:!1};return Object.defineProperty(o,it,{value:i,writable:!0}),o},S:function(e,r,o){o?ge(r)&&r[it].A===e&&t(e.p):(e.u&&function e(t){if(t&&"object"==typeof t){var r=t[it];if(r){var o=r.t,i=r.k,u=r.D,c=r.i;if(4===c)we(i,(function(t){t!==it&&(void 0!==o[t]||Pe(o,t)?u[t]||e(i[t]):(u[t]=!0,Ke(r)))})),we(o,(function(e){void 0!==i[e]||Pe(i,e)||(u[e]=!1,Ke(r))}));else if(5===c){if(n(r)&&(Ke(r),u.length=!0),o.length>i.length)for(var a=i.length;o.length>a;a++)u[a]=!1;else for(var s=o.length;i.length>s;s++)u[s]=!0;for(var f=Math.min(i.length,o.length),l=0;f>l;l++)i.hasOwnProperty(l)||(u[l]=!0),void 0===u[l]&&e(i[l])}}}}(e.p[0]),t(e.p))},K:function(e){return 4===e.i?r(e):n(e)}})}();var xt="persist:",kt="persist/FLUSH",At="persist/REHYDRATE",Ct="persist/PAUSE",Dt="persist/PERSIST",$t="persist/PURGE",It="persist/REGISTER";function Nt(e){return Nt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nt(e)}function Tt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ut(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mt(e,t,r,n){var o=function(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Tt(r,!0).forEach((function(t){Ut(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Tt(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},r);return e&&"object"===Nt(e)&&Object.keys(e).forEach((function(n){"_persist"!==n&&t[n]===r[n]&&(o[n]=e[n])})),o}function Lt(e){var t,r=e.blacklist||null,n=e.whitelist||null,o=e.transforms||[],i=e.throttle||0,u="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key),c=e.storage;t=!1===e.serialize?function(e){return e}:"function"==typeof e.serialize?e.serialize:Ft;var a=e.writeFailHandler||null,s={},f={},l=[],p=null,y=null;function d(){if(0===l.length)return p&&clearInterval(p),void(p=null);var e=l.shift(),r=o.reduce((function(t,r){return r.in(t,e,s)}),s[e]);if(void 0!==r)try{f[e]=t(r)}catch(e){console.error("redux-persist/createPersistoid: error serializing state",e)}else delete f[e];0===l.length&&(Object.keys(f).forEach((function(e){void 0===s[e]&&delete f[e]})),y=c.setItem(u,t(f)).catch(v))}function b(e){return(!n||-1!==n.indexOf(e)||"_persist"===e)&&(!r||-1===r.indexOf(e))}function v(e){a&&a(e)}return{update:function(e){Object.keys(e).forEach((function(t){b(t)&&s[t]!==e[t]&&-1===l.indexOf(t)&&l.push(t)})),Object.keys(s).forEach((function(t){void 0===e[t]&&b(t)&&-1===l.indexOf(t)&&void 0!==s[t]&&l.push(t)})),null===p&&(p=setInterval(d,i)),s=e},flush:function(){for(;0!==l.length;)d();return y||Promise.resolve()}}}function Ft(e){return JSON.stringify(e)}function zt(e){var t,r=e.transforms||[],n="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key);return t=!1===e.deserialize?function(e){return e}:"function"==typeof e.deserialize?e.deserialize:Vt,e.storage.getItem(n).then((function(e){if(e)try{var n={},o=t(e);return Object.keys(o).forEach((function(e){n[e]=r.reduceRight((function(t,r){return r.out(t,e,o)}),t(o[e]))})),n}catch(e){throw e}}))}function Vt(e){return JSON.parse(e)}function Jt(e){0}function Wt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qt(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Wt(r,!0).forEach((function(t){Kt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Wt(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Kt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Bt(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;i.length>n;n++)0>t.indexOf(r=i[n])&&(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;i.length>n;n++)0>t.indexOf(r=i[n])&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Ht(e){return function(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);e.length>t;t++)r[t]=e[t];return r}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function Xt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Gt(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Xt(r,!0).forEach((function(t){Yt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Xt(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Yt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Qt={registry:[],bootstrapped:!1},Zt=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Qt,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case It:return Gt({},e,{registry:[].concat(Ht(e.registry),[t.key])});case At:var r=e.registry.indexOf(t.key),n=Ht(e.registry);return n.splice(r,1),Gt({},e,{registry:n,bootstrapped:0===n.length});default:return e}};var er="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},tr=z.useState,rr=z.useEffect,nr=z.useLayoutEffect,or=z.useDebugValue;function ir(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!er(e,r)}catch(e){return!0}}var ur="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=tr({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return nr((function(){o.value=r,o.getSnapshot=t,ir(o)&&i({inst:o})}),[e,r,t]),rr((function(){return ir(o)&&i({inst:o}),e((function(){ir(o)&&i({inst:o})}))}),[e]),or(r),r},cr={useSyncExternalStore:void 0!==z.useSyncExternalStore?z.useSyncExternalStore:ur},ar=u((function(e){e.exports=cr}));var sr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},fr=ar.useSyncExternalStore,lr=z.useRef,pr=z.useEffect,yr=z.useMemo,dr=z.useDebugValue,br={useSyncExternalStoreWithSelector:function(e,t,r,n,o){var i=lr(null);if(null===i.current){var u={hasValue:!1,value:null};i.current=u}else u=i.current;i=yr((function(){function e(e){if(!a){if(a=!0,i=e,e=n(e),void 0!==o&&u.hasValue){var t=u.value;if(o(t,e))return c=t}return c=e}if(t=c,sr(i,e))return t;var r=n(e);return void 0!==o&&o(t,r)?t:(i=e,c=r)}var i,c,a=!1,s=void 0===r?null:r;return[function(){return e(t())},null===s?void 0:function(){return e(s())}]}),[t,r,n,o]);var c=fr(e,i[0],i[1]);return pr((function(){u.hasValue=!0,u.value=c}),[c]),dr(c),c}},vr=u((function(e){e.exports=br}));let hr=function(e){e()};const mr=()=>hr,gr=z.createContext(null);function Or(){return z.useContext(gr)}let wr=()=>{throw Error("uSES not initialized!")};const Sr=(e,t)=>e===t;function Pr(e=gr){const t=e===gr?Or:()=>z.useContext(e);return function(e,r=Sr){const{store:n,subscription:o,getServerState:i}=t(),u=wr(o.addNestedSub,n.getState,i||n.getState,e,r);return z.useDebugValue(u),u}}const Er=Pr();
|
|
10
|
+
*/()}},r.exports),r.exports}var c=Symbol.for("react.element"),a=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),p=Symbol.for("react.provider"),y=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),b=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),m=Symbol.iterator;var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},O=Object.assign,S={};function w(e,t,r){this.props=e,this.context=t,this.refs=S,this.updater=r||g}function P(){}function E(e,t,r){this.props=e,this.context=t,this.refs=S,this.updater=r||g}w.prototype.isReactComponent={},w.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},w.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},P.prototype=w.prototype;var j=E.prototype=new P;j.constructor=E,O(j,w.prototype),j.isPureReactComponent=!0;var _=Array.isArray,R=Object.prototype.hasOwnProperty,x={current:null},C={key:!0,ref:!0,__self:!0,__source:!0};function k(e,t,r){var n,o={},i=null,u=null;if(null!=t)for(n in void 0!==t.ref&&(u=t.ref),void 0!==t.key&&(i=""+t.key),t)R.call(t,n)&&!C.hasOwnProperty(n)&&(o[n]=t[n]);var a=arguments.length-2;if(1===a)o.children=r;else if(a>1){for(var s=Array(a),f=0;a>f;f++)s[f]=arguments[f+2];o.children=s}if(e&&e.defaultProps)for(n in a=e.defaultProps)void 0===o[n]&&(o[n]=a[n]);return{$$typeof:c,type:e,key:i,ref:u,props:o,_owner:x.current}}function A(e){return"object"==typeof e&&null!==e&&e.$$typeof===c}var D=/\/+/g;function I(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function $(e,t,r,n,o){var i=typeof e;"undefined"!==i&&"boolean"!==i||(e=null);var u=!1;if(null===e)u=!0;else switch(i){case"string":case"number":u=!0;break;case"object":switch(e.$$typeof){case c:case a:u=!0}}if(u)return o=o(u=e),e=""===n?"."+I(u,0):n,_(o)?(r="",null!=e&&(r=e.replace(D,"$&/")+"/"),$(o,t,r,"",(function(e){return e}))):null!=o&&(A(o)&&(o=function(e,t){return{$$typeof:c,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(o,r+(!o.key||u&&u.key===o.key?"":(""+o.key).replace(D,"$&/")+"/")+e)),t.push(o)),1;if(u=0,n=""===n?".":n+":",_(e))for(var s=0;e.length>s;s++){var f=n+I(i=e[s],s);u+=$(i,t,r,f,o)}else if(f=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=m&&e[m]||e["@@iterator"])?e:null}(e),"function"==typeof f)for(e=f.call(e),s=0;!(i=e.next()).done;)u+=$(i=i.value,t,r,f=n+I(i,s++),o);else if("object"===i)throw Error("Objects are not valid as a React child (found: "+("[object Object]"===(t=e+"")?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return u}function N(e,t,r){if(null==e)return e;var n=[],o=0;return $(e,n,"","",(function(e){return t.call(r,e,o++)})),n}function U(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var T={current:null},M={transition:null},L={map:N,forEach:function(e,t,r){N(e,(function(){t.apply(this,arguments)}),r)},count:function(e){var t=0;return N(e,(function(){t++})),t},toArray:function(e){return N(e,(function(e){return e}))||[]},only:function(e){if(!A(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},F={Children:L,Component:w,Fragment:s,Profiler:l,PureComponent:E,StrictMode:f,Suspense:b,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{ReactCurrentDispatcher:T,ReactCurrentBatchConfig:M,ReactCurrentOwner:x},cloneElement:function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var n=O({},e.props),o=e.key,i=e.ref,u=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,u=x.current),void 0!==t.key&&(o=""+t.key),e.type&&e.type.defaultProps)var a=e.type.defaultProps;for(s in t)R.call(t,s)&&!C.hasOwnProperty(s)&&(n[s]=void 0===t[s]&&void 0!==a?a[s]:t[s])}var s=arguments.length-2;if(1===s)n.children=r;else if(s>1){a=Array(s);for(var f=0;s>f;f++)a[f]=arguments[f+2];n.children=a}return{$$typeof:c,type:e.type,key:o,ref:i,props:n,_owner:u}},createContext:function(e){return(e={$$typeof:y,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:p,_context:e},e.Consumer=e},createElement:k,createFactory:function(e){var t=k.bind(null,e);return t.type=e,t},createRef:function(){return{current:null}},forwardRef:function(e){return{$$typeof:d,render:e}},isValidElement:A,lazy:function(e){return{$$typeof:h,_payload:{_status:-1,_result:e},_init:U}},memo:function(e,t){return{$$typeof:v,type:e,compare:void 0===t?null:t}},startTransition:function(e){var t=M.transition;M.transition={};try{e()}finally{M.transition=t}},unstable_act:function(){throw Error("act(...) is not supported in production builds of React.")},useCallback:function(e,t){return T.current.useCallback(e,t)},useContext:function(e){return T.current.useContext(e)},useDebugValue:function(){},useDeferredValue:function(e){return T.current.useDeferredValue(e)},useEffect:function(e,t){return T.current.useEffect(e,t)},useId:function(){return T.current.useId()},useImperativeHandle:function(e,t,r){return T.current.useImperativeHandle(e,t,r)},useInsertionEffect:function(e,t){return T.current.useInsertionEffect(e,t)},useLayoutEffect:function(e,t){return T.current.useLayoutEffect(e,t)},useMemo:function(e,t){return T.current.useMemo(e,t)},useReducer:function(e,t,r){return T.current.useReducer(e,t,r)},useRef:function(e){return T.current.useRef(e)},useState:function(e){return T.current.useState(e)},useSyncExternalStore:function(e,t,r){return T.current.useSyncExternalStore(e,t,r)},useTransition:function(){return T.current.useTransition()},version:"18.0.0-fc46dba67-20220329"},z=u((function(e){e.exports=F}));const V="SET_RECORDS",B="ADD_RECORD",J="ADD_RECORDS",W="UPDATE_RECORD",q="DELETE_RECORD",K="DELETE_RECORDS",H=(e,t)=>({type:V,key:e,payload:t}),X=(e,t)=>({type:B,key:e,payload:t}),G=(e,t)=>({type:q,key:e,payload:t}),Y=(e,t)=>({type:W,key:e,payload:t});var Q=Object.freeze({__proto__:null,setRecords:H,addRecord:X,addRecords:(e,t)=>({type:J,key:e,payload:t}),deleteRecord:G,deleteRecords:(e,t)=>({type:K,key:e,payload:t}),updateRecord:Y});function Z(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function te(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ee(Object(r),!0).forEach((function(t){Z(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ee(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function re(e){return"Minified Redux error #"+e+"; visit https://redux.js.org/Errors?code="+e+" for the full message or use the non-minified dev environment for full errors. "}var ne="function"==typeof Symbol&&Symbol.observable||"@@observable",oe=function(){return Math.random().toString(36).substring(7).split("").join(".")},ie={INIT:"@@redux/INIT"+oe(),REPLACE:"@@redux/REPLACE"+oe(),PROBE_UNKNOWN_ACTION:function(){return"@@redux/PROBE_UNKNOWN_ACTION"+oe()}};function ue(e){if("object"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function ce(e,t,r){var n;if("function"==typeof t&&"function"==typeof r||"function"==typeof r&&"function"==typeof arguments[3])throw Error(re(0));if("function"==typeof t&&void 0===r&&(r=t,t=void 0),void 0!==r){if("function"!=typeof r)throw Error(re(1));return r(ce)(e,t)}if("function"!=typeof e)throw Error(re(2));var o=e,i=t,u=[],c=u,a=!1;function s(){c===u&&(c=u.slice())}function f(){if(a)throw Error(re(3));return i}function l(e){if("function"!=typeof e)throw Error(re(4));if(a)throw Error(re(5));var t=!0;return s(),c.push(e),function(){if(t){if(a)throw Error(re(6));t=!1,s();var r=c.indexOf(e);c.splice(r,1),u=null}}}function p(e){if(!ue(e))throw Error(re(7));if(void 0===e.type)throw Error(re(8));if(a)throw Error(re(9));try{a=!0,i=o(i,e)}finally{a=!1}for(var t=u=c,r=0;t.length>r;r++){(0,t[r])()}return e}function y(e){if("function"!=typeof e)throw Error(re(10));o=e,p({type:ie.REPLACE})}function d(){var e,t=l;return(e={subscribe:function(e){if("object"!=typeof e||null===e)throw Error(re(11));function r(){e.next&&e.next(f())}return r(),{unsubscribe:t(r)}}})[ne]=function(){return this},e}return p({type:ie.INIT}),(n={dispatch:p,subscribe:l,getState:f,replaceReducer:y})[ne]=d,n}function ae(e){for(var t=Object.keys(e),r={},n=0;t.length>n;n++){var o=t[n];"function"==typeof e[o]&&(r[o]=e[o])}var i,u=Object.keys(r);try{!function(e){Object.keys(e).forEach((function(t){var r=e[t];if(void 0===r(void 0,{type:ie.INIT}))throw Error(re(12));if(void 0===r(void 0,{type:ie.PROBE_UNKNOWN_ACTION()}))throw Error(re(13))}))}(r)}catch(e){i=e}return function(e,t){if(void 0===e&&(e={}),i)throw i;for(var n=!1,o={},c=0;u.length>c;c++){var a=u[c],s=e[a],f=(0,r[a])(s,t);if(void 0===f)throw Error(re(14));o[a]=f,n=n||f!==s}return(n=n||u.length!==Object.keys(e).length)?o:e}}function se(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return 0===t.length?function(e){return e}:1===t.length?t[0]:t.reduce((function(e,t){return function(){return e(t.apply(void 0,arguments))}}))}function fe(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];return function(e){return function(){var r=e.apply(void 0,arguments),n=function(){throw Error(re(15))},o={getState:r.getState,dispatch:function(){return n.apply(void 0,arguments)}},i=t.map((function(e){return e(o)}));return n=se.apply(void 0,i)(r.dispatch),te(te({},r),{},{dispatch:n})}}}function le(){return le=Object.assign?Object.assign.bind():function(e){for(var t=1;arguments.length>t;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},le.apply(this,arguments)}function pe(e,t){return[...t,e]}function ye(e,t){return[...t,...e]}function de(e,t){return t.map((t=>t.id===e.id?e:t))}function be(e,t){return t.filter((t=>t.id!==e.id))}function ve(e,t){return t.filter((t=>!e.includes(t)))}const he=ae({records:(e={},t)=>{var r;const n=null!=(r=e[t.key])?r:[];switch(t.type){case V:if(Array.isArray(t.payload))return le({},e,{[t.key]:t.payload});case B:return le({},e,{[t.key]:pe(t.payload,n)});case J:return le({},e,{[t.key]:ye(t.payload,n)});case q:return le({},e,{[t.key]:be(t.payload,n)});case K:return le({},e,{[t.key]:ve(t.payload,n)});case W:return le({},e,{[t.key]:de(t.payload,n)});default:return e}}});function me(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;t>n;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map((function(e){return"'"+e+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function ge(e){return!!e&&!!e[it]}function Oe(e){return!!e&&(function(e){if(!e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;var r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return r===Object||"function"==typeof r&&Function.toString.call(r)===ut}(e)||Array.isArray(e)||!!e[ot]||!!e.constructor[ot]||_e(e)||Re(e))}function Se(e,t,r){void 0===r&&(r=!1),0===we(e)?(r?Object.keys:ct)(e).forEach((function(n){r&&"symbol"==typeof n||t(n,e[n],e)})):e.forEach((function(r,n){return t(n,r,e)}))}function we(e){var t=e[it];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:_e(e)?2:Re(e)?3:0}function Pe(e,t){return 2===we(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Ee(e,t,r){var n=we(e);2===n?e.set(t,r):3===n?(e.delete(t),e.add(r)):e[t]=r}function je(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function _e(e){return et&&e instanceof Map}function Re(e){return tt&&e instanceof Set}function xe(e){return e.o||e.t}function Ce(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=at(e);delete t[it];for(var r=ct(t),n=0;r.length>n;n++){var o=r[n],i=t[o];!1===i.writable&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(t[o]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function ke(e,t){return void 0===t&&(t=!1),De(e)||ge(e)||!Oe(e)||(we(e)>1&&(e.set=e.add=e.clear=e.delete=Ae),Object.freeze(e),t&&Se(e,(function(e,t){return ke(t,!0)}),!0)),e}function Ae(){me(2)}function De(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function Ie(e){var t=st[e];return t||me(18,e),t}function $e(){return Qe}function Ne(e,t){t&&(Ie("Patches"),e.u=[],e.s=[],e.v=t)}function Ue(e){Te(e),e.p.forEach(Le),e.p=null}function Te(e){e===Qe&&(Qe=e.l)}function Me(e){return Qe={p:[],l:Qe,h:e,m:!0,_:0}}function Le(e){var t=e[it];0===t.i||1===t.i?t.j():t.O=!0}function Fe(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.g||Ie("ES5").S(t,e,n),n?(r[it].P&&(Ue(t),me(4)),Oe(e)&&(e=ze(t,e),t.l||Be(t,e)),t.u&&Ie("Patches").M(r[it].t,e,t.u,t.s)):e=ze(t,r,[]),Ue(t),t.u&&t.v(t.u,t.s),e!==nt?e:void 0}function ze(e,t,r){if(De(t))return t;var n=t[it];if(!n)return Se(t,(function(o,i){return Ve(e,n,t,o,i,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return Be(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var o=4===n.i||5===n.i?n.o=Ce(n.k):n.o;Se(3===n.i?new Set(o):o,(function(t,i){return Ve(e,n,o,t,i,r)})),Be(e,o,!1),r&&e.u&&Ie("Patches").R(n,r,e.u,e.s)}return n.o}function Ve(e,t,r,n,o,i){if(ge(o)){var u=ze(e,o,i&&t&&3!==t.i&&!Pe(t.D,n)?i.concat(n):void 0);if(Ee(r,n,u),!ge(u))return;e.m=!1}if(Oe(o)&&!De(o)){if(!e.h.F&&1>e._)return;ze(e,o),t&&t.A.l||Be(e,o)}}function Be(e,t,r){void 0===r&&(r=!1),e.h.F&&e.m&&ke(t,r)}function Je(e,t){var r=e[it];return(r?xe(r):e)[t]}function We(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function qe(e){e.P||(e.P=!0,e.l&&qe(e.l))}function Ke(e){e.o||(e.o=Ce(e.t))}function He(e,t,r){var n=_e(t)?Ie("MapSet").N(t,r):Re(t)?Ie("MapSet").T(t,r):e.g?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:$e(),P:!1,I:!1,D:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=n,i=ft;r&&(o=[n],i=lt);var u=Proxy.revocable(o,i),c=u.revoke,a=u.proxy;return n.k=a,n.j=c,a}(t,r):Ie("ES5").J(t,r);return(r?r.A:$e()).p.push(n),n}function Xe(e){return ge(e)||me(22,e),function e(t){if(!Oe(t))return t;var r,n=t[it],o=we(t);if(n){if(!n.P&&(4>n.i||!Ie("ES5").K(n)))return n.t;n.I=!0,r=Ge(t,o),n.I=!1}else r=Ge(t,o);return Se(r,(function(t,o){n&&function(e,t){return 2===we(e)?e.get(t):e[t]}(n.t,t)===o||Ee(r,t,e(o))})),3===o?new Set(r):r}(e)}function Ge(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Ce(e)}var Ye,Qe,Ze="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),et="undefined"!=typeof Map,tt="undefined"!=typeof Set,rt="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,nt=Ze?Symbol.for("immer-nothing"):((Ye={})["immer-nothing"]=!0,Ye),ot=Ze?Symbol.for("immer-draftable"):"__$immer_draftable",it=Ze?Symbol.for("immer-state"):"__$immer_state",ut=""+Object.prototype.constructor,ct="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,at=Object.getOwnPropertyDescriptors||function(e){var t={};return ct(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},st={},ft={get:function(e,t){if(t===it)return e;var r=xe(e);if(!Pe(r,t))return function(e,t,r){var n,o=We(t,r);return o?"value"in o?o.value:null===(n=o.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!Oe(n)?n:n===Je(e.t,t)?(Ke(e),e.o[t]=He(e.A.h,n,e)):n},has:function(e,t){return t in xe(e)},ownKeys:function(e){return Reflect.ownKeys(xe(e))},set:function(e,t,r){var n=We(xe(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var o=Je(xe(e),t),i=null==o?void 0:o[it];if(i&&i.t===r)return e.o[t]=r,e.D[t]=!1,!0;if(je(r,o)&&(void 0!==r||Pe(e.t,t)))return!0;Ke(e),qe(e)}return e.o[t]===r&&"number"!=typeof r&&(void 0!==r||t in e.o)||(e.o[t]=r,e.D[t]=!0,!0)},deleteProperty:function(e,t){return void 0!==Je(e.t,t)||t in e.t?(e.D[t]=!1,Ke(e),qe(e)):delete e.D[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=xe(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){me(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){me(12)}},lt={};Se(ft,(function(e,t){lt[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),lt.deleteProperty=function(e,t){return lt.set.call(this,e,t,void 0)},lt.set=function(e,t,r){return ft.set.call(this,e[0],t,r,e[0])};var pt=function(){function e(e){var t=this;this.g=rt,this.F=!0,this.produce=function(e,r,n){if("function"==typeof e&&"function"!=typeof r){var o=r;r=e;var i=t;return function(e){var t=this;void 0===e&&(e=o);for(var n=arguments.length,u=Array(n>1?n-1:0),c=1;n>c;c++)u[c-1]=arguments[c];return i.produce(e,(function(e){var n;return(n=r).call.apply(n,[t,e].concat(u))}))}}var u;if("function"!=typeof r&&me(6),void 0!==n&&"function"!=typeof n&&me(7),Oe(e)){var c=Me(t),a=He(t,e,void 0),s=!0;try{u=r(a),s=!1}finally{s?Ue(c):Te(c)}return"undefined"!=typeof Promise&&u instanceof Promise?u.then((function(e){return Ne(c,n),Fe(e,c)}),(function(e){throw Ue(c),e})):(Ne(c,n),Fe(u,c))}if(!e||"object"!=typeof e){if(void 0===(u=r(e))&&(u=e),u===nt&&(u=void 0),t.F&&ke(u,!0),n){var f=[],l=[];Ie("Patches").M(e,u,f,l),n(f,l)}return u}me(21,e)},this.produceWithPatches=function(e,r){if("function"==typeof e)return function(r){for(var n=arguments.length,o=Array(n>1?n-1:0),i=1;n>i;i++)o[i-1]=arguments[i];return t.produceWithPatches(r,(function(t){return e.apply(void 0,[t].concat(o))}))};var n,o,i=t.produce(e,r,(function(e,t){n=e,o=t}));return"undefined"!=typeof Promise&&i instanceof Promise?i.then((function(e){return[e,n,o]})):[i,n,o]},"boolean"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),"boolean"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze)}var t=e.prototype;return t.createDraft=function(e){Oe(e)||me(8),ge(e)&&(e=Xe(e));var t=Me(this),r=He(this,e,void 0);return r[it].C=!0,Te(t),r},t.finishDraft=function(e,t){var r=(e&&e[it]).A;return Ne(r,t),Fe(void 0,r)},t.setAutoFreeze=function(e){this.F=e},t.setUseProxies=function(e){e&&!rt&&me(20),this.g=e},t.applyPatches=function(e,t){var r;for(r=t.length-1;r>=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var o=Ie("Patches").$;return ge(e)?o(e,t):this.produce(e,(function(e){return o(e,t)}))},e}(),yt=new pt;function dt(e){return function(t){var r=t.dispatch,n=t.getState;return function(t){return function(o){return"function"==typeof o?o(r,n,e):t(o)}}}}yt.produceWithPatches.bind(yt),yt.setAutoFreeze.bind(yt),yt.setUseProxies.bind(yt),yt.applyPatches.bind(yt),yt.createDraft.bind(yt),yt.finishDraft.bind(yt);var bt=dt();bt.withExtraArgument=dt;var vt,ht=bt,mt=(vt=function(e,t){return vt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},vt(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+t+" is not a constructor or null");function r(){this.constructor=e}vt(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),gt=function(e,t){for(var r=0,n=t.length,o=e.length;n>r;r++,o++)e[o]=t[r];return e},Ot=Object.defineProperty,St=Object.getOwnPropertySymbols,wt=Object.prototype.hasOwnProperty,Pt=Object.prototype.propertyIsEnumerable,Et=function(e,t,r){return t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r},jt="undefined"!=typeof window&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(0!==arguments.length)return"object"==typeof arguments[0]?se:se.apply(null,arguments)};var _t=function(e){function t(){for(var r=[],n=0;arguments.length>n;n++)r[n]=arguments[n];var o=e.apply(this,r)||this;return Object.setPrototypeOf(o,t.prototype),o}return mt(t,e),Object.defineProperty(t,Symbol.species,{get:function(){return t},enumerable:!1,configurable:!0}),t.prototype.concat=function(){for(var t=[],r=0;arguments.length>r;r++)t[r]=arguments[r];return e.prototype.concat.apply(this,t)},t.prototype.prepend=function(){for(var e=[],r=0;arguments.length>r;r++)e[r]=arguments[r];return 1===e.length&&Array.isArray(e[0])?new(t.bind.apply(t,gt([void 0],e[0].concat(this)))):new(t.bind.apply(t,gt([void 0],e.concat(this))))},t}(Array);function Rt(){return function(e){return function(e){void 0===e&&(e={});var t=e.thunk,r=void 0===t||t;var n=new _t;r&&(!function(e){return"boolean"==typeof e}(r)?n.push(ht.withExtraArgument(r.extraArgument)):n.push(ht));return n}(e)}}!function(){function e(e,t){var r=o[e];return r?r.enumerable=t:o[e]=r={configurable:!0,enumerable:t,get:function(){return ft.get(this[it],e)},set:function(t){ft.set(this[it],e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var o=e[t][it];if(!o.P)switch(o.i){case 5:n(o)&&qe(o);break;case 4:r(o)&&qe(o)}}}function r(e){for(var t=e.t,r=e.k,n=ct(r),o=n.length-1;o>=0;o--){var i=n[o];if(i!==it){var u=t[i];if(void 0===u&&!Pe(t,i))return!0;var c=r[i],a=c&&c[it];if(a?a.t!==u:!je(c,u))return!0}}var s=!!t[it];return n.length!==ct(t).length+(s?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;t.length>n;n++)if(!t.hasOwnProperty(n))return!0;return!1}var o={};!function(e,t){st[e]||(st[e]=t)}("ES5",{J:function(t,r){var n=Array.isArray(t),o=function(t,r){if(t){for(var n=Array(r.length),o=0;r.length>o;o++)Object.defineProperty(n,""+o,e(o,!0));return n}var i=at(r);delete i[it];for(var u=ct(i),c=0;u.length>c;c++){var a=u[c];i[a]=e(a,t||!!i[a].enumerable)}return Object.create(Object.getPrototypeOf(r),i)}(n,t),i={i:n?5:4,A:r?r.A:$e(),P:!1,I:!1,D:{},l:r,t:t,k:o,o:null,O:!1,C:!1};return Object.defineProperty(o,it,{value:i,writable:!0}),o},S:function(e,r,o){o?ge(r)&&r[it].A===e&&t(e.p):(e.u&&function e(t){if(t&&"object"==typeof t){var r=t[it];if(r){var o=r.t,i=r.k,u=r.D,c=r.i;if(4===c)Se(i,(function(t){t!==it&&(void 0!==o[t]||Pe(o,t)?u[t]||e(i[t]):(u[t]=!0,qe(r)))})),Se(o,(function(e){void 0!==i[e]||Pe(i,e)||(u[e]=!1,qe(r))}));else if(5===c){if(n(r)&&(qe(r),u.length=!0),o.length>i.length)for(var a=i.length;o.length>a;a++)u[a]=!1;else for(var s=o.length;i.length>s;s++)u[s]=!0;for(var f=Math.min(i.length,o.length),l=0;f>l;l++)i.hasOwnProperty(l)||(u[l]=!0),void 0===u[l]&&e(i[l])}}}}(e.p[0]),t(e.p))},K:function(e){return 4===e.i?r(e):n(e)}})}();var xt="persist:",Ct="persist/FLUSH",kt="persist/REHYDRATE",At="persist/PAUSE",Dt="persist/PERSIST",It="persist/PURGE",$t="persist/REGISTER";function Nt(e){return Nt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nt(e)}function Ut(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Tt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mt(e,t,r,n){var o=function(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ut(r,!0).forEach((function(t){Tt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ut(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},r);return e&&"object"===Nt(e)&&Object.keys(e).forEach((function(n){"_persist"!==n&&t[n]===r[n]&&(o[n]=e[n])})),o}function Lt(e){var t,r=e.blacklist||null,n=e.whitelist||null,o=e.transforms||[],i=e.throttle||0,u="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key),c=e.storage;t=!1===e.serialize?function(e){return e}:"function"==typeof e.serialize?e.serialize:Ft;var a=e.writeFailHandler||null,s={},f={},l=[],p=null,y=null;function d(){if(0===l.length)return p&&clearInterval(p),void(p=null);var e=l.shift(),r=o.reduce((function(t,r){return r.in(t,e,s)}),s[e]);if(void 0!==r)try{f[e]=t(r)}catch(e){console.error("redux-persist/createPersistoid: error serializing state",e)}else delete f[e];0===l.length&&(Object.keys(f).forEach((function(e){void 0===s[e]&&delete f[e]})),y=c.setItem(u,t(f)).catch(v))}function b(e){return(!n||-1!==n.indexOf(e)||"_persist"===e)&&(!r||-1===r.indexOf(e))}function v(e){a&&a(e)}return{update:function(e){Object.keys(e).forEach((function(t){b(t)&&s[t]!==e[t]&&-1===l.indexOf(t)&&l.push(t)})),Object.keys(s).forEach((function(t){void 0===e[t]&&b(t)&&-1===l.indexOf(t)&&void 0!==s[t]&&l.push(t)})),null===p&&(p=setInterval(d,i)),s=e},flush:function(){for(;0!==l.length;)d();return y||Promise.resolve()}}}function Ft(e){return JSON.stringify(e)}function zt(e){var t,r=e.transforms||[],n="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key);return t=!1===e.deserialize?function(e){return e}:"function"==typeof e.deserialize?e.deserialize:Vt,e.storage.getItem(n).then((function(e){if(e)try{var n={},o=t(e);return Object.keys(o).forEach((function(e){n[e]=r.reduceRight((function(t,r){return r.out(t,e,o)}),t(o[e]))})),n}catch(e){throw e}}))}function Vt(e){return JSON.parse(e)}function Bt(e){0}function Jt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Wt(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Jt(r,!0).forEach((function(t){qt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Jt(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function qt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Kt(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;i.length>n;n++)0>t.indexOf(r=i[n])&&(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;i.length>n;n++)0>t.indexOf(r=i[n])&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Ht(e){return function(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);e.length>t;t++)r[t]=e[t];return r}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function Xt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Gt(e){for(var t=1;arguments.length>t;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Xt(r,!0).forEach((function(t){Yt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Xt(r).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Yt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Qt={registry:[],bootstrapped:!1},Zt=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Qt,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case $t:return Gt({},e,{registry:[].concat(Ht(e.registry),[t.key])});case kt:var r=e.registry.indexOf(t.key),n=Ht(e.registry);return n.splice(r,1),Gt({},e,{registry:n,bootstrapped:0===n.length});default:return e}};var er="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},tr=z.useState,rr=z.useEffect,nr=z.useLayoutEffect,or=z.useDebugValue;function ir(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!er(e,r)}catch(e){return!0}}var ur="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=tr({inst:{value:r,getSnapshot:t}}),o=n[0].inst,i=n[1];return nr((function(){o.value=r,o.getSnapshot=t,ir(o)&&i({inst:o})}),[e,r,t]),rr((function(){return ir(o)&&i({inst:o}),e((function(){ir(o)&&i({inst:o})}))}),[e]),or(r),r},cr={useSyncExternalStore:void 0!==z.useSyncExternalStore?z.useSyncExternalStore:ur},ar=u((function(e){e.exports=cr}));var sr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},fr=ar.useSyncExternalStore,lr=z.useRef,pr=z.useEffect,yr=z.useMemo,dr=z.useDebugValue,br={useSyncExternalStoreWithSelector:function(e,t,r,n,o){var i=lr(null);if(null===i.current){var u={hasValue:!1,value:null};i.current=u}else u=i.current;i=yr((function(){function e(e){if(!a){if(a=!0,i=e,e=n(e),void 0!==o&&u.hasValue){var t=u.value;if(o(t,e))return c=t}return c=e}if(t=c,sr(i,e))return t;var r=n(e);return void 0!==o&&o(t,r)?t:(i=e,c=r)}var i,c,a=!1,s=void 0===r?null:r;return[function(){return e(t())},null===s?void 0:function(){return e(s())}]}),[t,r,n,o]);var c=fr(e,i[0],i[1]);return pr((function(){u.hasValue=!0,u.value=c}),[c]),dr(c),c}},vr=u((function(e){e.exports=br}));let hr=function(e){e()};const mr=()=>hr,gr=z.createContext(null);function Or(){return z.useContext(gr)}let Sr=()=>{throw Error("uSES not initialized!")};const wr=(e,t)=>e===t;function Pr(e=gr){const t=e===gr?Or:()=>z.useContext(e);return function(e,r=wr){const{store:n,subscription:o,getServerState:i}=t(),u=Sr(o.addNestedSub,n.getState,i||n.getState,e,r);return z.useDebugValue(u),u}}const Er=Pr();
|
|
11
11
|
/** @license React v16.13.1
|
|
12
12
|
* react-is.production.min.js
|
|
13
13
|
*
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
*
|
|
16
16
|
* This source code is licensed under the MIT license found in the
|
|
17
17
|
* LICENSE file in the root directory of this source tree.
|
|
18
|
-
*/var jr="function"==typeof Symbol&&Symbol.for,_r=jr?Symbol.for("react.element"):60103,Rr=jr?Symbol.for("react.portal"):60106,xr=jr?Symbol.for("react.fragment"):60107,
|
|
18
|
+
*/var jr="function"==typeof Symbol&&Symbol.for,_r=jr?Symbol.for("react.element"):60103,Rr=jr?Symbol.for("react.portal"):60106,xr=jr?Symbol.for("react.fragment"):60107,Cr=jr?Symbol.for("react.strict_mode"):60108,kr=jr?Symbol.for("react.profiler"):60114,Ar=jr?Symbol.for("react.provider"):60109,Dr=jr?Symbol.for("react.context"):60110,Ir=jr?Symbol.for("react.async_mode"):60111,$r=jr?Symbol.for("react.concurrent_mode"):60111,Nr=jr?Symbol.for("react.forward_ref"):60112,Ur=jr?Symbol.for("react.suspense"):60113,Tr=jr?Symbol.for("react.suspense_list"):60120,Mr=jr?Symbol.for("react.memo"):60115,Lr=jr?Symbol.for("react.lazy"):60116,Fr=jr?Symbol.for("react.block"):60121,zr=jr?Symbol.for("react.fundamental"):60117,Vr=jr?Symbol.for("react.responder"):60118,Br=jr?Symbol.for("react.scope"):60119;function Jr(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case _r:switch(e=e.type){case Ir:case $r:case xr:case kr:case Cr:case Ur:return e;default:switch(e=e&&e.$$typeof){case Dr:case Nr:case Lr:case Mr:case Ar:return e;default:return t}}case Rr:return t}}}function Wr(e){return Jr(e)===$r}var qr={AsyncMode:Ir,ConcurrentMode:$r,ContextConsumer:Dr,ContextProvider:Ar,Element:_r,ForwardRef:Nr,Fragment:xr,Lazy:Lr,Memo:Mr,Portal:Rr,Profiler:kr,StrictMode:Cr,Suspense:Ur,isAsyncMode:function(e){return Wr(e)||Jr(e)===Ir},isConcurrentMode:Wr,isContextConsumer:function(e){return Jr(e)===Dr},isContextProvider:function(e){return Jr(e)===Ar},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===_r},isForwardRef:function(e){return Jr(e)===Nr},isFragment:function(e){return Jr(e)===xr},isLazy:function(e){return Jr(e)===Lr},isMemo:function(e){return Jr(e)===Mr},isPortal:function(e){return Jr(e)===Rr},isProfiler:function(e){return Jr(e)===kr},isStrictMode:function(e){return Jr(e)===Cr},isSuspense:function(e){return Jr(e)===Ur},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===xr||e===$r||e===kr||e===Cr||e===Ur||e===Tr||"object"==typeof e&&null!==e&&(e.$$typeof===Lr||e.$$typeof===Mr||e.$$typeof===Ar||e.$$typeof===Dr||e.$$typeof===Nr||e.$$typeof===zr||e.$$typeof===Vr||e.$$typeof===Br||e.$$typeof===Fr)},typeOf:Jr},Kr=u((function(e){e.exports=qr})),Hr={};Hr[Kr.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},Hr[Kr.Memo]={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0};
|
|
19
19
|
/**
|
|
20
20
|
* @license React
|
|
21
21
|
* react-is.production.min.js
|
|
@@ -25,4 +25,4 @@
|
|
|
25
25
|
* This source code is licensed under the MIT license found in the
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
27
|
*/
|
|
28
|
-
var Xr,Gr=Symbol.for("react.element"),Yr=Symbol.for("react.portal"),Qr=Symbol.for("react.fragment"),Zr=Symbol.for("react.strict_mode"),en=Symbol.for("react.profiler"),tn=Symbol.for("react.provider"),rn=Symbol.for("react.context"),nn=Symbol.for("react.server_context"),on=Symbol.for("react.forward_ref"),un=Symbol.for("react.suspense"),cn=Symbol.for("react.suspense_list"),an=Symbol.for("react.memo"),sn=Symbol.for("react.lazy"),fn=Symbol.for("react.offscreen");function ln(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Gr:switch(e=e.type){case Qr:case en:case Zr:case un:case cn:return e;default:switch(e=e&&e.$$typeof){case nn:case rn:case on:case sn:case an:case tn:return e;default:return t}}case Yr:return t}}}Xr=Symbol.for("react.module.reference");var pn={ContextConsumer:rn,ContextProvider:tn,Element:Gr,ForwardRef:on,Fragment:Qr,Lazy:sn,Memo:an,Portal:Yr,Profiler:en,StrictMode:Zr,Suspense:un,SuspenseList:cn,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return ln(e)===rn},isContextProvider:function(e){return ln(e)===tn},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Gr},isForwardRef:function(e){return ln(e)===on},isFragment:function(e){return ln(e)===Qr},isLazy:function(e){return ln(e)===sn},isMemo:function(e){return ln(e)===an},isPortal:function(e){return ln(e)===Yr},isProfiler:function(e){return ln(e)===en},isStrictMode:function(e){return ln(e)===Zr},isSuspense:function(e){return ln(e)===un},isSuspenseList:function(e){return ln(e)===cn},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Qr||e===en||e===Zr||e===un||e===cn||e===fn||"object"==typeof e&&null!==e&&(e.$$typeof===sn||e.$$typeof===an||e.$$typeof===tn||e.$$typeof===rn||e.$$typeof===on||e.$$typeof===Xr||void 0!==e.getModuleId)},typeOf:ln};u((function(e){e.exports=pn}));const yn={notify(){},get:()=>[]};function dn(e,t){let r,n=yn;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=mr();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,o=r={callback:e,next:null,prev:r};return o.prev?o.prev.next=o:t=o,function(){n&&null!==t&&(n=!1,o.next?o.next.prev=o.prev:r=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}())}const u={addNestedSub:function(e){return i(),n.subscribe(e)},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:o,isSubscribed:function(){return!!r},trySubscribe:i,tryUnsubscribe:function(){r&&(r(),r=void 0,n.clear(),n=yn)},getListeners:()=>n};return u}const bn=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function vn({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=dn(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);bn((()=>{const{subscription:t}=o;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),i!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[o,i]);return z.createElement((t||gr).Provider,{value:o},r)}wr=vr.useSyncExternalStoreWithSelector,hr=t.unstable_batchedUpdates;var hn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:mn}=Object.prototype,{propertyIsEnumerable:gn}=Object,On=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),wn=i,Sn={concatArrays:!1,ignoreUndefined:!1},Pn=e=>{const t=[];for(const r in e)mn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)gn.call(e,n)&&t.push(n)}return t};function En(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Pn(e).forEach((r=>{On(t,r,En(e[r]))})),t}(e):hn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Pn(e).forEach((r=>{On(t,r,En(e[r]))})),t}(e):e}const jn=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||On(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?_n(e[r],t[r],n):En(t[r]))})),e);function _n(e,t,r){return r.concatArrays&&Array.isArray(e)&&Array.isArray(t)?((e,t,r)=>{let n=e.slice(0,0),o=0;return[e,t].forEach((t=>{const i=[];for(let r=0;t.length>r;r++)mn.call(t,r)&&(i.push(r+""),On(n,o++,t===e?t[r]:En(t[r])));n=jn(n,t,Pn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):hn(t)&&hn(e)?jn(e,t,Pn(t),r):En(t)}const Rn=function(...e){const t=_n(En(Sn),this!==wn&&this||{},Sn);let r={_:{}};for(const n of e)if(void 0!==n){if(!hn(n))throw new TypeError("`"+n+"` is not an Option Object");r=_n(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function xn(e,t){return new Promise(((r,n)=>{try{const n=e();null==t||t(null,n),r(n)}catch(e){null==t||t(e),n(e)}}))}function kn(e,t,r){return Promise.all(e).then((e=>{var n;const o=null!==(n=null==r?void 0:r(e))&&void 0!==n?n:null;return null==t||t(null,o),Promise.resolve(o)}),(e=>(null==t||t(e),Promise.reject(e))))}const An={getItem:(e,t)=>xn((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>xn((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>xn((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>xn((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(Rn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>xn((()=>window.localStorage.clear()),e),getAllKeys:e=>xn((()=>{const e=window.localStorage.length,t=[];for(let r=0;e>r;r+=1){const e=window.localStorage.key(r)||"";t.push(e)}return t}),e),flushGetRequests:()=>{},multiGet:(e,t)=>kn(e.map((e=>An.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>kn(e.map((e=>An.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>kn(e.map((e=>An.removeItem(e))),t),multiMerge:(e,t)=>kn(e.map((e=>An.mergeItem(e[0],e[1]))),t)};class Cn{static async get(e){return"undefined"!=typeof document?localStorage.getItem(e):await An.getItem(e)}static async set(e,t){return"undefined"!=typeof document?localStorage.setItem(e,t):await An.setItem(e,t)}static async remove(e){return"undefined"!=typeof document?localStorage.removeItem(e):await An.removeItem(e)}}const Dn={key:"root",storage:{getItem:async(e,...t)=>await Cn.get(e),setItem:async(e,t,...r)=>Cn.set(e,t),removeItem:async(e,...t)=>Cn.remove(e)}},$n=ae({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Mt:e.stateReconciler,o=e.getStoredState||zt,i=void 0!==e.timeout?e.timeout:5e3,u=null,c=!1,a=!0,s=function(e){return e._persist.rehydrated&&u&&!a&&u.update(e),e};return function(f,l){var p=f||{},y=p._persist,d=Bt(p,["_persist"]);if(l.type===Dt){var b=!1,v=function(t,r){b||(l.rehydrate(e.key,t,r),b=!0)};if(i&&setTimeout((function(){!b&&v(void 0,Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),i),a=!1,u||(u=Lt(e)),y)return qt({},t(d,l),{_persist:y});if("function"!=typeof l.rehydrate||"function"!=typeof l.register)throw Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return l.register(e.key),o(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){v(e)}),(function(e){v(void 0,e)}))}),(function(e){v(void 0,e)})),qt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===$t)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key);return t.removeItem(r,Jt)}(e)),qt({},t(d,l),{_persist:y});if(l.type===kt)return l.result(u&&u.flush()),qt({},t(d,l),{_persist:y});if(l.type===Ct)a=!0;else if(l.type===At){if(c)return qt({},d,{_persist:qt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=qt({},!1!==n&&void 0!==m?n(m,f,h,e):h,{_persist:qt({},y,{rehydrated:!0})});return s(g)}}if(!y)return t(f,l);var O=t(d,l);return O===d?f:s(qt({},O,{_persist:y}))}}(Dn,he)}),In=function(e){var t,r=Rt(),n=e||{},o=n.reducer,i=void 0===o?void 0:o,u=n.middleware,c=void 0===u?r():u,a=n.devTools,s=void 0===a||a,f=n.preloadedState,l=void 0===f?void 0:f,p=n.enhancers,y=void 0===p?void 0:p;if("function"==typeof i)t=i;else{if(!function(e){if("object"!=typeof e||null===e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return t===r}(i))throw Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=ae(i)}var d=c;"function"==typeof d&&(d=d(r));var b=fe.apply(void 0,d),v=se;s&&(v=jt(function(e,t){for(var r in t||(t={}))St.call(t,r)&&Et(e,r,t[r]);if(wt)for(var n=0,o=wt(t);o.length>n;n++)Pt.call(t,r=o[n])&&Et(e,r,t[r]);return e}({trace:!1},"object"==typeof s&&s)));var h=[b];return Array.isArray(y)?h=gt([b],y):"function"==typeof y&&(h=y(h)),ce(t,l,v.apply(void 0,h))}({reducer:$n,middleware:[ht]}),Nn=In.dispatch,Tn=Er,Un=function(e,t,r){var n=r||!1,o=ce(Zt,Qt,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:It,key:e})},u=function(t,r,i){var u={type:At,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=Gt({},o,{purge:function(){var t=[];return e.dispatch({type:$t,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:kt,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:Ct})},persist:function(){e.dispatch({type:Dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}(In),Mn=()=>z.useContext(zn),Ln=z.createContext({}),Fn=e=>{const t=Mn(),r=Nn,[n,o]=z.useState(e.collections||[]),i={subscribe:async e=>{await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(X(e,t.record));break;case"update":r(Y(e,t.record));break;case"delete":r(G(e,t.record))}})).then((async()=>{await Cn.set("a",JSON.stringify([...n,e]))})).catch((e=>{})))},unsubscribe:e=>{e?null==t||t.realtime.unsubscribe(e).then((async()=>{var t;const r=JSON.parse(null!=(t=await Cn.get("subscribed"))?t:JSON.stringify([]));await Cn.set("subscribed",JSON.stringify(r.filter((t=>t!==e))))})).catch((e=>{})):null==t||t.realtime.unsubscribe().then((async()=>{await Cn.set("subscribed",JSON.stringify([]))})).catch((e=>{}))},fetch:async e=>{const n=await(null==t?void 0:t.records.getFullList(e,200).catch((e=>{})));r(H(e,n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r).catch((e=>{})))},update:async(e,r,n)=>{await(null==t?void 0:t.records.update(e,r,n).catch((e=>{})))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r).catch((e=>{})))}};return z.useEffect((()=>(n&&n.forEach((e=>{i.fetch(e),i.subscribe(e)})),()=>i.unsubscribe())),[n]),z.createElement(Ln.Provider,{value:{actions:i}},e.children)},zn=z.createContext(null),Vn=e=>z.createElement(zn.Provider,{value:e.client},e.children),Jn=z.createContext({}),Wn=e=>{const t=Mn(),[r,n]=z.useState(),o={registerWithEmail:async(e,r)=>{await(null==t?void 0:t.users.create({email:e,password:r,passwordConfirm:r}))},signInWithEmail:async(e,r)=>{await(null==t?void 0:t.users.authViaEmail(e,r))},signInWithProvider:async t=>{const n=null==r?void 0:r.find((e=>e.name===t)),o=(null==n?void 0:n.authUrl)+typeof document!="undefined"?e.webRedirectUrl:e.mobileRedirectUrl;await e.openURL(o),await Cn.set("provider",JSON.stringify(r))},submitProviderResult:async r=>{const n=new URLSearchParams(r.split("?")[1]),o=n.get("code"),i=n.get("state"),u=await Cn.get("provider");if(u){const r=JSON.parse(u),n=null==r?void 0:r.find((e=>e.state===i));n&&o&&await(null==t?void 0:t.users.authViaOAuth2(n.name,o,n.codeVerifier,"undefined"!=typeof document?e.webRedirectUrl:e.mobileRedirectUrl))}},signOut:()=>{null==t||t.authStore.clear()},sendPasswordResetEmail:async e=>{await(null==t?void 0:t.users.requestPasswordReset(e))},sendEmailVerification:async e=>{await(null==t?void 0:t.users.requestVerification(e))},updateProfile:async(e,r)=>{await(null==t?void 0:t.records.update("profiles",e,r))},updateEmail:async e=>{await(null==t?void 0:t.users.requestEmailChange(e))},deleteUser:async e=>{await(null==t?void 0:t.users.delete(e))}};return z.useEffect((()=>{(async()=>{const e=await(null==t?void 0:t.users.listAuthMethods());n(null==e?void 0:e.authProviders)})()}),[e.webRedirectUrl,e.mobileRedirectUrl]),z.createElement(Jn.Provider,{value:o},e.children)};function qn(e){return qn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qn(e)}function Kn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Bn(e,t){for(var r=0;t.length>r;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Hn(e,t){return!t||"object"!==qn(t)&&"function"!=typeof t?Gn(e):t}function Xn(e){return Xn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Xn(e)}function Gn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Yn(e,t){return Yn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Yn(e,t)}function Qn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Zn=function(e){function t(){var e,r;Kn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return Qn(Gn(r=Hn(this,(e=Xn(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),Qn(Gn(r),"_unsubscribe",void 0),Qn(Gn(r),"handlePersistorState",(function(){r.props.persistor.getState().bootstrapped&&(r.props.onBeforeLift?Promise.resolve(r.props.onBeforeLift()).finally((function(){return r.setState({bootstrapped:!0})})):r.setState({bootstrapped:!0}),r._unsubscribe&&r._unsubscribe())})),r}var r,n,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Yn(e,t)}(t,e),r=t,(n=[{key:"componentDidMount",value:function(){this._unsubscribe=this.props.persistor.subscribe(this.handlePersistorState),this.handlePersistorState()}},{key:"componentWillUnmount",value:function(){this._unsubscribe&&this._unsubscribe()}},{key:"render",value:function(){return"function"==typeof this.props.children?this.props.children(this.state.bootstrapped):this.state.bootstrapped?this.props.children:this.props.loading}}])&&Bn(r.prototype,n),o&&Bn(r,o),t}(z.PureComponent);Qn(Zn,"defaultProps",{children:null,loading:null});const eo=z.createContext(null);e.ADD_RECORD=J,e.ADD_RECORDS=W,e.AuthContext=Jn,e.AuthProvider=Wn,e.ClientContext=zn,e.ClientProvider=Vn,e.ContentContext=Ln,e.ContentProvider=Fn,e.DELETE_RECORD=K,e.DELETE_RECORDS=B,e.Pocketbase=e=>{const t=new o.default(e.serverURL);return t?z.createElement(Vn,{client:t},z.createElement(vn,{store:In},z.createElement(Zn,{persistor:Un},z.createElement(Wn,{webRedirectUrl:e.webRedirectUrl,mobileRedirectUrl:e.mobileRedirectUrl,openURL:e.openURL},z.createElement(Fn,{collections:e.initialCollections},e.children))))):null},e.PocketbaseContext=eo,e.SET_RECORDS=V,e.UPDATE_RECORD=q,e.appReducer=he,e.persistConfig=Dn,e.persistor=Un,e.recordsAction=Q,e.store=In,e.useAppContent=function(e,t=!1){var r;const n=null!=(r=Tn((t=>t.reducer.records[e])))?r:[],o=z.useContext(Ln);z.useEffect((()=>{t&&o.actions.fetch(e)}),[e,t]);const[i,u]=z.useState(!1);async function c(){var t;const r=JSON.parse(null!=(t=await Cn.get("subscribed"))?t:JSON.stringify([]));u(r.includes(e))}return z.useEffect((()=>{(async()=>{await c()})()}),[]),{records:n,actions:{subscribe:async()=>{await o.actions.subscribe(e),await c()},unsubscribe:()=>{o.actions.unsubscribe(e),c()},fetch:async()=>await o.actions.fetch(e),create:async t=>await o.actions.create(e,t),update:async(t,r)=>await o.actions.update(e,t,r),delete:async t=>await o.actions.delete(e,t)},isSubscribed:i}},e.useAppDispatch=Nn,e.useAppSelector=Tn,e.useAuth=function(){return{actions:z.useContext(Jn)}},e.useClientContext=Mn,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
28
|
+
var Xr,Gr=Symbol.for("react.element"),Yr=Symbol.for("react.portal"),Qr=Symbol.for("react.fragment"),Zr=Symbol.for("react.strict_mode"),en=Symbol.for("react.profiler"),tn=Symbol.for("react.provider"),rn=Symbol.for("react.context"),nn=Symbol.for("react.server_context"),on=Symbol.for("react.forward_ref"),un=Symbol.for("react.suspense"),cn=Symbol.for("react.suspense_list"),an=Symbol.for("react.memo"),sn=Symbol.for("react.lazy"),fn=Symbol.for("react.offscreen");function ln(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Gr:switch(e=e.type){case Qr:case en:case Zr:case un:case cn:return e;default:switch(e=e&&e.$$typeof){case nn:case rn:case on:case sn:case an:case tn:return e;default:return t}}case Yr:return t}}}Xr=Symbol.for("react.module.reference");var pn={ContextConsumer:rn,ContextProvider:tn,Element:Gr,ForwardRef:on,Fragment:Qr,Lazy:sn,Memo:an,Portal:Yr,Profiler:en,StrictMode:Zr,Suspense:un,SuspenseList:cn,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return ln(e)===rn},isContextProvider:function(e){return ln(e)===tn},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Gr},isForwardRef:function(e){return ln(e)===on},isFragment:function(e){return ln(e)===Qr},isLazy:function(e){return ln(e)===sn},isMemo:function(e){return ln(e)===an},isPortal:function(e){return ln(e)===Yr},isProfiler:function(e){return ln(e)===en},isStrictMode:function(e){return ln(e)===Zr},isSuspense:function(e){return ln(e)===un},isSuspenseList:function(e){return ln(e)===cn},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Qr||e===en||e===Zr||e===un||e===cn||e===fn||"object"==typeof e&&null!==e&&(e.$$typeof===sn||e.$$typeof===an||e.$$typeof===tn||e.$$typeof===rn||e.$$typeof===on||e.$$typeof===Xr||void 0!==e.getModuleId)},typeOf:ln};u((function(e){e.exports=pn}));const yn={notify(){},get:()=>[]};function dn(e,t){let r,n=yn;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=mr();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,o=r={callback:e,next:null,prev:r};return o.prev?o.prev.next=o:t=o,function(){n&&null!==t&&(n=!1,o.next?o.next.prev=o.prev:r=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}())}const u={addNestedSub:function(e){return i(),n.subscribe(e)},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:o,isSubscribed:function(){return!!r},trySubscribe:i,tryUnsubscribe:function(){r&&(r(),r=void 0,n.clear(),n=yn)},getListeners:()=>n};return u}const bn=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function vn({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=dn(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);bn((()=>{const{subscription:t}=o;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),i!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[o,i]);return z.createElement((t||gr).Provider,{value:o},r)}Sr=vr.useSyncExternalStoreWithSelector,hr=t.unstable_batchedUpdates;var hn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:mn}=Object.prototype,{propertyIsEnumerable:gn}=Object,On=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),Sn=i,wn={concatArrays:!1,ignoreUndefined:!1},Pn=e=>{const t=[];for(const r in e)mn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)gn.call(e,n)&&t.push(n)}return t};function En(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Pn(e).forEach((r=>{On(t,r,En(e[r]))})),t}(e):hn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Pn(e).forEach((r=>{On(t,r,En(e[r]))})),t}(e):e}const jn=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||On(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?_n(e[r],t[r],n):En(t[r]))})),e);function _n(e,t,r){return r.concatArrays&&Array.isArray(e)&&Array.isArray(t)?((e,t,r)=>{let n=e.slice(0,0),o=0;return[e,t].forEach((t=>{const i=[];for(let r=0;t.length>r;r++)mn.call(t,r)&&(i.push(r+""),On(n,o++,t===e?t[r]:En(t[r])));n=jn(n,t,Pn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):hn(t)&&hn(e)?jn(e,t,Pn(t),r):En(t)}const Rn=function(...e){const t=_n(En(wn),this!==Sn&&this||{},wn);let r={_:{}};for(const n of e)if(void 0!==n){if(!hn(n))throw new TypeError("`"+n+"` is not an Option Object");r=_n(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function xn(e,t){return new Promise(((r,n)=>{try{const n=e();null==t||t(null,n),r(n)}catch(e){null==t||t(e),n(e)}}))}function Cn(e,t,r){return Promise.all(e).then((e=>{var n;const o=null!==(n=null==r?void 0:r(e))&&void 0!==n?n:null;return null==t||t(null,o),Promise.resolve(o)}),(e=>(null==t||t(e),Promise.reject(e))))}const kn={getItem:(e,t)=>xn((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>xn((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>xn((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>xn((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(Rn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>xn((()=>window.localStorage.clear()),e),getAllKeys:e=>xn((()=>{const e=window.localStorage.length,t=[];for(let r=0;e>r;r+=1){const e=window.localStorage.key(r)||"";t.push(e)}return t}),e),flushGetRequests:()=>{},multiGet:(e,t)=>Cn(e.map((e=>kn.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>Cn(e.map((e=>kn.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>Cn(e.map((e=>kn.removeItem(e))),t),multiMerge:(e,t)=>Cn(e.map((e=>kn.mergeItem(e[0],e[1]))),t)};class An{static async get(e){return"undefined"!=typeof document?localStorage.getItem(e):await kn.getItem(e)}static async set(e,t){return"undefined"!=typeof document?localStorage.setItem(e,t):await kn.setItem(e,t)}static async remove(e){return"undefined"!=typeof document?localStorage.removeItem(e):await kn.removeItem(e)}}An.Constants={SUBSCRIBED:"subscribed"};const Dn={key:"root",storage:{getItem:async(e,...t)=>await An.get(e),setItem:async(e,t,...r)=>An.set(e,t),removeItem:async(e,...t)=>An.remove(e)}},In=ae({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Mt:e.stateReconciler,o=e.getStoredState||zt,i=void 0!==e.timeout?e.timeout:5e3,u=null,c=!1,a=!0,s=function(e){return e._persist.rehydrated&&u&&!a&&u.update(e),e};return function(f,l){var p=f||{},y=p._persist,d=Kt(p,["_persist"]);if(l.type===Dt){var b=!1,v=function(t,r){b||(l.rehydrate(e.key,t,r),b=!0)};if(i&&setTimeout((function(){!b&&v(void 0,Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),i),a=!1,u||(u=Lt(e)),y)return Wt({},t(d,l),{_persist:y});if("function"!=typeof l.rehydrate||"function"!=typeof l.register)throw Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return l.register(e.key),o(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){v(e)}),(function(e){v(void 0,e)}))}),(function(e){v(void 0,e)})),Wt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===It)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:xt).concat(e.key);return t.removeItem(r,Bt)}(e)),Wt({},t(d,l),{_persist:y});if(l.type===Ct)return l.result(u&&u.flush()),Wt({},t(d,l),{_persist:y});if(l.type===At)a=!0;else if(l.type===kt){if(c)return Wt({},d,{_persist:Wt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=Wt({},!1!==n&&void 0!==m?n(m,f,h,e):h,{_persist:Wt({},y,{rehydrated:!0})});return s(g)}}if(!y)return t(f,l);var O=t(d,l);return O===d?f:s(Wt({},O,{_persist:y}))}}(Dn,he)}),$n=function(e){var t,r=Rt(),n=e||{},o=n.reducer,i=void 0===o?void 0:o,u=n.middleware,c=void 0===u?r():u,a=n.devTools,s=void 0===a||a,f=n.preloadedState,l=void 0===f?void 0:f,p=n.enhancers,y=void 0===p?void 0:p;if("function"==typeof i)t=i;else{if(!function(e){if("object"!=typeof e||null===e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return t===r}(i))throw Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=ae(i)}var d=c;"function"==typeof d&&(d=d(r));var b=fe.apply(void 0,d),v=se;s&&(v=jt(function(e,t){for(var r in t||(t={}))wt.call(t,r)&&Et(e,r,t[r]);if(St)for(var n=0,o=St(t);o.length>n;n++)Pt.call(t,r=o[n])&&Et(e,r,t[r]);return e}({trace:!1},"object"==typeof s&&s)));var h=[b];return Array.isArray(y)?h=gt([b],y):"function"==typeof y&&(h=y(h)),ce(t,l,v.apply(void 0,h))}({reducer:In,middleware:[ht]}),Nn=$n.dispatch,Un=Er,Tn=function(e,t,r){var n=r||!1,o=ce(Zt,Qt,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:$t,key:e})},u=function(t,r,i){var u={type:kt,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=Gt({},o,{purge:function(){var t=[];return e.dispatch({type:It,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:Ct,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:At})},persist:function(){e.dispatch({type:Dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}($n),Mn=()=>z.useContext(zn),Ln=z.createContext({}),Fn=e=>{const t=Mn(),r=Nn,n={subscribe:async e=>{var n;const o=null!=(n=await An.get(An.Constants.SUBSCRIBED))?n:JSON.stringify([]);var i=JSON.parse(o);await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(X(e,t.record));break;case"update":r(Y(e,t.record));break;case"delete":r(G(e,t.record))}})).then((()=>{i.includes(e)||i.push(e)})).catch((t=>{i=i.filter((t=>t!==e))}))),await An.set(An.Constants.SUBSCRIBED,JSON.stringify(i))},unsubscribe:async e=>{var r;const n=null!=(r=await An.get(An.Constants.SUBSCRIBED))?r:JSON.stringify([]);var o=JSON.parse(n);e?await(null==t?void 0:t.realtime.unsubscribe(e).then((()=>{o=o.filter((t=>t!==e))})).catch((t=>{o=o.filter((t=>t!==e))}))):await(null==t?void 0:t.realtime.unsubscribe().then((()=>{o=[]})).catch((e=>{}))),await An.set(An.Constants.SUBSCRIBED,JSON.stringify(o))},fetch:async e=>{const n=await(null==t?void 0:t.records.getFullList(e,200).catch((e=>{})));r(H(e,n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r).catch((e=>{})))},update:async(e,r,n)=>{await(null==t?void 0:t.records.update(e,r,n).catch((e=>{})))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r).catch((e=>{})))}};return z.useEffect((()=>(e.collections&&e.collections.forEach((async e=>{await n.fetch(e),await n.subscribe(e)})),()=>{(async()=>{await n.unsubscribe()})()})),[e.collections]),z.createElement(Ln.Provider,{value:{actions:n}},e.children)},zn=z.createContext(null),Vn=e=>z.createElement(zn.Provider,{value:e.client},e.children),Bn=z.createContext({}),Jn=e=>{const t=Mn(),[r,n]=z.useState(),o={registerWithEmail:async(e,r)=>{await(null==t?void 0:t.users.create({email:e,password:r,passwordConfirm:r}))},signInWithEmail:async(e,r)=>{await(null==t?void 0:t.users.authViaEmail(e,r))},signInWithProvider:async t=>{const n=null==r?void 0:r.find((e=>e.name===t)),o=(null==n?void 0:n.authUrl)+typeof document!="undefined"?e.webRedirectUrl:e.mobileRedirectUrl;await e.openURL(o),await An.set("provider",JSON.stringify(r))},submitProviderResult:async r=>{const n=new URLSearchParams(r.split("?")[1]),o=n.get("code"),i=n.get("state"),u=await An.get("provider");if(u){const r=JSON.parse(u),n=null==r?void 0:r.find((e=>e.state===i));n&&o&&await(null==t?void 0:t.users.authViaOAuth2(n.name,o,n.codeVerifier,"undefined"!=typeof document?e.webRedirectUrl:e.mobileRedirectUrl))}},signOut:()=>{null==t||t.authStore.clear()},sendPasswordResetEmail:async e=>{await(null==t?void 0:t.users.requestPasswordReset(e))},sendEmailVerification:async e=>{await(null==t?void 0:t.users.requestVerification(e))},updateProfile:async(e,r)=>{await(null==t?void 0:t.records.update("profiles",e,r))},updateEmail:async e=>{await(null==t?void 0:t.users.requestEmailChange(e))},deleteUser:async e=>{await(null==t?void 0:t.users.delete(e))}};return z.useEffect((()=>{(async()=>{const e=await(null==t?void 0:t.users.listAuthMethods());n(null==e?void 0:e.authProviders)})()}),[e.webRedirectUrl,e.mobileRedirectUrl]),z.createElement(Bn.Provider,{value:o},e.children)};function Wn(e){return Wn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wn(e)}function qn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Kn(e,t){for(var r=0;t.length>r;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Hn(e,t){return!t||"object"!==Wn(t)&&"function"!=typeof t?Gn(e):t}function Xn(e){return Xn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Xn(e)}function Gn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Yn(e,t){return Yn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Yn(e,t)}function Qn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Zn=function(e){function t(){var e,r;qn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return Qn(Gn(r=Hn(this,(e=Xn(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),Qn(Gn(r),"_unsubscribe",void 0),Qn(Gn(r),"handlePersistorState",(function(){r.props.persistor.getState().bootstrapped&&(r.props.onBeforeLift?Promise.resolve(r.props.onBeforeLift()).finally((function(){return r.setState({bootstrapped:!0})})):r.setState({bootstrapped:!0}),r._unsubscribe&&r._unsubscribe())})),r}var r,n,o;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Yn(e,t)}(t,e),r=t,(n=[{key:"componentDidMount",value:function(){this._unsubscribe=this.props.persistor.subscribe(this.handlePersistorState),this.handlePersistorState()}},{key:"componentWillUnmount",value:function(){this._unsubscribe&&this._unsubscribe()}},{key:"render",value:function(){return"function"==typeof this.props.children?this.props.children(this.state.bootstrapped):this.state.bootstrapped?this.props.children:this.props.loading}}])&&Kn(r.prototype,n),o&&Kn(r,o),t}(z.PureComponent);Qn(Zn,"defaultProps",{children:null,loading:null});const eo=z.createContext(null);e.ADD_RECORD=B,e.ADD_RECORDS=J,e.AuthContext=Bn,e.AuthProvider=Jn,e.ClientContext=zn,e.ClientProvider=Vn,e.ContentContext=Ln,e.ContentProvider=Fn,e.DELETE_RECORD=q,e.DELETE_RECORDS=K,e.Pocketbase=e=>{const t=new o.default(e.serverURL);return t?z.createElement(Vn,{client:t},z.createElement(vn,{store:$n},z.createElement(Zn,{persistor:Tn},z.createElement(Jn,{webRedirectUrl:e.webRedirectUrl,mobileRedirectUrl:e.mobileRedirectUrl,openURL:e.openURL},z.createElement(Fn,{collections:e.initialCollections},e.children))))):null},e.PocketbaseContext=eo,e.SET_RECORDS=V,e.UPDATE_RECORD=W,e.appReducer=he,e.persistConfig=Dn,e.persistor=Tn,e.recordsAction=Q,e.store=$n,e.useAppContent=function(e,t=!1){var r;const n=null!=(r=Un((t=>t.reducer.records[e])))?r:[],o=z.useContext(Ln);z.useEffect((()=>{t&&o.actions.fetch(e)}),[e,t]);const[i,u]=z.useState(!1);async function c(){var t;const r=null!=(t=await An.get(An.Constants.SUBSCRIBED))?t:JSON.stringify([]);var n=JSON.parse(r);u(n.includes(e))}return z.useEffect((()=>{(async()=>{await c()})()}),[]),{records:n,actions:{subscribe:async()=>{await o.actions.subscribe(e),await c()},unsubscribe:async()=>{o.actions.unsubscribe(e),await c()},fetch:async()=>await o.actions.fetch(e),create:async t=>await o.actions.create(e,t),update:async(t,r)=>await o.actions.update(e,t,r),delete:async t=>await o.actions.delete(e,t)},isSubscribed:i}},e.useAppDispatch=Nn,e.useAppSelector=Un,e.useAuth=function(){return{actions:z.useContext(Bn)}},e.useClientContext=Mn,Object.defineProperty(e,"__esModule",{value:!0})}));
|
package/es/context/content.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
declare type SubscribeType = (collectionName: string) => Promise<void>;
|
|
3
|
-
declare type UnsubscribeType = (collectionName?: string) => void
|
|
3
|
+
declare type UnsubscribeType = (collectionName?: string) => Promise<void>;
|
|
4
4
|
declare type FetchType = (collectionName: string) => Promise<void>;
|
|
5
5
|
declare type CreateType = (collectionName: string, record: {}) => Promise<void>;
|
|
6
6
|
declare type UpdateType = (collectionName: string, recordId: string, record: {}) => Promise<void>;
|
package/es/context/content.js
CHANGED
|
@@ -8,9 +8,11 @@ export const ContentContext = createContext({});
|
|
|
8
8
|
export const ContentProvider = props => {
|
|
9
9
|
const client = useClientContext();
|
|
10
10
|
const dispatch = store.useAppDispatch;
|
|
11
|
-
const [collections, _] = React.useState(props.collections || []);
|
|
12
11
|
const actions = {
|
|
13
12
|
subscribe: async collectionName => {
|
|
13
|
+
var _await$StorageService;
|
|
14
|
+
const subscribedCollectionsString = (_await$StorageService = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
15
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
14
16
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
15
17
|
switch (event.action) {
|
|
16
18
|
case 'create':
|
|
@@ -25,22 +27,31 @@ export const ContentProvider = props => {
|
|
|
25
27
|
default:
|
|
26
28
|
break;
|
|
27
29
|
}
|
|
28
|
-
}).then(
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
}).then(() => {
|
|
31
|
+
if (!subscribedCollections.includes(collectionName)) {
|
|
32
|
+
subscribedCollections.push(collectionName);
|
|
33
|
+
}
|
|
34
|
+
}).catch(_error => {
|
|
35
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
36
|
+
}));
|
|
37
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
31
38
|
},
|
|
32
|
-
unsubscribe: collectionName => {
|
|
39
|
+
unsubscribe: async collectionName => {
|
|
40
|
+
var _await$StorageService2;
|
|
41
|
+
const subscribedCollectionsString = (_await$StorageService2 = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService2 : JSON.stringify([]);
|
|
42
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
33
43
|
if (collectionName) {
|
|
34
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
})
|
|
44
|
+
await (client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(() => {
|
|
45
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
46
|
+
}).catch(_error => {
|
|
47
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
48
|
+
}));
|
|
39
49
|
} else {
|
|
40
|
-
client == null ? void 0 : client.realtime.unsubscribe().then(
|
|
41
|
-
|
|
42
|
-
}).catch(_error => {});
|
|
50
|
+
await (client == null ? void 0 : client.realtime.unsubscribe().then(() => {
|
|
51
|
+
subscribedCollections = [];
|
|
52
|
+
}).catch(_error => {}));
|
|
43
53
|
}
|
|
54
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
44
55
|
},
|
|
45
56
|
fetch: async collectionName => {
|
|
46
57
|
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
@@ -57,14 +68,18 @@ export const ContentProvider = props => {
|
|
|
57
68
|
}
|
|
58
69
|
};
|
|
59
70
|
useEffect(() => {
|
|
60
|
-
if (collections) {
|
|
61
|
-
collections.forEach(collectionName => {
|
|
62
|
-
actions.fetch(collectionName);
|
|
63
|
-
actions.subscribe(collectionName);
|
|
71
|
+
if (props.collections) {
|
|
72
|
+
props.collections.forEach(async collectionName => {
|
|
73
|
+
await actions.fetch(collectionName);
|
|
74
|
+
await actions.subscribe(collectionName);
|
|
64
75
|
});
|
|
65
76
|
}
|
|
66
|
-
return () =>
|
|
67
|
-
|
|
77
|
+
return () => {
|
|
78
|
+
(async () => {
|
|
79
|
+
await actions.unsubscribe();
|
|
80
|
+
})();
|
|
81
|
+
};
|
|
82
|
+
}, [props.collections]);
|
|
68
83
|
return /*#__PURE__*/React.createElement(ContentContext.Provider, {
|
|
69
84
|
value: {
|
|
70
85
|
actions
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Record } from '../interfaces/Record';
|
|
2
2
|
export declare type SubscribeType = () => Promise<void | undefined>;
|
|
3
|
-
export declare type UnsubscribeType = () => void | undefined
|
|
3
|
+
export declare type UnsubscribeType = () => Promise<void | undefined>;
|
|
4
4
|
export declare type FetchType = () => Promise<void | undefined>;
|
|
5
5
|
export declare type CreateType = (record: {}) => Promise<void | undefined>;
|
|
6
6
|
export declare type UpdateType = (id: string, record: {}) => Promise<void | undefined>;
|
|
@@ -14,8 +14,9 @@ export function useAppContent(collectionName, initialFetch = false) {
|
|
|
14
14
|
const [isSubscribed, setIsSubscribed] = useState(false);
|
|
15
15
|
async function refetchSubscribeState() {
|
|
16
16
|
var _await$StorageService;
|
|
17
|
-
const
|
|
18
|
-
|
|
17
|
+
const subscribedCollectionsString = (_await$StorageService = await StorageService.get(StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
18
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
19
|
+
setIsSubscribed(subscribedCollections.includes(collectionName));
|
|
19
20
|
}
|
|
20
21
|
useEffect(() => {
|
|
21
22
|
(async () => {
|
|
@@ -27,9 +28,9 @@ export function useAppContent(collectionName, initialFetch = false) {
|
|
|
27
28
|
await context.actions.subscribe(collectionName);
|
|
28
29
|
await refetchSubscribeState();
|
|
29
30
|
},
|
|
30
|
-
unsubscribe: () => {
|
|
31
|
+
unsubscribe: async () => {
|
|
31
32
|
context.actions.unsubscribe(collectionName);
|
|
32
|
-
refetchSubscribeState();
|
|
33
|
+
await refetchSubscribeState();
|
|
33
34
|
},
|
|
34
35
|
fetch: async () => await context.actions.fetch(collectionName),
|
|
35
36
|
create: async record => await context.actions.create(collectionName, record),
|
package/es/service/Storage.d.ts
CHANGED
package/es/service/Storage.js
CHANGED
package/lib/context/content.js
CHANGED
|
@@ -14,9 +14,11 @@ exports.ContentContext = ContentContext;
|
|
|
14
14
|
const ContentProvider = props => {
|
|
15
15
|
const client = (0, _useClientContext.useClientContext)();
|
|
16
16
|
const dispatch = store.useAppDispatch;
|
|
17
|
-
const [collections, _] = React.useState(props.collections || []);
|
|
18
17
|
const actions = {
|
|
19
18
|
subscribe: async collectionName => {
|
|
19
|
+
var _await$StorageService;
|
|
20
|
+
const subscribedCollectionsString = (_await$StorageService = await _Storage.StorageService.get(_Storage.StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
21
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
20
22
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
21
23
|
switch (event.action) {
|
|
22
24
|
case 'create':
|
|
@@ -31,22 +33,31 @@ const ContentProvider = props => {
|
|
|
31
33
|
default:
|
|
32
34
|
break;
|
|
33
35
|
}
|
|
34
|
-
}).then(
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
}).then(() => {
|
|
37
|
+
if (!subscribedCollections.includes(collectionName)) {
|
|
38
|
+
subscribedCollections.push(collectionName);
|
|
39
|
+
}
|
|
40
|
+
}).catch(_error => {
|
|
41
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
42
|
+
}));
|
|
43
|
+
await _Storage.StorageService.set(_Storage.StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
37
44
|
},
|
|
38
|
-
unsubscribe: collectionName => {
|
|
45
|
+
unsubscribe: async collectionName => {
|
|
46
|
+
var _await$StorageService2;
|
|
47
|
+
const subscribedCollectionsString = (_await$StorageService2 = await _Storage.StorageService.get(_Storage.StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService2 : JSON.stringify([]);
|
|
48
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
39
49
|
if (collectionName) {
|
|
40
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
})
|
|
50
|
+
await (client == null ? void 0 : client.realtime.unsubscribe(collectionName).then(() => {
|
|
51
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
52
|
+
}).catch(_error => {
|
|
53
|
+
subscribedCollections = subscribedCollections.filter(collection => collection !== collectionName);
|
|
54
|
+
}));
|
|
45
55
|
} else {
|
|
46
|
-
client == null ? void 0 : client.realtime.unsubscribe().then(
|
|
47
|
-
|
|
48
|
-
}).catch(_error => {});
|
|
56
|
+
await (client == null ? void 0 : client.realtime.unsubscribe().then(() => {
|
|
57
|
+
subscribedCollections = [];
|
|
58
|
+
}).catch(_error => {}));
|
|
49
59
|
}
|
|
60
|
+
await _Storage.StorageService.set(_Storage.StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
50
61
|
},
|
|
51
62
|
fetch: async collectionName => {
|
|
52
63
|
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
@@ -63,14 +74,18 @@ const ContentProvider = props => {
|
|
|
63
74
|
}
|
|
64
75
|
};
|
|
65
76
|
(0, React.useEffect)(() => {
|
|
66
|
-
if (collections) {
|
|
67
|
-
collections.forEach(collectionName => {
|
|
68
|
-
actions.fetch(collectionName);
|
|
69
|
-
actions.subscribe(collectionName);
|
|
77
|
+
if (props.collections) {
|
|
78
|
+
props.collections.forEach(async collectionName => {
|
|
79
|
+
await actions.fetch(collectionName);
|
|
80
|
+
await actions.subscribe(collectionName);
|
|
70
81
|
});
|
|
71
82
|
}
|
|
72
|
-
return () =>
|
|
73
|
-
|
|
83
|
+
return () => {
|
|
84
|
+
(async () => {
|
|
85
|
+
await actions.unsubscribe();
|
|
86
|
+
})();
|
|
87
|
+
};
|
|
88
|
+
}, [props.collections]);
|
|
74
89
|
return /*#__PURE__*/React.createElement(ContentContext.Provider, {
|
|
75
90
|
value: {
|
|
76
91
|
actions
|
|
@@ -20,8 +20,9 @@ function useAppContent(collectionName, initialFetch = false) {
|
|
|
20
20
|
const [isSubscribed, setIsSubscribed] = (0, _react.useState)(false);
|
|
21
21
|
async function refetchSubscribeState() {
|
|
22
22
|
var _await$StorageService;
|
|
23
|
-
const
|
|
24
|
-
|
|
23
|
+
const subscribedCollectionsString = (_await$StorageService = await _Storage.StorageService.get(_Storage.StorageService.Constants.SUBSCRIBED)) != null ? _await$StorageService : JSON.stringify([]);
|
|
24
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString);
|
|
25
|
+
setIsSubscribed(subscribedCollections.includes(collectionName));
|
|
25
26
|
}
|
|
26
27
|
(0, _react.useEffect)(() => {
|
|
27
28
|
(async () => {
|
|
@@ -33,9 +34,9 @@ function useAppContent(collectionName, initialFetch = false) {
|
|
|
33
34
|
await context.actions.subscribe(collectionName);
|
|
34
35
|
await refetchSubscribeState();
|
|
35
36
|
},
|
|
36
|
-
unsubscribe: () => {
|
|
37
|
+
unsubscribe: async () => {
|
|
37
38
|
context.actions.unsubscribe(collectionName);
|
|
38
|
-
refetchSubscribeState();
|
|
39
|
+
await refetchSubscribeState();
|
|
39
40
|
},
|
|
40
41
|
fetch: async () => await context.actions.fetch(collectionName),
|
|
41
42
|
create: async record => await context.actions.create(collectionName, record),
|
package/lib/service/Storage.js
CHANGED
package/package.json
CHANGED
package/src/context/content.tsx
CHANGED
|
@@ -7,7 +7,7 @@ import { recordsAction } from '../store/actions';
|
|
|
7
7
|
import { StorageService } from '../service/Storage';
|
|
8
8
|
|
|
9
9
|
type SubscribeType = (collectionName: string) => Promise<void>;
|
|
10
|
-
type UnsubscribeType = (collectionName?: string) => void
|
|
10
|
+
type UnsubscribeType = (collectionName?: string) => Promise<void>;
|
|
11
11
|
type FetchType = (collectionName: string) => Promise<void>;
|
|
12
12
|
type CreateType = (collectionName: string, record: {}) => Promise<void>;
|
|
13
13
|
type UpdateType = (collectionName: string, recordId: string, record: {}) => Promise<void>;
|
|
@@ -41,11 +41,12 @@ interface MessageData {
|
|
|
41
41
|
export const ContentProvider = (props: ContentProviderProps) => {
|
|
42
42
|
const client = useClientContext();
|
|
43
43
|
const dispatch = store.useAppDispatch;
|
|
44
|
-
const [collections, _] = React.useState<string[]>(props.collections || []);
|
|
45
|
-
|
|
46
44
|
|
|
47
45
|
const actions: ContentActions = {
|
|
48
46
|
subscribe: async (collectionName: string) => {
|
|
47
|
+
const subscribedCollectionsString = await StorageService.get(StorageService.Constants.SUBSCRIBED) ?? JSON.stringify([]);
|
|
48
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString) as string[];
|
|
49
|
+
|
|
49
50
|
await client?.realtime.subscribe(collectionName, (event: MessageData) => {
|
|
50
51
|
switch (event.action) {
|
|
51
52
|
case 'create':
|
|
@@ -61,26 +62,38 @@ export const ContentProvider = (props: ContentProviderProps) => {
|
|
|
61
62
|
break;
|
|
62
63
|
}
|
|
63
64
|
})
|
|
64
|
-
.then(
|
|
65
|
-
|
|
65
|
+
.then(() => {
|
|
66
|
+
if (!subscribedCollections.includes(collectionName)) {
|
|
67
|
+
subscribedCollections.push(collectionName);
|
|
68
|
+
}
|
|
66
69
|
})
|
|
67
|
-
.catch((_error) => {
|
|
70
|
+
.catch((_error) => {
|
|
71
|
+
subscribedCollections = subscribedCollections.filter((collection) => collection !== collectionName);
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
68
75
|
},
|
|
69
|
-
unsubscribe: (collectionName?: string) => {
|
|
76
|
+
unsubscribe: async (collectionName?: string) => {
|
|
77
|
+
const subscribedCollectionsString = await StorageService.get(StorageService.Constants.SUBSCRIBED) ?? JSON.stringify([]);
|
|
78
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString) as string[];
|
|
79
|
+
|
|
70
80
|
if (collectionName) {
|
|
71
|
-
client?.realtime.unsubscribe(collectionName)
|
|
72
|
-
.then(
|
|
73
|
-
|
|
74
|
-
await StorageService.set("subscribed", JSON.stringify(subscribed.filter((name) => name !== collectionName)));
|
|
81
|
+
await client?.realtime.unsubscribe(collectionName)
|
|
82
|
+
.then(() => {
|
|
83
|
+
subscribedCollections = subscribedCollections.filter((collection) => collection !== collectionName);
|
|
75
84
|
})
|
|
76
|
-
.catch((_error) => {
|
|
85
|
+
.catch((_error) => {
|
|
86
|
+
subscribedCollections = subscribedCollections.filter((collection) => collection !== collectionName);
|
|
87
|
+
});
|
|
77
88
|
} else {
|
|
78
|
-
client?.realtime.unsubscribe()
|
|
79
|
-
.then(
|
|
80
|
-
|
|
89
|
+
await client?.realtime.unsubscribe()
|
|
90
|
+
.then(() => {
|
|
91
|
+
subscribedCollections = [];
|
|
81
92
|
})
|
|
82
93
|
.catch((_error) => {});
|
|
83
94
|
}
|
|
95
|
+
|
|
96
|
+
await StorageService.set(StorageService.Constants.SUBSCRIBED, JSON.stringify(subscribedCollections));
|
|
84
97
|
},
|
|
85
98
|
fetch: async (collectionName: string) => {
|
|
86
99
|
const records = await client?.records.getFullList(collectionName, 200).catch((_error) => {});
|
|
@@ -98,14 +111,18 @@ export const ContentProvider = (props: ContentProviderProps) => {
|
|
|
98
111
|
};
|
|
99
112
|
|
|
100
113
|
useEffect(() => {
|
|
101
|
-
if (collections) {
|
|
102
|
-
collections.forEach((collectionName) => {
|
|
103
|
-
actions.fetch(collectionName);
|
|
104
|
-
actions.subscribe(collectionName);
|
|
114
|
+
if (props.collections) {
|
|
115
|
+
props.collections.forEach(async (collectionName) => {
|
|
116
|
+
await actions.fetch(collectionName);
|
|
117
|
+
await actions.subscribe(collectionName);
|
|
105
118
|
});
|
|
106
119
|
}
|
|
107
|
-
return () =>
|
|
108
|
-
|
|
120
|
+
return () => {
|
|
121
|
+
(async () => {
|
|
122
|
+
await actions.unsubscribe();
|
|
123
|
+
})();
|
|
124
|
+
};
|
|
125
|
+
}, [props.collections]);
|
|
109
126
|
|
|
110
127
|
return (
|
|
111
128
|
<ContentContext.Provider value={{
|
|
@@ -5,7 +5,7 @@ import { Record } from '../interfaces/Record';
|
|
|
5
5
|
import { StorageService } from '../service/Storage';
|
|
6
6
|
|
|
7
7
|
export type SubscribeType = () => Promise<void | undefined>
|
|
8
|
-
export type UnsubscribeType = () => void | undefined
|
|
8
|
+
export type UnsubscribeType = () => Promise<void | undefined>;
|
|
9
9
|
export type FetchType = () => Promise<void | undefined>
|
|
10
10
|
export type CreateType = (record: {}) => Promise<void | undefined>
|
|
11
11
|
export type UpdateType = (id: string, record: {}) => Promise<void | undefined>
|
|
@@ -36,8 +36,9 @@ export function useAppContent<T extends Record>(
|
|
|
36
36
|
const [isSubscribed, setIsSubscribed] = useState(false);
|
|
37
37
|
|
|
38
38
|
async function refetchSubscribeState() {
|
|
39
|
-
const
|
|
40
|
-
|
|
39
|
+
const subscribedCollectionsString = await StorageService.get(StorageService.Constants.SUBSCRIBED) ?? JSON.stringify([]);
|
|
40
|
+
var subscribedCollections = JSON.parse(subscribedCollectionsString) as string[];
|
|
41
|
+
setIsSubscribed(subscribedCollections.includes(collectionName));
|
|
41
42
|
}
|
|
42
43
|
|
|
43
44
|
useEffect(() => {
|
|
@@ -52,9 +53,9 @@ export function useAppContent<T extends Record>(
|
|
|
52
53
|
await context.actions.subscribe(collectionName)
|
|
53
54
|
await refetchSubscribeState()
|
|
54
55
|
},
|
|
55
|
-
unsubscribe: () => {
|
|
56
|
+
unsubscribe: async () => {
|
|
56
57
|
context.actions.unsubscribe(collectionName)
|
|
57
|
-
refetchSubscribeState()
|
|
58
|
+
await refetchSubscribeState()
|
|
58
59
|
},
|
|
59
60
|
fetch: async () => await context.actions.fetch(collectionName),
|
|
60
61
|
create: async (record: {}) => await context.actions.create(collectionName, record),
|
package/src/service/Storage.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import AsyncStorage from "@react-native-async-storage/async-storage";
|
|
2
2
|
|
|
3
3
|
export class StorageService {
|
|
4
|
+
|
|
5
|
+
static Constants = {
|
|
6
|
+
SUBSCRIBED: "subscribed",
|
|
7
|
+
}
|
|
8
|
+
|
|
4
9
|
static async get(key: string): Promise<string | null> {
|
|
5
10
|
return typeof document !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
|
|
6
11
|
}
|