@subsquid/fuel-stream 1.0.0 → 1.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/archive/source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,aAAa,EAAC,MAAM,wCAAwC,CAAA;AAEpE,OAAO,EAAoC,gBAAgB,EAAC,MAAM,+BAA+B,CAAA;AAGjG,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAA;AAEhD,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAA;AAGjD,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAEzC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAUzD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA8BnD,cAAc,CAAC,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;CA+BlI"}
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../../src/archive/source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,aAAa,EAAC,MAAM,wCAAwC,CAAA;AAEpE,OAAO,EAAoC,gBAAgB,EAAC,MAAM,+BAA+B,CAAA;AAGjG,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAA;AAEhD,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAA;AAGjD,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAEzC,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAWzD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA8BnD,cAAc,CAAC,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;CA+BlI"}
@@ -19,6 +19,7 @@ class FuelGateway {
19
19
  }
20
20
  async getBlockHash(height) {
21
21
  let blocks = await this.client.query({
22
+ type: 'fuel',
22
23
  fromBlock: height,
23
24
  toBlock: height,
24
25
  includeAllBlocks: true
@@ -1 +1 @@
1
- {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/archive/source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../../src/archive/source.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type * as data from '@subsquid/fuel-normalization';
2
2
  import type { BlockRequiredFields, ReceiptRequiredFields, InputRequiredFields, OutputRequiredFields, TransactionRequiredFields } from './data-partial';
3
- import type { GetFields, Select, Selector, Simplify } from './util';
3
+ import type { GetFields, Select, Selector, Simplify, TrueFields } from './util';
4
4
  /**
5
5
  * Hex encoded binary string
6
6
  */
@@ -32,8 +32,33 @@ type Item<Data, RequiredFields extends keyof Data, F extends FieldSelection, K e
32
32
  export type BlockHeader<F extends FieldSelection = {}> = Item<data.BlockHeader, BlockRequiredFields, F, 'block'>;
33
33
  export type Transaction<F extends FieldSelection = {}> = Item<data.Transaction, TransactionRequiredFields, F, 'transaction'>;
34
34
  export type Receipt<F extends FieldSelection = {}> = Item<data.Receipt, ReceiptRequiredFields, F, 'receipt'>;
35
- export type Input<F extends FieldSelection = {}> = Item<data.TransactionInput, InputRequiredFields, F, 'input'>;
36
- export type Output<F extends FieldSelection = {}> = Item<data.TransactionOutput, OutputRequiredFields, F, 'output'>;
35
+ type RemovePrefix<Prefix extends string, T> = T extends `${Prefix}${infer S}` ? Uncapitalize<S> : never;
36
+ export type InputCoin<F extends FieldSelection> = Simplify<Pick<data.InputCoin, InputRequiredFields> & {
37
+ type: 'InputCoin';
38
+ } & Select<data.InputCoin, RemovePrefix<'coin', TrueFields<F['input']>>>>;
39
+ export type InputContract<F extends FieldSelection> = Simplify<Pick<data.InputContract, InputRequiredFields> & {
40
+ type: 'InputContract';
41
+ } & Select<data.InputContract, RemovePrefix<'contract', TrueFields<F['input']>>>>;
42
+ export type InputMessage<F extends FieldSelection> = Simplify<Pick<data.InputMessage, InputRequiredFields> & {
43
+ type: 'InputMessage';
44
+ } & Select<data.InputCoin, RemovePrefix<'coin', TrueFields<F['input']>>>>;
45
+ export type Input<F extends FieldSelection = {}> = InputCoin<F> | InputContract<F> | InputMessage<F>;
46
+ export type CoinOutput<F extends FieldSelection> = Simplify<Pick<data.CoinOutput, OutputRequiredFields> & {
47
+ type: 'CoinOutput';
48
+ } & Select<data.CoinOutput, RemovePrefix<'coin', TrueFields<F['output']>>>>;
49
+ export type ChangeOutput<F extends FieldSelection> = Simplify<Pick<data.ChangeOutput, OutputRequiredFields> & {
50
+ type: 'ChangeOutput';
51
+ } & Select<data.ChangeOutput, RemovePrefix<'change', TrueFields<F['output']>>>>;
52
+ export type ContractOutput<F extends FieldSelection> = Simplify<Pick<data.ContractOutput, OutputRequiredFields> & {
53
+ type: 'ContractOutput';
54
+ } & Select<data.ContractOutput, RemovePrefix<'contract', TrueFields<F['output']>>>>;
55
+ export type VariableOutput<F extends FieldSelection> = Simplify<Pick<data.VariableOutput, OutputRequiredFields> & {
56
+ type: 'VariableOutput';
57
+ } & Select<data.VariableOutput, RemovePrefix<'variable', TrueFields<F['output']>>>>;
58
+ export type ContractCreated<F extends FieldSelection> = Simplify<Pick<data.ContractCreated, OutputRequiredFields> & {
59
+ type: 'ContractCreated';
60
+ } & Select<data.ContractCreated, RemovePrefix<'contractCreated', TrueFields<F['output']>>>>;
61
+ export type Output<F extends FieldSelection = {}> = CoinOutput<F> | ContractOutput<F> | ChangeOutput<F> | VariableOutput<F> | ContractCreated<F>;
37
62
  export interface Block<F extends FieldSelection = {}> {
38
63
  header: BlockHeader<F>;
39
64
  transactions: Transaction<F>[];
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/data/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/data/model.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export type ExcludeUndefined<T> = {
6
6
  } & {};
7
7
  export type GetFields<FieldSelectionType, Defaults extends FieldSelectionType, Selection extends FieldSelectionType, K extends keyof FieldSelectionType> = TrueFields<MergeDefault<Selection[K], Defaults[K]>>;
8
8
  type MergeDefault<T, D> = Simplify<undefined extends T ? D : Omit<D, keyof ExcludeUndefined<T>> & ExcludeUndefined<T>>;
9
- type TrueFields<F> = keyof {
9
+ export type TrueFields<F> = keyof {
10
10
  [K in keyof F as true extends F[K] ? K : never]: true;
11
11
  };
12
12
  export type Select<T, Fields> = T extends any ? Simplify<Pick<T, Extract<keyof T, Fields>>> : never;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/data/util.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACrB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACvB,GAAG,EAAE,CAAA;AAGN,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;KAC7B,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC7D,GAAG,EAAE,CAAA;AAGN,MAAM,MAAM,SAAS,CACjB,kBAAkB,EAClB,QAAQ,SAAS,kBAAkB,EACnC,SAAS,SAAS,kBAAkB,EACpC,CAAC,SAAS,MAAM,kBAAkB,IAClC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAGvD,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAC9B,SAAS,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CACrF,CAAA;AAGD,KAAK,UAAU,CAAC,CAAC,IAAI,MAAM;KACtB,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI;CACxD,CAAA;AAGD,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AAGnG,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;KAC3D,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,OAAO;CAC1B,CAAA;AAGD,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,QAAQ,SAAS,MAAM,CAAC,IAAI,QAAQ,CAC3D,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,GACjB;KACK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC3D,CACJ,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/data/util.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACrB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACvB,GAAG,EAAE,CAAA;AAGN,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;KAC7B,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC7D,GAAG,EAAE,CAAA;AAGN,MAAM,MAAM,SAAS,CACjB,kBAAkB,EAClB,QAAQ,SAAS,kBAAkB,EACnC,SAAS,SAAS,kBAAkB,EACpC,CAAC,SAAS,MAAM,kBAAkB,IAClC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAGvD,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAC9B,SAAS,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CACrF,CAAA;AAGD,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,MAAM;KAC7B,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI;CACxD,CAAA;AAGD,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,SAAS,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAA;AAGnG,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI;KAC3D,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,OAAO;CAC1B,CAAA;AAGD,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,QAAQ,SAAS,MAAM,CAAC,IAAI,QAAQ,CAC3D,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,GACjB;KACK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC3D,CACJ,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subsquid/fuel-stream",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Fuel block data streamer",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "repository": "git@github.com:subsquid/squid.git",
@@ -15,8 +15,8 @@
15
15
  "dependencies": {
16
16
  "@subsquid/http-client": "^1.4.0",
17
17
  "@subsquid/logger": "^1.3.3",
18
- "@subsquid/fuel-normalization": "^1.0.0",
19
- "@subsquid/fuel-data": "^1.0.0",
18
+ "@subsquid/fuel-normalization": "^1.0.1",
19
+ "@subsquid/fuel-data": "^1.0.1",
20
20
  "@subsquid/util-internal": "^3.2.0",
21
21
  "@subsquid/util-internal-archive-client": "^0.1.2",
22
22
  "@subsquid/util-internal-ingest-tools": "^1.1.4",
@@ -19,6 +19,7 @@ export class FuelGateway {
19
19
 
20
20
  async getBlockHash(height: number): Promise<string | undefined> {
21
21
  let blocks = await this.client.query({
22
+ type: 'fuel',
22
23
  fromBlock: height,
23
24
  toBlock: height,
24
25
  includeAllBlocks: true
package/src/data/model.ts CHANGED
@@ -6,7 +6,7 @@ import type {
6
6
  OutputRequiredFields,
7
7
  TransactionRequiredFields
8
8
  } from './data-partial'
9
- import type {GetFields, Select, Selector, Simplify} from './util'
9
+ import type {GetFields, Select, Selector, Simplify, TrueFields} from './util'
10
10
 
11
11
 
12
12
  /**
@@ -89,22 +89,82 @@ export type Receipt<F extends FieldSelection = {}> = Item<
89
89
  >
90
90
 
91
91
 
92
- export type Input<F extends FieldSelection = {}> = Item<
93
- data.TransactionInput,
94
- InputRequiredFields,
95
- F,
96
- 'input'
92
+ type RemovePrefix<Prefix extends string, T>
93
+ = T extends `${Prefix}${infer S}`
94
+ ? Uncapitalize<S>
95
+ : never
96
+
97
+
98
+ export type InputCoin<F extends FieldSelection> = Simplify<
99
+ Pick<data.InputCoin, InputRequiredFields> &
100
+ {type: 'InputCoin'} &
101
+ Select<data.InputCoin, RemovePrefix<'coin', TrueFields<F['input']>>>
97
102
  >
98
103
 
99
104
 
100
- export type Output<F extends FieldSelection = {}> = Item<
101
- data.TransactionOutput,
102
- OutputRequiredFields,
103
- F,
104
- 'output'
105
+ export type InputContract<F extends FieldSelection> = Simplify<
106
+ Pick<data.InputContract, InputRequiredFields> &
107
+ {type: 'InputContract'} &
108
+ Select<data.InputContract, RemovePrefix<'contract', TrueFields<F['input']>>>
109
+ >
110
+
111
+
112
+ export type InputMessage<F extends FieldSelection> = Simplify<
113
+ Pick<data.InputMessage, InputRequiredFields> &
114
+ {type: 'InputMessage'} &
115
+ Select<data.InputCoin, RemovePrefix<'coin', TrueFields<F['input']>>>
116
+ >
117
+
118
+
119
+ export type Input<F extends FieldSelection = {}> =
120
+ InputCoin<F> |
121
+ InputContract<F> |
122
+ InputMessage<F>
123
+
124
+
125
+ export type CoinOutput<F extends FieldSelection> = Simplify<
126
+ Pick<data.CoinOutput, OutputRequiredFields> &
127
+ {type: 'CoinOutput'} &
128
+ Select<data.CoinOutput, RemovePrefix<'coin', TrueFields<F['output']>>>
105
129
  >
106
130
 
107
131
 
132
+ export type ChangeOutput<F extends FieldSelection> = Simplify<
133
+ Pick<data.ChangeOutput, OutputRequiredFields> &
134
+ {type: 'ChangeOutput'} &
135
+ Select<data.ChangeOutput, RemovePrefix<'change', TrueFields<F['output']>>>
136
+ >
137
+
138
+
139
+ export type ContractOutput<F extends FieldSelection> = Simplify<
140
+ Pick<data.ContractOutput, OutputRequiredFields> &
141
+ {type: 'ContractOutput'} &
142
+ Select<data.ContractOutput, RemovePrefix<'contract', TrueFields<F['output']>>>
143
+ >
144
+
145
+
146
+ export type VariableOutput<F extends FieldSelection> = Simplify<
147
+ Pick<data.VariableOutput, OutputRequiredFields> &
148
+ {type: 'VariableOutput'} &
149
+ Select<data.VariableOutput, RemovePrefix<'variable', TrueFields<F['output']>>>
150
+ >
151
+
152
+
153
+ export type ContractCreated<F extends FieldSelection> = Simplify<
154
+ Pick<data.ContractCreated, OutputRequiredFields> &
155
+ {type: 'ContractCreated'} &
156
+ Select<data.ContractCreated, RemovePrefix<'contractCreated', TrueFields<F['output']>>>
157
+ >
158
+
159
+
160
+ export type Output<F extends FieldSelection = {}> =
161
+ CoinOutput<F> |
162
+ ContractOutput<F> |
163
+ ChangeOutput<F> |
164
+ VariableOutput<F> |
165
+ ContractCreated<F>
166
+
167
+
108
168
  export interface Block<F extends FieldSelection = {}> {
109
169
  header: BlockHeader<F>
110
170
  transactions: Transaction<F>[]
package/src/data/util.ts CHANGED
@@ -21,7 +21,7 @@ type MergeDefault<T, D> = Simplify<
21
21
  >
22
22
 
23
23
 
24
- type TrueFields<F> = keyof {
24
+ export type TrueFields<F> = keyof {
25
25
  [K in keyof F as true extends F[K] ? K : never]: true
26
26
  }
27
27