@apps-in-toss/web-bridge 0.0.27 → 0.0.29

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/build/bridge.d.ts CHANGED
@@ -20,6 +20,7 @@ export * from './checkoutPayment.js';
20
20
  export * from './eventLog.js';
21
21
  export * from './getTossShareLink.js';
22
22
  export * from './setDeviceOrientation.js';
23
+ export * from './saveBase64Data.js';
23
24
  export * from './getOperationalEnvironment.js';
24
25
  export * from './getTossAppVersion.js';
25
26
  export * from './getDeviceId.js';
package/build/bridge.js CHANGED
@@ -1 +1 @@
1
- import{createAsyncBridge,createConstantBridge,createEventBridge}from"@apps-in-toss/bridge-core";var createEvents=function(){return{emit:function emit(event,args){for(var callbacks=this.events[event]||[],i=0,length=callbacks.length;i<length;i++){callbacks[i](args)}},events:{},on:function on(event,cb){var _this=this;var _this_events,_event;((_this_events=this.events)[_event=event]||(_this_events[_event]=[])).push(cb);return function(){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(function(i){return cb!==i})}}}};if(typeof window!=="undefined"){window.__BEDROCK_NATIVE_EMITTER=createEvents()}export var closeView=createAsyncBridge("closeView");export var generateHapticFeedback=createAsyncBridge("generateHapticFeedback");export var share=createAsyncBridge("share");export var setSecureScreen=createAsyncBridge("setSecureScreen");export var setScreenAwakeMode=createAsyncBridge("setScreenAwakeMode");export var getNetworkStatus=createAsyncBridge("getNetworkStatus");export var setIosSwipeGestureEnabled=createAsyncBridge("setIosSwipeGestureEnabled");export var openURL=createAsyncBridge("openURL");export var getLocale=createConstantBridge("getLocale");export var getSchemeUri=createConstantBridge("getSchemeUri");export var getPlatformOS=createConstantBridge("getPlatformOS");export var setClipboardText=createAsyncBridge("setClipboardText");export var getClipboardText=createAsyncBridge("getClipboardText");export var fetchContacts=createAsyncBridge("fetchContacts");export var fetchAlbumPhotos=createAsyncBridge("fetchAlbumPhotos");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 var getCurrentLocation=createAsyncBridge("getCurrentLocation");export var openCamera=createAsyncBridge("openCamera");export var appLogin=createAsyncBridge("appLogin");export var checkoutPayment=createAsyncBridge("checkoutPayment");export var eventLog=createAsyncBridge("eventLog");export var getTossShareLink=createAsyncBridge("getTossShareLink");export var setDeviceOrientation=createAsyncBridge("setDeviceOrientation");export var getOperationalEnvironment=createConstantBridge("getOperationalEnvironment");export var getTossAppVersion=createConstantBridge("getTossAppVersion");export var getDeviceId=createConstantBridge("getDeviceId");export var startUpdateLocation=createEventBridge("startUpdateLocation");
1
+ import{createAsyncBridge,createConstantBridge,createEventBridge}from"@apps-in-toss/bridge-core";var createEvents=function(){return{emit:function emit(event,args){for(var callbacks=this.events[event]||[],i=0,length=callbacks.length;i<length;i++){callbacks[i](args)}},events:{},on:function on(event,cb){var _this=this;var _this_events,_event;((_this_events=this.events)[_event=event]||(_this_events[_event]=[])).push(cb);return function(){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(function(i){return cb!==i})}}}};if(typeof window!=="undefined"){window.__BEDROCK_NATIVE_EMITTER=createEvents()}export var closeView=createAsyncBridge("closeView");export var generateHapticFeedback=createAsyncBridge("generateHapticFeedback");export var share=createAsyncBridge("share");export var setSecureScreen=createAsyncBridge("setSecureScreen");export var setScreenAwakeMode=createAsyncBridge("setScreenAwakeMode");export var getNetworkStatus=createAsyncBridge("getNetworkStatus");export var setIosSwipeGestureEnabled=createAsyncBridge("setIosSwipeGestureEnabled");export var openURL=createAsyncBridge("openURL");export var getLocale=createConstantBridge("getLocale");export var getSchemeUri=createConstantBridge("getSchemeUri");export var getPlatformOS=createConstantBridge("getPlatformOS");export var setClipboardText=createAsyncBridge("setClipboardText");export var getClipboardText=createAsyncBridge("getClipboardText");export var fetchContacts=createAsyncBridge("fetchContacts");export var fetchAlbumPhotos=createAsyncBridge("fetchAlbumPhotos");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 var getCurrentLocation=createAsyncBridge("getCurrentLocation");export var openCamera=createAsyncBridge("openCamera");export var appLogin=createAsyncBridge("appLogin");export var checkoutPayment=createAsyncBridge("checkoutPayment");export var eventLog=createAsyncBridge("eventLog");export var getTossShareLink=createAsyncBridge("getTossShareLink");export var setDeviceOrientation=createAsyncBridge("setDeviceOrientation");export var saveBase64Data=createAsyncBridge("saveBase64Data");export var getOperationalEnvironment=createConstantBridge("getOperationalEnvironment");export var getTossAppVersion=createConstantBridge("getTossAppVersion");export var getDeviceId=createConstantBridge("getDeviceId");export var startUpdateLocation=createEventBridge("startUpdateLocation");
package/build/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from './bridge.js';
2
2
  export * from '@apps-in-toss/bridge-core';
3
- import { LoadAdMobInterstitialAdOptions, ShowAdMobInterstitialAdOptions, LoadAdMobRewardedAdOptions, ShowAdMobRewardedAdOptions } from '@apps-in-toss/framework';
3
+ import { LoadAdMobInterstitialAdEvent, LoadAdMobInterstitialAdOptions, ShowAdMobInterstitialAdEvent, ShowAdMobInterstitialAdOptions, LoadAdMobRewardedAdEvent, LoadAdMobRewardedAdOptions, ShowAdMobRewardedAdEvent, ShowAdMobRewardedAdOptions } from '@apps-in-toss/framework';
4
4
 
5
5
  /**
6
6
  * @public
@@ -82,6 +82,91 @@ declare const Storage: {
82
82
  clearItems: (args_0: void) => Promise<void>;
83
83
  };
84
84
 
85
+ /**
86
+ * @public
87
+ * @category 인앱결제
88
+ * @name IapCreateOneTimePurchaseOrderResult
89
+ * @description 인앱결제 1건이 완료되면 결제 세부 정보와 상품 정보를 담아 반환해요. 반환된 정보로 결제한 상품의 정보를 화면에 표시할 수 있어요.
90
+ * @property {string | null} miniAppIconUrl - 미니앱 아이콘 이미지의 URL이에요. 아이콘은 앱인토스 콘솔에서 설정한 이미지예요. 콘솔에서 아이콘을 등록하지 않았다면 `null`로 반환돼요.
91
+ * @property {string} displayName - 화면에 표시할 상품 이름이에요.
92
+ * @property {string} displayAmount - 통화 단위가 포함된 가격 정보예요. 예를 들어 `1,000원`으로 가격과 통화가 함께 표시돼요.
93
+ * @property {number} amount - 상품 가격 숫자 값이에요. 화폐 단위와 쉼표를 제외한 순수 숫자예요. 예를 들어 `1000`으로 표시돼요.
94
+ * @property {string} currency - [ISO 4217 표준](https://ko.wikipedia.org/wiki/ISO_4217)에 따른 상품 가격 통화 단위예요. 예를 들어 원화는 `KRW`, 달러는 `USD`로 표시돼요.
95
+ * @property {number} fraction - 가격을 표시할 때 소수점 아래 몇 자리까지 보여줄지 정하는 값이에요. 예를 들어 달러는 소수점 둘째 자리까지 보여줘서 `2`, 원화는 소수점이 필요 없어서 `0`이에요
96
+ */
97
+ interface IapCreateOneTimePurchaseOrderResult {
98
+ miniAppIconUrl: string | null;
99
+ displayName: string;
100
+ displayAmount: string;
101
+ amount: number;
102
+ currency: string;
103
+ fraction: number;
104
+ }
105
+ /**
106
+ * @public
107
+ * @category 인앱결제
108
+ * @name IapProductListItem
109
+ * @description 인앱결제로 구매할 수 있는 상품 하나의 정보를 담은 객체예요. 상품 목록을 화면에 표시할 때 사용해요.
110
+ * @property {string} sku - 상품의 고유 ID예요. [인앱결제 주문서 페이지로 이동할때](/bedrock/reference/framework/인앱결제/createOneTimePurchaseOrder.html) 사용하는 `productId`와 동일한 값이에요.
111
+ * @property {string} displayName - 화면에 표시할 상품 이름이에요. 상품 이름은 앱인토스 콘솔에서 설정한 값이에요.
112
+ * @property {string} displayAmount - 통화 단위가 포함된 가격 정보예요. 예를 들어 `1,000원`으로 가격과 통화가 함께 표시돼요.
113
+ * @property {string} iconUrl - 상품 아이콘 이미지의 URL이에요. 아이콘은 앱인토스 콘솔에서 설정한 이미지예요.
114
+ * @property {string} description - 상품에 대한 설명이에요. 설명은 앱인토스 콘솔에서 설정한 값이에요.
115
+ */
116
+ interface IapProductListItem {
117
+ sku: string;
118
+ displayAmount: string;
119
+ displayName: string;
120
+ iconUrl: string;
121
+ description: string;
122
+ }
123
+ /**
124
+ * @public
125
+ * @category 인앱결제
126
+ * @name iapCreateOneTimePurchaseOrder
127
+ * @description
128
+ * 특정 인앱결제 주문서 페이지로 이동해요. 사용자가 상품 구매 버튼을 누르는 상황 등에 사용할 수 있어요. 사용자의 결제는 이동한 페이지에서 진행돼요. 만약 결제 중에 에러가 발생하면 에러 유형에 따라 에러 페이지로 이동해요.
129
+ * @param {IapCreateOneTimePurchaseOrderOptions} params - 인앱결제를 생성할 때 필요한 정보예요.
130
+ * @param {string} params.productId - 주문할 상품의 ID예요.
131
+ * @returns {Promise<IapCreateOneTimePurchaseOrderResult | undefined>} 결제에 성공하면 결제 결과 객체를 반환해요. 앱 버전이 최소 지원 버전(안드로이드 5.219.0, iOS 5.219.0)보다 낮으면 인앱결제를 실행할 수 없어서 `undefined`를 반환해요.
132
+ */
133
+ declare const IAP: {
134
+ /**
135
+ * @public
136
+ * @category 인앱결제
137
+ * @name iapCreateOneTimePurchaseOrder
138
+ * @description
139
+ * 단건 인앱결제 주문서 페이지로 이동해요. 결제는 해당 페이지에서 진행돼요. 주문 중 에러가 발생하면 에러 유형에 따라 에러 페이지로 이동해요.
140
+ * @param {IapCreateOneTimePurchaseOrderOptions} params - 인앱결제를 생성할 때 필요한 정보예요.
141
+ * @param {string} params.productId - 주문할 상품의 ID예요.
142
+ * @returns {Promise<IapCreateOneTimePurchaseOrderResult | undefined>} 결제가 성공하면 결과 객체를 반환해요. 앱 버전이 지원되지 않으면 `undefined`를 반환해요.
143
+ *
144
+ * @throw {code: "INVALID_PRODUCT_ID"} - 유효하지 않은 상품 ID이거나, 해당 상품이 존재하지 않을 때 발생해요.
145
+ * @throw {code: "PAYMENT_PENDING"} - 사용자가 요청한 결제가 아직 승인을 기다리고 있을 때 발생해요.
146
+ * @throw {code: "NETWORK_ERROR"} - 서버 내부 문제로 요청을 처리할 수 없을 때 발생해요.
147
+ * @throw {code: "INVALID_USER_ENVIRONMENT"} - 특정 기기, 계정 또는 설정 환경에서 구매할 수 없는 상품일 때 발생해요.
148
+ * @throw {code: "ITEM_ALREADY_OWNED"} - 사용자가 이미 구매한 상품을 다시 구매하려고 할 때 발생해요.
149
+ * @throw {code: "APP_MARKET_VERIFICATION_FAILED"} - 사용자가 결제를 완료했지만, 앱스토어에서 사용자 정보 검증에 실패했을 때 발생해요. 사용자가 앱스토어에 문의해서 환불을 요청해야해요.
150
+ * @throw {code: "TOSS_SERVER_VERIFICATION_FAILED"} - 사용자가 결제를 완료했지만, 서버 전송에 실패해서 결제 정보를 저장할 수 없을 때 발생해요.
151
+ * @throw {code: "INTERNAL_ERROR"} - 서버 내부 문제로 요청을 처리할 수 없을 때 발생해요.
152
+ * @throw {code: "KOREAN_ACCOUNT_ONLY"} - iOS 환경에서 사용자의 계정이 한국 계정이 아닐 때 발생해요.
153
+ * @throw {code: "USER_CANCELED"} - 사용자가 결제를 완료하지 않고 주문서 페이지를 이탈했을 때 발생해요.
154
+ */
155
+ createOneTimePurchaseOrder: (args_0: {
156
+ productId: string;
157
+ }, args_1: IapCreateOneTimePurchaseOrderResult) => Promise<any>;
158
+ /**
159
+ * @public
160
+ * @category 인앱결제
161
+ * @name iapGetProductItemList
162
+ * @description 인앱결제로 구매할 수 있는 상품 목록을 가져와요. 상품 목록 화면에 진입할 때 호출해요.
163
+ * @returns {Promise<{ products: IapProductListItem[] } | undefined>} 상품 목록을 포함한 객체를 반환해요. 앱 버전이 최소 지원 버전(안드로이드 5.219.0, iOS 5.219.0)보다 낮으면 `undefined`를 반환해요.
164
+ */
165
+ getProductItemList: () => Promise<{
166
+ products: IapProductListItem[];
167
+ }>;
168
+ };
169
+
85
170
  declare function getSafeAreaInsets(): {
86
171
  top: number;
87
172
  bottom: number;
@@ -163,7 +248,7 @@ declare const GoogleAdMob: {
163
248
  * ```
164
249
  */
165
250
  loadAdMobInterstitialAd: ((args: {
166
- onEvent: (data: void) => void;
251
+ onEvent: (data: LoadAdMobInterstitialAdEvent) => void;
167
252
  onError: (error: Error) => void;
168
253
  options?: LoadAdMobInterstitialAdOptions | undefined;
169
254
  }) => () => void) & {
@@ -219,7 +304,7 @@ declare const GoogleAdMob: {
219
304
  * ```
220
305
  */
221
306
  showAdMobInterstitialAd: ((args: {
222
- onEvent: (data: void) => void;
307
+ onEvent: (data: ShowAdMobInterstitialAdEvent) => void;
223
308
  onError: (error: Error) => void;
224
309
  options?: ShowAdMobInterstitialAdOptions | undefined;
225
310
  }) => () => void) & {
@@ -304,7 +389,7 @@ declare const GoogleAdMob: {
304
389
  * ```
305
390
  */
306
391
  loadAdMobRewardedAd: ((args: {
307
- onEvent: (data: void) => void;
392
+ onEvent: (data: LoadAdMobRewardedAdEvent) => void;
308
393
  onError: (error: Error) => void;
309
394
  options?: LoadAdMobRewardedAdOptions | undefined;
310
395
  }) => () => void) & {
@@ -360,7 +445,7 @@ declare const GoogleAdMob: {
360
445
  * ```
361
446
  */
362
447
  showAdMobRewardedAd: ((args: {
363
- onEvent: (data: void) => void;
448
+ onEvent: (data: ShowAdMobRewardedAdEvent) => void;
364
449
  onError: (error: Error) => void;
365
450
  options?: ShowAdMobRewardedAdOptions | undefined;
366
451
  }) => () => void) & {
@@ -445,4 +530,4 @@ declare const env: {
445
530
  getDeploymentId: () => string;
446
531
  };
447
532
 
448
- export { type AppsInTossEvent, type BedrockEvent, GoogleAdMob, Storage, appsInTossEvent, bedrockEvent, env, getSafeAreaInsets, isMinVersionSupported };
533
+ export { type AppsInTossEvent, type BedrockEvent, GoogleAdMob, IAP, type IapCreateOneTimePurchaseOrderResult, type IapProductListItem, Storage, appsInTossEvent, bedrockEvent, env, getSafeAreaInsets, isMinVersionSupported };
package/build/index.js CHANGED
@@ -75,6 +75,43 @@ var Storage = {
75
75
  clearItems: createAsyncBridge("clearItems")
76
76
  };
77
77
 
78
+ // src/iap.ts
79
+ import { createAsyncBridge as createAsyncBridge2 } from "@apps-in-toss/bridge-core";
80
+ var IAP = {
81
+ /**
82
+ * @public
83
+ * @category 인앱결제
84
+ * @name iapCreateOneTimePurchaseOrder
85
+ * @description
86
+ * 단건 인앱결제 주문서 페이지로 이동해요. 결제는 해당 페이지에서 진행돼요. 주문 중 에러가 발생하면 에러 유형에 따라 에러 페이지로 이동해요.
87
+ * @param {IapCreateOneTimePurchaseOrderOptions} params - 인앱결제를 생성할 때 필요한 정보예요.
88
+ * @param {string} params.productId - 주문할 상품의 ID예요.
89
+ * @returns {Promise<IapCreateOneTimePurchaseOrderResult | undefined>} 결제가 성공하면 결과 객체를 반환해요. 앱 버전이 지원되지 않으면 `undefined`를 반환해요.
90
+ *
91
+ * @throw {code: "INVALID_PRODUCT_ID"} - 유효하지 않은 상품 ID이거나, 해당 상품이 존재하지 않을 때 발생해요.
92
+ * @throw {code: "PAYMENT_PENDING"} - 사용자가 요청한 결제가 아직 승인을 기다리고 있을 때 발생해요.
93
+ * @throw {code: "NETWORK_ERROR"} - 서버 내부 문제로 요청을 처리할 수 없을 때 발생해요.
94
+ * @throw {code: "INVALID_USER_ENVIRONMENT"} - 특정 기기, 계정 또는 설정 환경에서 구매할 수 없는 상품일 때 발생해요.
95
+ * @throw {code: "ITEM_ALREADY_OWNED"} - 사용자가 이미 구매한 상품을 다시 구매하려고 할 때 발생해요.
96
+ * @throw {code: "APP_MARKET_VERIFICATION_FAILED"} - 사용자가 결제를 완료했지만, 앱스토어에서 사용자 정보 검증에 실패했을 때 발생해요. 사용자가 앱스토어에 문의해서 환불을 요청해야해요.
97
+ * @throw {code: "TOSS_SERVER_VERIFICATION_FAILED"} - 사용자가 결제를 완료했지만, 서버 전송에 실패해서 결제 정보를 저장할 수 없을 때 발생해요.
98
+ * @throw {code: "INTERNAL_ERROR"} - 서버 내부 문제로 요청을 처리할 수 없을 때 발생해요.
99
+ * @throw {code: "KOREAN_ACCOUNT_ONLY"} - iOS 환경에서 사용자의 계정이 한국 계정이 아닐 때 발생해요.
100
+ * @throw {code: "USER_CANCELED"} - 사용자가 결제를 완료하지 않고 주문서 페이지를 이탈했을 때 발생해요.
101
+ */
102
+ createOneTimePurchaseOrder: createAsyncBridge2(
103
+ "iapCreateOneTimePurchaseOrder"
104
+ ),
105
+ /**
106
+ * @public
107
+ * @category 인앱결제
108
+ * @name iapGetProductItemList
109
+ * @description 인앱결제로 구매할 수 있는 상품 목록을 가져와요. 상품 목록 화면에 진입할 때 호출해요.
110
+ * @returns {Promise<{ products: IapProductListItem[] } | undefined>} 상품 목록을 포함한 객체를 반환해요. 앱 버전이 최소 지원 버전(안드로이드 5.219.0, iOS 5.219.0)보다 낮으면 `undefined`를 반환해요.
111
+ */
112
+ getProductItemList: createAsyncBridge2("iapGetProductItemList")
113
+ };
114
+
78
115
  // src/getSafeAreaInsets.ts
79
116
  import { createConstantBridge } from "@apps-in-toss/bridge-core";
80
117
  var getSafeAreaBottom = createConstantBridge("getSafeAreaBottom");
@@ -299,9 +336,12 @@ var GoogleAdMob = {
299
336
  * }
300
337
  * ```
301
338
  */
302
- loadAdMobRewardedAd: Object.assign(createEventBridge("loadAdMobRewardedAd"), {
303
- isSupported: createConstantBridge2("loadAdMobRewardedAd_isSupported")
304
- }),
339
+ loadAdMobRewardedAd: Object.assign(
340
+ createEventBridge("loadAdMobRewardedAd"),
341
+ {
342
+ isSupported: createConstantBridge2("loadAdMobRewardedAd_isSupported")
343
+ }
344
+ ),
305
345
  /**
306
346
  * @public
307
347
  * @category 광고
@@ -351,9 +391,12 @@ var GoogleAdMob = {
351
391
  * }
352
392
  * ```
353
393
  */
354
- showAdMobRewardedAd: Object.assign(createEventBridge("showAdMobRewardedAd"), {
355
- isSupported: createConstantBridge2("showAdMobRewardedAd_isSupported")
356
- })
394
+ showAdMobRewardedAd: Object.assign(
395
+ createEventBridge("showAdMobRewardedAd"),
396
+ {
397
+ isSupported: createConstantBridge2("showAdMobRewardedAd_isSupported")
398
+ }
399
+ )
357
400
  };
358
401
 
359
402
  // src/bedrockEvent.ts
@@ -484,6 +527,7 @@ var env = {
484
527
  };
485
528
  export {
486
529
  GoogleAdMob,
530
+ IAP,
487
531
  Storage,
488
532
  appsInTossEvent,
489
533
  bedrockEvent,
@@ -0,0 +1,43 @@
1
+ export interface SaveBase64DataParams {
2
+ data: string;
3
+ fileName: string;
4
+ mimeType: string;
5
+ }
6
+ /**
7
+ * @public
8
+ * @category 데이터
9
+ * @name saveBase64Data
10
+ * @description 문자열로 인코딩된 Base64 데이터를 지정한 파일 이름과 MIME 타입으로 사용자 기기에 저장해요. 이미지, 텍스트, PDF 등 다양한 형식의 데이터를 저장할 수 있어요.
11
+ * @param {SaveBase64DataParams} params - 저장할 데이터와 파일 정보를 담은 객체예요.
12
+ * @param {string} params.data - Base64 형식으로 인코딩된 데이터 문자열이에요.
13
+ * @param {string} params.fileName - 저장할 파일 이름이에요. 확장자도 같이 붙여줘야해요. 예를 들어, 'example.png'로 저장할 수 있어요.
14
+ * @param {string} params.mimeType - 저장할 파일의 MIME 타입이에요. 예를 들어 'image/png' 로 지정하면 이미지, 'application/pdf'는 PDF 파일이에요. 자세한 내용은 [MIME 문서](https://developer.mozilla.org/ko/docs/Web/HTTP/Guides/MIME_types)를 참고해주세요.
15
+ *
16
+ * @example
17
+ * ### Base64 이미지 데이터를 사용자 기기에 저장하기
18
+ *
19
+ * ```tsx
20
+ *
21
+ * import { saveBase64Data } from '@apps-in-toss/web-framework';
22
+ *
23
+ * // '저장' 버튼을 누르면 이미지가 사용자 기기에 저장돼요.
24
+ * function SaveButton() {
25
+ * const handleSave = async () => {
26
+ * try {
27
+ * await saveBase64Data({
28
+ * data: 'iVBORw0KGgo...',
29
+ * fileName: 'some-photo.png',
30
+ * mimeType: 'image/png',
31
+ * });
32
+ * } catch (error) {
33
+ * console.error('데이터 저장에 실패했어요:', error);
34
+ * }
35
+ * };
36
+ *
37
+ * return <input type="button" value="저장" onClick={handleSave} />;
38
+ * }
39
+ * ```
40
+ */
41
+ export declare function saveBase64Data(params: SaveBase64DataParams): Promise<void>;
42
+
43
+ export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@apps-in-toss/web-bridge",
3
3
  "type": "module",
4
- "version": "0.0.27",
4
+ "version": "0.0.29",
5
5
  "description": "Web Bridge for Apps In Toss",
6
6
  "scripts": {
7
7
  "prepack": "yarn build",
@@ -23,10 +23,10 @@
23
23
  "build"
24
24
  ],
25
25
  "devDependencies": {
26
- "@apps-in-toss-internal/bridgepack": "0.0.27",
27
- "@apps-in-toss/bridge-core": "0.0.27",
28
- "@apps-in-toss/framework": "0.0.27",
29
- "react-native-bedrock": "0.0.27",
26
+ "@apps-in-toss-internal/bridgepack": "0.0.29",
27
+ "@apps-in-toss/bridge-core": "0.0.29",
28
+ "@apps-in-toss/framework": "0.0.29",
29
+ "react-native-bedrock": "0.0.25",
30
30
  "tsup": "^8.3.5",
31
31
  "typescript": "4.9.5",
32
32
  "vitest": "^3.1.2"
@@ -37,5 +37,5 @@
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
40
- "gitHead": "a6434fe8de65a2b20fb395b7e1b2b700edc112d3"
40
+ "gitHead": "d05ff237b358da05d562728d0ac965f00c419d63"
41
41
  }