@webview-bridge/react 1.4.5 → 1.4.6-nightly.0
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/commonjs/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var g=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var
|
|
1
|
+
"use strict";var g=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var f=(r,e)=>{for(var t in e)g(r,t,{get:e[t],enumerable:!0})},m=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of x(e))!b.call(r,s)&&s!==t&&g(r,s,{get:()=>e[s],enumerable:!(n=p(e,s))||n.enumerable});return r};var l=r=>m(g({},"__esModule",{value:!0}),r);var T={};f(T,{createLinkBridgeProvider:()=>w,useBridge:()=>B});module.exports=l(T);var c=require("@webview-bridge/web"),d=require("react");var u=require("use-sync-external-store/with-selector.js");function B(r,e){let t=e??(n=>n);return(0,u.useSyncExternalStoreWithSelector)(r.subscribe,r.getState,r.getState,t)}var a=require("react/jsx-runtime"),w=r=>{let e=(0,c.linkBridge)(r),t=(0,d.createContext)(null);return{bridge:e,BridgeProvider:({children:i})=>{let o=(0,d.useRef)();return o.current||(o.current=e),(0,a.jsx)(t.Provider,{value:o.current,children:i})},useBridgeStore:i=>{let o=(0,d.useContext)(t);if(!o)throw new Error("useBridgeStore must be used within a BridgeProvider");return B(o.store,i)},useBridgeStatus:()=>{let i=(0,d.useContext)(t);if(!i)throw new Error("useBridgeStatus must be used within a BridgeProvider");let{isNativeMethodAvailable:o,isWebViewBridgeAvailable:S}=i;return{isNativeMethodAvailable:o,isWebViewBridgeAvailable:S}},useBridgeLoose:()=>{let i=(0,d.useContext)(t);if(!i)throw new Error("useBridgeLoose must be used within a BridgeProvider");let{loose:o}=i;return{loose:o}}}};0&&(module.exports={createLinkBridgeProvider,useBridge});
|
package/dist/module/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{linkBridge as
|
|
1
|
+
import{linkBridge as u}from"@webview-bridge/web";import{createContext as c,useContext as d,useRef as a}from"react";import{useSyncExternalStoreWithSelector as B}from"use-sync-external-store/with-selector.js";function n(o,i){let t=i??(s=>s);return B(o.subscribe,o.getState,o.getState,t)}import{jsx as S}from"react/jsx-runtime";var v=o=>{let i=u(o),t=c(null);return{bridge:i,BridgeProvider:({children:r})=>{let e=a();return e.current||(e.current=i),S(t.Provider,{value:e.current,children:r})},useBridgeStore:r=>{let e=d(t);if(!e)throw new Error("useBridgeStore must be used within a BridgeProvider");return n(e.store,r)},useBridgeStatus:()=>{let r=d(t);if(!r)throw new Error("useBridgeStatus must be used within a BridgeProvider");let{isNativeMethodAvailable:e,isWebViewBridgeAvailable:g}=r;return{isNativeMethodAvailable:e,isWebViewBridgeAvailable:g}},useBridgeLoose:()=>{let r=d(t);if(!r)throw new Error("useBridgeLoose must be used within a BridgeProvider");let{loose:e}=r;return{loose:e}}}};export{v as createLinkBridgeProvider,n as useBridge};
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import type { Bridge, BridgeStore } from "@webview-bridge/web";
|
|
2
|
-
export declare
|
|
1
|
+
import type { Bridge, BridgeStore, ExtractStore } from "@webview-bridge/web";
|
|
2
|
+
export declare function useBridge<T extends Bridge>(store: Omit<BridgeStore<T>, "setState">): ExtractStore<BridgeStore<T>>;
|
|
3
|
+
export declare function useBridge<T extends Bridge, U extends ExtractStore<BridgeStore<T>>, V>(store: Omit<BridgeStore<T>, "setState">, selector?: (state: U) => V): V;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webview-bridge/react",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.4.
|
|
4
|
+
"version": "1.4.6-nightly.0",
|
|
5
5
|
"description": "Fully Type-Safe Integration for React Native WebView and Web",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"@types/use-sync-external-store": "^0.0.6",
|
|
31
31
|
"esbuild": "^0.19.4",
|
|
32
32
|
"react": "^18.2.0",
|
|
33
|
-
"@webview-bridge/web": "^1.4.
|
|
33
|
+
"@webview-bridge/web": "^1.4.6-nightly.0"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"use-sync-external-store": "^1.2.0"
|