@funkit/api-base 0.0.1 → 0.0.3

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 (101) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +3 -1
  3. package/dist/src/consts/api.d.ts +1 -0
  4. package/dist/src/consts/api.js +2 -1
  5. package/dist/src/consts/api.js.map +1 -1
  6. package/dist/src/services/assets/types.d.ts +10 -5
  7. package/dist/src/services/checkout/endpoints.js +2 -1
  8. package/dist/src/services/checkout/endpoints.js.map +1 -1
  9. package/dist/src/services/faucet/endpoints.d.ts +2 -0
  10. package/dist/src/services/faucet/endpoints.js +13 -0
  11. package/dist/src/services/faucet/endpoints.js.map +1 -0
  12. package/dist/src/services/faucet/index.d.ts +2 -0
  13. package/dist/src/services/faucet/index.js +19 -0
  14. package/dist/src/services/faucet/index.js.map +1 -0
  15. package/dist/src/services/faucet/types.d.ts +6 -0
  16. package/dist/src/services/faucet/types.js +3 -0
  17. package/dist/src/services/faucet/types.js.map +1 -0
  18. package/dist/src/services/index.d.ts +3 -0
  19. package/dist/src/services/index.js +3 -0
  20. package/dist/src/services/index.js.map +1 -1
  21. package/dist/src/services/mesh/endpoints.d.ts +2 -2
  22. package/dist/src/services/mesh/endpoints.js.map +1 -1
  23. package/dist/src/services/mesh/types.d.ts +31 -4
  24. package/dist/src/services/mesh/types.js +20 -0
  25. package/dist/src/services/mesh/types.js.map +1 -1
  26. package/dist/src/services/moonpay/endpoints.d.ts +9 -1
  27. package/dist/src/services/moonpay/endpoints.js +41 -1
  28. package/dist/src/services/moonpay/endpoints.js.map +1 -1
  29. package/dist/src/services/moonpay/types.d.ts +33 -0
  30. package/dist/src/services/support/endpoints.d.ts +2 -0
  31. package/dist/src/services/support/endpoints.js +21 -0
  32. package/dist/src/services/support/endpoints.js.map +1 -0
  33. package/dist/src/services/support/index.d.ts +2 -0
  34. package/dist/src/services/support/index.js +19 -0
  35. package/dist/src/services/support/index.js.map +1 -0
  36. package/dist/src/services/support/types.d.ts +6 -0
  37. package/dist/src/services/support/types.js +3 -0
  38. package/dist/src/services/support/types.js.map +1 -0
  39. package/dist/src/services/turnkey/endpoints.d.ts +3 -0
  40. package/dist/src/services/turnkey/endpoints.js +27 -0
  41. package/dist/src/services/turnkey/endpoints.js.map +1 -0
  42. package/dist/src/services/turnkey/index.d.ts +2 -0
  43. package/dist/src/services/turnkey/index.js +19 -0
  44. package/dist/src/services/turnkey/index.js.map +1 -0
  45. package/dist/src/services/turnkey/types.d.ts +12 -0
  46. package/dist/src/services/turnkey/types.js +3 -0
  47. package/dist/src/services/turnkey/types.js.map +1 -0
  48. package/dist/src/utils/checkout.d.ts +1 -0
  49. package/dist/src/utils/checkout.js +4 -3
  50. package/dist/src/utils/checkout.js.map +1 -1
  51. package/package.json +8 -2
  52. package/.eslintignore +0 -5
  53. package/dist/test/services/assets.test.d.ts +0 -1
  54. package/dist/test/services/assets.test.js +0 -37
  55. package/dist/test/services/assets.test.js.map +0 -1
  56. package/dist/test/services/checkout.test.d.ts +0 -1
  57. package/dist/test/services/checkout.test.js +0 -42
  58. package/dist/test/services/checkout.test.js.map +0 -1
  59. package/dist/test/services/mesh.test.d.ts +0 -1
  60. package/dist/test/services/mesh.test.js +0 -12
  61. package/dist/test/services/mesh.test.js.map +0 -1
  62. package/dist/test/services/moonpay.test.d.ts +0 -1
  63. package/dist/test/services/moonpay.test.js +0 -25
  64. package/dist/test/services/moonpay.test.js.map +0 -1
  65. package/dist/test/setup.d.ts +0 -0
  66. package/dist/test/setup.js +0 -10
  67. package/dist/test/setup.js.map +0 -1
  68. package/index.ts +0 -4
  69. package/src/consts/api.ts +0 -9
  70. package/src/consts/index.ts +0 -3
  71. package/src/consts/request.ts +0 -16
  72. package/src/consts/retry.ts +0 -21
  73. package/src/errors/BaseError.ts +0 -28
  74. package/src/errors/ClientError.ts +0 -175
  75. package/src/errors/ServerError.ts +0 -43
  76. package/src/errors/errors.json +0 -626
  77. package/src/errors/index.ts +0 -4
  78. package/src/errors/types.ts +0 -64
  79. package/src/services/assets/endpoints.ts +0 -131
  80. package/src/services/assets/index.ts +0 -2
  81. package/src/services/assets/types.ts +0 -80
  82. package/src/services/checkout/endpoints.ts +0 -233
  83. package/src/services/checkout/index.ts +0 -2
  84. package/src/services/checkout/types.ts +0 -130
  85. package/src/services/index.ts +0 -4
  86. package/src/services/mesh/endpoints.ts +0 -164
  87. package/src/services/mesh/index.ts +0 -2
  88. package/src/services/mesh/types.ts +0 -63
  89. package/src/services/moonpay/endpoints.ts +0 -62
  90. package/src/services/moonpay/index.ts +0 -2
  91. package/src/services/moonpay/types.ts +0 -15
  92. package/src/utils/checkout.ts +0 -17
  93. package/src/utils/error.ts +0 -15
  94. package/src/utils/index.ts +0 -3
  95. package/src/utils/request.ts +0 -198
  96. package/test/services/assets.test.ts +0 -41
  97. package/test/services/checkout.test.ts +0 -53
  98. package/test/services/mesh.test.ts +0 -10
  99. package/test/services/moonpay.test.ts +0 -24
  100. package/test/setup.ts +0 -9
  101. package/tsconfig.json +0 -33
@@ -1,2 +1,3 @@
1
+ export declare function randomBytes(length: number): `0x${string}`;
1
2
  export declare function generateRandomCheckoutSalt(): bigint;
2
3
  export declare function roundToNearestBottomTenth(n: number): number;
@@ -1,14 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.roundToNearestBottomTenth = exports.generateRandomCheckoutSalt = void 0;
3
+ exports.roundToNearestBottomTenth = exports.generateRandomCheckoutSalt = exports.randomBytes = void 0;
4
4
  const viem_1 = require("viem");
5
- const randomBytes = (length) => {
5
+ function randomBytes(length) {
6
6
  const bytes = new Uint8Array(length);
7
7
  for (let i = 0; i < length; i++) {
8
8
  bytes[i] = Math.floor(Math.random() * 256);
9
9
  }
10
10
  return (0, viem_1.toHex)(bytes);
11
- };
11
+ }
12
+ exports.randomBytes = randomBytes;
12
13
  function generateRandomCheckoutSalt() {
13
14
  return BigInt(randomBytes(32));
14
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checkout.js","sourceRoot":"","sources":["../../../src/utils/checkout.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAE5B,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;IACrC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAA;IACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,IAAA,YAAK,EAAC,KAAK,CAAC,CAAA;AACrB,CAAC,CAAA;AAED,SAAgB,0BAA0B;IACxC,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;AAChC,CAAC;AAFD,gEAEC;AAED,SAAgB,yBAAyB,CAAC,CAAS;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;AAChC,CAAC;AAFD,8DAEC"}
1
+ {"version":3,"file":"checkout.js","sourceRoot":"","sources":["../../../src/utils/checkout.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAE5B,SAAgB,WAAW,CAAC,MAAc;IACxC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAA;IACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,IAAA,YAAK,EAAC,KAAK,CAAC,CAAA;AACrB,CAAC;AAND,kCAMC;AAED,SAAgB,0BAA0B;IACxC,OAAO,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;AAChC,CAAC;AAFD,gEAEC;AAED,SAAgB,yBAAyB,CAAC,CAAS;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;AAChC,CAAC;AAFD,8DAEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@funkit/api-base",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "Base API for Funkit",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,12 +26,18 @@
26
26
  "url": "git+https://github.com/fun-xyz/funkit.git",
27
27
  "directory": "packages/api-base"
28
28
  },
29
+ "files": [
30
+ "dist/src",
31
+ "dist/index.d.ts",
32
+ "dist/index.js",
33
+ "dist/index.js.map",
34
+ "CHANGELOG.md"
35
+ ],
29
36
  "scripts": {
30
37
  "build": "rm -rf dist && tsc",
31
38
  "build:watch": "rm -rf dist && tsc -w",
32
39
  "lint": "eslint --ext .ts,.tsx './**/*.{ts,tsx}'",
33
40
  "lint:fix": "eslint --ext .ts,.tsx './**/*.{ts,tsx}' --fix",
34
- "dev-test": "ts-node ./dev-test.ts",
35
41
  "test": "vitest"
36
42
  }
37
43
  }
package/.eslintignore DELETED
@@ -1,5 +0,0 @@
1
- node_modules
2
- dist
3
- *.js
4
- *.spec.ts
5
- packages/*/dist/**/*
@@ -1 +0,0 @@
1
- export {};
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const __1 = require("../../");
4
- describe('assets service', () => {
5
- test('getAssetPriceInfo returns valid result', async () => {
6
- const assetPriceInfo = await (0, __1.getAssetPriceInfo)({
7
- chainId: '1',
8
- assetTokenAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
9
- apiKey: global.TEST_API_KEY,
10
- });
11
- expect(assetPriceInfo.amount).toBe(1);
12
- expect(assetPriceInfo.unitPrice).toBeGreaterThan(0);
13
- expect(assetPriceInfo.total).toBeGreaterThan(0);
14
- });
15
- test('getAllWalletTokens returns valid result', async () => {
16
- const walletBalance = await (0, __1.getAllWalletTokens)({
17
- walletAddress: global.TEST_WALLET_ADDRESS,
18
- onlyVerifiedTokens: true,
19
- apiKey: global.TEST_API_KEY,
20
- });
21
- expect(walletBalance['1']).toBeTruthy();
22
- expect(walletBalance['137']).toBeTruthy();
23
- expect(walletBalance['8453']).toBeTruthy();
24
- expect(walletBalance['324']).toBeTruthy();
25
- expect(walletBalance['42161']).toBeTruthy();
26
- });
27
- test('getAllWalletTokensByChainId returns valid result', async () => {
28
- const ethereumBalance = await (0, __1.getAllWalletTokensByChainId)({
29
- chainId: '1',
30
- walletAddress: global.TEST_WALLET_ADDRESS,
31
- onlyVerifiedTokens: true,
32
- apiKey: global.TEST_API_KEY,
33
- });
34
- expect(ethereumBalance).toBeTruthy();
35
- });
36
- });
37
- //# sourceMappingURL=assets.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assets.test.js","sourceRoot":"","sources":["../../../test/services/assets.test.ts"],"names":[],"mappings":";;AAAA,8BAIe;AAEf,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,cAAc,GAAG,MAAM,IAAA,qBAAiB,EAAC;YAC7C,OAAO,EAAE,GAAG;YACZ,iBAAiB,EAAE,4CAA4C;YAC/D,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACrC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QACnD,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,aAAa,GAAG,MAAM,IAAA,sBAAkB,EAAC;YAC7C,aAAa,EAAE,MAAM,CAAC,mBAAmB;YACzC,kBAAkB,EAAE,IAAI;YACxB,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACvC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACzC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAC1C,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACzC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,eAAe,GAAG,MAAM,IAAA,+BAA2B,EAAC;YACxD,OAAO,EAAE,GAAG;YACZ,aAAa,EAAE,MAAM,CAAC,mBAAmB;YACzC,kBAAkB,EAAE,IAAI;YACxB,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const __1 = require("../../");
4
- const QUOTE_TEST_TIMEOUT = 30000; // 30 seconds
5
- describe('checkout service', () => {
6
- let quoteId;
7
- test('getCheckoutQuote and initializeCheckout returns valid result', async () => {
8
- const quoteParams = {
9
- fromChainId: '8453',
10
- fromTokenAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
11
- fromTokenDecimals: 18,
12
- toChainId: '137',
13
- toTokenAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
14
- toTokenDecimals: 18,
15
- toTokenAmount: 5,
16
- expirationTimestampMs: 300000, // 5 minutes
17
- sponsorInitialTransferGasLimit: '0',
18
- recipientAddr: global.TEST_WALLET_ADDRESS,
19
- needsRefuel: false,
20
- apiKey: global.TEST_API_KEY,
21
- };
22
- const quote = await (0, __1.getCheckoutQuote)(quoteParams);
23
- quoteId = quote.quoteId;
24
- expect(quote.quoteId).toBeTruthy();
25
- const checkoutInitParams = {
26
- quoteId,
27
- sourceOfFund: `balance|eoa|${global.TEST_WALLET_ADDRESS}`,
28
- apiKey: global.TEST_API_KEY,
29
- clientMetadata: {},
30
- };
31
- const depositAddr = await (0, __1.initializeCheckout)(checkoutInitParams);
32
- expect(depositAddr).toBeTruthy();
33
- }, QUOTE_TEST_TIMEOUT);
34
- test('getCheckoutsByRecipientAddress returns valid result', async () => {
35
- const checkouts = await (0, __1.getCheckoutsByRecipientAddress)({
36
- recipientAddress: global.TEST_WALLET_ADDRESS,
37
- apiKey: global.TEST_API_KEY,
38
- });
39
- expect(checkouts.length).toBeGreaterThan(0);
40
- });
41
- });
42
- //# sourceMappingURL=checkout.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkout.test.js","sourceRoot":"","sources":["../../../test/services/checkout.test.ts"],"names":[],"mappings":";;AAAA,8BAIe;AAEf,MAAM,kBAAkB,GAAG,KAAK,CAAA,CAAC,aAAa;AAE9C,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,OAAe,CAAA;IACnB,IAAI,CACF,8DAA8D,EAC9D,KAAK,IAAI,EAAE;QACT,MAAM,WAAW,GAAG;YAClB,WAAW,EAAE,MAAM;YACnB,gBAAgB,EACd,4CAA6D;YAC/D,iBAAiB,EAAE,EAAE;YACrB,SAAS,EAAE,KAAK;YAChB,cAAc,EACZ,4CAA6D;YAC/D,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,CAAC;YAChB,qBAAqB,EAAE,MAAO,EAAE,YAAY;YAC5C,8BAA8B,EAAE,GAAG;YACnC,aAAa,EAAE,MAAM,CAAC,mBAAmB;YACzC,WAAW,EAAE,KAAK;YAClB,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAA;QACD,MAAM,KAAK,GAAG,MAAM,IAAA,oBAAgB,EAAC,WAAW,CAAC,CAAA;QACjD,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QACvB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAA;QAElC,MAAM,kBAAkB,GAAG;YACzB,OAAO;YACP,YAAY,EAAE,eAAe,MAAM,CAAC,mBAAmB,EAAE;YACzD,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,cAAc,EAAE,EAAE;SACnB,CAAA;QACD,MAAM,WAAW,GAAG,MAAM,IAAA,sBAAkB,EAAC,kBAAkB,CAAC,CAAA;QAChE,MAAM,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,CAAA;IAClC,CAAC,EACD,kBAAkB,CACnB,CAAA;IAED,IAAI,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,SAAS,GAAG,MAAM,IAAA,kCAA8B,EAAC;YACrD,gBAAgB,EAAE,MAAM,CAAC,mBAAmB;YAC5C,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const __1 = require("../../");
4
- describe('mesh service', () => {
5
- test('meshGetTransferIntegrations returns valid result', async () => {
6
- const integrationsResponse = await (0, __1.meshGetTransferIntegrations)({
7
- apiKey: global.TEST_API_KEY,
8
- });
9
- expect(integrationsResponse.integrations.length).toBeGreaterThan(0);
10
- });
11
- });
12
- //# sourceMappingURL=mesh.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mesh.test.js","sourceRoot":"","sources":["../../../test/services/mesh.test.ts"],"names":[],"mappings":";;AAAA,8BAAoD;AAEpD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,oBAAoB,GAAG,MAAM,IAAA,+BAA2B,EAAC;YAC7D,MAAM,EAAE,MAAM,CAAC,YAAY;SAC5B,CAAC,CAAA;QACF,MAAM,CAAC,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const __1 = require("../../");
4
- describe('moonpay service', () => {
5
- test('getMoonpayUrlSignature returns valid result', async () => {
6
- const urlSignature = await (0, __1.getMoonpayUrlSignature)({
7
- apiKey: global.TEST_API_KEY,
8
- isSandbox: true,
9
- url: 'https://buy.moonpay.com/?apiKey=pk_test_dWfAhBbvVexIId9S5hPd78mKM7ivIsqu&currencyCode=usdc&walletAddress=0x931122fD30c218e208A3546A3faa2f40F6c06A3e&colorCode=%2331a3f8&theme=light&baseCurrencyCode=usd&quoteCurrencyAmount=106.23&lockAmount=true&externalCustomerId=0x6ec0c2f25d323e7779925Cc20c3740101f990d9F%7C0x6ec0c2f25d323e7779925Cc20c3740101f990d9F%7CgsWiq9zk0W5Rh4vzpqURI6nyauFL0tSm9m0EydTI&mpSdk=%7B%22version%22%3A%221.8.0%22%2C%22environment%22%3A%22production%22%2C%22flow%22%3A%22buy%22%2C%22variant%22%3A%22embedded%22%2C%22platform%22%3A%22web%22%7D',
10
- });
11
- expect(urlSignature).toBeTruthy();
12
- });
13
- test('getMoonpayBuyQuoteForCreditCard returns valid result', async () => {
14
- const buyQuote = await (0, __1.getMoonpayBuyQuoteForCreditCard)({
15
- apiKey: global.TEST_API_KEY,
16
- baseCurrencyCode: 'usd',
17
- currencyCode: 'usdc',
18
- quoteCurrencyAmount: '106.23',
19
- areFeesIncluded: true,
20
- });
21
- expect(buyQuote.accountId).toBeTruthy();
22
- expect(buyQuote.baseCurrencyCode).toBe('usd');
23
- });
24
- });
25
- //# sourceMappingURL=moonpay.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"moonpay.test.js","sourceRoot":"","sources":["../../../test/services/moonpay.test.ts"],"names":[],"mappings":";;AAAA,8BAAgF;AAEhF,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAsB,EAAC;YAChD,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,SAAS,EAAE,IAAI;YACf,GAAG,EAAE,ijBAAijB;SACvjB,CAAC,CAAA;QACF,MAAM,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE,CAAA;IACnC,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,QAAQ,GAAG,MAAM,IAAA,mCAA+B,EAAC;YACrD,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,gBAAgB,EAAE,KAAK;YACvB,YAAY,EAAE,MAAM;YACpB,mBAAmB,EAAE,QAAQ;YAC7B,eAAe,EAAE,IAAI;SACtB,CAAC,CAAA;QACF,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAA;QACvC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
File without changes
@@ -1,10 +0,0 @@
1
- "use strict";
2
- beforeAll(() => {
3
- global.TEST_API_KEY = 'hnHevQR0y394nBprGrvNx4HgoZHUwMet5mXTOBhf';
4
- global.TEST_WALLET_ADDRESS = '0xD646AF38161B2d9Fd65F5116C7Ecdf23562644b0';
5
- });
6
- afterAll(() => {
7
- delete global.TEST_API_KEY;
8
- delete global.TEST_WALLET_ADDRESS;
9
- });
10
- //# sourceMappingURL=setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../test/setup.ts"],"names":[],"mappings":";AAAA,SAAS,CAAC,GAAG,EAAE;IACb,MAAM,CAAC,YAAY,GAAG,0CAA0C,CAAA;IAChE,MAAM,CAAC,mBAAmB,GAAG,4CAA4C,CAAA;AAC3E,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,GAAG,EAAE;IACZ,OAAO,MAAM,CAAC,YAAY,CAAA;IAC1B,OAAO,MAAM,CAAC,mBAAmB,CAAA;AACnC,CAAC,CAAC,CAAA"}
package/index.ts DELETED
@@ -1,4 +0,0 @@
1
- export * from './src/consts'
2
- export * from './src/errors'
3
- export * from './src/services'
4
- export * from './src/utils'
package/src/consts/api.ts DELETED
@@ -1,9 +0,0 @@
1
- export const API_BASE_URL =
2
- process.env.NODE_ENV === 'staging'
3
- ? 'https://api.fun.xyz/staging/v1'
4
- : process.env.NODE_ENV === 'testing'
5
- ? 'https://api.fun.xyz/testing/v1'
6
- : process.env.NODE_ENV === 'local'
7
- ? 'http://127.0.0.1:3000'
8
- : // Production
9
- 'https://api.fun.xyz/v1'
@@ -1,3 +0,0 @@
1
- export * from './api'
2
- export * from './request'
3
- export * from './retry'
@@ -1,16 +0,0 @@
1
- import { RetryOptions } from './retry'
2
-
3
- export interface BaseRequest {
4
- uri: string
5
- method: 'PUT' | 'DELETE' | 'GET' | 'POST'
6
- apiKey: string
7
- retryOptions?: RetryOptions
8
- body?: object
9
- }
10
-
11
- export type GetRequest = Omit<BaseRequest, 'body' | 'method'>
12
- export type PostRequest = Omit<BaseRequest, 'method'>
13
- export type DeleteRequest = Omit<BaseRequest, 'body' | 'method'>
14
- export type PutRequest = Omit<BaseRequest, 'method'>
15
-
16
- export type BaseResponse = any // TODO:
@@ -1,21 +0,0 @@
1
- import { PartialAttemptOptions } from '@lifeomic/attempt'
2
-
3
- import { errorAbortHandler } from '../utils/error'
4
- import { BaseResponse } from './request'
5
-
6
- export type RetryOptions = PartialAttemptOptions<BaseResponse>
7
-
8
- export const DEFAULT_RETRY_OPTIONS = {
9
- delay: 100,
10
- initialDelay: 0,
11
- maxDelay: 3000,
12
- factor: 2,
13
- maxAttempts: 5,
14
- timeout: 0,
15
- jitter: true,
16
- minDelay: 0,
17
- handleError: errorAbortHandler,
18
- handleTimeout: null,
19
- beforeAttempt: null,
20
- calculateDelay: null,
21
- } as RetryOptions
@@ -1,28 +0,0 @@
1
- const discord = 'https://discord.gg/mvQunrx6NG'
2
- export class BaseError extends Error {
3
- timestamp: string
4
-
5
- constructor(
6
- public baseType: string,
7
- public type: string,
8
- public code: string,
9
- msg: string,
10
-
11
- public paramsUsed: any,
12
- fixSuggestion: string,
13
- docLink: string,
14
- isInternal = false,
15
- ) {
16
- super(`${msg}\n\n${fixSuggestion}\nDocs: ${docLink}\nDiscord: ${discord}`)
17
- if (isInternal) {
18
- this.loadEnd()
19
- }
20
- this.message += '\n\nTrace:'
21
- this.timestamp = new Date().toUTCString()
22
- }
23
-
24
- loadEnd() {
25
- this.message +=
26
- '\n\nThis is an internal sdk error. Please contact the fun team at our Discord for the fastest response.'
27
- }
28
- }
@@ -1,175 +0,0 @@
1
- import { BaseError } from './BaseError'
2
- import FWErrors from './errors.json'
3
- import { ErrorBaseType, ErrorCode, ErrorType } from './types'
4
- export class ClientError extends BaseError {
5
- constructor(
6
- type: string,
7
- code: string,
8
- msg: string,
9
- paramsUsed: any,
10
- fixSuggestion: string,
11
- docLink: string,
12
- ) {
13
- super(
14
- ErrorBaseType.ClientError,
15
- type,
16
- code,
17
- msg,
18
- paramsUsed,
19
- fixSuggestion,
20
- docLink,
21
- false,
22
- )
23
- }
24
- }
25
-
26
- export class InvalidParameterError extends ClientError {
27
- constructor(
28
- code: string,
29
- msg: string,
30
- paramsUsed: any,
31
- fixSuggestion: string,
32
- docLink: string,
33
- ) {
34
- super(
35
- ErrorType.InvalidParameter,
36
- code,
37
- msg,
38
- paramsUsed,
39
- fixSuggestion,
40
- docLink,
41
- )
42
- }
43
- }
44
-
45
- export class ResourceNotFoundError extends ClientError {
46
- constructor(
47
- code: string,
48
- msg: string,
49
- paramsUsed: any,
50
- fixSuggestion: string,
51
- docLink: string,
52
- ) {
53
- if (msg.includes('Chain name not found')) {
54
- const { reqId } = JSON.parse(msg)
55
- msg = ': Chain name not found or not supported.'
56
- fixSuggestion = 'Change your EnvOptions to the correct chain identifier.'
57
- super(
58
- ErrorType.ResourceNotFound,
59
- ErrorCode.ChainNotSupported,
60
- msg,
61
- { reqId },
62
- fixSuggestion,
63
- docLink,
64
- )
65
- } else {
66
- super(
67
- ErrorType.ResourceNotFound,
68
- code,
69
- msg,
70
- paramsUsed,
71
- fixSuggestion,
72
- docLink,
73
- )
74
- }
75
- }
76
- }
77
-
78
- export class InvalidActionError extends ClientError {
79
- constructor(
80
- code: string,
81
- msg: string,
82
- paramsUsed: any,
83
- fixSuggestion: string,
84
- docLink: string,
85
- ) {
86
- super(
87
- ErrorType.InvalidAction,
88
- code,
89
- msg,
90
- paramsUsed,
91
- fixSuggestion,
92
- docLink,
93
- )
94
- }
95
- }
96
-
97
- export class ThrottlingError extends ClientError {
98
- constructor(
99
- code: string,
100
- msg: string,
101
- paramsUsed: any,
102
- fixSuggestion: string,
103
- docLink: string,
104
- ) {
105
- super(
106
- ErrorType.ThrottlingError,
107
- code,
108
- msg,
109
- paramsUsed,
110
- fixSuggestion,
111
- docLink,
112
- )
113
- }
114
- }
115
-
116
- export class AccessDeniedError extends ClientError {
117
- constructor(
118
- code: string,
119
- msg: string,
120
- paramsUsed: any,
121
- fixSuggestion: string,
122
- docLink: string,
123
- ) {
124
- super(
125
- ErrorType.AccessDeniedError,
126
- code,
127
- msg,
128
- paramsUsed,
129
- fixSuggestion,
130
- docLink,
131
- )
132
- }
133
- }
134
-
135
- export class UserOpFailureError extends ClientError {
136
- constructor(
137
- code: string,
138
- msg: string,
139
- paramsUsed: any,
140
- fixSuggestion: string,
141
- docLink: string,
142
- ) {
143
- const FWCode = findFWContractError(msg)
144
- if (FWCode) {
145
- const { reqId } = JSON.parse(msg)
146
- msg = FWErrors[FWCode].info
147
- fixSuggestion = FWErrors[FWCode].suggestion
148
- super(
149
- ErrorType.UserOpFailureError,
150
- ErrorCode.FunWalletErrorCode,
151
- msg,
152
- { reqId },
153
- fixSuggestion,
154
- docLink,
155
- )
156
- } else {
157
- super(
158
- ErrorType.UserOpFailureError,
159
- code,
160
- msg,
161
- paramsUsed,
162
- fixSuggestion,
163
- docLink,
164
- )
165
- }
166
- }
167
- }
168
-
169
- const findFWContractError = (msg: string) => {
170
- let match = msg.match(/FW\d{3}/)
171
- if (!match) {
172
- match = msg.match(/AA\d./)
173
- }
174
- return match?.[0]
175
- }
@@ -1,43 +0,0 @@
1
- import { BaseError } from './BaseError'
2
- import { ErrorBaseType, ErrorType } from './types'
3
-
4
- export class ServerError extends BaseError {
5
- constructor(
6
- type: string,
7
- code: string,
8
- msg: string,
9
- paramsUsed: any,
10
- fixSuggestion: string,
11
- docLink: string,
12
- ) {
13
- super(
14
- ErrorBaseType.ServerError,
15
- type,
16
- code,
17
- msg,
18
- paramsUsed,
19
- fixSuggestion,
20
- docLink,
21
- true,
22
- )
23
- }
24
- }
25
-
26
- export class InternalFailureError extends ServerError {
27
- constructor(
28
- code: string,
29
- msg: string,
30
- paramsUsed: any,
31
- fixSuggestion: string,
32
- docLink: string,
33
- ) {
34
- super(
35
- ErrorType.InternalServerFailure,
36
- code,
37
- msg,
38
- paramsUsed,
39
- fixSuggestion,
40
- docLink,
41
- )
42
- }
43
- }