@funkit/api-base 0.0.4 → 0.0.6

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @funkit/api-base
2
2
 
3
+ ## 0.0.6
4
+
5
+ ### Patch Changes
6
+
7
+ - f27a79c: feat: add stripe endpoints and tests
8
+
9
+ ## 0.0.5
10
+
11
+ ### Patch Changes
12
+
13
+ - 5f70055: refactor: update checkout/quote and checkout/update endpoints
14
+ - 5f70055: feat: add new endpoint getCheckoutsByUserId
15
+
3
16
  ## 0.0.4
4
17
 
5
18
  ### Patch Changes
@@ -13,7 +13,7 @@ import { CheckoutDeactivateParams, CheckoutHistoryItem, CheckoutInitParams, Chec
13
13
  * @param apiKey A valid fun api key.
14
14
  * @return {Promise<CheckoutCoreQuoteResponse>} The formatted quote object
15
15
  */
16
- export declare function getCheckoutQuote({ fromChainId, fromTokenAddress, fromTokenDecimals, toChainId, toTokenAddress, toTokenDecimals, toTokenAmount, expirationTimestampMs, sponsorInitialTransferGasLimit, recipientAddr, needsRefuel, apiKey, }: CheckoutQuoteParams): Promise<CheckoutQuoteResponse>;
16
+ export declare function getCheckoutQuote({ fromChainId, fromTokenAddress, fromTokenDecimals, toChainId, toTokenAddress, toTokenDecimals, toTokenAmount, expirationTimestampMs, sponsorInitialTransferGasLimit, recipientAddr, needsRefuel, userId, apiKey, }: CheckoutQuoteParams): Promise<CheckoutQuoteResponse>;
17
17
  /**
18
18
  * Initializes a checkout
19
19
  * @param userOp The checkout UserOp, signed.
@@ -53,4 +53,14 @@ export declare function getCheckoutsByRecipientAddress({ recipientAddress, apiKe
53
53
  recipientAddress: Address;
54
54
  apiKey: string;
55
55
  }): Promise<CheckoutHistoryItem[]>;
56
+ /**
57
+ * Gets all checkouts associated with a funkit userId string
58
+ * @param userId A userId string.
59
+ * @param apiKey A valid fun api key.
60
+ * @returns A list of checkout objects if exists. Otherwise, an empty array.
61
+ */
62
+ export declare function getCheckoutsByUserId({ userId, apiKey, }: {
63
+ userId: string;
64
+ apiKey: string;
65
+ }): Promise<CheckoutHistoryItem[]>;
56
66
  export declare function getPaymasterDataForCheckoutSponsoredTransfer({ depositAddress, transferUserOp, apiKey, }: CheckoutTransferSponsorshipParams): Promise<CheckoutTransferSponsorshipResponse>;
@@ -9,6 +9,7 @@ exports.deactivateCheckout = deactivateCheckout;
9
9
  exports.getCheckoutByDepositAddress = getCheckoutByDepositAddress;
10
10
  exports.getCheckoutsByFunWalletAddress = getCheckoutsByFunWalletAddress;
11
11
  exports.getCheckoutsByRecipientAddress = getCheckoutsByRecipientAddress;
12
+ exports.getCheckoutsByUserId = getCheckoutsByUserId;
12
13
  exports.getPaymasterDataForCheckoutSponsoredTransfer = getPaymasterDataForCheckoutSponsoredTransfer;
13
14
  const big_js_1 = __importDefault(require("big.js"));
14
15
  const consts_1 = require("../../consts");
@@ -28,11 +29,12 @@ const types_1 = require("./types");
28
29
  * @param apiKey A valid fun api key.
29
30
  * @return {Promise<CheckoutCoreQuoteResponse>} The formatted quote object
30
31
  */
31
- async function getCheckoutQuote({ fromChainId, fromTokenAddress, fromTokenDecimals, toChainId, toTokenAddress, toTokenDecimals, toTokenAmount, expirationTimestampMs, sponsorInitialTransferGasLimit, recipientAddr, needsRefuel, apiKey, }) {
32
+ async function getCheckoutQuote({ fromChainId, fromTokenAddress, fromTokenDecimals, toChainId, toTokenAddress, toTokenDecimals, toTokenAmount, expirationTimestampMs, sponsorInitialTransferGasLimit, recipientAddr, needsRefuel, userId, apiKey, }) {
32
33
  try {
33
34
  const toMultipler = 10 ** toTokenDecimals;
34
35
  const toAmountBaseUnitBI = BigInt(Math.floor(toTokenAmount * toMultipler));
35
36
  const queryParams = {
37
+ userId,
36
38
  fromChainId,
37
39
  fromTokenAddress,
38
40
  toChainId,
@@ -109,7 +111,7 @@ async function initializeCheckout({ userOp, quoteId, sourceOfFund, apiKey, clien
109
111
  async function deactivateCheckout({ depositAddress, apiKey, }) {
110
112
  try {
111
113
  await (0, utils_1.sendPostRequest)({
112
- uri: `${consts_1.API_BASE_URL}/checkout/${depositAddress}`,
114
+ uri: `${consts_1.API_BASE_URL}/checkout/update/${depositAddress}`,
113
115
  body: {
114
116
  // Fixed state to cancel the checkout
115
117
  state: types_1.CheckoutState.CANCELLED,
@@ -168,6 +170,19 @@ async function getCheckoutsByRecipientAddress({ recipientAddress, apiKey, }) {
168
170
  });
169
171
  return res || [];
170
172
  }
173
+ /**
174
+ * Gets all checkouts associated with a funkit userId string
175
+ * @param userId A userId string.
176
+ * @param apiKey A valid fun api key.
177
+ * @returns A list of checkout objects if exists. Otherwise, an empty array.
178
+ */
179
+ async function getCheckoutsByUserId({ userId, apiKey, }) {
180
+ const res = await (0, utils_1.sendGetRequest)({
181
+ uri: `${consts_1.API_BASE_URL}/checkout/userId/${userId}`,
182
+ apiKey,
183
+ });
184
+ return res || [];
185
+ }
171
186
  async function getPaymasterDataForCheckoutSponsoredTransfer({ depositAddress, transferUserOp, apiKey, }) {
172
187
  const body = {
173
188
  depositAddress,
@@ -1 +1 @@
1
- {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../src/services/checkout/endpoints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../src/services/checkout/endpoints.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export type CheckoutApiQuoteParams = {
12
12
  checkoutExpirationTimestampSeconds: string;
13
13
  sponsorInitialTransferGasLimit: string;
14
14
  refuel: string;
15
+ userId: string;
15
16
  recipientAddr?: Address;
16
17
  };
17
18
  export type CheckoutQuoteParams = Omit<CheckoutApiQuoteParams, 'toAmountBaseUnit' | 'checkoutExpirationTimestampSeconds' | 'refuel'> & {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/checkout/types.ts"],"names":[],"mappings":";;;AAgFA,6HAA6H;AAC7H,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,qBAAqB;IACrB,gDAA+B,CAAA;IAC/B,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,wCAAuB,CAAA;IACvB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;IACrB,sDAAqC,CAAA;IACrC,kBAAkB;IAClB,wCAAuB,CAAA;IACvB,kDAAiC,CAAA;IACjC,oCAAmB,CAAA;IACnB,wCAAuB,CAAA;AACzB,CAAC,EAfW,aAAa,6BAAb,aAAa,QAexB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/checkout/types.ts"],"names":[],"mappings":";;;AAiFA,6HAA6H;AAC7H,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,qBAAqB;IACrB,gDAA+B,CAAA;IAC/B,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,4CAA2B,CAAA;IAC3B,wCAAuB,CAAA;IACvB,wCAAuB,CAAA;IACvB,sCAAqB,CAAA;IACrB,sDAAqC,CAAA;IACrC,kBAAkB;IAClB,wCAAuB,CAAA;IACvB,kDAAiC,CAAA;IACjC,oCAAmB,CAAA;IACnB,wCAAuB,CAAA;AACzB,CAAC,EAfW,aAAa,6BAAb,aAAa,QAexB"}
@@ -3,5 +3,6 @@ export * from './checkout';
3
3
  export * from './faucet';
4
4
  export * from './mesh';
5
5
  export * from './moonpay';
6
+ export * from './stripe';
6
7
  export * from './support';
7
8
  export * from './turnkey';
@@ -19,6 +19,7 @@ __exportStar(require("./checkout"), exports);
19
19
  __exportStar(require("./faucet"), exports);
20
20
  __exportStar(require("./mesh"), exports);
21
21
  __exportStar(require("./moonpay"), exports);
22
+ __exportStar(require("./stripe"), exports);
22
23
  __exportStar(require("./support"), exports);
23
24
  __exportStar(require("./turnkey"), exports);
24
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,6CAA0B;AAC1B,2CAAwB;AACxB,yCAAsB;AACtB,4CAAyB;AACzB,4CAAyB;AACzB,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,6CAA0B;AAC1B,2CAAwB;AACxB,yCAAsB;AACtB,4CAAyB;AACzB,2CAAwB;AACxB,4CAAyB;AACzB,4CAAyB"}
@@ -0,0 +1,7 @@
1
+ import { CreateStripeBuySessionBody, CreateStripeBuySessionResponse, GetStripeBuyQuoteRequest, GetStripeBuyQuoteResponse } from './types';
2
+ export declare function getStripeBuyQuote({ sourceCurrency, destinationAmount, destinationCurrency, destinationNetwork, isSandbox, apiKey, }: GetStripeBuyQuoteRequest): Promise<GetStripeBuyQuoteResponse>;
3
+ export declare function createStripeBuySession({ sourceCurrency, destinationAmount, destinationCurrency, destinationNetwork, walletAddress, customerIpAddress, isSandbox, apiKey, }: CreateStripeBuySessionBody): Promise<CreateStripeBuySessionResponse>;
4
+ export declare function getStripeBuySession({ sessionId, apiKey, }: {
5
+ sessionId: string;
6
+ apiKey: string;
7
+ }): Promise<CreateStripeBuySessionResponse>;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getStripeBuyQuote = getStripeBuyQuote;
4
+ exports.createStripeBuySession = createStripeBuySession;
5
+ exports.getStripeBuySession = getStripeBuySession;
6
+ const consts_1 = require("../../consts");
7
+ const utils_1 = require("../../utils");
8
+ async function getStripeBuyQuote({ sourceCurrency, destinationAmount, destinationCurrency, destinationNetwork, isSandbox, apiKey, }) {
9
+ const params = new URLSearchParams({
10
+ isSandbox: isSandbox.toString(),
11
+ sourceCurrency,
12
+ destinationAmount: destinationAmount.toString(),
13
+ // Only allow one currency in this SDK
14
+ destinationCurrencies: destinationCurrency,
15
+ // Only allow one network in this SDK
16
+ destinationNetworks: destinationNetwork,
17
+ }).toString();
18
+ const buyQuoteResp = await (0, utils_1.sendGetRequest)({
19
+ uri: `${consts_1.API_BASE_URL}/on-ramp/stripe-buy-quote?${params}`,
20
+ retryOptions: { maxAttempts: 1 },
21
+ apiKey,
22
+ });
23
+ return buyQuoteResp;
24
+ }
25
+ async function createStripeBuySession({ sourceCurrency, destinationAmount, destinationCurrency, destinationNetwork, walletAddress, customerIpAddress, isSandbox, apiKey, }) {
26
+ const body = {
27
+ isSandbox: isSandbox.toString(),
28
+ sourceCurrency,
29
+ destinationAmount: destinationAmount.toString(),
30
+ // Only allow one currency in this SDK
31
+ destinationCurrency,
32
+ destinationCurrencies: [destinationCurrency],
33
+ // Only allow one network in this SDK
34
+ destinationNetwork,
35
+ destinationNetworks: [destinationNetwork],
36
+ // Only allow one wallet address in this SDK, and it must correspond to the destination network
37
+ walletAddresses: {
38
+ [destinationNetwork]: walletAddress,
39
+ },
40
+ ...(customerIpAddress ? { customerIpAddress } : {}),
41
+ };
42
+ const newBuySessionResp = await (0, utils_1.sendPostRequest)({
43
+ uri: `${consts_1.API_BASE_URL}/on-ramp/stripe-checkout`,
44
+ body,
45
+ retryOptions: { maxAttempts: 1 },
46
+ apiKey,
47
+ });
48
+ return newBuySessionResp;
49
+ }
50
+ async function getStripeBuySession({ sessionId, apiKey, }) {
51
+ const buySessionResp = await (0, utils_1.sendGetRequest)({
52
+ uri: `${consts_1.API_BASE_URL}/on-ramp/stripe-checkout-session/${sessionId}`,
53
+ retryOptions: { maxAttempts: 1 },
54
+ apiKey,
55
+ });
56
+ return buySessionResp;
57
+ }
58
+ //# sourceMappingURL=endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../src/services/stripe/endpoints.ts"],"names":[],"mappings":";;AASA,8CAuBC;AAED,wDAiCC;AAED,kDAaC;AAlFD,yCAA2C;AAC3C,uCAA6D;AAQtD,KAAK,UAAU,iBAAiB,CAAC,EACtC,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,MAAM,GACmB;IACzB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;QACjC,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;QAC/B,cAAc;QACd,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;QAC/C,sCAAsC;QACtC,qBAAqB,EAAE,mBAAmB;QAC1C,qCAAqC;QACrC,mBAAmB,EAAE,kBAAkB;KACxC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACb,MAAM,YAAY,GAAG,MAAM,IAAA,sBAAc,EAAC;QACxC,GAAG,EAAE,GAAG,qBAAY,6BAA6B,MAAM,EAAE;QACzD,YAAY,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;QAChC,MAAM;KACP,CAAC,CAAA;IACF,OAAO,YAAyC,CAAA;AAClD,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAAC,EAC3C,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,MAAM,GACqB;IAC3B,MAAM,IAAI,GAAG;QACX,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;QAC/B,cAAc;QACd,iBAAiB,EAAE,iBAAiB,CAAC,QAAQ,EAAE;QAC/C,sCAAsC;QACtC,mBAAmB;QACnB,qBAAqB,EAAE,CAAC,mBAAmB,CAAC;QAC5C,qCAAqC;QACrC,kBAAkB;QAClB,mBAAmB,EAAE,CAAC,kBAAkB,CAAC;QACzC,+FAA+F;QAC/F,eAAe,EAAE;YACf,CAAC,kBAAkB,CAAC,EAAE,aAAa;SACpC;QACD,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,CAAA;IACD,MAAM,iBAAiB,GAAG,MAAM,IAAA,uBAAe,EAAC;QAC9C,GAAG,EAAE,GAAG,qBAAY,0BAA0B;QAC9C,IAAI;QACJ,YAAY,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;QAChC,MAAM;KACP,CAAC,CAAA;IACF,OAAO,iBAAmD,CAAA;AAC5D,CAAC;AAEM,KAAK,UAAU,mBAAmB,CAAC,EACxC,SAAS,EACT,MAAM,GAIP;IACC,MAAM,cAAc,GAAG,MAAM,IAAA,sBAAc,EAAC;QAC1C,GAAG,EAAE,GAAG,qBAAY,oCAAoC,SAAS,EAAE;QACnE,YAAY,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;QAChC,MAAM;KACP,CAAC,CAAA;IACF,OAAO,cAAgD,CAAA;AACzD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './endpoints';
2
+ export * from './types';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./endpoints"), exports);
18
+ __exportStar(require("./types"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/stripe/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,0CAAuB"}
@@ -0,0 +1,46 @@
1
+ export interface GetStripeBuyQuoteRequest {
2
+ sourceCurrency: 'usd' | 'eur';
3
+ destinationAmount: number;
4
+ destinationCurrency: string;
5
+ destinationNetwork: string;
6
+ apiKey: string;
7
+ isSandbox: boolean;
8
+ }
9
+ export interface NetworkQuoteItem {
10
+ id: string;
11
+ destination_amount: string;
12
+ destination_currency: string;
13
+ destination_network: string;
14
+ fees: {
15
+ network_fee_monetary: string;
16
+ transaction_fee_monetary: string;
17
+ };
18
+ source_total_amount: string;
19
+ }
20
+ export interface GetStripeBuyQuoteResponse {
21
+ id: string;
22
+ object: string;
23
+ destination_network_quotes: {
24
+ [stripe_network: string]: null | NetworkQuoteItem[];
25
+ };
26
+ livemode: boolean;
27
+ rate_fetched_at: number;
28
+ source_amount: string;
29
+ source_currency: string;
30
+ }
31
+ export interface CreateStripeBuySessionBody extends GetStripeBuyQuoteRequest {
32
+ walletAddress: null | string;
33
+ customerIpAddress?: null | string;
34
+ }
35
+ export interface CreateStripeBuySessionResponse {
36
+ id: string;
37
+ object: string;
38
+ client_secret: string;
39
+ created: number;
40
+ kyc_details_provided: false;
41
+ livemode: boolean;
42
+ metadata: object;
43
+ redirect_url: string;
44
+ status: string;
45
+ transaction_details: object;
46
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/services/stripe/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@funkit/api-base",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "Base API for Funkit",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",