@apps-in-toss/web-framework 0.0.13 → 0.0.15

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 (36) hide show
  1. package/dist/cli/index.js +1675 -1584
  2. package/dist/config/index.d.ts +22 -30
  3. package/dist/config/index.js +1 -0
  4. package/dist/prebuilt/dev.android.js +72675 -1222
  5. package/dist/prebuilt/dev.ios.js +72679 -1303
  6. package/dist/prebuilt/prod.android.js +9 -5
  7. package/dist/prebuilt/prod.ios.js +9 -5
  8. package/dist/prebuilt/prod.json +6 -6
  9. package/{src-web/index.d.ts → dist-web/bridge.d.ts} +3 -0
  10. package/dist-web/bridge.js +1 -0
  11. package/dist-web/checkoutPayment.d.ts +125 -0
  12. package/dist-web/executePayment.d.ts +266 -0
  13. package/dist-web/index.d.ts +70 -0
  14. package/dist-web/index.js +144 -0
  15. package/dist-web/setIosSwipeGestureEnabled.d.ts +39 -0
  16. package/package.json +15 -15
  17. package/src-web/index.js +0 -1
  18. /package/{src-web → dist-web}/appLogin.d.ts +0 -0
  19. /package/{src-web → dist-web}/closeView.d.ts +0 -0
  20. /package/{src-web → dist-web}/fetchAlbumPhotos.d.ts +0 -0
  21. /package/{src-web → dist-web}/fetchContacts.d.ts +0 -0
  22. /package/{src-web → dist-web}/generateHapticFeedback.d.ts +0 -0
  23. /package/{src-web → dist-web}/getClipboardText.d.ts +0 -0
  24. /package/{src-web → dist-web}/getCurrentLocation.d.ts +0 -0
  25. /package/{src-web → dist-web}/getDeviceId.d.ts +0 -0
  26. /package/{src-web → dist-web}/getLocale.d.ts +0 -0
  27. /package/{src-web → dist-web}/getNetworkStatus.d.ts +0 -0
  28. /package/{src-web → dist-web}/getOperationalEnvironment.d.ts +0 -0
  29. /package/{src-web → dist-web}/getPlatformOS.d.ts +0 -0
  30. /package/{src-web → dist-web}/getSchemeUri.d.ts +0 -0
  31. /package/{src-web → dist-web}/openCamera.d.ts +0 -0
  32. /package/{src-web → dist-web}/setClipboardText.d.ts +0 -0
  33. /package/{src-web → dist-web}/setScreenAwakeMode.d.ts +0 -0
  34. /package/{src-web → dist-web}/setSecureScreen.d.ts +0 -0
  35. /package/{src-web → dist-web}/share.d.ts +0 -0
  36. /package/{src-web → dist-web}/startUpdateLocation.d.ts +0 -0
@@ -1,33 +1,11 @@
1
- type NotNill<T> = T extends null | undefined ? never : T;
2
- type Primitive = undefined | null | boolean | string | number;
3
- type DeepRequired<T> = T extends Primitive ? NotNill<T> : T extends Array<infer U> ? Array<DeepRequired<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepRequired<U>> : {
4
- [P in keyof T]-?: DeepRequired<T[P]>;
5
- };
1
+ import { AppsInTossPluginOptions } from '@apps-in-toss/framework/plugins';
6
2
 
7
- type PermissionReadWrite = 'read' | 'write';
8
- type PermissionAccess = 'access';
9
- type ClipboardPermission = {
10
- name: 'clipboard';
11
- access: PermissionReadWrite;
12
- };
13
- type GeolocationPermission = {
14
- name: 'geolocation';
15
- access: PermissionAccess;
16
- };
17
- type ContactsPermission = {
18
- name: 'contacts';
19
- access: PermissionReadWrite;
3
+ type F = (...args: any[]) => any;
4
+ type DeepRequiredKeysOnly<T> = {
5
+ [K in keyof T]-?: T[K] extends object ? (T[K] extends F ? T[K] : DeepRequiredKeysOnly<T[K]>) : T[K];
20
6
  };
21
- type PhotosPermission = {
22
- name: 'photos';
23
- access: PermissionReadWrite;
24
- };
25
- type CameraPermission = {
26
- name: 'camera';
27
- access: PermissionAccess;
28
- };
29
- type Permission = ClipboardPermission | GeolocationPermission | ContactsPermission | PhotosPermission | CameraPermission;
30
- interface AppsInTossWebConfig {
7
+
8
+ interface AppsInTossWebConfig extends AppsInTossPluginOptions {
31
9
  appName: string;
32
10
  web: {
33
11
  /**
@@ -41,6 +19,21 @@ interface AppsInTossWebConfig {
41
19
  };
42
20
  };
43
21
  webViewProps?: {
22
+ /**
23
+ * WebView frame type
24
+ *
25
+ * @default 'partner'
26
+ */
27
+ type?: 'partner' | 'external' | 'game';
28
+ /**
29
+ * WebView header props
30
+ */
31
+ header?: {
32
+ /**
33
+ * Defaults to `true` when type is 'partner', `false` when type is 'external'
34
+ */
35
+ withBackButton?: boolean;
36
+ };
44
37
  /**
45
38
  *
46
39
  * @default false
@@ -75,13 +68,12 @@ interface AppsInTossWebConfig {
75
68
  */
76
69
  overScrollMode?: 'never' | 'always' | 'auto';
77
70
  };
78
- permissions: Permission[];
79
71
  /**
80
72
  * @default 'dist'
81
73
  */
82
74
  outdir?: string;
83
75
  }
84
- type AppsInTossWebConfigResponse = DeepRequired<AppsInTossWebConfig>;
76
+ type AppsInTossWebConfigResponse = DeepRequiredKeysOnly<AppsInTossWebConfig>;
85
77
  declare const defineConfig: (config: AppsInTossWebConfig) => AppsInTossWebConfigResponse;
86
78
 
87
79
  export { type AppsInTossWebConfig, type AppsInTossWebConfigResponse, defineConfig };
@@ -45,6 +45,7 @@ var defineConfig = (config) => {
45
45
  host: "localhost"
46
46
  },
47
47
  webViewProps: {
48
+ type: "partner",
48
49
  allowsInlineMediaPlayback: false,
49
50
  bounces: true,
50
51
  pullToRefreshEnabled: true,