pocketbase-react 0.1.7 → 0.1.8
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 +10 -11
- package/dist/pocketbase-react.min.js +2 -2
- package/es/context/Pocketbase.d.ts +1 -1
- package/es/context/Pocketbase.js +1 -1
- package/es/context/client.d.ts +1 -1
- package/es/context/content.js +9 -8
- package/es/hooks/useClientContext.d.ts +1 -1
- package/lib/context/Pocketbase.js +1 -1
- package/lib/context/content.js +9 -8
- package/package.json +3 -3
- package/src/context/Pocketbase.tsx +1 -1
- package/src/context/client.tsx +1 -1
- package/src/context/content.tsx +7 -8
package/dist/pocketbase-react.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react-dom'), require('pocketbase')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports', 'react-dom', 'pocketbase'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.PocketbaseReact = {}, global.reactDom, global.
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react-dom'), require('@tobicrain/pocketbase')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports', 'react-dom', '@tobicrain/pocketbase'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.PocketbaseReact = {}, global.reactDom, global.PocketBase));
|
|
5
5
|
})(this, (function (exports, reactDom, PocketBase) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
@@ -5975,7 +5975,6 @@
|
|
|
5975
5975
|
const [collections, _] = react.useState(props.collections || []);
|
|
5976
5976
|
const actions = {
|
|
5977
5977
|
subscribe: async collectionName => {
|
|
5978
|
-
// save local that collectionName should be subscribed
|
|
5979
5978
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
5980
5979
|
switch (event.action) {
|
|
5981
5980
|
case 'create':
|
|
@@ -5988,27 +5987,27 @@
|
|
|
5988
5987
|
dispatch(deleteRecord$1(collectionName, event.record));
|
|
5989
5988
|
break;
|
|
5990
5989
|
}
|
|
5991
|
-
}));
|
|
5990
|
+
}).catch(_error => {}));
|
|
5992
5991
|
},
|
|
5993
5992
|
unsubscribe: collectionName => {
|
|
5994
5993
|
if (collectionName) {
|
|
5995
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName);
|
|
5994
|
+
client == null ? void 0 : client.realtime.unsubscribe(collectionName).catch(_error => {});
|
|
5996
5995
|
} else {
|
|
5997
|
-
client == null ? void 0 : client.realtime.unsubscribe();
|
|
5996
|
+
client == null ? void 0 : client.realtime.unsubscribe().catch(_error => {});
|
|
5998
5997
|
}
|
|
5999
5998
|
},
|
|
6000
5999
|
fetch: async collectionName => {
|
|
6001
|
-
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200));
|
|
6000
|
+
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
6002
6001
|
dispatch(setRecords(collectionName, records));
|
|
6003
6002
|
},
|
|
6004
6003
|
create: async (collectionName, record) => {
|
|
6005
|
-
await (client == null ? void 0 : client.records.create(collectionName, record));
|
|
6004
|
+
await (client == null ? void 0 : client.records.create(collectionName, record).catch(_error => {}));
|
|
6006
6005
|
},
|
|
6007
6006
|
update: async (collectionName, recordId, record) => {
|
|
6008
|
-
await (client == null ? void 0 : client.records.update(collectionName, recordId, record));
|
|
6007
|
+
await (client == null ? void 0 : client.records.update(collectionName, recordId, record).catch(_error => {}));
|
|
6009
6008
|
},
|
|
6010
6009
|
delete: async (collectionName, recordId) => {
|
|
6011
|
-
await (client == null ? void 0 : client.records.delete(collectionName, recordId));
|
|
6010
|
+
await (client == null ? void 0 : client.records.delete(collectionName, recordId).catch(_error => {}));
|
|
6012
6011
|
}
|
|
6013
6012
|
};
|
|
6014
6013
|
react.useEffect(() => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react-dom"),require("pocketbase")):"function"==typeof define&&define.amd?define(["exports","react-dom","pocketbase"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).PocketbaseReact={},e.reactDom,e.
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react-dom"),require("@tobicrain/pocketbase")):"function"==typeof define&&define.amd?define(["exports","react-dom","@tobicrain/pocketbase"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).PocketbaseReact={},e.reactDom,e.PocketBase)}(this,(function(e,t,r){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=n(r),i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function u(e,t,r){return e(r={path:t,exports:{},require:function(e,t){return function(){throw Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}
|
|
2
2
|
/**
|
|
3
3
|
* @license React
|
|
4
4
|
* react.production.min.js
|
|
@@ -25,4 +25,4 @@
|
|
|
25
25
|
* This source code is licensed under the MIT license found in the
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
27
|
*/
|
|
28
|
-
var Xr,Gr=Symbol.for("react.element"),Yr=Symbol.for("react.portal"),Qr=Symbol.for("react.fragment"),Zr=Symbol.for("react.strict_mode"),en=Symbol.for("react.profiler"),tn=Symbol.for("react.provider"),rn=Symbol.for("react.context"),nn=Symbol.for("react.server_context"),on=Symbol.for("react.forward_ref"),un=Symbol.for("react.suspense"),cn=Symbol.for("react.suspense_list"),an=Symbol.for("react.memo"),fn=Symbol.for("react.lazy"),sn=Symbol.for("react.offscreen");function ln(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Gr:switch(e=e.type){case Qr:case en:case Zr:case un:case cn:return e;default:switch(e=e&&e.$$typeof){case nn:case rn:case on:case fn:case an:case tn:return e;default:return t}}case Yr:return t}}}Xr=Symbol.for("react.module.reference");var pn={ContextConsumer:rn,ContextProvider:tn,Element:Gr,ForwardRef:on,Fragment:Qr,Lazy:fn,Memo:an,Portal:Yr,Profiler:en,StrictMode:Zr,Suspense:un,SuspenseList:cn,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return ln(e)===rn},isContextProvider:function(e){return ln(e)===tn},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Gr},isForwardRef:function(e){return ln(e)===on},isFragment:function(e){return ln(e)===Qr},isLazy:function(e){return ln(e)===fn},isMemo:function(e){return ln(e)===an},isPortal:function(e){return ln(e)===Yr},isProfiler:function(e){return ln(e)===en},isStrictMode:function(e){return ln(e)===Zr},isSuspense:function(e){return ln(e)===un},isSuspenseList:function(e){return ln(e)===cn},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Qr||e===en||e===Zr||e===un||e===cn||e===sn||"object"==typeof e&&null!==e&&(e.$$typeof===fn||e.$$typeof===an||e.$$typeof===tn||e.$$typeof===rn||e.$$typeof===on||e.$$typeof===Xr||void 0!==e.getModuleId)},typeOf:ln};u((function(e){e.exports=pn}));const yn={notify(){},get:()=>[]};function dn(e,t){let r,n=yn;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=mr();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,o=r={callback:e,next:null,prev:r};return o.prev?o.prev.next=o:t=o,function(){n&&null!==t&&(n=!1,o.next?o.next.prev=o.prev:r=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}())}const u={addNestedSub:function(e){return i(),n.subscribe(e)},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:o,isSubscribed:function(){return!!r},trySubscribe:i,tryUnsubscribe:function(){r&&(r(),r=void 0,n.clear(),n=yn)},getListeners:()=>n};return u}const bn=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function vn({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=dn(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);bn((()=>{const{subscription:t}=o;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),i!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[o,i]);return z.createElement((t||gr).Provider,{value:o},r)}Sr=vr.useSyncExternalStoreWithSelector,hr=t.unstable_batchedUpdates;var hn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:mn}=Object.prototype,{propertyIsEnumerable:gn}=Object,On=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),Sn=i,wn={concatArrays:!1,ignoreUndefined:!1},Pn=e=>{const t=[];for(const r in e)mn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)gn.call(e,n)&&t.push(n)}return t};function jn(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Pn(e).forEach((r=>{On(t,r,jn(e[r]))})),t}(e):hn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Pn(e).forEach((r=>{On(t,r,jn(e[r]))})),t}(e):e}const En=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||On(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?_n(e[r],t[r],n):jn(t[r]))})),e);function _n(e,t,r){return r.concatArrays&&Array.isArray(e)&&Array.isArray(t)?((e,t,r)=>{let n=e.slice(0,0),o=0;return[e,t].forEach((t=>{const i=[];for(let r=0;t.length>r;r++)mn.call(t,r)&&(i.push(r+""),On(n,o++,t===e?t[r]:jn(t[r])));n=En(n,t,Pn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):hn(t)&&hn(e)?En(e,t,Pn(t),r):jn(t)}const xn=function(...e){const t=_n(jn(wn),this!==Sn&&this||{},wn);let r={_:{}};for(const n of e)if(void 0!==n){if(!hn(n))throw new TypeError("`"+n+"` is not an Option Object");r=_n(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function kn(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 An={getItem:(e,t)=>kn((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>kn((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>kn((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>kn((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(xn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>kn((()=>window.localStorage.clear()),e),getAllKeys:e=>kn((()=>{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=>An.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>Rn(e.map((e=>An.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>Rn(e.map((e=>An.removeItem(e))),t),multiMerge:(e,t)=>Rn(e.map((e=>An.mergeItem(e[0],e[1]))),t)},Cn={key:"root",storage:{getItem:async(e,...t)=>"undefined"!=typeof document?localStorage.getItem(e):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.getItem(e):void 0,setItem:async(e,t,...r)=>"undefined"!=typeof document?localStorage.setItem(e,t):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.setItem(e,t):void 0,removeItem:async(e,...t)=>"undefined"!=typeof document?localStorage.removeItem(e):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.removeItem(e):void 0}},Dn=ae({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Ft:e.stateReconciler,o=e.getStoredState||zt,i=void 0!==e.timeout?e.timeout:5e3,u=null,c=!1,a=!0,f=function(e){return e._persist.rehydrated&&u&&!a&&u.update(e),e};return function(s,l){var p=s||{},y=p._persist,d=Jt(p,["_persist"]);if(l.type===Dt){var b=!1,v=function(t,r){b||(l.rehydrate(e.key,t,r),b=!0)};if(i&&setTimeout((function(){!b&&v(void 0,Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),i),a=!1,u||(u=Lt(e)),y)return Kt({},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)})),Kt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===$t)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:kt).concat(e.key);return t.removeItem(r,Wt)}(e)),Kt({},t(d,l),{_persist:y});if(l.type===Rt)return l.result(u&&u.flush()),Kt({},t(d,l),{_persist:y});if(l.type===Ct)a=!0;else if(l.type===At){if(c)return Kt({},d,{_persist:Kt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=Kt({},!1!==n&&void 0!==m?n(m,s,h,e):h,{_persist:Kt({},y,{rehydrated:!0})});return f(g)}}if(!y)return t(s,l);var O=t(d,l);return O===d?s:f(Kt({},O,{_persist:y}))}}(Cn,he)}),$n=function(e){var t,r=xt(),n=e||{},o=n.reducer,i=void 0===o?void 0:o,u=n.middleware,c=void 0===u?r():u,a=n.devTools,f=void 0===a||a,s=n.preloadedState,l=void 0===s?void 0:s,p=n.enhancers,y=void 0===p?void 0:p;if("function"==typeof i)t=i;else{if(!function(e){if("object"!=typeof e||null===e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return t===r}(i))throw Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=ae(i)}var d=c;"function"==typeof d&&(d=d(r));var b=se.apply(void 0,d),v=fe;f&&(v=Et(function(e,t){for(var r in t||(t={}))wt.call(t,r)&&jt(e,r,t[r]);if(St)for(var n=0,o=St(t);o.length>n;n++)Pt.call(t,r=o[n])&&jt(e,r,t[r]);return e}({trace:!1},"object"==typeof f&&f)));var h=[b];return Array.isArray(y)?h=gt([b],y):"function"==typeof y&&(h=y(h)),ce(t,l,v.apply(void 0,h))}({reducer:Dn,middleware:[ht]}),In=$n.dispatch,Tn=jr,Nn=function(e,t,r){var n=r||!1,o=ce(Zt,Qt,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:It,key:e})},u=function(t,r,i){var u={type:At,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=Gt({},o,{purge:function(){var t=[];return e.dispatch({type:$t,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:Rt,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:Ct})},persist:function(){e.dispatch({type:Dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}($n),Mn=()=>z.useContext(Un),Fn=z.createContext(null),Ln=e=>{const t=Mn(),r=In,[n,o]=z.useState(e.collections||[]),i={subscribe:async e=>{await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(X(e,t.record));break;case"update":r(Y(e,t.record));break;case"delete":r(G(e,t.record))}})))},unsubscribe:e=>{e?null==t||t.realtime.unsubscribe(e):null==t||t.realtime.unsubscribe()},fetch:async e=>{const n=await(null==t?void 0:t.records.getFullList(e,200));r(H(e,n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r))},update:async(e,r,n)=>{await(null==t?void 0:t.records.update(e,r,n))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r))}};return z.useEffect((()=>(n&&n.forEach((e=>{i.fetch(e),i.subscribe(e)})),()=>i.unsubscribe())),[n]),z.createElement(Fn.Provider,{value:i},e.children)},Un=z.createContext(null),zn=e=>z.createElement(Un.Provider,{value:e.client},e.children);function Vn(e){return Vn="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},Vn(e)}function Wn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function qn(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 Kn(e,t){return!t||"object"!==Vn(t)&&"function"!=typeof t?Jn(e):t}function Bn(e){return Bn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Bn(e)}function Jn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Hn(e,t){return Hn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Hn(e,t)}function Xn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Gn=function(e){function t(){var e,r;Wn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return Xn(Jn(r=Kn(this,(e=Bn(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),Xn(Jn(r),"_unsubscribe",void 0),Xn(Jn(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&&Hn(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}}])&&qn(r.prototype,n),o&&qn(r,o),t}(z.PureComponent);Xn(Gn,"defaultProps",{children:null,loading:null});const Yn=z.createContext(null);e.ADD_RECORD=W,e.ADD_RECORDS=q,e.ClientContext=Un,e.ClientProvider=zn,e.ContentContext=Fn,e.ContentProvider=Ln,e.DELETE_RECORD=B,e.DELETE_RECORDS=J,e.Pocketbase=e=>{const[t,r]=z.useState(null);return z.useEffect((()=>{const t=new o.default(e.serverURL);t.admins.authViaEmail(e.credentials.username,e.credentials.password).then((()=>{r(t)}))}),[e.serverURL]),t?z.createElement(zn,{client:t},z.createElement(vn,{store:$n},z.createElement(Gn,{persistor:Nn},z.createElement(Ln,{collections:e.initialCollections},e.children)))):null},e.PocketbaseContext=Yn,e.SET_RECORDS=V,e.UPDATE_RECORD=K,e.appReducer=he,e.persistConfig=Cn,e.persistor=Nn,e.recordsAction=Q,e.store=$n,e.useAppContent=function(e,t=!1){var r;const n=null!=(r=Tn((t=>t.reducer.records[e])))?r:[],o=z.useContext(Fn);return z.useEffect((()=>{t&&(null==o||o.fetch(e))}),[e,t]),{records:n,actions:{subscribe:async()=>await(null==o?void 0:o.subscribe(e)),unsubscribe:()=>null==o?void 0:o.unsubscribe(e),fetch:async()=>await(null==o?void 0:o.fetch(e)),create:async t=>await(null==o?void 0:o.create(e,t)),update:async(t,r)=>await(null==o?void 0:o.update(e,t,r)),delete:async t=>await(null==o?void 0:o.delete(e,t))}}},e.useAppDispatch=In,e.useAppSelector=Tn,e.useClientContext=Mn,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
28
|
+
var Xr,Gr=Symbol.for("react.element"),Yr=Symbol.for("react.portal"),Qr=Symbol.for("react.fragment"),Zr=Symbol.for("react.strict_mode"),en=Symbol.for("react.profiler"),tn=Symbol.for("react.provider"),rn=Symbol.for("react.context"),nn=Symbol.for("react.server_context"),on=Symbol.for("react.forward_ref"),un=Symbol.for("react.suspense"),cn=Symbol.for("react.suspense_list"),an=Symbol.for("react.memo"),fn=Symbol.for("react.lazy"),sn=Symbol.for("react.offscreen");function ln(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case Gr:switch(e=e.type){case Qr:case en:case Zr:case un:case cn:return e;default:switch(e=e&&e.$$typeof){case nn:case rn:case on:case fn:case an:case tn:return e;default:return t}}case Yr:return t}}}Xr=Symbol.for("react.module.reference");var pn={ContextConsumer:rn,ContextProvider:tn,Element:Gr,ForwardRef:on,Fragment:Qr,Lazy:fn,Memo:an,Portal:Yr,Profiler:en,StrictMode:Zr,Suspense:un,SuspenseList:cn,isAsyncMode:function(){return!1},isConcurrentMode:function(){return!1},isContextConsumer:function(e){return ln(e)===rn},isContextProvider:function(e){return ln(e)===tn},isElement:function(e){return"object"==typeof e&&null!==e&&e.$$typeof===Gr},isForwardRef:function(e){return ln(e)===on},isFragment:function(e){return ln(e)===Qr},isLazy:function(e){return ln(e)===fn},isMemo:function(e){return ln(e)===an},isPortal:function(e){return ln(e)===Yr},isProfiler:function(e){return ln(e)===en},isStrictMode:function(e){return ln(e)===Zr},isSuspense:function(e){return ln(e)===un},isSuspenseList:function(e){return ln(e)===cn},isValidElementType:function(e){return"string"==typeof e||"function"==typeof e||e===Qr||e===en||e===Zr||e===un||e===cn||e===sn||"object"==typeof e&&null!==e&&(e.$$typeof===fn||e.$$typeof===an||e.$$typeof===tn||e.$$typeof===rn||e.$$typeof===on||e.$$typeof===Xr||void 0!==e.getModuleId)},typeOf:ln};u((function(e){e.exports=pn}));const yn={notify(){},get:()=>[]};function dn(e,t){let r,n=yn;function o(){u.onStateChange&&u.onStateChange()}function i(){r||(r=t?t.addNestedSub(o):e.subscribe(o),n=function(){const e=mr();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,o=r={callback:e,next:null,prev:r};return o.prev?o.prev.next=o:t=o,function(){n&&null!==t&&(n=!1,o.next?o.next.prev=o.prev:r=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}())}const u={addNestedSub:function(e){return i(),n.subscribe(e)},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:o,isSubscribed:function(){return!!r},trySubscribe:i,tryUnsubscribe:function(){r&&(r(),r=void 0,n.clear(),n=yn)},getListeners:()=>n};return u}const bn=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement)?z.useLayoutEffect:z.useEffect;function vn({store:e,context:t,children:r,serverState:n}){const o=z.useMemo((()=>{const t=dn(e);return{store:e,subscription:t,getServerState:n?()=>n:void 0}}),[e,n]),i=z.useMemo((()=>e.getState()),[e]);bn((()=>{const{subscription:t}=o;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),i!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[o,i]);return z.createElement((t||gr).Provider,{value:o},r)}Sr=vr.useSyncExternalStoreWithSelector,hr=t.unstable_batchedUpdates;var hn=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype};const{hasOwnProperty:mn}=Object.prototype,{propertyIsEnumerable:gn}=Object,On=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),Sn=i,wn={concatArrays:!1,ignoreUndefined:!1},Pn=e=>{const t=[];for(const r in e)mn.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)gn.call(e,n)&&t.push(n)}return t};function jn(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return Pn(e).forEach((r=>{On(t,r,jn(e[r]))})),t}(e):hn(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return Pn(e).forEach((r=>{On(t,r,jn(e[r]))})),t}(e):e}const En=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||On(e,r,r in e&&e[r]!==Object.getPrototypeOf(e)?_n(e[r],t[r],n):jn(t[r]))})),e);function _n(e,t,r){return r.concatArrays&&Array.isArray(e)&&Array.isArray(t)?((e,t,r)=>{let n=e.slice(0,0),o=0;return[e,t].forEach((t=>{const i=[];for(let r=0;t.length>r;r++)mn.call(t,r)&&(i.push(r+""),On(n,o++,t===e?t[r]:jn(t[r])));n=En(n,t,Pn(t).filter((e=>!i.includes(e))),r)})),n})(e,t,r):hn(t)&&hn(e)?En(e,t,Pn(t),r):jn(t)}const xn=function(...e){const t=_n(jn(wn),this!==Sn&&this||{},wn);let r={_:{}};for(const n of e)if(void 0!==n){if(!hn(n))throw new TypeError("`"+n+"` is not an Option Object");r=_n(r,{_:n},t)}return r._}.bind({concatArrays:!0,ignoreUndefined:!0});function kn(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 An={getItem:(e,t)=>kn((()=>window.localStorage.getItem(e)),t),setItem:(e,t,r)=>kn((()=>window.localStorage.setItem(e,t)),r),removeItem:(e,t)=>kn((()=>window.localStorage.removeItem(e)),t),mergeItem:(e,t,r)=>kn((()=>function(e,t){const r=window.localStorage.getItem(e);if(r){const n=JSON.parse(r),o=JSON.parse(t),i=JSON.stringify(xn(n,o));window.localStorage.setItem(e,i)}else window.localStorage.setItem(e,t)}(e,t)),r),clear:e=>kn((()=>window.localStorage.clear()),e),getAllKeys:e=>kn((()=>{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=>An.getItem(e))),t,(t=>t.map(((t,r)=>[e[r],t])))),multiSet:(e,t)=>Rn(e.map((e=>An.setItem(e[0],e[1]))),t),multiRemove:(e,t)=>Rn(e.map((e=>An.removeItem(e))),t),multiMerge:(e,t)=>Rn(e.map((e=>An.mergeItem(e[0],e[1]))),t)},Cn={key:"root",storage:{getItem:async(e,...t)=>"undefined"!=typeof document?localStorage.getItem(e):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.getItem(e):void 0,setItem:async(e,t,...r)=>"undefined"!=typeof document?localStorage.setItem(e,t):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.setItem(e,t):void 0,removeItem:async(e,...t)=>"undefined"!=typeof document?localStorage.removeItem(e):"undefined"!=typeof navigator&&"ReactNative"===navigator.product?await An.removeItem(e):void 0}},Dn=ae({reducer:function(e,t){var r=void 0!==e.version?e.version:-1,n=void 0===e.stateReconciler?Ft:e.stateReconciler,o=e.getStoredState||zt,i=void 0!==e.timeout?e.timeout:5e3,u=null,c=!1,a=!0,f=function(e){return e._persist.rehydrated&&u&&!a&&u.update(e),e};return function(s,l){var p=s||{},y=p._persist,d=Jt(p,["_persist"]);if(l.type===Dt){var b=!1,v=function(t,r){b||(l.rehydrate(e.key,t,r),b=!0)};if(i&&setTimeout((function(){!b&&v(void 0,Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),i),a=!1,u||(u=Lt(e)),y)return Kt({},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)})),Kt({},t(d,l),{_persist:{version:r,rehydrated:!1}})}if(l.type===$t)return c=!0,l.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:kt).concat(e.key);return t.removeItem(r,Wt)}(e)),Kt({},t(d,l),{_persist:y});if(l.type===Rt)return l.result(u&&u.flush()),Kt({},t(d,l),{_persist:y});if(l.type===Ct)a=!0;else if(l.type===At){if(c)return Kt({},d,{_persist:Kt({},y,{rehydrated:!0})});if(l.key===e.key){var h=t(d,l),m=l.payload,g=Kt({},!1!==n&&void 0!==m?n(m,s,h,e):h,{_persist:Kt({},y,{rehydrated:!0})});return f(g)}}if(!y)return t(s,l);var O=t(d,l);return O===d?s:f(Kt({},O,{_persist:y}))}}(Cn,he)}),$n=function(e){var t,r=xt(),n=e||{},o=n.reducer,i=void 0===o?void 0:o,u=n.middleware,c=void 0===u?r():u,a=n.devTools,f=void 0===a||a,s=n.preloadedState,l=void 0===s?void 0:s,p=n.enhancers,y=void 0===p?void 0:p;if("function"==typeof i)t=i;else{if(!function(e){if("object"!=typeof e||null===e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;for(var r=t;null!==Object.getPrototypeOf(r);)r=Object.getPrototypeOf(r);return t===r}(i))throw Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=ae(i)}var d=c;"function"==typeof d&&(d=d(r));var b=se.apply(void 0,d),v=fe;f&&(v=Et(function(e,t){for(var r in t||(t={}))wt.call(t,r)&&jt(e,r,t[r]);if(St)for(var n=0,o=St(t);o.length>n;n++)Pt.call(t,r=o[n])&&jt(e,r,t[r]);return e}({trace:!1},"object"==typeof f&&f)));var h=[b];return Array.isArray(y)?h=gt([b],y):"function"==typeof y&&(h=y(h)),ce(t,l,v.apply(void 0,h))}({reducer:Dn,middleware:[ht]}),In=$n.dispatch,Tn=jr,Nn=function(e,t,r){var n=r||!1,o=ce(Zt,Qt,t&&t.enhancer?t.enhancer:void 0),i=function(e){o.dispatch({type:It,key:e})},u=function(t,r,i){var u={type:At,payload:r,err:i,key:t};e.dispatch(u),o.dispatch(u),n&&c.getState().bootstrapped&&(n(),n=!1)},c=Gt({},o,{purge:function(){var t=[];return e.dispatch({type:$t,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:Rt,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:Ct})},persist:function(){e.dispatch({type:Dt,register:i,rehydrate:u})}});return t&&t.manualPersist||c.persist(),c}($n),Mn=()=>z.useContext(Un),Fn=z.createContext(null),Ln=e=>{const t=Mn(),r=In,[n,o]=z.useState(e.collections||[]),i={subscribe:async e=>{await(null==t?void 0:t.realtime.subscribe(e,(t=>{switch(t.action){case"create":r(X(e,t.record));break;case"update":r(Y(e,t.record));break;case"delete":r(G(e,t.record))}})).catch((e=>{})))},unsubscribe:e=>{e?null==t||t.realtime.unsubscribe(e).catch((e=>{})):null==t||t.realtime.unsubscribe().catch((e=>{}))},fetch:async e=>{const n=await(null==t?void 0:t.records.getFullList(e,200).catch((e=>{})));r(H(e,n))},create:async(e,r)=>{await(null==t?void 0:t.records.create(e,r).catch((e=>{})))},update:async(e,r,n)=>{await(null==t?void 0:t.records.update(e,r,n).catch((e=>{})))},delete:async(e,r)=>{await(null==t?void 0:t.records.delete(e,r).catch((e=>{})))}};return z.useEffect((()=>(n&&n.forEach((e=>{i.fetch(e),i.subscribe(e)})),()=>i.unsubscribe())),[n]),z.createElement(Fn.Provider,{value:i},e.children)},Un=z.createContext(null),zn=e=>z.createElement(Un.Provider,{value:e.client},e.children);function Vn(e){return Vn="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},Vn(e)}function Wn(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function qn(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 Kn(e,t){return!t||"object"!==Vn(t)&&"function"!=typeof t?Jn(e):t}function Bn(e){return Bn=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Bn(e)}function Jn(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Hn(e,t){return Hn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Hn(e,t)}function Xn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Gn=function(e){function t(){var e,r;Wn(this,t);for(var n=arguments.length,o=Array(n),i=0;n>i;i++)o[i]=arguments[i];return Xn(Jn(r=Kn(this,(e=Bn(t)).call.apply(e,[this].concat(o)))),"state",{bootstrapped:!1}),Xn(Jn(r),"_unsubscribe",void 0),Xn(Jn(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&&Hn(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}}])&&qn(r.prototype,n),o&&qn(r,o),t}(z.PureComponent);Xn(Gn,"defaultProps",{children:null,loading:null});const Yn=z.createContext(null);e.ADD_RECORD=W,e.ADD_RECORDS=q,e.ClientContext=Un,e.ClientProvider=zn,e.ContentContext=Fn,e.ContentProvider=Ln,e.DELETE_RECORD=B,e.DELETE_RECORDS=J,e.Pocketbase=e=>{const[t,r]=z.useState(null);return z.useEffect((()=>{const t=new o.default(e.serverURL);t.admins.authViaEmail(e.credentials.username,e.credentials.password).then((()=>{r(t)}))}),[e.serverURL]),t?z.createElement(zn,{client:t},z.createElement(vn,{store:$n},z.createElement(Gn,{persistor:Nn},z.createElement(Ln,{collections:e.initialCollections},e.children)))):null},e.PocketbaseContext=Yn,e.SET_RECORDS=V,e.UPDATE_RECORD=K,e.appReducer=he,e.persistConfig=Cn,e.persistor=Nn,e.recordsAction=Q,e.store=$n,e.useAppContent=function(e,t=!1){var r;const n=null!=(r=Tn((t=>t.reducer.records[e])))?r:[],o=z.useContext(Fn);return z.useEffect((()=>{t&&(null==o||o.fetch(e))}),[e,t]),{records:n,actions:{subscribe:async()=>await(null==o?void 0:o.subscribe(e)),unsubscribe:()=>null==o?void 0:o.unsubscribe(e),fetch:async()=>await(null==o?void 0:o.fetch(e)),create:async t=>await(null==o?void 0:o.create(e,t)),update:async(t,r)=>await(null==o?void 0:o.update(e,t,r)),delete:async t=>await(null==o?void 0:o.delete(e,t))}}},e.useAppDispatch=In,e.useAppSelector=Tn,e.useClientContext=Mn,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import PocketBase from 'pocketbase';
|
|
2
|
+
import PocketBase from '@tobicrain/pocketbase';
|
|
3
3
|
export declare const PocketbaseContext: React.Context<PocketBase | null>;
|
|
4
4
|
export declare type PocketbaseProviderProps = {
|
|
5
5
|
children: React.ReactNode;
|
package/es/context/Pocketbase.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { createContext, useEffect } from 'react';
|
|
3
|
-
import PocketBase from 'pocketbase';
|
|
3
|
+
import PocketBase from '@tobicrain/pocketbase';
|
|
4
4
|
import { Provider } from 'react-redux';
|
|
5
5
|
import { PersistGate } from 'redux-persist/integration/react';
|
|
6
6
|
import * as store from '../store/store';
|
package/es/context/client.d.ts
CHANGED
package/es/context/content.js
CHANGED
|
@@ -10,7 +10,6 @@ export const ContentProvider = props => {
|
|
|
10
10
|
const [collections, _] = React.useState(props.collections || []);
|
|
11
11
|
const actions = {
|
|
12
12
|
subscribe: async collectionName => {
|
|
13
|
-
// save local that collectionName should be subscribed
|
|
14
13
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
15
14
|
switch (event.action) {
|
|
16
15
|
case 'create':
|
|
@@ -25,27 +24,29 @@ export const ContentProvider = props => {
|
|
|
25
24
|
default:
|
|
26
25
|
break;
|
|
27
26
|
}
|
|
28
|
-
}));
|
|
27
|
+
}).catch(_error => {}));
|
|
29
28
|
},
|
|
30
29
|
unsubscribe: collectionName => {
|
|
31
30
|
if (collectionName) {
|
|
32
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName);
|
|
31
|
+
client == null ? void 0 : client.realtime.unsubscribe(collectionName).catch(_error => {});
|
|
32
|
+
;
|
|
33
33
|
} else {
|
|
34
|
-
client == null ? void 0 : client.realtime.unsubscribe();
|
|
34
|
+
client == null ? void 0 : client.realtime.unsubscribe().catch(_error => {});
|
|
35
|
+
;
|
|
35
36
|
}
|
|
36
37
|
},
|
|
37
38
|
fetch: async collectionName => {
|
|
38
|
-
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200));
|
|
39
|
+
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
39
40
|
dispatch(recordsAction.setRecords(collectionName, records));
|
|
40
41
|
},
|
|
41
42
|
create: async (collectionName, record) => {
|
|
42
|
-
await (client == null ? void 0 : client.records.create(collectionName, record));
|
|
43
|
+
await (client == null ? void 0 : client.records.create(collectionName, record).catch(_error => {}));
|
|
43
44
|
},
|
|
44
45
|
update: async (collectionName, recordId, record) => {
|
|
45
|
-
await (client == null ? void 0 : client.records.update(collectionName, recordId, record));
|
|
46
|
+
await (client == null ? void 0 : client.records.update(collectionName, recordId, record).catch(_error => {}));
|
|
46
47
|
},
|
|
47
48
|
delete: async (collectionName, recordId) => {
|
|
48
|
-
await (client == null ? void 0 : client.records.delete(collectionName, recordId));
|
|
49
|
+
await (client == null ? void 0 : client.records.delete(collectionName, recordId).catch(_error => {}));
|
|
49
50
|
}
|
|
50
51
|
};
|
|
51
52
|
useEffect(() => {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const useClientContext: () => import("pocketbase").default | null;
|
|
1
|
+
declare const useClientContext: () => import("@tobicrain/pocketbase").default | null;
|
|
2
2
|
export { useClientContext };
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.PocketbaseContext = exports.Pocketbase = void 0;
|
|
6
6
|
var React = _interopRequireWildcard(require("react"));
|
|
7
|
-
var _pocketbase = _interopRequireDefault(require("pocketbase"));
|
|
7
|
+
var _pocketbase = _interopRequireDefault(require("@tobicrain/pocketbase"));
|
|
8
8
|
var _reactRedux = require("react-redux");
|
|
9
9
|
var _react2 = require("redux-persist/integration/react");
|
|
10
10
|
var store = _interopRequireWildcard(require("../store/store"));
|
package/lib/context/content.js
CHANGED
|
@@ -16,7 +16,6 @@ const ContentProvider = props => {
|
|
|
16
16
|
const [collections, _] = React.useState(props.collections || []);
|
|
17
17
|
const actions = {
|
|
18
18
|
subscribe: async collectionName => {
|
|
19
|
-
// save local that collectionName should be subscribed
|
|
20
19
|
await (client == null ? void 0 : client.realtime.subscribe(collectionName, event => {
|
|
21
20
|
switch (event.action) {
|
|
22
21
|
case 'create':
|
|
@@ -31,27 +30,29 @@ const ContentProvider = props => {
|
|
|
31
30
|
default:
|
|
32
31
|
break;
|
|
33
32
|
}
|
|
34
|
-
}));
|
|
33
|
+
}).catch(_error => {}));
|
|
35
34
|
},
|
|
36
35
|
unsubscribe: collectionName => {
|
|
37
36
|
if (collectionName) {
|
|
38
|
-
client == null ? void 0 : client.realtime.unsubscribe(collectionName);
|
|
37
|
+
client == null ? void 0 : client.realtime.unsubscribe(collectionName).catch(_error => {});
|
|
38
|
+
;
|
|
39
39
|
} else {
|
|
40
|
-
client == null ? void 0 : client.realtime.unsubscribe();
|
|
40
|
+
client == null ? void 0 : client.realtime.unsubscribe().catch(_error => {});
|
|
41
|
+
;
|
|
41
42
|
}
|
|
42
43
|
},
|
|
43
44
|
fetch: async collectionName => {
|
|
44
|
-
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200));
|
|
45
|
+
const records = await (client == null ? void 0 : client.records.getFullList(collectionName, 200).catch(_error => {}));
|
|
45
46
|
dispatch(_actions.recordsAction.setRecords(collectionName, records));
|
|
46
47
|
},
|
|
47
48
|
create: async (collectionName, record) => {
|
|
48
|
-
await (client == null ? void 0 : client.records.create(collectionName, record));
|
|
49
|
+
await (client == null ? void 0 : client.records.create(collectionName, record).catch(_error => {}));
|
|
49
50
|
},
|
|
50
51
|
update: async (collectionName, recordId, record) => {
|
|
51
|
-
await (client == null ? void 0 : client.records.update(collectionName, recordId, record));
|
|
52
|
+
await (client == null ? void 0 : client.records.update(collectionName, recordId, record).catch(_error => {}));
|
|
52
53
|
},
|
|
53
54
|
delete: async (collectionName, recordId) => {
|
|
54
|
-
await (client == null ? void 0 : client.records.delete(collectionName, recordId));
|
|
55
|
+
await (client == null ? void 0 : client.records.delete(collectionName, recordId).catch(_error => {}));
|
|
55
56
|
}
|
|
56
57
|
};
|
|
57
58
|
(0, React.useEffect)(() => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pocketbase-react",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "Unofficial React SDK (React, React Native, Expo) for interacting with the PocketBase JS SDK",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pocketbase",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"prepublishOnly": "npm run build"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"pocketbase": "^0.7.3"
|
|
48
|
+
"@tobicrain/pocketbase": "^0.7.3"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@babel/cli": "^7.12.1",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"dependencies": {
|
|
69
69
|
"@react-native-async-storage/async-storage": "^1.17.10",
|
|
70
70
|
"@reduxjs/toolkit": "^1.8.5",
|
|
71
|
-
"pocketbase": "^0.7.3",
|
|
71
|
+
"@tobicrain/pocketbase": "^0.7.3",
|
|
72
72
|
"react-redux": "^8.0.4",
|
|
73
73
|
"redux": "^4.2.0",
|
|
74
74
|
"redux-persist": "^6.0.0"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { createContext, useEffect } from 'react';
|
|
3
|
-
import PocketBase from 'pocketbase';
|
|
3
|
+
import PocketBase from '@tobicrain/pocketbase';
|
|
4
4
|
import { Provider } from 'react-redux';
|
|
5
5
|
import { PersistGate } from 'redux-persist/integration/react';
|
|
6
6
|
import * as store from '../store/store';
|
package/src/context/client.tsx
CHANGED
package/src/context/content.tsx
CHANGED
|
@@ -40,7 +40,6 @@ export const ContentProvider = (props: ContentProviderProps) => {
|
|
|
40
40
|
|
|
41
41
|
const actions: ContentActions = {
|
|
42
42
|
subscribe: async (collectionName: string) => {
|
|
43
|
-
// save local that collectionName should be subscribed
|
|
44
43
|
await client?.realtime.subscribe(collectionName, (event: MessageData) => {
|
|
45
44
|
switch (event.action) {
|
|
46
45
|
case 'create':
|
|
@@ -55,27 +54,27 @@ export const ContentProvider = (props: ContentProviderProps) => {
|
|
|
55
54
|
default:
|
|
56
55
|
break;
|
|
57
56
|
}
|
|
58
|
-
});
|
|
57
|
+
}).catch((_error) => {});
|
|
59
58
|
},
|
|
60
59
|
unsubscribe: (collectionName?: string) => {
|
|
61
60
|
if (collectionName) {
|
|
62
|
-
client?.realtime.unsubscribe(collectionName)
|
|
61
|
+
client?.realtime.unsubscribe(collectionName).catch((_error) => {});;
|
|
63
62
|
} else {
|
|
64
|
-
client?.realtime.unsubscribe()
|
|
63
|
+
client?.realtime.unsubscribe().catch((_error) => {});;
|
|
65
64
|
}
|
|
66
65
|
},
|
|
67
66
|
fetch: async (collectionName: string) => {
|
|
68
|
-
const records = await client?.records.getFullList(collectionName, 200);
|
|
67
|
+
const records = await client?.records.getFullList(collectionName, 200).catch((_error) => {});
|
|
69
68
|
dispatch(recordsAction.setRecords(collectionName, records as Record[]));
|
|
70
69
|
},
|
|
71
70
|
create: async (collectionName: string, record: {}) => {
|
|
72
|
-
await client?.records.create(collectionName, record);
|
|
71
|
+
await client?.records.create(collectionName, record).catch((_error) => {});
|
|
73
72
|
},
|
|
74
73
|
update: async (collectionName: string, recordId: string, record: {}) => {
|
|
75
|
-
await client?.records.update(collectionName, recordId, record);
|
|
74
|
+
await client?.records.update(collectionName, recordId, record).catch((_error) => {});
|
|
76
75
|
},
|
|
77
76
|
delete: async (collectionName: string, recordId: string) => {
|
|
78
|
-
await client?.records.delete(collectionName, recordId);
|
|
77
|
+
await client?.records.delete(collectionName, recordId).catch((_error) => {});
|
|
79
78
|
},
|
|
80
79
|
};
|
|
81
80
|
|