@react-native-kakao/share 3.0.0 → 3.1.0-next.1

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.
Files changed (32) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/RNCKakaoShare.podspec +0 -1
  3. package/android/build.gradle +1 -2
  4. package/android/src/main/java/net/mjstudio/rnkakao/share/RNCKakaoShareModule.kt +359 -11
  5. package/android/src/main/java/net/mjstudio/rnkakao/share/RNCKakaoShareTemplates.kt +5 -2
  6. package/ios/RNCKakaoShare.mm +69 -5
  7. package/ios/RNCKakaoShareManager.swift +349 -36
  8. package/lib/commonjs/index.js +145 -29
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/index.web.js +267 -48
  11. package/lib/commonjs/index.web.js.map +1 -1
  12. package/lib/commonjs/spec/NativeKakaoShare.ts +89 -3
  13. package/lib/commonjs/validateSharePickerSettings.js +33 -0
  14. package/lib/commonjs/validateSharePickerSettings.js.map +1 -0
  15. package/lib/module/index.js +135 -29
  16. package/lib/module/index.js.map +1 -1
  17. package/lib/module/index.web.js +258 -49
  18. package/lib/module/index.web.js.map +1 -1
  19. package/lib/module/spec/NativeKakaoShare.ts +89 -3
  20. package/lib/module/validateSharePickerSettings.js +29 -0
  21. package/lib/module/validateSharePickerSettings.js.map +1 -0
  22. package/lib/typescript/src/index.d.ts +88 -23
  23. package/lib/typescript/src/index.d.ts.map +1 -1
  24. package/lib/typescript/src/spec/NativeKakaoShare.d.ts +84 -1
  25. package/lib/typescript/src/spec/NativeKakaoShare.d.ts.map +1 -1
  26. package/lib/typescript/src/validateSharePickerSettings.d.ts +6 -0
  27. package/lib/typescript/src/validateSharePickerSettings.d.ts.map +1 -0
  28. package/package.json +5 -5
  29. package/src/index.ts +271 -15
  30. package/src/index.web.ts +305 -62
  31. package/src/spec/NativeKakaoShare.ts +89 -3
  32. package/src/validateSharePickerSettings.ts +38 -0
@@ -1,86 +1,257 @@
1
1
  "use strict";
2
2
 
3
- import { filterNonNullishKeys, snakeCaseObject } from '@mj-studio/js-util';
4
- import { kRunWebAPI } from '@react-native-kakao/core';
3
+ import { filterNonNullishKeys, replaceJsonValuesRecursively, snakeCaseObject } from '@mj-studio/js-util';
4
+ import { kCreateWebError, kRunWebAPI } from '@react-native-kakao/core';
5
+ import { validateSharePickerSettings } from './validateSharePickerSettings';
5
6
  function createShareDefault({
6
7
  serverCallbackArgs,
7
8
  template,
8
- objectType
9
+ objectType,
10
+ pickerSettings
9
11
  }) {
10
- return kRunWebAPI(() => Kakao.Share.sendDefault({
12
+ return kRunWebAPI(() => Kakao.Share.sendDefault(filterNonNullishKeys({
11
13
  objectType,
12
- ...template,
13
- serverCallbackArgs
14
- }));
14
+ ...serializeExecutionParams(template),
15
+ serverCallbackArgs,
16
+ pickerSettings: validateSharePickerSettings(pickerSettings)
17
+ })));
15
18
  }
16
19
  function createSendDefaultMe({
17
20
  template,
18
21
  objectType
19
22
  }) {
20
- return kRunWebAPI(() => Kakao.API.request({
21
- url: '/v2/api/talk/memo/default/send',
22
- data: {
23
- template_object: snakeCaseObject({
24
- objectType,
25
- ...template
26
- })
27
- }
28
- }));
23
+ return kRunWebAPI(async () => {
24
+ await Kakao.API.request({
25
+ url: '/v2/api/talk/memo/default/send',
26
+ data: {
27
+ template_object: serializeMessageTemplate(objectType, template)
28
+ }
29
+ });
30
+ });
31
+ }
32
+ function getFriendMessageResult(response, includeFailureInfo) {
33
+ const successfulReceiverUuids = response.successful_receiver_uuids ?? [];
34
+ return includeFailureInfo ? {
35
+ successfulReceiverUuids,
36
+ failureInfos: (response.failure_info ?? []).map(({
37
+ receiver_uuids,
38
+ ...failure
39
+ }) => ({
40
+ ...failure,
41
+ receiverUuids: receiver_uuids
42
+ }))
43
+ } : successfulReceiverUuids;
29
44
  }
30
45
  function createSendDefaultFriends({
31
46
  objectType,
32
47
  template,
33
- receiverUuids
48
+ receiverUuids,
49
+ includeFailureInfo
34
50
  }) {
35
51
  return kRunWebAPI(() => Kakao.API.request({
36
52
  url: '/v1/api/talk/friends/message/default/send',
37
53
  data: {
38
- template_object: snakeCaseObject(filterNonNullishKeys({
39
- objectType,
40
- ...template
41
- })),
54
+ template_object: serializeMessageTemplate(objectType, template),
42
55
  receiver_uuids: receiverUuids
43
56
  }
44
- }));
57
+ }).then(response => getFriendMessageResult(response, includeFailureInfo)));
58
+ }
59
+ function serializeMessageTemplate(objectType, template) {
60
+ return snakeCaseObject({
61
+ objectType,
62
+ ...serializeExecutionParams(template)
63
+ });
64
+ }
65
+ function serializeExecutionParams(template) {
66
+ return replaceJsonValuesRecursively(template, {
67
+ stripUndefined: true,
68
+ replacer: {
69
+ androidExecutionParams: encodeExecutionParams,
70
+ iosExecutionParams: encodeExecutionParams
71
+ }
72
+ });
73
+ function encodeExecutionParams(params) {
74
+ return params == null ? undefined : Object.entries(params).map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`).join('&');
75
+ }
45
76
  }
46
77
  const KakaoShare = {
78
+ isKakaoTalkSharingAvailable: async () => false,
79
+ getShareTemplateDiagnostics: async () => {
80
+ kCreateWebError({
81
+ code: 'Package-UnsupportedPlatform',
82
+ message: 'The Kakao JavaScript SDK does not expose sharing template diagnostics.'
83
+ });
84
+ },
85
+ makeDefaultTemplateUrl: unsupportedUrlBuilder,
86
+ makeCustomTemplateUrl: unsupportedUrlBuilder,
87
+ makeScrapTemplateUrl: unsupportedUrlBuilder,
88
+ uploadImage: ({
89
+ imageUri,
90
+ secureResource = true
91
+ }) => kRunWebAPI(async () => {
92
+ const response = await fetch(imageUri);
93
+ if (!response.ok) {
94
+ throw new Error(`Failed to read image: HTTP ${response.status}`);
95
+ }
96
+ const reader = response.body?.getReader();
97
+ if (!reader) {
98
+ throw new Error('Image response has no body');
99
+ }
100
+ const chunks = [];
101
+ let length = 0;
102
+ try {
103
+ while (true) {
104
+ const {
105
+ done,
106
+ value
107
+ } = await reader.read();
108
+ if (done) {
109
+ break;
110
+ }
111
+ length += value.byteLength;
112
+ if (length > 5 * 1024 * 1024) {
113
+ await reader.cancel();
114
+ throw new Error('Image must be no larger than 5 MB');
115
+ }
116
+ chunks.push(value);
117
+ }
118
+ } finally {
119
+ reader.releaseLock();
120
+ }
121
+ const image = new Blob(chunks, {
122
+ type: response.headers.get('content-type') ?? ''
123
+ });
124
+ const {
125
+ infos
126
+ } = await Kakao.Share.uploadImage({
127
+ file: [image]
128
+ });
129
+ const {
130
+ content_type: contentType,
131
+ ...original
132
+ } = infos.original;
133
+ return {
134
+ infos: {
135
+ original: {
136
+ ...original,
137
+ url: original.url.replace(/^https?:/, secureResource ? 'https:' : 'http:'),
138
+ contentType
139
+ }
140
+ }
141
+ };
142
+ }),
143
+ shareScrapTemplate: ({
144
+ requestUrl,
145
+ templateId,
146
+ templateArgs = {},
147
+ serverCallbackArgs = {},
148
+ pickerSettings
149
+ }) => kRunWebAPI(() => Kakao.Share.sendScrap(filterNonNullishKeys({
150
+ requestUrl,
151
+ templateId,
152
+ templateArgs,
153
+ serverCallbackArgs,
154
+ pickerSettings: validateSharePickerSettings(pickerSettings)
155
+ }))),
156
+ sendScrapTemplateToMe: async ({
157
+ requestUrl,
158
+ templateId,
159
+ templateArgs
160
+ }) => {
161
+ await kRunWebAPI(() => Kakao.API.request({
162
+ url: '/v2/api/talk/memo/scrap/send',
163
+ data: filterNonNullishKeys({
164
+ request_url: requestUrl,
165
+ template_id: templateId,
166
+ template_args: templateArgs
167
+ })
168
+ }));
169
+ },
170
+ sendScrapTemplateToFriends: async ({
171
+ requestUrl,
172
+ templateId,
173
+ templateArgs,
174
+ receiverUuids,
175
+ includeFailureInfo
176
+ }) => {
177
+ const response = await kRunWebAPI(() => Kakao.API.request({
178
+ url: '/v1/api/talk/friends/message/scrap/send',
179
+ data: filterNonNullishKeys({
180
+ request_url: requestUrl,
181
+ template_id: templateId,
182
+ template_args: templateArgs,
183
+ receiver_uuids: receiverUuids
184
+ })
185
+ }));
186
+ return getFriendMessageResult(response, includeFailureInfo);
187
+ },
188
+ scrapImage: ({
189
+ imageUrl,
190
+ secureResource = true
191
+ }) => kRunWebAPI(async () => {
192
+ const {
193
+ infos
194
+ } = await Kakao.Share.scrapImage({
195
+ imageUrl
196
+ });
197
+ const {
198
+ content_type: contentType,
199
+ ...original
200
+ } = infos.original;
201
+ return {
202
+ infos: {
203
+ original: {
204
+ ...original,
205
+ url: original.url.replace(/^https?:/, secureResource ? 'https:' : 'http:'),
206
+ contentType
207
+ }
208
+ }
209
+ };
210
+ }),
47
211
  shareCustomTemplate: ({
48
212
  templateArgs,
49
213
  templateId,
50
- serverCallbackArgs
51
- }) => kRunWebAPI(() => Kakao.Share.sendCustom({
214
+ serverCallbackArgs,
215
+ pickerSettings
216
+ }) => kRunWebAPI(() => Kakao.Share.sendCustom(filterNonNullishKeys({
52
217
  templateId,
53
218
  templateArgs,
54
- serverCallbackArgs
55
- })),
219
+ serverCallbackArgs,
220
+ pickerSettings: validateSharePickerSettings(pickerSettings)
221
+ }))),
56
222
  sendCustomTemplateToMe: ({
57
223
  templateId,
58
224
  templateArgs
59
- }) => kRunWebAPI(() => Kakao.API.request({
60
- url: '/v2/api/talk/memo/send',
61
- data: {
62
- template_id: templateId,
63
- template_args: templateArgs
64
- }
65
- })),
225
+ }) => kRunWebAPI(async () => {
226
+ await Kakao.API.request({
227
+ url: '/v2/api/talk/memo/send',
228
+ data: filterNonNullishKeys({
229
+ template_id: templateId,
230
+ template_args: templateArgs
231
+ })
232
+ });
233
+ }),
66
234
  sendCustomTemplateToFriends: ({
67
235
  templateArgs,
68
236
  templateId,
69
- receiverUuids
237
+ receiverUuids,
238
+ includeFailureInfo
70
239
  }) => kRunWebAPI(() => Kakao.API.request({
71
240
  url: '/v1/api/talk/friends/message/send',
72
- data: {
241
+ data: filterNonNullishKeys({
73
242
  template_id: templateId,
74
243
  template_args: templateArgs,
75
244
  receiver_uuids: receiverUuids
76
- }
77
- })),
245
+ })
246
+ }).then(response => getFriendMessageResult(response, includeFailureInfo))),
78
247
  shareFeedTemplate: ({
79
248
  template,
80
- serverCallbackArgs
249
+ serverCallbackArgs,
250
+ pickerSettings
81
251
  }) => createShareDefault({
82
252
  template,
83
253
  serverCallbackArgs,
254
+ pickerSettings,
84
255
  objectType: 'feed'
85
256
  }),
86
257
  sendFeedTemplateToMe: ({
@@ -91,18 +262,22 @@ const KakaoShare = {
91
262
  }),
92
263
  sendFeedTemplateToFriends: ({
93
264
  template,
94
- receiverUuids
265
+ receiverUuids,
266
+ includeFailureInfo
95
267
  }) => createSendDefaultFriends({
96
268
  template,
97
269
  receiverUuids,
270
+ includeFailureInfo,
98
271
  objectType: 'feed'
99
272
  }),
100
273
  shareListTemplate: ({
101
274
  template,
102
- serverCallbackArgs
275
+ serverCallbackArgs,
276
+ pickerSettings
103
277
  }) => createShareDefault({
104
278
  template,
105
279
  serverCallbackArgs,
280
+ pickerSettings,
106
281
  objectType: 'list'
107
282
  }),
108
283
  sendListTemplateToMe: ({
@@ -113,18 +288,22 @@ const KakaoShare = {
113
288
  }),
114
289
  sendListTemplateToFriends: ({
115
290
  template,
116
- receiverUuids
291
+ receiverUuids,
292
+ includeFailureInfo
117
293
  }) => createSendDefaultFriends({
118
294
  template,
119
295
  receiverUuids,
296
+ includeFailureInfo,
120
297
  objectType: 'list'
121
298
  }),
122
299
  shareLocationTemplate: ({
123
300
  template,
124
- serverCallbackArgs
301
+ serverCallbackArgs,
302
+ pickerSettings
125
303
  }) => createShareDefault({
126
304
  template,
127
305
  serverCallbackArgs,
306
+ pickerSettings,
128
307
  objectType: 'location'
129
308
  }),
130
309
  sendLocationTemplateToMe: ({
@@ -135,18 +314,22 @@ const KakaoShare = {
135
314
  }),
136
315
  sendLocationTemplateToFriends: ({
137
316
  template,
138
- receiverUuids
317
+ receiverUuids,
318
+ includeFailureInfo
139
319
  }) => createSendDefaultFriends({
140
320
  template,
141
321
  receiverUuids,
322
+ includeFailureInfo,
142
323
  objectType: 'location'
143
324
  }),
144
325
  shareCommerceTemplate: ({
145
326
  template,
146
- serverCallbackArgs
327
+ serverCallbackArgs,
328
+ pickerSettings
147
329
  }) => createShareDefault({
148
330
  template,
149
331
  serverCallbackArgs,
332
+ pickerSettings,
150
333
  objectType: 'commerce'
151
334
  }),
152
335
  sendCommerceTemplateToMe: ({
@@ -157,18 +340,22 @@ const KakaoShare = {
157
340
  }),
158
341
  sendCommerceTemplateToFriends: ({
159
342
  template,
160
- receiverUuids
343
+ receiverUuids,
344
+ includeFailureInfo
161
345
  }) => createSendDefaultFriends({
162
346
  template,
163
347
  receiverUuids,
348
+ includeFailureInfo,
164
349
  objectType: 'commerce'
165
350
  }),
166
351
  shareTextTemplate: ({
167
352
  template,
168
- serverCallbackArgs
353
+ serverCallbackArgs,
354
+ pickerSettings
169
355
  }) => createShareDefault({
170
356
  template,
171
357
  serverCallbackArgs,
358
+ pickerSettings,
172
359
  objectType: 'text'
173
360
  }),
174
361
  sendTextTemplateToMe: ({
@@ -179,18 +366,22 @@ const KakaoShare = {
179
366
  }),
180
367
  sendTextTemplateToFriends: ({
181
368
  template,
182
- receiverUuids
369
+ receiverUuids,
370
+ includeFailureInfo
183
371
  }) => createSendDefaultFriends({
184
372
  template,
185
373
  receiverUuids,
374
+ includeFailureInfo,
186
375
  objectType: 'text'
187
376
  }),
188
377
  shareCalendarTemplate: ({
189
378
  template,
190
- serverCallbackArgs
379
+ serverCallbackArgs,
380
+ pickerSettings
191
381
  }) => createShareDefault({
192
382
  template,
193
383
  serverCallbackArgs,
384
+ pickerSettings,
194
385
  objectType: 'calendar'
195
386
  }),
196
387
  sendCalendarTemplateToMe: ({
@@ -201,14 +392,32 @@ const KakaoShare = {
201
392
  }),
202
393
  sendCalendarTemplateToFriends: ({
203
394
  template,
204
- receiverUuids
395
+ receiverUuids,
396
+ includeFailureInfo
205
397
  }) => createSendDefaultFriends({
206
398
  template,
207
399
  receiverUuids,
400
+ includeFailureInfo,
208
401
  objectType: 'calendar'
209
402
  })
210
403
  };
404
+ async function unsupportedUrlBuilder() {
405
+ kCreateWebError({
406
+ code: 'Package-UnsupportedPlatform',
407
+ message: 'The Kakao JavaScript SDK does not provide sharing URL builders.'
408
+ });
409
+ }
211
410
  export const {
411
+ isKakaoTalkSharingAvailable,
412
+ getShareTemplateDiagnostics,
413
+ makeDefaultTemplateUrl,
414
+ makeCustomTemplateUrl,
415
+ makeScrapTemplateUrl,
416
+ uploadImage,
417
+ shareScrapTemplate,
418
+ sendScrapTemplateToMe,
419
+ sendScrapTemplateToFriends,
420
+ scrapImage,
212
421
  sendCalendarTemplateToFriends,
213
422
  sendCalendarTemplateToMe,
214
423
  sendCommerceTemplateToFriends,
@@ -1 +1 @@
1
- {"version":3,"names":["filterNonNullishKeys","snakeCaseObject","kRunWebAPI","createShareDefault","serverCallbackArgs","template","objectType","Kakao","Share","sendDefault","createSendDefaultMe","API","request","url","data","template_object","createSendDefaultFriends","receiverUuids","receiver_uuids","KakaoShare","shareCustomTemplate","templateArgs","templateId","sendCustom","sendCustomTemplateToMe","template_id","template_args","sendCustomTemplateToFriends","shareFeedTemplate","sendFeedTemplateToMe","sendFeedTemplateToFriends","shareListTemplate","sendListTemplateToMe","sendListTemplateToFriends","shareLocationTemplate","sendLocationTemplateToMe","sendLocationTemplateToFriends","shareCommerceTemplate","sendCommerceTemplateToMe","sendCommerceTemplateToFriends","shareTextTemplate","sendTextTemplateToMe","sendTextTemplateToFriends","shareCalendarTemplate","sendCalendarTemplateToMe","sendCalendarTemplateToFriends"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["filterNonNullishKeys","replaceJsonValuesRecursively","snakeCaseObject","kCreateWebError","kRunWebAPI","validateSharePickerSettings","createShareDefault","serverCallbackArgs","template","objectType","pickerSettings","Kakao","Share","sendDefault","serializeExecutionParams","createSendDefaultMe","API","request","url","data","template_object","serializeMessageTemplate","getFriendMessageResult","response","includeFailureInfo","successfulReceiverUuids","successful_receiver_uuids","failureInfos","failure_info","map","receiver_uuids","failure","receiverUuids","createSendDefaultFriends","then","stripUndefined","replacer","androidExecutionParams","encodeExecutionParams","iosExecutionParams","params","undefined","Object","entries","key","value","encodeURIComponent","join","KakaoShare","isKakaoTalkSharingAvailable","getShareTemplateDiagnostics","code","message","makeDefaultTemplateUrl","unsupportedUrlBuilder","makeCustomTemplateUrl","makeScrapTemplateUrl","uploadImage","imageUri","secureResource","fetch","ok","Error","status","reader","body","getReader","chunks","length","done","read","byteLength","cancel","push","releaseLock","image","Blob","type","headers","get","infos","file","content_type","contentType","original","replace","shareScrapTemplate","requestUrl","templateId","templateArgs","sendScrap","sendScrapTemplateToMe","request_url","template_id","template_args","sendScrapTemplateToFriends","scrapImage","imageUrl","shareCustomTemplate","sendCustom","sendCustomTemplateToMe","sendCustomTemplateToFriends","shareFeedTemplate","sendFeedTemplateToMe","sendFeedTemplateToFriends","shareListTemplate","sendListTemplateToMe","sendListTemplateToFriends","shareLocationTemplate","sendLocationTemplateToMe","sendLocationTemplateToFriends","shareCommerceTemplate","sendCommerceTemplateToMe","sendCommerceTemplateToFriends","shareTextTemplate","sendTextTemplateToMe","sendTextTemplateToFriends","shareCalendarTemplate","sendCalendarTemplateToMe","sendCalendarTemplateToFriends"],"sourceRoot":"../../src","sources":["index.web.ts"],"mappings":"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","ignoreList":[]}
@@ -216,21 +216,107 @@ export interface KakaoCalendarTemplate {
216
216
  buttons?: KakaoTemplateButton[];
217
217
  }
218
218
 
219
+ export type KakaoImageUploadResult = {
220
+ infos: {
221
+ original: {
222
+ url: string;
223
+ contentType: string;
224
+ length: Double;
225
+ width: Double;
226
+ height: Double;
227
+ };
228
+ };
229
+ };
230
+
231
+ export type KakaoMessageSendResult = {
232
+ successfulReceiverUuids: string[];
233
+ failureInfos: {
234
+ code: Int32;
235
+ msg: string;
236
+ receiverUuids: string[];
237
+ }[];
238
+ };
239
+
240
+ export type KakaoSharePickerSettings = {
241
+ type?: 'default' | 'friend' | 'chat';
242
+ limit?: number;
243
+ };
244
+
245
+ export type KakaoDefaultTemplateParams = (
246
+ | { templateType: 'feed'; template: KakaoFeedTemplate }
247
+ | { templateType: 'list'; template: KakaoListTemplate }
248
+ | { templateType: 'location'; template: KakaoLocationTemplate }
249
+ | { templateType: 'commerce'; template: KakaoCommerceTemplate }
250
+ | { templateType: 'text'; template: KakaoTextTemplate }
251
+ | { templateType: 'calendar'; template: KakaoCalendarTemplate }
252
+ ) & { serverCallbackArgs?: Readonly<Record<string, string>> };
253
+
254
+ export type KakaoShareTemplateDiagnosticsParams = (
255
+ | KakaoDefaultTemplateParams
256
+ | {
257
+ templateType: 'custom';
258
+ templateId: Double;
259
+ templateArgs?: Readonly<Record<string, string>>;
260
+ }
261
+ | {
262
+ templateType: 'scrap';
263
+ requestUrl: string;
264
+ templateId?: Double;
265
+ templateArgs?: Readonly<Record<string, string>>;
266
+ }
267
+ ) & {
268
+ serverCallbackArgs?: Readonly<Record<string, string>>;
269
+ pickerSettings?: KakaoSharePickerSettings;
270
+ };
271
+
272
+ export type KakaoShareTemplateDiagnostics = {
273
+ warningMsg: Readonly<{ [key: string]: string }>;
274
+ argumentMsg: Readonly<{ [key: string]: string }>;
275
+ };
276
+
219
277
  export interface Spec extends TurboModule {
278
+ isKakaoTalkSharingAvailable(): Promise<boolean>;
279
+ makeTemplateUrl(
280
+ templateType: string,
281
+ templateId: Double,
282
+ templateJson: UnsafeObject,
283
+ templateArgs: Readonly<{ [key: string]: string }>,
284
+ serverCallbackArgs: Readonly<{ [key: string]: string }>,
285
+ ): Promise<string>;
286
+ getTemplateDiagnostics(
287
+ templateType: string,
288
+ templateId: Double,
289
+ templateJson: UnsafeObject,
290
+ templateArgs: Readonly<{ [key: string]: string }>,
291
+ serverCallbackArgs: Readonly<{ [key: string]: string }>,
292
+ pickerSettings?: UnsafeObject,
293
+ ): Promise<KakaoShareTemplateDiagnostics>;
294
+ uploadImage(imageUri: string, secureResource: boolean): Promise<KakaoImageUploadResult>;
295
+ shareScrapTemplate(
296
+ requestUrl: string,
297
+ useWebBrowserIfKakaoTalkNotAvailable: boolean,
298
+ templateId?: Double,
299
+ templateArgs?: Readonly<{ [key: string]: string }>,
300
+ serverCallbackArgs?: Readonly<{ [key: string]: string }>,
301
+ pickerSettings?: UnsafeObject,
302
+ ): Promise<void>;
303
+
304
+ scrapImage(imageUrl: string, secureResource: boolean): Promise<KakaoImageUploadResult>;
220
305
  shareOrSendMeOrSendFriendOrWhatever(
221
306
  /* share, send-me, send-friend */
222
307
  sendType: string,
223
- /* custom, feed, list, location, commerce, text, calendar */
308
+ /* custom, scrap, feed, list, location, commerce, text, calendar */
224
309
  templateType: string,
225
- /* only for custom */
310
+ /* only for custom or scrap (-1 uses the default scrap template) */
226
311
  templateId: Double,
227
- /* only for default templates */
312
+ /* default template fields or { requestUrl } for scrap */
228
313
  templateJson: UnsafeObject,
229
314
  /* only for pass friend uuid directly */
230
315
  receiverUuids: ReadonlyArray<string>,
231
316
  useWebBrowserIfKakaoTalkNotAvailable: boolean,
232
317
  templateArgs: Readonly<{ [key: string]: string }>,
233
318
  serverCallbackArgs: Readonly<{ [key: string]: string }>,
319
+ pickerSettings?: UnsafeObject,
234
320
  ): Promise<any>;
235
321
  }
236
322
 
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ import { kAssert } from '@react-native-kakao/core';
4
+ const minSelectionLimit = 1;
5
+ const maxSelectionLimit = 10;
6
+ export function validateSharePickerSettings(pickerSettings) {
7
+ if (pickerSettings == null) {
8
+ return undefined;
9
+ }
10
+ kAssert(typeof pickerSettings === 'object' && !Array.isArray(pickerSettings), '[share] pickerSettings must be an object');
11
+ const {
12
+ type,
13
+ limit
14
+ } = pickerSettings;
15
+ kAssert(type == null || ['default', 'friend', 'chat'].includes(type), '[share] pickerSettings.type must be default, friend, or chat');
16
+ kAssert(limit == null || Number.isInteger(limit) && limit >= minSelectionLimit && limit <= maxSelectionLimit, `[share] pickerSettings.limit must be an integer between ${minSelectionLimit} and ${maxSelectionLimit}`);
17
+ if (type == null && limit == null) {
18
+ return undefined;
19
+ }
20
+ return {
21
+ ...(type != null && {
22
+ type
23
+ }),
24
+ ...(limit != null && {
25
+ limit
26
+ })
27
+ };
28
+ }
29
+ //# sourceMappingURL=validateSharePickerSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["kAssert","minSelectionLimit","maxSelectionLimit","validateSharePickerSettings","pickerSettings","undefined","Array","isArray","type","limit","includes","Number","isInteger"],"sourceRoot":"../../src","sources":["validateSharePickerSettings.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,0BAA0B;AAIlD,MAAMC,iBAAiB,GAAG,CAAC;AAC3B,MAAMC,iBAAiB,GAAG,EAAE;AAE5B,OAAO,SAASC,2BAA2BA,CAACC,cAAyC,EAAE;EACrF,IAAIA,cAAc,IAAI,IAAI,EAAE;IAC1B,OAAOC,SAAS;EAClB;EAEAL,OAAO,CACL,OAAOI,cAAc,KAAK,QAAQ,IAAI,CAACE,KAAK,CAACC,OAAO,CAACH,cAAc,CAAC,EACpE,0CACF,CAAC;EAED,MAAM;IAAEI,IAAI;IAAEC;EAAM,CAAC,GAAGL,cAAc;EACtCJ,OAAO,CACLQ,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,CAACE,QAAQ,CAACF,IAAI,CAAC,EAC5D,8DACF,CAAC;EAEDR,OAAO,CACLS,KAAK,IAAI,IAAI,IACVE,MAAM,CAACC,SAAS,CAACH,KAAK,CAAC,IAAIA,KAAK,IAAIR,iBAAiB,IAAIQ,KAAK,IAAIP,iBAAkB,EACvF,2DAA2DD,iBAAiB,QAAQC,iBAAiB,EACvG,CAAC;EAED,IAAIM,IAAI,IAAI,IAAI,IAAIC,KAAK,IAAI,IAAI,EAAE;IACjC,OAAOJ,SAAS;EAClB;EAEA,OAAO;IACL,IAAIG,IAAI,IAAI,IAAI,IAAI;MAAEA;IAAK,CAAC,CAAC;IAC7B,IAAIC,KAAK,IAAI,IAAI,IAAI;MAAEA;IAAM,CAAC;EAChC,CAAC;AACH","ignoreList":[]}