@rosen-bridge/rosen-extractor 6.1.0 → 6.2.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.
@@ -0,0 +1,26 @@
1
+ import { isArray, isString, isPlainObject } from 'lodash-es';
2
+ /**
3
+ * Parse and validate Rosen data encoded in transaction metadata
4
+ * @param data
5
+ * @returns Rosen data or undefined if metadata is invalid
6
+ */
7
+ export const parseRosenData = (data) => {
8
+ if (data &&
9
+ isPlainObject(data) &&
10
+ isString(data.to) &&
11
+ isString(data.networkFee) &&
12
+ isString(data.bridgeFee) &&
13
+ isString(data.toAddress) &&
14
+ isArray(data.fromAddress) &&
15
+ data.fromAddress.every(isString)) {
16
+ return {
17
+ toChain: data.to,
18
+ toAddress: data.toAddress,
19
+ bridgeFee: data.bridgeFee,
20
+ networkFee: data.networkFee,
21
+ fromAddress: data.fromAddress.join(''),
22
+ };
23
+ }
24
+ return undefined;
25
+ };
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NhcmRhbm8vdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTdEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtJQUMxQyxJQUNFLElBQUk7UUFDSixhQUFhLENBQUMsSUFBSSxDQUFDO1FBQ25CLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ3pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUNoQztRQUNBLE9BQU87WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDaEIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUN2QyxDQUFDO0tBQ0g7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FycmF5LCBpc1N0cmluZywgaXNQbGFpbk9iamVjdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbi8qKlxuICogUGFyc2UgYW5kIHZhbGlkYXRlIFJvc2VuIGRhdGEgZW5jb2RlZCBpbiB0cmFuc2FjdGlvbiBtZXRhZGF0YVxuICogQHBhcmFtIGRhdGFcbiAqIEByZXR1cm5zIFJvc2VuIGRhdGEgb3IgdW5kZWZpbmVkIGlmIG1ldGFkYXRhIGlzIGludmFsaWRcbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlUm9zZW5EYXRhID0gKGRhdGE6IGFueSkgPT4ge1xuICBpZiAoXG4gICAgZGF0YSAmJlxuICAgIGlzUGxhaW5PYmplY3QoZGF0YSkgJiZcbiAgICBpc1N0cmluZyhkYXRhLnRvKSAmJlxuICAgIGlzU3RyaW5nKGRhdGEubmV0d29ya0ZlZSkgJiZcbiAgICBpc1N0cmluZyhkYXRhLmJyaWRnZUZlZSkgJiZcbiAgICBpc1N0cmluZyhkYXRhLnRvQWRkcmVzcykgJiZcbiAgICBpc0FycmF5KGRhdGEuZnJvbUFkZHJlc3MpICYmXG4gICAgZGF0YS5mcm9tQWRkcmVzcy5ldmVyeShpc1N0cmluZylcbiAgKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvQ2hhaW46IGRhdGEudG8sXG4gICAgICB0b0FkZHJlc3M6IGRhdGEudG9BZGRyZXNzLFxuICAgICAgYnJpZGdlRmVlOiBkYXRhLmJyaWRnZUZlZSxcbiAgICAgIG5ldHdvcmtGZWU6IGRhdGEubmV0d29ya0ZlZSxcbiAgICAgIGZyb21BZGRyZXNzOiBkYXRhLmZyb21BZGRyZXNzLmpvaW4oJycpLFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn07XG4iXX0=
@@ -16,7 +16,7 @@ export class EvmRosenExtractor extends AbstractRosenDataExtractor {
16
16
  extractRawData = (serializedTransaction) => {
17
17
  let transaction;
18
18
  try {
19
- transaction = Transaction.from(serializedTransaction);
19
+ transaction = Transaction.from('0x' + serializedTransaction);
20
20
  }
21
21
  catch (e) {
22
22
  this.logger.debug(`An error occurred while deserializing ${this.chain} tx to extract rosen data: ${e}`);
@@ -28,4 +28,4 @@ export class EvmRosenExtractor extends AbstractRosenDataExtractor {
28
28
  return this.rpcExtractor.extractRawData(transaction);
29
29
  };
30
30
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUFrQztJQUM5RCxLQUFLLENBQVM7SUFDYixZQUFZLENBQXVCO0lBRTdDLFlBQ0UsV0FBbUIsRUFDbkIsTUFBbUIsRUFDbkIsS0FBYSxFQUNiLFdBQW1CLEVBQ25CLE1BQXVCO1FBRXZCLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxvQkFBb0IsQ0FDMUMsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxFQUNYLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUFDLHFCQUE2QixFQUF5QixFQUFFO1FBQ3hFLElBQUksV0FBd0IsQ0FBQztRQUM3QixJQUFJO1lBQ0YsV0FBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztTQUN2RDtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2YseUNBQXlDLElBQUksQ0FBQyxLQUFLLDhCQUE4QixDQUFDLEVBQUUsQ0FDckYsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDNUI7WUFDRCxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkQsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEgfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICdldGhlcnMnO1xuaW1wb3J0IHsgUm9zZW5Ub2tlbnMgfSBmcm9tICdAcm9zZW4tYnJpZGdlL3Rva2Vucyc7XG5pbXBvcnQgeyBBYnN0cmFjdExvZ2dlciB9IGZyb20gJ0Byb3Nlbi1icmlkZ2UvYWJzdHJhY3QtbG9nZ2VyJztcbmltcG9ydCB7IEV2bVJwY1Jvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9Fdm1ScGNSb3NlbkV4dHJhY3Rvcic7XG5cbmV4cG9ydCBjbGFzcyBFdm1Sb3NlbkV4dHJhY3RvciBleHRlbmRzIEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yPHN0cmluZz4ge1xuICByZWFkb25seSBjaGFpbjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgcnBjRXh0cmFjdG9yOiBFdm1ScGNSb3NlbkV4dHJhY3RvcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBsb2NrQWRkcmVzczogc3RyaW5nLFxuICAgIHRva2VuczogUm9zZW5Ub2tlbnMsXG4gICAgY2hhaW46IHN0cmluZyxcbiAgICBuYXRpdmVUb2tlbjogc3RyaW5nLFxuICAgIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyXG4gICkge1xuICAgIHN1cGVyKGxvY2tBZGRyZXNzLCB0b2tlbnMsIGxvZ2dlcik7XG4gICAgdGhpcy5jaGFpbiA9IGNoYWluO1xuICAgIHRoaXMucnBjRXh0cmFjdG9yID0gbmV3IEV2bVJwY1Jvc2VuRXh0cmFjdG9yKFxuICAgICAgbG9ja0FkZHJlc3MsXG4gICAgICB0b2tlbnMsXG4gICAgICBjaGFpbixcbiAgICAgIG5hdGl2ZVRva2VuLFxuICAgICAgbG9nZ2VyXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIGV0aGVycyBUcmFuc2FjdGlvbiBmb3JtYXRcbiAgICogQHBhcmFtIHNlcmlhbGl6ZWRUcmFuc2FjdGlvbiBzaWduZWQgc2VyaWFsaXplZCB0cmFuc2FjdGlvbiBpbiBldGhlcnMgVHJhbnNhY3Rpb24gZm9ybWF0XG4gICAqL1xuICBleHRyYWN0UmF3RGF0YSA9IChzZXJpYWxpemVkVHJhbnNhY3Rpb246IHN0cmluZyk6IFJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgbGV0IHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgICB0cnkge1xuICAgICAgdHJhbnNhY3Rpb24gPSBUcmFuc2FjdGlvbi5mcm9tKHNlcmlhbGl6ZWRUcmFuc2FjdGlvbik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBkZXNlcmlhbGl6aW5nICR7dGhpcy5jaGFpbn0gdHggdG8gZXh0cmFjdCByb3NlbiBkYXRhOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnJwY0V4dHJhY3Rvci5leHRyYWN0UmF3RGF0YSh0cmFuc2FjdGlvbik7XG4gIH07XG59XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1Sb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHckMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsTUFBTSxPQUFPLGlCQUFrQixTQUFRLDBCQUFrQztJQUM5RCxLQUFLLENBQVM7SUFDYixZQUFZLENBQXVCO0lBRTdDLFlBQ0UsV0FBbUIsRUFDbkIsTUFBbUIsRUFDbkIsS0FBYSxFQUNiLFdBQW1CLEVBQ25CLE1BQXVCO1FBRXZCLEtBQUssQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxvQkFBb0IsQ0FDMUMsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsV0FBVyxFQUNYLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWMsR0FBRyxDQUFDLHFCQUE2QixFQUF5QixFQUFFO1FBQ3hFLElBQUksV0FBd0IsQ0FBQztRQUM3QixJQUFJO1lBQ0YsV0FBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDLENBQUM7U0FDOUQ7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHlDQUF5QyxJQUFJLENBQUMsS0FBSyw4QkFBOEIsQ0FBQyxFQUFFLENBQ3JGLENBQUM7WUFDRixJQUFJLENBQUMsWUFBWSxLQUFLLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRTtnQkFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzVCO1lBQ0QsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnZXRoZXJzJztcbmltcG9ydCB7IFJvc2VuVG9rZW5zIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBFdm1ScGNSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vRXZtUnBjUm9zZW5FeHRyYWN0b3InO1xuXG5leHBvcnQgY2xhc3MgRXZtUm9zZW5FeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxzdHJpbmc+IHtcbiAgcmVhZG9ubHkgY2hhaW46IHN0cmluZztcbiAgcHJvdGVjdGVkIHJwY0V4dHJhY3RvcjogRXZtUnBjUm9zZW5FeHRyYWN0b3I7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbG9ja0FkZHJlc3M6IHN0cmluZyxcbiAgICB0b2tlbnM6IFJvc2VuVG9rZW5zLFxuICAgIGNoYWluOiBzdHJpbmcsXG4gICAgbmF0aXZlVG9rZW46IHN0cmluZyxcbiAgICBsb2dnZXI/OiBBYnN0cmFjdExvZ2dlclxuICApIHtcbiAgICBzdXBlcihsb2NrQWRkcmVzcywgdG9rZW5zLCBsb2dnZXIpO1xuICAgIHRoaXMuY2hhaW4gPSBjaGFpbjtcbiAgICB0aGlzLnJwY0V4dHJhY3RvciA9IG5ldyBFdm1ScGNSb3NlbkV4dHJhY3RvcihcbiAgICAgIGxvY2tBZGRyZXNzLFxuICAgICAgdG9rZW5zLFxuICAgICAgY2hhaW4sXG4gICAgICBuYXRpdmVUb2tlbixcbiAgICAgIGxvZ2dlclxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiBldGhlcnMgVHJhbnNhY3Rpb24gZm9ybWF0XG4gICAqIEBwYXJhbSBzZXJpYWxpemVkVHJhbnNhY3Rpb24gc2lnbmVkIHNlcmlhbGl6ZWQgdHJhbnNhY3Rpb24gaW4gZXRoZXJzIFRyYW5zYWN0aW9uIGZvcm1hdFxuICAgKi9cbiAgZXh0cmFjdFJhd0RhdGEgPSAoc2VyaWFsaXplZFRyYW5zYWN0aW9uOiBzdHJpbmcpOiBSb3NlbkRhdGEgfCB1bmRlZmluZWQgPT4ge1xuICAgIGxldCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHRyYW5zYWN0aW9uID0gVHJhbnNhY3Rpb24uZnJvbSgnMHgnICsgc2VyaWFsaXplZFRyYW5zYWN0aW9uKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGRlc2VyaWFsaXppbmcgJHt0aGlzLmNoYWlufSB0eCB0byBleHRyYWN0IHJvc2VuIGRhdGE6ICR7ZX1gXG4gICAgICApO1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLnN0YWNrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGUuc3RhY2spO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucnBjRXh0cmFjdG9yLmV4dHJhY3RSYXdEYXRhKHRyYW5zYWN0aW9uKTtcbiAgfTtcbn1cbiJdfQ==