pocketbase-react 0.1.24 → 0.1.25
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 +5 -5
- package/dist/pocketbase-react.min.js +1 -1
- package/es/context/auth.js +2 -2
- package/es/service/Storage.js +3 -3
- package/lib/context/auth.js +2 -2
- package/lib/service/Storage.js +3 -3
- package/package.json +1 -1
- package/src/context/auth.tsx +2 -2
- package/src/service/Storage.ts +3 -3
package/dist/pocketbase-react.js
CHANGED
|
@@ -5911,17 +5911,17 @@
|
|
|
5911
5911
|
|
|
5912
5912
|
class StorageService {
|
|
5913
5913
|
static async get(key) {
|
|
5914
|
-
return typeof
|
|
5914
|
+
return typeof window !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
|
|
5915
5915
|
}
|
|
5916
5916
|
static async set(key, value) {
|
|
5917
|
-
if (typeof
|
|
5917
|
+
if (typeof window !== 'undefined') {
|
|
5918
5918
|
return localStorage.setItem(key, value);
|
|
5919
5919
|
} else {
|
|
5920
5920
|
return await AsyncStorage.setItem(key, value);
|
|
5921
5921
|
}
|
|
5922
5922
|
}
|
|
5923
5923
|
static async remove(key) {
|
|
5924
|
-
if (typeof
|
|
5924
|
+
if (typeof window !== 'undefined') {
|
|
5925
5925
|
return localStorage.removeItem(key);
|
|
5926
5926
|
} else {
|
|
5927
5927
|
return await AsyncStorage.removeItem(key);
|
|
@@ -6123,7 +6123,7 @@
|
|
|
6123
6123
|
},
|
|
6124
6124
|
signInWithProvider: async provider => {
|
|
6125
6125
|
const authProvider = authProviders == null ? void 0 : authProviders.find(p => p.name === provider);
|
|
6126
|
-
const redirectURL = typeof
|
|
6126
|
+
const redirectURL = typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
|
|
6127
6127
|
const url = (authProvider == null ? void 0 : authProvider.authUrl) + redirectURL;
|
|
6128
6128
|
await StorageService.set('provider', JSON.stringify(authProviders));
|
|
6129
6129
|
await props.openURL(url);
|
|
@@ -6137,7 +6137,7 @@
|
|
|
6137
6137
|
const providers = JSON.parse(providersString);
|
|
6138
6138
|
const authProvider = providers == null ? void 0 : providers.find(p => p.state === state);
|
|
6139
6139
|
if (authProvider && code) {
|
|
6140
|
-
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof
|
|
6140
|
+
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
|
|
6141
6141
|
}
|
|
6142
6142
|
}
|
|
6143
6143
|
},
|
|
@@ -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 Ir,Dr=Symbol.for("react.element"),$r=Symbol.for("react.portal"),Tr=Symbol.for("react.fragment"),Ur=Symbol.for("react.strict_mode"),Nr=Symbol.for("react.profiler"),Mr=Symbol.for("react.provider"),Lr=Symbol.for("react.context"),Fr=Symbol.for("react.server_context"),zr=Symbol.for("react.forward_ref"),Vr=Symbol.for("react.suspense"),Br=Symbol.for("react.suspense_list"),Wr=Symbol.for("react.memo"),qr=Symbol.for("react.lazy"),Kr=Symbol.for("react.offscreen");function Jr(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Dr:switch(e=e.type){case Tr:case Nr:case Ur:case Vr:case Br:return e;default:switch(e=e&&e.$$typeof){case Fr:case Lr:case zr:case qr:case Wr:case Mr:return e;default:return t}}case $r:return t}}}Ir=Symbol.for("react.module.reference");var Hr={ContextConsumer:Lr,ContextProvider:Mr,Element:Dr,ForwardRef:zr,Fragment:Tr,Lazy:qr,Memo:Wr,Portal:$r,Profiler:Nr,StrictMode:Ur,Suspense:Vr,SuspenseList:Br,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return Jr(e)===Lr},isContextProvider:function(e){return Jr(e)===Mr},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Dr},isForwardRef:function(e){return Jr(e)===zr},isFragment:function(e){return Jr(e)===Tr},isLazy:function(e){return Jr(e)===qr},isMemo:function(e){return Jr(e)===Wr},isPortal:function(e){return Jr(e)===$r},isProfiler:function(e){return Jr(e)===Nr},isStrictMode:function(e){return Jr(e)===Ur},isSuspense:function(e){return Jr(e)===Vr},isSuspenseList:function(e){return Jr(e)===Br},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Tr||e===Nr||e===Ur||e===Vr||e===Br||e===Kr||"object"==typeof e&&null!==e&&(e.$$typeof===qr||e.$$typeof===Wr||e.$$typeof===Mr||e.$$typeof===Lr||e.$$typeof===zr||e.$$typeof===Ir||void 0!==e.getModuleId)},typeOf:Jr};u((function(e){e.exports=Hr}));const Xr={notify(){},get:()=>[]};function Gr(e,t){let r,n=Xr;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=er();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=Xr)},getListeners:()=>n};return u}const Yr=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function Qr({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=Gr(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);Yr((()=>{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||tr).Provider,{value:o},r)}nr=Qt.useSyncExternalStoreWithSelector,Zt=t.unstable_batchedUpdates;const Zr="SET_RECORDS",en="ADD_RECORD",tn="ADD_RECORDS",rn="UPDATE_RECORD",nn="DELETE_RECORD",on="DELETE_RECORDS",un="SET_SUBSCRIPTIONS",cn="ADD_SUBSCRIPTION",an="DELETE_SUBSCRIPTION";function sn(e,t){return[...t,e]}function fn(e,t){return[...t,...e]}function ln(e,t){return t.map((t=>t.id===e.id?e:t))}function pn(e,t){return t.filter((t=>t.id!==e.id))}function yn(e,t){return t.filter((t=>!e.includes(t)))}const dn=Je({records:(e={},t)=>{var r;const n=null!=(r=e[t.key])?r:[];switch(t.type){case Zr:if(Array.isArray(t.payload))return cr({},e,{[t.key]:t.payload});case en:return cr({},e,{[t.key]:sn(t.payload,n)});case tn:return cr({},e,{[t.key]:fn(t.payload,n)});case nn:return cr({},e,{[t.key]:pn(t.payload,n)});case on:return cr({},e,{[t.key]:yn(t.payload,n)});case rn:return cr({},e,{[t.key]:ln(t.payload,n)});default:return e}},subscriptions:(e=[],t)=>{switch(t.type){case un:if(Array.isArray(t.payload))return t.payload;case cn:return function(e,t){return t.includes(e)?t:[...t,e]}(t.payload,e);case an:return function(e,t){return t.filter((t=>t!==e))}(t.payload,e);default:return e}}});var bn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:vn}=Object.prototype,{propertyIsEnumerable:hn}=Object,mn=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),gn=i,On={concatArrays:!1,ignoreUndefined:!1},Sn=e=>{const t=[];for(const r in e)vn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)hn.call(e,n)&&t.push(n)}return t};function wn(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Sn(e).forEach((r=>{mn(t,r,wn(e[r]))})),t}(e):bn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Sn(e).forEach((r=>{mn(t,r,wn(e[r]))})),t}(e):e}const Pn=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||mn(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?En(e[r],t[r],n):wn(t[r]))})),e);function En(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++)vn.call(t,r)&&(i.push(r+""),mn(n,o++,t===e?t[r]:wn(t[r])));n=Pn(n,t,Sn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):bn(t)&&bn(e)?Pn(e,t,Sn(t),r):wn(t)}const jn=function(...e){const t=En(wn(On),this!==gn&&this||{},On);let r={_:{}};for(const n of e)if(void 0!==n){if(!bn(n))throw new TypeError("`"+n+"` is not an Option Object");r=En(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function _n(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 Rn(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 Cn={getItem:(e,t)=>_n((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>_n((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>_n((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>_n((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(jn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>_n((()=>window.localStorage.clear()),e),getAllKeys:e=>_n((()=>{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)=>Rn(e.map((e=>Cn.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>Rn(e.map((e=>Cn.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>Rn(e.map((e=>Cn.removeItem(e))),t),multiMerge:(e,t)=>Rn(e.map((e=>Cn.mergeItem(e[0],e[1]))),t)};class xn{static async get(e){return"undefined"!=typeof document?localStorage.getItem(e):await Cn.getItem(e)}static async set(e,t){return"undefined"!=typeof document?localStorage.setItem(e,t):await Cn.setItem(e,t)}static async remove(e){return"undefined"!=typeof document?localStorage.removeItem(e):await Cn.removeItem(e)}}xn.Constants={SUBSCRIBED:"subscribed",COOKIE:"cookie"};const kn={key:"root",storage:{getItem:async(e,...t)=>await xn.get(e),setItem:async(e,t,...r)=>await xn.set(e,t),removeItem:async(e,...t)=>await xn.remove(e)}},An=Je({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Ot:e.stateReconciler,o=e.getStoredState||Pt,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=xt(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=St(e)),y)return Rt({},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)})),Rt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===bt)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:ft).concat(e.key);return t.removeItem(r,jt)}(e)),Rt({},t(d,l),{_persist:y});if(l.type===lt)return l.result(u&&u.flush()),Rt({},t(d,l),{_persist:y});if(l.type===yt)a=!0;else if(l.type===pt){if(c)return Rt({},d,{_persist:Rt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=Rt({},!1!==n&&void 0!==m?n(m,f,h,e):h,{_persist:Rt({},y,{rehydrated:!0})});return s(g)}}if(!y)return t(f,l);var O=t(d,l);return O===d?f:s(Rt({},O,{_persist:y}))}}(kn,dn)}),In=function(e){var t,r=st(),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=Je(i)}var d=c;"function"==typeof d&&(d=d(r));var b=Xe.apply(void 0,d),v=He;s&&(v=ct(function(e,t){for(var r in t||(t={}))ot.call(t,r)&&ut(e,r,t[r]);if(nt)for(var n=0,o=nt(t);o.length>n;n++)it.call(t,r=o[n])&&ut(e,r,t[r]);return e}({trace:!1},"object"==typeof s&&s)));var h=[b];return Array.isArray(y)?h=tt([b],y):"function"==typeof y&&(h=y(h)),Ke(t,l,v.apply(void 0,h))}({reducer:An,middleware:[Ze]}),Dn=In.dispatch,$n=ur,Tn=function(e,t,r){var n=r||!1,o=Ke(Tt,$t,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:vt,key:e})},u=function(t,r,i){var u={type:pt,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=It({},o,{purge:function(){var t=[];return e.dispatch({type:bt,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:lt,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:yt})},persist:function(){e.dispatch({type:dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}(In),Un=()=>z.useContext(Hn),Nn=(e,t)=>({type:Zr,key:e,payload:t}),Mn=(e,t)=>({type:en,key:e,payload:t}),Ln=(e,t)=>({type:nn,key:e,payload:t}),Fn=(e,t)=>({type:rn,key:e,payload:t});var zn=Object.freeze({__proto__:null,setRecords:Nn,addRecord:Mn,addRecords:(e,t)=>({type:tn,key:e,payload:t}),deleteRecord:Ln,deleteRecords:(e,t)=>({type:on,key:e,payload:t}),updateRecord:Fn});const Vn=e=>({type:un,payload:e}),Bn=e=>({type:cn,payload:e}),Wn=e=>({type:an,payload:e});var qn=Object.freeze({__proto__:null,setSubscriptions:Vn,addSubscription:Bn,deleteSubscription:Wn});const Kn=z.createContext({}),Jn=e=>{const t=Un(),r=Dn;function n(e){var t;"AbortError"!==(null==e||null==(t=e.originalError)?void 0:t.name)&&console.log("Error in content provider",JSON.stringify(e))}const o={subscribe:async e=>{await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(Mn(e,t.record));break;case"update":r(Fn(e,t.record));break;case"delete":r(Ln(e,t.record))}})).then((()=>{r(Bn(e))})).catch(n))},unsubscribe:async e=>{e?await(null==t?void 0:t.realtime.unsubscribe(e).then((()=>{r(Wn(e))})).catch(n)):await(null==t?void 0:t.realtime.unsubscribe().then((()=>{r(Vn([]))})).catch(n))},fetch:async e=>{await(null==t?void 0:t.records.getFullList(e,200).then((t=>{r(Nn(e,t))})).catch(n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r).catch(n))},update:async(e,r,o)=>{await(null==t?void 0:t.records.update(e,r,o).catch(n))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r).catch(n))}};return z.useEffect((()=>(e.collections&&e.collections.forEach((async e=>{await o.fetch(e),await o.subscribe(e)})),()=>{(async()=>{await o.unsubscribe()})()})),[e.collections]),z.createElement(Kn.Provider,{value:o},e.children)},Hn=z.createContext(null),Xn=e=>z.createElement(Hn.Provider,{value:e.client},e.children),Gn=z.createContext({}),Yn=e=>{const t=Un(),[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="undefined"!=typeof document?e.webRedirectUrl:e.mobileRedirectUrl,i=(null==n?void 0:n.authUrl)+o;await xn.set("provider",JSON.stringify(r)),await e.openURL(i)},submitProviderResult:async r=>{const n=new URLSearchParams(r.split("?")[1]),o=n.get("code"),i=n.get("state"),u=await xn.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(Gn.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 Zn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function eo(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 to(e,t){return!t||"object"!==Qn(t)&&"function"!=typeof t?no(e):t}function ro(e){return ro=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ro(e)}function no(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function oo(e,t){return oo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},oo(e,t)}function io(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var uo=function(e){function t(){var e,r;Zn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return io(no(r=to(this,(e=ro(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),io(no(r),"_unsubscribe",void 0),io(no(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&&oo(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}}])&&eo(r.prototype,n),o&&eo(r,o),t}(z.PureComponent);io(uo,"defaultProps",{children:null,loading:null});const co=z.createContext(null);e.ADD_RECORD=en,e.ADD_RECORDS=tn,e.ADD_SUBSCRIPTION=cn,e.AuthContext=Gn,e.AuthProvider=Yn,e.ClientContext=Hn,e.ClientProvider=Xn,e.ContentContext=Kn,e.ContentProvider=Jn,e.DELETE_RECORD=nn,e.DELETE_RECORDS=on,e.DELETE_SUBSCRIPTION=an,e.Pocketbase=e=>{const[t,r]=z.useState(null),[n,i]=z.useState();return z.useEffect((()=>{const t=new o.default(e.serverURL);t.authStore.onChange((async()=>{await xn.set(xn.Constants.COOKIE,t.authStore.exportToCookie()),i([]),i(e.initialCollections)})),xn.get(xn.Constants.COOKIE).then((n=>{n&&(t.authStore.loadFromCookie(n),i([]),i(e.initialCollections)),r(t)}))}),[e.serverURL]),t?z.createElement(Xn,{client:t},z.createElement(Qr,{store:In},z.createElement(uo,{persistor:Tn},z.createElement(Yn,{webRedirectUrl:e.webRedirectUrl,mobileRedirectUrl:e.mobileRedirectUrl,openURL:e.openURL},z.createElement(Jn,{collections:n},e.children))))):null},e.PocketbaseContext=co,e.SET_RECORDS=Zr,e.SET_SUBSCRIPTIONS=un,e.UPDATE_RECORD=rn,e.appReducer=dn,e.persistConfig=kn,e.persistor=Tn,e.recordsAction=zn,e.store=In,e.subscriptionsAction=qn,e.useAppContent=function(e,t=!1){const r=$n((t=>t.reducer.records[e])),n=$n((e=>e.reducer.subscriptions)),o=z.useContext(Kn);z.useEffect((()=>{t&&(async()=>{await o.fetch(e)})()}),[e,t]);const[i,u]=z.useState(!1);return z.useEffect((()=>{u(n.includes(e))}),[n]),{records:r,actions:{subscribe:async()=>await o.subscribe(e),unsubscribe:async()=>await o.unsubscribe(e),fetch:async()=>await o.fetch(e),create:async t=>await o.create(e,t),update:async(t,r)=>await o.update(e,t,r),delete:async t=>await o.delete(e,t)},isSubscribed:i}},e.useAppDispatch=Dn,e.useAppSelector=$n,e.useAuth=function(){const e=Un(),t=z.useContext(Gn),[r,n]=z.useState(null),[o,i]=z.useState(null);function u(){var t;n(""!==(null==e?void 0:e.authStore.token)),i(null!=(t=null==e?void 0:e.authStore.model)?t:null)}return z.useEffect((()=>{u(),null==e||e.authStore.onChange((()=>{u()}))}),[]),{actions:t,isSignedIn:r,user:o}},e.useClientContext=Un,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
28
|
+
var Ir,Dr=Symbol.for("react.element"),$r=Symbol.for("react.portal"),Tr=Symbol.for("react.fragment"),Ur=Symbol.for("react.strict_mode"),Nr=Symbol.for("react.profiler"),Mr=Symbol.for("react.provider"),Lr=Symbol.for("react.context"),Fr=Symbol.for("react.server_context"),zr=Symbol.for("react.forward_ref"),Vr=Symbol.for("react.suspense"),Br=Symbol.for("react.suspense_list"),Wr=Symbol.for("react.memo"),qr=Symbol.for("react.lazy"),Kr=Symbol.for("react.offscreen");function Jr(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Dr:switch(e=e.type){case Tr:case Nr:case Ur:case Vr:case Br:return e;default:switch(e=e&&e.$$typeof){case Fr:case Lr:case zr:case qr:case Wr:case Mr:return e;default:return t}}case $r:return t}}}Ir=Symbol.for("react.module.reference");var Hr={ContextConsumer:Lr,ContextProvider:Mr,Element:Dr,ForwardRef:zr,Fragment:Tr,Lazy:qr,Memo:Wr,Portal:$r,Profiler:Nr,StrictMode:Ur,Suspense:Vr,SuspenseList:Br,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return Jr(e)===Lr},isContextProvider:function(e){return Jr(e)===Mr},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Dr},isForwardRef:function(e){return Jr(e)===zr},isFragment:function(e){return Jr(e)===Tr},isLazy:function(e){return Jr(e)===qr},isMemo:function(e){return Jr(e)===Wr},isPortal:function(e){return Jr(e)===$r},isProfiler:function(e){return Jr(e)===Nr},isStrictMode:function(e){return Jr(e)===Ur},isSuspense:function(e){return Jr(e)===Vr},isSuspenseList:function(e){return Jr(e)===Br},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Tr||e===Nr||e===Ur||e===Vr||e===Br||e===Kr||"object"==typeof e&&null!==e&&(e.$$typeof===qr||e.$$typeof===Wr||e.$$typeof===Mr||e.$$typeof===Lr||e.$$typeof===zr||e.$$typeof===Ir||void 0!==e.getModuleId)},typeOf:Jr};u((function(e){e.exports=Hr}));const Xr={notify(){},get:()=>[]};function Gr(e,t){let r,n=Xr;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=er();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=Xr)},getListeners:()=>n};return u}const Yr=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function Qr({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=Gr(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);Yr((()=>{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||tr).Provider,{value:o},r)}nr=Qt.useSyncExternalStoreWithSelector,Zt=t.unstable_batchedUpdates;const Zr="SET_RECORDS",en="ADD_RECORD",tn="ADD_RECORDS",rn="UPDATE_RECORD",nn="DELETE_RECORD",on="DELETE_RECORDS",un="SET_SUBSCRIPTIONS",cn="ADD_SUBSCRIPTION",an="DELETE_SUBSCRIPTION";function sn(e,t){return[...t,e]}function fn(e,t){return[...t,...e]}function ln(e,t){return t.map((t=>t.id===e.id?e:t))}function pn(e,t){return t.filter((t=>t.id!==e.id))}function yn(e,t){return t.filter((t=>!e.includes(t)))}const dn=Je({records:(e={},t)=>{var r;const n=null!=(r=e[t.key])?r:[];switch(t.type){case Zr:if(Array.isArray(t.payload))return cr({},e,{[t.key]:t.payload});case en:return cr({},e,{[t.key]:sn(t.payload,n)});case tn:return cr({},e,{[t.key]:fn(t.payload,n)});case nn:return cr({},e,{[t.key]:pn(t.payload,n)});case on:return cr({},e,{[t.key]:yn(t.payload,n)});case rn:return cr({},e,{[t.key]:ln(t.payload,n)});default:return e}},subscriptions:(e=[],t)=>{switch(t.type){case un:if(Array.isArray(t.payload))return t.payload;case cn:return function(e,t){return t.includes(e)?t:[...t,e]}(t.payload,e);case an:return function(e,t){return t.filter((t=>t!==e))}(t.payload,e);default:return e}}});var bn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:vn}=Object.prototype,{propertyIsEnumerable:hn}=Object,mn=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),gn=i,On={concatArrays:!1,ignoreUndefined:!1},Sn=e=>{const t=[];for(const r in e)vn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)hn.call(e,n)&&t.push(n)}return t};function wn(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Sn(e).forEach((r=>{mn(t,r,wn(e[r]))})),t}(e):bn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Sn(e).forEach((r=>{mn(t,r,wn(e[r]))})),t}(e):e}const Pn=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||mn(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?En(e[r],t[r],n):wn(t[r]))})),e);function En(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++)vn.call(t,r)&&(i.push(r+""),mn(n,o++,t===e?t[r]:wn(t[r])));n=Pn(n,t,Sn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):bn(t)&&bn(e)?Pn(e,t,Sn(t),r):wn(t)}const jn=function(...e){const t=En(wn(On),this!==gn&&this||{},On);let r={_:{}};for(const n of e)if(void 0!==n){if(!bn(n))throw new TypeError("`"+n+"` is not an Option Object");r=En(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function _n(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 Rn(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 Cn={getItem:(e,t)=>_n((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>_n((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>_n((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>_n((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(jn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>_n((()=>window.localStorage.clear()),e),getAllKeys:e=>_n((()=>{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)=>Rn(e.map((e=>Cn.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>Rn(e.map((e=>Cn.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>Rn(e.map((e=>Cn.removeItem(e))),t),multiMerge:(e,t)=>Rn(e.map((e=>Cn.mergeItem(e[0],e[1]))),t)};class xn{static async get(e){return"undefined"!=typeof window?localStorage.getItem(e):await Cn.getItem(e)}static async set(e,t){return"undefined"!=typeof window?localStorage.setItem(e,t):await Cn.setItem(e,t)}static async remove(e){return"undefined"!=typeof window?localStorage.removeItem(e):await Cn.removeItem(e)}}xn.Constants={SUBSCRIBED:"subscribed",COOKIE:"cookie"};const kn={key:"root",storage:{getItem:async(e,...t)=>await xn.get(e),setItem:async(e,t,...r)=>await xn.set(e,t),removeItem:async(e,...t)=>await xn.remove(e)}},An=Je({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Ot:e.stateReconciler,o=e.getStoredState||Pt,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=xt(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=St(e)),y)return Rt({},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)})),Rt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===bt)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:ft).concat(e.key);return t.removeItem(r,jt)}(e)),Rt({},t(d,l),{_persist:y});if(l.type===lt)return l.result(u&&u.flush()),Rt({},t(d,l),{_persist:y});if(l.type===yt)a=!0;else if(l.type===pt){if(c)return Rt({},d,{_persist:Rt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=Rt({},!1!==n&&void 0!==m?n(m,f,h,e):h,{_persist:Rt({},y,{rehydrated:!0})});return s(g)}}if(!y)return t(f,l);var O=t(d,l);return O===d?f:s(Rt({},O,{_persist:y}))}}(kn,dn)}),In=function(e){var t,r=st(),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=Je(i)}var d=c;"function"==typeof d&&(d=d(r));var b=Xe.apply(void 0,d),v=He;s&&(v=ct(function(e,t){for(var r in t||(t={}))ot.call(t,r)&&ut(e,r,t[r]);if(nt)for(var n=0,o=nt(t);o.length>n;n++)it.call(t,r=o[n])&&ut(e,r,t[r]);return e}({trace:!1},"object"==typeof s&&s)));var h=[b];return Array.isArray(y)?h=tt([b],y):"function"==typeof y&&(h=y(h)),Ke(t,l,v.apply(void 0,h))}({reducer:An,middleware:[Ze]}),Dn=In.dispatch,$n=ur,Tn=function(e,t,r){var n=r||!1,o=Ke(Tt,$t,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:vt,key:e})},u=function(t,r,i){var u={type:pt,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=It({},o,{purge:function(){var t=[];return e.dispatch({type:bt,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:lt,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:yt})},persist:function(){e.dispatch({type:dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}(In),Un=()=>z.useContext(Hn),Nn=(e,t)=>({type:Zr,key:e,payload:t}),Mn=(e,t)=>({type:en,key:e,payload:t}),Ln=(e,t)=>({type:nn,key:e,payload:t}),Fn=(e,t)=>({type:rn,key:e,payload:t});var zn=Object.freeze({__proto__:null,setRecords:Nn,addRecord:Mn,addRecords:(e,t)=>({type:tn,key:e,payload:t}),deleteRecord:Ln,deleteRecords:(e,t)=>({type:on,key:e,payload:t}),updateRecord:Fn});const Vn=e=>({type:un,payload:e}),Bn=e=>({type:cn,payload:e}),Wn=e=>({type:an,payload:e});var qn=Object.freeze({__proto__:null,setSubscriptions:Vn,addSubscription:Bn,deleteSubscription:Wn});const Kn=z.createContext({}),Jn=e=>{const t=Un(),r=Dn;function n(e){var t;"AbortError"!==(null==e||null==(t=e.originalError)?void 0:t.name)&&console.log("Error in content provider",JSON.stringify(e))}const o={subscribe:async e=>{await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(Mn(e,t.record));break;case"update":r(Fn(e,t.record));break;case"delete":r(Ln(e,t.record))}})).then((()=>{r(Bn(e))})).catch(n))},unsubscribe:async e=>{e?await(null==t?void 0:t.realtime.unsubscribe(e).then((()=>{r(Wn(e))})).catch(n)):await(null==t?void 0:t.realtime.unsubscribe().then((()=>{r(Vn([]))})).catch(n))},fetch:async e=>{await(null==t?void 0:t.records.getFullList(e,200).then((t=>{r(Nn(e,t))})).catch(n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r).catch(n))},update:async(e,r,o)=>{await(null==t?void 0:t.records.update(e,r,o).catch(n))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r).catch(n))}};return z.useEffect((()=>(e.collections&&e.collections.forEach((async e=>{await o.fetch(e),await o.subscribe(e)})),()=>{(async()=>{await o.unsubscribe()})()})),[e.collections]),z.createElement(Kn.Provider,{value:o},e.children)},Hn=z.createContext(null),Xn=e=>z.createElement(Hn.Provider,{value:e.client},e.children),Gn=z.createContext({}),Yn=e=>{const t=Un(),[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="undefined"!=typeof window?e.webRedirectUrl:e.mobileRedirectUrl,i=(null==n?void 0:n.authUrl)+o;await xn.set("provider",JSON.stringify(r)),await e.openURL(i)},submitProviderResult:async r=>{const n=new URLSearchParams(r.split("?")[1]),o=n.get("code"),i=n.get("state"),u=await xn.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 window?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(Gn.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 Zn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function eo(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 to(e,t){return!t||"object"!==Qn(t)&&"function"!=typeof t?no(e):t}function ro(e){return ro=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},ro(e)}function no(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function oo(e,t){return oo=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},oo(e,t)}function io(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var uo=function(e){function t(){var e,r;Zn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return io(no(r=to(this,(e=ro(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),io(no(r),"_unsubscribe",void 0),io(no(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&&oo(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}}])&&eo(r.prototype,n),o&&eo(r,o),t}(z.PureComponent);io(uo,"defaultProps",{children:null,loading:null});const co=z.createContext(null);e.ADD_RECORD=en,e.ADD_RECORDS=tn,e.ADD_SUBSCRIPTION=cn,e.AuthContext=Gn,e.AuthProvider=Yn,e.ClientContext=Hn,e.ClientProvider=Xn,e.ContentContext=Kn,e.ContentProvider=Jn,e.DELETE_RECORD=nn,e.DELETE_RECORDS=on,e.DELETE_SUBSCRIPTION=an,e.Pocketbase=e=>{const[t,r]=z.useState(null),[n,i]=z.useState();return z.useEffect((()=>{const t=new o.default(e.serverURL);t.authStore.onChange((async()=>{await xn.set(xn.Constants.COOKIE,t.authStore.exportToCookie()),i([]),i(e.initialCollections)})),xn.get(xn.Constants.COOKIE).then((n=>{n&&(t.authStore.loadFromCookie(n),i([]),i(e.initialCollections)),r(t)}))}),[e.serverURL]),t?z.createElement(Xn,{client:t},z.createElement(Qr,{store:In},z.createElement(uo,{persistor:Tn},z.createElement(Yn,{webRedirectUrl:e.webRedirectUrl,mobileRedirectUrl:e.mobileRedirectUrl,openURL:e.openURL},z.createElement(Jn,{collections:n},e.children))))):null},e.PocketbaseContext=co,e.SET_RECORDS=Zr,e.SET_SUBSCRIPTIONS=un,e.UPDATE_RECORD=rn,e.appReducer=dn,e.persistConfig=kn,e.persistor=Tn,e.recordsAction=zn,e.store=In,e.subscriptionsAction=qn,e.useAppContent=function(e,t=!1){const r=$n((t=>t.reducer.records[e])),n=$n((e=>e.reducer.subscriptions)),o=z.useContext(Kn);z.useEffect((()=>{t&&(async()=>{await o.fetch(e)})()}),[e,t]);const[i,u]=z.useState(!1);return z.useEffect((()=>{u(n.includes(e))}),[n]),{records:r,actions:{subscribe:async()=>await o.subscribe(e),unsubscribe:async()=>await o.unsubscribe(e),fetch:async()=>await o.fetch(e),create:async t=>await o.create(e,t),update:async(t,r)=>await o.update(e,t,r),delete:async t=>await o.delete(e,t)},isSubscribed:i}},e.useAppDispatch=Dn,e.useAppSelector=$n,e.useAuth=function(){const e=Un(),t=z.useContext(Gn),[r,n]=z.useState(null),[o,i]=z.useState(null);function u(){var t;n(""!==(null==e?void 0:e.authStore.token)),i(null!=(t=null==e?void 0:e.authStore.model)?t:null)}return z.useEffect((()=>{u(),null==e||e.authStore.onChange((()=>{u()}))}),[]),{actions:t,isSignedIn:r,user:o}},e.useClientContext=Un,Object.defineProperty(e,"__esModule",{value:!0})}));
|
package/es/context/auth.js
CHANGED
|
@@ -19,7 +19,7 @@ export const AuthProvider = props => {
|
|
|
19
19
|
},
|
|
20
20
|
signInWithProvider: async provider => {
|
|
21
21
|
const authProvider = authProviders == null ? void 0 : authProviders.find(p => p.name === provider);
|
|
22
|
-
const redirectURL = typeof
|
|
22
|
+
const redirectURL = typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
|
|
23
23
|
const url = (authProvider == null ? void 0 : authProvider.authUrl) + redirectURL;
|
|
24
24
|
await StorageService.set('provider', JSON.stringify(authProviders));
|
|
25
25
|
await props.openURL(url);
|
|
@@ -33,7 +33,7 @@ export const AuthProvider = props => {
|
|
|
33
33
|
const providers = JSON.parse(providersString);
|
|
34
34
|
const authProvider = providers == null ? void 0 : providers.find(p => p.state === state);
|
|
35
35
|
if (authProvider && code) {
|
|
36
|
-
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof
|
|
36
|
+
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
},
|
package/es/service/Storage.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
2
2
|
export class StorageService {
|
|
3
3
|
static async get(key) {
|
|
4
|
-
return typeof
|
|
4
|
+
return typeof window !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
|
|
5
5
|
}
|
|
6
6
|
static async set(key, value) {
|
|
7
|
-
if (typeof
|
|
7
|
+
if (typeof window !== 'undefined') {
|
|
8
8
|
return localStorage.setItem(key, value);
|
|
9
9
|
} else {
|
|
10
10
|
return await AsyncStorage.setItem(key, value);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
static async remove(key) {
|
|
14
|
-
if (typeof
|
|
14
|
+
if (typeof window !== 'undefined') {
|
|
15
15
|
return localStorage.removeItem(key);
|
|
16
16
|
} else {
|
|
17
17
|
return await AsyncStorage.removeItem(key);
|
package/lib/context/auth.js
CHANGED
|
@@ -25,7 +25,7 @@ const AuthProvider = props => {
|
|
|
25
25
|
},
|
|
26
26
|
signInWithProvider: async provider => {
|
|
27
27
|
const authProvider = authProviders == null ? void 0 : authProviders.find(p => p.name === provider);
|
|
28
|
-
const redirectURL = typeof
|
|
28
|
+
const redirectURL = typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
|
|
29
29
|
const url = (authProvider == null ? void 0 : authProvider.authUrl) + redirectURL;
|
|
30
30
|
await _Storage.StorageService.set('provider', JSON.stringify(authProviders));
|
|
31
31
|
await props.openURL(url);
|
|
@@ -39,7 +39,7 @@ const AuthProvider = props => {
|
|
|
39
39
|
const providers = JSON.parse(providersString);
|
|
40
40
|
const authProvider = providers == null ? void 0 : providers.find(p => p.state === state);
|
|
41
41
|
if (authProvider && code) {
|
|
42
|
-
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof
|
|
42
|
+
await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
},
|
package/lib/service/Storage.js
CHANGED
|
@@ -6,17 +6,17 @@ exports.StorageService = void 0;
|
|
|
6
6
|
var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
|
|
7
7
|
class StorageService {
|
|
8
8
|
static async get(key) {
|
|
9
|
-
return typeof
|
|
9
|
+
return typeof window !== 'undefined' ? localStorage.getItem(key) : await _asyncStorage.default.getItem(key);
|
|
10
10
|
}
|
|
11
11
|
static async set(key, value) {
|
|
12
|
-
if (typeof
|
|
12
|
+
if (typeof window !== 'undefined') {
|
|
13
13
|
return localStorage.setItem(key, value);
|
|
14
14
|
} else {
|
|
15
15
|
return await _asyncStorage.default.setItem(key, value);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
static async remove(key) {
|
|
19
|
-
if (typeof
|
|
19
|
+
if (typeof window !== 'undefined') {
|
|
20
20
|
return localStorage.removeItem(key);
|
|
21
21
|
} else {
|
|
22
22
|
return await _asyncStorage.default.removeItem(key);
|
package/package.json
CHANGED
package/src/context/auth.tsx
CHANGED
|
@@ -63,7 +63,7 @@ export const AuthProvider = (props: AuthProviderProps) => {
|
|
|
63
63
|
signInWithProvider: async (provider: string) => {
|
|
64
64
|
const authProvider = authProviders?.find((p) => p.name === provider);
|
|
65
65
|
const redirectURL =
|
|
66
|
-
typeof
|
|
66
|
+
typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
|
|
67
67
|
const url = authProvider?.authUrl + redirectURL;
|
|
68
68
|
await StorageService.set('provider', JSON.stringify(authProviders));
|
|
69
69
|
await props.openURL(url);
|
|
@@ -81,7 +81,7 @@ export const AuthProvider = (props: AuthProviderProps) => {
|
|
|
81
81
|
authProvider.name,
|
|
82
82
|
code,
|
|
83
83
|
authProvider.codeVerifier,
|
|
84
|
-
typeof
|
|
84
|
+
typeof window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl
|
|
85
85
|
);
|
|
86
86
|
}
|
|
87
87
|
}
|
package/src/service/Storage.ts
CHANGED
|
@@ -7,13 +7,13 @@ export class StorageService {
|
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
static async get(key: string): Promise<string | null> {
|
|
10
|
-
return typeof
|
|
10
|
+
return typeof window !== 'undefined'
|
|
11
11
|
? localStorage.getItem(key)
|
|
12
12
|
: await AsyncStorage.getItem(key);
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
static async set(key: string, value: string): Promise<void> {
|
|
16
|
-
if (typeof
|
|
16
|
+
if (typeof window !== 'undefined') {
|
|
17
17
|
return localStorage.setItem(key, value);
|
|
18
18
|
} else {
|
|
19
19
|
return await AsyncStorage.setItem(key, value);
|
|
@@ -21,7 +21,7 @@ export class StorageService {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
static async remove(key: string): Promise<void> {
|
|
24
|
-
if (typeof
|
|
24
|
+
if (typeof window !== 'undefined') {
|
|
25
25
|
return localStorage.removeItem(key);
|
|
26
26
|
} else {
|
|
27
27
|
return await AsyncStorage.removeItem(key);
|