pocketbase-react 0.1.26 → 0.1.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5911,17 +5911,17 @@
5911
5911
 
5912
5912
  class StorageService {
5913
5913
  static async get(key) {
5914
- return typeof window !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
5914
+ return typeof document !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
5915
5915
  }
5916
5916
  static async set(key, value) {
5917
- if (typeof window !== 'undefined') {
5917
+ if (typeof document !== '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 window !== 'undefined') {
5924
+ if (typeof document !== '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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
6126
+ const redirectURL = typeof document !== '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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
6140
+ await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof document !== '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 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})}));
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})}));
@@ -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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
22
+ const redirectURL = typeof document !== '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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
36
+ await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof document !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
37
37
  }
38
38
  }
39
39
  },
@@ -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 window !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
4
+ return typeof document !== 'undefined' ? localStorage.getItem(key) : await AsyncStorage.getItem(key);
5
5
  }
6
6
  static async set(key, value) {
7
- if (typeof window !== 'undefined') {
7
+ if (typeof document !== '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 window !== 'undefined') {
14
+ if (typeof document !== 'undefined') {
15
15
  return localStorage.removeItem(key);
16
16
  } else {
17
17
  return await AsyncStorage.removeItem(key);
@@ -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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
28
+ const redirectURL = typeof document !== '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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
42
+ await (client == null ? void 0 : client.users.authViaOAuth2(authProvider.name, code, authProvider.codeVerifier, typeof document !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl));
43
43
  }
44
44
  }
45
45
  },
@@ -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 window !== 'undefined' ? localStorage.getItem(key) : await _asyncStorage.default.getItem(key);
9
+ return typeof document !== 'undefined' ? localStorage.getItem(key) : await _asyncStorage.default.getItem(key);
10
10
  }
11
11
  static async set(key, value) {
12
- if (typeof window !== 'undefined') {
12
+ if (typeof document !== '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 window !== 'undefined') {
19
+ if (typeof document !== 'undefined') {
20
20
  return localStorage.removeItem(key);
21
21
  } else {
22
22
  return await _asyncStorage.default.removeItem(key);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pocketbase-react",
3
- "version": "0.1.26",
3
+ "version": "0.1.27",
4
4
  "description": "Unofficial React SDK (React, React Native, Expo) for interacting with the PocketBase JS SDK",
5
5
  "keywords": [
6
6
  "pocketbase",
@@ -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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl;
66
+ typeof document !== '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 window !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl
84
+ typeof document !== 'undefined' ? props.webRedirectUrl : props.mobileRedirectUrl
85
85
  );
86
86
  }
87
87
  }
@@ -7,13 +7,13 @@ export class StorageService {
7
7
  };
8
8
 
9
9
  static async get(key: string): Promise<string | null> {
10
- return typeof window !== 'undefined'
10
+ return typeof document !== '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 window !== 'undefined') {
16
+ if (typeof document !== '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 window !== 'undefined') {
24
+ if (typeof document !== 'undefined') {
25
25
  return localStorage.removeItem(key);
26
26
  } else {
27
27
  return await AsyncStorage.removeItem(key);