@odatano/core 0.3.1

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 (98) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +212 -0
  3. package/cds-plugin.js +5 -0
  4. package/config/preview/cardano-node/alonzo-genesis.json +196 -0
  5. package/config/preview/cardano-node/byron-genesis.json +117 -0
  6. package/config/preview/cardano-node/config.json +118 -0
  7. package/config/preview/cardano-node/conway-genesis.json +297 -0
  8. package/config/preview/cardano-node/shelley-genesis.json +68 -0
  9. package/config/preview/cardano-node/topology.json +19 -0
  10. package/db/schema.cds +1318 -0
  11. package/package.json +125 -0
  12. package/src/index.d.ts.map +1 -0
  13. package/src/index.js +96 -0
  14. package/src/index.js.map +1 -0
  15. package/src/plugin.d.ts.map +1 -0
  16. package/src/plugin.js +92 -0
  17. package/src/plugin.js.map +1 -0
  18. package/srv/blockchain/backends/blockfrost-backend.d.ts.map +1 -0
  19. package/srv/blockchain/backends/blockfrost-backend.js +398 -0
  20. package/srv/blockchain/backends/blockfrost-backend.js.map +1 -0
  21. package/srv/blockchain/backends/cardano-backend.d.ts.map +1 -0
  22. package/srv/blockchain/backends/cardano-backend.js +12 -0
  23. package/srv/blockchain/backends/cardano-backend.js.map +1 -0
  24. package/srv/blockchain/backends/koios-backend.d.ts.map +1 -0
  25. package/srv/blockchain/backends/koios-backend.js +537 -0
  26. package/srv/blockchain/backends/koios-backend.js.map +1 -0
  27. package/srv/blockchain/backends/ogmios-backend.d.ts.map +1 -0
  28. package/srv/blockchain/backends/ogmios-backend.js +516 -0
  29. package/srv/blockchain/backends/ogmios-backend.js.map +1 -0
  30. package/srv/blockchain/cardano-client.d.ts.map +1 -0
  31. package/srv/blockchain/cardano-client.js +377 -0
  32. package/srv/blockchain/cardano-client.js.map +1 -0
  33. package/srv/blockchain/cardano-indexer.d.ts.map +1 -0
  34. package/srv/blockchain/cardano-indexer.js +542 -0
  35. package/srv/blockchain/cardano-indexer.js.map +1 -0
  36. package/srv/blockchain/cardano-tx-builder.d.ts.map +1 -0
  37. package/srv/blockchain/cardano-tx-builder.js +232 -0
  38. package/srv/blockchain/cardano-tx-builder.js.map +1 -0
  39. package/srv/blockchain/circuit-breaker.d.ts.map +1 -0
  40. package/srv/blockchain/circuit-breaker.js +110 -0
  41. package/srv/blockchain/circuit-breaker.js.map +1 -0
  42. package/srv/blockchain/signing/external-signer.d.ts.map +1 -0
  43. package/srv/blockchain/signing/external-signer.js +302 -0
  44. package/srv/blockchain/signing/external-signer.js.map +1 -0
  45. package/srv/blockchain/signing/signature-verifier.d.ts.map +1 -0
  46. package/srv/blockchain/signing/signature-verifier.js +249 -0
  47. package/srv/blockchain/signing/signature-verifier.js.map +1 -0
  48. package/srv/blockchain/transaction-building/buildooor-tx.d.ts.map +1 -0
  49. package/srv/blockchain/transaction-building/buildooor-tx.js +636 -0
  50. package/srv/blockchain/transaction-building/buildooor-tx.js.map +1 -0
  51. package/srv/blockchain/transaction-building/cardano-tx.d.ts.map +1 -0
  52. package/srv/blockchain/transaction-building/cardano-tx.js +3 -0
  53. package/srv/blockchain/transaction-building/cardano-tx.js.map +1 -0
  54. package/srv/blockchain/transaction-building/csl-tx.d.ts.map +1 -0
  55. package/srv/blockchain/transaction-building/csl-tx.js +766 -0
  56. package/srv/blockchain/transaction-building/csl-tx.js.map +1 -0
  57. package/srv/blockchain/transaction-building/tx-builder-registry.d.ts.map +1 -0
  58. package/srv/blockchain/transaction-building/tx-builder-registry.js +67 -0
  59. package/srv/blockchain/transaction-building/tx-builder-registry.js.map +1 -0
  60. package/srv/cardano-service.cds +179 -0
  61. package/srv/cardano-service.d.ts.map +1 -0
  62. package/srv/cardano-service.js +227 -0
  63. package/srv/cardano-service.js.map +1 -0
  64. package/srv/cardano-tx-service.cds +298 -0
  65. package/srv/cardano-tx-service.d.ts.map +1 -0
  66. package/srv/cardano-tx-service.js +646 -0
  67. package/srv/cardano-tx-service.js.map +1 -0
  68. package/srv/cardano-ui.cds +2949 -0
  69. package/srv/server.d.ts.map +1 -0
  70. package/srv/server.js +212 -0
  71. package/srv/server.js.map +1 -0
  72. package/srv/utils/backend-request-handler.d.ts.map +1 -0
  73. package/srv/utils/backend-request-handler.js +47 -0
  74. package/srv/utils/backend-request-handler.js.map +1 -0
  75. package/srv/utils/const.d.ts.map +1 -0
  76. package/srv/utils/const.js +86 -0
  77. package/srv/utils/const.js.map +1 -0
  78. package/srv/utils/error-codes.d.ts.map +1 -0
  79. package/srv/utils/error-codes.js +49 -0
  80. package/srv/utils/error-codes.js.map +1 -0
  81. package/srv/utils/errors.d.ts.map +1 -0
  82. package/srv/utils/errors.js +389 -0
  83. package/srv/utils/errors.js.map +1 -0
  84. package/srv/utils/mappers.d.ts.map +1 -0
  85. package/srv/utils/mappers.js +723 -0
  86. package/srv/utils/mappers.js.map +1 -0
  87. package/srv/utils/signing-helper.d.ts.map +1 -0
  88. package/srv/utils/signing-helper.js +128 -0
  89. package/srv/utils/signing-helper.js.map +1 -0
  90. package/srv/utils/tx-build-helper.d.ts.map +1 -0
  91. package/srv/utils/tx-build-helper.js +135 -0
  92. package/srv/utils/tx-build-helper.js.map +1 -0
  93. package/srv/utils/types.d.ts.map +1 -0
  94. package/srv/utils/types.js +36 -0
  95. package/srv/utils/types.js.map +1 -0
  96. package/srv/utils/validators.d.ts.map +1 -0
  97. package/srv/utils/validators.js +382 -0
  98. package/srv/utils/validators.js.map +1 -0
@@ -0,0 +1,389 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AllBackendsInitFailedError = exports.BackendInitError = exports.ConfigError = exports.AllBackendsFailedError = exports.RateLimitError = exports.ProviderUnavailableError = exports.MixedAssetsError = exports.InsufficientFundsError = exports.TransactionAlreadySubmittedError = exports.TransactionValidationError = exports.NotFoundError = exports.BackendError = void 0;
4
+ exports.getErrorStatus = getErrorStatus;
5
+ exports.getErrorMessage = getErrorMessage;
6
+ exports.normalizeBackendError = normalizeBackendError;
7
+ exports.rejectInvalid = rejectInvalid;
8
+ exports.rejectMissing = rejectMissing;
9
+ exports.throwIfValidationErrors = throwIfValidationErrors;
10
+ const error_codes_1 = require("./error-codes");
11
+ /**
12
+ * Backend Errors Implementation
13
+ * Defines typed errors for backend communication issues
14
+ */
15
+ /**
16
+ * BackendError Base class for all backend-related errors
17
+ */
18
+ class BackendError extends Error {
19
+ statusCode;
20
+ code;
21
+ backendName;
22
+ originalError;
23
+ target;
24
+ /** Constructor
25
+ * @param message error message string
26
+ * @param statusCode error status code
27
+ * @param code error code
28
+ * @param backendName name of the backend where the error originated
29
+ * @param originalError original error object
30
+ * @param target target resource (if applicable)
31
+ */
32
+ constructor(message, statusCode = 500, code = error_codes_1.ERROR_CODES.INTERNAL_ERROR, backendName, originalError, target) {
33
+ super(message);
34
+ this.statusCode = statusCode;
35
+ this.code = code;
36
+ this.backendName = backendName;
37
+ this.originalError = originalError;
38
+ this.target = target;
39
+ this.name = this.constructor.name;
40
+ Error.captureStackTrace(this, this.constructor);
41
+ }
42
+ }
43
+ exports.BackendError = BackendError;
44
+ /**
45
+ * NotFoundError - Resource not found in backend (404)
46
+ * This is NOT a provider error - it's a valid response indicating the resource doesn't exist
47
+ * Examples: transaction hash not found, address has no UTxOs
48
+ */
49
+ class NotFoundError extends BackendError {
50
+ /** Constructor
51
+ * @param resource name of the resource that was not found
52
+ * @param backendName name of the backend where the error originated
53
+ * @param originalError original error object
54
+ */
55
+ constructor(resource, backendName, originalError) {
56
+ super(`${resource} not found`, 404, error_codes_1.ERROR_CODES.NOT_FOUND, backendName, originalError);
57
+ }
58
+ }
59
+ exports.NotFoundError = NotFoundError;
60
+ /**
61
+ * TransactionValidationError - Transaction failed validation (400)
62
+ * Indicates that the transaction failed validation checks
63
+ * Examples: wrong signature, tampered CBOR, invalid witnesses
64
+ */
65
+ class TransactionValidationError extends BackendError {
66
+ /** Constructor
67
+ * @param message detailed validation failure message
68
+ * @param originalError original error object
69
+ */
70
+ constructor(message, originalError) {
71
+ super(message, 400, error_codes_1.ERROR_CODES.TX_VALIDATION_FAILED, undefined, originalError);
72
+ }
73
+ }
74
+ exports.TransactionValidationError = TransactionValidationError;
75
+ /**
76
+ * TransactionAlreadySubmittedError - Transaction already exists (409)
77
+ * Indicates that the transaction has already been submitted (duplicate/replay)
78
+ * Examples: same txHash already in mempool or on chain
79
+ */
80
+ class TransactionAlreadySubmittedError extends BackendError {
81
+ txHash;
82
+ /** Constructor
83
+ * @param txHash the transaction hash that was already submitted
84
+ * @param originalError original error object
85
+ */
86
+ constructor(txHash, originalError) {
87
+ super(`Transaction ${txHash} already exists in mempool or on chain`, 409, error_codes_1.ERROR_CODES.TX_ALREADY_SUBMITTED, undefined, originalError);
88
+ this.txHash = txHash;
89
+ }
90
+ }
91
+ exports.TransactionAlreadySubmittedError = TransactionAlreadySubmittedError;
92
+ /**
93
+ * InsufficientFundsError - Not enough funds or assets available (400)
94
+ * Indicates that the address does not have enough of a specific asset to complete the transaction
95
+ * Examples: trying to send more ADA than available, not enough native tokens
96
+ */
97
+ class InsufficientFundsError extends BackendError {
98
+ assetUnit;
99
+ required;
100
+ available;
101
+ /** Constructor
102
+ * @param assetUnit the asset unit that is insufficient (e.g., "lovelace" or "policyId.assetName")
103
+ * @param required the required amount
104
+ * @param available the available amount
105
+ * @param originalError original error object
106
+ */
107
+ constructor(assetUnit, required, available, originalError) {
108
+ super(`Insufficient ${assetUnit}: required ${required}, available ${available}`, 400, error_codes_1.ERROR_CODES.INSUFFICIENT_FUNDS, undefined, originalError, assetUnit);
109
+ this.assetUnit = assetUnit;
110
+ this.required = required;
111
+ this.available = available;
112
+ }
113
+ }
114
+ exports.InsufficientFundsError = InsufficientFundsError;
115
+ /**
116
+ * MixedAssetsError - UTxO contains mixed assets when pure ADA is required (400)
117
+ * Indicates that a UTxO contains native assets in addition to ADA, but the operation requires ADA-only UTxOs
118
+ */
119
+ class MixedAssetsError extends BackendError {
120
+ utxoRef;
121
+ assets;
122
+ /** Constructor
123
+ * @param utxoRef UTxO reference (txHash#outputIndex)
124
+ * @param assets list of non-ADA assets found in the UTxO
125
+ * @param originalError original error object
126
+ */
127
+ constructor(utxoRef, assets, originalError) {
128
+ super(`UTxO ${utxoRef} contains non-ADA assets: ${assets.join(', ')}`, 400, error_codes_1.ERROR_CODES.INVALID_INPUT, undefined, originalError, utxoRef);
129
+ this.utxoRef = utxoRef;
130
+ this.assets = assets;
131
+ }
132
+ }
133
+ exports.MixedAssetsError = MixedAssetsError;
134
+ /**
135
+ * ProviderUnavailableError - Provider unavailable or timeout (503)
136
+ * Indicates a temporary issue - retrying may help
137
+ * Examples: network timeout, 5xx errors, service down
138
+ */
139
+ class ProviderUnavailableError extends BackendError {
140
+ /** Constructor
141
+ * @param message error message string
142
+ * @param backendName name of the backend where the error originated
143
+ * @param timeoutMs optional timeout duration in milliseconds
144
+ * @param originalError original error object
145
+ */
146
+ constructor(message, backendName, timeoutMs, originalError) {
147
+ const msg = timeoutMs
148
+ ? `${message} (timeout after ${timeoutMs}ms)`
149
+ : message;
150
+ super(msg, 503, error_codes_1.ERROR_CODES.PROVIDER_UNAVAILABLE, backendName, originalError);
151
+ }
152
+ }
153
+ exports.ProviderUnavailableError = ProviderUnavailableError;
154
+ /**
155
+ * RateLimitError - Provider rate limit exceeded (429)
156
+ * Indicates too many requests - client should back off and retry later
157
+ * Examples: Blockfrost 10 req/sec limit, Koios tier limits
158
+ */
159
+ class RateLimitError extends BackendError {
160
+ /** Constructor
161
+ * @param message error message string
162
+ * @param backendName name of the backend where the error originated
163
+ * @param retryAfter optional retry-after duration in seconds
164
+ * @param originalError original error object
165
+ */
166
+ constructor(message, backendName, retryAfter, originalError) {
167
+ const msg = retryAfter
168
+ ? `${message} (retry after ${retryAfter}s)`
169
+ : message;
170
+ super(msg, 429, error_codes_1.ERROR_CODES.PROVIDER_RATE_LIMITED, backendName, originalError);
171
+ }
172
+ }
173
+ exports.RateLimitError = RateLimitError;
174
+ /**
175
+ * AllBackendsFailedError - All backends failed
176
+ * Aggregates multiple backend errors and returns the most relevant status
177
+ */
178
+ class AllBackendsFailedError extends BackendError {
179
+ errors;
180
+ /** Constructor
181
+ * @param errors array of backend errors
182
+ * @param originalError original error object
183
+ */
184
+ constructor(errors, originalError) {
185
+ const lastError = errors[errors.length - 1];
186
+ super(`All backends failed: ${lastError?.message ?? 'unknown error'}`, lastError?.statusCode ?? 502, lastError?.code ?? error_codes_1.ERROR_CODES.PROVIDER_UNAVAILABLE, undefined, originalError);
187
+ this.errors = errors;
188
+ }
189
+ }
190
+ exports.AllBackendsFailedError = AllBackendsFailedError;
191
+ /**
192
+ * Utility functions to extract status and message from HttpErrorLike
193
+ * @param err error object
194
+ * @returns {number} status code
195
+ */
196
+ function getErrorStatus(err) {
197
+ const e = (err ?? {});
198
+ return e.status ?? e.response?.status ?? 500;
199
+ }
200
+ /**
201
+ * Utility functions to extract status and message from HttpErrorLike
202
+ * @param err error object
203
+ * @returns {string} error message
204
+ */
205
+ function getErrorMessage(err) {
206
+ const e = (err ?? {});
207
+ // Check Axios response.data.error (Koios format)
208
+ if (e.response?.data?.error)
209
+ return e.response.data.error;
210
+ // Check direct message property
211
+ if (e.message)
212
+ return e.message;
213
+ return 'Unknown error';
214
+ }
215
+ /**
216
+ * Normalizes any backend error into a typed BackendError
217
+ *
218
+ * Priority:
219
+ * 1. Check message for "not found" → 404 (even if provider returns 5xx)
220
+ * 2. Check HTTP status 429 or rate limit messages → 429
221
+ * 3. Check HTTP status 404 → 404
222
+ * 4. Check HTTP status 5xx → 503 (retry-able)
223
+ * 5. Check HTTP status 4xx → 404 if "not found", otherwise 503
224
+ * 6. Unknown/network errors → 503
225
+ */
226
+ function normalizeBackendError(err, backendName) {
227
+ // Already normalized
228
+ if (err instanceof BackendError)
229
+ return err;
230
+ // Check for uninitialized backend client (TypeError from accessing null/undefined)
231
+ if (err instanceof TypeError &&
232
+ (err.message.includes('Cannot read properties of null') ||
233
+ err.message.includes('Cannot read properties of undefined') ||
234
+ err.message.includes('null is not an object') ||
235
+ err.message.includes('undefined is not an object'))) {
236
+ return new BackendInitError(backendName || 'unknown', new Error('Backend client not initialized - call init() first'));
237
+ }
238
+ const message = getErrorMessage(err);
239
+ const status = getErrorStatus(err);
240
+ const messageLower = message.toLowerCase();
241
+ // Priority 1: TX Submission - Already submitted/duplicate → 409
242
+ const alreadySubmittedHints = [
243
+ 'already exists',
244
+ 'already submitted',
245
+ 'already known',
246
+ 'known transaction',
247
+ 'duplicate',
248
+ 'in mempool',
249
+ ];
250
+ if (alreadySubmittedHints.some(h => messageLower.includes(h))) {
251
+ // Try to extract txHash from message
252
+ const txHashMatch = message.match(/([a-f0-9]{64})/i);
253
+ return new TransactionAlreadySubmittedError(txHashMatch?.[1] || 'unknown', err);
254
+ }
255
+ // Priority 2: TX Submission - Validation/Signature errors → 400
256
+ const validationErrorHints = [
257
+ 'signature',
258
+ 'witness',
259
+ 'verification failed',
260
+ 'deserialize',
261
+ 'malformed',
262
+ 'invalid cbor',
263
+ 'invalid transaction',
264
+ 'script failure',
265
+ ];
266
+ if (validationErrorHints.some(h => messageLower.includes(h))) {
267
+ return new TransactionValidationError(`Transaction validation failed: ${message}`, err);
268
+ }
269
+ // Priority 3: Message indicates "not found" or equivalent → always 404
270
+ // This also handles providers returning wrong status codes for missing resources
271
+ const notFoundHints = [
272
+ 'not found',
273
+ 'has not been found',
274
+ 'does not exist',
275
+ 'no data',
276
+ 'no records',
277
+ 'empty result',
278
+ 'not available',
279
+ 'no metadata',
280
+ 'invalid address',
281
+ 'malformed address',
282
+ ];
283
+ if (notFoundHints.some(h => messageLower.includes(h))) {
284
+ return new NotFoundError('Resource', backendName, err);
285
+ }
286
+ // Priority 2: Rate limiting detection (status 429 or message patterns)
287
+ if (status === 429 ||
288
+ messageLower.includes('rate limit') ||
289
+ messageLower.includes('too many requests') ||
290
+ messageLower.includes('quota exceeded')) {
291
+ // Try to extract retry-after header
292
+ const retryAfter = err.response?.headers?.["retry-after"] ||
293
+ err.response?.headers?.["x-ratelimit-reset"];
294
+ return new RateLimitError(message || 'Rate limit exceeded', backendName, retryAfter ? parseInt(retryAfter, 10) : undefined, err);
295
+ }
296
+ // Priority 3: Explicit 404 status
297
+ if (status === 404) {
298
+ return new NotFoundError('Resource', backendName, err);
299
+ }
300
+ // Priority 4: 5xx errors → Provider unavailable (retry-able)
301
+ if (status >= 500) {
302
+ return new ProviderUnavailableError(message || 'Provider returned server error', backendName, undefined, err);
303
+ }
304
+ // Priority 5: Other 4xx → Check if it's a disguised "not found"
305
+ if (status >= 400) {
306
+ // Other 4xx like bad requests → treat as unavailable
307
+ return new ProviderUnavailableError(message || 'Provider request failed', backendName, undefined, err);
308
+ }
309
+ // Priority 6: Unknown/network errors → treat as unavailable (default fallback)
310
+ return new ProviderUnavailableError(message || 'Unknown backend error', backendName, undefined, err);
311
+ }
312
+ /**
313
+ * ConfigError - Error in configuration settings
314
+ * Captures configuration-related issues
315
+ */
316
+ class ConfigError extends Error {
317
+ constructor(message) {
318
+ super(message);
319
+ this.name = 'ConfigError';
320
+ }
321
+ }
322
+ exports.ConfigError = ConfigError;
323
+ /**
324
+ * BackendInitError - Error initializing a specific backend
325
+ * Captures backend name and original error
326
+ */
327
+ class BackendInitError extends BackendError {
328
+ constructor(backendName, originalError) {
329
+ super(`Failed to initialize backend: ${backendName}`, 500, error_codes_1.ERROR_CODES.INTERNAL_ERROR, backendName, originalError);
330
+ this.name = 'BackendInitError';
331
+ }
332
+ }
333
+ exports.BackendInitError = BackendInitError;
334
+ /**
335
+ * AllBackendsInitFailedError - All backends failed to initialize
336
+ * Aggregates multiple backend initialization errors
337
+ */
338
+ class AllBackendsInitFailedError extends Error {
339
+ errors;
340
+ constructor(errors) {
341
+ const summary = errors
342
+ .map(e => `${e.backendName}: ${e.originalError instanceof Error ? e.originalError.message : String(e.originalError)}`)
343
+ .join(' | ');
344
+ super(`CardanoClient startup failed: all backends failed to initialize. ${summary}`);
345
+ this.errors = errors;
346
+ this.name = 'AllBackendsInitFailedError';
347
+ }
348
+ }
349
+ exports.AllBackendsInitFailedError = AllBackendsInitFailedError;
350
+ /**
351
+ * Function to reject requests with standardized error messages
352
+ * @param req - The incoming request
353
+ * @param ctx - Context string for the error
354
+ * @param message - Detailed error message
355
+ * @param target - Optional target resource
356
+ * @throws {BackendError} BackendError with 400 status code
357
+ */
358
+ function rejectInvalid(req, ctx, message, target) {
359
+ throw new BackendError(`${ctx}: ${message}`, 400, error_codes_1.ERROR_CODES.INVALID_INPUT, undefined, undefined, target);
360
+ }
361
+ /**
362
+ * Function to reject requests for missing required fields
363
+ * @param req - The incoming request
364
+ * @param ctx - Context string for the error
365
+ * @param field - Name of the missing field
366
+ * @throws {BackendError} BackendError with 400 status code
367
+ */
368
+ function rejectMissing(req, ctx, field) {
369
+ throw new BackendError(`${ctx}: ${field} is required`, 400, error_codes_1.ERROR_CODES.INVALID_INPUT, undefined, undefined, field);
370
+ }
371
+ /**
372
+ * Throw BackendError for the first validation error in the list
373
+ * @param req - The incoming request
374
+ * @param ctx - Context string for the error
375
+ * @param errors - Array of validation errors from validateTransactionInputs
376
+ * @throws {BackendError} if errors array is not empty
377
+ */
378
+ function throwIfValidationErrors(req, ctx, errors) {
379
+ if (errors.length === 0)
380
+ return;
381
+ const firstError = errors[0];
382
+ if (firstError.type === 'missing') {
383
+ rejectMissing(req, ctx, firstError.field);
384
+ }
385
+ else {
386
+ rejectInvalid(req, ctx, firstError.message, firstError.field);
387
+ }
388
+ }
389
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mappers.d.ts","sourceRoot":"","sources":["mappers.ts"],"names":[],"mappings":"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"}