@rosen-bridge/rosen-extractor 0.1.0 → 0.1.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.
- package/dist/lib/getRosenData/Utils.d.ts +9 -2
- package/dist/lib/getRosenData/Utils.d.ts.map +1 -1
- package/dist/lib/getRosenData/Utils.js +8 -3
- package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts +14 -0
- package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.js +13 -0
- package/dist/lib/getRosenData/abstract/types.d.ts +13 -0
- package/dist/lib/getRosenData/abstract/types.d.ts.map +1 -0
- package/dist/lib/getRosenData/abstract/types.js +2 -0
- package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts +17 -0
- package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.js +83 -0
- package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts +18 -0
- package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.js +98 -0
- package/dist/lib/getRosenData/cardano/types.d.ts +34 -5
- package/dist/lib/getRosenData/cardano/types.d.ts.map +1 -1
- package/dist/lib/getRosenData/cardano/types.js +1 -1
- package/dist/lib/getRosenData/const.d.ts +2 -0
- package/dist/lib/getRosenData/const.d.ts.map +1 -1
- package/dist/lib/getRosenData/const.js +3 -1
- package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts +21 -0
- package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.js +87 -0
- package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts +14 -0
- package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.js +31 -0
- package/dist/lib/getRosenData/ergo/types.d.ts +6 -10
- package/dist/lib/getRosenData/ergo/types.d.ts.map +1 -1
- package/dist/lib/getRosenData/ergo/types.js +1 -1
- package/dist/lib/index.d.ts +6 -5
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +6 -4
- package/dist/lib/logger/DummyLogger.d.ts +8 -0
- package/dist/lib/logger/DummyLogger.d.ts.map +1 -0
- package/dist/lib/logger/DummyLogger.js +16 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -6
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { Metadatum } from '@cardano-ogmios/schema';
|
|
2
2
|
import { ListObject, MetadataObject } from './cardano/types';
|
|
3
3
|
declare class Utils {
|
|
4
|
+
static JsonBI: {
|
|
5
|
+
parse: (text: string, reviver?: ((this: any, key: string, value: any) => any) | undefined) => any;
|
|
6
|
+
stringify: {
|
|
7
|
+
(value: any, replacer?: ((this: any, key: string, value: any) => any) | undefined, space?: string | number | undefined): string;
|
|
8
|
+
(value: any, replacer?: (string | number)[] | null | undefined, space?: string | number | undefined): string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
4
11
|
/**
|
|
5
12
|
* extracts int value from Metadatum object
|
|
6
13
|
* @param val
|
|
@@ -20,13 +27,13 @@ declare class Utils {
|
|
|
20
27
|
*/
|
|
21
28
|
static getListValue: (val: Metadatum) => ListObject | undefined;
|
|
22
29
|
/**
|
|
23
|
-
*
|
|
30
|
+
* extracts one of int or string from Metadatum object
|
|
24
31
|
* @param val
|
|
25
32
|
* @returns : native value or undefined if parameter is not a string or int
|
|
26
33
|
*/
|
|
27
34
|
static getNativeValue: (val: Metadatum) => string | undefined;
|
|
28
35
|
/**
|
|
29
|
-
*
|
|
36
|
+
* extracts dictionary from Metadatum object
|
|
30
37
|
* @param val
|
|
31
38
|
* @returns : dictionary value or undefined if parameter is not a dict
|
|
32
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/Utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EAGV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAc,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/Utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EAGV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAc,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGzE,cAAM,KAAK;IACT,MAAM,CAAC,MAAM;;;;;;MAGV;IAEH;;;;OAIG;IACH,MAAM,CAAC,WAAW,QAAS,SAAS,wBAIlC;IAEF;;;;OAIG;IACH,MAAM,CAAC,cAAc,QAAS,SAAS,wBAIrC;IAEF;;;;OAIG;IACH,MAAM,CAAC,YAAY,QAAS,SAAS,KAAG,UAAU,GAAG,SAAS,CAa5D;IAEF;;;;OAIG;IACH,MAAM,CAAC,cAAc,QAAS,SAAS,wBAKrC;IAEF;;;;OAIG;IACH,MAAM,CAAC,YAAY,QAAS,SAAS,KAAG,cAAc,CAoBpD;IAEF;;;OAGG;IACH,MAAM,CAAC,YAAY,QAAS,SAAS,oBAMnC;CACH;AAED,eAAe,KAAK,CAAC"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
import JSONBigInt from 'json-bigint';
|
|
1
2
|
class Utils {
|
|
3
|
+
static JsonBI = JSONBigInt({
|
|
4
|
+
useNativeBigInt: true,
|
|
5
|
+
alwaysParseAsBig: true,
|
|
6
|
+
});
|
|
2
7
|
/**
|
|
3
8
|
* extracts int value from Metadatum object
|
|
4
9
|
* @param val
|
|
@@ -39,7 +44,7 @@ class Utils {
|
|
|
39
44
|
return undefined;
|
|
40
45
|
};
|
|
41
46
|
/**
|
|
42
|
-
*
|
|
47
|
+
* extracts one of int or string from Metadatum object
|
|
43
48
|
* @param val
|
|
44
49
|
* @returns : native value or undefined if parameter is not a string or int
|
|
45
50
|
*/
|
|
@@ -52,7 +57,7 @@ class Utils {
|
|
|
52
57
|
return stringVal;
|
|
53
58
|
};
|
|
54
59
|
/**
|
|
55
|
-
*
|
|
60
|
+
* extracts dictionary from Metadatum object
|
|
56
61
|
* @param val
|
|
57
62
|
* @returns : dictionary value or undefined if parameter is not a dict
|
|
58
63
|
*/
|
|
@@ -93,4 +98,4 @@ class Utils {
|
|
|
93
98
|
};
|
|
94
99
|
}
|
|
95
100
|
export default Utils;
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sVUFBVSxNQUFNLGFBQWEsQ0FBQztBQUVyQyxNQUFNLEtBQUs7SUFDVCxNQUFNLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztRQUN6QixlQUFlLEVBQUUsSUFBSTtRQUNyQixnQkFBZ0IsRUFBRSxJQUFJO0tBQ3ZCLENBQUMsQ0FBQztJQUVIOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsV0FBVyxHQUFHLENBQUMsR0FBYyxFQUFFLEVBQUU7UUFDdEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQztZQUNyRCxDQUFDLENBQUUsR0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUU7WUFDN0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNoQixDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGNBQWMsR0FBRyxDQUFDLEdBQWMsRUFBRSxFQUFFO1FBQ3pDLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUM7WUFDeEQsQ0FBQyxDQUFFLEdBQW9CLENBQUMsTUFBTTtZQUM5QixDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ2hCLENBQUMsQ0FBQztJQUVGOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBYyxFQUEwQixFQUFFO1FBQy9ELElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNyRCxNQUFNLElBQUksR0FBSSxHQUFZLENBQUMsSUFBSSxDQUFDO1lBQ2hDLE1BQU0sR0FBRyxHQUFlLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3BCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3BDLElBQUksR0FBRyxFQUFFO29CQUNQLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2Y7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sR0FBRyxDQUFDO1NBQ1o7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGNBQWMsR0FBRyxDQUFDLEdBQWMsRUFBRSxFQUFFO1FBQ3pDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxNQUFNO1lBQUUsT0FBTyxNQUFNLENBQUM7UUFDMUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzQyxJQUFJLFNBQVM7WUFBRSxPQUFPLFNBQVMsQ0FBQztJQUNsQyxDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFlBQVksR0FBRyxDQUFDLEdBQWMsRUFBa0IsRUFBRTtRQUN2RCxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUU7WUFDcEQsTUFBTSxJQUFJLEdBQUksR0FBVyxDQUFDLEdBQUcsQ0FBQztZQUM5QixNQUFNLEdBQUcsR0FBZSxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxHQUFHLEVBQUU7b0JBQ1AsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUN0QztZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxHQUFHLENBQUM7U0FDWjthQUFNLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUM1RCxNQUFNLElBQUksR0FBSSxHQUFZLENBQUMsSUFBSSxDQUFDO1lBQ2hDLE1BQU0sR0FBRyxHQUFlLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2hCLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxHQUFHLENBQUM7U0FDWjtRQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUM7SUFFRjs7O09BR0c7SUFDSCxNQUFNLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBYyxFQUFFLEVBQUU7UUFDdkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLFdBQVc7WUFBRSxPQUFPLFdBQVcsQ0FBQztRQUNwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksU0FBUztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDLENBQUM7O0FBR0osZUFBZSxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbnQsXG4gIExpc3QsXG4gIE1ldGFkYXR1bSxcbiAgU3RyaW5nIGFzIE9nbWlvc1N0cmluZyxcbiAgTWFwLFxufSBmcm9tICdAY2FyZGFuby1vZ21pb3Mvc2NoZW1hJztcbmltcG9ydCB7IEpzb25PYmplY3QsIExpc3RPYmplY3QsIE1ldGFkYXRhT2JqZWN0IH0gZnJvbSAnLi9jYXJkYW5vL3R5cGVzJztcbmltcG9ydCBKU09OQmlnSW50IGZyb20gJ2pzb24tYmlnaW50JztcblxuY2xhc3MgVXRpbHMge1xuICBzdGF0aWMgSnNvbkJJID0gSlNPTkJpZ0ludCh7XG4gICAgdXNlTmF0aXZlQmlnSW50OiB0cnVlLFxuICAgIGFsd2F5c1BhcnNlQXNCaWc6IHRydWUsXG4gIH0pO1xuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBpbnQgdmFsdWUgZnJvbSBNZXRhZGF0dW0gb2JqZWN0XG4gICAqIEBwYXJhbSB2YWxcbiAgICogQHJldHVybnMgOiBpbnQgdmFsdWUgb3IgdW5kZWZpbmVkIGlmIHBhcmFtZXRlciBpcyBub3QgYW4gaW50XG4gICAqL1xuICBzdGF0aWMgZ2V0SW50VmFsdWUgPSAodmFsOiBNZXRhZGF0dW0pID0+IHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbCwgJ2ludCcpXG4gICAgICA/ICh2YWwgYXMgSW50KS5pbnQudG9TdHJpbmcoKVxuICAgICAgOiB1bmRlZmluZWQ7XG4gIH07XG5cbiAgLyoqXG4gICAqIGV4dHJhY3RzIHN0cmluZyB2YWx1ZSBmcm9tIE1ldGFkYXR1bSBvYmplY3RcbiAgICogQHBhcmFtIHZhbFxuICAgKiBAcmV0dXJucyA6IHN0cmluZyB2YWx1ZSBvciB1bmRlZmluZWQgaWYgcGFyYW1ldGVyIGlzIG5vdCBhIHN0cmluZ1xuICAgKi9cbiAgc3RhdGljIGdldFN0cmluZ1ZhbHVlID0gKHZhbDogTWV0YWRhdHVtKSA9PiB7XG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsICdzdHJpbmcnKVxuICAgICAgPyAodmFsIGFzIE9nbWlvc1N0cmluZykuc3RyaW5nXG4gICAgICA6IHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgbGlzdCB2YWx1ZSBmcm9tIE1ldGFkYXR1bSBvYmplY3RcbiAgICogQHBhcmFtIHZhbFxuICAgKiBAcmV0dXJucyA6IGxpc3QgdmFsdWUgb3IgdW5kZWZpbmVkIGlmIHBhcmFtZXRlciBpcyBub3QgYSBsaXN0XG4gICAqL1xuICBzdGF0aWMgZ2V0TGlzdFZhbHVlID0gKHZhbDogTWV0YWRhdHVtKTogTGlzdE9iamVjdCB8IHVuZGVmaW5lZCA9PiB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsICdsaXN0JykpIHtcbiAgICAgIGNvbnN0IGxpc3QgPSAodmFsIGFzIExpc3QpLmxpc3Q7XG4gICAgICBjb25zdCByZXM6IExpc3RPYmplY3QgPSBbXTtcbiAgICAgIGxpc3QuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICBjb25zdCB2YWwgPSB0aGlzLk9iamVjdFRvSnNvbihpdGVtKTtcbiAgICAgICAgaWYgKHZhbCkge1xuICAgICAgICAgIHJlcy5wdXNoKHZhbCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgb25lIG9mIGludCBvciBzdHJpbmcgZnJvbSBNZXRhZGF0dW0gb2JqZWN0XG4gICAqIEBwYXJhbSB2YWxcbiAgICogQHJldHVybnMgOiBuYXRpdmUgdmFsdWUgb3IgdW5kZWZpbmVkIGlmIHBhcmFtZXRlciBpcyBub3QgYSBzdHJpbmcgb3IgaW50XG4gICAqL1xuICBzdGF0aWMgZ2V0TmF0aXZlVmFsdWUgPSAodmFsOiBNZXRhZGF0dW0pID0+IHtcbiAgICBjb25zdCBpbnRWYWwgPSB0aGlzLmdldEludFZhbHVlKHZhbCk7XG4gICAgaWYgKGludFZhbCkgcmV0dXJuIGludFZhbDtcbiAgICBjb25zdCBzdHJpbmdWYWwgPSB0aGlzLmdldFN0cmluZ1ZhbHVlKHZhbCk7XG4gICAgaWYgKHN0cmluZ1ZhbCkgcmV0dXJuIHN0cmluZ1ZhbDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgZGljdGlvbmFyeSBmcm9tIE1ldGFkYXR1bSBvYmplY3RcbiAgICogQHBhcmFtIHZhbFxuICAgKiBAcmV0dXJucyA6IGRpY3Rpb25hcnkgdmFsdWUgb3IgdW5kZWZpbmVkIGlmIHBhcmFtZXRlciBpcyBub3QgYSBkaWN0XG4gICAqL1xuICBzdGF0aWMgZ2V0RGljdFZhbHVlID0gKHZhbDogTWV0YWRhdHVtKTogTWV0YWRhdGFPYmplY3QgPT4ge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCAnbWFwJykpIHtcbiAgICAgIGNvbnN0IGxpc3QgPSAodmFsIGFzIE1hcCkubWFwO1xuICAgICAgY29uc3QgcmVzOiBKc29uT2JqZWN0ID0ge307XG4gICAgICBsaXN0LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5nZXROYXRpdmVWYWx1ZShpdGVtLmspO1xuICAgICAgICBpZiAoa2V5KSB7XG4gICAgICAgICAgcmVzW2tleV0gPSB0aGlzLk9iamVjdFRvSnNvbihpdGVtLnYpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfSBlbHNlIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodmFsLCAnbGlzdCcpKSB7XG4gICAgICBjb25zdCBsaXN0ID0gKHZhbCBhcyBMaXN0KS5saXN0O1xuICAgICAgY29uc3QgcmVzOiBMaXN0T2JqZWN0ID0gW107XG4gICAgICBsaXN0Lm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICByZXMucHVzaCh0aGlzLmdldERpY3RWYWx1ZShpdGVtKSk7XG4gICAgICB9KTtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldE5hdGl2ZVZhbHVlKHZhbCk7XG4gIH07XG5cbiAgLyoqXG4gICAqIENvbnZlcnQgYSBNZXRhZGF0dW0gdG8gYSBqc29uXG4gICAqIEBwYXJhbSB2YWxcbiAgICovXG4gIHN0YXRpYyBPYmplY3RUb0pzb24gPSAodmFsOiBNZXRhZGF0dW0pID0+IHtcbiAgICBjb25zdCBuYXRpdmVWYWx1ZSA9IHRoaXMuZ2V0TmF0aXZlVmFsdWUodmFsKTtcbiAgICBpZiAobmF0aXZlVmFsdWUpIHJldHVybiBuYXRpdmVWYWx1ZTtcbiAgICBjb25zdCBsaXN0VmFsdWUgPSB0aGlzLmdldExpc3RWYWx1ZSh2YWwpO1xuICAgIGlmIChsaXN0VmFsdWUpIHJldHVybiBsaXN0VmFsdWU7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RGljdFZhbHVlKHZhbCk7XG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IFV0aWxzO1xuIl19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RosenTokens, TokenMap } from '@rosen-bridge/tokens';
|
|
2
|
+
import { RosenData } from './types';
|
|
3
|
+
import { AbstractLogger } from '@rosen-bridge/logger-interface';
|
|
4
|
+
export default abstract class AbstractRosenDataExtractor<TransactionType> {
|
|
5
|
+
protected readonly logger: AbstractLogger;
|
|
6
|
+
protected readonly tokens: TokenMap;
|
|
7
|
+
protected readonly lockAddress: string;
|
|
8
|
+
constructor(lockAddress: string, tokens: RosenTokens, logger?: AbstractLogger);
|
|
9
|
+
/**
|
|
10
|
+
* extracts RosenData from given lock transaction
|
|
11
|
+
*/
|
|
12
|
+
abstract get: (transaction: TransactionType) => RosenData | undefined;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=AbstractRosenDataExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractRosenDataExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/abstract/AbstractRosenDataExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,cAAc,EAAe,MAAM,gCAAgC,CAAC;AAE7E,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,0BAA0B,CAAC,eAAe;IACtE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAGrC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,cAAc;IAOzB;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,eAAe,KAAK,SAAS,GAAG,SAAS,CAAC;CACvE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TokenMap } from '@rosen-bridge/tokens';
|
|
2
|
+
import { DummyLogger } from '@rosen-bridge/logger-interface';
|
|
3
|
+
export default class AbstractRosenDataExtractor {
|
|
4
|
+
logger;
|
|
5
|
+
tokens;
|
|
6
|
+
lockAddress;
|
|
7
|
+
constructor(lockAddress, tokens, logger) {
|
|
8
|
+
this.lockAddress = lockAddress;
|
|
9
|
+
this.tokens = new TokenMap(tokens);
|
|
10
|
+
this.logger = logger ? logger : new DummyLogger();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU3RCxPQUFPLEVBQWtCLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTdFLE1BQU0sQ0FBQyxPQUFPLE9BQWdCLDBCQUEwQjtJQUNuQyxNQUFNLENBQWlCO0lBQ3ZCLE1BQU0sQ0FBVztJQUNqQixXQUFXLENBQVM7SUFFdkMsWUFDRSxXQUFtQixFQUNuQixNQUFtQixFQUNuQixNQUF1QjtRQUV2QixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksV0FBVyxFQUFFLENBQUM7SUFDcEQsQ0FBQztDQU1GIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5Ub2tlbnMsIFRva2VuTWFwIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBBYnN0cmFjdExvZ2dlciwgRHVtbXlMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2xvZ2dlci1pbnRlcmZhY2UnO1xuXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxUcmFuc2FjdGlvblR5cGU+IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGxvZ2dlcjogQWJzdHJhY3RMb2dnZXI7XG4gIHByb3RlY3RlZCByZWFkb25seSB0b2tlbnM6IFRva2VuTWFwO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9ja0FkZHJlc3M6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBsb2NrQWRkcmVzczogc3RyaW5nLFxuICAgIHRva2VuczogUm9zZW5Ub2tlbnMsXG4gICAgbG9nZ2VyPzogQWJzdHJhY3RMb2dnZXJcbiAgKSB7XG4gICAgdGhpcy5sb2NrQWRkcmVzcyA9IGxvY2tBZGRyZXNzO1xuICAgIHRoaXMudG9rZW5zID0gbmV3IFRva2VuTWFwKHRva2Vucyk7XG4gICAgdGhpcy5sb2dnZXIgPSBsb2dnZXIgPyBsb2dnZXIgOiBuZXcgRHVtbXlMb2dnZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uXG4gICAqL1xuICBhYnN0cmFjdCBnZXQ6ICh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb25UeXBlKSA9PiBSb3NlbkRhdGEgfCB1bmRlZmluZWQ7XG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface RosenData {
|
|
2
|
+
toChain: string;
|
|
3
|
+
toAddress: string;
|
|
4
|
+
bridgeFee: string;
|
|
5
|
+
networkFee: string;
|
|
6
|
+
fromAddress: string;
|
|
7
|
+
sourceChainTokenId: string;
|
|
8
|
+
amount: string;
|
|
9
|
+
targetChainTokenId: string;
|
|
10
|
+
sourceTxId: string;
|
|
11
|
+
}
|
|
12
|
+
export { RosenData };
|
|
13
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/abstract/types.ts"],"names":[],"mappings":"AAAA,UAAU,SAAS;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2Fic3RyYWN0L3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgUm9zZW5EYXRhIHtcbiAgdG9DaGFpbjogc3RyaW5nO1xuICB0b0FkZHJlc3M6IHN0cmluZztcbiAgYnJpZGdlRmVlOiBzdHJpbmc7XG4gIG5ldHdvcmtGZWU6IHN0cmluZztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgc291cmNlQ2hhaW5Ub2tlbklkOiBzdHJpbmc7XG4gIGFtb3VudDogc3RyaW5nO1xuICB0YXJnZXRDaGFpblRva2VuSWQ6IHN0cmluZztcbiAgc291cmNlVHhJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgeyBSb3NlbkRhdGEgfTtcbiJdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { RosenData } from '../abstract/types';
|
|
2
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
3
|
+
import { KoiosTransaction, TokenTransformation, Utxo } from './types';
|
|
4
|
+
export declare class CardanoKoiosRosenExtractor extends AbstractRosenDataExtractor<KoiosTransaction> {
|
|
5
|
+
/**
|
|
6
|
+
* extracts RosenData from given lock transaction in Koios format
|
|
7
|
+
* @param transaction the lock transaction in Koios format
|
|
8
|
+
*/
|
|
9
|
+
get: (transaction: KoiosTransaction) => RosenData | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* extracts and builds token transformation from UTXO and tokenMap
|
|
12
|
+
* @param box transaction output
|
|
13
|
+
* @param toChain event target chain
|
|
14
|
+
*/
|
|
15
|
+
getAssetTransformation: (box: Utxo, toChain: string) => TokenTransformation | undefined;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=CardanoKoiosRosenExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardanoKoiosRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/CardanoKoiosRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAEL,gBAAgB,EAChB,mBAAmB,EACnB,IAAI,EACL,MAAM,SAAS,CAAC;AAEjB,qBAAa,0BAA2B,SAAQ,0BAA0B,CAAC,gBAAgB,CAAC;IAC1F;;;OAGG;IACH,GAAG,gBAAiB,gBAAgB,KAAG,SAAS,GAAG,SAAS,CA+C1D;IAEF;;;;OAIG;IACH,sBAAsB,QACf,IAAI,WACA,MAAM,KACd,mBAAmB,GAAG,SAAS,CA4BhC;CACH"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
2
|
+
import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
|
|
3
|
+
export class CardanoKoiosRosenExtractor extends AbstractRosenDataExtractor {
|
|
4
|
+
/**
|
|
5
|
+
* extracts RosenData from given lock transaction in Koios format
|
|
6
|
+
* @param transaction the lock transaction in Koios format
|
|
7
|
+
*/
|
|
8
|
+
get = (transaction) => {
|
|
9
|
+
const metadata = transaction.metadata;
|
|
10
|
+
try {
|
|
11
|
+
if (metadata && Object.prototype.hasOwnProperty.call(metadata, '0')) {
|
|
12
|
+
const data = metadata['0'];
|
|
13
|
+
if ('to' in data &&
|
|
14
|
+
'bridgeFee' in data &&
|
|
15
|
+
'networkFee' in data &&
|
|
16
|
+
'toAddress' in data &&
|
|
17
|
+
'fromAddress' in data) {
|
|
18
|
+
const rosenData = data;
|
|
19
|
+
const lockOutputs = transaction.outputs.filter((output) => output.payment_addr.bech32 === this.lockAddress);
|
|
20
|
+
for (const output of lockOutputs) {
|
|
21
|
+
const assetTransformation = this.getAssetTransformation(output, rosenData.to);
|
|
22
|
+
if (assetTransformation) {
|
|
23
|
+
return {
|
|
24
|
+
toChain: rosenData.to,
|
|
25
|
+
toAddress: rosenData.toAddress,
|
|
26
|
+
bridgeFee: rosenData.bridgeFee,
|
|
27
|
+
networkFee: rosenData.networkFee,
|
|
28
|
+
fromAddress: rosenData.fromAddress.join(''),
|
|
29
|
+
sourceChainTokenId: assetTransformation.from,
|
|
30
|
+
amount: assetTransformation.amount,
|
|
31
|
+
targetChainTokenId: assetTransformation.to,
|
|
32
|
+
sourceTxId: transaction.tx_hash,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
catch (e) {
|
|
40
|
+
this.logger.debug(`An error occurred while getting Cardano rosen data from Koios: ${e}`);
|
|
41
|
+
if (e instanceof Error && e.stack) {
|
|
42
|
+
this.logger.debug(e.stack);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return undefined;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* extracts and builds token transformation from UTXO and tokenMap
|
|
49
|
+
* @param box transaction output
|
|
50
|
+
* @param toChain event target chain
|
|
51
|
+
*/
|
|
52
|
+
getAssetTransformation = (box, toChain) => {
|
|
53
|
+
// try to build transformation using locked assets
|
|
54
|
+
if (box.asset_list.length > 0) {
|
|
55
|
+
for (const asset of box.asset_list) {
|
|
56
|
+
const token = this.tokens.search(CARDANO_CHAIN, {
|
|
57
|
+
assetName: asset.asset_name,
|
|
58
|
+
policyId: asset.policy_id,
|
|
59
|
+
});
|
|
60
|
+
if (token.length > 0)
|
|
61
|
+
return {
|
|
62
|
+
from: this.tokens.getID(token[0], CARDANO_CHAIN),
|
|
63
|
+
to: this.tokens.getID(token[0], toChain),
|
|
64
|
+
amount: asset.quantity,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// try to build transformation using locked ADA
|
|
69
|
+
const lovelace = this.tokens.search(CARDANO_CHAIN, {
|
|
70
|
+
[this.tokens.getIdKey(CARDANO_CHAIN)]: CARDANO_NATIVE_TOKEN,
|
|
71
|
+
});
|
|
72
|
+
if (lovelace.length > 0) {
|
|
73
|
+
return {
|
|
74
|
+
from: CARDANO_NATIVE_TOKEN,
|
|
75
|
+
to: this.tokens.getID(lovelace[0], toChain),
|
|
76
|
+
amount: box.value,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
else
|
|
80
|
+
return undefined;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTywwQkFBMEIsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBUS9ELE1BQU0sT0FBTywwQkFBMkIsU0FBUSwwQkFBNEM7SUFDMUY7OztPQUdHO0lBQ0gsR0FBRyxHQUFHLENBQUMsV0FBNkIsRUFBeUIsRUFBRTtRQUM3RCxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBQ3RDLElBQUk7WUFDRixJQUFJLFFBQVEsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNuRSxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNCLElBQ0UsSUFBSSxJQUFJLElBQUk7b0JBQ1osV0FBVyxJQUFJLElBQUk7b0JBQ25CLFlBQVksSUFBSSxJQUFJO29CQUNwQixXQUFXLElBQUksSUFBSTtvQkFDbkIsYUFBYSxJQUFJLElBQUksRUFDckI7b0JBQ0EsTUFBTSxTQUFTLEdBQUcsSUFBMkMsQ0FBQztvQkFFOUQsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQzVDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsV0FBVyxDQUM1RCxDQUFDO29CQUNGLEtBQUssTUFBTSxNQUFNLElBQUksV0FBVyxFQUFFO3dCQUNoQyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FDckQsTUFBTSxFQUNOLFNBQVMsQ0FBQyxFQUFFLENBQ2IsQ0FBQzt3QkFDRixJQUFJLG1CQUFtQixFQUFFOzRCQUN2QixPQUFPO2dDQUNMLE9BQU8sRUFBRSxTQUFTLENBQUMsRUFBRTtnQ0FDckIsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTO2dDQUM5QixTQUFTLEVBQUUsU0FBUyxDQUFDLFNBQVM7Z0NBQzlCLFVBQVUsRUFBRSxTQUFTLENBQUMsVUFBVTtnQ0FDaEMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQ0FDM0Msa0JBQWtCLEVBQUUsbUJBQW1CLENBQUMsSUFBSTtnQ0FDNUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLE1BQU07Z0NBQ2xDLGtCQUFrQixFQUFFLG1CQUFtQixDQUFDLEVBQUU7Z0NBQzFDLFVBQVUsRUFBRSxXQUFXLENBQUMsT0FBTzs2QkFDaEMsQ0FBQzt5QkFDSDtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLGtFQUFrRSxDQUFDLEVBQUUsQ0FDdEUsQ0FBQztZQUNGLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDNUI7U0FDRjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUMsQ0FBQztJQUVGOzs7O09BSUc7SUFDSCxzQkFBc0IsR0FBRyxDQUN2QixHQUFTLEVBQ1QsT0FBZSxFQUNrQixFQUFFO1FBQ25DLGtEQUFrRDtRQUNsRCxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM3QixLQUFLLE1BQU0sS0FBSyxJQUFJLEdBQUcsQ0FBQyxVQUFVLEVBQUU7Z0JBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRTtvQkFDOUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxVQUFVO29CQUMzQixRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVM7aUJBQzFCLENBQUMsQ0FBQztnQkFDSCxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQztvQkFDbEIsT0FBTzt3QkFDTCxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQzt3QkFDaEQsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUM7d0JBQ3hDLE1BQU0sRUFBRSxLQUFLLENBQUMsUUFBUTtxQkFDdkIsQ0FBQzthQUNMO1NBQ0Y7UUFFRCwrQ0FBK0M7UUFDL0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFO1lBQ2pELENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxvQkFBb0I7U0FDNUQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2QixPQUFPO2dCQUNMLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDO2dCQUMzQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUs7YUFDbEIsQ0FBQztTQUNIOztZQUFNLE9BQU8sU0FBUyxDQUFDO0lBQzFCLENBQUMsQ0FBQztDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm9zZW5EYXRhIH0gZnJvbSAnLi4vYWJzdHJhY3QvdHlwZXMnO1xuaW1wb3J0IEFic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yIGZyb20gJy4uL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmltcG9ydCB7IENBUkRBTk9fQ0hBSU4sIENBUkRBTk9fTkFUSVZFX1RPS0VOIH0gZnJvbSAnLi4vY29uc3QnO1xuaW1wb3J0IHtcbiAgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhLFxuICBLb2lvc1RyYW5zYWN0aW9uLFxuICBUb2tlblRyYW5zZm9ybWF0aW9uLFxuICBVdHhvLFxufSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIENhcmRhbm9Lb2lvc1Jvc2VuRXh0cmFjdG9yIGV4dGVuZHMgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3I8S29pb3NUcmFuc2FjdGlvbj4ge1xuICAvKipcbiAgICogZXh0cmFjdHMgUm9zZW5EYXRhIGZyb20gZ2l2ZW4gbG9jayB0cmFuc2FjdGlvbiBpbiBLb2lvcyBmb3JtYXRcbiAgICogQHBhcmFtIHRyYW5zYWN0aW9uIHRoZSBsb2NrIHRyYW5zYWN0aW9uIGluIEtvaW9zIGZvcm1hdFxuICAgKi9cbiAgZ2V0ID0gKHRyYW5zYWN0aW9uOiBLb2lvc1RyYW5zYWN0aW9uKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBtZXRhZGF0YSA9IHRyYW5zYWN0aW9uLm1ldGFkYXRhO1xuICAgIHRyeSB7XG4gICAgICBpZiAobWV0YWRhdGEgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG1ldGFkYXRhLCAnMCcpKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBtZXRhZGF0YVsnMCddO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgJ3RvJyBpbiBkYXRhICYmXG4gICAgICAgICAgJ2JyaWRnZUZlZScgaW4gZGF0YSAmJlxuICAgICAgICAgICduZXR3b3JrRmVlJyBpbiBkYXRhICYmXG4gICAgICAgICAgJ3RvQWRkcmVzcycgaW4gZGF0YSAmJlxuICAgICAgICAgICdmcm9tQWRkcmVzcycgaW4gZGF0YVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCByb3NlbkRhdGEgPSBkYXRhIGFzIHVua25vd24gYXMgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhO1xuXG4gICAgICAgICAgY29uc3QgbG9ja091dHB1dHMgPSB0cmFuc2FjdGlvbi5vdXRwdXRzLmZpbHRlcihcbiAgICAgICAgICAgIChvdXRwdXQpID0+IG91dHB1dC5wYXltZW50X2FkZHIuYmVjaDMyID09PSB0aGlzLmxvY2tBZGRyZXNzXG4gICAgICAgICAgKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IG91dHB1dCBvZiBsb2NrT3V0cHV0cykge1xuICAgICAgICAgICAgY29uc3QgYXNzZXRUcmFuc2Zvcm1hdGlvbiA9IHRoaXMuZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbihcbiAgICAgICAgICAgICAgb3V0cHV0LFxuICAgICAgICAgICAgICByb3NlbkRhdGEudG9cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoYXNzZXRUcmFuc2Zvcm1hdGlvbikge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHRvQ2hhaW46IHJvc2VuRGF0YS50byxcbiAgICAgICAgICAgICAgICB0b0FkZHJlc3M6IHJvc2VuRGF0YS50b0FkZHJlc3MsXG4gICAgICAgICAgICAgICAgYnJpZGdlRmVlOiByb3NlbkRhdGEuYnJpZGdlRmVlLFxuICAgICAgICAgICAgICAgIG5ldHdvcmtGZWU6IHJvc2VuRGF0YS5uZXR3b3JrRmVlLFxuICAgICAgICAgICAgICAgIGZyb21BZGRyZXNzOiByb3NlbkRhdGEuZnJvbUFkZHJlc3Muam9pbignJyksXG4gICAgICAgICAgICAgICAgc291cmNlQ2hhaW5Ub2tlbklkOiBhc3NldFRyYW5zZm9ybWF0aW9uLmZyb20sXG4gICAgICAgICAgICAgICAgYW1vdW50OiBhc3NldFRyYW5zZm9ybWF0aW9uLmFtb3VudCxcbiAgICAgICAgICAgICAgICB0YXJnZXRDaGFpblRva2VuSWQ6IGFzc2V0VHJhbnNmb3JtYXRpb24udG8sXG4gICAgICAgICAgICAgICAgc291cmNlVHhJZDogdHJhbnNhY3Rpb24udHhfaGFzaCxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgQ2FyZGFubyByb3NlbiBkYXRhIGZyb20gS29pb3M6ICR7ZX1gXG4gICAgICApO1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvciAmJiBlLnN0YWNrKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKGUuc3RhY2spO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBhbmQgYnVpbGRzIHRva2VuIHRyYW5zZm9ybWF0aW9uIGZyb20gVVRYTyBhbmQgdG9rZW5NYXBcbiAgICogQHBhcmFtIGJveCB0cmFuc2FjdGlvbiBvdXRwdXRcbiAgICogQHBhcmFtIHRvQ2hhaW4gZXZlbnQgdGFyZ2V0IGNoYWluXG4gICAqL1xuICBnZXRBc3NldFRyYW5zZm9ybWF0aW9uID0gKFxuICAgIGJveDogVXR4byxcbiAgICB0b0NoYWluOiBzdHJpbmdcbiAgKTogVG9rZW5UcmFuc2Zvcm1hdGlvbiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBhc3NldHNcbiAgICBpZiAoYm94LmFzc2V0X2xpc3QubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChjb25zdCBhc3NldCBvZiBib3guYXNzZXRfbGlzdCkge1xuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICAgICAgYXNzZXROYW1lOiBhc3NldC5hc3NldF9uYW1lLFxuICAgICAgICAgIHBvbGljeUlkOiBhc3NldC5wb2xpY3lfaWQsXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodG9rZW4ubGVuZ3RoID4gMClcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZnJvbTogdGhpcy50b2tlbnMuZ2V0SUQodG9rZW5bMF0sIENBUkRBTk9fQ0hBSU4pLFxuICAgICAgICAgICAgdG86IHRoaXMudG9rZW5zLmdldElEKHRva2VuWzBdLCB0b0NoYWluKSxcbiAgICAgICAgICAgIGFtb3VudDogYXNzZXQucXVhbnRpdHksXG4gICAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB0cnkgdG8gYnVpbGQgdHJhbnNmb3JtYXRpb24gdXNpbmcgbG9ja2VkIEFEQVxuICAgIGNvbnN0IGxvdmVsYWNlID0gdGhpcy50b2tlbnMuc2VhcmNoKENBUkRBTk9fQ0hBSU4sIHtcbiAgICAgIFt0aGlzLnRva2Vucy5nZXRJZEtleShDQVJEQU5PX0NIQUlOKV06IENBUkRBTk9fTkFUSVZFX1RPS0VOLFxuICAgIH0pO1xuICAgIGlmIChsb3ZlbGFjZS5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmcm9tOiBDQVJEQU5PX05BVElWRV9UT0tFTixcbiAgICAgICAgdG86IHRoaXMudG9rZW5zLmdldElEKGxvdmVsYWNlWzBdLCB0b0NoYWluKSxcbiAgICAgICAgYW1vdW50OiBib3gudmFsdWUsXG4gICAgICB9O1xuICAgIH0gZWxzZSByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RosenData } from '../abstract/types';
|
|
2
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
3
|
+
import { TxBabbage, TxOut } from '@cardano-ogmios/schema';
|
|
4
|
+
import { TokenTransformation } from './types';
|
|
5
|
+
export declare class CardanoOgmiosRosenExtractor extends AbstractRosenDataExtractor<TxBabbage> {
|
|
6
|
+
/**
|
|
7
|
+
* extracts RosenData from given lock transaction in Ogmios format
|
|
8
|
+
* @param transaction the lock transaction in Koios format
|
|
9
|
+
*/
|
|
10
|
+
get: (transaction: TxBabbage) => RosenData | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* extracts and builds token transformation from TxOut and tokenMap
|
|
13
|
+
* @param box transaction output
|
|
14
|
+
* @param toChain event target chain
|
|
15
|
+
*/
|
|
16
|
+
getAssetTransformation: (box: TxOut, toChain: string) => TokenTransformation | undefined;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=CardanoOgmiosRosenExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardanoOgmiosRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAA4B,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGxE,qBAAa,2BAA4B,SAAQ,0BAA0B,CAAC,SAAS,CAAC;IACpF;;;OAGG;IACH,GAAG,gBAAiB,SAAS,KAAG,SAAS,GAAG,SAAS,CAqDnD;IAEF;;;;OAIG;IACH,sBAAsB,QACf,KAAK,WACD,MAAM,KACd,mBAAmB,GAAG,SAAS,CAwChC;CACH"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
2
|
+
import { CARDANO_CHAIN, CARDANO_NATIVE_TOKEN } from '../const';
|
|
3
|
+
import Utils from '../Utils';
|
|
4
|
+
import { isArray, isString } from 'lodash-es';
|
|
5
|
+
export class CardanoOgmiosRosenExtractor extends AbstractRosenDataExtractor {
|
|
6
|
+
/**
|
|
7
|
+
* extracts RosenData from given lock transaction in Ogmios format
|
|
8
|
+
* @param transaction the lock transaction in Koios format
|
|
9
|
+
*/
|
|
10
|
+
get = (transaction) => {
|
|
11
|
+
const metadata = transaction.metadata;
|
|
12
|
+
try {
|
|
13
|
+
if (metadata !== null) {
|
|
14
|
+
const blob = metadata.body.blob;
|
|
15
|
+
if (blob && blob['0']) {
|
|
16
|
+
const data = Utils.getDictValue(blob['0']);
|
|
17
|
+
if (isString(data.to) &&
|
|
18
|
+
isString(data.networkFee) &&
|
|
19
|
+
isString(data.bridgeFee) &&
|
|
20
|
+
isString(data.toAddress) &&
|
|
21
|
+
isArray(data.fromAddress) &&
|
|
22
|
+
data.fromAddress.every(isString)) {
|
|
23
|
+
const rosenData = data;
|
|
24
|
+
const lockOutputs = transaction.body.outputs.filter((output) => output.address === this.lockAddress);
|
|
25
|
+
for (const output of lockOutputs) {
|
|
26
|
+
const assetTransformation = this.getAssetTransformation(output, rosenData.to);
|
|
27
|
+
if (assetTransformation) {
|
|
28
|
+
return {
|
|
29
|
+
toChain: rosenData.to,
|
|
30
|
+
toAddress: rosenData.toAddress,
|
|
31
|
+
bridgeFee: rosenData.bridgeFee,
|
|
32
|
+
networkFee: rosenData.networkFee,
|
|
33
|
+
fromAddress: rosenData.fromAddress.join(''),
|
|
34
|
+
sourceChainTokenId: assetTransformation.from,
|
|
35
|
+
amount: assetTransformation.amount,
|
|
36
|
+
targetChainTokenId: assetTransformation.to,
|
|
37
|
+
sourceTxId: transaction.id,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
catch (e) {
|
|
46
|
+
this.logger.debug(`An error occurred while getting Cardano rosen data from Ogmios: ${e}`);
|
|
47
|
+
if (e instanceof Error && e.stack) {
|
|
48
|
+
this.logger.debug(e.stack);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return undefined;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* extracts and builds token transformation from TxOut and tokenMap
|
|
55
|
+
* @param box transaction output
|
|
56
|
+
* @param toChain event target chain
|
|
57
|
+
*/
|
|
58
|
+
getAssetTransformation = (box, toChain) => {
|
|
59
|
+
// try to build transformation using locked assets
|
|
60
|
+
if (box.value.assets) {
|
|
61
|
+
const assets = Object.keys(box.value.assets);
|
|
62
|
+
if (assets.length > 0) {
|
|
63
|
+
for (const tokenKey of assets) {
|
|
64
|
+
// according to ogmios docs assets are stores as
|
|
65
|
+
// [policyId.assetName]: amount
|
|
66
|
+
// [policyId]: amount if assetName not exists.
|
|
67
|
+
const parts = tokenKey.split('.');
|
|
68
|
+
// if assetName exists, search token with policyId and asset name
|
|
69
|
+
// if not, search token with policyId
|
|
70
|
+
const token = this.tokens.search(CARDANO_CHAIN, tokenKey.indexOf('.') != -1
|
|
71
|
+
? { policyId: parts[0].trim(), assetName: parts[1].trim() }
|
|
72
|
+
: { policyId: tokenKey });
|
|
73
|
+
if (token.length > 0) {
|
|
74
|
+
return {
|
|
75
|
+
from: this.tokens.getID(token[0], CARDANO_CHAIN),
|
|
76
|
+
to: this.tokens.getID(token[0], toChain),
|
|
77
|
+
amount: box.value.assets[tokenKey].toString(),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
// try to build transformation using locked ADA
|
|
84
|
+
const lovelace = this.tokens.search(CARDANO_CHAIN, {
|
|
85
|
+
[this.tokens.getIdKey(CARDANO_CHAIN)]: CARDANO_NATIVE_TOKEN,
|
|
86
|
+
});
|
|
87
|
+
if (lovelace.length > 0) {
|
|
88
|
+
return {
|
|
89
|
+
from: CARDANO_NATIVE_TOKEN,
|
|
90
|
+
to: this.tokens.getID(lovelace[0], toChain),
|
|
91
|
+
amount: box.value.coins.toString(),
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
else
|
|
95
|
+
return undefined;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2dldFJvc2VuRGF0YS9jYXJkYW5vL0NhcmRhbm9PZ21pb3NSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDL0QsT0FBTyxLQUFLLE1BQU0sVUFBVSxDQUFDO0FBRzdCLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTlDLE1BQU0sT0FBTywyQkFBNEIsU0FBUSwwQkFBcUM7SUFDcEY7OztPQUdHO0lBQ0gsR0FBRyxHQUFHLENBQUMsV0FBc0IsRUFBeUIsRUFBRTtRQUN0RCxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsUUFBUSxDQUFDO1FBQ3RDLElBQUk7WUFDRixJQUFJLFFBQVEsS0FBSyxJQUFJLEVBQUU7Z0JBQ3JCLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNoQyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ3JCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FDMkIsQ0FBQztvQkFDdkMsSUFDRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzt3QkFDakIsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7d0JBQ3pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO3dCQUN4QixRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQzt3QkFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7d0JBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMs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LENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUM7NEJBQ3hDLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUU7eUJBQzlDLENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO1FBRUQsK0NBQStDO1FBQy9DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUNqRCxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CO1NBQzVELENBQUMsQ0FBQztRQUNILElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDdkIsT0FBTztnQkFDTCxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQztnQkFDM0MsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTthQUNuQyxDQUFDO1NBQ0g7O1lBQU0sT0FBTyxTQUFTLENBQUM7SUFDMUIsQ0FBQyxDQUFDO0NBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3NlbkRhdGEgfSBmcm9tICcuLi9hYnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgQ0FSREFOT19DSEFJTiwgQ0FSREFOT19OQVRJVkVfVE9LRU4gfSBmcm9tICcuLi9jb25zdCc7XG5pbXBvcnQgVXRpbHMgZnJvbSAnLi4vVXRpbHMnO1xuaW1wb3J0IHsgVHhCYWJiYWdlLCBUeE91dCB9IGZyb20gJ0BjYXJkYW5vLW9nbWlvcy9zY2hlbWEnO1xuaW1wb3J0IHsgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhLCBUb2tlblRyYW5zZm9ybWF0aW9uIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBpc0FycmF5LCBpc1N0cmluZyB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmV4cG9ydCBjbGFzcyBDYXJkYW5vT2dtaW9zUm9zZW5FeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxUeEJhYmJhZ2U+IHtcbiAgLyoqXG4gICAqIGV4dHJhY3RzIFJvc2VuRGF0YSBmcm9tIGdpdmVuIGxvY2sgdHJhbnNhY3Rpb24gaW4gT2dtaW9zIGZvcm1hdFxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gdGhlIGxvY2sgdHJhbnNhY3Rpb24gaW4gS29pb3MgZm9ybWF0XG4gICAqL1xuICBnZXQgPSAodHJhbnNhY3Rpb246IFR4QmFiYmFnZSk6IFJvc2VuRGF0YSB8IHVuZGVmaW5lZCA9PiB7XG4gICAgY29uc3QgbWV0YWRhdGEgPSB0cmFuc2FjdGlvbi5tZXRhZGF0YTtcbiAgICB0cnkge1xuICAgICAgaWYgKG1ldGFkYXRhICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGJsb2IgPSBtZXRhZGF0YS5ib2R5LmJsb2I7XG4gICAgICAgIGlmIChibG9iICYmIGJsb2JbJzAnXSkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBVdGlscy5nZXREaWN0VmFsdWUoXG4gICAgICAgICAgICBibG9iWycwJ11cbiAgICAgICAgICApIGFzIFBhcnRpYWw8Q2FyZGFub01ldGFkYXRhUm9zZW5EYXRhPjtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBpc1N0cmluZyhkYXRhLnRvKSAmJlxuICAgICAgICAgICAgaXNTdHJpbmcoZGF0YS5uZXR3b3JrRmVlKSAmJlxuICAgICAgICAgICAgaXNTdHJpbmcoZGF0YS5icmlkZ2VGZWUpICYmXG4gICAgICAgICAgICBpc1N0cmluZyhkYXRhLnRvQWRkcmVzcykgJiZcbiAgICAgICAgICAgIGlzQXJyYXkoZGF0YS5mcm9tQWRkcmVzcykgJiZcbiAgICAgICAgICAgIGRhdGEuZnJvbUFkZHJlc3MuZXZlcnkoaXNTdHJpbmcpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCByb3NlbkRhdGEgPSBkYXRhIGFzIHVua25vd24gYXMgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhO1xuXG4gICAgICAgICAgICBjb25zdCBsb2NrT3V0cHV0cyA9IHRyYW5zYWN0aW9uLmJvZHkub3V0cHV0cy5maWx0ZXIoXG4gICAgICAgICAgICAgIChvdXRwdXQpID0+IG91dHB1dC5hZGRyZXNzID09PSB0aGlzLmxvY2tBZGRyZXNzXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZm9yIChjb25zdCBvdXRwdXQgb2YgbG9ja091dHB1dHMpIHtcbiAgICAgICAgICAgICAgY29uc3QgYXNzZXRUcmFuc2Zvcm1hdGlvbiA9IHRoaXMuZ2V0QXNzZXRUcmFuc2Zvcm1hdGlvbihcbiAgICAgICAgICAgICAgICBvdXRwdXQsXG4gICAgICAgICAgICAgICAgcm9zZW5EYXRhLnRvXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGlmIChhc3NldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIHRvQ2hhaW46IHJvc2VuRGF0YS50byxcbiAgICAgICAgICAgICAgICAgIHRvQWRkcmVzczogcm9zZW5EYXRhLnRvQWRkcmVzcyxcbiAgICAgICAgICAgICAgICAgIGJyaWRnZUZlZTogcm9zZW5EYXRhLmJyaWRnZUZlZSxcbiAgICAgICAgICAgICAgICAgIG5ldHdvcmtGZWU6IHJvc2VuRGF0YS5uZXR3b3JrRmVlLFxuICAgICAgICAgICAgICAgICAgZnJvbUFkZHJlc3M6IHJvc2VuRGF0YS5mcm9tQWRkcmVzcy5qb2luKCcnKSxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi5mcm9tLFxuICAgICAgICAgICAgICAgICAgYW1vdW50OiBhc3NldFRyYW5zZm9ybWF0aW9uLmFtb3VudCxcbiAgICAgICAgICAgICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogYXNzZXRUcmFuc2Zvcm1hdGlvbi50byxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZVR4SWQ6IHRyYW5zYWN0aW9uLmlkLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgYEFuIGVycm9yIG9jY3VycmVkIHdoaWxlIGdldHRpbmcgQ2FyZGFubyByb3NlbiBkYXRhIGZyb20gT2dtaW9zOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICAvKipcbiAgICogZXh0cmFjdHMgYW5kIGJ1aWxkcyB0b2tlbiB0cmFuc2Zvcm1hdGlvbiBmcm9tIFR4T3V0IGFuZCB0b2tlbk1hcFxuICAgKiBAcGFyYW0gYm94IHRyYW5zYWN0aW9uIG91dHB1dFxuICAgKiBAcGFyYW0gdG9DaGFpbiBldmVudCB0YXJnZXQgY2hhaW5cbiAgICovXG4gIGdldEFzc2V0VHJhbnNmb3JtYXRpb24gPSAoXG4gICAgYm94OiBUeE91dCxcbiAgICB0b0NoYWluOiBzdHJpbmdcbiAgKTogVG9rZW5UcmFuc2Zvcm1hdGlvbiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBhc3NldHNcbiAgICBpZiAoYm94LnZhbHVlLmFzc2V0cykge1xuICAgICAgY29uc3QgYXNzZXRzID0gT2JqZWN0LmtleXMoYm94LnZhbHVlLmFzc2V0cyk7XG4gICAgICBpZiAoYXNzZXRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9yIChjb25zdCB0b2tlbktleSBvZiBhc3NldHMpIHtcbiAgICAgICAgICAvLyBhY2NvcmRpbmcgdG8gb2dtaW9zIGRvY3MgYXNzZXRzIGFyZSBzdG9yZXMgYXNcbiAgICAgICAgICAvLyAgICAgIFtwb2xpY3lJZC5hc3NldE5hbWVdOiBhbW91bnRcbiAgICAgICAgICAvLyAgICAgIFtwb2xpY3lJZF06IGFtb3VudCAgICAgICAgaWYgYXNzZXROYW1lIG5vdCBleGlzdHMuXG4gICAgICAgICAgY29uc3QgcGFydHMgPSB0b2tlbktleS5zcGxpdCgnLicpO1xuICAgICAgICAgIC8vIGlmIGFzc2V0TmFtZSBleGlzdHMsIHNlYXJjaCB0b2tlbiB3aXRoIHBvbGljeUlkIGFuZCBhc3NldCBuYW1lXG4gICAgICAgICAgLy8gaWYgbm90LCBzZWFyY2ggdG9rZW4gd2l0aCBwb2xpY3lJZFxuICAgICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy50b2tlbnMuc2VhcmNoKFxuICAgICAgICAgICAgQ0FSREFOT19DSEFJTixcbiAgICAgICAgICAgIHRva2VuS2V5LmluZGV4T2YoJy4nKSAhPSAtMVxuICAgICAgICAgICAgICA/IHsgcG9saWN5SWQ6IHBhcnRzWzBdLnRyaW0oKSwgYXNzZXROYW1lOiBwYXJ0c1sxXS50cmltKCkgfVxuICAgICAgICAgICAgICA6IHsgcG9saWN5SWQ6IHRva2VuS2V5IH1cbiAgICAgICAgICApO1xuICAgICAgICAgIGlmICh0b2tlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBmcm9tOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgQ0FSREFOT19DSEFJTiksXG4gICAgICAgICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRCh0b2tlblswXSwgdG9DaGFpbiksXG4gICAgICAgICAgICAgIGFtb3VudDogYm94LnZhbHVlLmFzc2V0c1t0b2tlbktleV0udG9TdHJpbmcoKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gdHJ5IHRvIGJ1aWxkIHRyYW5zZm9ybWF0aW9uIHVzaW5nIGxvY2tlZCBBREFcbiAgICBjb25zdCBsb3ZlbGFjZSA9IHRoaXMudG9rZW5zLnNlYXJjaChDQVJEQU5PX0NIQUlOLCB7XG4gICAgICBbdGhpcy50b2tlbnMuZ2V0SWRLZXkoQ0FSREFOT19DSEFJTildOiBDQVJEQU5PX05BVElWRV9UT0tFTixcbiAgICB9KTtcbiAgICBpZiAobG92ZWxhY2UubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZnJvbTogQ0FSREFOT19OQVRJVkVfVE9LRU4sXG4gICAgICAgIHRvOiB0aGlzLnRva2Vucy5nZXRJRChsb3ZlbGFjZVswXSwgdG9DaGFpbiksXG4gICAgICAgIGFtb3VudDogYm94LnZhbHVlLmNvaW5zLnRvU3RyaW5nKCksXG4gICAgICB9O1xuICAgIH0gZWxzZSByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xufVxuIl19
|
|
@@ -1,3 +1,35 @@
|
|
|
1
|
+
interface PaymentAddr {
|
|
2
|
+
bech32: string;
|
|
3
|
+
cred: string;
|
|
4
|
+
}
|
|
5
|
+
interface Asset {
|
|
6
|
+
policy_id: string;
|
|
7
|
+
asset_name: string;
|
|
8
|
+
quantity: string;
|
|
9
|
+
}
|
|
10
|
+
interface Utxo {
|
|
11
|
+
payment_addr: PaymentAddr;
|
|
12
|
+
stake_addr?: string | null;
|
|
13
|
+
tx_hash: string;
|
|
14
|
+
tx_index: number;
|
|
15
|
+
value: string;
|
|
16
|
+
asset_list: Array<Asset>;
|
|
17
|
+
}
|
|
18
|
+
interface Metadata {
|
|
19
|
+
[key: string]: Record<string, unknown>;
|
|
20
|
+
}
|
|
21
|
+
interface KoiosTransaction {
|
|
22
|
+
tx_hash: string;
|
|
23
|
+
block_hash: string;
|
|
24
|
+
inputs: Array<Utxo>;
|
|
25
|
+
outputs: Array<Utxo>;
|
|
26
|
+
metadata?: Metadata;
|
|
27
|
+
}
|
|
28
|
+
interface TokenTransformation {
|
|
29
|
+
from: string;
|
|
30
|
+
to: string;
|
|
31
|
+
amount: string;
|
|
32
|
+
}
|
|
1
33
|
interface CardanoRosenData {
|
|
2
34
|
toChain: string;
|
|
3
35
|
toAddress: string;
|
|
@@ -5,21 +37,18 @@ interface CardanoRosenData {
|
|
|
5
37
|
networkFee: string;
|
|
6
38
|
fromAddress: string;
|
|
7
39
|
}
|
|
8
|
-
interface
|
|
40
|
+
interface CardanoMetadataRosenData {
|
|
9
41
|
to: string;
|
|
10
42
|
networkFee: string;
|
|
11
43
|
bridgeFee: string;
|
|
12
44
|
toAddress: string;
|
|
13
45
|
fromAddress: string[];
|
|
14
46
|
}
|
|
15
|
-
interface MetaData {
|
|
16
|
-
[key: string]: JSON;
|
|
17
|
-
}
|
|
18
47
|
declare type ListObject = Array<MetadataObject>;
|
|
19
48
|
declare type NativeValue = string | undefined;
|
|
20
49
|
interface JsonObject {
|
|
21
50
|
[key: string]: MetadataObject;
|
|
22
51
|
}
|
|
23
52
|
declare type MetadataObject = JsonObject | ListObject | NativeValue;
|
|
24
|
-
export { CardanoRosenData,
|
|
53
|
+
export { Utxo, KoiosTransaction, TokenTransformation, CardanoRosenData, CardanoMetadataRosenData, Metadata, MetadataObject, JsonObject, ListObject, NativeValue, };
|
|
25
54
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/types.ts"],"names":[],"mappings":"AAAA,UAAU,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/cardano/types.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,KAAK;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,IAAI;IACZ,YAAY,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;CAC1B;AAED,UAAU,QAAQ;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,wBAAwB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,aAAK,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;AACxC,aAAK,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AACtC,UAAU,UAAU;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC;CAC/B;AACD,aAAK,cAAc,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;AAE5D,OAAO,EACL,IAAI,EACJ,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,QAAQ,EACR,cAAc,EACd,UAAU,EACV,UAAU,EACV,WAAW,GACZ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NhcmRhbm8vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImludGVyZmFjZSBQYXltZW50QWRkciB7XG4gIGJlY2gzMjogc3RyaW5nO1xuICBjcmVkOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBBc3NldCB7XG4gIHBvbGljeV9pZDogc3RyaW5nO1xuICBhc3NldF9uYW1lOiBzdHJpbmc7XG4gIHF1YW50aXR5OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBVdHhvIHtcbiAgcGF5bWVudF9hZGRyOiBQYXltZW50QWRkcjtcbiAgc3Rha2VfYWRkcj86IHN0cmluZyB8IG51bGw7XG4gIHR4X2hhc2g6IHN0cmluZztcbiAgdHhfaW5kZXg6IG51bWJlcjtcbiAgdmFsdWU6IHN0cmluZztcbiAgYXNzZXRfbGlzdDogQXJyYXk8QXNzZXQ+O1xufVxuXG5pbnRlcmZhY2UgTWV0YWRhdGEge1xuICBba2V5OiBzdHJpbmddOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuaW50ZXJmYWNlIEtvaW9zVHJhbnNhY3Rpb24ge1xuICB0eF9oYXNoOiBzdHJpbmc7XG4gIGJsb2NrX2hhc2g6IHN0cmluZztcbiAgaW5wdXRzOiBBcnJheTxVdHhvPjtcbiAgb3V0cHV0czogQXJyYXk8VXR4bz47XG4gIG1ldGFkYXRhPzogTWV0YWRhdGE7XG59XG5cbmludGVyZmFjZSBUb2tlblRyYW5zZm9ybWF0aW9uIHtcbiAgZnJvbTogc3RyaW5nO1xuICB0bzogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIENhcmRhbm9Sb3NlbkRhdGEge1xuICB0b0NoYWluOiBzdHJpbmc7XG4gIHRvQWRkcmVzczogc3RyaW5nO1xuICBicmlkZ2VGZWU6IHN0cmluZztcbiAgbmV0d29ya0ZlZTogc3RyaW5nO1xuICBmcm9tQWRkcmVzczogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhIHtcbiAgdG86IHN0cmluZztcbiAgbmV0d29ya0ZlZTogc3RyaW5nO1xuICBicmlkZ2VGZWU6IHN0cmluZztcbiAgdG9BZGRyZXNzOiBzdHJpbmc7XG4gIGZyb21BZGRyZXNzOiBzdHJpbmdbXTtcbn1cblxudHlwZSBMaXN0T2JqZWN0ID0gQXJyYXk8TWV0YWRhdGFPYmplY3Q+O1xudHlwZSBOYXRpdmVWYWx1ZSA9IHN0cmluZyB8IHVuZGVmaW5lZDtcbmludGVyZmFjZSBKc29uT2JqZWN0IHtcbiAgW2tleTogc3RyaW5nXTogTWV0YWRhdGFPYmplY3Q7XG59XG50eXBlIE1ldGFkYXRhT2JqZWN0ID0gSnNvbk9iamVjdCB8IExpc3RPYmplY3QgfCBOYXRpdmVWYWx1ZTtcblxuZXhwb3J0IHtcbiAgVXR4byxcbiAgS29pb3NUcmFuc2FjdGlvbixcbiAgVG9rZW5UcmFuc2Zvcm1hdGlvbixcbiAgQ2FyZGFub1Jvc2VuRGF0YSxcbiAgQ2FyZGFub01ldGFkYXRhUm9zZW5EYXRhLFxuICBNZXRhZGF0YSxcbiAgTWV0YWRhdGFPYmplY3QsXG4gIEpzb25PYmplY3QsXG4gIExpc3RPYmplY3QsXG4gIE5hdGl2ZVZhbHVlLFxufTtcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAC/C,eAAO,MAAM,iBAAiB,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../lib/getRosenData/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAC/C,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,aAAa,YAAY,CAAC;AACvC,eAAO,MAAM,UAAU,SAAS,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export const CARDANO_NATIVE_TOKEN = 'lovelace';
|
|
2
2
|
export const ERGO_NATIVE_TOKEN = 'erg';
|
|
3
|
-
|
|
3
|
+
export const CARDANO_CHAIN = 'cardano';
|
|
4
|
+
export const ERGO_CHAIN = 'ergo';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2NvbnN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLFVBQVUsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FBQztBQUN2QyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IENBUkRBTk9fTkFUSVZFX1RPS0VOID0gJ2xvdmVsYWNlJztcbmV4cG9ydCBjb25zdCBFUkdPX05BVElWRV9UT0tFTiA9ICdlcmcnO1xuZXhwb3J0IGNvbnN0IENBUkRBTk9fQ0hBSU4gPSAnY2FyZGFubyc7XG5leHBvcnQgY29uc3QgRVJHT19DSEFJTiA9ICdlcmdvJztcbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { RosenData } from '../abstract/types';
|
|
2
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
3
|
+
import { NodeOutputBox, NodeTransaction, TokenTransformation } from './types';
|
|
4
|
+
import { RosenTokens } from '@rosen-bridge/tokens';
|
|
5
|
+
import { AbstractLogger } from '@rosen-bridge/logger-interface';
|
|
6
|
+
export declare class ErgoNodeRosenExtractor extends AbstractRosenDataExtractor<NodeTransaction> {
|
|
7
|
+
lockErgoTree: string;
|
|
8
|
+
constructor(lockAddress: string, tokens: RosenTokens, logger?: AbstractLogger);
|
|
9
|
+
/**
|
|
10
|
+
* extracts RosenData from given lock transaction in Node format
|
|
11
|
+
* @param transaction the lock transaction in Node format
|
|
12
|
+
*/
|
|
13
|
+
get: (transaction: NodeTransaction) => RosenData | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* extracts and builds token transformation from NodeOutputBox and tokenMap
|
|
16
|
+
* @param box transaction output
|
|
17
|
+
* @param toChain event target chain
|
|
18
|
+
*/
|
|
19
|
+
getAssetTransformation: (box: NodeOutputBox, toChain: string) => TokenTransformation | undefined;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=ErgoNodeRosenExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErgoNodeRosenExtractor.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/ergo/ErgoNodeRosenExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,0BAA0B,MAAM,wCAAwC,CAAC;AAEhF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhE,qBAAa,sBAAuB,SAAQ,0BAA0B,CAAC,eAAe,CAAC;IACrF,YAAY,EAAE,MAAM,CAAC;gBAGnB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,cAAc;IAQzB;;;OAGG;IACH,GAAG,gBAAiB,eAAe,KAAG,SAAS,GAAG,SAAS,CAwCzD;IAEF;;;;OAIG;IACH,sBAAsB,QACf,aAAa,WACT,MAAM,KACd,mBAAmB,GAAG,SAAS,CA2BhC;CACH"}
|