@apps-in-toss/web-framework 0.0.16 → 0.0.18
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/cli/index.js +1323 -1393
- package/dist/prebuilt/dev.android.js +977 -873
- package/dist/prebuilt/dev.ios.js +975 -871
- package/dist/prebuilt/prod.android.js +1 -1
- package/dist/prebuilt/prod.ios.js +1 -1
- package/dist/prebuilt/prod.json +6 -6
- package/dist-web/bridge.d.ts +1 -0
- package/dist-web/bridge.js +1 -1
- package/dist-web/executePayment.d.ts +1 -1
- package/dist-web/getTossAppVersion.d.ts +31 -0
- package/dist-web/index.d.ts +87 -2
- package/dist-web/index.js +83 -3
- package/package.json +18 -11
- package/hermesc/0_72_6/linux64-bin/hermesc +0 -0
- package/hermesc/0_72_6/osx-bin/hermesc +0 -0
- package/hermesc/0_72_6/win64-bin/hermesc.exe +0 -0
- package/hermesc/0_72_6/win64-bin/icudt64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/icuin64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/icuio64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/icutest64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/icutu64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/icuuc64.dll +0 -0
- package/hermesc/0_72_6/win64-bin/msvcp140.dll +0 -0
- package/hermesc/0_72_6/win64-bin/vcruntime140.dll +0 -0
- package/hermesc/0_72_6/win64-bin/vcruntime140_1.dll +0 -0
package/dist/prebuilt/prod.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
[
|
|
2
2
|
{
|
|
3
3
|
"platform": "ios",
|
|
4
|
-
"totalModuleCount":
|
|
5
|
-
"duration":
|
|
6
|
-
"size":
|
|
4
|
+
"totalModuleCount": 1603,
|
|
5
|
+
"duration": 1549.841625,
|
|
6
|
+
"size": 414117
|
|
7
7
|
},
|
|
8
8
|
{
|
|
9
9
|
"platform": "android",
|
|
10
|
-
"totalModuleCount":
|
|
11
|
-
"duration":
|
|
12
|
-
"size":
|
|
10
|
+
"totalModuleCount": 1603,
|
|
11
|
+
"duration": 1547.053583,
|
|
12
|
+
"size": 413318
|
|
13
13
|
}
|
|
14
14
|
]
|
package/dist-web/bridge.d.ts
CHANGED
package/dist-web/bridge.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const createEvents=()=>({emit(event,args){for(let callbacks=this.events[event]||[],i=0,length=callbacks.length;i<length;i++){callbacks[i](args)}},events:{},on(event,cb){var _this_events,_event;((_this_events=this.events)[_event=event]||(_this_events[_event]=[])).push(cb);return()=>{var _this_events_event;this.events[event]=(_this_events_event=this.events[event])===null||_this_events_event===void 0?void 0:_this_events_event.filter(i=>cb!==i)}}});const createEventId=()=>Math.random().toString(36).substring(2,15);const deserializeError=value=>{if(value&&value.__isError){const err=new Error(value.message);err.name=value.name;err.stack=value.stack;return err}return value};window.__BEDROCK_NATIVE_EMITTER=createEvents();export function closeView(...args){if(!window.ReactNativeWebView){throw new Error("This closeView is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`closeView/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`closeView/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"closeView",eventId,args}))})}export function generateHapticFeedback(...args){if(!window.ReactNativeWebView){throw new Error("This generateHapticFeedback is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`generateHapticFeedback/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`generateHapticFeedback/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"generateHapticFeedback",eventId,args}))})}export function share(...args){if(!window.ReactNativeWebView){throw new Error("This share is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`share/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`share/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"share",eventId,args}))})}export function setSecureScreen(...args){if(!window.ReactNativeWebView){throw new Error("This setSecureScreen is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setSecureScreen/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setSecureScreen/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setSecureScreen",eventId,args}))})}export function setScreenAwakeMode(...args){if(!window.ReactNativeWebView){throw new Error("This setScreenAwakeMode is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setScreenAwakeMode/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setScreenAwakeMode/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setScreenAwakeMode",eventId,args}))})}export function getNetworkStatus(...args){if(!window.ReactNativeWebView){throw new Error("This getNetworkStatus is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getNetworkStatus/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getNetworkStatus/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getNetworkStatus",eventId,args}))})}export function setIosSwipeGestureEnabled(...args){if(!window.ReactNativeWebView){throw new Error("This setIosSwipeGestureEnabled is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setIosSwipeGestureEnabled/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setIosSwipeGestureEnabled/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setIosSwipeGestureEnabled",eventId,args}))})}export function getLocale(){if(!window.ReactNativeWebView){throw new Error("This getLocale is not available in browser environment")}if("getLocale"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getLocale"]}throw new Error("getLocale is not a constant handler")}export function getSchemeUri(){if(!window.ReactNativeWebView){throw new Error("This getSchemeUri is not available in browser environment")}if("getSchemeUri"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getSchemeUri"]}throw new Error("getSchemeUri is not a constant handler")}export function getDeviceId(){if(!window.ReactNativeWebView){throw new Error("This getDeviceId is not available in browser environment")}if("getDeviceId"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getDeviceId"]}throw new Error("getDeviceId is not a constant handler")}export function getPlatformOS(){if(!window.ReactNativeWebView){throw new Error("This getPlatformOS is not available in browser environment")}if("getPlatformOS"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getPlatformOS"]}throw new Error("getPlatformOS is not a constant handler")}export function setClipboardText(...args){if(!window.ReactNativeWebView){throw new Error("This setClipboardText is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setClipboardText/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setClipboardText/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setClipboardText",eventId,args}))})}export function getClipboardText(...args){if(!window.ReactNativeWebView){throw new Error("This getClipboardText is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getClipboardText/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getClipboardText/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getClipboardText",eventId,args}))})}export function fetchContacts(...args){if(!window.ReactNativeWebView){throw new Error("This fetchContacts is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchContacts/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchContacts/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"fetchContacts",eventId,args}))})}export function fetchAlbumPhotos(...args){if(!window.ReactNativeWebView){throw new Error("This fetchAlbumPhotos is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchAlbumPhotos/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchAlbumPhotos/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"fetchAlbumPhotos",eventId,args}))})}export var Accuracy=function(Accuracy){Accuracy[Accuracy["Lowest"]=1]="Lowest";Accuracy[Accuracy["Low"]=2]="Low";Accuracy[Accuracy["Balanced"]=3]="Balanced";Accuracy[Accuracy["High"]=4]="High";Accuracy[Accuracy["Highest"]=5]="Highest";Accuracy[Accuracy["BestForNavigation"]=6]="BestForNavigation";return Accuracy}({});export function getCurrentLocation(...args){if(!window.ReactNativeWebView){throw new Error("This getCurrentLocation is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getCurrentLocation/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getCurrentLocation/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getCurrentLocation",eventId,args}))})}export function openCamera(...args){if(!window.ReactNativeWebView){throw new Error("This openCamera is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`openCamera/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`openCamera/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"openCamera",eventId,args}))})}export function appLogin(...args){if(!window.ReactNativeWebView){throw new Error("This appLogin is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`appLogin/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`appLogin/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"appLogin",eventId,args}))})}export function checkoutPayment(...args){if(!window.ReactNativeWebView){throw new Error("This checkoutPayment is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`checkoutPayment/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`checkoutPayment/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"checkoutPayment",eventId,args}))})}export function executePayment(...args){if(!window.ReactNativeWebView){throw new Error("This executePayment is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`executePayment/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`executePayment/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"executePayment",eventId,args}))})}export function getOperationalEnvironment(){if(!window.ReactNativeWebView){throw new Error("This getOperationalEnvironment is not available in browser environment")}if("getOperationalEnvironment"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getOperationalEnvironment"]}throw new Error("getOperationalEnvironment is not a constant handler")}export function startUpdateLocation({onEvent,onError,options}){if(!window.ReactNativeWebView){onError(new Error("This startUpdateLocation is not available in browser environment"));return()=>{}}const eventId=createEventId();const removes=[window.__BEDROCK_NATIVE_EMITTER.on(`startUpdateLocation/onEvent/${eventId}`,response=>{onEvent(response)}),window.__BEDROCK_NATIVE_EMITTER.on(`startUpdateLocation/onError/${eventId}`,error=>{onError(deserializeError(error))})];window.ReactNativeWebView.postMessage(JSON.stringify({type:"addEventListener",functionName:"startUpdateLocation",eventId,args:options}));return()=>{window.ReactNativeWebView.postMessage(JSON.stringify({type:"removeEventListener",functionName:"startUpdateLocation",eventId}));for(const remove of removes){remove()}}}
|
|
1
|
+
export const createEvents=()=>({emit(event,args){for(let callbacks=this.events[event]||[],i=0,length=callbacks.length;i<length;i++){callbacks[i](args)}},events:{},on(event,cb){var _this_events,_event;((_this_events=this.events)[_event=event]||(_this_events[_event]=[])).push(cb);return()=>{var _this_events_event;this.events[event]=(_this_events_event=this.events[event])===null||_this_events_event===void 0?void 0:_this_events_event.filter(i=>cb!==i)}}});const createEventId=()=>Math.random().toString(36).substring(2,15);const deserializeError=value=>{if(value&&value.__isError){const err=new Error(value.message);err.name=value.name;err.stack=value.stack;return err}return value};window.__BEDROCK_NATIVE_EMITTER=createEvents();export function closeView(...args){if(!window.ReactNativeWebView){throw new Error("This closeView is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`closeView/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`closeView/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"closeView",eventId,args}))})}export function generateHapticFeedback(...args){if(!window.ReactNativeWebView){throw new Error("This generateHapticFeedback is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`generateHapticFeedback/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`generateHapticFeedback/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"generateHapticFeedback",eventId,args}))})}export function share(...args){if(!window.ReactNativeWebView){throw new Error("This share is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`share/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`share/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"share",eventId,args}))})}export function setSecureScreen(...args){if(!window.ReactNativeWebView){throw new Error("This setSecureScreen is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setSecureScreen/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setSecureScreen/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setSecureScreen",eventId,args}))})}export function setScreenAwakeMode(...args){if(!window.ReactNativeWebView){throw new Error("This setScreenAwakeMode is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setScreenAwakeMode/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setScreenAwakeMode/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setScreenAwakeMode",eventId,args}))})}export function getNetworkStatus(...args){if(!window.ReactNativeWebView){throw new Error("This getNetworkStatus is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getNetworkStatus/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getNetworkStatus/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getNetworkStatus",eventId,args}))})}export function setIosSwipeGestureEnabled(...args){if(!window.ReactNativeWebView){throw new Error("This setIosSwipeGestureEnabled is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setIosSwipeGestureEnabled/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setIosSwipeGestureEnabled/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setIosSwipeGestureEnabled",eventId,args}))})}export function getLocale(){if(!window.ReactNativeWebView){throw new Error("This getLocale is not available in browser environment")}if("getLocale"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getLocale"]}throw new Error("getLocale is not a constant handler")}export function getSchemeUri(){if(!window.ReactNativeWebView){throw new Error("This getSchemeUri is not available in browser environment")}if("getSchemeUri"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getSchemeUri"]}throw new Error("getSchemeUri is not a constant handler")}export function getDeviceId(){if(!window.ReactNativeWebView){throw new Error("This getDeviceId is not available in browser environment")}if("getDeviceId"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getDeviceId"]}throw new Error("getDeviceId is not a constant handler")}export function getPlatformOS(){if(!window.ReactNativeWebView){throw new Error("This getPlatformOS is not available in browser environment")}if("getPlatformOS"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getPlatformOS"]}throw new Error("getPlatformOS is not a constant handler")}export function setClipboardText(...args){if(!window.ReactNativeWebView){throw new Error("This setClipboardText is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setClipboardText/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`setClipboardText/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"setClipboardText",eventId,args}))})}export function getClipboardText(...args){if(!window.ReactNativeWebView){throw new Error("This getClipboardText is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getClipboardText/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getClipboardText/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getClipboardText",eventId,args}))})}export function fetchContacts(...args){if(!window.ReactNativeWebView){throw new Error("This fetchContacts is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchContacts/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchContacts/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"fetchContacts",eventId,args}))})}export function fetchAlbumPhotos(...args){if(!window.ReactNativeWebView){throw new Error("This fetchAlbumPhotos is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchAlbumPhotos/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`fetchAlbumPhotos/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"fetchAlbumPhotos",eventId,args}))})}export var Accuracy=function(Accuracy){Accuracy[Accuracy["Lowest"]=1]="Lowest";Accuracy[Accuracy["Low"]=2]="Low";Accuracy[Accuracy["Balanced"]=3]="Balanced";Accuracy[Accuracy["High"]=4]="High";Accuracy[Accuracy["Highest"]=5]="Highest";Accuracy[Accuracy["BestForNavigation"]=6]="BestForNavigation";return Accuracy}({});export function getCurrentLocation(...args){if(!window.ReactNativeWebView){throw new Error("This getCurrentLocation is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getCurrentLocation/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`getCurrentLocation/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"getCurrentLocation",eventId,args}))})}export function openCamera(...args){if(!window.ReactNativeWebView){throw new Error("This openCamera is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`openCamera/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`openCamera/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"openCamera",eventId,args}))})}export function appLogin(...args){if(!window.ReactNativeWebView){throw new Error("This appLogin is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`appLogin/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`appLogin/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"appLogin",eventId,args}))})}export function checkoutPayment(...args){if(!window.ReactNativeWebView){throw new Error("This checkoutPayment is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`checkoutPayment/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`checkoutPayment/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"checkoutPayment",eventId,args}))})}export function executePayment(...args){if(!window.ReactNativeWebView){throw new Error("This executePayment is not available in browser environment")}const eventId=createEventId();const emitters=[];const unsubscribe=()=>{for(const emitter of emitters){emitter()}};return new Promise((resolve,reject)=>{emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`executePayment/resolve/${eventId}`,args=>{unsubscribe();resolve(args)}));emitters.push(window.__BEDROCK_NATIVE_EMITTER.on(`executePayment/reject/${eventId}`,error=>{unsubscribe();reject(deserializeError(error))}));window.ReactNativeWebView.postMessage(JSON.stringify({type:"method",functionName:"executePayment",eventId,args}))})}export function getOperationalEnvironment(){if(!window.ReactNativeWebView){throw new Error("This getOperationalEnvironment is not available in browser environment")}if("getOperationalEnvironment"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getOperationalEnvironment"]}throw new Error("getOperationalEnvironment is not a constant handler")}export function getTossAppVersion(){if(!window.ReactNativeWebView){throw new Error("This getTossAppVersion is not available in browser environment")}if("getTossAppVersion"in window.__CONSTANT_HANDLER_MAP){return window.__CONSTANT_HANDLER_MAP["getTossAppVersion"]}throw new Error("getTossAppVersion is not a constant handler")}export function startUpdateLocation({onEvent,onError,options}){if(!window.ReactNativeWebView){onError(new Error("This startUpdateLocation is not available in browser environment"));return()=>{}}const eventId=createEventId();const removes=[window.__BEDROCK_NATIVE_EMITTER.on(`startUpdateLocation/onEvent/${eventId}`,response=>{onEvent(response)}),window.__BEDROCK_NATIVE_EMITTER.on(`startUpdateLocation/onError/${eventId}`,error=>{onError(deserializeError(error))})];window.ReactNativeWebView.postMessage(JSON.stringify({type:"addEventListener",functionName:"startUpdateLocation",eventId,args:options}));return()=>{window.ReactNativeWebView.postMessage(JSON.stringify({type:"removeEventListener",functionName:"startUpdateLocation",eventId}));for(const remove of removes){remove()}}}
|
|
@@ -236,7 +236,7 @@ export interface TossMoneyExecutePaymentResult {
|
|
|
236
236
|
* @param {ExecutePaymentOptions} options 결제를 실행할 때 필요한 옵션이에요.
|
|
237
237
|
* @param {string} options.orderNo 결제를 생성할 때 사용한 주문번호예요.
|
|
238
238
|
* @param {string} options.payToken 결제 인증 과정에서 전달받은 결제 토큰이에요. 결제를 실행할 때 사용해요.
|
|
239
|
-
* @returns {Promise<CardExecutePaymentResult | TossMoneyExecutePaymentResult>} 결제 결과 객체를 반환해요. 자세한 내용은 [카드 결제 결과](reference/framework/토스페이/CardExecutePaymentResult.html) 또는 [토스머니 결제 결과](reference/framework/토스페이/TossMoneyExecutePaymentResult.html)를 참고하세요.
|
|
239
|
+
* @returns {Promise<CardExecutePaymentResult | TossMoneyExecutePaymentResult>} 결제 결과 객체를 반환해요. 자세한 내용은 [카드 결제 결과](/react-native/reference/framework/토스페이/CardExecutePaymentResult.html) 또는 [토스머니 결제 결과](/react-native/reference/framework/토스페이/TossMoneyExecutePaymentResult.html)를 참고하세요.
|
|
240
240
|
*
|
|
241
241
|
* @example
|
|
242
242
|
*
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @public
|
|
3
|
+
* @category 환경 확인
|
|
4
|
+
* @name getTossAppVersion
|
|
5
|
+
* @description 토스 앱 버전을 가져옵니다. 예를 들어, `5.206.0`과 같은 형태로 반환돼요. 토스 앱 버전을 로그로 남기거나, 특정 기능이 특정 버전 이상에서만 실행될 때 사용돼요.
|
|
6
|
+
* @signature
|
|
7
|
+
* ```typescript
|
|
8
|
+
* function getTossAppVersion(): string
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* @returns {string} 토스 앱 버전
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
*
|
|
15
|
+
*
|
|
16
|
+
* ### 토스 앱 버전 확인하기
|
|
17
|
+
*
|
|
18
|
+
* ```tsx
|
|
19
|
+
* import { getTossAppVersion } from '@apps-in-toss/web-framework';
|
|
20
|
+
*
|
|
21
|
+
*
|
|
22
|
+
* export function TossAppVersionPage() {
|
|
23
|
+
* return (
|
|
24
|
+
* <span>{getTossAppVersion()}</span>
|
|
25
|
+
* )
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function getTossAppVersion(): string;
|
|
30
|
+
|
|
31
|
+
export {};
|
package/dist-web/index.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export * from './bridge'
|
|
|
19
19
|
* }
|
|
20
20
|
* }
|
|
21
21
|
*/
|
|
22
|
-
declare function createAsyncBridge<T, R = any>(method: string): (args: T) => Promise<R>;
|
|
22
|
+
declare function createAsyncBridge<T extends any[], R = any>(method: string): (...args: T) => Promise<R>;
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
25
|
* 상수 브릿지 함수 생성
|
|
@@ -67,4 +67,89 @@ declare function createEventBridge<TOptions, TData>(method: string): (args: {
|
|
|
67
67
|
options?: TOptions;
|
|
68
68
|
}) => () => void;
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
/**
|
|
71
|
+
* @public
|
|
72
|
+
* @category 저장소
|
|
73
|
+
* @name Storage
|
|
74
|
+
* @description 네이티브의 저장소를 사용해요.
|
|
75
|
+
* @property {typeof getItem} [getItem] 모바일 앱의 로컬 저장소에서 아이템을 가져오는 함수예요. 자세한 내용은 [getItem](/react-native/reference/framework/저장소/getItem)을 참고하세요.
|
|
76
|
+
* @property {typeof setItem} [setItem] 모바일 앱의 로컬 저장소에 아이템을 저장하는 함수예요. 자세한 내용은 [setItem](/react-native/reference/framework/저장소/setItem)을 참고하세요.
|
|
77
|
+
* @property {typeof removeItem} [removeItem] 모바일 앱의 로컬 저장소에서 아이템을 삭제하는 함수예요. 자세한 내용은 [removeItem](/react-native/reference/framework/저장소/removeItem)을 참고하세요.
|
|
78
|
+
* @property {typeof clearItems} [clearItems] 모바일 앱의 로컬 저장소를 초기화하는 함수예요. 자세한 내용은 [clearItems](/react-native/reference/framework/저장소/clearItems)을 참고하세요.
|
|
79
|
+
*/
|
|
80
|
+
declare const Storage: {
|
|
81
|
+
/**
|
|
82
|
+
* @public
|
|
83
|
+
* @category 저장소
|
|
84
|
+
* @name getItem
|
|
85
|
+
* @description 모바일 앱의 로컬 저장소에서 문자열 데이터를 가져와요. 주로 앱이 종료되었다가 다시 시작해도 데이터가 유지되어야 하는 경우에 사용해요.
|
|
86
|
+
* @param {string} key - 가져올 아이템의 키를 입력해요.
|
|
87
|
+
* @returns {Promise<string | null>} 지정한 키에 저장된 문자열 값을 반환해요. 값이 없으면 `null`을 반환해요.
|
|
88
|
+
* @example
|
|
89
|
+
*
|
|
90
|
+
* ### `my-key`에 저장된 아이템 가져오기
|
|
91
|
+
* ```ts
|
|
92
|
+
* const value = await Storage.getItem('my-key');
|
|
93
|
+
* console.log(value); // 'value'
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
getItem: (args_0: string) => Promise<string | null>;
|
|
97
|
+
/**
|
|
98
|
+
* @public
|
|
99
|
+
* @category 저장소
|
|
100
|
+
* @name setItem
|
|
101
|
+
* @description 모바일 앱의 로컬 저장소에 문자열 데이터를 저장해요. 주로 앱이 종료되었다가 다시 시작해도 데이터가 유지되어야 하는 경우에 사용해요.
|
|
102
|
+
* @param {string} key - 저장할 아이템의 키를 입력해요.
|
|
103
|
+
* @param {string} value - 저장할 아이템의 값을 입력해요.
|
|
104
|
+
* @returns {Promise<void>} 아이템을 성공적으로 저장하면 아무 값도 반환하지 않아요.
|
|
105
|
+
* @example
|
|
106
|
+
*
|
|
107
|
+
* ### `my-key`에 아이템 저장하기
|
|
108
|
+
* ```ts
|
|
109
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
110
|
+
*
|
|
111
|
+
* await Storage.setItem('my-key', 'value');
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
setItem: (args_0: string, args_1: string) => Promise<void>;
|
|
115
|
+
/**
|
|
116
|
+
* @public
|
|
117
|
+
* @category 저장소
|
|
118
|
+
* @name removeItem
|
|
119
|
+
* @description 모바일 앱의 로컬 저장소에서 특정 키에 해당하는 아이템을 삭제해요.
|
|
120
|
+
* @param {string} key - 삭제할 아이템의 키를 입력해요.
|
|
121
|
+
* @returns {Promise<void>} 아이템을 삭제하면 아무 값도 반환하지 않아요.
|
|
122
|
+
* @example
|
|
123
|
+
*
|
|
124
|
+
* ### `my-key`에 저장된 아이템 삭제하기
|
|
125
|
+
* ```ts
|
|
126
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
127
|
+
*
|
|
128
|
+
* await Storage.removeItem('my-key');
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
removeItem: (args_0: string) => Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* @public
|
|
134
|
+
* @category 저장소
|
|
135
|
+
* @name clearItems
|
|
136
|
+
* @description 모바일 앱의 로컬 저장소의 모든 아이템을 삭제해요.
|
|
137
|
+
* @returns {Promise<void>} 아이템을 삭제하면 아무 값도 반환하지 않고 저장소가 초기화돼요.
|
|
138
|
+
* @example
|
|
139
|
+
*
|
|
140
|
+
* ### 저장소 초기화하기
|
|
141
|
+
* ```ts
|
|
142
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
143
|
+
*
|
|
144
|
+
* await Storage.clearItems();
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
clearItems: (args_0: void) => Promise<void>;
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
declare function getSafeAreaInsets(): {
|
|
151
|
+
top: number;
|
|
152
|
+
bottom: number;
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
export { Storage, createAsyncBridge, createConstantBridge, createEventBridge, getSafeAreaInsets };
|
package/dist-web/index.js
CHANGED
|
@@ -71,7 +71,7 @@ var deserializeError = (value) => {
|
|
|
71
71
|
|
|
72
72
|
// src-web/createAsyncBridge.ts
|
|
73
73
|
function createAsyncBridge(method) {
|
|
74
|
-
return (args) => {
|
|
74
|
+
return (...args) => {
|
|
75
75
|
const eventId = createEventId();
|
|
76
76
|
const emitters = [];
|
|
77
77
|
const unsubscribe = () => {
|
|
@@ -96,7 +96,7 @@ function createAsyncBridge(method) {
|
|
|
96
96
|
type: "method",
|
|
97
97
|
functionName: method,
|
|
98
98
|
eventId,
|
|
99
|
-
args
|
|
99
|
+
args
|
|
100
100
|
});
|
|
101
101
|
});
|
|
102
102
|
};
|
|
@@ -137,8 +137,88 @@ function createEventBridge(method) {
|
|
|
137
137
|
};
|
|
138
138
|
};
|
|
139
139
|
}
|
|
140
|
+
|
|
141
|
+
// src-web/storage.ts
|
|
142
|
+
var Storage = {
|
|
143
|
+
/**
|
|
144
|
+
* @public
|
|
145
|
+
* @category 저장소
|
|
146
|
+
* @name getItem
|
|
147
|
+
* @description 모바일 앱의 로컬 저장소에서 문자열 데이터를 가져와요. 주로 앱이 종료되었다가 다시 시작해도 데이터가 유지되어야 하는 경우에 사용해요.
|
|
148
|
+
* @param {string} key - 가져올 아이템의 키를 입력해요.
|
|
149
|
+
* @returns {Promise<string | null>} 지정한 키에 저장된 문자열 값을 반환해요. 값이 없으면 `null`을 반환해요.
|
|
150
|
+
* @example
|
|
151
|
+
*
|
|
152
|
+
* ### `my-key`에 저장된 아이템 가져오기
|
|
153
|
+
* ```ts
|
|
154
|
+
* const value = await Storage.getItem('my-key');
|
|
155
|
+
* console.log(value); // 'value'
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
getItem: createAsyncBridge("getStorageItem"),
|
|
159
|
+
/**
|
|
160
|
+
* @public
|
|
161
|
+
* @category 저장소
|
|
162
|
+
* @name setItem
|
|
163
|
+
* @description 모바일 앱의 로컬 저장소에 문자열 데이터를 저장해요. 주로 앱이 종료되었다가 다시 시작해도 데이터가 유지되어야 하는 경우에 사용해요.
|
|
164
|
+
* @param {string} key - 저장할 아이템의 키를 입력해요.
|
|
165
|
+
* @param {string} value - 저장할 아이템의 값을 입력해요.
|
|
166
|
+
* @returns {Promise<void>} 아이템을 성공적으로 저장하면 아무 값도 반환하지 않아요.
|
|
167
|
+
* @example
|
|
168
|
+
*
|
|
169
|
+
* ### `my-key`에 아이템 저장하기
|
|
170
|
+
* ```ts
|
|
171
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
172
|
+
*
|
|
173
|
+
* await Storage.setItem('my-key', 'value');
|
|
174
|
+
* ```
|
|
175
|
+
*/
|
|
176
|
+
setItem: createAsyncBridge("setStorageItem"),
|
|
177
|
+
/**
|
|
178
|
+
* @public
|
|
179
|
+
* @category 저장소
|
|
180
|
+
* @name removeItem
|
|
181
|
+
* @description 모바일 앱의 로컬 저장소에서 특정 키에 해당하는 아이템을 삭제해요.
|
|
182
|
+
* @param {string} key - 삭제할 아이템의 키를 입력해요.
|
|
183
|
+
* @returns {Promise<void>} 아이템을 삭제하면 아무 값도 반환하지 않아요.
|
|
184
|
+
* @example
|
|
185
|
+
*
|
|
186
|
+
* ### `my-key`에 저장된 아이템 삭제하기
|
|
187
|
+
* ```ts
|
|
188
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
189
|
+
*
|
|
190
|
+
* await Storage.removeItem('my-key');
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
removeItem: createAsyncBridge("removeStorageItem"),
|
|
194
|
+
/**
|
|
195
|
+
* @public
|
|
196
|
+
* @category 저장소
|
|
197
|
+
* @name clearItems
|
|
198
|
+
* @description 모바일 앱의 로컬 저장소의 모든 아이템을 삭제해요.
|
|
199
|
+
* @returns {Promise<void>} 아이템을 삭제하면 아무 값도 반환하지 않고 저장소가 초기화돼요.
|
|
200
|
+
* @example
|
|
201
|
+
*
|
|
202
|
+
* ### 저장소 초기화하기
|
|
203
|
+
* ```ts
|
|
204
|
+
* import { Storage } from '@apps-in-toss/framework';
|
|
205
|
+
*
|
|
206
|
+
* await Storage.clearItems();
|
|
207
|
+
* ```
|
|
208
|
+
*/
|
|
209
|
+
clearItems: createAsyncBridge("clearItems")
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
// src-web/getSafeAreaInsets.ts
|
|
213
|
+
var getSafeAreaBottom = createConstantBridge("getSafeAreaBottom");
|
|
214
|
+
var getSafeAreaTop = createConstantBridge("getSafeAreaTop");
|
|
215
|
+
function getSafeAreaInsets() {
|
|
216
|
+
return { top: getSafeAreaTop(), bottom: getSafeAreaBottom() };
|
|
217
|
+
}
|
|
140
218
|
export {
|
|
219
|
+
Storage,
|
|
141
220
|
createAsyncBridge,
|
|
142
221
|
createConstantBridge,
|
|
143
|
-
createEventBridge
|
|
222
|
+
createEventBridge,
|
|
223
|
+
getSafeAreaInsets
|
|
144
224
|
};
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apps-in-toss/web-framework",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.18",
|
|
5
5
|
"description": "Web Framework for Apps In Toss",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"prepack": "yarn build",
|
|
8
8
|
"typecheck": "tsc --noEmit",
|
|
9
9
|
"lint": "eslint .",
|
|
10
10
|
"build": "tsup",
|
|
11
|
+
"test:no-parallel": "vitest --no-watch",
|
|
11
12
|
"sync-bridge": "bridgepack build"
|
|
12
13
|
},
|
|
13
14
|
"main": "./dist-web/index.js",
|
|
@@ -50,7 +51,7 @@
|
|
|
50
51
|
"config.d.ts"
|
|
51
52
|
],
|
|
52
53
|
"devDependencies": {
|
|
53
|
-
"@apps-in-toss/framework": "0.0.
|
|
54
|
+
"@apps-in-toss/framework": "0.0.18",
|
|
54
55
|
"@babel/plugin-proposal-class-properties": "^7.16.7",
|
|
55
56
|
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7",
|
|
56
57
|
"@babel/plugin-proposal-numeric-separator": "^7.16.7",
|
|
@@ -66,16 +67,18 @@
|
|
|
66
67
|
"@babel/types": "^7.26.9",
|
|
67
68
|
"@clack/prompts": "^0.10.0",
|
|
68
69
|
"@hono/node-server": "^1.13.8",
|
|
69
|
-
"@react-native-bedrock/bridgepack": "0.0.
|
|
70
|
-
"@react-native-bedrock/cli": "0.0.
|
|
71
|
-
"@react-native-bedrock/mpack-next": "0.0.
|
|
72
|
-
"@react-native-bedrock/native": "0.0.
|
|
70
|
+
"@react-native-bedrock/bridgepack": "^0.0.18",
|
|
71
|
+
"@react-native-bedrock/cli": "^0.0.18",
|
|
72
|
+
"@react-native-bedrock/mpack-next": "^0.0.18",
|
|
73
|
+
"@react-native-bedrock/native": "0.0.16",
|
|
73
74
|
"@toss-design-system/react-native": "^0.4.1",
|
|
74
75
|
"@types/babel__core": "^7.20.5",
|
|
75
76
|
"@types/babel__traverse": "^7",
|
|
76
77
|
"@types/debug": "^4",
|
|
78
|
+
"@types/kill-port": "^2.0.1",
|
|
77
79
|
"@types/node": "^22.10.2",
|
|
78
80
|
"@types/react": "18.3.3",
|
|
81
|
+
"@types/yauzl": "^2.10.3",
|
|
79
82
|
"clipanion": "^4.0.0-rc.4",
|
|
80
83
|
"cosmiconfig": "^9.0.0",
|
|
81
84
|
"cosmiconfig-typescript-loader": "^5.1.0",
|
|
@@ -84,23 +87,27 @@
|
|
|
84
87
|
"execa": "^9.5.2",
|
|
85
88
|
"find-up-simple": "^1.0.1",
|
|
86
89
|
"hono": "^4.7.4",
|
|
90
|
+
"kill-port": "^2.0.1",
|
|
87
91
|
"picocolors": "^1.1.1",
|
|
88
92
|
"react": "18.2.0",
|
|
89
93
|
"react-native": "0.72.6",
|
|
90
|
-
"react-native-bedrock": "0.0.
|
|
94
|
+
"react-native-bedrock": "^0.0.18",
|
|
91
95
|
"tsup": "^8.3.5",
|
|
92
96
|
"typescript": "4.9.5",
|
|
93
97
|
"uuidv7": "^1.0.2",
|
|
94
98
|
"vitest": "^3.0.5",
|
|
99
|
+
"wait-port": "^1.1.0",
|
|
100
|
+
"workspace-tools": "^0.38.2",
|
|
95
101
|
"zod": "^3.24.1"
|
|
96
102
|
},
|
|
97
103
|
"dependencies": {
|
|
98
|
-
"@apps-in-toss/cli": "0.0.
|
|
99
|
-
"@apps-in-toss/plugins": "0.0.
|
|
100
|
-
"@babel/core": "7.23.9"
|
|
104
|
+
"@apps-in-toss/cli": "0.0.18",
|
|
105
|
+
"@apps-in-toss/plugins": "0.0.18",
|
|
106
|
+
"@babel/core": "7.23.9",
|
|
107
|
+
"yauzl": "^3.2.0"
|
|
101
108
|
},
|
|
102
109
|
"publishConfig": {
|
|
103
110
|
"access": "public"
|
|
104
111
|
},
|
|
105
|
-
"gitHead": "
|
|
112
|
+
"gitHead": "2563312f28a4702050104bebd4c1289183c705d2"
|
|
106
113
|
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|