@apps-in-toss/native-modules 2.0.1 → 2.0.2
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/bridges-meta.json +1 -1
- package/dist/index.cjs +16 -2
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.js +16 -2
- package/package.json +2 -2
- package/src/MiniAppModule/native-modules/getTossShareLink.ts +19 -1
- package/src/MiniAppModule/native-modules/shareWithScheme.ts +3 -3
- package/src/MiniAppModule.brick.ts +1 -1
package/dist/bridges-meta.json
CHANGED
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
79
|
"identifier": "getTossShareLink",
|
|
80
|
-
"dts": "/**\n * @public\n * @category 공유\n * @kind function\n * @name getTossShareLink\n * @description\n * `getTossShareLink` 함수는 사용자가 지정한 경로를 토스 앱에서 열 수 있는 공유 링크를 반환해요.\n * 이 링크를 다른 사람과 공유하면 토스 앱이 실행되면서 지정한 경로로 진입해요. 토스앱이 없는 사람은 iOS 일 때는 앱스토어로 이동하고, Android 일 때는 플레이스토어로 이동해요.\n *\n * 경로는 토스 앱 내부 특정 화면을 나타내는 딥링크(deep link) 형식이어야 해요.\n * 예를 들어 `intoss://<앱 이름>`이나 `intoss://<앱 이름>/about?name=test`처럼 작성해요.\n *\n * 이 함수를 사용하면 `deep_link_value`를 포함한 완성된 공유 링크를 만들 수 있어요.\n *\n * @param path - 딥링크로 열고 싶은 경로예요. `intoss://`로 시작하는 문자열이어야 해요.\n * @returns {Promise<string>} `deep_link_value`가 포함된 토스 공유 링크를 반환해요.\n *\n * @example\n * ```tsx\n * import { share } from '@granite-js/react-native';\n * import { getTossShareLink } from '@apps-in-toss/framework';\n *\n * // '/' 경로를 딥링크로 포함한 토스 공유 링크를 생성해요.\n * const tossLink = await getTossShareLink('intoss://my-app');\n *\n * // 생성한 링크를 메시지로 공유해요.\n * await share({ message: tossLink });\n * ```\n */\nexport declare function getTossShareLink(path: string): Promise<string>;\n\nexport {};\n"
|
|
80
|
+
"dts": "/**\n * @public\n * @category 공유\n * @kind function\n * @name getTossShareLink\n * @description\n * `getTossShareLink` 함수는 사용자가 지정한 경로를 토스 앱에서 열 수 있는 공유 링크를 반환해요.\n * 이 링크를 다른 사람과 공유하면 토스 앱이 실행되면서 지정한 경로로 진입해요. 토스앱이 없는 사람은 iOS 일 때는 앱스토어로 이동하고, Android 일 때는 플레이스토어로 이동해요.\n *\n * 경로는 토스 앱 내부 특정 화면을 나타내는 딥링크(deep link) 형식이어야 해요.\n * 예를 들어 `intoss://<앱 이름>`이나 `intoss://<앱 이름>/about?name=test`처럼 작성해요.\n *\n * 이 함수를 사용하면 `deep_link_value`를 포함한 완성된 공유 링크를 만들 수 있어요.\n *\n * @param path - 딥링크로 열고 싶은 경로예요. `intoss://`로 시작하는 문자열이어야 해요.\n * @returns {Promise<string>} `deep_link_value`가 포함된 토스 공유 링크를 반환해요.\n *\n * @example\n * ```tsx\n * import { share } from '@granite-js/react-native';\n * import { getTossShareLink } from '@apps-in-toss/framework';\n *\n * // '/' 경로를 딥링크로 포함한 토스 공유 링크를 생성해요.\n * const tossLink = await getTossShareLink('intoss://my-app');\n *\n * // 생성한 링크를 메시지로 공유해요.\n * await share({ message: tossLink });\n * ```\n */\nexport declare function getTossShareLink(path: string, ogImageUrl?: string): Promise<string>;\n\nexport {};\n"
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
"identifier": "setDeviceOrientation",
|
package/dist/index.cjs
CHANGED
|
@@ -645,7 +645,21 @@ function getTossAppVersion() {
|
|
|
645
645
|
}
|
|
646
646
|
|
|
647
647
|
// src/MiniAppModule/native-modules/getTossShareLink.ts
|
|
648
|
-
|
|
648
|
+
var V2_MIN_VERSION = {
|
|
649
|
+
android: "5.240.0",
|
|
650
|
+
ios: "5.239.0"
|
|
651
|
+
};
|
|
652
|
+
async function getTossShareLink(path, ogImageUrl) {
|
|
653
|
+
if (!isMinVersionSupported(V2_MIN_VERSION)) {
|
|
654
|
+
return await getTossShareLinkV1(path);
|
|
655
|
+
}
|
|
656
|
+
const { shareLink } = await safePostMessage("getTossShareLink", {
|
|
657
|
+
url: path,
|
|
658
|
+
ogImageUrl
|
|
659
|
+
});
|
|
660
|
+
return shareLink;
|
|
661
|
+
}
|
|
662
|
+
async function getTossShareLinkV1(path) {
|
|
649
663
|
const { shareLink } = await safePostMessage("getTossShareLink", {});
|
|
650
664
|
const shareUrl = new URL(shareLink);
|
|
651
665
|
shareUrl.searchParams.set("deep_link_value", path);
|
|
@@ -1011,7 +1025,7 @@ function getGroupId() {
|
|
|
1011
1025
|
|
|
1012
1026
|
// src/MiniAppModule/native-modules/shareWithScheme.ts
|
|
1013
1027
|
function shareWithScheme(params) {
|
|
1014
|
-
|
|
1028
|
+
return safePostMessage("shareWithScheme", params);
|
|
1015
1029
|
}
|
|
1016
1030
|
|
|
1017
1031
|
// src/MiniAppModule/native-modules/getServerTime.ts
|
package/dist/index.d.cts
CHANGED
|
@@ -1116,6 +1116,9 @@ interface AsyncMethodsMap {
|
|
|
1116
1116
|
getServerTime: (params: CompatiblePlaceholderArgument) => Promise<{
|
|
1117
1117
|
serverTime: number;
|
|
1118
1118
|
}>;
|
|
1119
|
+
shareWithScheme: (params: {
|
|
1120
|
+
schemeURL: string;
|
|
1121
|
+
}) => Promise<void>;
|
|
1119
1122
|
}
|
|
1120
1123
|
/**
|
|
1121
1124
|
* Sync Methods Map
|
|
@@ -1125,9 +1128,6 @@ interface SyncMethodsMap {
|
|
|
1125
1128
|
getWebBundleURL: (params: CompatiblePlaceholderArgument) => {
|
|
1126
1129
|
url: string;
|
|
1127
1130
|
};
|
|
1128
|
-
shareWithScheme: (params: {
|
|
1129
|
-
schemeURL: string;
|
|
1130
|
-
}) => void;
|
|
1131
1131
|
stopUpdateLocation: (params: object) => void;
|
|
1132
1132
|
}
|
|
1133
1133
|
/**
|
|
@@ -2397,7 +2397,7 @@ declare function getTossAppVersion(): string;
|
|
|
2397
2397
|
* await share({ message: tossLink });
|
|
2398
2398
|
* ```
|
|
2399
2399
|
*/
|
|
2400
|
-
declare function getTossShareLink(path: string): Promise<string>;
|
|
2400
|
+
declare function getTossShareLink(path: string, ogImageUrl?: string): Promise<string>;
|
|
2401
2401
|
|
|
2402
2402
|
/**
|
|
2403
2403
|
* @public
|
|
@@ -2700,7 +2700,7 @@ declare function getGroupId(): string;
|
|
|
2700
2700
|
*/
|
|
2701
2701
|
declare function shareWithScheme(params: {
|
|
2702
2702
|
schemeURL: string;
|
|
2703
|
-
}): void
|
|
2703
|
+
}): Promise<void>;
|
|
2704
2704
|
|
|
2705
2705
|
/**
|
|
2706
2706
|
* @public
|
package/dist/index.d.ts
CHANGED
|
@@ -1116,6 +1116,9 @@ interface AsyncMethodsMap {
|
|
|
1116
1116
|
getServerTime: (params: CompatiblePlaceholderArgument) => Promise<{
|
|
1117
1117
|
serverTime: number;
|
|
1118
1118
|
}>;
|
|
1119
|
+
shareWithScheme: (params: {
|
|
1120
|
+
schemeURL: string;
|
|
1121
|
+
}) => Promise<void>;
|
|
1119
1122
|
}
|
|
1120
1123
|
/**
|
|
1121
1124
|
* Sync Methods Map
|
|
@@ -1125,9 +1128,6 @@ interface SyncMethodsMap {
|
|
|
1125
1128
|
getWebBundleURL: (params: CompatiblePlaceholderArgument) => {
|
|
1126
1129
|
url: string;
|
|
1127
1130
|
};
|
|
1128
|
-
shareWithScheme: (params: {
|
|
1129
|
-
schemeURL: string;
|
|
1130
|
-
}) => void;
|
|
1131
1131
|
stopUpdateLocation: (params: object) => void;
|
|
1132
1132
|
}
|
|
1133
1133
|
/**
|
|
@@ -2397,7 +2397,7 @@ declare function getTossAppVersion(): string;
|
|
|
2397
2397
|
* await share({ message: tossLink });
|
|
2398
2398
|
* ```
|
|
2399
2399
|
*/
|
|
2400
|
-
declare function getTossShareLink(path: string): Promise<string>;
|
|
2400
|
+
declare function getTossShareLink(path: string, ogImageUrl?: string): Promise<string>;
|
|
2401
2401
|
|
|
2402
2402
|
/**
|
|
2403
2403
|
* @public
|
|
@@ -2700,7 +2700,7 @@ declare function getGroupId(): string;
|
|
|
2700
2700
|
*/
|
|
2701
2701
|
declare function shareWithScheme(params: {
|
|
2702
2702
|
schemeURL: string;
|
|
2703
|
-
}): void
|
|
2703
|
+
}): Promise<void>;
|
|
2704
2704
|
|
|
2705
2705
|
/**
|
|
2706
2706
|
* @public
|
package/dist/index.js
CHANGED
|
@@ -567,7 +567,21 @@ function getTossAppVersion() {
|
|
|
567
567
|
}
|
|
568
568
|
|
|
569
569
|
// src/MiniAppModule/native-modules/getTossShareLink.ts
|
|
570
|
-
|
|
570
|
+
var V2_MIN_VERSION = {
|
|
571
|
+
android: "5.240.0",
|
|
572
|
+
ios: "5.239.0"
|
|
573
|
+
};
|
|
574
|
+
async function getTossShareLink(path, ogImageUrl) {
|
|
575
|
+
if (!isMinVersionSupported(V2_MIN_VERSION)) {
|
|
576
|
+
return await getTossShareLinkV1(path);
|
|
577
|
+
}
|
|
578
|
+
const { shareLink } = await safePostMessage("getTossShareLink", {
|
|
579
|
+
url: path,
|
|
580
|
+
ogImageUrl
|
|
581
|
+
});
|
|
582
|
+
return shareLink;
|
|
583
|
+
}
|
|
584
|
+
async function getTossShareLinkV1(path) {
|
|
571
585
|
const { shareLink } = await safePostMessage("getTossShareLink", {});
|
|
572
586
|
const shareUrl = new URL(shareLink);
|
|
573
587
|
shareUrl.searchParams.set("deep_link_value", path);
|
|
@@ -933,7 +947,7 @@ function getGroupId() {
|
|
|
933
947
|
|
|
934
948
|
// src/MiniAppModule/native-modules/shareWithScheme.ts
|
|
935
949
|
function shareWithScheme(params) {
|
|
936
|
-
|
|
950
|
+
return safePostMessage("shareWithScheme", params);
|
|
937
951
|
}
|
|
938
952
|
|
|
939
953
|
// src/MiniAppModule/native-modules/getServerTime.ts
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apps-in-toss/native-modules",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.2",
|
|
5
5
|
"description": "Native Modules for Apps In Toss",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"typecheck": "tsc --noEmit",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"vitest": "^3.2.4"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@apps-in-toss/types": "2.0.
|
|
45
|
+
"@apps-in-toss/types": "2.0.2",
|
|
46
46
|
"brick-module": "0.5.0",
|
|
47
47
|
"es-toolkit": "^1.39.3"
|
|
48
48
|
},
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
+
import { isMinVersionSupported } from './isMinVersionSupported';
|
|
1
2
|
import { safePostMessage } from '../../natives';
|
|
2
3
|
|
|
4
|
+
const V2_MIN_VERSION = {
|
|
5
|
+
android: '5.240.0',
|
|
6
|
+
ios: '5.239.0',
|
|
7
|
+
} as const;
|
|
8
|
+
|
|
3
9
|
/**
|
|
4
10
|
* @public
|
|
5
11
|
* @category 공유
|
|
@@ -29,7 +35,19 @@ import { safePostMessage } from '../../natives';
|
|
|
29
35
|
* await share({ message: tossLink });
|
|
30
36
|
* ```
|
|
31
37
|
*/
|
|
32
|
-
export async function getTossShareLink(path: string): Promise<string> {
|
|
38
|
+
export async function getTossShareLink(path: string, ogImageUrl?: string): Promise<string> {
|
|
39
|
+
if (!isMinVersionSupported(V2_MIN_VERSION)) {
|
|
40
|
+
return await getTossShareLinkV1(path);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const { shareLink } = await safePostMessage('getTossShareLink', {
|
|
44
|
+
url: path,
|
|
45
|
+
ogImageUrl,
|
|
46
|
+
});
|
|
47
|
+
return shareLink;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
async function getTossShareLinkV1(path: string): Promise<string> {
|
|
33
51
|
const { shareLink } = await safePostMessage('getTossShareLink', {});
|
|
34
52
|
const shareUrl = new URL(shareLink);
|
|
35
53
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { safePostMessage } from '../../natives';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* @public
|
|
@@ -18,6 +18,6 @@ import { safeSyncPostMessage } from '../../natives';
|
|
|
18
18
|
* shareWithScheme({ schemeURL: 'intoss://my-app?referrer=share' });
|
|
19
19
|
* ```
|
|
20
20
|
*/
|
|
21
|
-
export function shareWithScheme(params: { schemeURL: string }): void {
|
|
22
|
-
|
|
21
|
+
export function shareWithScheme(params: { schemeURL: string }): Promise<void> {
|
|
22
|
+
return safePostMessage('shareWithScheme', params);
|
|
23
23
|
}
|
|
@@ -117,6 +117,7 @@ export interface AsyncMethodsMap {
|
|
|
117
117
|
getIsTossLoginIntegratedService: (params: object) => Promise<boolean | undefined>;
|
|
118
118
|
|
|
119
119
|
getServerTime: (params: CompatiblePlaceholderArgument) => Promise<{ serverTime: number }>;
|
|
120
|
+
shareWithScheme: (params: { schemeURL: string }) => Promise<void>;
|
|
120
121
|
}
|
|
121
122
|
|
|
122
123
|
/**
|
|
@@ -125,7 +126,6 @@ export interface AsyncMethodsMap {
|
|
|
125
126
|
*/
|
|
126
127
|
export interface SyncMethodsMap {
|
|
127
128
|
getWebBundleURL: (params: CompatiblePlaceholderArgument) => { url: string };
|
|
128
|
-
shareWithScheme: (params: { schemeURL: string }) => void;
|
|
129
129
|
stopUpdateLocation: (params: object) => void;
|
|
130
130
|
}
|
|
131
131
|
|