1
1
import { NativeModules , Platform } from 'react-native' ;
2
+ import type { Double , UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes' ;
2
3
3
4
import type {
4
5
KakaoCalendarTemplate ,
@@ -16,6 +17,7 @@ import type {
16
17
KakaoTextTemplate ,
17
18
Spec ,
18
19
} from './spec/NativeKakaoShare' ;
20
+ import { swapMobileExecutionParamsFieldValueIntoStringInIOS } from './util/swapMobileExecutionParamsFieldValueIntoStringInIOS' ;
19
21
20
22
export type {
21
23
KakaoTemplateSocial ,
@@ -55,6 +57,33 @@ const Native: Spec = Module
55
57
} ,
56
58
) ;
57
59
60
+ function shareOrSendMeOrSendFriendOrWhatever (
61
+ /* share, send-me, send-friend */
62
+ sendType : string ,
63
+ /* custom, feed, list, location, commerce, text, calendar */
64
+ templateType : string ,
65
+ /* only for custom */
66
+ templateId : Double ,
67
+ /* only for default templates */
68
+ templateJson : UnsafeObject ,
69
+ /* only for pass friend uuid directly */
70
+ receiverUuids : ReadonlyArray < string > ,
71
+ useWebBrowserIfKakaoTalkNotAvailable : boolean ,
72
+ templateArgs : Readonly < { [ key : string ] : string } > ,
73
+ serverCallbackArgs : Readonly < { [ key : string ] : string } > ,
74
+ ) : Promise < any > {
75
+ return Native . shareOrSendMeOrSendFriendOrWhatever (
76
+ sendType ,
77
+ templateType ,
78
+ templateId ,
79
+ swapMobileExecutionParamsFieldValueIntoStringInIOS ( templateJson ) ,
80
+ receiverUuids ,
81
+ useWebBrowserIfKakaoTalkNotAvailable ,
82
+ templateArgs ,
83
+ serverCallbackArgs ,
84
+ ) ;
85
+ }
86
+
58
87
const SendTypes = { share : 'share' , sendMe : 'send-me' , sendFriend : 'send-friend' } ;
59
88
const TemplateTypes = {
60
89
custom : 'custom' ,
@@ -77,7 +106,7 @@ export function shareCustomTemplate({
77
106
templateArgs ?: Record < string , string > ;
78
107
serverCallbackArgs ?: Record < string , string > ;
79
108
} ) {
80
- return Native . shareOrSendMeOrSendFriendOrWhatever (
109
+ return shareOrSendMeOrSendFriendOrWhatever (
81
110
SendTypes . share ,
82
111
TemplateTypes . custom ,
83
112
templateId ,
@@ -96,7 +125,7 @@ export function sendCustomTemplateToMe({
96
125
templateId : number ;
97
126
templateArgs ?: Record < string , string > ;
98
127
} ) {
99
- return Native . shareOrSendMeOrSendFriendOrWhatever (
128
+ return shareOrSendMeOrSendFriendOrWhatever (
100
129
SendTypes . sendMe ,
101
130
TemplateTypes . custom ,
102
131
templateId ,
@@ -117,7 +146,7 @@ export function sendCustomTemplateToFriends({
117
146
templateArgs ?: Record < string , string > ;
118
147
receiverUuids : string [ ] ;
119
148
} ) : Promise < string [ ] > {
120
- return Native . shareOrSendMeOrSendFriendOrWhatever (
149
+ return shareOrSendMeOrSendFriendOrWhatever (
121
150
SendTypes . sendFriend ,
122
151
TemplateTypes . custom ,
123
152
templateId ,
@@ -138,7 +167,7 @@ export function shareFeedTemplate({
138
167
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
139
168
serverCallbackArgs ?: Record < string , string > ;
140
169
} ) {
141
- return Native . shareOrSendMeOrSendFriendOrWhatever (
170
+ return shareOrSendMeOrSendFriendOrWhatever (
142
171
SendTypes . share ,
143
172
TemplateTypes . feed ,
144
173
- 1 ,
@@ -151,7 +180,7 @@ export function shareFeedTemplate({
151
180
}
152
181
153
182
export function sendFeedTemplateToMe ( { template } : { template : KakaoFeedTemplate } ) {
154
- return Native . shareOrSendMeOrSendFriendOrWhatever (
183
+ return shareOrSendMeOrSendFriendOrWhatever (
155
184
SendTypes . sendMe ,
156
185
TemplateTypes . feed ,
157
186
- 1 ,
@@ -170,7 +199,7 @@ export function sendFeedTemplateToFriends({
170
199
template : KakaoFeedTemplate ;
171
200
receiverUuids : string [ ] ;
172
201
} ) : Promise < string [ ] > {
173
- return Native . shareOrSendMeOrSendFriendOrWhatever (
202
+ return shareOrSendMeOrSendFriendOrWhatever (
174
203
SendTypes . sendFriend ,
175
204
TemplateTypes . feed ,
176
205
- 1 ,
@@ -191,7 +220,7 @@ export function shareListTemplate({
191
220
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
192
221
serverCallbackArgs ?: Record < string , string > ;
193
222
} ) {
194
- return Native . shareOrSendMeOrSendFriendOrWhatever (
223
+ return shareOrSendMeOrSendFriendOrWhatever (
195
224
SendTypes . share ,
196
225
TemplateTypes . list ,
197
226
- 1 ,
@@ -204,7 +233,7 @@ export function shareListTemplate({
204
233
}
205
234
206
235
export function sendListTemplateToMe ( { template } : { template : KakaoListTemplate } ) {
207
- return Native . shareOrSendMeOrSendFriendOrWhatever (
236
+ return shareOrSendMeOrSendFriendOrWhatever (
208
237
SendTypes . sendMe ,
209
238
TemplateTypes . list ,
210
239
- 1 ,
@@ -223,7 +252,7 @@ export function sendListTemplateToFriends({
223
252
template : KakaoListTemplate ;
224
253
receiverUuids : string [ ] ;
225
254
} ) : Promise < string [ ] > {
226
- return Native . shareOrSendMeOrSendFriendOrWhatever (
255
+ return shareOrSendMeOrSendFriendOrWhatever (
227
256
SendTypes . sendFriend ,
228
257
TemplateTypes . list ,
229
258
- 1 ,
@@ -244,7 +273,7 @@ export function shareLocationTemplate({
244
273
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
245
274
serverCallbackArgs ?: Record < string , string > ;
246
275
} ) {
247
- return Native . shareOrSendMeOrSendFriendOrWhatever (
276
+ return shareOrSendMeOrSendFriendOrWhatever (
248
277
SendTypes . share ,
249
278
TemplateTypes . location ,
250
279
- 1 ,
@@ -257,7 +286,7 @@ export function shareLocationTemplate({
257
286
}
258
287
259
288
export function sendLocationTemplateToMe ( { template } : { template : KakaoLocationTemplate } ) {
260
- return Native . shareOrSendMeOrSendFriendOrWhatever (
289
+ return shareOrSendMeOrSendFriendOrWhatever (
261
290
SendTypes . sendMe ,
262
291
TemplateTypes . location ,
263
292
- 1 ,
@@ -276,7 +305,7 @@ export function sendLocationTemplateToFriends({
276
305
template : KakaoLocationTemplate ;
277
306
receiverUuids : string [ ] ;
278
307
} ) : Promise < string [ ] > {
279
- return Native . shareOrSendMeOrSendFriendOrWhatever (
308
+ return shareOrSendMeOrSendFriendOrWhatever (
280
309
SendTypes . sendFriend ,
281
310
TemplateTypes . location ,
282
311
- 1 ,
@@ -297,7 +326,7 @@ export function shareCommerceTemplate({
297
326
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
298
327
serverCallbackArgs ?: Record < string , string > ;
299
328
} ) {
300
- return Native . shareOrSendMeOrSendFriendOrWhatever (
329
+ return shareOrSendMeOrSendFriendOrWhatever (
301
330
SendTypes . share ,
302
331
TemplateTypes . commerce ,
303
332
- 1 ,
@@ -310,7 +339,7 @@ export function shareCommerceTemplate({
310
339
}
311
340
312
341
export function sendCommerceTemplateToMe ( { template } : { template : KakaoCommerceTemplate } ) {
313
- return Native . shareOrSendMeOrSendFriendOrWhatever (
342
+ return shareOrSendMeOrSendFriendOrWhatever (
314
343
SendTypes . sendMe ,
315
344
TemplateTypes . commerce ,
316
345
- 1 ,
@@ -329,7 +358,7 @@ export function sendCommerceTemplateToFriends({
329
358
template : KakaoCommerceTemplate ;
330
359
receiverUuids : string [ ] ;
331
360
} ) : Promise < string [ ] > {
332
- return Native . shareOrSendMeOrSendFriendOrWhatever (
361
+ return shareOrSendMeOrSendFriendOrWhatever (
333
362
SendTypes . sendFriend ,
334
363
TemplateTypes . commerce ,
335
364
- 1 ,
@@ -350,7 +379,7 @@ export function shareTextTemplate({
350
379
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
351
380
serverCallbackArgs ?: Record < string , string > ;
352
381
} ) {
353
- return Native . shareOrSendMeOrSendFriendOrWhatever (
382
+ return shareOrSendMeOrSendFriendOrWhatever (
354
383
SendTypes . share ,
355
384
TemplateTypes . text ,
356
385
- 1 ,
@@ -363,7 +392,7 @@ export function shareTextTemplate({
363
392
}
364
393
365
394
export function sendTextTemplateToMe ( { template } : { template : KakaoTextTemplate } ) {
366
- return Native . shareOrSendMeOrSendFriendOrWhatever (
395
+ return shareOrSendMeOrSendFriendOrWhatever (
367
396
SendTypes . sendMe ,
368
397
TemplateTypes . text ,
369
398
- 1 ,
@@ -382,7 +411,7 @@ export function sendTextTemplateToFriends({
382
411
template : KakaoTextTemplate ;
383
412
receiverUuids : string [ ] ;
384
413
} ) : Promise < string [ ] > {
385
- return Native . shareOrSendMeOrSendFriendOrWhatever (
414
+ return shareOrSendMeOrSendFriendOrWhatever (
386
415
SendTypes . sendFriend ,
387
416
TemplateTypes . text ,
388
417
- 1 ,
@@ -403,7 +432,7 @@ export function shareCalendarTemplate({
403
432
useWebBrowserIfKakaoTalkNotAvailable ?: boolean ;
404
433
serverCallbackArgs ?: Record < string , string > ;
405
434
} ) {
406
- return Native . shareOrSendMeOrSendFriendOrWhatever (
435
+ return shareOrSendMeOrSendFriendOrWhatever (
407
436
SendTypes . share ,
408
437
TemplateTypes . calendar ,
409
438
- 1 ,
@@ -416,7 +445,7 @@ export function shareCalendarTemplate({
416
445
}
417
446
418
447
export function sendCalendarTemplateToMe ( { template } : { template : KakaoCalendarTemplate } ) {
419
- return Native . shareOrSendMeOrSendFriendOrWhatever (
448
+ return shareOrSendMeOrSendFriendOrWhatever (
420
449
SendTypes . sendMe ,
421
450
TemplateTypes . calendar ,
422
451
- 1 ,
@@ -435,7 +464,7 @@ export function sendCalendarTemplateToFriends({
435
464
template : KakaoCalendarTemplate ;
436
465
receiverUuids : string [ ] ;
437
466
} ) : Promise < string [ ] > {
438
- return Native . shareOrSendMeOrSendFriendOrWhatever (
467
+ return shareOrSendMeOrSendFriendOrWhatever (
439
468
SendTypes . sendFriend ,
440
469
TemplateTypes . calendar ,
441
470
- 1 ,
0 commit comments