@apps-in-toss/web-bridge 0.0.24

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.
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @public
3
+ * @category 언어
4
+ * @kind function
5
+ * @name getLocale
6
+ * @description
7
+ * 사용자의 로케일(locale) 정보를 반환해요. 네이티브 모듈에서 로케일 정보를 가져올 수 없을 때는 기본값으로 'ko-KR'을 반환합니다. 앱의 현지화 및 언어 설정과 관련된 기능을 구현할 때 사용하세요.
8
+ *
9
+ * @returns {string} 사용자의 로케일 정보를 반환해요.
10
+ *
11
+ * @example
12
+ * ### 현재 사용자의 로케일 정보 가져오기
13
+ *
14
+ * ```tsx
15
+ * import { getLocale } from '@apps-in-toss/web-framework';
16
+ *
17
+ *
18
+ * function MyPage() {
19
+ * const locale = getLocale();
20
+ *
21
+ * return (
22
+ * <span>사용자의 로케일 정보: {locale}</span>
23
+ * )
24
+ * }
25
+ *
26
+ * ```
27
+ */
28
+ export declare function getLocale(): string;
29
+
30
+ export {};
@@ -0,0 +1,54 @@
1
+ export type NetworkStatus = "OFFLINE" | "WIFI" | "2G" | "3G" | "4G" | "5G" | "WWAN" | "UNKNOWN";
2
+ /**
3
+ * @public
4
+ * @category 네트워크
5
+ * @kind function
6
+ * @name getNetworkStatus
7
+ * @description
8
+ * 디바이스의 현재 네트워크 연결 상태를 가져오는 함수예요.
9
+ * 반환 값은 `NetworkStatus` 타입으로, 인터넷 연결 여부와 연결 유형(Wi-Fi, 모바일 데이터 등)을 나타내요. 값은 다음 중 하나예요.
10
+ *
11
+ * - `OFFLINE`: 인터넷에 연결되지 않은 상태예요.
12
+ * - `WIFI`: Wi-Fi에 연결된 상태예요.
13
+ * - `2G`: 2G 네트워크에 연결된 상태예요.
14
+ * - `3G`: 3G 네트워크에 연결된 상태예요.
15
+ * - `4G`: 4G 네트워크에 연결된 상태예요.
16
+ * - `5G`: 5G 네트워크에 연결된 상태예요.
17
+ * - `WWAN`: 인터넷은 연결되었지만, 연결 유형(Wi-Fi, 2G~5G)을 알 수 없는 상태예요. 이 상태는 iOS에서만 확인할 수 있어요.
18
+ * - `UNKNOWN`: 인터넷 연결 상태를 알 수 없는 상태예요. 이 상태는 안드로이드에서만 확인할 수 있어요.
19
+ *
20
+ * @returns {Promise<NetworkStatus>} 네트워크 상태를 반환해요.
21
+ *
22
+ * @example
23
+ * ### 현재 네트워크 상태 가져오기
24
+ *
25
+ * 네트워크 연결 상태를 가져와 화면에 표시하는 예제예요.
26
+ *
27
+ * ```tsx
28
+ * import { useState, useEffect } from 'react';
29
+ *
30
+ * import { getNetworkStatus, NetworkStatus } from '@apps-in-toss/web-framework';
31
+ *
32
+ * function GetNetworkStatus() {
33
+ * const [status, setStatus] = useState<NetworkStatus | ''>('');
34
+ *
35
+ * useEffect(() => {
36
+ * async function fetchStatus() {
37
+ * const networkStatus = await getNetworkStatus();
38
+ * setStatus(networkStatus);
39
+ * }
40
+ *
41
+ * fetchStatus();
42
+ * }, []);
43
+ *
44
+ * return (
45
+ * <div>
46
+ * <span>현재 네트워크 상태: {status}</span>
47
+ * </div>
48
+ * );
49
+ * }
50
+ * ```
51
+ */
52
+ export declare function getNetworkStatus(): Promise<NetworkStatus>;
53
+
54
+ export {};
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @public
3
+ * @category 환경 확인
4
+ * @kind function
5
+ * @name getOperationalEnvironment
6
+ * @description
7
+ * 현재 실행 중인 앱의 운영 환경을 확인해요.
8
+ * 토스 앱에서 실행 중이라면 `'toss'`, 샌드박스 환경에서 실행 중이라면 `'sandbox'`를 반환해요.
9
+ *
10
+ * 운영 환경은 앱이 실행되는 컨텍스트를 의미하며, 특정 기능의 사용 가능 여부를 판단하는 데 활용할 수 있어요.
11
+ *
12
+ * @returns {'toss' | 'sandbox'}
13
+ * 현재 운영 환경을 나타내는 문자열이에요.
14
+ * - `'toss'`: 토스 앱에서 실행 중이에요.
15
+ * - `'sandbox'`: 샌드박스 환경에서 실행 중이에요.
16
+ *
17
+ * @example
18
+ * ### 현재 운영 환경 확인하기
19
+ *
20
+ * ```tsx
21
+ * import { getOperationalEnvironment } from '@apps-in-toss/web-framework';
22
+ *
23
+ *
24
+ * function EnvironmentInfo() {
25
+ * const environment = getOperationalEnvironment();
26
+ *
27
+ * return (
28
+ * <span>현재 운영 환경: {environment}</span>
29
+ * );
30
+ * }
31
+ * ```
32
+ */
33
+ export declare function getOperationalEnvironment(): "toss" | "sandbox";
34
+
35
+ export {};
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @public
3
+ * @kind function
4
+ * @category 환경 확인
5
+ *
6
+ * @name getPlatformOS
7
+ * @signature
8
+ * ```typescript
9
+ * function getPlatformOS(): 'ios' | 'android';
10
+ * ```
11
+ *
12
+ * @description
13
+ * 현재 실행 중인 플랫폼을 확인하는 함수예요.
14
+ * 이 함수는 `react-native`의 [`Platform.OS`](https://reactnative.dev/docs/0.72/platform#os) 값을 기반으로 동작하며, `ios` 또는 `android` 중 하나의 문자열을 반환해요.
15
+ *
16
+ * @returns {'ios' | 'android'} 현재 실행 중인 플랫폼
17
+ *
18
+ * @example
19
+ *
20
+ * ### 현재 실행중인 OS 플랫폼 확인하기
21
+ *
22
+ * ```tsx
23
+ * import { getPlatformOS } from '@apps-in-toss/web-framework';
24
+ * import { Text } 'react-native';
25
+ *
26
+ * function Page() {
27
+ * const platform = getPlatformOS();
28
+ *
29
+ * return <span>현재 플랫폼: {platform}</span>;
30
+ * }
31
+ * ```
32
+ */
33
+ export declare function getPlatformOS(): "ios" | "android";
34
+
35
+ export {};
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @public
3
+ * @name getSchemeUri
4
+ * @category 환경 확인
5
+ * @kind function
6
+ * @description 처음에 화면에 진입한 스킴 값이에요. 페이지 이동으로 인한 URI 변경은 반영되지 않아요.
7
+ * @returns {string} 처음에 화면에 진입한 스킴 값을 반환해요.
8
+ *
9
+ * @example
10
+ * ### 처음 진입한 스킴 값 가져오기
11
+ *
12
+ * ```tsx
13
+ * import { getSchemeUri } from '@apps-in-toss/web-framework';
14
+ *
15
+ *
16
+ * function MyPage() {
17
+ * const schemeUri = getSchemeUri();
18
+ *
19
+ * return <span>처음에 화면에 진입한 스킴 값: {schemeUri}</span>
20
+ * }
21
+ * ```
22
+ */
23
+ export declare function getSchemeUri(): string;
24
+
25
+ export {};
@@ -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 {};
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @public
3
+ * @category 공유
4
+ * @kind function
5
+ * @name getTossShareLink
6
+ * @description
7
+ * `getTossShareLink` 함수는 사용자가 지정한 경로를 토스 앱에서 열 수 있는 공유 링크를 반환해요.
8
+ * 이 링크를 다른 사람과 공유하면 토스 앱이 실행되면서 지정한 경로로 진입해요. 토스앱이 없는 사람은 iOS 일 때는 앱스토어로 이동하고, Android 일 때는 플레이스토어로 이동해요.
9
+ *
10
+ * 경로는 토스 앱 내부 특정 화면을 나타내는 딥링크(deep link) 형식이어야 해요.
11
+ * 예를 들어 `intoss://<앱 이름>`이나 `intoss://<앱 이름>/about?name=test`처럼 작성해요.
12
+ *
13
+ * 이 함수를 사용하면 `deep_link_value`를 포함한 완성된 공유 링크를 만들 수 있어요.
14
+ *
15
+ * @param path - 딥링크로 열고 싶은 경로예요. `intoss://`로 시작하는 문자열이어야 해요.
16
+ * @returns {Promise<string>} `deep_link_value`가 포함된 토스 공유 링크를 반환해요.
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * import { share } from '@apps-in-toss/web-framework';
21
+ * import { getTossShareLink } from '@apps-in-toss/web-framework';
22
+ *
23
+ * // '/' 경로를 딥링크로 포함한 토스 공유 링크를 생성해요.
24
+ * const tossLink = await getTossShareLink('intoss://my-app');
25
+ *
26
+ * // 생성한 링크를 메시지로 공유해요.
27
+ * await share({ message: tossLink });
28
+ * ```
29
+ */
30
+ export declare function getTossShareLink(path: string): Promise<string>;
31
+
32
+ export {};