@apps-in-toss/native-modules 0.0.0-dev.1752115036458 → 0.0.0-dev.1757056983098

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 (77) hide show
  1. package/dist/bridges-meta.json +36 -13
  2. package/dist/index.cjs +343 -129
  3. package/dist/index.d.cts +1212 -418
  4. package/dist/index.d.ts +1212 -418
  5. package/dist/index.js +315 -108
  6. package/package.json +7 -8
  7. package/src/AppsInTossModule/constants.ts +6 -0
  8. package/src/AppsInTossModule/native-event-emitter/appsInTossEvent.ts +15 -0
  9. package/src/AppsInTossModule/native-event-emitter/contactsViral.ts +140 -0
  10. package/src/AppsInTossModule/native-event-emitter/event-plugins/EntryMessageExitedEvent.ts +10 -0
  11. package/src/AppsInTossModule/native-event-emitter/event-plugins/HomeIconButtonClickHandleEvent.ts +10 -0
  12. package/src/AppsInTossModule/native-event-emitter/event-plugins/UpdateLocationEvent.ts +60 -0
  13. package/src/AppsInTossModule/native-event-emitter/index.ts +6 -0
  14. package/src/AppsInTossModule/native-event-emitter/internal/AppBridgeCallbackEvent.ts +45 -0
  15. package/src/AppsInTossModule/native-event-emitter/internal/VisibilityChangedByTransparentServiceWebEvent.ts +50 -0
  16. package/src/AppsInTossModule/native-event-emitter/internal/appBridge.spec.ts +135 -0
  17. package/src/AppsInTossModule/native-event-emitter/internal/appBridge.ts +79 -0
  18. package/src/AppsInTossModule/native-event-emitter/internal/onVisibilityChangedByTransparentServiceWeb.ts +20 -0
  19. package/src/AppsInTossModule/native-event-emitter/nativeEventEmitter.ts +35 -0
  20. package/src/AppsInTossModule/native-event-emitter/startUpdateLocation.ts +98 -0
  21. package/src/AppsInTossModule/native-event-emitter/types.ts +4 -0
  22. package/src/AppsInTossModule/native-modules/AppsInTossModule.ts +89 -0
  23. package/src/AppsInTossModule/native-modules/ads/googleAdMob.ts +681 -0
  24. package/src/AppsInTossModule/native-modules/ads/googleAdMobV2.ts +363 -0
  25. package/src/AppsInTossModule/native-modules/ads/types.ts +123 -0
  26. package/src/AppsInTossModule/native-modules/appLogin.ts +29 -0
  27. package/src/AppsInTossModule/native-modules/checkoutPayment.ts +80 -0
  28. package/src/AppsInTossModule/native-modules/eventLog.spec.ts +300 -0
  29. package/src/AppsInTossModule/native-modules/eventLog.ts +77 -0
  30. package/src/AppsInTossModule/native-modules/fetchAlbumPhotos.ts +88 -0
  31. package/src/AppsInTossModule/native-modules/fetchContacts.ts +121 -0
  32. package/src/AppsInTossModule/native-modules/getClipboardText.ts +47 -0
  33. package/src/AppsInTossModule/native-modules/getCurrentLocation.ts +65 -0
  34. package/src/AppsInTossModule/native-modules/getDeviceId.ts +33 -0
  35. package/src/AppsInTossModule/native-modules/getGameCenterGameProfile.ts +68 -0
  36. package/src/AppsInTossModule/native-modules/getOperationalEnvironment.ts +37 -0
  37. package/src/AppsInTossModule/native-modules/getPermission.ts +58 -0
  38. package/src/AppsInTossModule/native-modules/getTossAppVersion.ts +33 -0
  39. package/src/AppsInTossModule/native-modules/getTossShareLink.ts +39 -0
  40. package/src/AppsInTossModule/native-modules/iap.ts +213 -0
  41. package/src/AppsInTossModule/native-modules/index.ts +104 -0
  42. package/src/AppsInTossModule/native-modules/isMinVersionSupported.spec.ts +190 -0
  43. package/src/AppsInTossModule/native-modules/isMinVersionSupported.ts +68 -0
  44. package/src/AppsInTossModule/native-modules/openCamera.ts +81 -0
  45. package/src/AppsInTossModule/native-modules/openGameCenterLeaderboard.ts +44 -0
  46. package/src/AppsInTossModule/native-modules/openPermissionDialog.ts +54 -0
  47. package/src/AppsInTossModule/native-modules/requestPermission.ts +63 -0
  48. package/src/AppsInTossModule/native-modules/saveBase64Data.ts +57 -0
  49. package/src/AppsInTossModule/native-modules/setClipboardText.ts +39 -0
  50. package/src/AppsInTossModule/native-modules/setDeviceOrientation.ts +74 -0
  51. package/src/AppsInTossModule/native-modules/storage.ts +100 -0
  52. package/src/AppsInTossModule/native-modules/submitGameCenterLeaderBoardScore.ts +74 -0
  53. package/src/AppsInTossModule/native-modules/tossCore.ts +29 -0
  54. package/src/BedrockModule/native-modules/core/BedrockCoreModule.ts +8 -0
  55. package/src/BedrockModule/native-modules/index.ts +4 -0
  56. package/src/BedrockModule/native-modules/natives/BedrockModule.ts +20 -0
  57. package/src/BedrockModule/native-modules/natives/closeView.ts +25 -0
  58. package/src/BedrockModule/native-modules/natives/generateHapticFeedback/index.ts +27 -0
  59. package/src/BedrockModule/native-modules/natives/generateHapticFeedback/types.ts +38 -0
  60. package/src/BedrockModule/native-modules/natives/getLocale.ts +46 -0
  61. package/src/BedrockModule/native-modules/natives/getNetworkStatus/index.ts +59 -0
  62. package/src/BedrockModule/native-modules/natives/getNetworkStatus/types.ts +1 -0
  63. package/src/BedrockModule/native-modules/natives/getPlatformOS.ts +37 -0
  64. package/src/BedrockModule/native-modules/natives/getSchemeUri.ts +27 -0
  65. package/src/BedrockModule/native-modules/natives/index.ts +11 -0
  66. package/src/BedrockModule/native-modules/natives/openURL.ts +40 -0
  67. package/src/BedrockModule/native-modules/natives/setIosSwipeGestureEnabled.ts +43 -0
  68. package/src/BedrockModule/native-modules/natives/setScreenAwakeMode.ts +66 -0
  69. package/src/BedrockModule/native-modules/natives/setSecureScreen.ts +31 -0
  70. package/src/BedrockModule/native-modules/natives/share.ts +36 -0
  71. package/src/async-bridges.ts +3 -0
  72. package/src/event-bridges.ts +2 -0
  73. package/src/index.ts +16 -0
  74. package/src/types.ts +108 -0
  75. package/src/utils/compareVersion.spec.ts +176 -0
  76. package/src/utils/compareVersion.ts +104 -0
  77. package/src/utils/generateUUID.ts +5 -0
package/dist/index.cjs CHANGED
@@ -20,18 +20,21 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
- Accuracy: () => Accuracy2,
23
+ Accuracy: () => Accuracy,
24
24
  AppsInTossModule: () => AppsInTossModule,
25
25
  BedrockCoreModule: () => BedrockCoreModule,
26
26
  BedrockModule: () => BedrockModule,
27
27
  GoogleAdMob: () => GoogleAdMob,
28
+ IAP: () => IAP,
28
29
  INTERNAL__AppsInTossModule: () => AppsInTossModuleInstance,
30
+ INTERNAL__appBridgeHandler: () => INTERNAL__appBridgeHandler,
29
31
  INTERNAL__module: () => INTERNAL__module,
30
32
  Storage: () => Storage,
31
33
  TossPay: () => TossPay,
32
34
  appLogin: () => appLogin,
33
35
  appsInTossEvent: () => appsInTossEvent,
34
36
  closeView: () => closeView,
37
+ contactsViral: () => contactsViral,
35
38
  eventLog: () => eventLog,
36
39
  fetchAlbumPhotos: () => fetchAlbumPhotos,
37
40
  fetchContacts: () => fetchContacts,
@@ -39,6 +42,7 @@ __export(index_exports, {
39
42
  getClipboardText: () => getClipboardText,
40
43
  getCurrentLocation: () => getCurrentLocation,
41
44
  getDeviceId: () => getDeviceId,
45
+ getGameCenterGameProfile: () => getGameCenterGameProfile,
42
46
  getLocale: () => getLocale,
43
47
  getNetworkStatus: () => getNetworkStatus,
44
48
  getOperationalEnvironment: () => getOperationalEnvironment,
@@ -47,8 +51,10 @@ __export(index_exports, {
47
51
  getTossAppVersion: () => getTossAppVersion,
48
52
  getTossShareLink: () => getTossShareLink,
49
53
  isMinVersionSupported: () => isMinVersionSupported,
54
+ onVisibilityChangedByTransparentServiceWeb: () => onVisibilityChangedByTransparentServiceWeb,
50
55
  openCamera: () => openCamera,
51
- openURL: () => openURL,
56
+ openGameCenterLeaderboard: () => openGameCenterLeaderboard,
57
+ openURL: () => openURL2,
52
58
  saveBase64Data: () => saveBase64Data,
53
59
  setClipboardText: () => setClipboardText,
54
60
  setDeviceOrientation: () => setDeviceOrientation,
@@ -56,12 +62,13 @@ __export(index_exports, {
56
62
  setScreenAwakeMode: () => setScreenAwakeMode,
57
63
  setSecureScreen: () => setSecureScreen,
58
64
  share: () => share,
59
- startUpdateLocation: () => startUpdateLocation
65
+ startUpdateLocation: () => startUpdateLocation,
66
+ submitGameCenterLeaderBoardScore: () => submitGameCenterLeaderBoardScore
60
67
  });
61
68
  module.exports = __toCommonJS(index_exports);
62
69
 
63
70
  // src/AppsInTossModule/native-event-emitter/appsInTossEvent.ts
64
- var import_react_native6 = require("@granite-js/react-native");
71
+ var import_react_native8 = require("@granite-js/react-native");
65
72
 
66
73
  // src/AppsInTossModule/native-event-emitter/event-plugins/EntryMessageExitedEvent.ts
67
74
  var import_react_native = require("@granite-js/react-native");
@@ -74,12 +81,23 @@ var EntryMessageExitedEvent = class extends import_react_native.GraniteEventDefi
74
81
  }
75
82
  };
76
83
 
84
+ // src/AppsInTossModule/native-event-emitter/event-plugins/HomeIconButtonClickHandleEvent.ts
85
+ var import_react_native2 = require("@granite-js/react-native");
86
+ var HomeIconButtonClickHandleEvent = class extends import_react_native2.GraniteEventDefinition {
87
+ name = "homeIconButtonClickEvent";
88
+ remove() {
89
+ }
90
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
91
+ listener(_) {
92
+ }
93
+ };
94
+
77
95
  // src/AppsInTossModule/native-event-emitter/event-plugins/UpdateLocationEvent.ts
78
- var import_react_native4 = require("@granite-js/react-native");
96
+ var import_react_native5 = require("@granite-js/react-native");
79
97
 
80
98
  // src/AppsInTossModule/native-modules/AppsInTossModule.ts
81
- var import_react_native2 = require("react-native");
82
- var Module = import_react_native2.TurboModuleRegistry.getEnforcing("AppsInTossModule");
99
+ var import_react_native3 = require("react-native");
100
+ var Module = import_react_native3.TurboModuleRegistry.getEnforcing("AppsInTossModule");
83
101
  var AppsInTossModuleInstance = Module;
84
102
  var AppsInTossModule = Module;
85
103
 
@@ -106,11 +124,11 @@ async function requestPermission(permission) {
106
124
  }
107
125
 
108
126
  // src/AppsInTossModule/native-event-emitter/nativeEventEmitter.ts
109
- var import_react_native3 = require("react-native");
110
- var nativeEventEmitter = new import_react_native3.NativeEventEmitter(AppsInTossModuleInstance);
127
+ var import_react_native4 = require("react-native");
128
+ var nativeEventEmitter = new import_react_native4.NativeEventEmitter(AppsInTossModuleInstance);
111
129
 
112
130
  // src/AppsInTossModule/native-event-emitter/event-plugins/UpdateLocationEvent.ts
113
- var UpdateLocationEvent = class extends import_react_native4.GraniteEventDefinition {
131
+ var UpdateLocationEvent = class extends import_react_native5.GraniteEventDefinition {
114
132
  name = "updateLocationEvent";
115
133
  subscriptionCount = 0;
116
134
  ref = {
@@ -140,7 +158,7 @@ var UpdateLocationEvent = class extends import_react_native4.GraniteEventDefinit
140
158
  };
141
159
 
142
160
  // src/AppsInTossModule/native-event-emitter/internal/AppBridgeCallbackEvent.ts
143
- var import_react_native5 = require("@granite-js/react-native");
161
+ var import_react_native6 = require("@granite-js/react-native");
144
162
 
145
163
  // src/utils/generateUUID.ts
146
164
  function generateUUID(placeholder) {
@@ -197,7 +215,7 @@ var INTERNAL__appBridgeHandler = {
197
215
 
198
216
  // src/AppsInTossModule/native-event-emitter/internal/AppBridgeCallbackEvent.ts
199
217
  var UNSAFE__nativeEventEmitter = nativeEventEmitter;
200
- var AppBridgeCallbackEvent = class _AppBridgeCallbackEvent extends import_react_native5.GraniteEventDefinition {
218
+ var AppBridgeCallbackEvent = class _AppBridgeCallbackEvent extends import_react_native6.GraniteEventDefinition {
201
219
  static INTERNAL__appBridgeSubscription;
202
220
  name = "appBridgeCallbackEvent";
203
221
  constructor() {
@@ -226,11 +244,40 @@ var AppBridgeCallbackEvent = class _AppBridgeCallbackEvent extends import_react_
226
244
  }
227
245
  };
228
246
 
247
+ // src/AppsInTossModule/native-event-emitter/internal/VisibilityChangedByTransparentServiceWebEvent.ts
248
+ var import_react_native7 = require("@granite-js/react-native");
249
+ var VisibilityChangedByTransparentServiceWebEvent = class extends import_react_native7.GraniteEventDefinition {
250
+ name = "onVisibilityChangedByTransparentServiceWeb";
251
+ subscription = null;
252
+ remove() {
253
+ this.subscription?.remove();
254
+ this.subscription = null;
255
+ }
256
+ listener(options, onEvent, onError) {
257
+ const subscription = nativeEventEmitter.addListener("visibilityChangedByTransparentServiceWeb", (params) => {
258
+ if (this.isVisibilityChangedByTransparentServiceWebResult(params)) {
259
+ if (params.callbackId === options.callbackId) {
260
+ onEvent(params.isVisible);
261
+ }
262
+ } else {
263
+ onError(new Error("Invalid visibility changed by transparent service web result"));
264
+ }
265
+ });
266
+ this.subscription = subscription;
267
+ }
268
+ isVisibilityChangedByTransparentServiceWebResult(params) {
269
+ return typeof params === "object" && typeof params.callbackId === "string" && typeof params.isVisible === "boolean";
270
+ }
271
+ };
272
+
229
273
  // src/AppsInTossModule/native-event-emitter/appsInTossEvent.ts
230
- var appsInTossEvent = new import_react_native6.GraniteEvent([
231
- new AppBridgeCallbackEvent(),
274
+ var appsInTossEvent = new import_react_native8.GraniteEvent([
232
275
  new UpdateLocationEvent(),
233
- new EntryMessageExitedEvent()
276
+ new EntryMessageExitedEvent(),
277
+ new HomeIconButtonClickHandleEvent(),
278
+ // Internal events
279
+ new AppBridgeCallbackEvent(),
280
+ new VisibilityChangedByTransparentServiceWebEvent()
234
281
  ]);
235
282
 
236
283
  // src/AppsInTossModule/native-event-emitter/startUpdateLocation.ts
@@ -238,16 +285,8 @@ function startUpdateLocation(eventParams) {
238
285
  return appsInTossEvent.addEventListener("updateLocationEvent", eventParams);
239
286
  }
240
287
 
241
- // src/AppsInTossModule/native-modules/ads/googleAdMob.ts
242
- var import_es_toolkit = require("es-toolkit");
243
-
244
- // src/AppsInTossModule/native-modules/getOperationalEnvironment.ts
245
- function getOperationalEnvironment() {
246
- return AppsInTossModule.operationalEnvironment;
247
- }
248
-
249
288
  // src/AppsInTossModule/native-modules/isMinVersionSupported.ts
250
- var import_react_native7 = require("react-native");
289
+ var import_react_native9 = require("react-native");
251
290
 
252
291
  // src/utils/compareVersion.ts
253
292
  var SEMVER_REGEX = /^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\\-]+(?:\.[\da-z\\-]+)*))?(?:\+[\da-z\\-]+(?:\.[\da-z\\-]+)*)?)?)?$/i;
@@ -323,7 +362,7 @@ function isMinVersionSupported(minVersions) {
323
362
  return true;
324
363
  }
325
364
  const currentVersion = AppsInTossModule.tossAppVersion;
326
- const isIOS = import_react_native7.Platform.OS === "ios";
365
+ const isIOS = import_react_native9.Platform.OS === "ios";
327
366
  const minVersion = isIOS ? minVersions.ios : minVersions.android;
328
367
  if (minVersion === void 0) {
329
368
  return false;
@@ -337,6 +376,42 @@ function isMinVersionSupported(minVersions) {
337
376
  return compareVersions(currentVersion, minVersion) >= 0;
338
377
  }
339
378
 
379
+ // src/AppsInTossModule/native-event-emitter/contactsViral.ts
380
+ function contactsViral(params) {
381
+ const isSupported = isMinVersionSupported({
382
+ android: "5.223.0",
383
+ ios: "5.223.0"
384
+ });
385
+ if (!isSupported) {
386
+ return () => {
387
+ };
388
+ }
389
+ const { onEvent, onError, options } = params;
390
+ const unregisterCallbacks = INTERNAL__appBridgeHandler.invokeAppBridgeMethod("contactsViral", options, {
391
+ onRewardFromContactsViral: (result) => {
392
+ onEvent({ type: "sendViral", data: result });
393
+ },
394
+ onSuccess: (result) => {
395
+ onEvent({ type: "close", data: result });
396
+ },
397
+ onError
398
+ });
399
+ return unregisterCallbacks;
400
+ }
401
+
402
+ // src/AppsInTossModule/native-event-emitter/internal/onVisibilityChangedByTransparentServiceWeb.ts
403
+ function onVisibilityChangedByTransparentServiceWeb(eventParams) {
404
+ return appsInTossEvent.addEventListener("onVisibilityChangedByTransparentServiceWeb", eventParams);
405
+ }
406
+
407
+ // src/AppsInTossModule/native-modules/ads/googleAdMob.ts
408
+ var import_es_toolkit = require("es-toolkit");
409
+
410
+ // src/AppsInTossModule/native-modules/getOperationalEnvironment.ts
411
+ function getOperationalEnvironment() {
412
+ return AppsInTossModule.operationalEnvironment;
413
+ }
414
+
340
415
  // src/AppsInTossModule/native-modules/ads/googleAdMob.ts
341
416
  function loadAdMobInterstitialAd(params) {
342
417
  if (!loadAdMobInterstitialAd.isSupported()) {
@@ -439,27 +514,121 @@ loadAdMobRewardedAd.isSupported = createIsSupported();
439
514
  showAdMobInterstitialAd.isSupported = createIsSupported();
440
515
  showAdMobRewardedAd.isSupported = createIsSupported();
441
516
 
517
+ // src/AppsInTossModule/native-modules/ads/googleAdMobV2.ts
518
+ var import_es_toolkit2 = require("es-toolkit");
519
+ function loadAppsInTossAdMob(params) {
520
+ if (!loadAppsInTossAdMob.isSupported()) {
521
+ params.onError(new Error(UNSUPPORTED_ERROR_MESSAGE2));
522
+ return import_es_toolkit2.noop;
523
+ }
524
+ const { onEvent, onError, options } = params;
525
+ const unregisterCallbacks = INTERNAL__appBridgeHandler.invokeAppBridgeMethod("loadAppsInTossAdmob", options, {
526
+ onSuccess: (result) => onEvent({ type: "loaded", data: result }),
527
+ onError
528
+ });
529
+ return unregisterCallbacks;
530
+ }
531
+ function showAppsInTossAdMob(params) {
532
+ if (!showAppsInTossAdMob.isSupported()) {
533
+ params.onError(new Error(UNSUPPORTED_ERROR_MESSAGE2));
534
+ return import_es_toolkit2.noop;
535
+ }
536
+ const { onEvent, onError, options } = params;
537
+ const unregisterCallbacks = INTERNAL__appBridgeHandler.invokeAppBridgeMethod("showAppsInTossAdmob", options, {
538
+ onAdClicked: () => {
539
+ onEvent({ type: "clicked" });
540
+ },
541
+ onAdDismissed: () => {
542
+ onEvent({ type: "dismissed" });
543
+ },
544
+ onAdFailedToShow: () => {
545
+ onEvent({ type: "failedToShow" });
546
+ },
547
+ onAdImpression: () => {
548
+ onEvent({ type: "impression" });
549
+ },
550
+ onAdShow: () => {
551
+ onEvent({ type: "show" });
552
+ },
553
+ onUserEarnedReward: (data) => {
554
+ onEvent({ type: "userEarnedReward", data });
555
+ },
556
+ onSuccess: () => onEvent({ type: "requested" }),
557
+ onError
558
+ });
559
+ return unregisterCallbacks;
560
+ }
561
+ var ANDROID_GOOGLE_AD_MOB_SUPPORTED_VERSION2 = "5.227.0";
562
+ var IOS_GOOGLE_AD_MOB_SUPPORTED_VERSION2 = "5.227.0";
563
+ var UNSUPPORTED_ERROR_MESSAGE2 = "This feature is not supported in the current environment";
564
+ var ENVIRONMENT2 = getOperationalEnvironment();
565
+ function createIsSupported2() {
566
+ return () => {
567
+ if (ENVIRONMENT2 !== "toss") {
568
+ return false;
569
+ }
570
+ return isMinVersionSupported({
571
+ android: ANDROID_GOOGLE_AD_MOB_SUPPORTED_VERSION2,
572
+ ios: IOS_GOOGLE_AD_MOB_SUPPORTED_VERSION2
573
+ });
574
+ };
575
+ }
576
+ loadAppsInTossAdMob.isSupported = createIsSupported2();
577
+ showAppsInTossAdMob.isSupported = createIsSupported2();
578
+
442
579
  // src/AppsInTossModule/native-modules/checkoutPayment.ts
443
580
  async function checkoutPayment(options) {
444
581
  return AppsInTossModule.checkoutPayment({ params: options });
445
582
  }
446
583
 
447
- // src/AppsInTossModule/native-modules/setClipboardText.ts
448
- async function setClipboardText(text) {
449
- const permissionStatus = await requestPermission({ name: "clipboard", access: "write" });
450
- if (permissionStatus === "denied") {
451
- throw new Error("\uD074\uB9BD\uBCF4\uB4DC \uC4F0\uAE30 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
584
+ // src/AppsInTossModule/native-modules/appLogin.ts
585
+ async function appLogin() {
586
+ return AppsInTossModule.appLogin({});
587
+ }
588
+
589
+ // src/AppsInTossModule/native-modules/eventLog.ts
590
+ function normalizeParams(params) {
591
+ return Object.fromEntries(
592
+ Object.entries(params).filter(([, value]) => value !== void 0).map(([key, value]) => [key, String(value)])
593
+ );
594
+ }
595
+ async function eventLog(params) {
596
+ if (AppsInTossModule.operationalEnvironment === "sandbox") {
597
+ console.log("[eventLogDebug]", {
598
+ log_name: params.log_name,
599
+ log_type: params.log_type,
600
+ params: normalizeParams(params.params)
601
+ });
602
+ return;
452
603
  }
453
- return AppsInTossModule.setClipboardText({ text });
604
+ const isSupported = isMinVersionSupported({
605
+ android: "5.208.0",
606
+ ios: "5.208.0"
607
+ });
608
+ if (!isSupported) {
609
+ return;
610
+ }
611
+ return AppsInTossModule.eventLog({
612
+ log_name: params.log_name,
613
+ log_type: params.log_type,
614
+ params: normalizeParams(params.params)
615
+ });
454
616
  }
455
617
 
456
- // src/AppsInTossModule/native-modules/getClipboardText.ts
457
- async function getClipboardText() {
458
- const permissionStatus = await requestPermission({ name: "clipboard", access: "read" });
618
+ // src/AppsInTossModule/native-modules/fetchAlbumPhotos.ts
619
+ var DEFAULT_MAX_COUNT = 10;
620
+ var DEFAULT_MAX_WIDTH = 1024;
621
+ async function fetchAlbumPhotos(options) {
622
+ const permissionStatus = await requestPermission({ name: "photos", access: "read" });
459
623
  if (permissionStatus === "denied") {
460
- throw new Error("\uD074\uB9BD\uBCF4\uB4DC \uC77D\uAE30 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
624
+ throw new Error("\uC0AC\uC9C4\uCCA9 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
461
625
  }
462
- return AppsInTossModule.getClipboardText({});
626
+ const albumPhotos = await AppsInTossModule.fetchAlbumPhotos({
627
+ ...options,
628
+ maxCount: options.maxCount ?? DEFAULT_MAX_COUNT,
629
+ maxWidth: options.maxWidth ?? DEFAULT_MAX_WIDTH
630
+ });
631
+ return albumPhotos;
463
632
  }
464
633
 
465
634
  // src/AppsInTossModule/native-modules/fetchContacts.ts
@@ -476,20 +645,13 @@ async function fetchContacts(options) {
476
645
  };
477
646
  }
478
647
 
479
- // src/AppsInTossModule/native-modules/fetchAlbumPhotos.ts
480
- var DEFAULT_MAX_COUNT = 10;
481
- var DEFAULT_MAX_WIDTH = 1024;
482
- async function fetchAlbumPhotos(options) {
483
- const permissionStatus = await requestPermission({ name: "photos", access: "read" });
648
+ // src/AppsInTossModule/native-modules/getClipboardText.ts
649
+ async function getClipboardText() {
650
+ const permissionStatus = await requestPermission({ name: "clipboard", access: "read" });
484
651
  if (permissionStatus === "denied") {
485
- throw new Error("\uC0AC\uC9C4\uCCA9 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
652
+ throw new Error("\uD074\uB9BD\uBCF4\uB4DC \uC77D\uAE30 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
486
653
  }
487
- const albumPhotos = await AppsInTossModule.fetchAlbumPhotos({
488
- ...options,
489
- maxCount: options.maxCount ?? DEFAULT_MAX_COUNT,
490
- maxWidth: options.maxWidth ?? DEFAULT_MAX_WIDTH
491
- });
492
- return albumPhotos;
654
+ return AppsInTossModule.getClipboardText({});
493
655
  }
494
656
 
495
657
  // src/AppsInTossModule/native-modules/getCurrentLocation.ts
@@ -502,6 +664,51 @@ async function getCurrentLocation(options) {
502
664
  return position;
503
665
  }
504
666
 
667
+ // src/AppsInTossModule/native-modules/getDeviceId.ts
668
+ function getDeviceId() {
669
+ return AppsInTossModule.deviceId;
670
+ }
671
+
672
+ // src/AppsInTossModule/native-modules/getTossAppVersion.ts
673
+ function getTossAppVersion() {
674
+ return AppsInTossModule.tossAppVersion;
675
+ }
676
+
677
+ // src/AppsInTossModule/native-modules/getTossShareLink.ts
678
+ async function getTossShareLink(path) {
679
+ const { shareLink } = await AppsInTossModule.getTossShareLink({});
680
+ const shareUrl = new URL(shareLink);
681
+ shareUrl.searchParams.set("deep_link_value", path);
682
+ shareUrl.searchParams.set("af_dp", path);
683
+ return shareUrl.toString();
684
+ }
685
+
686
+ // src/AppsInTossModule/native-modules/iap.ts
687
+ async function createOneTimePurchaseOrder(params) {
688
+ const isSupported = isMinVersionSupported({
689
+ android: "5.219.0",
690
+ ios: "5.219.0"
691
+ });
692
+ if (!isSupported) {
693
+ return;
694
+ }
695
+ return AppsInTossModule.iapCreateOneTimePurchaseOrder(params);
696
+ }
697
+ async function getProductItemList() {
698
+ const isSupported = isMinVersionSupported({
699
+ android: "5.219.0",
700
+ ios: "5.219.0"
701
+ });
702
+ if (!isSupported) {
703
+ return;
704
+ }
705
+ return AppsInTossModule.iapGetProductItemList({});
706
+ }
707
+ var IAP = {
708
+ createOneTimePurchaseOrder,
709
+ getProductItemList
710
+ };
711
+
505
712
  // src/AppsInTossModule/native-modules/openCamera.ts
506
713
  async function openCamera(options) {
507
714
  const permissionStatus = await requestPermission({ name: "camera", access: "access" });
@@ -512,19 +719,38 @@ async function openCamera(options) {
512
719
  return photo;
513
720
  }
514
721
 
515
- // src/AppsInTossModule/native-modules/appLogin.ts
516
- async function appLogin() {
517
- return AppsInTossModule.appLogin({});
722
+ // src/AppsInTossModule/native-modules/saveBase64Data.ts
723
+ async function saveBase64Data(params) {
724
+ const isSupported = isMinVersionSupported({
725
+ android: "5.218.0",
726
+ ios: "5.216.0"
727
+ });
728
+ if (!isSupported) {
729
+ console.warn("saveBase64Data is not supported in this app version");
730
+ return;
731
+ }
732
+ await AppsInTossModule.saveBase64Data(params);
518
733
  }
519
734
 
520
- // src/AppsInTossModule/native-modules/getTossAppVersion.ts
521
- function getTossAppVersion() {
522
- return AppsInTossModule.tossAppVersion;
735
+ // src/AppsInTossModule/native-modules/setClipboardText.ts
736
+ async function setClipboardText(text) {
737
+ const permissionStatus = await requestPermission({ name: "clipboard", access: "write" });
738
+ if (permissionStatus === "denied") {
739
+ throw new Error("\uD074\uB9BD\uBCF4\uB4DC \uC4F0\uAE30 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
740
+ }
741
+ return AppsInTossModule.setClipboardText({ text });
523
742
  }
524
743
 
525
- // src/AppsInTossModule/native-modules/getDeviceId.ts
526
- function getDeviceId() {
527
- return AppsInTossModule.deviceId;
744
+ // src/AppsInTossModule/native-modules/setDeviceOrientation.ts
745
+ async function setDeviceOrientation(options) {
746
+ const isSupported = isMinVersionSupported({
747
+ android: "5.215.0",
748
+ ios: "5.215.0"
749
+ });
750
+ if (!isSupported) {
751
+ return;
752
+ }
753
+ return AppsInTossModule.setDeviceOrientation(options);
528
754
  }
529
755
 
530
756
  // src/AppsInTossModule/native-modules/storage.ts
@@ -550,67 +776,46 @@ var Storage = {
550
776
  clearItems
551
777
  };
552
778
 
553
- // src/AppsInTossModule/native-modules/eventLog.ts
554
- function normalizeParams(params) {
555
- return Object.fromEntries(
556
- Object.entries(params).filter(([, value]) => value !== void 0).map(([key, value]) => [key, String(value)])
557
- );
558
- }
559
- async function eventLog(params) {
560
- if (AppsInTossModule.operationalEnvironment === "sandbox") {
561
- console.log("[eventLogDebug]", {
562
- log_name: params.log_name,
563
- log_type: params.log_type,
564
- params: normalizeParams(params.params)
565
- });
779
+ // src/AppsInTossModule/native-modules/openGameCenterLeaderboard.ts
780
+ var import_react_native10 = require("@granite-js/react-native");
781
+
782
+ // src/AppsInTossModule/constants.ts
783
+ var GAME_CENTER_MIN_VERSION = {
784
+ android: "5.221.0",
785
+ ios: "5.221.0"
786
+ };
787
+
788
+ // src/AppsInTossModule/native-modules/openGameCenterLeaderboard.ts
789
+ async function openGameCenterLeaderboard() {
790
+ if (!isMinVersionSupported(GAME_CENTER_MIN_VERSION)) {
566
791
  return;
567
792
  }
568
- const isSupported = isMinVersionSupported({
569
- android: "5.208.0",
570
- ios: "5.208.0"
571
- });
572
- if (!isSupported) {
573
- return;
793
+ const appName = global.__granite?.app?.name;
794
+ if (appName == null) {
795
+ throw new Error("Cannot get app name");
574
796
  }
575
- return AppsInTossModule.eventLog({
576
- log_name: params.log_name,
577
- log_type: params.log_type,
578
- params: normalizeParams(params.params)
579
- });
580
- }
581
-
582
- // src/AppsInTossModule/native-modules/getTossShareLink.ts
583
- async function getTossShareLink(path) {
584
- const { shareLink } = await AppsInTossModule.getTossShareLink({});
585
- const shareUrl = new URL(shareLink);
586
- shareUrl.searchParams.set("deep_link_value", path);
587
- shareUrl.searchParams.set("af_dp", path);
588
- return shareUrl.toString();
797
+ const url = new URL("servicetoss://game-center/leaderboard?_navbar=hide");
798
+ url.searchParams.set("appName", appName);
799
+ url.searchParams.set("referrer", `appsintoss.${appName}`);
800
+ return (0, import_react_native10.openURL)(url.toString());
589
801
  }
590
802
 
591
- // src/AppsInTossModule/native-modules/setDeviceOrientation.ts
592
- async function setDeviceOrientation(options) {
593
- const isSupported = isMinVersionSupported({
594
- android: "5.215.0",
595
- ios: "5.215.0"
596
- });
803
+ // src/AppsInTossModule/native-modules/getGameCenterGameProfile.ts
804
+ async function getGameCenterGameProfile() {
805
+ const isSupported = isMinVersionSupported(GAME_CENTER_MIN_VERSION);
597
806
  if (!isSupported) {
598
807
  return;
599
808
  }
600
- return AppsInTossModule.setDeviceOrientation(options);
809
+ return AppsInTossModule.getGameCenterGameProfile({});
601
810
  }
602
811
 
603
- // src/AppsInTossModule/native-modules/saveBase64Data.ts
604
- async function saveBase64Data(params) {
605
- const isSupported = isMinVersionSupported({
606
- android: "5.218.0",
607
- ios: "5.216.0"
608
- });
812
+ // src/AppsInTossModule/native-modules/submitGameCenterLeaderBoardScore.ts
813
+ async function submitGameCenterLeaderBoardScore(params) {
814
+ const isSupported = isMinVersionSupported(GAME_CENTER_MIN_VERSION);
609
815
  if (!isSupported) {
610
- console.warn("saveBase64Data is not supported in this app version");
611
816
  return;
612
817
  }
613
- await AppsInTossModule.saveBase64Data(params);
818
+ return AppsInTossModule.submitGameCenterLeaderBoardScore(params);
614
819
  }
615
820
 
616
821
  // src/AppsInTossModule/native-modules/index.ts
@@ -621,12 +826,14 @@ var GoogleAdMob = {
621
826
  loadAdMobInterstitialAd,
622
827
  showAdMobInterstitialAd,
623
828
  loadAdMobRewardedAd,
624
- showAdMobRewardedAd
829
+ showAdMobRewardedAd,
830
+ loadAppsInTossAdMob,
831
+ showAppsInTossAdMob
625
832
  };
626
833
 
627
834
  // src/BedrockModule/native-modules/natives/BedrockModule.ts
628
- var import_react_native8 = require("react-native");
629
- var BedrockModule = import_react_native8.NativeModules.BedrockModule;
835
+ var import_react_native11 = require("react-native");
836
+ var BedrockModule = import_react_native11.NativeModules.BedrockModule;
630
837
 
631
838
  // src/BedrockModule/native-modules/natives/closeView.ts
632
839
  async function closeView() {
@@ -634,10 +841,10 @@ async function closeView() {
634
841
  }
635
842
 
636
843
  // src/BedrockModule/native-modules/natives/getLocale.ts
637
- var import_react_native9 = require("react-native");
844
+ var import_react_native12 = require("react-native");
638
845
  function getLocale() {
639
846
  const locale = BedrockModule?.DeviceInfo?.locale ?? "ko-KR";
640
- if (import_react_native9.Platform.OS === "android") {
847
+ if (import_react_native12.Platform.OS === "android") {
641
848
  return replaceUnderbarToHypen(locale);
642
849
  }
643
850
  return locale;
@@ -685,35 +892,35 @@ async function setIosSwipeGestureEnabled(options) {
685
892
  }
686
893
 
687
894
  // src/BedrockModule/native-modules/natives/openURL.ts
688
- var import_react_native10 = require("react-native");
689
- function openURL(url) {
690
- return import_react_native10.Linking.openURL(url);
895
+ var import_react_native13 = require("react-native");
896
+ function openURL2(url) {
897
+ return import_react_native13.Linking.openURL(url);
691
898
  }
692
899
 
693
900
  // src/BedrockModule/native-modules/natives/getPlatformOS.ts
694
- var import_react_native11 = require("react-native");
901
+ var import_react_native14 = require("react-native");
695
902
  function getPlatformOS() {
696
- return import_react_native11.Platform.OS;
903
+ return import_react_native14.Platform.OS;
697
904
  }
698
905
 
699
906
  // src/BedrockModule/native-modules/core/BedrockCoreModule.ts
700
- var import_react_native12 = require("react-native");
701
- var BedrockCoreModule = import_react_native12.NativeModules.BedrockCoreModule;
907
+ var import_react_native15 = require("react-native");
908
+ var BedrockCoreModule = import_react_native15.NativeModules.BedrockCoreModule;
702
909
 
703
910
  // src/types.ts
704
- var Accuracy2 = /* @__PURE__ */ ((Accuracy3) => {
705
- Accuracy3[Accuracy3["Lowest"] = 1] = "Lowest";
706
- Accuracy3[Accuracy3["Low"] = 2] = "Low";
707
- Accuracy3[Accuracy3["Balanced"] = 3] = "Balanced";
708
- Accuracy3[Accuracy3["High"] = 4] = "High";
709
- Accuracy3[Accuracy3["Highest"] = 5] = "Highest";
710
- Accuracy3[Accuracy3["BestForNavigation"] = 6] = "BestForNavigation";
711
- return Accuracy3;
712
- })(Accuracy2 || {});
911
+ var Accuracy = /* @__PURE__ */ ((Accuracy2) => {
912
+ Accuracy2[Accuracy2["Lowest"] = 1] = "Lowest";
913
+ Accuracy2[Accuracy2["Low"] = 2] = "Low";
914
+ Accuracy2[Accuracy2["Balanced"] = 3] = "Balanced";
915
+ Accuracy2[Accuracy2["High"] = 4] = "High";
916
+ Accuracy2[Accuracy2["Highest"] = 5] = "Highest";
917
+ Accuracy2[Accuracy2["BestForNavigation"] = 6] = "BestForNavigation";
918
+ return Accuracy2;
919
+ })(Accuracy || {});
713
920
 
714
921
  // src/AppsInTossModule/native-modules/tossCore.ts
715
- var import_react_native13 = require("react-native");
716
- var TossCoreModule = import_react_native13.NativeModules.TossCoreModule;
922
+ var import_react_native16 = require("react-native");
923
+ var TossCoreModule = import_react_native16.NativeModules.TossCoreModule;
717
924
  function tossCoreEventLog(params) {
718
925
  const supported = isMinVersionSupported({ ios: "5.210.0", android: "5.210.0" });
719
926
  const isSandbox = getOperationalEnvironment() === "sandbox";
@@ -740,13 +947,16 @@ var INTERNAL__module = {
740
947
  BedrockCoreModule,
741
948
  BedrockModule,
742
949
  GoogleAdMob,
950
+ IAP,
743
951
  INTERNAL__AppsInTossModule,
952
+ INTERNAL__appBridgeHandler,
744
953
  INTERNAL__module,
745
954
  Storage,
746
955
  TossPay,
747
956
  appLogin,
748
957
  appsInTossEvent,
749
958
  closeView,
959
+ contactsViral,
750
960
  eventLog,
751
961
  fetchAlbumPhotos,
752
962
  fetchContacts,
@@ -754,6 +964,7 @@ var INTERNAL__module = {
754
964
  getClipboardText,
755
965
  getCurrentLocation,
756
966
  getDeviceId,
967
+ getGameCenterGameProfile,
757
968
  getLocale,
758
969
  getNetworkStatus,
759
970
  getOperationalEnvironment,
@@ -762,7 +973,9 @@ var INTERNAL__module = {
762
973
  getTossAppVersion,
763
974
  getTossShareLink,
764
975
  isMinVersionSupported,
976
+ onVisibilityChangedByTransparentServiceWeb,
765
977
  openCamera,
978
+ openGameCenterLeaderboard,
766
979
  openURL,
767
980
  saveBase64Data,
768
981
  setClipboardText,
@@ -771,5 +984,6 @@ var INTERNAL__module = {
771
984
  setScreenAwakeMode,
772
985
  setSecureScreen,
773
986
  share,
774
- startUpdateLocation
987
+ startUpdateLocation,
988
+ submitGameCenterLeaderBoardScore
775
989
  });