@apps-in-toss/web-bridge 0.0.26 → 0.0.28

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
@@ -19,6 +19,7 @@ export * from './appLogin.js';
19
19
  export * from './checkoutPayment.js';
20
20
  export * from './eventLog.js';
21
21
  export * from './getTossShareLink.js';
22
+ export * from './setDeviceOrientation.js';
22
23
  export * from './getOperationalEnvironment.js';
23
24
  export * from './getTossAppVersion.js';
24
25
  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 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 getOperationalEnvironment=createConstantBridge("getOperationalEnvironment");export var getTossAppVersion=createConstantBridge("getTossAppVersion");export var getDeviceId=createConstantBridge("getDeviceId");export var startUpdateLocation=createEventBridge("startUpdateLocation");
@@ -0,0 +1,65 @@
1
+ /**
2
+ * @public
3
+ * @category 화면 제어
4
+ * @kind function
5
+ * @name setDeviceOrientation
6
+ * @description
7
+ * `setDeviceOrientation` 함수는 기기의 화면 방향을 설정하는 기능을 제공해요.
8
+ * 이 기능은 특정 화면에서 가로 모드나 세로 모드를 강제로 지정해야 할 때 유용해요.
9
+ *
10
+ * `type` 옵션을 통해 원하는 화면 방향을 지정할 수 있어요. 특히, 이 함수는 앱 전체에 영향을 미치므로
11
+ * 특정 화면에서만 사용하려면 화면을 벗어날 때 이전 상태로 복구하는 추가 작업이 필요해요.
12
+ *
13
+ * 예를 들어, 동영상 감상 화면에서는 가로 모드를 강제하고, 화면을 떠날 때 설정을 복구해서
14
+ * 다른 화면들의 방향 설정에 영향을 주지 않도록 할 수 있어요.
15
+ *
16
+ * @param {object} options 화면 방향 설정 값이에요.
17
+ * @param {string} options.type 화면 방향을 지정하는 옵션이에요.
18
+ * 'portrait' | 'landscape' 중 하나를 선택할 수 있어요.
19
+ *
20
+ * @returns {Promise<void>} 화면 방향 설정이 완료되면 해결되는 Promise를 반환해요.
21
+ *
22
+ * @example
23
+ * ### 화면 방향 설정하기
24
+ *
25
+ * ```tsx
26
+ *
27
+ * import { setDeviceOrientation } from '@apps-in-toss/web-framework';
28
+ *
29
+ * function SetDeviceOrientation() {
30
+ * return (
31
+ * <input type="button"
32
+ * value="가로 모드로 변경"
33
+ * onClick={() => {
34
+ * setDeviceOrientation({ type: 'landscape' });
35
+ * }}
36
+ * />
37
+ * );
38
+ * }
39
+ * ```
40
+ *
41
+ * ### 화면 방향 복구하기
42
+ * 특정 화면을 벗어날 때 이전 상태로 복구하려면 다음과 같이 `useEffect`를 사용하세요.
43
+ *
44
+ * ```tsx
45
+ * import { useEffect } from 'react';
46
+ * import { setDeviceOrientation } from '@apps-in-toss/web-framework';
47
+ *
48
+ * function VideoScreen() {
49
+ * useEffect(() => {
50
+ * setDeviceOrientation({ type: 'landscape' });
51
+ *
52
+ * return () => {
53
+ * setDeviceOrientation({ type: 'portrait' }); // 설정을 이전 상태로 복구해요.
54
+ * };
55
+ * }, []);
56
+ *
57
+ * return <span>동영상을 감상하는 화면</span>;
58
+ * }
59
+ * ```
60
+ */
61
+ export declare function setDeviceOrientation(options: {
62
+ type: "portrait" | "landscape";
63
+ }): Promise<void>;
64
+
65
+ 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.26",
4
+ "version": "0.0.28",
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.26",
27
- "@apps-in-toss/bridge-core": "0.0.26",
28
- "@apps-in-toss/framework": "0.0.26",
29
- "react-native-bedrock": "0.0.24",
26
+ "@apps-in-toss-internal/bridgepack": "0.0.28",
27
+ "@apps-in-toss/bridge-core": "0.0.28",
28
+ "@apps-in-toss/framework": "0.0.28",
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": "8df951171a6a432852d863459d724224a0680e7d"
40
+ "gitHead": "17b4c5583054e58a9da274a886ee10c76671d24d"
41
41
  }