@crossmint/client-sdk-react-native-ui 0.13.32 → 0.13.34

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 (241) hide show
  1. package/dist/chunk-24MMQ2R4.js +15 -0
  2. package/dist/chunk-24MMQ2R4.js.map +1 -0
  3. package/dist/chunk-2DNOAXOE.mjs +8 -0
  4. package/dist/chunk-2DNOAXOE.mjs.map +1 -0
  5. package/dist/chunk-2TEAOLM6.mjs +149 -0
  6. package/dist/chunk-2TEAOLM6.mjs.map +1 -0
  7. package/dist/chunk-2YRJHM46.mjs +50 -0
  8. package/dist/chunk-2YRJHM46.mjs.map +1 -0
  9. package/dist/chunk-34OVOZB2.mjs +111 -0
  10. package/dist/chunk-34OVOZB2.mjs.map +1 -0
  11. package/dist/chunk-3AWDWMZ2.mjs +18 -0
  12. package/dist/chunk-3AWDWMZ2.mjs.map +1 -0
  13. package/dist/chunk-3MWGBZ5O.js +348 -0
  14. package/dist/chunk-3MWGBZ5O.js.map +1 -0
  15. package/dist/chunk-3PJ6FXFT.mjs +1 -0
  16. package/dist/chunk-3PJ6FXFT.mjs.map +1 -0
  17. package/dist/chunk-3SFSPJXM.mjs +55 -0
  18. package/dist/chunk-3SFSPJXM.mjs.map +1 -0
  19. package/dist/chunk-4AJTICKY.mjs +44 -0
  20. package/dist/chunk-4AJTICKY.mjs.map +1 -0
  21. package/dist/chunk-4HKXTAVR.js +14 -0
  22. package/dist/chunk-4HKXTAVR.js.map +1 -0
  23. package/dist/chunk-4NTIGHRE.js +148 -0
  24. package/dist/chunk-4NTIGHRE.js.map +1 -0
  25. package/dist/chunk-4V7NDO5X.mjs +157 -0
  26. package/dist/chunk-4V7NDO5X.mjs.map +1 -0
  27. package/dist/chunk-4WJIXD7U.mjs +14 -0
  28. package/dist/chunk-4WJIXD7U.mjs.map +1 -0
  29. package/dist/chunk-5ZBDQUNG.js +1 -0
  30. package/dist/chunk-5ZBDQUNG.js.map +1 -0
  31. package/dist/chunk-6W2GOMYU.js +22 -0
  32. package/dist/chunk-6W2GOMYU.js.map +1 -0
  33. package/dist/chunk-6Z74KC25.mjs +1 -0
  34. package/dist/chunk-6Z74KC25.mjs.map +1 -0
  35. package/dist/chunk-7SPIOD4K.mjs +66 -0
  36. package/dist/chunk-7SPIOD4K.mjs.map +1 -0
  37. package/dist/chunk-ALMDA3KN.mjs +199 -0
  38. package/dist/chunk-ALMDA3KN.mjs.map +1 -0
  39. package/dist/chunk-BE4HT2U7.mjs +1 -0
  40. package/dist/chunk-BE4HT2U7.mjs.map +1 -0
  41. package/dist/chunk-BTH5QRIT.js +149 -0
  42. package/dist/chunk-BTH5QRIT.js.map +1 -0
  43. package/dist/chunk-BUB4U2GE.js +44 -0
  44. package/dist/chunk-BUB4U2GE.js.map +1 -0
  45. package/dist/chunk-BUTZZ7JB.js +36 -0
  46. package/dist/chunk-BUTZZ7JB.js.map +1 -0
  47. package/dist/chunk-CFHHVHNZ.mjs +157 -0
  48. package/dist/chunk-CFHHVHNZ.mjs.map +1 -0
  49. package/dist/chunk-DD2MVD6A.mjs +36 -0
  50. package/dist/chunk-DD2MVD6A.mjs.map +1 -0
  51. package/dist/chunk-EKXEDMRD.mjs +71 -0
  52. package/dist/chunk-EKXEDMRD.mjs.map +1 -0
  53. package/dist/chunk-GYBEEYGB.mjs +1 -0
  54. package/dist/chunk-GYBEEYGB.mjs.map +1 -0
  55. package/dist/chunk-HELXBZ7D.js +18 -0
  56. package/dist/chunk-HELXBZ7D.js.map +1 -0
  57. package/dist/chunk-IBQK5B7B.js +71 -0
  58. package/dist/chunk-IBQK5B7B.js.map +1 -0
  59. package/dist/chunk-IHZNXV5S.js +1 -0
  60. package/dist/chunk-IHZNXV5S.js.map +1 -0
  61. package/dist/chunk-J2MDWDV6.mjs +1 -0
  62. package/dist/chunk-J2MDWDV6.mjs.map +1 -0
  63. package/dist/chunk-KK4SQ7WF.js +1 -0
  64. package/dist/chunk-KK4SQ7WF.js.map +1 -0
  65. package/dist/chunk-LMXGU2XA.js +50 -0
  66. package/dist/chunk-LMXGU2XA.js.map +1 -0
  67. package/dist/chunk-LWQ5CJC4.mjs +22 -0
  68. package/dist/chunk-LWQ5CJC4.mjs.map +1 -0
  69. package/dist/chunk-MMVER6VO.js +1 -0
  70. package/dist/chunk-MMVER6VO.js.map +1 -0
  71. package/dist/chunk-MVLQR6RI.js +199 -0
  72. package/dist/chunk-MVLQR6RI.js.map +1 -0
  73. package/dist/chunk-NBWATZY4.js +157 -0
  74. package/dist/chunk-NBWATZY4.js.map +1 -0
  75. package/dist/chunk-NSSAF6CV.mjs +348 -0
  76. package/dist/chunk-NSSAF6CV.mjs.map +1 -0
  77. package/dist/chunk-OLVGVQEA.js +24 -0
  78. package/dist/chunk-OLVGVQEA.js.map +1 -0
  79. package/dist/chunk-OTRMAWWU.js +55 -0
  80. package/dist/chunk-OTRMAWWU.js.map +1 -0
  81. package/dist/chunk-Q2Y5CZT4.js +157 -0
  82. package/dist/chunk-Q2Y5CZT4.js.map +1 -0
  83. package/dist/chunk-Q7YPX4RJ.js +66 -0
  84. package/dist/chunk-Q7YPX4RJ.js.map +1 -0
  85. package/dist/chunk-R2M3HW3E.mjs +61 -0
  86. package/dist/chunk-R2M3HW3E.mjs.map +1 -0
  87. package/dist/chunk-R3ZW4OCR.js +61 -0
  88. package/dist/chunk-R3ZW4OCR.js.map +1 -0
  89. package/dist/chunk-R47XMJ32.js +1 -0
  90. package/dist/chunk-R47XMJ32.js.map +1 -0
  91. package/dist/chunk-R5GF6WFB.mjs +148 -0
  92. package/dist/chunk-R5GF6WFB.mjs.map +1 -0
  93. package/dist/chunk-RSCBYS6I.mjs +15 -0
  94. package/dist/chunk-RSCBYS6I.mjs.map +1 -0
  95. package/dist/chunk-TNPZITVL.mjs +1 -0
  96. package/dist/chunk-TNPZITVL.mjs.map +1 -0
  97. package/dist/chunk-U74INGIF.js +17 -0
  98. package/dist/chunk-U74INGIF.js.map +1 -0
  99. package/dist/chunk-V2PIS2OC.mjs +17 -0
  100. package/dist/chunk-V2PIS2OC.mjs.map +1 -0
  101. package/dist/chunk-VCF2YXCO.js +208 -0
  102. package/dist/chunk-VCF2YXCO.js.map +1 -0
  103. package/dist/chunk-XNVZRSGL.js +111 -0
  104. package/dist/chunk-XNVZRSGL.js.map +1 -0
  105. package/dist/chunk-XUGJXLWC.js +8 -0
  106. package/dist/chunk-XUGJXLWC.js.map +1 -0
  107. package/dist/chunk-XXJ7LQ44.js +1 -0
  108. package/dist/chunk-XXJ7LQ44.js.map +1 -0
  109. package/dist/chunk-YAVGI5BZ.mjs +24 -0
  110. package/dist/chunk-YAVGI5BZ.mjs.map +1 -0
  111. package/dist/chunk-Z7Y7COJM.mjs +208 -0
  112. package/dist/chunk-Z7Y7COJM.mjs.map +1 -0
  113. package/dist/components/embed/index.js +16 -1
  114. package/dist/components/embed/index.js.map +1 -0
  115. package/dist/components/embed/index.mjs +16 -1
  116. package/dist/components/embed/index.mjs.map +1 -0
  117. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.js +14 -1
  118. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.js.map +1 -0
  119. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.mjs +14 -1
  120. package/dist/components/embed/v3/CrossmintEmbeddedCheckoutV3.mjs.map +1 -0
  121. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.js +13 -1
  122. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.js.map +1 -0
  123. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.mjs +13 -1
  124. package/dist/components/embed/v3/EmbeddedCheckoutV3WebView.mjs.map +1 -0
  125. package/dist/components/embed/v3/crypto/PayerConnectionHandler.js +8 -1
  126. package/dist/components/embed/v3/crypto/PayerConnectionHandler.js.map +1 -0
  127. package/dist/components/embed/v3/crypto/PayerConnectionHandler.mjs +8 -1
  128. package/dist/components/embed/v3/crypto/PayerConnectionHandler.mjs.map +1 -0
  129. package/dist/components/embed/v3/index.js +15 -1
  130. package/dist/components/embed/v3/index.js.map +1 -0
  131. package/dist/components/embed/v3/index.mjs +15 -1
  132. package/dist/components/embed/v3/index.mjs.map +1 -0
  133. package/dist/components/index.js +34 -1
  134. package/dist/components/index.js.map +1 -0
  135. package/dist/components/index.mjs +34 -1
  136. package/dist/components/index.mjs.map +1 -0
  137. package/dist/components/signers/BaseCodeInput.js +9 -1
  138. package/dist/components/signers/BaseCodeInput.js.map +1 -0
  139. package/dist/components/signers/BaseCodeInput.mjs +9 -1
  140. package/dist/components/signers/BaseCodeInput.mjs.map +1 -0
  141. package/dist/components/signers/BaseConfirmation.js +9 -1
  142. package/dist/components/signers/BaseConfirmation.js.map +1 -0
  143. package/dist/components/signers/BaseConfirmation.mjs +9 -1
  144. package/dist/components/signers/BaseConfirmation.mjs.map +1 -0
  145. package/dist/components/signers/EmailSignersDialog.js +11 -1
  146. package/dist/components/signers/EmailSignersDialog.js.map +1 -0
  147. package/dist/components/signers/EmailSignersDialog.mjs +11 -1
  148. package/dist/components/signers/EmailSignersDialog.mjs.map +1 -0
  149. package/dist/components/signers/PhoneSignersDialog.js +11 -1
  150. package/dist/components/signers/PhoneSignersDialog.js.map +1 -0
  151. package/dist/components/signers/PhoneSignersDialog.mjs +11 -1
  152. package/dist/components/signers/PhoneSignersDialog.mjs.map +1 -0
  153. package/dist/components/signers/index.js +16 -1
  154. package/dist/components/signers/index.js.map +1 -0
  155. package/dist/components/signers/index.mjs +16 -1
  156. package/dist/components/signers/index.mjs.map +1 -0
  157. package/dist/components/wallets/ExportPrivateKeyButton.js +8 -1
  158. package/dist/components/wallets/ExportPrivateKeyButton.js.map +1 -0
  159. package/dist/components/wallets/ExportPrivateKeyButton.mjs +8 -1
  160. package/dist/components/wallets/ExportPrivateKeyButton.mjs.map +1 -0
  161. package/dist/components/wallets/index.js +9 -1
  162. package/dist/components/wallets/index.js.map +1 -0
  163. package/dist/components/wallets/index.mjs +9 -1
  164. package/dist/components/wallets/index.mjs.map +1 -0
  165. package/dist/hooks/index.js +26 -1
  166. package/dist/hooks/index.js.map +1 -0
  167. package/dist/hooks/index.mjs +26 -1
  168. package/dist/hooks/index.mjs.map +1 -0
  169. package/dist/hooks/useAuth.js +14 -1
  170. package/dist/hooks/useAuth.js.map +1 -0
  171. package/dist/hooks/useAuth.mjs +14 -1
  172. package/dist/hooks/useAuth.mjs.map +1 -0
  173. package/dist/hooks/useCrossmintCheckout.js +11 -1
  174. package/dist/hooks/useCrossmintCheckout.js.map +1 -0
  175. package/dist/hooks/useCrossmintCheckout.mjs +11 -1
  176. package/dist/hooks/useCrossmintCheckout.mjs.map +1 -0
  177. package/dist/hooks/useWalletEmailSigner.js +8 -1
  178. package/dist/hooks/useWalletEmailSigner.js.map +1 -0
  179. package/dist/hooks/useWalletEmailSigner.mjs +8 -1
  180. package/dist/hooks/useWalletEmailSigner.mjs.map +1 -0
  181. package/dist/index.js +79 -1
  182. package/dist/index.js.map +1 -0
  183. package/dist/index.mjs +79 -1
  184. package/dist/index.mjs.map +1 -0
  185. package/dist/logger/init.js +9 -1
  186. package/dist/logger/init.js.map +1 -0
  187. package/dist/logger/init.mjs +9 -1
  188. package/dist/logger/init.mjs.map +1 -0
  189. package/dist/plugin/mods/addQueryToAndroidManifest.js +8 -1
  190. package/dist/plugin/mods/addQueryToAndroidManifest.js.map +1 -0
  191. package/dist/plugin/mods/addQueryToAndroidManifest.mjs +8 -1
  192. package/dist/plugin/mods/addQueryToAndroidManifest.mjs.map +1 -0
  193. package/dist/plugin/withGooglePay.js +57 -1
  194. package/dist/plugin/withGooglePay.js.map +1 -0
  195. package/dist/plugin/withGooglePay.mjs +57 -1
  196. package/dist/plugin/withGooglePay.mjs.map +1 -0
  197. package/dist/providers/CrossmintAuthProvider.js +14 -1
  198. package/dist/providers/CrossmintAuthProvider.js.map +1 -0
  199. package/dist/providers/CrossmintAuthProvider.mjs +14 -1
  200. package/dist/providers/CrossmintAuthProvider.mjs.map +1 -0
  201. package/dist/providers/CrossmintProvider.js +12 -1
  202. package/dist/providers/CrossmintProvider.js.map +1 -0
  203. package/dist/providers/CrossmintProvider.mjs +12 -1
  204. package/dist/providers/CrossmintProvider.mjs.map +1 -0
  205. package/dist/providers/CrossmintWalletProvider.js +16 -1
  206. package/dist/providers/CrossmintWalletProvider.js.map +1 -0
  207. package/dist/providers/CrossmintWalletProvider.mjs +16 -1
  208. package/dist/providers/CrossmintWalletProvider.mjs.map +1 -0
  209. package/dist/providers/index.js +28 -1
  210. package/dist/providers/index.js.map +1 -0
  211. package/dist/providers/index.mjs +28 -1
  212. package/dist/providers/index.mjs.map +1 -0
  213. package/dist/styles/index.js +8 -1
  214. package/dist/styles/index.js.map +1 -0
  215. package/dist/styles/index.mjs +8 -1
  216. package/dist/styles/index.mjs.map +1 -0
  217. package/dist/styles/theme.js +8 -1
  218. package/dist/styles/theme.js.map +1 -0
  219. package/dist/styles/theme.mjs +8 -1
  220. package/dist/styles/theme.mjs.map +1 -0
  221. package/dist/types/auth.js +1 -1
  222. package/dist/types/auth.js.map +1 -0
  223. package/dist/types/auth.mjs +1 -0
  224. package/dist/types/auth.mjs.map +1 -0
  225. package/dist/utils/SecureStorage.js +8 -1
  226. package/dist/utils/SecureStorage.js.map +1 -0
  227. package/dist/utils/SecureStorage.mjs +8 -1
  228. package/dist/utils/SecureStorage.mjs.map +1 -0
  229. package/dist/utils/createCrossmintApiClient.js +9 -1
  230. package/dist/utils/createCrossmintApiClient.js.map +1 -0
  231. package/dist/utils/createCrossmintApiClient.mjs +9 -1
  232. package/dist/utils/createCrossmintApiClient.mjs.map +1 -0
  233. package/dist/utils/embed/userAgent.js +12 -1
  234. package/dist/utils/embed/userAgent.js.map +1 -0
  235. package/dist/utils/embed/userAgent.mjs +12 -1
  236. package/dist/utils/embed/userAgent.mjs.map +1 -0
  237. package/dist/utils/eventEmitter.js +8 -1
  238. package/dist/utils/eventEmitter.js.map +1 -0
  239. package/dist/utils/eventEmitter.mjs +8 -1
  240. package/dist/utils/eventEmitter.mjs.map +1 -0
  241. package/package.json +58 -54
@@ -0,0 +1,148 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunk24MMQ2R4js = require('./chunk-24MMQ2R4.js');
4
+
5
+
6
+ var _chunkBUB4U2GEjs = require('./chunk-BUB4U2GE.js');
7
+
8
+
9
+ var _chunk6W2GOMYUjs = require('./chunk-6W2GOMYU.js');
10
+
11
+
12
+ var _chunkXUGJXLWCjs = require('./chunk-XUGJXLWC.js');
13
+
14
+
15
+
16
+ var _chunkQ7YPX4RJjs = require('./chunk-Q7YPX4RJ.js');
17
+
18
+ // src/components/embed/v3/EmbeddedCheckoutV3WebView.tsx
19
+ var _clientsdkreactbase = require('@crossmint/client-sdk-react-base');
20
+ var _react = require('react');
21
+ var _reactnative = require('react-native');
22
+ var _clientsdkbase = require('@crossmint/client-sdk-base');
23
+ var _clientsdkrnwindow = require('@crossmint/client-sdk-rn-window');
24
+
25
+ var _jsxruntime = require('react/jsx-runtime');
26
+ function EmbeddedCheckoutV3WebView(props) {
27
+ var _a;
28
+ const [webViewClient, setWebViewClient] = _react.useState.call(void 0, null);
29
+ const [height, setHeight] = _react.useState.call(void 0, 0);
30
+ const initialChainRef = _react.useRef.call(void 0, (_a = props.payment.crypto.payer) == null ? void 0 : _a.initialChain);
31
+ const memoizedProps = _react.useRef.call(void 0, props);
32
+ if (havePropsChanged(props, memoizedProps.current)) {
33
+ const newProps = _chunkQ7YPX4RJjs.__spreadValues.call(void 0, {}, props);
34
+ const initialChainPreservation = shouldPreserveInitialChain(props, initialChainRef.current);
35
+ if (initialChainPreservation.shouldPreserve) {
36
+ newProps.payment.crypto.payer = initialChainPreservation.updatedPayer;
37
+ }
38
+ memoizedProps.current = newProps;
39
+ }
40
+ const { crossmint } = _clientsdkreactbase.useCrossmint.call(void 0, );
41
+ const apiClient = _chunk6W2GOMYUjs.createCrossmintApiClient.call(void 0, crossmint, {
42
+ usageOrigin: "client"
43
+ });
44
+ const embeddedCheckoutService = _clientsdkbase.crossmintEmbeddedCheckoutV3Service.call(void 0, { apiClient });
45
+ const webViewRef = _react.useRef.call(void 0, null);
46
+ _react.useEffect.call(void 0, () => {
47
+ const webView = webViewRef.current;
48
+ if (!webView || webViewClient) {
49
+ return;
50
+ }
51
+ const client = new (0, _clientsdkrnwindow.WebViewParent)(
52
+ { current: webView },
53
+ {
54
+ incomingEvents: _clientsdkbase.embeddedCheckoutV3IncomingEvents,
55
+ outgoingEvents: _clientsdkbase.embeddedCheckoutV3OutgoingEvents
56
+ }
57
+ );
58
+ setWebViewClient(client);
59
+ }, [webViewRef.current, webViewClient]);
60
+ _react.useEffect.call(void 0, () => {
61
+ if (webViewClient == null) {
62
+ return;
63
+ }
64
+ const handleHeightChanged = (data) => setHeight(data.height);
65
+ webViewClient.on("ui:height.changed", handleHeightChanged);
66
+ const handleOrderUpdated = (data) => {
67
+ _chunkXUGJXLWCjs.localEventEmitter.emit("order:updated", data);
68
+ };
69
+ webViewClient.on("order:updated", handleOrderUpdated);
70
+ return () => {
71
+ webViewClient.off("ui:height.changed");
72
+ webViewClient.off("order:updated");
73
+ };
74
+ }, [webViewClient]);
75
+ const handleMessage = (event) => {
76
+ if (webViewClient) {
77
+ webViewClient.handleMessage(event);
78
+ }
79
+ };
80
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _reactnative.View, { style: { flex: 1 }, children: [
81
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
82
+ _clientsdkrnwindow.RNWebView,
83
+ {
84
+ ref: webViewRef,
85
+ globals: crossmint.appId ? { crossmintAppId: crossmint.appId } : void 0,
86
+ source: { uri: embeddedCheckoutService.iframe.getUrl(memoizedProps.current) },
87
+ onMessage: handleMessage,
88
+ style: {
89
+ width: "100%",
90
+ minWidth: "100%",
91
+ height,
92
+ backgroundColor: "transparent",
93
+ overflow: void 0,
94
+ opacity: 1,
95
+ padding: 0,
96
+ boxShadow: "none",
97
+ borderWidth: 0,
98
+ transform: [{ translateX: 0 }]
99
+ },
100
+ allowsInlineMediaPlayback: true,
101
+ mediaPlaybackRequiresUserAction: false,
102
+ allowsBackForwardNavigationGestures: false,
103
+ allowsLinkPreview: false,
104
+ scrollEnabled: true,
105
+ bounces: false,
106
+ showsHorizontalScrollIndicator: false,
107
+ showsVerticalScrollIndicator: false,
108
+ domStorageEnabled: true,
109
+ mixedContentMode: "always",
110
+ allowFileAccess: true,
111
+ allowUniversalAccessFromFileURLs: true,
112
+ geolocationEnabled: true,
113
+ userAgent: _chunk24MMQ2R4js.userAgent,
114
+ paymentRequestEnabled: true
115
+ }
116
+ ),
117
+ memoizedProps.current.payment.crypto.enabled ? memoizedProps.current.payment.crypto.payer != null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
118
+ _chunkBUB4U2GEjs.PayerConnectionHandler,
119
+ {
120
+ payer: memoizedProps.current.payment.crypto.payer,
121
+ webViewClient
122
+ }
123
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ThrowError, { message: "If 'payment.crypto.enabled' is true, 'payment.crypto.payer' must be provided. Support for not providing a payer is not yet implemented." }) : null
124
+ ] });
125
+ }
126
+ function havePropsChanged(parentProps, currentRefProps) {
127
+ return JSON.stringify(parentProps) !== JSON.stringify(currentRefProps);
128
+ }
129
+ function shouldPreserveInitialChain(props, storedInitialChain) {
130
+ if (props.payment.crypto.payer && storedInitialChain != null) {
131
+ return {
132
+ shouldPreserve: true,
133
+ updatedPayer: _chunkQ7YPX4RJjs.__spreadProps.call(void 0, _chunkQ7YPX4RJjs.__spreadValues.call(void 0, {}, props.payment.crypto.payer), {
134
+ initialChain: storedInitialChain
135
+ })
136
+ };
137
+ }
138
+ return { shouldPreserve: false };
139
+ }
140
+ function ThrowError({ message }) {
141
+ throw new Error(message);
142
+ return null;
143
+ }
144
+
145
+
146
+
147
+ exports.EmbeddedCheckoutV3WebView = EmbeddedCheckoutV3WebView;
148
+ //# sourceMappingURL=chunk-4NTIGHRE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/embed/v3/EmbeddedCheckoutV3WebView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCrossmint } from \"@crossmint/client-sdk-react-base\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { View } from \"react-native\";\nimport type { WebView, WebViewMessageEvent } from \"react-native-webview\";\n\nimport { type CrossmintEmbeddedCheckoutV3Props, crossmintEmbeddedCheckoutV3Service } from \"@crossmint/client-sdk-base\";\nimport { RNWebView, WebViewParent } from \"@crossmint/client-sdk-rn-window\";\nimport { embeddedCheckoutV3IncomingEvents, embeddedCheckoutV3OutgoingEvents } from \"@crossmint/client-sdk-base\";\n\nimport { createCrossmintApiClient } from \"@/utils/createCrossmintApiClient\";\nimport { userAgent } from \"@/utils/embed/userAgent\";\nimport { PayerConnectionHandler } from \"./crypto/PayerConnectionHandler\";\nimport type { PayerSupportedBlockchains } from \"@crossmint/common-sdk-base\";\nimport { localEventEmitter, type LocalEventEmitterEvents } from \"@/utils/eventEmitter\";\n\nexport function EmbeddedCheckoutV3WebView(props: CrossmintEmbeddedCheckoutV3Props) {\n const [webViewClient, setWebViewClient] = useState<WebViewParent<\n typeof embeddedCheckoutV3IncomingEvents,\n typeof embeddedCheckoutV3OutgoingEvents\n > | null>(null);\n const [height, setHeight] = useState(0);\n\n const initialChainRef = useRef(props.payment.crypto.payer?.initialChain);\n\n const memoizedProps = useRef(props);\n if (havePropsChanged(props, memoizedProps.current)) {\n const newProps = { ...props };\n const initialChainPreservation = shouldPreserveInitialChain(props, initialChainRef.current);\n if (initialChainPreservation.shouldPreserve) {\n newProps.payment.crypto.payer = initialChainPreservation.updatedPayer;\n }\n memoizedProps.current = newProps;\n }\n\n const { crossmint } = useCrossmint();\n const apiClient = createCrossmintApiClient(crossmint, {\n usageOrigin: \"client\",\n });\n const embeddedCheckoutService = crossmintEmbeddedCheckoutV3Service({ apiClient });\n\n const webViewRef = useRef<WebView>(null);\n\n useEffect(() => {\n const webView = webViewRef.current;\n if (!webView || webViewClient) {\n return;\n }\n\n const client = new WebViewParent(\n { current: webView },\n {\n incomingEvents: embeddedCheckoutV3IncomingEvents,\n outgoingEvents: embeddedCheckoutV3OutgoingEvents,\n }\n );\n setWebViewClient(client);\n }, [webViewRef.current, webViewClient]);\n\n useEffect(() => {\n if (webViewClient == null) {\n return;\n }\n\n const handleHeightChanged = (data: { height: number }) => setHeight(data.height);\n webViewClient.on(\"ui:height.changed\", handleHeightChanged);\n\n // Listen for order:updated events and re-emit as local event\n const handleOrderUpdated = (data: LocalEventEmitterEvents[\"order:updated\"]) => {\n localEventEmitter.emit(\"order:updated\", data);\n };\n webViewClient.on(\"order:updated\", handleOrderUpdated);\n\n return () => {\n webViewClient.off(\"ui:height.changed\");\n webViewClient.off(\"order:updated\");\n };\n }, [webViewClient]);\n\n const handleMessage = (event: WebViewMessageEvent) => {\n if (webViewClient) {\n webViewClient.handleMessage(event);\n }\n };\n\n return (\n <View style={{ flex: 1 }}>\n <RNWebView\n ref={webViewRef}\n globals={crossmint.appId ? { crossmintAppId: crossmint.appId } : undefined}\n source={{ uri: embeddedCheckoutService.iframe.getUrl(memoizedProps.current) }}\n onMessage={handleMessage}\n style={{\n width: \"100%\",\n minWidth: \"100%\",\n height,\n backgroundColor: \"transparent\",\n overflow: undefined,\n opacity: 1,\n padding: 0,\n boxShadow: \"none\",\n borderWidth: 0,\n transform: [{ translateX: 0 }],\n }}\n allowsInlineMediaPlayback={true}\n mediaPlaybackRequiresUserAction={false}\n allowsBackForwardNavigationGestures={false}\n allowsLinkPreview={false}\n scrollEnabled={true}\n bounces={false}\n showsHorizontalScrollIndicator={false}\n showsVerticalScrollIndicator={false}\n domStorageEnabled={true}\n mixedContentMode=\"always\"\n allowFileAccess={true}\n allowUniversalAccessFromFileURLs={true}\n geolocationEnabled={true}\n userAgent={userAgent}\n paymentRequestEnabled={true}\n />\n {memoizedProps.current.payment.crypto.enabled ? (\n memoizedProps.current.payment.crypto.payer != null ? (\n <PayerConnectionHandler\n payer={memoizedProps.current.payment.crypto.payer}\n webViewClient={webViewClient}\n />\n ) : (\n <ThrowError message=\"If 'payment.crypto.enabled' is true, 'payment.crypto.payer' must be provided. Support for not providing a payer is not yet implemented.\" />\n )\n ) : null}\n </View>\n );\n}\n\nfunction havePropsChanged(\n parentProps: CrossmintEmbeddedCheckoutV3Props,\n currentRefProps: CrossmintEmbeddedCheckoutV3Props\n): boolean {\n return JSON.stringify(parentProps) !== JSON.stringify(currentRefProps);\n}\n\nfunction shouldPreserveInitialChain(\n props: CrossmintEmbeddedCheckoutV3Props,\n storedInitialChain: PayerSupportedBlockchains | undefined\n): { shouldPreserve: true; updatedPayer: typeof props.payment.crypto.payer } | { shouldPreserve: false } {\n if (props.payment.crypto.payer && storedInitialChain != null) {\n return {\n shouldPreserve: true,\n updatedPayer: {\n ...props.payment.crypto.payer,\n initialChain: storedInitialChain,\n },\n };\n }\n return { shouldPreserve: false };\n}\n\nfunction ThrowError({ message }: { message: string }) {\n throw new Error(message);\n // biome-ignore lint/correctness/noUnreachable: Need a return statement to satisfy JSX return type\n return null;\n}\n"]}
@@ -0,0 +1,157 @@
1
+ import {
2
+ BaseCodeInput
3
+ } from "./chunk-ALMDA3KN.mjs";
4
+ import {
5
+ BaseConfirmation
6
+ } from "./chunk-2TEAOLM6.mjs";
7
+ import {
8
+ theme
9
+ } from "./chunk-3AWDWMZ2.mjs";
10
+
11
+ // src/components/signers/PhoneSignersDialog.tsx
12
+ import { View, StyleSheet, Dimensions, Modal, TouchableOpacity, Text } from "react-native";
13
+ import { PhoneIcon, Smartphone, X } from "lucide-react-native";
14
+ import { jsx, jsxs } from "react/jsx-runtime";
15
+ var { width: screenWidth } = Dimensions.get("window");
16
+ function PhoneSignersDialog({
17
+ phone,
18
+ open,
19
+ setOpen,
20
+ step,
21
+ onSubmitOTP,
22
+ onResendOTPCode,
23
+ onSubmitPhone,
24
+ rejectRef,
25
+ appearance
26
+ }) {
27
+ var _a, _b, _c, _d, _e, _f;
28
+ function handleOnCancel() {
29
+ var _a2;
30
+ if (open) {
31
+ (_a2 = rejectRef.current) == null ? void 0 : _a2.call(rejectRef, new Error("User cancelled"));
32
+ setOpen(false);
33
+ }
34
+ }
35
+ const dynamicStyles = StyleSheet.create({
36
+ modalOverlay: {
37
+ flex: 1,
38
+ backgroundColor: "rgba(0, 0, 0, 0.5)",
39
+ justifyContent: "center",
40
+ alignItems: "center",
41
+ padding: 16
42
+ },
43
+ modalContainer: {
44
+ backgroundColor: ((_a = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _a.background) || theme["cm-background-primary"],
45
+ borderRadius: (appearance == null ? void 0 : appearance.borderRadius) || 12,
46
+ padding: 32,
47
+ width: Math.min(screenWidth - 32, 400),
48
+ maxHeight: "80%",
49
+ position: "relative",
50
+ alignItems: "center",
51
+ shadowColor: "#000",
52
+ shadowOffset: {
53
+ width: 0,
54
+ height: 2
55
+ },
56
+ shadowOpacity: 0.25,
57
+ shadowRadius: 4,
58
+ elevation: 5
59
+ },
60
+ closeButton: {
61
+ position: "absolute",
62
+ top: 16,
63
+ right: 16,
64
+ width: 32,
65
+ height: 32,
66
+ borderRadius: 6,
67
+ backgroundColor: ((_b = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _b.inputBackground) || theme["cm-muted-primary"],
68
+ alignItems: "center",
69
+ justifyContent: "center",
70
+ zIndex: 1
71
+ }
72
+ });
73
+ if (!open) {
74
+ return null;
75
+ }
76
+ return /* @__PURE__ */ jsx(
77
+ Modal,
78
+ {
79
+ visible: open,
80
+ transparent: true,
81
+ animationType: "fade",
82
+ onRequestClose: handleOnCancel,
83
+ statusBarTranslucent: true,
84
+ children: /* @__PURE__ */ jsx(View, { style: dynamicStyles.modalOverlay, children: /* @__PURE__ */ jsxs(View, { style: dynamicStyles.modalContainer, children: [
85
+ /* @__PURE__ */ jsx(
86
+ TouchableOpacity,
87
+ {
88
+ style: dynamicStyles.closeButton,
89
+ onPress: handleOnCancel,
90
+ hitSlop: { top: 10, bottom: 10, left: 10, right: 10 },
91
+ children: /* @__PURE__ */ jsx(X, { size: 16, color: ((_c = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _c.textSecondary) || theme["cm-text-secondary"] })
92
+ }
93
+ ),
94
+ step === "initial" ? /* @__PURE__ */ jsx(
95
+ BaseConfirmation,
96
+ {
97
+ contactInfo: phone != null ? phone : "",
98
+ contactType: "phone",
99
+ icon: /* @__PURE__ */ jsx(
100
+ PhoneIcon,
101
+ {
102
+ size: 22,
103
+ color: ((_d = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _d.textPrimary) || theme["cm-text-primary"]
104
+ }
105
+ ),
106
+ onConfirm: onSubmitPhone,
107
+ onCancel: handleOnCancel,
108
+ appearance
109
+ }
110
+ ) : /* @__PURE__ */ jsx(
111
+ BaseCodeInput,
112
+ {
113
+ contactInfo: phone != null ? phone : "",
114
+ contactType: "phone",
115
+ icon: /* @__PURE__ */ jsx(
116
+ View,
117
+ {
118
+ style: {
119
+ backgroundColor: ((_e = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _e.accent) || theme["cm-accent"],
120
+ borderRadius: 999,
121
+ padding: 12
122
+ },
123
+ children: /* @__PURE__ */ jsx(
124
+ Smartphone,
125
+ {
126
+ size: 22,
127
+ color: ((_f = appearance == null ? void 0 : appearance.colors) == null ? void 0 : _f.background) || theme["cm-background-primary"]
128
+ }
129
+ )
130
+ }
131
+ ),
132
+ title: "Check your phone",
133
+ description: /* @__PURE__ */ jsxs(Text, { children: [
134
+ "A temporary login code has been sent via SMS to",
135
+ " ",
136
+ /* @__PURE__ */ jsx(Text, { style: { fontWeight: "bold" }, children: phone })
137
+ ] }),
138
+ helpText: `Can't receive the SMS? Check your phone number.
139
+ Some messages may take several minutes to arrive.`,
140
+ onSubmitOTP,
141
+ onResendCode: onResendOTPCode,
142
+ appearance,
143
+ otpLength: 10,
144
+ keyboardType: "number-pad",
145
+ autoComplete: "sms-otp",
146
+ textContentType: "oneTimeCode"
147
+ }
148
+ )
149
+ ] }) })
150
+ }
151
+ );
152
+ }
153
+
154
+ export {
155
+ PhoneSignersDialog
156
+ };
157
+ //# sourceMappingURL=chunk-4V7NDO5X.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/signers/PhoneSignersDialog.tsx"],"sourcesContent":["import type { MutableRefObject } from \"react\";\nimport { View, StyleSheet, Dimensions, Modal, TouchableOpacity, Text } from \"react-native\";\nimport type { UIConfig } from \"@crossmint/common-sdk-base\";\nimport { PhoneIcon, Smartphone, X } from \"lucide-react-native\";\nimport { BaseConfirmation } from \"./BaseConfirmation\";\nimport { BaseCodeInput } from \"./BaseCodeInput\";\nimport { theme } from \"../../styles/theme\";\n\ninterface PhoneSignersDialogProps {\n phone?: string;\n open: boolean;\n setOpen: (open: boolean) => void;\n step: \"initial\" | \"otp\";\n onSubmitOTP: (token: string) => Promise<void>;\n onResendOTPCode: () => Promise<void>;\n onSubmitPhone: () => Promise<void>;\n rejectRef: MutableRefObject<((error: Error) => void) | undefined>;\n appearance?: UIConfig;\n}\n\nconst { width: screenWidth } = Dimensions.get(\"window\");\n\nexport function PhoneSignersDialog({\n phone,\n open,\n setOpen,\n step,\n onSubmitOTP,\n onResendOTPCode,\n onSubmitPhone,\n rejectRef,\n appearance,\n}: PhoneSignersDialogProps) {\n function handleOnCancel() {\n if (open) {\n rejectRef.current?.(new Error(\"User cancelled\"));\n setOpen(false);\n }\n }\n\n const dynamicStyles = StyleSheet.create({\n modalOverlay: {\n flex: 1,\n backgroundColor: \"rgba(0, 0, 0, 0.5)\",\n justifyContent: \"center\",\n alignItems: \"center\",\n padding: 16,\n },\n modalContainer: {\n backgroundColor: appearance?.colors?.background || theme[\"cm-background-primary\"],\n borderRadius: appearance?.borderRadius || 12,\n padding: 32,\n width: Math.min(screenWidth - 32, 400),\n maxHeight: \"80%\",\n position: \"relative\",\n alignItems: \"center\",\n shadowColor: \"#000\",\n shadowOffset: {\n width: 0,\n height: 2,\n },\n shadowOpacity: 0.25,\n shadowRadius: 4,\n elevation: 5,\n },\n closeButton: {\n position: \"absolute\",\n top: 16,\n right: 16,\n width: 32,\n height: 32,\n borderRadius: 6,\n backgroundColor: appearance?.colors?.inputBackground || theme[\"cm-muted-primary\"],\n alignItems: \"center\",\n justifyContent: \"center\",\n zIndex: 1,\n },\n });\n\n if (!open) {\n return null;\n }\n\n return (\n <Modal\n visible={open}\n transparent={true}\n animationType=\"fade\"\n onRequestClose={handleOnCancel}\n statusBarTranslucent={true}\n >\n <View style={dynamicStyles.modalOverlay}>\n <View style={dynamicStyles.modalContainer}>\n <TouchableOpacity\n style={dynamicStyles.closeButton}\n onPress={handleOnCancel}\n hitSlop={{ top: 10, bottom: 10, left: 10, right: 10 }}\n >\n <X size={16} color={appearance?.colors?.textSecondary || theme[\"cm-text-secondary\"]} />\n </TouchableOpacity>\n\n {step === \"initial\" ? (\n <BaseConfirmation\n contactInfo={phone ?? \"\"}\n contactType=\"phone\"\n icon={\n <PhoneIcon\n size={22}\n color={appearance?.colors?.textPrimary || theme[\"cm-text-primary\"]}\n />\n }\n onConfirm={onSubmitPhone}\n onCancel={handleOnCancel}\n appearance={appearance}\n />\n ) : (\n <BaseCodeInput\n contactInfo={phone ?? \"\"}\n contactType=\"phone\"\n icon={\n <View\n style={{\n backgroundColor: appearance?.colors?.accent || theme[\"cm-accent\"],\n borderRadius: 999,\n padding: 12,\n }}\n >\n <Smartphone\n size={22}\n color={appearance?.colors?.background || theme[\"cm-background-primary\"]}\n />\n </View>\n }\n title=\"Check your phone\"\n description={\n <Text>\n A temporary login code has been sent via SMS to{\" \"}\n <Text style={{ fontWeight: \"bold\" }}>{phone}</Text>\n </Text>\n }\n helpText={`Can't receive the SMS? Check your phone number.\\nSome messages may take several minutes to arrive.`}\n onSubmitOTP={onSubmitOTP}\n onResendCode={onResendOTPCode}\n appearance={appearance}\n otpLength={10}\n keyboardType=\"number-pad\"\n autoComplete=\"sms-otp\"\n textContentType=\"oneTimeCode\"\n />\n )}\n </View>\n </View>\n </Modal>\n );\n}\n"],"mappings":"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","names":["_a"]}
@@ -0,0 +1,14 @@
1
+ // src/plugin/mods/addQueryToAndroidManifest.ts
2
+ function addQueryToAndroidManifest(androidManifest, query) {
3
+ const manifest = androidManifest.manifest;
4
+ if (!manifest.queries) {
5
+ manifest.queries = [];
6
+ }
7
+ manifest.queries.push(query);
8
+ return androidManifest;
9
+ }
10
+
11
+ export {
12
+ addQueryToAndroidManifest
13
+ };
14
+ //# sourceMappingURL=chunk-4WJIXD7U.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/plugin/mods/addQueryToAndroidManifest.ts"],"sourcesContent":["import type { AndroidManifest, ManifestQuery } from \"@expo/config-plugins/build/android/Manifest\";\n\nexport function addQueryToAndroidManifest(androidManifest: AndroidManifest, query: ManifestQuery): AndroidManifest {\n const manifest = androidManifest.manifest;\n\n if (!manifest.queries) {\n manifest.queries = [];\n }\n\n manifest.queries.push(query);\n\n return androidManifest;\n}\n"],"mappings":";AAEO,SAAS,0BAA0B,iBAAkC,OAAuC;AAC/G,QAAM,WAAW,gBAAgB;AAEjC,MAAI,CAAC,SAAS,SAAS;AACnB,aAAS,UAAU,CAAC;AAAA,EACxB;AAEA,WAAS,QAAQ,KAAK,KAAK;AAE3B,SAAO;AACX;","names":[]}
@@ -0,0 +1 @@
1
+ "use strict";//# sourceMappingURL=chunk-5ZBDQUNG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkR3ZW4OCRjs = require('./chunk-R3ZW4OCR.js');
4
+
5
+ // src/utils/createCrossmintApiClient.ts
6
+ var _commonsdkbase = require('@crossmint/common-sdk-base');
7
+ function createCrossmintApiClient(crossmint, apiKeyExpectations) {
8
+ return new (0, _commonsdkbase.CrossmintApiClient)(crossmint, {
9
+ internalConfig: {
10
+ sdkMetadata: {
11
+ name: "@crossmint/client-sdk-react-native-ui",
12
+ version: _chunkR3ZW4OCRjs.package_default.version
13
+ },
14
+ apiKeyExpectations
15
+ }
16
+ });
17
+ }
18
+
19
+
20
+
21
+ exports.createCrossmintApiClient = createCrossmintApiClient;
22
+ //# sourceMappingURL=chunk-6W2GOMYU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/createCrossmintApiClient.ts"],"names":[],"mappings":";;;;;AAAA,SAAyB,0BAAiE;AAGnF,SAAS,yBACZ,WACA,oBACF;AACE,SAAO,IAAI,mBAAmB,WAAW;AAAA,IACrC,gBAAgB;AAAA,MACZ,aAAa;AAAA,QACT,MAAM;AAAA,QACN,SAAS,gBAAY;AAAA,MACzB;AAAA,MACA;AAAA,IACJ;AAAA,EACJ,CAAC;AACL","sourcesContent":["import { type Crossmint, CrossmintApiClient, type CrossmintApiClientInternalConfig } from \"@crossmint/common-sdk-base\";\nimport packageJson from \"../../package.json\";\n\nexport function createCrossmintApiClient(\n crossmint: Crossmint,\n apiKeyExpectations?: CrossmintApiClientInternalConfig[\"apiKeyExpectations\"]\n) {\n return new CrossmintApiClient(crossmint, {\n internalConfig: {\n sdkMetadata: {\n name: \"@crossmint/client-sdk-react-native-ui\",\n version: packageJson.version,\n },\n apiKeyExpectations,\n },\n });\n}\n"]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-6Z74KC25.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,66 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
21
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
22
+ }) : x)(function(x) {
23
+ if (typeof require !== "undefined") return require.apply(this, arguments);
24
+ throw Error('Dynamic require of "' + x + '" is not supported');
25
+ });
26
+ var __objRest = (source, exclude) => {
27
+ var target = {};
28
+ for (var prop in source)
29
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
30
+ target[prop] = source[prop];
31
+ if (source != null && __getOwnPropSymbols)
32
+ for (var prop of __getOwnPropSymbols(source)) {
33
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
34
+ target[prop] = source[prop];
35
+ }
36
+ return target;
37
+ };
38
+ var __async = (__this, __arguments, generator) => {
39
+ return new Promise((resolve, reject) => {
40
+ var fulfilled = (value) => {
41
+ try {
42
+ step(generator.next(value));
43
+ } catch (e) {
44
+ reject(e);
45
+ }
46
+ };
47
+ var rejected = (value) => {
48
+ try {
49
+ step(generator.throw(value));
50
+ } catch (e) {
51
+ reject(e);
52
+ }
53
+ };
54
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
55
+ step((generator = generator.apply(__this, __arguments)).next());
56
+ });
57
+ };
58
+
59
+ export {
60
+ __spreadValues,
61
+ __spreadProps,
62
+ __require,
63
+ __objRest,
64
+ __async
65
+ };
66
+ //# sourceMappingURL=chunk-7SPIOD4K.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}