zyropai 1.0.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.
Files changed (110) hide show
  1. package/.eslintrc.json +16 -0
  2. package/.github/workflows/ci.yml +26 -0
  3. package/.github/workflows/publish.yml +52 -0
  4. package/.prettierrc +7 -0
  5. package/LICENSE +0 -0
  6. package/README.md +0 -0
  7. package/dist/client.d.ts +42 -0
  8. package/dist/client.d.ts.map +1 -0
  9. package/dist/client.js +175 -0
  10. package/dist/client.js.map +1 -0
  11. package/dist/errors.d.ts +32 -0
  12. package/dist/errors.d.ts.map +1 -0
  13. package/dist/errors.js +71 -0
  14. package/dist/errors.js.map +1 -0
  15. package/dist/index.d.ts +7 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +24 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/resources/base.d.ts +14 -0
  20. package/dist/resources/base.d.ts.map +1 -0
  21. package/dist/resources/base.js +29 -0
  22. package/dist/resources/base.js.map +1 -0
  23. package/dist/resources/currencies.d.ts +16 -0
  24. package/dist/resources/currencies.d.ts.map +1 -0
  25. package/dist/resources/currencies.js +38 -0
  26. package/dist/resources/currencies.js.map +1 -0
  27. package/dist/resources/custody.d.ts +50 -0
  28. package/dist/resources/custody.d.ts.map +1 -0
  29. package/dist/resources/custody.js +42 -0
  30. package/dist/resources/custody.js.map +1 -0
  31. package/dist/resources/donations.d.ts +44 -0
  32. package/dist/resources/donations.d.ts.map +1 -0
  33. package/dist/resources/donations.js +50 -0
  34. package/dist/resources/donations.js.map +1 -0
  35. package/dist/resources/index.d.ts +2 -0
  36. package/dist/resources/index.d.ts.map +1 -0
  37. package/dist/resources/index.js +3 -0
  38. package/dist/resources/index.js.map +1 -0
  39. package/dist/resources/invoices.d.ts +15 -0
  40. package/dist/resources/invoices.d.ts.map +1 -0
  41. package/dist/resources/invoices.js +34 -0
  42. package/dist/resources/invoices.js.map +1 -0
  43. package/dist/resources/network.d.ts +21 -0
  44. package/dist/resources/network.d.ts.map +1 -0
  45. package/dist/resources/network.js +18 -0
  46. package/dist/resources/network.js.map +1 -0
  47. package/dist/resources/payments.d.ts +24 -0
  48. package/dist/resources/payments.d.ts.map +1 -0
  49. package/dist/resources/payments.js +50 -0
  50. package/dist/resources/payments.js.map +1 -0
  51. package/dist/resources/payouts.d.ts +102 -0
  52. package/dist/resources/payouts.d.ts.map +1 -0
  53. package/dist/resources/payouts.js +52 -0
  54. package/dist/resources/payouts.js.map +1 -0
  55. package/dist/resources/pos.d.ts +71 -0
  56. package/dist/resources/pos.d.ts.map +1 -0
  57. package/dist/resources/pos.js +26 -0
  58. package/dist/resources/pos.js.map +1 -0
  59. package/dist/resources/rates.d.ts +26 -0
  60. package/dist/resources/rates.d.ts.map +1 -0
  61. package/dist/resources/rates.js +29 -0
  62. package/dist/resources/rates.js.map +1 -0
  63. package/dist/resources/status.d.ts +22 -0
  64. package/dist/resources/status.d.ts.map +1 -0
  65. package/dist/resources/status.js +17 -0
  66. package/dist/resources/status.js.map +1 -0
  67. package/dist/resources/timezones.d.ts +26 -0
  68. package/dist/resources/timezones.d.ts.map +1 -0
  69. package/dist/resources/timezones.js +20 -0
  70. package/dist/resources/timezones.js.map +1 -0
  71. package/dist/resources/webhooks.d.ts +8 -0
  72. package/dist/resources/webhooks.d.ts.map +1 -0
  73. package/dist/resources/webhooks.js +30 -0
  74. package/dist/resources/webhooks.js.map +1 -0
  75. package/dist/types.d.ts +72 -0
  76. package/dist/types.d.ts.map +1 -0
  77. package/dist/types.js +6 -0
  78. package/dist/types.js.map +1 -0
  79. package/dist/utils/helpers.d.ts +2 -0
  80. package/dist/utils/helpers.d.ts.map +1 -0
  81. package/dist/utils/helpers.js +3 -0
  82. package/dist/utils/helpers.js.map +1 -0
  83. package/examples/mass-payout.js +0 -0
  84. package/examples/quickstart.js +0 -0
  85. package/examples/webhook-server.js +0 -0
  86. package/jest.config.js +19 -0
  87. package/package.json +55 -0
  88. package/src/client.ts +167 -0
  89. package/src/errors.ts +74 -0
  90. package/src/index.ts +8 -0
  91. package/src/resources/base.ts +33 -0
  92. package/src/resources/currencies.ts +39 -0
  93. package/src/resources/custody.ts +82 -0
  94. package/src/resources/donations.ts +84 -0
  95. package/src/resources/index.ts +0 -0
  96. package/src/resources/invoices.ts +35 -0
  97. package/src/resources/network.ts +26 -0
  98. package/src/resources/payments.ts +50 -0
  99. package/src/resources/payouts.ts +136 -0
  100. package/src/resources/pos.ts +90 -0
  101. package/src/resources/rates.ts +36 -0
  102. package/src/resources/status.ts +30 -0
  103. package/src/resources/timezones.ts +38 -0
  104. package/src/resources/webhooks.ts +28 -0
  105. package/src/types.ts +79 -0
  106. package/src/utils/helpers.ts +0 -0
  107. package/tests/unit/client.test.ts +0 -0
  108. package/tests/unit/payments.test.ts +0 -0
  109. package/tests/unit/webhooks.test.ts +0 -0
  110. package/tsconfig.json +21 -0
package/.eslintrc.json ADDED
@@ -0,0 +1,16 @@
1
+ {
2
+ "parser": "@typescript-eslint/parser",
3
+ "extends": [
4
+ "eslint:recommended",
5
+ "plugin:@typescript-eslint/recommended"
6
+ ],
7
+ "parserOptions": {
8
+ "ecmaVersion": 2020,
9
+ "sourceType": "module"
10
+ },
11
+ "rules": {
12
+ "@typescript-eslint/explicit-function-return-type": "off",
13
+ "@typescript-eslint/no-explicit-any": "off",
14
+ "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }]
15
+ }
16
+ }
@@ -0,0 +1,26 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main, develop]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ node-version: [14.x, 16.x, 18.x, 20.x]
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+ - name: Use Node.js ${{ matrix.node-version }}
19
+ uses: actions/setup-node@v4
20
+ with:
21
+ node-version: ${{ matrix.node-version }}
22
+ - run: npm ci
23
+ - run: npm run lint
24
+ - run: npm run build
25
+ - run: npm test
26
+
@@ -0,0 +1,52 @@
1
+ name: Publish to npm
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+
8
+ jobs:
9
+ test:
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ matrix:
13
+ node-version: [14.x, 16.x, 18.x, 20.x]
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - name: Use Node.js ${{ matrix.node-version }}
17
+ uses: actions/setup-node@v4
18
+ with:
19
+ node-version: ${{ matrix.node-version }}
20
+ - run: npm ci
21
+ - run: npm run build
22
+ - run: npm test
23
+
24
+ publish:
25
+ needs: test
26
+ runs-on: ubuntu-latest
27
+ permissions:
28
+ contents: read
29
+ id-token: write
30
+ steps:
31
+ - uses: actions/checkout@v4
32
+
33
+ - uses: actions/setup-node@v4
34
+ with:
35
+ node-version: '18.x'
36
+ registry-url: 'https://registry.npmjs.org'
37
+
38
+ - name: Install dependencies
39
+ run: npm ci
40
+
41
+ - name: Build
42
+ run: npm run build
43
+
44
+ - name: Test
45
+ run: npm test
46
+
47
+ - name: Publish to npm
48
+ run: npm publish --access public
49
+ env:
50
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
51
+
52
+
package/.prettierrc ADDED
@@ -0,0 +1,7 @@
1
+ {
2
+ "semi": true,
3
+ "trailingComma": "all",
4
+ "singleQuote": true,
5
+ "printWidth": 100,
6
+ "tabWidth": 2
7
+ }
package/LICENSE ADDED
File without changes
package/README.md ADDED
File without changes
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Main client for ZyroPAI API
3
+ */
4
+ import { ZyroPAIConfig } from './types';
5
+ import { PaymentsResource } from './resources/payments';
6
+ import { InvoicesResource } from './resources/invoices';
7
+ import { PayoutsResource } from './resources/payouts';
8
+ import { CurrenciesResource } from './resources/currencies';
9
+ import { CustodyResource } from './resources/custody';
10
+ import { RatesResource } from './resources/rates';
11
+ import { DonationsResource } from './resources/donations';
12
+ import { POSResource } from './resources/pos';
13
+ import { NetworkResource } from './resources/network';
14
+ import { StatusResource } from './resources/status';
15
+ import { TimezonesResource } from './resources/timezones';
16
+ import { WebhooksResource } from './resources/webhooks';
17
+ export declare class ZyroPAI {
18
+ readonly payments: PaymentsResource;
19
+ readonly invoices: InvoicesResource;
20
+ readonly payouts: PayoutsResource;
21
+ readonly currencies: CurrenciesResource;
22
+ readonly custody: CustodyResource;
23
+ readonly rates: RatesResource;
24
+ readonly donations: DonationsResource;
25
+ readonly pos: POSResource;
26
+ readonly network: NetworkResource;
27
+ readonly status: StatusResource;
28
+ readonly timezones: TimezonesResource;
29
+ readonly webhooks: WebhooksResource;
30
+ private readonly apiKey;
31
+ private readonly baseUrl;
32
+ private readonly timeout;
33
+ private readonly maxRetries;
34
+ private readonly client;
35
+ constructor(config?: ZyroPAIConfig);
36
+ request<T = any>(method: string, path: string, data?: any, retryCount?: number): Promise<T>;
37
+ get<T = any>(path: string): Promise<T>;
38
+ post<T = any>(path: string, data?: any): Promise<T>;
39
+ put<T = any>(path: string, data?: any): Promise<T>;
40
+ delete<T = any>(path: string): Promise<T>;
41
+ }
42
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,qBAAa,OAAO;IAClB,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAC3C,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAC3C,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,UAAU,EAAE,kBAAkB,CAAC;IAC/C,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,KAAK,EAAE,aAAa,CAAC;IACrC,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAC7C,SAAgB,GAAG,EAAE,WAAW,CAAC;IACjC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,MAAM,EAAE,cAAc,CAAC;IACvC,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAC7C,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAE3B,MAAM,GAAE,aAAkB;IA2ChC,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,UAAU,SAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IA2DtF,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAItC,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAInD,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAIlD,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAGhD"}
package/dist/client.js ADDED
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ /**
3
+ * Main client for ZyroPAI API
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ZyroPAI = void 0;
40
+ const axios_1 = __importStar(require("axios"));
41
+ const errors_1 = require("./errors");
42
+ const payments_1 = require("./resources/payments");
43
+ const invoices_1 = require("./resources/invoices");
44
+ const payouts_1 = require("./resources/payouts");
45
+ const currencies_1 = require("./resources/currencies");
46
+ const custody_1 = require("./resources/custody");
47
+ const rates_1 = require("./resources/rates");
48
+ const donations_1 = require("./resources/donations");
49
+ const pos_1 = require("./resources/pos");
50
+ const network_1 = require("./resources/network");
51
+ const status_1 = require("./resources/status");
52
+ const timezones_1 = require("./resources/timezones");
53
+ const webhooks_1 = require("./resources/webhooks");
54
+ class ZyroPAI {
55
+ payments;
56
+ invoices;
57
+ payouts;
58
+ currencies;
59
+ custody;
60
+ rates;
61
+ donations;
62
+ pos;
63
+ network;
64
+ status;
65
+ timezones;
66
+ webhooks;
67
+ apiKey;
68
+ baseUrl;
69
+ timeout;
70
+ maxRetries;
71
+ client;
72
+ constructor(config = {}) {
73
+ this.apiKey = config.apiKey || process.env.ZYROPAI_API_KEY || '';
74
+ if (!this.apiKey) {
75
+ throw new Error('API key is required. Pass it in config or set ZYROPAI_API_KEY environment variable.');
76
+ }
77
+ const mode = config.mode || 'test';
78
+ this.baseUrl =
79
+ config.baseUrl ||
80
+ (mode === 'test'
81
+ ? 'https://sandbox-api.zyropai.com/api/v1'
82
+ : 'https://api.zyropai.com/api/v1');
83
+ this.timeout = config.timeout || 30000;
84
+ this.maxRetries = config.maxRetries || 3;
85
+ this.client = axios_1.default.create({
86
+ baseURL: this.baseUrl,
87
+ timeout: this.timeout,
88
+ headers: {
89
+ Authorization: `Bearer ${this.apiKey}`,
90
+ 'Content-Type': 'application/json',
91
+ 'User-Agent': 'ZyroPAI-Node-SDK/1.0.0',
92
+ },
93
+ });
94
+ // Initialize resources
95
+ this.payments = new payments_1.PaymentsResource(this);
96
+ this.invoices = new invoices_1.InvoicesResource(this);
97
+ this.payouts = new payouts_1.PayoutsResource(this);
98
+ this.currencies = new currencies_1.CurrenciesResource(this);
99
+ this.custody = new custody_1.CustodyResource(this);
100
+ this.rates = new rates_1.RatesResource(this);
101
+ this.donations = new donations_1.DonationsResource(this);
102
+ this.pos = new pos_1.POSResource(this);
103
+ this.network = new network_1.NetworkResource(this);
104
+ this.status = new status_1.StatusResource(this);
105
+ this.timezones = new timezones_1.TimezonesResource(this);
106
+ this.webhooks = new webhooks_1.WebhooksResource(this);
107
+ }
108
+ async request(method, path, data, retryCount = 0) {
109
+ try {
110
+ const config = {
111
+ method,
112
+ url: path,
113
+ ...(data && { data }),
114
+ };
115
+ const response = await this.client.request(config);
116
+ return response.data;
117
+ }
118
+ catch (err) {
119
+ // Handle Axios errors
120
+ if (err instanceof axios_1.AxiosError) {
121
+ const status = err.response?.status || 0;
122
+ const responseData = err.response?.data;
123
+ const message = responseData?.detail || err.message;
124
+ const requestId = err.response?.headers?.['x-request-id'];
125
+ // Handle rate limiting
126
+ if (status === 429 && retryCount < this.maxRetries) {
127
+ const retryAfter = parseInt(err.response?.headers['retry-after'] || `${Math.pow(2, retryCount)}`);
128
+ await new Promise((resolve) => setTimeout(resolve, retryAfter * 1000));
129
+ return this.request(method, path, data, retryCount + 1);
130
+ }
131
+ if (status === 401) {
132
+ throw new errors_1.AuthenticationError(message, status, responseData, requestId);
133
+ }
134
+ if (status === 429) {
135
+ const retryAfter = parseInt(err.response?.headers['retry-after'] || '30');
136
+ throw new errors_1.RateLimitError(message, retryAfter, status, responseData, requestId);
137
+ }
138
+ if (status === 400) {
139
+ throw new errors_1.InvalidRequestError(message, status, responseData, requestId);
140
+ }
141
+ if (status >= 500) {
142
+ throw new errors_1.APIError(message, status, responseData, requestId);
143
+ }
144
+ throw new errors_1.APIError(message, status, responseData, requestId);
145
+ }
146
+ // Handle other error types with proper type checking
147
+ if (typeof err === 'object' && err !== null) {
148
+ const errorObj = err;
149
+ if (errorObj.code === 'ECONNABORTED') {
150
+ throw new errors_1.TimeoutError(`Request timeout after ${this.timeout}ms`);
151
+ }
152
+ if (errorObj.code === 'ECONNREFUSED') {
153
+ throw new errors_1.ConnectionError(`Connection refused to ${this.baseUrl}`);
154
+ }
155
+ }
156
+ // Fallback error
157
+ const errorMessage = err instanceof Error ? err.message : String(err);
158
+ throw new errors_1.ZyroPAIError(`Request failed: ${errorMessage}`);
159
+ }
160
+ }
161
+ async get(path) {
162
+ return this.request('GET', path);
163
+ }
164
+ async post(path, data) {
165
+ return this.request('POST', path, data);
166
+ }
167
+ async put(path, data) {
168
+ return this.request('PUT', path, data);
169
+ }
170
+ async delete(path) {
171
+ return this.request('DELETE', path);
172
+ }
173
+ }
174
+ exports.ZyroPAI = ZyroPAI;
175
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Custom error classes for ZyroPAI SDK
3
+ */
4
+ export declare class ZyroPAIError extends Error {
5
+ readonly status?: number;
6
+ readonly responseBody?: any;
7
+ readonly requestId?: string;
8
+ constructor(message: string, status?: number, responseBody?: any, requestId?: string);
9
+ }
10
+ export declare class AuthenticationError extends ZyroPAIError {
11
+ constructor(message: string, status?: number, responseBody?: any, requestId?: string);
12
+ }
13
+ export declare class RateLimitError extends ZyroPAIError {
14
+ readonly retryAfter?: number;
15
+ constructor(message: string, retryAfter?: number, status?: number, responseBody?: any, requestId?: string);
16
+ }
17
+ export declare class InvalidRequestError extends ZyroPAIError {
18
+ constructor(message: string, status?: number, responseBody?: any, requestId?: string);
19
+ }
20
+ export declare class APIError extends ZyroPAIError {
21
+ constructor(message: string, status?: number, responseBody?: any, requestId?: string);
22
+ }
23
+ export declare class WebhookSignatureError extends ZyroPAIError {
24
+ constructor(message: string);
25
+ }
26
+ export declare class ConnectionError extends ZyroPAIError {
27
+ constructor(message: string);
28
+ }
29
+ export declare class TimeoutError extends ZyroPAIError {
30
+ constructor(message: string);
31
+ }
32
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,qBAAa,YAAa,SAAQ,KAAK;IACnC,SAAgB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChC,SAAgB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnC,SAAgB,SAAS,CAAC,EAAE,MAAM,CAAC;gBAEvB,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM;CAOvF;AAED,qBAAa,mBAAoB,SAAQ,YAAY;gBACrC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM;CAIvF;AAED,qBAAa,cAAe,SAAQ,YAAY;IAC5C,SAAgB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAExB,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM;CAK5G;AAED,qBAAa,mBAAoB,SAAQ,YAAY;gBACrC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM;CAIvF;AAED,qBAAa,QAAS,SAAQ,YAAY;gBAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM;CAIvF;AAED,qBAAa,qBAAsB,SAAQ,YAAY;gBACvC,OAAO,EAAE,MAAM;CAI9B;AAED,qBAAa,eAAgB,SAAQ,YAAY;gBACjC,OAAO,EAAE,MAAM;CAI9B;AAED,qBAAa,YAAa,SAAQ,YAAY;gBAC9B,OAAO,EAAE,MAAM;CAI9B"}
package/dist/errors.js ADDED
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ /**
3
+ * Custom error classes for ZyroPAI SDK
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TimeoutError = exports.ConnectionError = exports.WebhookSignatureError = exports.APIError = exports.InvalidRequestError = exports.RateLimitError = exports.AuthenticationError = exports.ZyroPAIError = void 0;
7
+ class ZyroPAIError extends Error {
8
+ status;
9
+ responseBody;
10
+ requestId;
11
+ constructor(message, status, responseBody, requestId) {
12
+ super(message);
13
+ this.name = 'ZyroPAIError';
14
+ this.status = status;
15
+ this.responseBody = responseBody;
16
+ this.requestId = requestId;
17
+ }
18
+ }
19
+ exports.ZyroPAIError = ZyroPAIError;
20
+ class AuthenticationError extends ZyroPAIError {
21
+ constructor(message, status, responseBody, requestId) {
22
+ super(message, status, responseBody, requestId);
23
+ this.name = 'AuthenticationError';
24
+ }
25
+ }
26
+ exports.AuthenticationError = AuthenticationError;
27
+ class RateLimitError extends ZyroPAIError {
28
+ retryAfter;
29
+ constructor(message, retryAfter, status, responseBody, requestId) {
30
+ super(message, status, responseBody, requestId);
31
+ this.name = 'RateLimitError';
32
+ this.retryAfter = retryAfter;
33
+ }
34
+ }
35
+ exports.RateLimitError = RateLimitError;
36
+ class InvalidRequestError extends ZyroPAIError {
37
+ constructor(message, status, responseBody, requestId) {
38
+ super(message, status, responseBody, requestId);
39
+ this.name = 'InvalidRequestError';
40
+ }
41
+ }
42
+ exports.InvalidRequestError = InvalidRequestError;
43
+ class APIError extends ZyroPAIError {
44
+ constructor(message, status, responseBody, requestId) {
45
+ super(message, status, responseBody, requestId);
46
+ this.name = 'APIError';
47
+ }
48
+ }
49
+ exports.APIError = APIError;
50
+ class WebhookSignatureError extends ZyroPAIError {
51
+ constructor(message) {
52
+ super(message);
53
+ this.name = 'WebhookSignatureError';
54
+ }
55
+ }
56
+ exports.WebhookSignatureError = WebhookSignatureError;
57
+ class ConnectionError extends ZyroPAIError {
58
+ constructor(message) {
59
+ super(message);
60
+ this.name = 'ConnectionError';
61
+ }
62
+ }
63
+ exports.ConnectionError = ConnectionError;
64
+ class TimeoutError extends ZyroPAIError {
65
+ constructor(message) {
66
+ super(message);
67
+ this.name = 'TimeoutError';
68
+ }
69
+ }
70
+ exports.TimeoutError = TimeoutError;
71
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,MAAa,YAAa,SAAQ,KAAK;IACnB,MAAM,CAAU;IAChB,YAAY,CAAO;IACnB,SAAS,CAAU;IAEnC,YAAY,OAAe,EAAE,MAAe,EAAE,YAAkB,EAAE,SAAkB;QAChF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;CACJ;AAZD,oCAYC;AAED,MAAa,mBAAoB,SAAQ,YAAY;IACjD,YAAY,OAAe,EAAE,MAAe,EAAE,YAAkB,EAAE,SAAkB;QAChF,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACtC,CAAC;CACJ;AALD,kDAKC;AAED,MAAa,cAAe,SAAQ,YAAY;IAC5B,UAAU,CAAU;IAEpC,YAAY,OAAe,EAAE,UAAmB,EAAE,MAAe,EAAE,YAAkB,EAAE,SAAkB;QACrG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;CACJ;AARD,wCAQC;AAED,MAAa,mBAAoB,SAAQ,YAAY;IACjD,YAAY,OAAe,EAAE,MAAe,EAAE,YAAkB,EAAE,SAAkB;QAChF,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACtC,CAAC;CACJ;AALD,kDAKC;AAED,MAAa,QAAS,SAAQ,YAAY;IACtC,YAAY,OAAe,EAAE,MAAe,EAAE,YAAkB,EAAE,SAAkB;QAChF,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IAC3B,CAAC;CACJ;AALD,4BAKC;AAED,MAAa,qBAAsB,SAAQ,YAAY;IACnD,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACxC,CAAC;CACJ;AALD,sDAKC;AAED,MAAa,eAAgB,SAAQ,YAAY;IAC7C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAClC,CAAC;CACJ;AALD,0CAKC;AAED,MAAa,YAAa,SAAQ,YAAY;IAC1C,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC/B,CAAC;CACJ;AALD,oCAKC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * ZyroPAI Node.js SDK
3
+ */
4
+ export { ZyroPAI } from './client';
5
+ export { ZyroPAIConfig } from './types';
6
+ export * from './errors';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,cAAc,UAAU,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * ZyroPAI Node.js SDK
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.ZyroPAI = void 0;
21
+ var client_1 = require("./client");
22
+ Object.defineProperty(exports, "ZyroPAI", { enumerable: true, get: function () { return client_1.ZyroPAI; } });
23
+ __exportStar(require("./errors"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,mCAAmC;AAA1B,iGAAA,OAAO,OAAA;AAEhB,2CAAyB"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Base resource class
3
+ */
4
+ import { ZyroPAI } from '../client';
5
+ export declare class APIResource {
6
+ protected client: ZyroPAI;
7
+ constructor(client: ZyroPAI);
8
+ protected request<T = any>(method: string, path: string, data?: any): Promise<T>;
9
+ protected get<T = any>(path: string): Promise<T>;
10
+ protected post<T = any>(path: string, data?: any): Promise<T>;
11
+ protected put<T = any>(path: string, data?: any): Promise<T>;
12
+ protected delete<T = any>(path: string): Promise<T>;
13
+ }
14
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/resources/base.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,WAAW;IACtB,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;gBAEd,MAAM,EAAE,OAAO;cAIX,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;cAItE,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;cAItC,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;cAInD,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;cAIlD,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAG1D"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ /**
3
+ * Base resource class
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.APIResource = void 0;
7
+ class APIResource {
8
+ client;
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ async request(method, path, data) {
13
+ return this.client.request(method, path, data);
14
+ }
15
+ async get(path) {
16
+ return this.client.get(path);
17
+ }
18
+ async post(path, data) {
19
+ return this.client.post(path, data);
20
+ }
21
+ async put(path, data) {
22
+ return this.client.put(path, data);
23
+ }
24
+ async delete(path) {
25
+ return this.client.delete(path);
26
+ }
27
+ }
28
+ exports.APIResource = APIResource;
29
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/resources/base.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIH,MAAa,WAAW;IACZ,MAAM,CAAU;IAE1B,YAAY,MAAe;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAES,KAAK,CAAC,OAAO,CAAU,MAAc,EAAE,IAAY,EAAE,IAAU;QACvE,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAES,KAAK,CAAC,GAAG,CAAU,IAAY;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAI,IAAI,CAAC,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,IAAI,CAAU,IAAY,EAAE,IAAU;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAI,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAES,KAAK,CAAC,GAAG,CAAU,IAAY,EAAE,IAAU;QACnD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAI,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAES,KAAK,CAAC,MAAM,CAAU,IAAY;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAI,IAAI,CAAC,CAAC;IACrC,CAAC;CACF;AA1BD,kCA0BC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Currencies resource
3
+ */
4
+ import { APIResource } from './base';
5
+ import { CurrenciesListParams } from '../types';
6
+ export declare class CurrenciesResource extends APIResource {
7
+ list(params?: CurrenciesListParams): Promise<any>;
8
+ getDetails(currency: string): Promise<any>;
9
+ getNetworks(currency: string): Promise<any>;
10
+ getFiat(): Promise<any>;
11
+ getSupported(params?: {
12
+ category?: string;
13
+ min_confirmations?: number;
14
+ }): Promise<any>;
15
+ }
16
+ //# sourceMappingURL=currencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currencies.d.ts","sourceRoot":"","sources":["../../src/resources/currencies.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,qBAAa,kBAAmB,SAAQ,WAAW;IAC3C,IAAI,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC;IASjD,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI1C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI3C,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;IAIvB,YAAY,CAAC,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAQ7F"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /**
3
+ * Currencies resource
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CurrenciesResource = void 0;
7
+ const base_1 = require("./base");
8
+ class CurrenciesResource extends base_1.APIResource {
9
+ async list(params) {
10
+ const queryParams = new URLSearchParams();
11
+ if (params?.include_rates)
12
+ queryParams.append('include_rates', 'true');
13
+ if (params?.include_networks)
14
+ queryParams.append('include_networks', 'true');
15
+ const path = `/currencies${queryParams.toString() ? `?${queryParams.toString()}` : ''}`;
16
+ return this.request('GET', path);
17
+ }
18
+ async getDetails(currency) {
19
+ return this.request('GET', `/currencies/${currency}`);
20
+ }
21
+ async getNetworks(currency) {
22
+ return this.request('GET', `/currencies/${currency}/networks`);
23
+ }
24
+ async getFiat() {
25
+ return this.request('GET', '/currencies/fiat');
26
+ }
27
+ async getSupported(params) {
28
+ const queryParams = new URLSearchParams();
29
+ if (params?.category)
30
+ queryParams.append('category', params.category);
31
+ if (params?.min_confirmations)
32
+ queryParams.append('min_confirmations', String(params.min_confirmations));
33
+ const path = `/currencies/supported${queryParams.toString() ? `?${queryParams.toString()}` : ''}`;
34
+ return this.request('GET', path);
35
+ }
36
+ }
37
+ exports.CurrenciesResource = CurrenciesResource;
38
+ //# sourceMappingURL=currencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currencies.js","sourceRoot":"","sources":["../../src/resources/currencies.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,iCAAqC;AAGrC,MAAa,kBAAmB,SAAQ,kBAAW;IACjD,KAAK,CAAC,IAAI,CAAC,MAA6B;QACtC,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,MAAM,EAAE,aAAa;YAAE,WAAW,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACvE,IAAI,MAAM,EAAE,gBAAgB;YAAE,WAAW,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;QAE7E,MAAM,IAAI,GAAG,cAAc,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACxF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB;QAChC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,QAAQ,WAAW,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA0D;QAC3E,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,MAAM,EAAE,QAAQ;YAAE,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtE,IAAI,MAAM,EAAE,iBAAiB;YAAE,WAAW,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAEzG,MAAM,IAAI,GAAG,wBAAwB,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAClG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;CACF;AA9BD,gDA8BC"}