@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,377 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CardanoClient = void 0;
7
+ const cds_1 = __importDefault(require("@sap/cds"));
8
+ const cardano_backend_1 = require("./backends/cardano-backend");
9
+ const errors_1 = require("../utils/errors");
10
+ const circuit_breaker_1 = require("./circuit-breaker");
11
+ const ogmios_backend_1 = require("./backends/ogmios-backend");
12
+ const blockfrost_backend_1 = require("./backends/blockfrost-backend");
13
+ const koios_backend_1 = require("./backends/koios-backend");
14
+ const logger = cds_1.default.log('CardanoClient');
15
+ /**
16
+ * Method routing configuration - defines which backend type to prefer for each method
17
+ */
18
+ const METHOD_ROUTING = {
19
+ getTransaction: { preferLive: false },
20
+ getAddress: { preferLive: true },
21
+ getAddressUtxos: { preferLive: true },
22
+ getAddressTransactions: { preferLive: false },
23
+ getNetworkInformation: { preferLive: true },
24
+ getTransactionMetadata: { preferLive: false },
25
+ getBlock: { preferLive: false },
26
+ getEpoch: { preferLive: false },
27
+ getLatestEpoch: { preferLive: true },
28
+ getLatestBlock: { preferLive: true },
29
+ getPool: { preferLive: true },
30
+ getDrep: { preferLive: false },
31
+ getAccount: { preferLive: true },
32
+ getProtocolParameters: { preferLive: true },
33
+ submitTransaction: { preferLive: true },
34
+ };
35
+ /**
36
+ * CardanoClient - Smart Multi-backend Cardano Client
37
+ *
38
+ * Routes requests to appropriate backends:
39
+ * - Live/State queries → Ogmios (if available)
40
+ * - Historical queries → Blockfrost/Koios (if available)
41
+ * - Automatic fallback between backends
42
+ */
43
+ class CardanoClient {
44
+ config;
45
+ liveBackend;
46
+ historicalBackends = [];
47
+ initialized = false;
48
+ initPromise = null;
49
+ circuitBreaker;
50
+ network;
51
+ max_age_ms = 60000; // default 1 minute for temporary caching
52
+ /**
53
+ * Constructor for CardanoClient
54
+ * @param liveBackend - Optional backend for live/state queries (typically Ogmios)
55
+ * @param historicalBackends - Optional backends for historical queries (typically Blockfrost/Koios)
56
+ */
57
+ constructor(clientConfig) {
58
+ this.network = clientConfig.network;
59
+ const backends = clientConfig.backends;
60
+ if (backends.includes('ogmios')) {
61
+ this.liveBackend = new ogmios_backend_1.OgmiosBackend(clientConfig.network, clientConfig.primaryTimeoutMs, clientConfig.ogmiosUrl);
62
+ }
63
+ if (backends.includes('blockfrost')) {
64
+ this.historicalBackends.push(new blockfrost_backend_1.BlockfrostBackend(clientConfig.network, clientConfig.primaryTimeoutMs, clientConfig.blockfrostApiKey));
65
+ }
66
+ if (backends.includes('koios')) {
67
+ this.historicalBackends.push(new koios_backend_1.KoiosBackend(clientConfig.network, clientConfig.primaryTimeoutMs, clientConfig.koiosApiKey));
68
+ }
69
+ if (!this.liveBackend && this.historicalBackends.length === 0) {
70
+ throw new errors_1.ConfigError('No valid backends configured for CardanoClient');
71
+ }
72
+ this.circuitBreaker = new circuit_breaker_1.CircuitBreakerManager(clientConfig.circuitBreaker);
73
+ logger.info('CardanoClient instance created.');
74
+ this.config = clientConfig;
75
+ }
76
+ /**
77
+ * Ensure backends are initialized
78
+ * @returns {Promise<void>}
79
+ */
80
+ async ensureInitialized() {
81
+ if (this.initialized)
82
+ return;
83
+ // Use nullish coalescing assignment for atomic operation to prevent race conditions
84
+ this.initPromise ??= this.initBackends();
85
+ await this.initPromise;
86
+ }
87
+ /**
88
+ * Initialize all backends from configuration
89
+ * @returns {Promise<void>}
90
+ */
91
+ async initBackends() {
92
+ const initErrors = [];
93
+ // Initialize live backend
94
+ if (this.liveBackend) {
95
+ try {
96
+ logger.debug(`Initializing live backend: ${this.liveBackend.name}`);
97
+ await this.liveBackend.init();
98
+ logger.debug(`Live backend initialized: ${this.liveBackend.name}`);
99
+ }
100
+ catch (err) {
101
+ initErrors.push(new errors_1.BackendInitError(this.liveBackend.name, err));
102
+ logger.error(`Failed to initialize live backend: ${this.liveBackend.name}`, err);
103
+ this.liveBackend = undefined; // remove failed backend
104
+ }
105
+ }
106
+ // Initialize historical backends
107
+ const initializedHistorical = [];
108
+ for (const backend of this.historicalBackends) {
109
+ try {
110
+ logger.debug(`Initializing historical backend: ${backend.name}`);
111
+ await backend.init();
112
+ initializedHistorical.push(backend);
113
+ logger.debug(`Historical backend initialized: ${backend.name}`);
114
+ }
115
+ catch (err) {
116
+ initErrors.push(new errors_1.BackendInitError(backend.name, err));
117
+ logger.error(`Failed to initialize historical backend: ${backend.name}`, err);
118
+ }
119
+ }
120
+ this.historicalBackends = initializedHistorical;
121
+ if (!this.liveBackend && this.historicalBackends.length === 0) {
122
+ throw new errors_1.AllBackendsInitFailedError(initErrors);
123
+ }
124
+ this.initialized = true;
125
+ }
126
+ /**
127
+ * Wrap a promise with a timeout
128
+ * @param promise - the promise to wrap
129
+ * @param ms - timeout in milliseconds
130
+ * @param backendName - name of the backend (for error context)
131
+ * @returns {Promise<T>} the result of the promise or a timeout error
132
+ */
133
+ withTimeout(promise, ms, backendName) {
134
+ let timeoutId;
135
+ const timeoutPromise = new Promise((_, reject) => {
136
+ timeoutId = setTimeout(() => reject(new errors_1.ProviderUnavailableError('Backend timeout', backendName, ms)), ms);
137
+ });
138
+ return Promise.race([promise, timeoutPromise]).finally(() => {
139
+ clearTimeout(timeoutId);
140
+ });
141
+ }
142
+ /**
143
+ * Get timeout for specific backend
144
+ * @param backend CardanoBackend instance
145
+ * @returns {number} timeout in milliseconds
146
+ */
147
+ getTimeoutForBackend(backend) {
148
+ if (backend.name === 'koios')
149
+ return this.config.fallbackTimeoutMs;
150
+ return this.config.primaryTimeoutMs;
151
+ }
152
+ /**
153
+ * Execute with priority-based backend selection and automatic fallback
154
+ * @param fn function to execute on backend
155
+ * @param preferLive whether to prefer live backend over historical
156
+ * @returns {Promise<T>} result from backend
157
+ */
158
+ async executeWithPriority(fn, preferLive) {
159
+ await this.ensureInitialized();
160
+ const errors = [];
161
+ // Determine backend order based on preference
162
+ const primaryBackends = preferLive
163
+ ? (this.liveBackend ? [this.liveBackend] : [])
164
+ : this.historicalBackends;
165
+ const fallbackBackends = preferLive
166
+ ? this.historicalBackends
167
+ : (this.liveBackend ? [this.liveBackend] : []);
168
+ const allBackends = [...primaryBackends, ...fallbackBackends];
169
+ // Try each backend in order, respecting circuit breaker state
170
+ for (const backend of allBackends) {
171
+ if (!this.circuitBreaker.shouldAttempt(backend.name)) {
172
+ logger.debug(`Circuit open for ${backend.name}, skipping`);
173
+ continue;
174
+ }
175
+ try {
176
+ const backendType = backend === this.liveBackend ? 'live' : 'historical';
177
+ logger.debug(`Calling backend: ${backend.name} (${backendType})`);
178
+ const result = await this.withTimeout(fn(backend), this.getTimeoutForBackend(backend), backend.name);
179
+ this.circuitBreaker.recordSuccess(backend.name);
180
+ return result;
181
+ }
182
+ catch (err) {
183
+ const backendError = (0, errors_1.normalizeBackendError)(err, backend.name);
184
+ errors.push(backendError);
185
+ // Don't count 404s as backend failures (resource not found is a valid response)
186
+ if (backendError.statusCode !== 404) {
187
+ this.circuitBreaker.recordFailure(backend.name);
188
+ }
189
+ const logLevel = backendError.statusCode === 404 ? 'debug' : 'warn';
190
+ logger[logLevel](`Backend failed${backendError.statusCode === 404 ? ': resource not found' : ''}: ${backend.name} - ${backendError.message}`);
191
+ }
192
+ }
193
+ throw new errors_1.AllBackendsFailedError(errors);
194
+ }
195
+ /**
196
+ * Route method call to appropriate backend based on method routing configuration
197
+ * @param methodName name of the method being called
198
+ * @param fn function to execute on backend
199
+ * @returns {Promise<T>} result from backend
200
+ */
201
+ route(methodName, fn) {
202
+ const config = METHOD_ROUTING[methodName];
203
+ return this.executeWithPriority(fn, config?.preferLive ?? true);
204
+ }
205
+ /**
206
+ * Get transaction by hash with fallback between backends
207
+ * @param txHash transaction hash (hex)
208
+ * @returns {Promise<Transaction>} transaction data
209
+ */
210
+ getTransaction(txHash) {
211
+ return this.route('getTransaction', b => b.getTransaction(txHash));
212
+ }
213
+ /**
214
+ * Get address by bech32 address with fallback between backends
215
+ * @param address bech32 address
216
+ * @returns {Promise<Address>} address data
217
+ */
218
+ getAddress(address) {
219
+ return this.route('getAddress', b => b.getAddress(address));
220
+ }
221
+ /**
222
+ * Get address UTxOs with fallback between backends
223
+ * @param address bech32 address
224
+ * @returns {Promise<UTxO[]>} list of UTxOs
225
+ */
226
+ getAddressUtxos(address) {
227
+ return this.route('getAddressUtxos', b => b.getAddressUtxos(address));
228
+ }
229
+ /**
230
+ * Get address transactions with fallback between backends
231
+ * @param address bech32 address
232
+ * @returns {Promise<Transaction[]>} list of transactions for this address
233
+ */
234
+ getAddressTransactions(address, limit) {
235
+ return this.route('getAddressTransactions', b => b.getAddressTransactions(address, limit));
236
+ }
237
+ /**
238
+ * Get network information with fallback between backends
239
+ * @returns {Promise<Network>} network information
240
+ */
241
+ getNetworkInformation() {
242
+ return this.route('getNetworkInformation', b => b.getNetworkInformation());
243
+ }
244
+ /**
245
+ * Get transaction metadata with fallback between backends
246
+ * @param tx_hash transaction hash (hex)
247
+ * @returns {Promise<MetadataLabelTx[]>} transaction metadata
248
+ */
249
+ getTransactionMetadata(tx_hash) {
250
+ return this.route('getTransactionMetadata', b => b.getTransactionMetadata(tx_hash));
251
+ }
252
+ /**
253
+ * Get block data with fallback between backends
254
+ * @param block_hash block hash (hex)
255
+ * @returns {Promise<BlockData>} block data
256
+ */
257
+ getBlock(block_hash) {
258
+ return this.route('getBlock', b => b.getBlock(block_hash));
259
+ }
260
+ /**
261
+ * Get epoch data with fallback between backends
262
+ * @param epochNumber epoch number
263
+ * @returns {Promise<EpochData>} epoch data
264
+ */
265
+ getEpoch(epochNumber) {
266
+ return this.route('getEpoch', b => b.getEpoch(epochNumber));
267
+ }
268
+ /**
269
+ * Get Pool data with fallback between backends
270
+ * @param poolId pool id
271
+ * @returns {Promise<PoolData>} pool data
272
+ */
273
+ getPool(poolId) {
274
+ return this.route('getPool', b => b.getPool(poolId));
275
+ }
276
+ /**
277
+ * Get drep data with fallback between backends
278
+ * @param drepId drep id
279
+ * @returns {Promise<DrepData>} drep data
280
+ */
281
+ getDrep(drepId) {
282
+ return this.route('getDrep', b => b.getDrep(drepId));
283
+ }
284
+ /**
285
+ * Get account data with fallback between backends
286
+ * @param stakeAddress stake address
287
+ * @returns {Promise<AccountData>} account data
288
+ */
289
+ getAccount(stakeAddress) {
290
+ return this.route('getAccount', b => b.getAccount(stakeAddress));
291
+ }
292
+ /**
293
+ * Get protocol parameters with caching (5 minute TTL)
294
+ * Protocol parameters rarely change (once per epoch at most), so caching improves performance
295
+ * @returns {Promise<LedgerProtocolParameters>} protocol parameters
296
+ */
297
+ async getProtocolParameters() {
298
+ // Fetch fresh parameters
299
+ logger.debug('Fetching fresh protocol parameters');
300
+ return this.route('getProtocolParameters', b => b.getProtocolParameters());
301
+ }
302
+ /**
303
+ * Shutdown all backends (for cleanup in tests)
304
+ */
305
+ async shutdown() {
306
+ logger.info('Shutting down CardanoClient backends...');
307
+ // Shutdown live backend if it has a shutdown method
308
+ if (this.liveBackend && 'shutdown' in this.liveBackend && typeof this.liveBackend.shutdown === 'function') {
309
+ try {
310
+ await this.liveBackend.shutdown();
311
+ logger.debug(`Live backend ${this.liveBackend.name} shut down`);
312
+ }
313
+ catch (err) {
314
+ logger.error(`Error shutting down live backend: ${err}`);
315
+ }
316
+ }
317
+ // Shutdown historical backends
318
+ for (const backend of this.historicalBackends) {
319
+ if ('shutdown' in backend && typeof backend.shutdown === 'function') {
320
+ try {
321
+ await backend.shutdown();
322
+ logger.debug(`Historical backend ${backend.name} shut down`);
323
+ }
324
+ catch (err) {
325
+ logger.error(`Error shutting down historical backend ${backend.name}: ${err}`);
326
+ }
327
+ }
328
+ }
329
+ this.initialized = false;
330
+ this.initPromise = null;
331
+ logger.info('CardanoClient shutdown complete');
332
+ }
333
+ /**
334
+ * Get latest block data with fallback between backends
335
+ * @returns {Promise<BlockData>} latest block data
336
+ */
337
+ getLatestBlock() {
338
+ return this.route('getLatestBlock', b => b.getLatestBlock());
339
+ }
340
+ /**
341
+ * Get latest epoch data with fallback between backends
342
+ * @returns {Promise<EpochData>} latest epoch data
343
+ */
344
+ getLatestEpoch() {
345
+ return this.route('getLatestEpoch', b => b.getLatestEpoch());
346
+ }
347
+ /**
348
+ * Submit transaction with fallback between backends
349
+ * @param signedTxCbor signed transaction in CBOR hex format
350
+ * @returns {Promise<string>} transaction hash
351
+ */
352
+ submitTransaction(signedTxCbor) {
353
+ return this.route('submitTransaction', b => b.submitTransaction(signedTxCbor));
354
+ }
355
+ /**
356
+ * Check if Ogmios backend is available for transaction evaluation
357
+ * @returns {boolean} true if Ogmios is the live backend
358
+ */
359
+ hasOgmiosBackend() {
360
+ return this.liveBackend?.name === 'ogmios';
361
+ }
362
+ /**
363
+ * Evaluate transaction script execution units (Ogmios only)
364
+ * @param unsignedTxCbor unsigned transaction in CBOR hex format
365
+ * @returns {Promise<Array<{validator: unknown, budget: {memory: number, cpu: number}}>>} evaluation results
366
+ */
367
+ async evaluateTransaction(unsignedTxCbor) {
368
+ await this.ensureInitialized();
369
+ // Evaluation requires an EvaluatingBackend (typically Ogmios)
370
+ if (!this.liveBackend || !(0, cardano_backend_1.isEvaluatingBackend)(this.liveBackend)) {
371
+ throw new Error('Transaction evaluation requires an evaluating backend (e.g., Ogmios)');
372
+ }
373
+ return this.liveBackend.evaluateTransaction(unsignedTxCbor);
374
+ }
375
+ }
376
+ exports.CardanoClient = CardanoClient;
377
+ //# sourceMappingURL=cardano-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cardano-client.js","sourceRoot":"","sources":["cardano-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cardano-indexer.d.ts","sourceRoot":"","sources":["cardano-indexer.ts"],"names":[],"mappings":"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"}