@getpara/react-common 1.8.0 → 1.10.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.
@@ -1,7 +1,5 @@
1
1
  "use client";
2
2
  var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
3
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __propIsEnum = Object.prototype.propertyIsEnumerable;
@@ -17,7 +15,6 @@ var __spreadValues = (a, b) => {
17
15
  }
18
16
  return a;
19
17
  };
20
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
18
  var __async = (__this, __arguments, generator) => {
22
19
  return new Promise((resolve, reject) => {
23
20
  var fulfilled = (value) => {
@@ -41,6 +38,5 @@ var __async = (__this, __arguments, generator) => {
41
38
 
42
39
  export {
43
40
  __spreadValues,
44
- __spreadProps,
45
41
  __async
46
42
  };
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import ParaWeb from "@getpara/web-sdk";
4
4
  class ParaInternal extends ParaWeb {
5
5
  constructor() {
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
  import { CpslIcon, CpslSpinner, CpslText } from "@getpara/react-components";
5
5
  import styled from "styled-components";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
4
  import { CpslButton, CpslIcon, CpslText } from "@getpara/react-components";
5
5
  import styled from "styled-components";
@@ -1,13 +1,11 @@
1
1
  "use client";
2
2
  import {
3
- __async,
4
- __spreadProps,
5
- __spreadValues
6
- } from "../chunk-IV3L3JVM.js";
3
+ __async
4
+ } from "../chunk-GOCCUU3Z.js";
7
5
  import { jsx } from "react/jsx-runtime";
8
- import { OnRampProvider, OnRampPurchaseStatus } from "@getpara/web-sdk";
6
+ import { getNetworkPrefix, OnRampProvider, OnRampPurchaseStatus } from "@getpara/web-sdk";
9
7
  import { lazy, useCallback, useEffect, useMemo, useState } from "react";
10
- import { getCurrencyCodes, reverseCurrencyLookup, offRampSend } from "../utils/index.js";
8
+ import { reverseCurrencyLookup, offRampSend, getCurrencyCode } from "../utils/index.js";
11
9
  import styled from "styled-components";
12
10
  const MOONPAY_PUBLISHABLE_KEY = "pk_live_EQva4LydtNDE0Rwd9X7SG9w58wqOzbux";
13
11
  const MOONPAY_PUBLISHABLE_KEY_TEST = "pk_test_HYobzemmTBXxcSStVA4dSED6jT";
@@ -38,7 +36,7 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
38
36
  const res = yield para.ctx.client.signMoonPayUrl(para.getUserId(), {
39
37
  url,
40
38
  type: onRampPurchase.walletType,
41
- cosmosPrefix: para.cosmosPrefix,
39
+ cosmosPrefix: getNetworkPrefix(onRampPurchase.network),
42
40
  testMode: onRampPurchase.testMode,
43
41
  walletId: onRampPurchase.walletId || void 0,
44
42
  externalWalletAddress: onRampPurchase.externalWalletAddress || void 0
@@ -47,14 +45,6 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
47
45
  }),
48
46
  [onRampPurchase.walletId, onRampPurchase.walletType, para.cosmosPrefix, onRampPurchase.testMode, para]
49
47
  );
50
- const { currencyCodes, defaultCurrencyCode } = useMemo(
51
- () => getCurrencyCodes(onRampConfig, {
52
- provider: OnRampProvider.MOONPAY,
53
- walletType: onRampPurchase.walletType,
54
- purchaseType: onRampPurchase.type
55
- }),
56
- [onRampPurchase.walletType, onRampPurchase.type, onRampConfig.assetInfo, onRampConfig == null ? void 0 : onRampConfig.allowedAssets]
57
- );
58
48
  const onTransactionCompleted = useCallback(
59
49
  (payload) => __async(void 0, null, function* () {
60
50
  try {
@@ -116,18 +106,19 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
116
106
  if (!LazyMoonPayBuyWidget || !LazyMoonPaySellWidget) {
117
107
  return null;
118
108
  }
119
- const walletAddresses = currencyCodes.reduce((acc, code) => {
120
- return __spreadProps(__spreadValues({}, acc), { [code.toLowerCase()]: onRampPurchase.address });
121
- }, {});
109
+ const currencyCode = getCurrencyCode(onRampConfig, {
110
+ network: onRampPurchase.network,
111
+ asset: onRampPurchase.asset,
112
+ provider: OnRampProvider.MOONPAY
113
+ });
122
114
  return onRampPurchase.type === "BUY" ? /* @__PURE__ */ jsx(
123
115
  LazyMoonPayBuyWidget,
124
116
  {
125
117
  variant: "embedded",
126
118
  baseCurrencyCode: onRampPurchase.fiat,
127
119
  baseCurrencyAmount: onRampPurchase.fiatQuantity,
128
- showOnlyCurrencies: currencyCodes.join(","),
129
- defaultCurrencyCode,
130
- walletAddresses: JSON.stringify(walletAddresses),
120
+ currencyCode,
121
+ walletAddress: onRampPurchase.address,
131
122
  visible: true,
132
123
  theme: isDark ? "dark" : "light",
133
124
  style: {
@@ -144,7 +135,6 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
144
135
  LazyMoonPaySellWidget,
145
136
  {
146
137
  variant: "embedded",
147
- refundWalletAddresses: JSON.stringify(walletAddresses),
148
138
  visible: true,
149
139
  theme: isDark ? "dark" : "light",
150
140
  style: {
@@ -154,8 +144,8 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
154
144
  borderRadius: 0,
155
145
  margin: 0
156
146
  },
157
- showOnlyCurrencies: currencyCodes.join(","),
158
- defaultCurrencyCode: currencyCodes[0],
147
+ baseCurrencyCode: currencyCode,
148
+ refundWalletAddress: onRampPurchase.address,
159
149
  onInitiateDeposit,
160
150
  onTransactionCompleted,
161
151
  onUrlSignatureRequested
@@ -166,8 +156,7 @@ const MoonPayEmbed = ({ para, isDark, isEmbedded, onRampConfig, onRampPurchase,
166
156
  onRampPurchase.address,
167
157
  onRampPurchase.walletId,
168
158
  onRampPurchase.walletType,
169
- defaultCurrencyCode,
170
- currencyCodes,
159
+ onRampPurchase.asset,
171
160
  onInitiateDeposit,
172
161
  onTransactionCompleted,
173
162
  onUrlSignatureRequested,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
  import { CpslButton, CpslIcon, CpslQrCode, CpslSpinner, CpslText } from "@getpara/react-components";
5
5
  import styled from "styled-components";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  __async
4
- } from "../chunk-IV3L3JVM.js";
4
+ } from "../chunk-GOCCUU3Z.js";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  import { useEffect, useRef } from "react";
7
7
  import { RampInstantSDK } from "@ramp-network/ramp-instant-sdk";
@@ -1,4 +1,4 @@
1
1
  import { Props } from '../types/index.js';
2
2
  export declare const STRIPE_PUBLISHABLE_KEY = "pk_live_51MvquNGrzDeP5yP9EgVSMBPQbrbg0oHDjPIIXypePd0jzOFjbadyfO7wBKLHhUtbKIUiEUVC3YYcTJyAmJ8xA7JE00T2UDfYKz";
3
- export declare const STRIPE_PUBLISHABLE_KEY_TEST = "pk_test_51Q2z5k2epVn9Kq0ZSbUzuetKb4azH6E6UPcvWmjRxvHmxLAJbIK0pwDbPQo63W9OyDng337ntNu3ZXx3AJ7MhFmR00XgfRmPgP";
3
+ export declare const STRIPE_PUBLISHABLE_KEY_TEST = "pk_test_51MvquNGrzDeP5yP98WgPaAUgQ50I3OpfPhVfiLO47FBHepJnZRPO62IzZY2uxT5ovhSS10RwcTcnaVil1mcJOzIi00dHapODdS";
4
4
  export declare const StripeEmbed: ({ para, isDark, isEmbedded, onRampPurchase, setOnRampPurchase }: Props) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  __async
4
- } from "../chunk-IV3L3JVM.js";
4
+ } from "../chunk-GOCCUU3Z.js";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  import React, { useCallback, useEffect, useMemo, useState } from "react";
7
7
  import { loadStripeOnramp } from "@stripe/crypto";
@@ -10,7 +10,7 @@ import { CpslSpinner } from "@getpara/react-components";
10
10
  import { SpinnerContainer } from "./common.js";
11
11
  import styled from "styled-components";
12
12
  const STRIPE_PUBLISHABLE_KEY = "pk_live_51MvquNGrzDeP5yP9EgVSMBPQbrbg0oHDjPIIXypePd0jzOFjbadyfO7wBKLHhUtbKIUiEUVC3YYcTJyAmJ8xA7JE00T2UDfYKz";
13
- const STRIPE_PUBLISHABLE_KEY_TEST = "pk_test_51Q2z5k2epVn9Kq0ZSbUzuetKb4azH6E6UPcvWmjRxvHmxLAJbIK0pwDbPQo63W9OyDng337ntNu3ZXx3AJ7MhFmR00XgfRmPgP";
13
+ const STRIPE_PUBLISHABLE_KEY_TEST = "pk_test_51MvquNGrzDeP5yP98WgPaAUgQ50I3OpfPhVfiLO47FBHepJnZRPO62IzZY2uxT5ovhSS10RwcTcnaVil1mcJOzIi00dHapODdS";
14
14
  const AssetCodes = {
15
15
  eth: OnRampAsset.ETHEREUM,
16
16
  matic: OnRampAsset.POLYGON,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
  import { CpslAvatar, CpslIcon, CpslText } from "@getpara/react-components";
5
5
  import styled from "styled-components";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { CpslButton, CpslInput, CpslText } from "@getpara/react-components";
4
4
  import styled from "styled-components";
5
5
  const SpinnerContainer = styled.div`
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  const aaguidMetadata = {
4
4
  "ea9b8d66-4d01-1d21-3ce4-b6b48cb575d4": {
5
5
  name: "Google Password Manager",
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  __async
4
- } from "../chunk-IV3L3JVM.js";
4
+ } from "../chunk-GOCCUU3Z.js";
5
5
  import { useCallback, useState } from "react";
6
6
  function useCopyToClipboard() {
7
7
  const [copied, setCopied] = useState(false);
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  __spreadValues
4
- } from "../chunk-IV3L3JVM.js";
4
+ } from "../chunk-GOCCUU3Z.js";
5
5
  import { UAParser } from "ua-parser-js";
6
6
  import { aaguidMetadata } from "../constants/aaguiMetadata.js";
7
7
  const formatStringToUUID = (str) => {
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import parsePhoneNumberFromString from "libphonenumber-js";
4
4
  const formatPhoneNumber = (phone, countryCode) => {
5
5
  phone = phone.toString();
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { UAParser } from "ua-parser-js";
4
4
  const getBrowserName = () => new UAParser().getBrowser().name;
5
5
  export {
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  const getDeviceLogo = (vendor, isMobile) => {
4
4
  switch (vendor == null ? void 0 : vendor.toLowerCase()) {
5
5
  case "apple": {
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  const getDeviceModelName = (model) => {
4
4
  if (!model) {
5
5
  return void 0;
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import "../chunk-GOCCUU3Z.js";
3
3
  import { truncateAddress, WalletType } from "@getpara/web-sdk";
4
4
  const getExternalWalletDisplayName = ({ address, type }) => {
5
5
  const walletType = type;
@@ -1,4 +1,9 @@
1
1
  import { OnRampAsset, OnRampAssetInfo, OnRampProvider, Network, OnRampPurchaseType, OnRampConfig, WalletType } from '@getpara/web-sdk';
2
+ export declare function getCurrencyCode({ assetInfo }: OnRampConfig, { network, asset, provider }: {
3
+ network: Network;
4
+ asset: OnRampAsset;
5
+ provider: OnRampProvider;
6
+ }): string | undefined;
2
7
  export declare function getCurrencyCodes({ assetInfo, allowedAssets, defaultOnRampNetwork, defaultOnRampAsset }: OnRampConfig, { provider, purchaseType, walletType, }: {
3
8
  provider: OnRampProvider;
4
9
  purchaseType: OnRampPurchaseType;
@@ -1,5 +1,7 @@
1
1
  "use client";
2
- import "../chunk-IV3L3JVM.js";
2
+ import {
3
+ __spreadValues
4
+ } from "../chunk-GOCCUU3Z.js";
3
5
  import {
4
6
  OnRampAsset,
5
7
  Network,
@@ -7,6 +9,10 @@ import {
7
9
  getOnRampAssets,
8
10
  toAssetInfoArray
9
11
  } from "@getpara/web-sdk";
12
+ function getCurrencyCode({ assetInfo }, { network, asset, provider }) {
13
+ var _a, _b, _c;
14
+ return (_c = (_b = (_a = Object.values(assetInfo).reduce((acc, record) => __spreadValues(__spreadValues({}, acc), record), {})[network]) == null ? void 0 : _a[asset]) == null ? void 0 : _b[provider]) == null ? void 0 : _c[0];
15
+ }
10
16
  function getCurrencyCodes({ assetInfo, allowedAssets, defaultOnRampNetwork, defaultOnRampAsset }, {
11
17
  provider,
12
18
  purchaseType,
@@ -37,7 +43,10 @@ function reverseCurrencyLookup(data, provider, code) {
37
43
  );
38
44
  return [row == null ? void 0 : row[1], row == null ? void 0 : row[2]];
39
45
  }
40
- const TestNetworks = [{ main: Network.ETHEREUM, test: Network.SEPOLIA }];
46
+ const TestNetworks = [
47
+ { main: Network.ETHEREUM, test: Network.SEPOLIA },
48
+ { main: Network.SOLANA, test: Network.SOLANA_DEVNET }
49
+ ];
41
50
  function getNetworkTestEquivalent(network) {
42
51
  var _a;
43
52
  return (_a = TestNetworks.find(({ main }) => main === network)) == null ? void 0 : _a.test;
@@ -72,7 +81,9 @@ const NetworkAssetAddresses = [
72
81
  { network: Network.ARBITRUM, asset: OnRampAsset.USDC, address: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831" },
73
82
  { network: Network.OPTIMISM, asset: OnRampAsset.USDC, address: "0x0b2c639c533813f4aa9d7837caf62653d097ff85" },
74
83
  { network: Network.SOLANA, asset: OnRampAsset.USDC, address: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" },
75
- { network: Network.SEPOLIA, asset: OnRampAsset.USDC, address: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238" }
84
+ { network: Network.SOLANA_DEVNET, asset: OnRampAsset.USDC, address: "4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU" },
85
+ { network: Network.SEPOLIA, asset: OnRampAsset.USDC, address: "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238" },
86
+ { network: Network.SOLANA_DEVNET, asset: OnRampAsset.TETHER, address: "EJwZgeZrdC8TXTQbQBoL6bfuAnFUUy1PVCMB4DYPzVaS" }
76
87
  ];
77
88
  function getAssetFromContractAddress(network, contractAddress) {
78
89
  var _a, _b;
@@ -105,6 +116,7 @@ export {
105
116
  getAssetFromContractAddress,
106
117
  getChainId,
107
118
  getContractAddressFromAsset,
119
+ getCurrencyCode,
108
120
  getCurrencyCodes,
109
121
  getNetworkFromChainId,
110
122
  getNetworkOrMainNetEquivalent,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  __async
4
- } from "../chunk-IV3L3JVM.js";
4
+ } from "../chunk-GOCCUU3Z.js";
5
5
  import { hexStringToBase64, WalletType } from "@getpara/web-sdk";
6
6
  function offRampSend(_0, _1, _2, _3) {
7
7
  return __async(this, arguments, function* (para, { id: purchaseId, provider, walletId, walletType, address, testMode = false }, setOnRampPurchase, {
@@ -12,12 +12,12 @@ function offRampSend(_0, _1, _2, _3) {
12
12
  destinationAddress,
13
13
  contractAddress
14
14
  }) {
15
- var _a, _b;
15
+ var _a, _b, _c;
16
16
  if (!purchaseId || !walletId || !walletType || !provider) {
17
17
  throw new Error("Missing required fields");
18
18
  }
19
19
  try {
20
- const { tx, network, asset } = yield para.ctx.client.generateOffRampTx(para.getUserId(), {
20
+ const { tx, message, network, asset } = yield para.ctx.client.generateOffRampTx(para.getUserId(), {
21
21
  walletId,
22
22
  walletType,
23
23
  provider,
@@ -37,12 +37,16 @@ function offRampSend(_0, _1, _2, _3) {
37
37
  chainId
38
38
  })) == null ? void 0 : _a.signature;
39
39
  break;
40
+ case WalletType.SOLANA:
41
+ signature = (_b = yield para.signMessage({ walletId, messageBase64: message })) == null ? void 0 : _b.signature;
42
+ break;
40
43
  default:
41
44
  throw new Error(`Unsupported wallet type: ${walletType}`);
42
45
  }
43
46
  const { txHash } = yield para.ctx.client.sendOffRampTx(para.getUserId(), {
44
47
  tx,
45
48
  signature: walletType === "EVM" ? `0x${signature}` : signature,
49
+ sourceAddress: address,
46
50
  network,
47
51
  walletId,
48
52
  walletType
@@ -62,7 +66,7 @@ function offRampSend(_0, _1, _2, _3) {
62
66
  setOnRampPurchase(updated);
63
67
  return txHash;
64
68
  } catch (e) {
65
- throw new Error(((_b = e.response) == null ? void 0 : _b.data) || e.message);
69
+ throw new Error(((_c = e.response) == null ? void 0 : _c.data) || e.message);
66
70
  }
67
71
  });
68
72
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@getpara/react-common",
3
- "version": "1.8.0",
3
+ "version": "1.10.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -11,8 +11,8 @@
11
11
  "*.css"
12
12
  ],
13
13
  "dependencies": {
14
- "@getpara/react-components": "1.8.0",
15
- "@getpara/web-sdk": "1.8.0",
14
+ "@getpara/react-components": "1.10.0",
15
+ "@getpara/web-sdk": "1.10.0",
16
16
  "@moonpay/moonpay-react": "^1.8.3",
17
17
  "@ramp-network/ramp-instant-sdk": "^4.0.5",
18
18
  "@stripe/crypto": "^0.0.4",
@@ -43,5 +43,5 @@
43
43
  "resolutions": {
44
44
  "styled-components": "^6"
45
45
  },
46
- "gitHead": "ef96e79558695ccbe148d25a8e3611c4596d1954"
46
+ "gitHead": "617cf0aa1307a96ec5e91d39e306e8a0b3b86b82"
47
47
  }