@sentio/sdk 2.42.0-rc.7 → 2.42.0-rc.8
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/lib/btc/filter.d.ts.map +1 -1
- package/lib/btc/filter.js +23 -16
- package/lib/btc/filter.js.map +1 -1
- package/lib/btc/filter.test.js.map +1 -1
- package/package.json +3 -3
- package/src/btc/filter.ts +29 -20
package/lib/btc/filter.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/btc/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/btc/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAMrB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAEnD,MAAM,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,MAAM,CAAC,CAAA;AAEvE,MAAM,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,iBAAiB,CAAC,CAAA;AAEvE,MAAM,MAAM,UAAU,GAAG,MAAM,IAAI,CAAA;AAEnC,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,MAAM,IAAI;KACpC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,UAAU;CAClC,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,CAAC,EAAE,UAAU,CAAA;IACf,EAAE,CAAC,EAAE,UAAU,CAAA;IACf,GAAG,CAAC,EAAE,UAAU,CAAA;IAChB,EAAE,CAAC,EAAE,UAAU,CAAA;IACf,GAAG,CAAC,EAAE,UAAU,CAAA;IAChB,EAAE,CAAC,EAAE,UAAU,CAAA;IAEf,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,MAAM,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;IAE1B,MAAM,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;IAC1B,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;AAE/D,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;IAC5B,cAAc,CAAC,EAAE;QACf,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAA;QACzC,YAAY,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;KAEnC,CAAA;CACF,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;AAE3C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;IACrC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAA;IACxC,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAAA;AAE/E,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG,iBAAiB,EAAE,CAAA;AAoDxE,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,oBAAoB,EAAE,CAShF"}
|
package/lib/btc/filter.js
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
+
import { BTCTransactionFilter_Condition, BTCTransactionFilter_Filter, BTCTransactionFilter_Filters, BTCTransactionFilter_VinFilter, BTCTransactionFilter_VOutFilter } from '@sentio/protos';
|
1
2
|
import { serializeRichValue } from '../store/util.js';
|
2
3
|
import { BigDecimal } from '@sentio/bigdecimal';
|
3
4
|
function toVinFilter(inputFilter) {
|
4
5
|
if (inputFilter) {
|
6
|
+
const ret = BTCTransactionFilter_VinFilter.create();
|
5
7
|
const filters = [];
|
6
8
|
const vouts = [];
|
7
9
|
const txs = [];
|
@@ -15,23 +17,30 @@ function toVinFilter(inputFilter) {
|
|
15
17
|
txs.push(preTransaction);
|
16
18
|
}
|
17
19
|
}
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
20
|
+
ret.filters = BTCTransactionFilter_Filters.create({
|
21
|
+
filters: convertFilters(filters)
|
22
|
+
});
|
23
|
+
if (vouts.length > 0) {
|
24
|
+
const voutFilters = convertFilters(vouts);
|
25
|
+
if (voutFilters && voutFilters.length > 0) {
|
26
|
+
ret.preVOut = voutFilters[0];
|
27
|
+
}
|
28
|
+
}
|
29
|
+
if (txs.length > 0) {
|
30
|
+
ret.preTransaction = filters2Proto(txs)?.[0];
|
31
|
+
}
|
32
|
+
return ret;
|
28
33
|
}
|
29
34
|
return undefined;
|
30
35
|
}
|
31
36
|
function toVOutFilter(outputFilter) {
|
32
37
|
if (outputFilter) {
|
38
|
+
const ret = BTCTransactionFilter_VOutFilter.create();
|
33
39
|
const filters = Array.isArray(outputFilter) ? outputFilter : [outputFilter];
|
34
|
-
|
40
|
+
ret.filters = BTCTransactionFilter_Filters.create({
|
41
|
+
filters: convertFilters(filters)
|
42
|
+
});
|
43
|
+
return ret;
|
35
44
|
}
|
36
45
|
return undefined;
|
37
46
|
}
|
@@ -46,7 +55,7 @@ export function filters2Proto(filter) {
|
|
46
55
|
});
|
47
56
|
}
|
48
57
|
function toCondition(value) {
|
49
|
-
const ret =
|
58
|
+
const ret = BTCTransactionFilter_Condition.create();
|
50
59
|
if (value instanceof Date) {
|
51
60
|
ret.eq = serializeRichValue(value);
|
52
61
|
}
|
@@ -105,9 +114,7 @@ function convertFilters(filters) {
|
|
105
114
|
if (filters && filters.length > 0) {
|
106
115
|
const ret = [];
|
107
116
|
for (const filter of filters) {
|
108
|
-
const f =
|
109
|
-
conditions: {}
|
110
|
-
};
|
117
|
+
const f = BTCTransactionFilter_Filter.create();
|
111
118
|
for (const [key, value] of Object.entries(filter)) {
|
112
119
|
f.conditions[key] = toCondition(value);
|
113
120
|
}
|
@@ -115,6 +122,6 @@ function convertFilters(filters) {
|
|
115
122
|
}
|
116
123
|
return ret;
|
117
124
|
}
|
118
|
-
return
|
125
|
+
return [];
|
119
126
|
}
|
120
127
|
//# sourceMappingURL=filter.js.map
|
package/lib/btc/filter.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/btc/filter.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/btc/filter.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"filter.test.js","sourceRoot":"","sources":["../../src/btc/filter.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAqB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;
|
1
|
+
{"version":3,"file":"filter.test.js","sourceRoot":"","sources":["../../src/btc/filter.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAqB,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAErD,MAAM,aAAa,GAAsB;IACvC,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;IAC3C,YAAY,EAAE;QACZ,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;KAC7C;CACF,CAAA;AAED,MAAM,cAAc,GAAsB;IACxC,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;IAC3C,WAAW,EAAE;QACX,cAAc,EAAE;YACd,YAAY,EAAE;gBACZ,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;gBACrB,UAAU,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;aAC7C;SACF;KACF;CACF,CAAA;AAED,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,IAAI,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;QAC1C,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAEvB,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,KAAK,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;QAC3C,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACvB,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAA;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sentio/sdk",
|
3
|
-
"version": "2.42.0-rc.
|
3
|
+
"version": "2.42.0-rc.8",
|
4
4
|
"license": "Apache-2.0",
|
5
5
|
"type": "module",
|
6
6
|
"exports": {
|
@@ -84,8 +84,8 @@
|
|
84
84
|
"typechain": "^8.3.2",
|
85
85
|
"utility-types": "^3.11.0",
|
86
86
|
"yaml": "^2.3.4",
|
87
|
-
"@sentio/protos": "2.42.0-rc.
|
88
|
-
"@sentio/runtime": "^2.42.0-rc.
|
87
|
+
"@sentio/protos": "2.42.0-rc.8",
|
88
|
+
"@sentio/runtime": "^2.42.0-rc.8"
|
89
89
|
},
|
90
90
|
"peerDependencies": {
|
91
91
|
"tsup": "npm:@sentio/tsup@^6.7.2"
|
package/src/btc/filter.ts
CHANGED
@@ -2,7 +2,9 @@ import {
|
|
2
2
|
BTCTransactionFilter,
|
3
3
|
BTCTransactionFilter_Condition,
|
4
4
|
BTCTransactionFilter_Filter,
|
5
|
-
|
5
|
+
BTCTransactionFilter_Filters,
|
6
|
+
BTCTransactionFilter_VinFilter,
|
7
|
+
BTCTransactionFilter_VOutFilter
|
6
8
|
} from '@sentio/protos'
|
7
9
|
import { serializeRichValue } from '../store/util.js'
|
8
10
|
import { BigDecimal } from '@sentio/bigdecimal'
|
@@ -65,8 +67,9 @@ export type TransactionFilters = TransactionFilter | TransactionFilter[]
|
|
65
67
|
|
66
68
|
function toVinFilter(inputFilter?: VinFilter | VinFilter[]): BTCTransactionFilter_VinFilter | undefined {
|
67
69
|
if (inputFilter) {
|
70
|
+
const ret = BTCTransactionFilter_VinFilter.create()
|
68
71
|
const filters = []
|
69
|
-
const vouts = []
|
72
|
+
const vouts: Filter<VOutFields>[] = []
|
70
73
|
const txs: TransactionFilters = []
|
71
74
|
|
72
75
|
for (const f of Array.isArray(inputFilter) ? inputFilter : [inputFilter]) {
|
@@ -79,27 +82,35 @@ function toVinFilter(inputFilter?: VinFilter | VinFilter[]): BTCTransactionFilte
|
|
79
82
|
txs.push(preTransaction)
|
80
83
|
}
|
81
84
|
}
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
85
|
+
ret.filters = BTCTransactionFilter_Filters.create({
|
86
|
+
filters: convertFilters(filters)
|
87
|
+
})
|
88
|
+
|
89
|
+
if (vouts.length > 0) {
|
90
|
+
const voutFilters = convertFilters(vouts)
|
91
|
+
if (voutFilters && voutFilters.length > 0) {
|
92
|
+
ret.preVOut = voutFilters[0]
|
93
|
+
}
|
94
|
+
}
|
95
|
+
if (txs.length > 0) {
|
96
|
+
ret.preTransaction = filters2Proto(txs)?.[0]
|
93
97
|
}
|
98
|
+
|
99
|
+
return ret
|
94
100
|
}
|
95
101
|
|
96
102
|
return undefined
|
97
103
|
}
|
98
104
|
|
99
|
-
function toVOutFilter(outputFilter?: VOutFilter | VOutFilter[]) {
|
105
|
+
function toVOutFilter(outputFilter?: VOutFilter | VOutFilter[]): BTCTransactionFilter_VOutFilter | undefined {
|
100
106
|
if (outputFilter) {
|
107
|
+
const ret = BTCTransactionFilter_VOutFilter.create()
|
101
108
|
const filters = Array.isArray(outputFilter) ? outputFilter : ([outputFilter] as Filter<VOutFields>[])
|
102
|
-
|
109
|
+
ret.filters = BTCTransactionFilter_Filters.create({
|
110
|
+
filters: convertFilters(filters)
|
111
|
+
})
|
112
|
+
|
113
|
+
return ret
|
103
114
|
}
|
104
115
|
return undefined
|
105
116
|
}
|
@@ -116,7 +127,7 @@ export function filters2Proto(filter: TransactionFilters): BTCTransactionFilter[
|
|
116
127
|
}
|
117
128
|
|
118
129
|
function toCondition(value: Condition | Comparable): BTCTransactionFilter_Condition {
|
119
|
-
const ret: BTCTransactionFilter_Condition =
|
130
|
+
const ret: BTCTransactionFilter_Condition = BTCTransactionFilter_Condition.create()
|
120
131
|
if (value instanceof Date) {
|
121
132
|
ret.eq = serializeRichValue(value)
|
122
133
|
}
|
@@ -178,9 +189,7 @@ function convertFilters<T extends string>(filters?: Array<Filter<T>>): BTCTransa
|
|
178
189
|
if (filters && filters.length > 0) {
|
179
190
|
const ret: BTCTransactionFilter_Filter[] = []
|
180
191
|
for (const filter of filters) {
|
181
|
-
const f: BTCTransactionFilter_Filter =
|
182
|
-
conditions: {}
|
183
|
-
}
|
192
|
+
const f: BTCTransactionFilter_Filter = BTCTransactionFilter_Filter.create()
|
184
193
|
for (const [key, value] of Object.entries(filter)) {
|
185
194
|
f.conditions[key] = toCondition(value as any)
|
186
195
|
}
|
@@ -188,5 +197,5 @@ function convertFilters<T extends string>(filters?: Array<Filter<T>>): BTCTransa
|
|
188
197
|
}
|
189
198
|
return ret
|
190
199
|
}
|
191
|
-
return
|
200
|
+
return []
|
192
201
|
}
|