@apps-in-toss/native-modules 1.0.3 → 1.1.0

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 (38) hide show
  1. package/dist/VisibilityChangedByTransparentServiceWebEvent-D6XJvPVh.d.cts +20 -0
  2. package/dist/VisibilityChangedByTransparentServiceWebEvent-D6XJvPVh.d.ts +20 -0
  3. package/dist/bridges-meta.json +24 -12
  4. package/dist/chunk-YS54L7RG.js +209 -0
  5. package/dist/index.cjs +167 -122
  6. package/dist/index.d.cts +635 -589
  7. package/dist/index.d.ts +635 -589
  8. package/dist/index.js +167 -122
  9. package/dist/private.cjs +236 -0
  10. package/dist/private.d.cts +17 -0
  11. package/dist/private.d.ts +17 -0
  12. package/dist/private.js +11 -0
  13. package/package.json +3 -2
  14. package/src/AppsInTossModule/native-event-emitter/StartUpdateLocationPermissionError.ts +1 -0
  15. package/src/AppsInTossModule/native-event-emitter/event-plugins/UpdateLocationEvent.ts +3 -3
  16. package/src/AppsInTossModule/native-event-emitter/index.ts +1 -0
  17. package/src/AppsInTossModule/native-event-emitter/internal/appBridge.ts +7 -1
  18. package/src/AppsInTossModule/native-event-emitter/startUpdateLocation.ts +64 -44
  19. package/src/AppsInTossModule/native-modules/AppsInTossModule.ts +22 -27
  20. package/src/AppsInTossModule/native-modules/getPermission.ts +1 -1
  21. package/src/AppsInTossModule/native-modules/index.ts +9 -6
  22. package/src/AppsInTossModule/native-modules/permissions/createPermissionFunction.ts +25 -0
  23. package/src/AppsInTossModule/native-modules/permissions/fetchAlbumPhotos/fetchAlbumPhotos.ts +109 -0
  24. package/src/AppsInTossModule/native-modules/{fetchContacts.ts → permissions/fetchContacts/fetchContacts.ts} +51 -40
  25. package/src/AppsInTossModule/native-modules/permissions/getClipboardText/getClipboardText.ts +87 -0
  26. package/src/AppsInTossModule/native-modules/permissions/getCurrentLocation/getCurrentLocation.ts +88 -0
  27. package/src/AppsInTossModule/native-modules/permissions/openCamera/openCamera.ts +99 -0
  28. package/src/AppsInTossModule/native-modules/{openPermissionDialog.ts → permissions/openPermissionDialog.ts} +3 -3
  29. package/src/AppsInTossModule/native-modules/{requestPermission.ts → permissions/requestPermission.ts} +2 -2
  30. package/src/AppsInTossModule/native-modules/permissions/setClipboardText/setClipboardText.ts +75 -0
  31. package/src/AppsInTossModule/native-modules/saveBase64Data.ts +1 -1
  32. package/src/async-bridges.ts +9 -6
  33. package/src/types.ts +0 -106
  34. package/src/AppsInTossModule/native-modules/fetchAlbumPhotos.ts +0 -88
  35. package/src/AppsInTossModule/native-modules/getClipboardText.ts +0 -47
  36. package/src/AppsInTossModule/native-modules/getCurrentLocation.ts +0 -65
  37. package/src/AppsInTossModule/native-modules/openCamera.ts +0 -81
  38. package/src/AppsInTossModule/native-modules/setClipboardText.ts +0 -39
package/dist/index.cjs CHANGED
@@ -20,7 +20,6 @@ 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: () => Accuracy,
24
23
  AppsInTossModule: () => AppsInTossModule,
25
24
  BedrockCoreModule: () => BedrockCoreModule,
26
25
  BedrockModule: () => BedrockModule,
@@ -29,6 +28,7 @@ __export(index_exports, {
29
28
  INTERNAL__AppsInTossModule: () => AppsInTossModuleInstance,
30
29
  INTERNAL__appBridgeHandler: () => INTERNAL__appBridgeHandler,
31
30
  INTERNAL__module: () => INTERNAL__module,
31
+ StartUpdateLocationPermissionError: () => import_types8.StartUpdateLocationPermissionError,
32
32
  Storage: () => Storage,
33
33
  TossPay: () => TossPay,
34
34
  appLogin: () => appLogin,
@@ -93,6 +93,7 @@ var HomeIconButtonClickHandleEvent = class extends import_react_native2.GraniteE
93
93
  };
94
94
 
95
95
  // src/AppsInTossModule/native-event-emitter/event-plugins/UpdateLocationEvent.ts
96
+ var import_types = require("@apps-in-toss/types");
96
97
  var import_react_native5 = require("@granite-js/react-native");
97
98
 
98
99
  // src/AppsInTossModule/native-modules/AppsInTossModule.ts
@@ -101,17 +102,17 @@ var Module = import_react_native3.TurboModuleRegistry.getEnforcing("AppsInTossMo
101
102
  var AppsInTossModuleInstance = Module;
102
103
  var AppsInTossModule = Module;
103
104
 
105
+ // src/AppsInTossModule/native-modules/permissions/openPermissionDialog.ts
106
+ function openPermissionDialog(permission) {
107
+ return AppsInTossModule.openPermissionDialog(permission);
108
+ }
109
+
104
110
  // src/AppsInTossModule/native-modules/getPermission.ts
105
111
  function getPermission(permission) {
106
112
  return AppsInTossModule.getPermission(permission);
107
113
  }
108
114
 
109
- // src/AppsInTossModule/native-modules/openPermissionDialog.ts
110
- function openPermissionDialog(permission) {
111
- return AppsInTossModule.openPermissionDialog(permission);
112
- }
113
-
114
- // src/AppsInTossModule/native-modules/requestPermission.ts
115
+ // src/AppsInTossModule/native-modules/permissions/requestPermission.ts
115
116
  async function requestPermission(permission) {
116
117
  const permissionStatus = await getPermission(permission);
117
118
  switch (permissionStatus) {
@@ -144,7 +145,7 @@ var UpdateLocationEvent = class extends import_react_native5.GraniteEventDefinit
144
145
  listener(options, onEvent, onError) {
145
146
  requestPermission({ name: "geolocation", access: "access" }).then((permissionStatus) => {
146
147
  if (permissionStatus === "denied") {
147
- onError(new Error("\uC704\uCE58 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694."));
148
+ onError(new import_types.GetCurrentLocationPermissionError());
148
149
  return;
149
150
  }
150
151
  void AppsInTossModuleInstance.startUpdateLocation(options).catch(onError);
@@ -175,7 +176,12 @@ function invokeAppBridgeCallback(id, ...args) {
175
176
  function invokeAppBridgeMethod(methodName, params, callbacks) {
176
177
  const { onSuccess, onError, ...appBridgeCallbacks } = callbacks;
177
178
  const { callbackMap, unregisterAll } = registerCallbacks(appBridgeCallbacks);
178
- const promise = AppsInTossModuleInstance[methodName]({
179
+ const method = AppsInTossModuleInstance[methodName];
180
+ if (method == null) {
181
+ onError(new Error(`'${methodName}' is not defined in AppsInTossModule`));
182
+ return unregisterAll;
183
+ }
184
+ const promise = method({
179
185
  params,
180
186
  callbacks: callbackMap
181
187
  });
@@ -280,9 +286,12 @@ var appsInTossEvent = new import_react_native8.GraniteEvent([
280
286
  new VisibilityChangedByTransparentServiceWebEvent()
281
287
  ]);
282
288
 
283
- // src/AppsInTossModule/native-event-emitter/startUpdateLocation.ts
284
- function startUpdateLocation(eventParams) {
285
- return appsInTossEvent.addEventListener("updateLocationEvent", eventParams);
289
+ // src/AppsInTossModule/native-modules/ads/googleAdMob.ts
290
+ var import_es_toolkit = require("es-toolkit");
291
+
292
+ // src/AppsInTossModule/native-modules/getOperationalEnvironment.ts
293
+ function getOperationalEnvironment() {
294
+ return AppsInTossModule.operationalEnvironment;
286
295
  }
287
296
 
288
297
  // src/AppsInTossModule/native-modules/isMinVersionSupported.ts
@@ -376,42 +385,6 @@ function isMinVersionSupported(minVersions) {
376
385
  return compareVersions(currentVersion, minVersion) >= 0;
377
386
  }
378
387
 
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
-
415
388
  // src/AppsInTossModule/native-modules/ads/googleAdMob.ts
416
389
  function loadAdMobInterstitialAd(params) {
417
390
  if (!loadAdMobInterstitialAd.isSupported()) {
@@ -615,54 +588,118 @@ async function eventLog(params) {
615
588
  });
616
589
  }
617
590
 
618
- // src/AppsInTossModule/native-modules/fetchAlbumPhotos.ts
591
+ // src/AppsInTossModule/native-modules/permissions/fetchAlbumPhotos/fetchAlbumPhotos.ts
592
+ var import_types2 = require("@apps-in-toss/types");
593
+
594
+ // src/AppsInTossModule/native-modules/permissions/createPermissionFunction.ts
595
+ function createPermissionFunction({
596
+ handler,
597
+ permission,
598
+ error
599
+ }) {
600
+ const permissionFunction = async (...args) => {
601
+ const permissionStatus = await requestPermission(permission);
602
+ if (permissionStatus === "denied") {
603
+ throw new error();
604
+ }
605
+ return handler(...args);
606
+ };
607
+ permissionFunction.getPermission = () => getPermission(permission);
608
+ permissionFunction.openPermissionDialog = () => openPermissionDialog(permission);
609
+ return permissionFunction;
610
+ }
611
+
612
+ // src/AppsInTossModule/native-modules/permissions/fetchAlbumPhotos/fetchAlbumPhotos.ts
619
613
  var DEFAULT_MAX_COUNT = 10;
620
614
  var DEFAULT_MAX_WIDTH = 1024;
621
- async function fetchAlbumPhotos(options) {
622
- const permissionStatus = await requestPermission({ name: "photos", access: "read" });
623
- if (permissionStatus === "denied") {
624
- throw new Error("\uC0AC\uC9C4\uCCA9 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
625
- }
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;
632
- }
615
+ var fetchAlbumPhotos = createPermissionFunction({
616
+ handler: async (options) => {
617
+ return AppsInTossModule.fetchAlbumPhotos({
618
+ ...options,
619
+ maxCount: options?.maxCount ?? DEFAULT_MAX_COUNT,
620
+ maxWidth: options?.maxWidth ?? DEFAULT_MAX_WIDTH
621
+ });
622
+ },
623
+ permission: {
624
+ name: "photos",
625
+ access: "read"
626
+ },
627
+ error: import_types2.FetchAlbumPhotosPermissionError
628
+ });
633
629
 
634
- // src/AppsInTossModule/native-modules/fetchContacts.ts
635
- async function fetchContacts(options) {
636
- const permissionStatus = await requestPermission({ name: "contacts", access: "read" });
637
- if (permissionStatus === "denied") {
638
- throw new Error("\uC5F0\uB77D\uCC98 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
639
- }
640
- const contacts = await AppsInTossModule.fetchContacts(options);
641
- return {
642
- result: contacts.result,
643
- nextOffset: contacts.nextOffset ?? null,
644
- done: contacts.done
645
- };
646
- }
630
+ // src/AppsInTossModule/native-modules/permissions/fetchContacts/fetchContacts.ts
631
+ var import_types3 = require("@apps-in-toss/types");
632
+ var fetchContacts = createPermissionFunction({
633
+ handler: async (options) => {
634
+ const contacts = await AppsInTossModule.fetchContacts(options);
635
+ return {
636
+ result: contacts.result,
637
+ nextOffset: contacts.nextOffset ?? null,
638
+ done: contacts.done
639
+ };
640
+ },
641
+ permission: {
642
+ name: "contacts",
643
+ access: "read"
644
+ },
645
+ error: import_types3.FetchContactsPermissionError
646
+ });
647
647
 
648
- // src/AppsInTossModule/native-modules/getClipboardText.ts
649
- async function getClipboardText() {
650
- const permissionStatus = await requestPermission({ name: "clipboard", access: "read" });
651
- if (permissionStatus === "denied") {
652
- throw new Error("\uD074\uB9BD\uBCF4\uB4DC \uC77D\uAE30 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
653
- }
654
- return AppsInTossModule.getClipboardText({});
655
- }
648
+ // src/AppsInTossModule/native-modules/permissions/getClipboardText/getClipboardText.ts
649
+ var import_types4 = require("@apps-in-toss/types");
650
+ var getClipboardText = createPermissionFunction({
651
+ handler: () => {
652
+ return AppsInTossModule.getClipboardText({});
653
+ },
654
+ permission: {
655
+ name: "clipboard",
656
+ access: "read"
657
+ },
658
+ error: import_types4.GetClipboardTextPermissionError
659
+ });
656
660
 
657
- // src/AppsInTossModule/native-modules/getCurrentLocation.ts
658
- async function getCurrentLocation(options) {
659
- const permissionStatus = await requestPermission({ name: "geolocation", access: "access" });
660
- if (permissionStatus === "denied") {
661
- throw new Error("\uC704\uCE58 \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
662
- }
663
- const position = await AppsInTossModule.getCurrentLocation(options);
664
- return position;
665
- }
661
+ // src/AppsInTossModule/native-modules/permissions/getCurrentLocation/getCurrentLocation.ts
662
+ var import_types5 = require("@apps-in-toss/types");
663
+ var getCurrentLocation = createPermissionFunction({
664
+ handler: async (options) => {
665
+ return AppsInTossModule.getCurrentLocation(options);
666
+ },
667
+ permission: {
668
+ name: "geolocation",
669
+ access: "access"
670
+ },
671
+ error: import_types5.GetCurrentLocationPermissionError
672
+ });
673
+
674
+ // src/AppsInTossModule/native-modules/permissions/setClipboardText/setClipboardText.ts
675
+ var import_types6 = require("@apps-in-toss/types");
676
+ var setClipboardText = createPermissionFunction({
677
+ handler: (text) => {
678
+ return AppsInTossModule.setClipboardText({ text });
679
+ },
680
+ permission: {
681
+ name: "clipboard",
682
+ access: "write"
683
+ },
684
+ error: import_types6.SetClipboardTextPermissionError
685
+ });
686
+
687
+ // src/AppsInTossModule/native-modules/permissions/openCamera/openCamera.ts
688
+ var import_types7 = require("@apps-in-toss/types");
689
+ var openCamera = createPermissionFunction({
690
+ handler: (options) => {
691
+ return AppsInTossModule.openCamera({
692
+ base64: false,
693
+ maxWidth: 1024,
694
+ ...options
695
+ });
696
+ },
697
+ permission: {
698
+ name: "camera",
699
+ access: "access"
700
+ },
701
+ error: import_types7.OpenCameraPermissionError
702
+ });
666
703
 
667
704
  // src/AppsInTossModule/native-modules/getDeviceId.ts
668
705
  function getDeviceId() {
@@ -709,16 +746,6 @@ var IAP = {
709
746
  getProductItemList
710
747
  };
711
748
 
712
- // src/AppsInTossModule/native-modules/openCamera.ts
713
- async function openCamera(options) {
714
- const permissionStatus = await requestPermission({ name: "camera", access: "access" });
715
- if (permissionStatus === "denied") {
716
- throw new Error("\uCE74\uBA54\uB77C \uAD8C\uD55C\uC774 \uAC70\uBD80\uB418\uC5C8\uC5B4\uC694.");
717
- }
718
- const photo = await AppsInTossModule.openCamera({ base64: false, maxWidth: 1024, ...options });
719
- return photo;
720
- }
721
-
722
749
  // src/AppsInTossModule/native-modules/saveBase64Data.ts
723
750
  async function saveBase64Data(params) {
724
751
  const isSupported = isMinVersionSupported({
@@ -732,15 +759,6 @@ async function saveBase64Data(params) {
732
759
  await AppsInTossModule.saveBase64Data(params);
733
760
  }
734
761
 
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 });
742
- }
743
-
744
762
  // src/AppsInTossModule/native-modules/setDeviceOrientation.ts
745
763
  async function setDeviceOrientation(options) {
746
764
  const isSupported = isMinVersionSupported({
@@ -818,6 +836,29 @@ async function submitGameCenterLeaderBoardScore(params) {
818
836
  return AppsInTossModule.submitGameCenterLeaderBoardScore(params);
819
837
  }
820
838
 
839
+ // src/AppsInTossModule/native-event-emitter/contactsViral.ts
840
+ function contactsViral(params) {
841
+ const isSupported = isMinVersionSupported({
842
+ android: "5.223.0",
843
+ ios: "5.223.0"
844
+ });
845
+ if (!isSupported) {
846
+ return () => {
847
+ };
848
+ }
849
+ const { onEvent, onError, options } = params;
850
+ const unregisterCallbacks = INTERNAL__appBridgeHandler.invokeAppBridgeMethod("contactsViral", options, {
851
+ onRewardFromContactsViral: (result) => {
852
+ onEvent({ type: "sendViral", data: result });
853
+ },
854
+ onSuccess: (result) => {
855
+ onEvent({ type: "close", data: result });
856
+ },
857
+ onError
858
+ });
859
+ return unregisterCallbacks;
860
+ }
861
+
821
862
  // src/AppsInTossModule/native-modules/index.ts
822
863
  var TossPay = {
823
864
  checkoutPayment
@@ -831,6 +872,21 @@ var GoogleAdMob = {
831
872
  showAppsInTossAdMob
832
873
  };
833
874
 
875
+ // src/AppsInTossModule/native-event-emitter/startUpdateLocation.ts
876
+ function startUpdateLocation(eventParams) {
877
+ return appsInTossEvent.addEventListener("updateLocationEvent", eventParams);
878
+ }
879
+ startUpdateLocation.openPermissionDialog = getCurrentLocation.openPermissionDialog;
880
+ startUpdateLocation.getPermission = getCurrentLocation.getPermission;
881
+
882
+ // src/AppsInTossModule/native-event-emitter/StartUpdateLocationPermissionError.ts
883
+ var import_types8 = require("@apps-in-toss/types");
884
+
885
+ // src/AppsInTossModule/native-event-emitter/internal/onVisibilityChangedByTransparentServiceWeb.ts
886
+ function onVisibilityChangedByTransparentServiceWeb(eventParams) {
887
+ return appsInTossEvent.addEventListener("onVisibilityChangedByTransparentServiceWeb", eventParams);
888
+ }
889
+
834
890
  // src/BedrockModule/native-modules/natives/BedrockModule.ts
835
891
  var import_react_native11 = require("react-native");
836
892
  var BedrockModule = import_react_native11.NativeModules.BedrockModule;
@@ -907,17 +963,6 @@ function getPlatformOS() {
907
963
  var import_react_native15 = require("react-native");
908
964
  var BedrockCoreModule = import_react_native15.NativeModules.BedrockCoreModule;
909
965
 
910
- // src/types.ts
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 || {});
920
-
921
966
  // src/AppsInTossModule/native-modules/tossCore.ts
922
967
  var import_react_native16 = require("react-native");
923
968
  var TossCoreModule = import_react_native16.NativeModules.TossCoreModule;
@@ -942,7 +987,6 @@ var INTERNAL__module = {
942
987
  };
943
988
  // Annotate the CommonJS export names for ESM import in node:
944
989
  0 && (module.exports = {
945
- Accuracy,
946
990
  AppsInTossModule,
947
991
  BedrockCoreModule,
948
992
  BedrockModule,
@@ -951,6 +995,7 @@ var INTERNAL__module = {
951
995
  INTERNAL__AppsInTossModule,
952
996
  INTERNAL__appBridgeHandler,
953
997
  INTERNAL__module,
998
+ StartUpdateLocationPermissionError,
954
999
  Storage,
955
1000
  TossPay,
956
1001
  appLogin,