@react-native-kakao/share 3.1.0-next.0 → 3.1.0-next.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/CHANGELOG.md +33 -0
- package/RNCKakaoShare.podspec +0 -1
- package/android/build.gradle +1 -2
- package/android/src/main/java/net/mjstudio/rnkakao/share/RNCKakaoShareModule.kt +321 -12
- package/android/src/main/java/net/mjstudio/rnkakao/share/RNCKakaoShareTemplates.kt +5 -2
- package/ios/RNCKakaoShare.mm +64 -5
- package/ios/RNCKakaoShareManager.swift +315 -37
- package/lib/commonjs/index.js +140 -30
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +199 -21
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/spec/NativeKakaoShare.ts +77 -4
- package/lib/commonjs/validateSharePickerSettings.js +33 -0
- package/lib/commonjs/validateSharePickerSettings.js.map +1 -0
- package/lib/module/index.js +131 -30
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +190 -21
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/spec/NativeKakaoShare.ts +77 -4
- package/lib/module/validateSharePickerSettings.js +29 -0
- package/lib/module/validateSharePickerSettings.js.map +1 -0
- package/lib/typescript/src/index.d.ts +97 -37
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/spec/NativeKakaoShare.d.ts +72 -1
- package/lib/typescript/src/spec/NativeKakaoShare.d.ts.map +1 -1
- package/lib/typescript/src/validateSharePickerSettings.d.ts +6 -0
- package/lib/typescript/src/validateSharePickerSettings.d.ts.map +1 -0
- package/package.json +3 -3
- package/src/index.ts +278 -17
- package/src/index.web.ts +234 -38
- package/src/spec/NativeKakaoShare.ts +77 -4
- package/src/validateSharePickerSettings.ts +38 -0
package/src/index.ts
CHANGED
|
@@ -3,10 +3,15 @@ import type { Double, UnsafeObject } from 'react-native/Libraries/Types/CodegenT
|
|
|
3
3
|
import type {
|
|
4
4
|
KakaoCalendarTemplate,
|
|
5
5
|
KakaoCommerceTemplate,
|
|
6
|
+
KakaoDefaultTemplateParams,
|
|
6
7
|
KakaoFeedTemplate,
|
|
7
8
|
KakaoImageUploadResult,
|
|
8
9
|
KakaoListTemplate,
|
|
9
10
|
KakaoLocationTemplate,
|
|
11
|
+
KakaoMessageSendResult,
|
|
12
|
+
KakaoSharePickerSettings,
|
|
13
|
+
KakaoShareTemplateDiagnostics,
|
|
14
|
+
KakaoShareTemplateDiagnosticsParams,
|
|
10
15
|
KakaoTemplateButton,
|
|
11
16
|
KakaoTemplateCommerce,
|
|
12
17
|
KakaoTemplateContent,
|
|
@@ -18,6 +23,7 @@ import type {
|
|
|
18
23
|
} from './spec/NativeKakaoShare';
|
|
19
24
|
import Native from './spec/NativeKakaoShare';
|
|
20
25
|
import { swapMobileExecutionParamsFieldValueIntoStringInIOS } from './util/swapMobileExecutionParamsFieldValueIntoStringInIOS';
|
|
26
|
+
import { validateSharePickerSettings } from './validateSharePickerSettings';
|
|
21
27
|
|
|
22
28
|
export type {
|
|
23
29
|
KakaoTemplateSocial,
|
|
@@ -29,14 +35,41 @@ export type {
|
|
|
29
35
|
KakaoTemplateCommerce,
|
|
30
36
|
KakaoTemplateButton,
|
|
31
37
|
KakaoLocationTemplate,
|
|
38
|
+
KakaoMessageSendResult,
|
|
39
|
+
KakaoSharePickerSettings,
|
|
40
|
+
KakaoShareTemplateDiagnostics,
|
|
41
|
+
KakaoShareTemplateDiagnosticsParams,
|
|
32
42
|
KakaoListTemplate,
|
|
33
43
|
KakaoFeedTemplate,
|
|
34
44
|
KakaoCommerceTemplate,
|
|
35
45
|
KakaoCalendarTemplate,
|
|
36
46
|
KakaoImageUploadResult,
|
|
47
|
+
KakaoDefaultTemplateParams,
|
|
37
48
|
};
|
|
38
49
|
|
|
50
|
+
export function isKakaoTalkSharingAvailable(): Promise<boolean> {
|
|
51
|
+
return Native.isKakaoTalkSharingAvailable();
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
type ShareArgs = [
|
|
55
|
+
templateType: string,
|
|
56
|
+
templateId: Double,
|
|
57
|
+
templateJson: UnsafeObject,
|
|
58
|
+
receiverUuids: readonly string[],
|
|
59
|
+
useWebBrowserIfKakaoTalkNotAvailable: boolean,
|
|
60
|
+
templateArgs: Readonly<Record<string, string>>,
|
|
61
|
+
serverCallbackArgs: Readonly<Record<string, string>>,
|
|
62
|
+
];
|
|
63
|
+
|
|
64
|
+
function shareOrSendMeOrSendFriendOrWhatever<T extends boolean = false>(
|
|
65
|
+
sendType: 'send-friend',
|
|
66
|
+
...args: [...ShareArgs, includeFailureInfo?: T]
|
|
67
|
+
): Promise<KakaoFriendMessageResult<T>>;
|
|
39
68
|
function shareOrSendMeOrSendFriendOrWhatever(
|
|
69
|
+
sendType: 'share' | 'send-me',
|
|
70
|
+
...args: [...ShareArgs, includeFailureInfo?: undefined, pickerSettings?: KakaoSharePickerSettings]
|
|
71
|
+
): Promise<void>;
|
|
72
|
+
async function shareOrSendMeOrSendFriendOrWhatever(
|
|
40
73
|
/* share, send-me, send-friend */
|
|
41
74
|
sendType: string,
|
|
42
75
|
/* custom, feed, list, location, commerce, text, calendar */
|
|
@@ -50,8 +83,10 @@ function shareOrSendMeOrSendFriendOrWhatever(
|
|
|
50
83
|
useWebBrowserIfKakaoTalkNotAvailable: boolean,
|
|
51
84
|
templateArgs: Readonly<{ [key: string]: string }>,
|
|
52
85
|
serverCallbackArgs: Readonly<{ [key: string]: string }>,
|
|
53
|
-
|
|
54
|
-
|
|
86
|
+
includeFailureInfo?: boolean,
|
|
87
|
+
pickerSettings?: KakaoSharePickerSettings,
|
|
88
|
+
): Promise<void | string[] | KakaoMessageSendResult> {
|
|
89
|
+
const response = await Native.shareOrSendMeOrSendFriendOrWhatever(
|
|
55
90
|
sendType,
|
|
56
91
|
templateType,
|
|
57
92
|
templateId,
|
|
@@ -60,12 +95,26 @@ function shareOrSendMeOrSendFriendOrWhatever(
|
|
|
60
95
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
61
96
|
templateArgs,
|
|
62
97
|
serverCallbackArgs,
|
|
98
|
+
validateSharePickerSettings(pickerSettings),
|
|
63
99
|
);
|
|
100
|
+
|
|
101
|
+
if (sendType === SendTypes.sendFriend) {
|
|
102
|
+
if (response == null) {
|
|
103
|
+
throw new Error('Native friend-message result is missing.');
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return includeFailureInfo ? response : response.successfulReceiverUuids;
|
|
107
|
+
}
|
|
64
108
|
}
|
|
65
109
|
|
|
66
|
-
|
|
110
|
+
export type KakaoFriendMessageResult<T extends boolean = false> = T extends true
|
|
111
|
+
? KakaoMessageSendResult
|
|
112
|
+
: string[];
|
|
113
|
+
|
|
114
|
+
const SendTypes = { share: 'share', sendMe: 'send-me', sendFriend: 'send-friend' } as const;
|
|
67
115
|
const TemplateTypes = {
|
|
68
116
|
custom: 'custom',
|
|
117
|
+
scrap: 'scrap',
|
|
69
118
|
feed: 'feed',
|
|
70
119
|
list: 'list',
|
|
71
120
|
location: 'location',
|
|
@@ -73,17 +122,163 @@ const TemplateTypes = {
|
|
|
73
122
|
text: 'text',
|
|
74
123
|
calendar: 'calendar',
|
|
75
124
|
};
|
|
125
|
+
const DefaultScrapTemplateId = -1;
|
|
126
|
+
|
|
127
|
+
export async function getShareTemplateDiagnostics(
|
|
128
|
+
params: KakaoShareTemplateDiagnosticsParams,
|
|
129
|
+
): Promise<KakaoShareTemplateDiagnostics> {
|
|
130
|
+
const template =
|
|
131
|
+
'template' in params
|
|
132
|
+
? params.template
|
|
133
|
+
: 'requestUrl' in params
|
|
134
|
+
? { requestUrl: params.requestUrl }
|
|
135
|
+
: {};
|
|
136
|
+
|
|
137
|
+
return Native.getTemplateDiagnostics(
|
|
138
|
+
params.templateType,
|
|
139
|
+
'templateId' in params ? params.templateId ?? DefaultScrapTemplateId : DefaultScrapTemplateId,
|
|
140
|
+
swapMobileExecutionParamsFieldValueIntoStringInIOS(template),
|
|
141
|
+
'templateArgs' in params ? params.templateArgs ?? {} : {},
|
|
142
|
+
params.serverCallbackArgs ?? {},
|
|
143
|
+
validateSharePickerSettings(params.pickerSettings),
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export async function makeDefaultTemplateUrl({
|
|
148
|
+
templateType,
|
|
149
|
+
template,
|
|
150
|
+
serverCallbackArgs = {},
|
|
151
|
+
}: KakaoDefaultTemplateParams): Promise<string> {
|
|
152
|
+
return Native.makeTemplateUrl(
|
|
153
|
+
templateType,
|
|
154
|
+
DefaultScrapTemplateId,
|
|
155
|
+
swapMobileExecutionParamsFieldValueIntoStringInIOS(template),
|
|
156
|
+
{},
|
|
157
|
+
serverCallbackArgs,
|
|
158
|
+
);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export async function makeCustomTemplateUrl({
|
|
162
|
+
templateId,
|
|
163
|
+
templateArgs = {},
|
|
164
|
+
serverCallbackArgs = {},
|
|
165
|
+
}: {
|
|
166
|
+
templateId: number;
|
|
167
|
+
templateArgs?: Record<string, string>;
|
|
168
|
+
serverCallbackArgs?: Record<string, string>;
|
|
169
|
+
}): Promise<string> {
|
|
170
|
+
return Native.makeTemplateUrl(
|
|
171
|
+
TemplateTypes.custom,
|
|
172
|
+
templateId,
|
|
173
|
+
{},
|
|
174
|
+
templateArgs,
|
|
175
|
+
serverCallbackArgs,
|
|
176
|
+
);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export async function makeScrapTemplateUrl({
|
|
180
|
+
requestUrl,
|
|
181
|
+
templateId = DefaultScrapTemplateId,
|
|
182
|
+
templateArgs = {},
|
|
183
|
+
serverCallbackArgs = {},
|
|
184
|
+
}: {
|
|
185
|
+
requestUrl: string;
|
|
186
|
+
templateId?: number;
|
|
187
|
+
templateArgs?: Record<string, string>;
|
|
188
|
+
serverCallbackArgs?: Record<string, string>;
|
|
189
|
+
}): Promise<string> {
|
|
190
|
+
return Native.makeTemplateUrl(
|
|
191
|
+
TemplateTypes.scrap,
|
|
192
|
+
templateId,
|
|
193
|
+
{ requestUrl },
|
|
194
|
+
templateArgs,
|
|
195
|
+
serverCallbackArgs,
|
|
196
|
+
);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
export type KakaoScrapMessageParams = {
|
|
200
|
+
requestUrl: string;
|
|
201
|
+
templateId?: number;
|
|
202
|
+
templateArgs?: Record<string, string>;
|
|
203
|
+
};
|
|
204
|
+
|
|
205
|
+
export async function sendScrapTemplateToMe({
|
|
206
|
+
requestUrl,
|
|
207
|
+
templateId = DefaultScrapTemplateId,
|
|
208
|
+
templateArgs = {},
|
|
209
|
+
}: KakaoScrapMessageParams) {
|
|
210
|
+
await Native.shareOrSendMeOrSendFriendOrWhatever(
|
|
211
|
+
SendTypes.sendMe,
|
|
212
|
+
TemplateTypes.scrap,
|
|
213
|
+
templateId,
|
|
214
|
+
{ requestUrl },
|
|
215
|
+
[],
|
|
216
|
+
false,
|
|
217
|
+
templateArgs,
|
|
218
|
+
{},
|
|
219
|
+
undefined,
|
|
220
|
+
);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
export function sendScrapTemplateToFriends<T extends boolean = false>({
|
|
224
|
+
requestUrl,
|
|
225
|
+
templateId = DefaultScrapTemplateId,
|
|
226
|
+
templateArgs = {},
|
|
227
|
+
receiverUuids,
|
|
228
|
+
includeFailureInfo,
|
|
229
|
+
}: KakaoScrapMessageParams & { receiverUuids: string[]; includeFailureInfo?: T }): Promise<
|
|
230
|
+
KakaoFriendMessageResult<T>
|
|
231
|
+
> {
|
|
232
|
+
return shareOrSendMeOrSendFriendOrWhatever(
|
|
233
|
+
SendTypes.sendFriend,
|
|
234
|
+
TemplateTypes.scrap,
|
|
235
|
+
templateId,
|
|
236
|
+
{ requestUrl },
|
|
237
|
+
receiverUuids,
|
|
238
|
+
false,
|
|
239
|
+
templateArgs,
|
|
240
|
+
{},
|
|
241
|
+
includeFailureInfo,
|
|
242
|
+
);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
export async function shareScrapTemplate({
|
|
246
|
+
requestUrl,
|
|
247
|
+
templateId,
|
|
248
|
+
templateArgs = {},
|
|
249
|
+
serverCallbackArgs = {},
|
|
250
|
+
pickerSettings,
|
|
251
|
+
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
252
|
+
}: {
|
|
253
|
+
requestUrl: string;
|
|
254
|
+
templateId?: number;
|
|
255
|
+
templateArgs?: Record<string, string>;
|
|
256
|
+
serverCallbackArgs?: Record<string, string>;
|
|
257
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
258
|
+
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
259
|
+
}): Promise<void> {
|
|
260
|
+
await Native.shareScrapTemplate(
|
|
261
|
+
requestUrl,
|
|
262
|
+
useWebBrowserIfKakaoTalkNotAvailable,
|
|
263
|
+
templateId,
|
|
264
|
+
templateArgs,
|
|
265
|
+
serverCallbackArgs,
|
|
266
|
+
validateSharePickerSettings(pickerSettings),
|
|
267
|
+
);
|
|
268
|
+
}
|
|
76
269
|
|
|
77
270
|
export function shareCustomTemplate({
|
|
78
271
|
templateId,
|
|
79
272
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
80
273
|
serverCallbackArgs = {},
|
|
274
|
+
pickerSettings,
|
|
81
275
|
templateArgs = {},
|
|
82
276
|
}: {
|
|
83
277
|
templateId: number;
|
|
84
278
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
85
279
|
templateArgs?: Record<string, string>;
|
|
86
280
|
serverCallbackArgs?: Record<string, string>;
|
|
281
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
87
282
|
}) {
|
|
88
283
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
89
284
|
SendTypes.share,
|
|
@@ -94,6 +289,8 @@ export function shareCustomTemplate({
|
|
|
94
289
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
95
290
|
templateArgs,
|
|
96
291
|
serverCallbackArgs,
|
|
292
|
+
undefined,
|
|
293
|
+
pickerSettings,
|
|
97
294
|
);
|
|
98
295
|
}
|
|
99
296
|
|
|
@@ -116,15 +313,17 @@ export function sendCustomTemplateToMe({
|
|
|
116
313
|
);
|
|
117
314
|
}
|
|
118
315
|
|
|
119
|
-
export function sendCustomTemplateToFriends({
|
|
316
|
+
export function sendCustomTemplateToFriends<T extends boolean = false>({
|
|
120
317
|
templateId,
|
|
121
318
|
templateArgs = {},
|
|
122
319
|
receiverUuids,
|
|
320
|
+
includeFailureInfo,
|
|
123
321
|
}: {
|
|
124
322
|
templateId: number;
|
|
125
323
|
templateArgs?: Record<string, string>;
|
|
126
324
|
receiverUuids: string[];
|
|
127
|
-
|
|
325
|
+
includeFailureInfo?: T;
|
|
326
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
128
327
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
129
328
|
SendTypes.sendFriend,
|
|
130
329
|
TemplateTypes.custom,
|
|
@@ -134,6 +333,7 @@ export function sendCustomTemplateToFriends({
|
|
|
134
333
|
false,
|
|
135
334
|
templateArgs,
|
|
136
335
|
{},
|
|
336
|
+
includeFailureInfo,
|
|
137
337
|
);
|
|
138
338
|
}
|
|
139
339
|
|
|
@@ -141,10 +341,12 @@ export function shareFeedTemplate({
|
|
|
141
341
|
template,
|
|
142
342
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
143
343
|
serverCallbackArgs = {},
|
|
344
|
+
pickerSettings,
|
|
144
345
|
}: {
|
|
145
346
|
template: KakaoFeedTemplate;
|
|
146
347
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
147
348
|
serverCallbackArgs?: Record<string, string>;
|
|
349
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
148
350
|
}) {
|
|
149
351
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
150
352
|
SendTypes.share,
|
|
@@ -155,6 +357,8 @@ export function shareFeedTemplate({
|
|
|
155
357
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
156
358
|
{},
|
|
157
359
|
serverCallbackArgs,
|
|
360
|
+
undefined,
|
|
361
|
+
pickerSettings,
|
|
158
362
|
);
|
|
159
363
|
}
|
|
160
364
|
|
|
@@ -171,13 +375,15 @@ export function sendFeedTemplateToMe({ template }: { template: KakaoFeedTemplate
|
|
|
171
375
|
);
|
|
172
376
|
}
|
|
173
377
|
|
|
174
|
-
export function sendFeedTemplateToFriends({
|
|
378
|
+
export function sendFeedTemplateToFriends<T extends boolean = false>({
|
|
175
379
|
template,
|
|
176
380
|
receiverUuids,
|
|
381
|
+
includeFailureInfo,
|
|
177
382
|
}: {
|
|
178
383
|
template: KakaoFeedTemplate;
|
|
179
384
|
receiverUuids: string[];
|
|
180
|
-
|
|
385
|
+
includeFailureInfo?: T;
|
|
386
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
181
387
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
182
388
|
SendTypes.sendFriend,
|
|
183
389
|
TemplateTypes.feed,
|
|
@@ -187,6 +393,7 @@ export function sendFeedTemplateToFriends({
|
|
|
187
393
|
false,
|
|
188
394
|
{},
|
|
189
395
|
{},
|
|
396
|
+
includeFailureInfo,
|
|
190
397
|
);
|
|
191
398
|
}
|
|
192
399
|
|
|
@@ -194,10 +401,12 @@ export function shareListTemplate({
|
|
|
194
401
|
template,
|
|
195
402
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
196
403
|
serverCallbackArgs = {},
|
|
404
|
+
pickerSettings,
|
|
197
405
|
}: {
|
|
198
406
|
template: KakaoListTemplate;
|
|
199
407
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
200
408
|
serverCallbackArgs?: Record<string, string>;
|
|
409
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
201
410
|
}) {
|
|
202
411
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
203
412
|
SendTypes.share,
|
|
@@ -208,6 +417,8 @@ export function shareListTemplate({
|
|
|
208
417
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
209
418
|
{},
|
|
210
419
|
serverCallbackArgs,
|
|
420
|
+
undefined,
|
|
421
|
+
pickerSettings,
|
|
211
422
|
);
|
|
212
423
|
}
|
|
213
424
|
|
|
@@ -224,13 +435,15 @@ export function sendListTemplateToMe({ template }: { template: KakaoListTemplate
|
|
|
224
435
|
);
|
|
225
436
|
}
|
|
226
437
|
|
|
227
|
-
export function sendListTemplateToFriends({
|
|
438
|
+
export function sendListTemplateToFriends<T extends boolean = false>({
|
|
228
439
|
template,
|
|
229
440
|
receiverUuids,
|
|
441
|
+
includeFailureInfo,
|
|
230
442
|
}: {
|
|
231
443
|
template: KakaoListTemplate;
|
|
232
444
|
receiverUuids: string[];
|
|
233
|
-
|
|
445
|
+
includeFailureInfo?: T;
|
|
446
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
234
447
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
235
448
|
SendTypes.sendFriend,
|
|
236
449
|
TemplateTypes.list,
|
|
@@ -240,6 +453,7 @@ export function sendListTemplateToFriends({
|
|
|
240
453
|
false,
|
|
241
454
|
{},
|
|
242
455
|
{},
|
|
456
|
+
includeFailureInfo,
|
|
243
457
|
);
|
|
244
458
|
}
|
|
245
459
|
|
|
@@ -247,10 +461,12 @@ export function shareLocationTemplate({
|
|
|
247
461
|
template,
|
|
248
462
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
249
463
|
serverCallbackArgs = {},
|
|
464
|
+
pickerSettings,
|
|
250
465
|
}: {
|
|
251
466
|
template: KakaoLocationTemplate;
|
|
252
467
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
253
468
|
serverCallbackArgs?: Record<string, string>;
|
|
469
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
254
470
|
}) {
|
|
255
471
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
256
472
|
SendTypes.share,
|
|
@@ -261,6 +477,8 @@ export function shareLocationTemplate({
|
|
|
261
477
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
262
478
|
{},
|
|
263
479
|
serverCallbackArgs,
|
|
480
|
+
undefined,
|
|
481
|
+
pickerSettings,
|
|
264
482
|
);
|
|
265
483
|
}
|
|
266
484
|
|
|
@@ -277,13 +495,15 @@ export function sendLocationTemplateToMe({ template }: { template: KakaoLocation
|
|
|
277
495
|
);
|
|
278
496
|
}
|
|
279
497
|
|
|
280
|
-
export function sendLocationTemplateToFriends({
|
|
498
|
+
export function sendLocationTemplateToFriends<T extends boolean = false>({
|
|
281
499
|
template,
|
|
282
500
|
receiverUuids,
|
|
501
|
+
includeFailureInfo,
|
|
283
502
|
}: {
|
|
284
503
|
template: KakaoLocationTemplate;
|
|
285
504
|
receiverUuids: string[];
|
|
286
|
-
|
|
505
|
+
includeFailureInfo?: T;
|
|
506
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
287
507
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
288
508
|
SendTypes.sendFriend,
|
|
289
509
|
TemplateTypes.location,
|
|
@@ -293,6 +513,7 @@ export function sendLocationTemplateToFriends({
|
|
|
293
513
|
false,
|
|
294
514
|
{},
|
|
295
515
|
{},
|
|
516
|
+
includeFailureInfo,
|
|
296
517
|
);
|
|
297
518
|
}
|
|
298
519
|
|
|
@@ -300,10 +521,12 @@ export function shareCommerceTemplate({
|
|
|
300
521
|
template,
|
|
301
522
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
302
523
|
serverCallbackArgs = {},
|
|
524
|
+
pickerSettings,
|
|
303
525
|
}: {
|
|
304
526
|
template: KakaoCommerceTemplate;
|
|
305
527
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
306
528
|
serverCallbackArgs?: Record<string, string>;
|
|
529
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
307
530
|
}) {
|
|
308
531
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
309
532
|
SendTypes.share,
|
|
@@ -314,6 +537,8 @@ export function shareCommerceTemplate({
|
|
|
314
537
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
315
538
|
{},
|
|
316
539
|
serverCallbackArgs,
|
|
540
|
+
undefined,
|
|
541
|
+
pickerSettings,
|
|
317
542
|
);
|
|
318
543
|
}
|
|
319
544
|
|
|
@@ -330,13 +555,15 @@ export function sendCommerceTemplateToMe({ template }: { template: KakaoCommerce
|
|
|
330
555
|
);
|
|
331
556
|
}
|
|
332
557
|
|
|
333
|
-
export function sendCommerceTemplateToFriends({
|
|
558
|
+
export function sendCommerceTemplateToFriends<T extends boolean = false>({
|
|
334
559
|
template,
|
|
335
560
|
receiverUuids,
|
|
561
|
+
includeFailureInfo,
|
|
336
562
|
}: {
|
|
337
563
|
template: KakaoCommerceTemplate;
|
|
338
564
|
receiverUuids: string[];
|
|
339
|
-
|
|
565
|
+
includeFailureInfo?: T;
|
|
566
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
340
567
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
341
568
|
SendTypes.sendFriend,
|
|
342
569
|
TemplateTypes.commerce,
|
|
@@ -346,6 +573,7 @@ export function sendCommerceTemplateToFriends({
|
|
|
346
573
|
false,
|
|
347
574
|
{},
|
|
348
575
|
{},
|
|
576
|
+
includeFailureInfo,
|
|
349
577
|
);
|
|
350
578
|
}
|
|
351
579
|
|
|
@@ -353,10 +581,12 @@ export function shareTextTemplate({
|
|
|
353
581
|
template,
|
|
354
582
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
355
583
|
serverCallbackArgs = {},
|
|
584
|
+
pickerSettings,
|
|
356
585
|
}: {
|
|
357
586
|
template: KakaoTextTemplate;
|
|
358
587
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
359
588
|
serverCallbackArgs?: Record<string, string>;
|
|
589
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
360
590
|
}) {
|
|
361
591
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
362
592
|
SendTypes.share,
|
|
@@ -367,6 +597,8 @@ export function shareTextTemplate({
|
|
|
367
597
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
368
598
|
{},
|
|
369
599
|
serverCallbackArgs,
|
|
600
|
+
undefined,
|
|
601
|
+
pickerSettings,
|
|
370
602
|
);
|
|
371
603
|
}
|
|
372
604
|
|
|
@@ -383,13 +615,15 @@ export function sendTextTemplateToMe({ template }: { template: KakaoTextTemplate
|
|
|
383
615
|
);
|
|
384
616
|
}
|
|
385
617
|
|
|
386
|
-
export function sendTextTemplateToFriends({
|
|
618
|
+
export function sendTextTemplateToFriends<T extends boolean = false>({
|
|
387
619
|
template,
|
|
388
620
|
receiverUuids,
|
|
621
|
+
includeFailureInfo,
|
|
389
622
|
}: {
|
|
390
623
|
template: KakaoTextTemplate;
|
|
391
624
|
receiverUuids: string[];
|
|
392
|
-
|
|
625
|
+
includeFailureInfo?: T;
|
|
626
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
393
627
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
394
628
|
SendTypes.sendFriend,
|
|
395
629
|
TemplateTypes.text,
|
|
@@ -399,6 +633,7 @@ export function sendTextTemplateToFriends({
|
|
|
399
633
|
false,
|
|
400
634
|
{},
|
|
401
635
|
{},
|
|
636
|
+
includeFailureInfo,
|
|
402
637
|
);
|
|
403
638
|
}
|
|
404
639
|
|
|
@@ -406,10 +641,12 @@ export function shareCalendarTemplate({
|
|
|
406
641
|
template,
|
|
407
642
|
useWebBrowserIfKakaoTalkNotAvailable = true,
|
|
408
643
|
serverCallbackArgs = {},
|
|
644
|
+
pickerSettings,
|
|
409
645
|
}: {
|
|
410
646
|
template: KakaoCalendarTemplate;
|
|
411
647
|
useWebBrowserIfKakaoTalkNotAvailable?: boolean;
|
|
412
648
|
serverCallbackArgs?: Record<string, string>;
|
|
649
|
+
pickerSettings?: KakaoSharePickerSettings;
|
|
413
650
|
}) {
|
|
414
651
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
415
652
|
SendTypes.share,
|
|
@@ -420,6 +657,8 @@ export function shareCalendarTemplate({
|
|
|
420
657
|
useWebBrowserIfKakaoTalkNotAvailable,
|
|
421
658
|
{},
|
|
422
659
|
serverCallbackArgs,
|
|
660
|
+
undefined,
|
|
661
|
+
pickerSettings,
|
|
423
662
|
);
|
|
424
663
|
}
|
|
425
664
|
|
|
@@ -436,13 +675,15 @@ export function sendCalendarTemplateToMe({ template }: { template: KakaoCalendar
|
|
|
436
675
|
);
|
|
437
676
|
}
|
|
438
677
|
|
|
439
|
-
export function sendCalendarTemplateToFriends({
|
|
678
|
+
export function sendCalendarTemplateToFriends<T extends boolean = false>({
|
|
440
679
|
template,
|
|
441
680
|
receiverUuids,
|
|
681
|
+
includeFailureInfo,
|
|
442
682
|
}: {
|
|
443
683
|
template: KakaoCalendarTemplate;
|
|
444
684
|
receiverUuids: string[];
|
|
445
|
-
|
|
685
|
+
includeFailureInfo?: T;
|
|
686
|
+
}): Promise<KakaoFriendMessageResult<T>> {
|
|
446
687
|
return shareOrSendMeOrSendFriendOrWhatever(
|
|
447
688
|
SendTypes.sendFriend,
|
|
448
689
|
TemplateTypes.calendar,
|
|
@@ -452,9 +693,20 @@ export function sendCalendarTemplateToFriends({
|
|
|
452
693
|
false,
|
|
453
694
|
{},
|
|
454
695
|
{},
|
|
696
|
+
includeFailureInfo,
|
|
455
697
|
);
|
|
456
698
|
}
|
|
457
699
|
|
|
700
|
+
export function uploadImage({
|
|
701
|
+
imageUri,
|
|
702
|
+
secureResource = true,
|
|
703
|
+
}: {
|
|
704
|
+
imageUri: string;
|
|
705
|
+
secureResource?: boolean;
|
|
706
|
+
}) {
|
|
707
|
+
return Native.uploadImage(imageUri, secureResource);
|
|
708
|
+
}
|
|
709
|
+
|
|
458
710
|
export function scrapImage({
|
|
459
711
|
imageUrl,
|
|
460
712
|
secureResource = true,
|
|
@@ -466,6 +718,15 @@ export function scrapImage({
|
|
|
466
718
|
}
|
|
467
719
|
|
|
468
720
|
const KakaoShare = {
|
|
721
|
+
isKakaoTalkSharingAvailable,
|
|
722
|
+
getShareTemplateDiagnostics,
|
|
723
|
+
makeDefaultTemplateUrl,
|
|
724
|
+
makeCustomTemplateUrl,
|
|
725
|
+
makeScrapTemplateUrl,
|
|
726
|
+
uploadImage,
|
|
727
|
+
shareScrapTemplate,
|
|
728
|
+
sendScrapTemplateToMe,
|
|
729
|
+
sendScrapTemplateToFriends,
|
|
469
730
|
scrapImage,
|
|
470
731
|
shareCustomTemplate,
|
|
471
732
|
sendCustomTemplateToMe,
|