@subql/common-stellar 4.2.2-1 → 4.2.3-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.
- package/CHANGELOG.md +9 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/index.js +17 -7
- package/dist/index.js.map +1 -1
- package/dist/project/load.js +1 -2
- package/dist/project/load.js.map +1 -1
- package/dist/project/models.js +18 -18
- package/dist/project/models.js.map +1 -1
- package/dist/project/project.spec.js.map +1 -1
- package/dist/project/utils.js +8 -9
- package/dist/project/utils.js.map +1 -1
- package/dist/project/versioned/ProjectManifestVersioned.js +2 -2
- package/dist/project/versioned/ProjectManifestVersioned.js.map +1 -1
- package/dist/project/versioned/v1_0_0/model.js +8 -8
- package/dist/project/versioned/v1_0_0/model.js.map +1 -1
- package/package.json +4 -4
package/dist/project/load.js
CHANGED
|
@@ -2,12 +2,11 @@
|
|
|
2
2
|
// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors
|
|
3
3
|
// SPDX-License-Identifier: GPL-3.0
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.parseStellarProjectManifest =
|
|
5
|
+
exports.parseStellarProjectManifest = parseStellarProjectManifest;
|
|
6
6
|
const versioned_1 = require("./versioned");
|
|
7
7
|
function parseStellarProjectManifest(raw) {
|
|
8
8
|
const projectManifest = new versioned_1.StellarProjectManifestVersioned(raw);
|
|
9
9
|
projectManifest.validate();
|
|
10
10
|
return projectManifest;
|
|
11
11
|
}
|
|
12
|
-
exports.parseStellarProjectManifest = parseStellarProjectManifest;
|
|
13
12
|
//# sourceMappingURL=load.js.map
|
package/dist/project/load.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/project/load.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC
|
|
1
|
+
{"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/project/load.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;AAInC,kEAIC;AAND,2CAAsF;AAEtF,SAAgB,2BAA2B,CAAC,GAAY;IACtD,MAAM,eAAe,GAAG,IAAI,2CAA+B,CAAC,GAA+B,CAAC,CAAC;IAC7F,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC3B,OAAO,eAAe,CAAC;AACzB,CAAC","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {StellarProjectManifestVersioned, VersionedProjectManifest} from './versioned';\n\nexport function parseStellarProjectManifest(raw: unknown): StellarProjectManifestVersioned {\n const projectManifest = new StellarProjectManifestVersioned(raw as VersionedProjectManifest);\n projectManifest.validate();\n return projectManifest;\n}\n"]}
|
package/dist/project/models.js
CHANGED
|
@@ -21,6 +21,7 @@ class BlockFilter {
|
|
|
21
21
|
modulo;
|
|
22
22
|
timestamp;
|
|
23
23
|
}
|
|
24
|
+
exports.BlockFilter = BlockFilter;
|
|
24
25
|
__decorate([
|
|
25
26
|
(0, class_validator_1.IsOptional)(),
|
|
26
27
|
(0, class_validator_1.IsInt)(),
|
|
@@ -31,20 +32,20 @@ __decorate([
|
|
|
31
32
|
(0, class_validator_1.IsString)(),
|
|
32
33
|
__metadata("design:type", String)
|
|
33
34
|
], BlockFilter.prototype, "timestamp", void 0);
|
|
34
|
-
exports.BlockFilter = BlockFilter;
|
|
35
35
|
class TransactionFilter {
|
|
36
36
|
account;
|
|
37
37
|
}
|
|
38
|
+
exports.TransactionFilter = TransactionFilter;
|
|
38
39
|
__decorate([
|
|
39
40
|
(0, class_validator_1.IsOptional)(),
|
|
40
41
|
(0, class_validator_1.IsString)(),
|
|
41
42
|
__metadata("design:type", String)
|
|
42
43
|
], TransactionFilter.prototype, "account", void 0);
|
|
43
|
-
exports.TransactionFilter = TransactionFilter;
|
|
44
44
|
class OperationFilter {
|
|
45
45
|
type;
|
|
46
46
|
sourceAccount;
|
|
47
47
|
}
|
|
48
|
+
exports.OperationFilter = OperationFilter;
|
|
48
49
|
__decorate([
|
|
49
50
|
(0, class_validator_1.IsOptional)(),
|
|
50
51
|
__metadata("design:type", String)
|
|
@@ -54,11 +55,11 @@ __decorate([
|
|
|
54
55
|
(0, class_validator_1.IsString)(),
|
|
55
56
|
__metadata("design:type", String)
|
|
56
57
|
], OperationFilter.prototype, "sourceAccount", void 0);
|
|
57
|
-
exports.OperationFilter = OperationFilter;
|
|
58
58
|
class EffectFilter {
|
|
59
59
|
type;
|
|
60
60
|
account;
|
|
61
61
|
}
|
|
62
|
+
exports.EffectFilter = EffectFilter;
|
|
62
63
|
__decorate([
|
|
63
64
|
(0, class_validator_1.IsOptional)(),
|
|
64
65
|
(0, class_validator_1.IsString)(),
|
|
@@ -69,12 +70,12 @@ __decorate([
|
|
|
69
70
|
(0, class_validator_1.IsString)(),
|
|
70
71
|
__metadata("design:type", String)
|
|
71
72
|
], EffectFilter.prototype, "account", void 0);
|
|
72
|
-
exports.EffectFilter = EffectFilter;
|
|
73
73
|
class BlockHandler {
|
|
74
74
|
filter;
|
|
75
75
|
kind;
|
|
76
76
|
handler;
|
|
77
77
|
}
|
|
78
|
+
exports.BlockHandler = BlockHandler;
|
|
78
79
|
__decorate([
|
|
79
80
|
(0, class_validator_1.IsObject)(),
|
|
80
81
|
(0, class_validator_1.IsOptional)(),
|
|
@@ -89,12 +90,12 @@ __decorate([
|
|
|
89
90
|
(0, class_validator_1.IsString)(),
|
|
90
91
|
__metadata("design:type", String)
|
|
91
92
|
], BlockHandler.prototype, "handler", void 0);
|
|
92
|
-
exports.BlockHandler = BlockHandler;
|
|
93
93
|
class TransactionHandler {
|
|
94
94
|
filter;
|
|
95
95
|
kind;
|
|
96
96
|
handler;
|
|
97
97
|
}
|
|
98
|
+
exports.TransactionHandler = TransactionHandler;
|
|
98
99
|
__decorate([
|
|
99
100
|
(0, common_1.forbidNonWhitelisted)({ account: '' }),
|
|
100
101
|
(0, class_validator_1.IsObject)(),
|
|
@@ -110,12 +111,12 @@ __decorate([
|
|
|
110
111
|
(0, class_validator_1.IsString)(),
|
|
111
112
|
__metadata("design:type", String)
|
|
112
113
|
], TransactionHandler.prototype, "handler", void 0);
|
|
113
|
-
exports.TransactionHandler = TransactionHandler;
|
|
114
114
|
class SorobanTransactionHandler {
|
|
115
115
|
filter;
|
|
116
116
|
kind;
|
|
117
117
|
handler;
|
|
118
118
|
}
|
|
119
|
+
exports.SorobanTransactionHandler = SorobanTransactionHandler;
|
|
119
120
|
__decorate([
|
|
120
121
|
(0, common_1.forbidNonWhitelisted)({ account: '' }),
|
|
121
122
|
(0, class_validator_1.IsObject)(),
|
|
@@ -131,12 +132,12 @@ __decorate([
|
|
|
131
132
|
(0, class_validator_1.IsString)(),
|
|
132
133
|
__metadata("design:type", String)
|
|
133
134
|
], SorobanTransactionHandler.prototype, "handler", void 0);
|
|
134
|
-
exports.SorobanTransactionHandler = SorobanTransactionHandler;
|
|
135
135
|
class OperationHandler {
|
|
136
136
|
filter;
|
|
137
137
|
kind;
|
|
138
138
|
handler;
|
|
139
139
|
}
|
|
140
|
+
exports.OperationHandler = OperationHandler;
|
|
140
141
|
__decorate([
|
|
141
142
|
(0, common_1.forbidNonWhitelisted)({ type: '', sourceAccount: '' }),
|
|
142
143
|
(0, class_validator_1.IsObject)(),
|
|
@@ -152,12 +153,12 @@ __decorate([
|
|
|
152
153
|
(0, class_validator_1.IsString)(),
|
|
153
154
|
__metadata("design:type", String)
|
|
154
155
|
], OperationHandler.prototype, "handler", void 0);
|
|
155
|
-
exports.OperationHandler = OperationHandler;
|
|
156
156
|
class EffectHandler {
|
|
157
157
|
filter;
|
|
158
158
|
kind;
|
|
159
159
|
handler;
|
|
160
160
|
}
|
|
161
|
+
exports.EffectHandler = EffectHandler;
|
|
161
162
|
__decorate([
|
|
162
163
|
(0, common_1.forbidNonWhitelisted)({ type: '', account: '' }),
|
|
163
164
|
(0, class_validator_1.IsObject)(),
|
|
@@ -173,11 +174,11 @@ __decorate([
|
|
|
173
174
|
(0, class_validator_1.IsString)(),
|
|
174
175
|
__metadata("design:type", String)
|
|
175
176
|
], EffectHandler.prototype, "handler", void 0);
|
|
176
|
-
exports.EffectHandler = EffectHandler;
|
|
177
177
|
class EventFilter {
|
|
178
178
|
contractId;
|
|
179
179
|
topics;
|
|
180
180
|
}
|
|
181
|
+
exports.EventFilter = EventFilter;
|
|
181
182
|
__decorate([
|
|
182
183
|
(0, class_validator_1.IsOptional)(),
|
|
183
184
|
(0, class_validator_1.IsString)(),
|
|
@@ -188,12 +189,12 @@ __decorate([
|
|
|
188
189
|
(0, class_validator_1.IsArray)(),
|
|
189
190
|
__metadata("design:type", Array)
|
|
190
191
|
], EventFilter.prototype, "topics", void 0);
|
|
191
|
-
exports.EventFilter = EventFilter;
|
|
192
192
|
class EventHandler {
|
|
193
193
|
filter;
|
|
194
194
|
kind;
|
|
195
195
|
handler;
|
|
196
196
|
}
|
|
197
|
+
exports.EventHandler = EventHandler;
|
|
197
198
|
__decorate([
|
|
198
199
|
(0, common_1.forbidNonWhitelisted)({ topics: '', contractId: '' }),
|
|
199
200
|
(0, class_validator_1.IsOptional)(),
|
|
@@ -209,12 +210,12 @@ __decorate([
|
|
|
209
210
|
(0, class_validator_1.IsString)(),
|
|
210
211
|
__metadata("design:type", String)
|
|
211
212
|
], EventHandler.prototype, "handler", void 0);
|
|
212
|
-
exports.EventHandler = EventHandler;
|
|
213
213
|
class CustomHandler {
|
|
214
214
|
kind;
|
|
215
215
|
handler;
|
|
216
216
|
filter;
|
|
217
217
|
}
|
|
218
|
+
exports.CustomHandler = CustomHandler;
|
|
218
219
|
__decorate([
|
|
219
220
|
(0, class_validator_1.IsString)(),
|
|
220
221
|
__metadata("design:type", String)
|
|
@@ -228,11 +229,11 @@ __decorate([
|
|
|
228
229
|
(0, class_validator_1.IsOptional)(),
|
|
229
230
|
__metadata("design:type", Object)
|
|
230
231
|
], CustomHandler.prototype, "filter", void 0);
|
|
231
|
-
exports.CustomHandler = CustomHandler;
|
|
232
232
|
class StellarMapping {
|
|
233
233
|
handlers;
|
|
234
234
|
file;
|
|
235
235
|
}
|
|
236
|
+
exports.StellarMapping = StellarMapping;
|
|
236
237
|
__decorate([
|
|
237
238
|
(0, class_transformer_1.Transform)((params) => {
|
|
238
239
|
const handlers = params.value;
|
|
@@ -263,11 +264,11 @@ __decorate([
|
|
|
263
264
|
(0, class_validator_1.IsString)(),
|
|
264
265
|
__metadata("design:type", String)
|
|
265
266
|
], StellarMapping.prototype, "file", void 0);
|
|
266
|
-
exports.StellarMapping = StellarMapping;
|
|
267
267
|
class CustomMapping {
|
|
268
268
|
handlers;
|
|
269
269
|
file;
|
|
270
270
|
}
|
|
271
|
+
exports.CustomMapping = CustomMapping;
|
|
271
272
|
__decorate([
|
|
272
273
|
(0, class_validator_1.IsArray)(),
|
|
273
274
|
(0, class_transformer_1.Type)(() => CustomHandler),
|
|
@@ -278,11 +279,11 @@ __decorate([
|
|
|
278
279
|
(0, class_validator_1.IsString)(),
|
|
279
280
|
__metadata("design:type", String)
|
|
280
281
|
], CustomMapping.prototype, "file", void 0);
|
|
281
|
-
exports.CustomMapping = CustomMapping;
|
|
282
282
|
class StellarProcessorOptions {
|
|
283
283
|
abi;
|
|
284
284
|
address;
|
|
285
285
|
}
|
|
286
|
+
exports.StellarProcessorOptions = StellarProcessorOptions;
|
|
286
287
|
__decorate([
|
|
287
288
|
(0, class_validator_1.IsOptional)(),
|
|
288
289
|
(0, class_validator_1.IsString)(),
|
|
@@ -293,13 +294,13 @@ __decorate([
|
|
|
293
294
|
(0, class_validator_1.IsString)(),
|
|
294
295
|
__metadata("design:type", String)
|
|
295
296
|
], StellarProcessorOptions.prototype, "address", void 0);
|
|
296
|
-
exports.StellarProcessorOptions = StellarProcessorOptions;
|
|
297
297
|
class RuntimeDataSourceBase extends common_1.BaseDataSource {
|
|
298
298
|
kind;
|
|
299
299
|
mapping;
|
|
300
300
|
assets;
|
|
301
301
|
options;
|
|
302
302
|
}
|
|
303
|
+
exports.RuntimeDataSourceBase = RuntimeDataSourceBase;
|
|
303
304
|
__decorate([
|
|
304
305
|
(0, class_validator_1.IsEnum)(types_stellar_1.StellarDatasourceKind, {
|
|
305
306
|
groups: [types_stellar_1.StellarDatasourceKind.Runtime],
|
|
@@ -321,15 +322,14 @@ __decorate([
|
|
|
321
322
|
(0, class_transformer_1.Type)(() => StellarProcessorOptions),
|
|
322
323
|
__metadata("design:type", StellarProcessorOptions)
|
|
323
324
|
], RuntimeDataSourceBase.prototype, "options", void 0);
|
|
324
|
-
exports.RuntimeDataSourceBase = RuntimeDataSourceBase;
|
|
325
325
|
class FileReferenceImpl {
|
|
326
326
|
file;
|
|
327
327
|
}
|
|
328
|
+
exports.FileReferenceImpl = FileReferenceImpl;
|
|
328
329
|
__decorate([
|
|
329
330
|
(0, class_validator_1.IsString)(),
|
|
330
331
|
__metadata("design:type", String)
|
|
331
332
|
], FileReferenceImpl.prototype, "file", void 0);
|
|
332
|
-
exports.FileReferenceImpl = FileReferenceImpl;
|
|
333
333
|
class CustomDataSourceBase extends common_1.BaseDataSource {
|
|
334
334
|
kind;
|
|
335
335
|
mapping;
|
|
@@ -338,6 +338,7 @@ class CustomDataSourceBase extends common_1.BaseDataSource {
|
|
|
338
338
|
processor;
|
|
339
339
|
options;
|
|
340
340
|
}
|
|
341
|
+
exports.CustomDataSourceBase = CustomDataSourceBase;
|
|
341
342
|
__decorate([
|
|
342
343
|
(0, class_validator_1.IsString)(),
|
|
343
344
|
__metadata("design:type", String)
|
|
@@ -367,5 +368,4 @@ __decorate([
|
|
|
367
368
|
(0, class_validator_1.ValidateNested)(),
|
|
368
369
|
__metadata("design:type", StellarProcessorOptions)
|
|
369
370
|
], CustomDataSourceBase.prototype, "options", void 0);
|
|
370
|
-
exports.CustomDataSourceBase = CustomDataSourceBase;
|
|
371
371
|
//# sourceMappingURL=models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/project/models.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {Horizon} from '@stellar/stellar-sdk';\nimport {BaseDataSource, forbidNonWhitelisted, ProcessorImpl} from '@subql/common';\nimport {Processor, FileReference} from '@subql/types-core';\nimport {\n StellarHandlerKind,\n StellarDatasourceKind,\n SorobanEventFilter,\n SubqlCustomHandler,\n SubqlMapping,\n SubqlHandler,\n SubqlRuntimeHandler,\n SubqlRuntimeDatasource,\n SubqlCustomDatasource,\n StellarBlockFilter,\n StellarTransactionFilter,\n StellarOperationFilter,\n StellarEffectFilter,\n SubqlBlockHandler,\n SubqlTransactionHandler,\n SubqlOperationHandler,\n SubqlEffectHandler,\n SubqlEventHandler,\n SubqlSorobanTransactionHandler,\n} from '@subql/types-stellar';\nimport {plainToClass, Transform, Type} from 'class-transformer';\nimport {IsArray, IsEnum, IsInt, IsOptional, IsString, IsObject, ValidateNested} from 'class-validator';\nimport {SubqlStellarProcessorOptions} from './types';\n\nexport class BlockFilter implements StellarBlockFilter {\n @IsOptional()\n @IsInt()\n modulo?: number;\n @IsOptional()\n @IsString()\n timestamp?: string;\n}\n\nexport class TransactionFilter implements StellarTransactionFilter {\n @IsOptional()\n @IsString()\n account?: string;\n}\n\nexport class OperationFilter implements StellarOperationFilter {\n @IsOptional()\n type!: Horizon.HorizonApi.OperationResponseType;\n\n @IsOptional()\n @IsString()\n sourceAccount?: string;\n}\n\nexport class EffectFilter implements StellarEffectFilter {\n @IsOptional()\n @IsString()\n type?: string;\n\n @IsOptional()\n @IsString()\n account?: string;\n}\n\nexport class BlockHandler implements SubqlBlockHandler {\n @IsObject()\n @IsOptional()\n @Type(() => BlockFilter)\n filter?: BlockFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Block]})\n kind!: StellarHandlerKind.Block;\n @IsString()\n handler!: string;\n}\n\nexport class TransactionHandler implements SubqlTransactionHandler {\n @forbidNonWhitelisted({account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => TransactionFilter)\n filter?: TransactionFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Transaction]})\n kind!: StellarHandlerKind.Transaction;\n @IsString()\n handler!: string;\n}\n\nexport class SorobanTransactionHandler implements SubqlSorobanTransactionHandler {\n @forbidNonWhitelisted({account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => TransactionFilter)\n filter?: TransactionFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.SorobanTransaction]})\n kind!: StellarHandlerKind.SorobanTransaction;\n @IsString()\n handler!: string;\n}\n\nexport class OperationHandler implements SubqlOperationHandler {\n @forbidNonWhitelisted({type: '', sourceAccount: ''})\n @IsObject()\n @IsOptional()\n @Type(() => OperationFilter)\n filter?: OperationFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Operation]})\n kind!: StellarHandlerKind.Operation;\n @IsString()\n handler!: string;\n}\n\nexport class EffectHandler implements SubqlEffectHandler {\n @forbidNonWhitelisted({type: '', account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => EffectFilter)\n filter?: EffectFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Effects]})\n kind!: StellarHandlerKind.Effects;\n @IsString()\n handler!: string;\n}\n\nexport class EventFilter implements SorobanEventFilter {\n @IsOptional()\n @IsString()\n contractId?: string;\n @IsOptional()\n @IsArray()\n topics?: string[];\n}\n\nexport class EventHandler implements SubqlEventHandler {\n @forbidNonWhitelisted({topics: '', contractId: ''})\n @IsOptional()\n @ValidateNested()\n @Type(() => EventFilter)\n filter?: SorobanEventFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Event]})\n kind!: StellarHandlerKind.Event;\n @IsString()\n handler!: string;\n}\n\nexport class CustomHandler implements SubqlCustomHandler {\n @IsString()\n kind!: string;\n @IsString()\n handler!: string;\n @IsObject()\n @IsOptional()\n filter?: Record<string, unknown>;\n}\n\nexport class StellarMapping implements SubqlMapping {\n @Transform((params) => {\n const handlers: SubqlHandler[] = params.value;\n return handlers.map((handler) => {\n switch (handler.kind) {\n case StellarHandlerKind.Block:\n return plainToClass(BlockHandler, handler);\n case StellarHandlerKind.Transaction:\n return plainToClass(TransactionHandler, handler);\n case StellarHandlerKind.SorobanTransaction:\n return plainToClass(SorobanTransactionHandler, handler);\n case StellarHandlerKind.Operation:\n return plainToClass(OperationHandler, handler);\n case StellarHandlerKind.Effects:\n return plainToClass(EffectHandler, handler);\n case StellarHandlerKind.Event:\n return plainToClass(EventHandler, handler);\n default:\n throw new Error(`handler ${(handler as any).kind} not supported`);\n }\n });\n })\n @IsArray()\n @ValidateNested()\n handlers!: SubqlHandler[];\n @IsString()\n file!: string;\n}\n\nexport class CustomMapping implements SubqlMapping<SubqlCustomHandler> {\n @IsArray()\n @Type(() => CustomHandler)\n @ValidateNested()\n handlers!: CustomHandler[];\n @IsString()\n file!: string;\n}\n\nexport class StellarProcessorOptions implements SubqlStellarProcessorOptions {\n @IsOptional()\n @IsString()\n abi?: string;\n @IsOptional()\n @IsString()\n address?: string;\n}\n\nexport class RuntimeDataSourceBase<M extends SubqlMapping<SubqlRuntimeHandler>>\n extends BaseDataSource\n implements SubqlRuntimeDatasource<M>\n{\n @IsEnum(StellarDatasourceKind, {\n groups: [StellarDatasourceKind.Runtime],\n })\n kind!: StellarDatasourceKind.Runtime;\n @Type(() => StellarMapping)\n @ValidateNested()\n mapping!: M;\n @IsOptional()\n assets?: Map<string, FileReference>;\n @IsOptional()\n @ValidateNested()\n @Type(() => StellarProcessorOptions)\n options?: StellarProcessorOptions;\n}\n\nexport class FileReferenceImpl implements FileReference {\n @IsString()\n file!: string;\n}\n\nexport class CustomDataSourceBase<K extends string, M extends SubqlMapping = SubqlMapping<SubqlCustomHandler>, O = any>\n extends BaseDataSource\n implements SubqlCustomDatasource<K, M, O>\n{\n @IsString()\n kind!: K;\n @Type(() => CustomMapping)\n @ValidateNested()\n mapping!: M;\n @IsOptional()\n @IsInt()\n startBlock?: number = undefined;\n @Type(() => FileReferenceImpl)\n @ValidateNested({each: true})\n assets!: Map<string, FileReference>;\n @Type(() => ProcessorImpl)\n @IsObject()\n processor!: Processor<O>;\n @IsOptional()\n @ValidateNested()\n options?: StellarProcessorOptions;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/project/models.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;AAEnC,sDAA6C;AAC7C,0CAAkF;AAElF,wDAoB8B;AAC9B,yDAAgE;AAChE,qDAAuG;AAGvG,MAAa,WAAW;IAGtB,MAAM,CAAU;IAGhB,SAAS,CAAU;CACpB;AAPD,kCAOC;AAJC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;2CACQ;AAGhB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;8CACQ;AAGrB,MAAa,iBAAiB;IAG5B,OAAO,CAAU;CAClB;AAJD,8CAIC;AADC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kDACM;AAGnB,MAAa,eAAe;IAE1B,IAAI,CAA4C;IAIhD,aAAa,CAAU;CACxB;AAPD,0CAOC;AALC;IADC,IAAA,4BAAU,GAAE;;6CACmC;AAIhD;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;sDACY;AAGzB,MAAa,YAAY;IAGvB,IAAI,CAAU;IAId,OAAO,CAAU;CAClB;AARD,oCAQC;AALC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;0CACG;AAId;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6CACM;AAGnB,MAAa,YAAY;IAIvB,MAAM,CAAe;IAErB,IAAI,CAA4B;IAEhC,OAAO,CAAU;CAClB;AATD,oCASC;AALC;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,WAAW,CAAC;8BACf,WAAW;4CAAC;AAErB;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,KAAK,CAAC,EAAC,CAAC;;0CACjC;AAEhC;IADC,IAAA,0BAAQ,GAAE;;6CACM;AAGnB,MAAa,kBAAkB;IAK7B,MAAM,CAAqB;IAE3B,IAAI,CAAkC;IAEtC,OAAO,CAAU;CAClB;AAVD,gDAUC;AALC;IAJC,IAAA,6BAAoB,EAAC,EAAC,OAAO,EAAE,EAAE,EAAC,CAAC;IACnC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC;8BACrB,iBAAiB;kDAAC;AAE3B;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,WAAW,CAAC,EAAC,CAAC;;gDACjC;AAEtC;IADC,IAAA,0BAAQ,GAAE;;mDACM;AAGnB,MAAa,yBAAyB;IAKpC,MAAM,CAAqB;IAE3B,IAAI,CAAyC;IAE7C,OAAO,CAAU;CAClB;AAVD,8DAUC;AALC;IAJC,IAAA,6BAAoB,EAAC,EAAC,OAAO,EAAE,EAAE,EAAC,CAAC;IACnC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC;8BACrB,iBAAiB;yDAAC;AAE3B;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,kBAAkB,CAAC,EAAC,CAAC;;uDACjC;AAE7C;IADC,IAAA,0BAAQ,GAAE;;0DACM;AAGnB,MAAa,gBAAgB;IAK3B,MAAM,CAAmB;IAEzB,IAAI,CAAgC;IAEpC,OAAO,CAAU;CAClB;AAVD,4CAUC;AALC;IAJC,IAAA,6BAAoB,EAAC,EAAC,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAC,CAAC;IACnD,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,eAAe,CAAC;8BACnB,eAAe;gDAAC;AAEzB;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,SAAS,CAAC,EAAC,CAAC;;8CACjC;AAEpC;IADC,IAAA,0BAAQ,GAAE;;iDACM;AAGnB,MAAa,aAAa;IAKxB,MAAM,CAAgB;IAEtB,IAAI,CAA8B;IAElC,OAAO,CAAU;CAClB;AAVD,sCAUC;AALC;IAJC,IAAA,6BAAoB,EAAC,EAAC,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAC,CAAC;IAC7C,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,YAAY,CAAC;8BAChB,YAAY;6CAAC;AAEtB;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,OAAO,CAAC,EAAC,CAAC;;2CACjC;AAElC;IADC,IAAA,0BAAQ,GAAE;;8CACM;AAGnB,MAAa,WAAW;IAGtB,UAAU,CAAU;IAGpB,MAAM,CAAY;CACnB;AAPD,kCAOC;AAJC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+CACS;AAGpB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;2CACQ;AAGpB,MAAa,YAAY;IAKvB,MAAM,CAAsB;IAE5B,IAAI,CAA4B;IAEhC,OAAO,CAAU;CAClB;AAVD,oCAUC;AALC;IAJC,IAAA,6BAAoB,EAAC,EAAC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAC,CAAC;IAClD,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,WAAW,CAAC;;4CACI;AAE5B;IADC,IAAA,wBAAM,EAAC,kCAAkB,EAAE,EAAC,MAAM,EAAE,CAAC,kCAAkB,CAAC,KAAK,CAAC,EAAC,CAAC;;0CACjC;AAEhC;IADC,IAAA,0BAAQ,GAAE;;6CACM;AAGnB,MAAa,aAAa;IAExB,IAAI,CAAU;IAEd,OAAO,CAAU;IAGjB,MAAM,CAA2B;CAClC;AARD,sCAQC;AANC;IADC,IAAA,0BAAQ,GAAE;;2CACG;AAEd;IADC,IAAA,0BAAQ,GAAE;;8CACM;AAGjB;IAFC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;6CACoB;AAGnC,MAAa,cAAc;IAwBzB,QAAQ,CAAkB;IAE1B,IAAI,CAAU;CACf;AA3BD,wCA2BC;AAHC;IAvBC,IAAA,6BAAS,EAAC,CAAC,MAAM,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAmB,MAAM,CAAC,KAAK,CAAC;QAC9C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,kCAAkB,CAAC,KAAK;oBAC3B,OAAO,IAAA,gCAAY,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAC7C,KAAK,kCAAkB,CAAC,WAAW;oBACjC,OAAO,IAAA,gCAAY,EAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;gBACnD,KAAK,kCAAkB,CAAC,kBAAkB;oBACxC,OAAO,IAAA,gCAAY,EAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;gBAC1D,KAAK,kCAAkB,CAAC,SAAS;oBAC/B,OAAO,IAAA,gCAAY,EAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;gBACjD,KAAK,kCAAkB,CAAC,OAAO;oBAC7B,OAAO,IAAA,gCAAY,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBAC9C,KAAK,kCAAkB,CAAC,KAAK;oBAC3B,OAAO,IAAA,gCAAY,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAC7C;oBACE,MAAM,IAAI,KAAK,CAAC,WAAY,OAAe,CAAC,IAAI,gBAAgB,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACD,IAAA,yBAAO,GAAE;IACT,IAAA,gCAAc,GAAE;;gDACS;AAE1B;IADC,IAAA,0BAAQ,GAAE;;4CACG;AAGhB,MAAa,aAAa;IAIxB,QAAQ,CAAmB;IAE3B,IAAI,CAAU;CACf;AAPD,sCAOC;AAHC;IAHC,IAAA,yBAAO,GAAE;IACT,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC;IACzB,IAAA,gCAAc,GAAE;;+CACU;AAE3B;IADC,IAAA,0BAAQ,GAAE;;2CACG;AAGhB,MAAa,uBAAuB;IAGlC,GAAG,CAAU;IAGb,OAAO,CAAU;CAClB;AAPD,0DAOC;AAJC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oDACE;AAGb;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wDACM;AAGnB,MAAa,qBACX,SAAQ,uBAAc;IAMtB,IAAI,CAAiC;IAGrC,OAAO,CAAK;IAEZ,MAAM,CAA8B;IAIpC,OAAO,CAA2B;CACnC;AAjBD,sDAiBC;AAVC;IAHC,IAAA,wBAAM,EAAC,qCAAqB,EAAE;QAC7B,MAAM,EAAE,CAAC,qCAAqB,CAAC,OAAO,CAAC;KACxC,CAAC;;mDACmC;AAGrC;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,cAAc,CAAC;IAC1B,IAAA,gCAAc,GAAE;;sDACL;AAEZ;IADC,IAAA,4BAAU,GAAE;8BACJ,GAAG;qDAAwB;AAIpC;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;IAChB,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;8BAC1B,uBAAuB;sDAAC;AAGpC,MAAa,iBAAiB;IAE5B,IAAI,CAAU;CACf;AAHD,8CAGC;AADC;IADC,IAAA,0BAAQ,GAAE;;+CACG;AAGhB,MAAa,oBACX,SAAQ,uBAAc;IAItB,IAAI,CAAK;IAGT,OAAO,CAAK;IAGZ,UAAU,GAAY,SAAS,CAAC;IAGhC,MAAM,CAA8B;IAGpC,SAAS,CAAgB;IAGzB,OAAO,CAA2B;CACnC;AArBD,oDAqBC;AAhBC;IADC,IAAA,0BAAQ,GAAE;;kDACF;AAGT;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,aAAa,CAAC;IACzB,IAAA,gCAAc,GAAE;;qDACL;AAGZ;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,uBAAK,GAAE;;wDACwB;AAGhC;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC;IAC7B,IAAA,gCAAc,EAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC;8BACpB,GAAG;oDAAwB;AAGpC;IAFC,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,sBAAa,CAAC;IACzB,IAAA,0BAAQ,GAAE;;uDACc;AAGzB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,gCAAc,GAAE;8BACP,uBAAuB;qDAAC","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {Horizon} from '@stellar/stellar-sdk';\nimport {BaseDataSource, forbidNonWhitelisted, ProcessorImpl} from '@subql/common';\nimport {Processor, FileReference} from '@subql/types-core';\nimport {\n StellarHandlerKind,\n StellarDatasourceKind,\n SorobanEventFilter,\n SubqlCustomHandler,\n SubqlMapping,\n SubqlHandler,\n SubqlRuntimeHandler,\n SubqlRuntimeDatasource,\n SubqlCustomDatasource,\n StellarBlockFilter,\n StellarTransactionFilter,\n StellarOperationFilter,\n StellarEffectFilter,\n SubqlBlockHandler,\n SubqlTransactionHandler,\n SubqlOperationHandler,\n SubqlEffectHandler,\n SubqlEventHandler,\n SubqlSorobanTransactionHandler,\n} from '@subql/types-stellar';\nimport {plainToClass, Transform, Type} from 'class-transformer';\nimport {IsArray, IsEnum, IsInt, IsOptional, IsString, IsObject, ValidateNested} from 'class-validator';\nimport {SubqlStellarProcessorOptions} from './types';\n\nexport class BlockFilter implements StellarBlockFilter {\n @IsOptional()\n @IsInt()\n modulo?: number;\n @IsOptional()\n @IsString()\n timestamp?: string;\n}\n\nexport class TransactionFilter implements StellarTransactionFilter {\n @IsOptional()\n @IsString()\n account?: string;\n}\n\nexport class OperationFilter implements StellarOperationFilter {\n @IsOptional()\n type!: Horizon.HorizonApi.OperationResponseType;\n\n @IsOptional()\n @IsString()\n sourceAccount?: string;\n}\n\nexport class EffectFilter implements StellarEffectFilter {\n @IsOptional()\n @IsString()\n type?: string;\n\n @IsOptional()\n @IsString()\n account?: string;\n}\n\nexport class BlockHandler implements SubqlBlockHandler {\n @IsObject()\n @IsOptional()\n @Type(() => BlockFilter)\n filter?: BlockFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Block]})\n kind!: StellarHandlerKind.Block;\n @IsString()\n handler!: string;\n}\n\nexport class TransactionHandler implements SubqlTransactionHandler {\n @forbidNonWhitelisted({account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => TransactionFilter)\n filter?: TransactionFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Transaction]})\n kind!: StellarHandlerKind.Transaction;\n @IsString()\n handler!: string;\n}\n\nexport class SorobanTransactionHandler implements SubqlSorobanTransactionHandler {\n @forbidNonWhitelisted({account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => TransactionFilter)\n filter?: TransactionFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.SorobanTransaction]})\n kind!: StellarHandlerKind.SorobanTransaction;\n @IsString()\n handler!: string;\n}\n\nexport class OperationHandler implements SubqlOperationHandler {\n @forbidNonWhitelisted({type: '', sourceAccount: ''})\n @IsObject()\n @IsOptional()\n @Type(() => OperationFilter)\n filter?: OperationFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Operation]})\n kind!: StellarHandlerKind.Operation;\n @IsString()\n handler!: string;\n}\n\nexport class EffectHandler implements SubqlEffectHandler {\n @forbidNonWhitelisted({type: '', account: ''})\n @IsObject()\n @IsOptional()\n @Type(() => EffectFilter)\n filter?: EffectFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Effects]})\n kind!: StellarHandlerKind.Effects;\n @IsString()\n handler!: string;\n}\n\nexport class EventFilter implements SorobanEventFilter {\n @IsOptional()\n @IsString()\n contractId?: string;\n @IsOptional()\n @IsArray()\n topics?: string[];\n}\n\nexport class EventHandler implements SubqlEventHandler {\n @forbidNonWhitelisted({topics: '', contractId: ''})\n @IsOptional()\n @ValidateNested()\n @Type(() => EventFilter)\n filter?: SorobanEventFilter;\n @IsEnum(StellarHandlerKind, {groups: [StellarHandlerKind.Event]})\n kind!: StellarHandlerKind.Event;\n @IsString()\n handler!: string;\n}\n\nexport class CustomHandler implements SubqlCustomHandler {\n @IsString()\n kind!: string;\n @IsString()\n handler!: string;\n @IsObject()\n @IsOptional()\n filter?: Record<string, unknown>;\n}\n\nexport class StellarMapping implements SubqlMapping {\n @Transform((params) => {\n const handlers: SubqlHandler[] = params.value;\n return handlers.map((handler) => {\n switch (handler.kind) {\n case StellarHandlerKind.Block:\n return plainToClass(BlockHandler, handler);\n case StellarHandlerKind.Transaction:\n return plainToClass(TransactionHandler, handler);\n case StellarHandlerKind.SorobanTransaction:\n return plainToClass(SorobanTransactionHandler, handler);\n case StellarHandlerKind.Operation:\n return plainToClass(OperationHandler, handler);\n case StellarHandlerKind.Effects:\n return plainToClass(EffectHandler, handler);\n case StellarHandlerKind.Event:\n return plainToClass(EventHandler, handler);\n default:\n throw new Error(`handler ${(handler as any).kind} not supported`);\n }\n });\n })\n @IsArray()\n @ValidateNested()\n handlers!: SubqlHandler[];\n @IsString()\n file!: string;\n}\n\nexport class CustomMapping implements SubqlMapping<SubqlCustomHandler> {\n @IsArray()\n @Type(() => CustomHandler)\n @ValidateNested()\n handlers!: CustomHandler[];\n @IsString()\n file!: string;\n}\n\nexport class StellarProcessorOptions implements SubqlStellarProcessorOptions {\n @IsOptional()\n @IsString()\n abi?: string;\n @IsOptional()\n @IsString()\n address?: string;\n}\n\nexport class RuntimeDataSourceBase<M extends SubqlMapping<SubqlRuntimeHandler>>\n extends BaseDataSource\n implements SubqlRuntimeDatasource<M>\n{\n @IsEnum(StellarDatasourceKind, {\n groups: [StellarDatasourceKind.Runtime],\n })\n kind!: StellarDatasourceKind.Runtime;\n @Type(() => StellarMapping)\n @ValidateNested()\n mapping!: M;\n @IsOptional()\n assets?: Map<string, FileReference>;\n @IsOptional()\n @ValidateNested()\n @Type(() => StellarProcessorOptions)\n options?: StellarProcessorOptions;\n}\n\nexport class FileReferenceImpl implements FileReference {\n @IsString()\n file!: string;\n}\n\nexport class CustomDataSourceBase<K extends string, M extends SubqlMapping = SubqlMapping<SubqlCustomHandler>, O = any>\n extends BaseDataSource\n implements SubqlCustomDatasource<K, M, O>\n{\n @IsString()\n kind!: K;\n @Type(() => CustomMapping)\n @ValidateNested()\n mapping!: M;\n @IsOptional()\n @IsInt()\n startBlock?: number = undefined;\n @Type(() => FileReferenceImpl)\n @ValidateNested({each: true})\n assets!: Map<string, FileReference>;\n @Type(() => ProcessorImpl)\n @IsObject()\n processor!: Processor<O>;\n @IsOptional()\n @ValidateNested()\n options?: StellarProcessorOptions;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.spec.js","sourceRoot":"","sources":["../../src/project/project.spec.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;AAEnC,4CAAoB;AACpB,gDAAwB;AACxB,0CAAuE;AACvE,qDAA6C;AAC7C,wDAA4G;AAC5G,2CAAsF;AAEtF,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAEvD,SAAS,0BAA0B,CAAC,IAAY;IAC9C,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;QAC3D,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACrD,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YAC/B,YAAY,GAAG,YAAY,CAAC;SAC7B;aAAM,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YACtC,YAAY,GAAG,YAAY,CAAC;SAC7B;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,6CAA6C,IAAI,EAAE,CAAC,CAAC;SACtE;KACF;IAED,MAAM,GAAG,GAAG,IAAA,2BAAkB,EAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAG,IAAI,2CAA+B,CAAC,GAA+B,CAAC,CAAC;IAC7F,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC3B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjG,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACvG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;QACzD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,UAAU,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAChH,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC7C,MAAM,UAAU,GAAG,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,4BAA4B,CAAC,CAAC,CAAC,QAAQ;aACzG,UAAU,CAAC;QACd,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,UAAU,GAAG,IAAI,yBAAgB,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,8BAAqB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,6BAAoB,EAAE,CAAC;QAC5C,UAAU,CAAC,WAAW,GAAG,OAAO,CAAC;QACjC,UAAU,CAAC,MAAM,GAAG,IAAI,+BAAsB,EAAE,CAAC;QAEjD,OAAO,CAAC,IAAI,GAAG,qBAAqB,CAAC;QACrC,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC;QAC3B,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC;QAEjC,QAAQ,CAAC,IAAI,GAAG,cAAc,CAAC;QAC/B,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC;QAE7B,UAAU,CAAC,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAEnC,IAAA,8BAAY,EAAC,UAAU,CAAC,MAAM,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAC,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,+BAA+B,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC9G,CAAC,CAAC,CAAC;IAEH,sCAAsC;IACtC,EAAE,CAAC,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACtH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACtH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,sCAAsC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACrH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport fs from 'fs';\nimport path from 'path';\nimport {RunnerQueryBaseModel, loadFromJsonOrYaml} from '@subql/common';\nimport {validateSync} from 'class-validator';\nimport {DeploymentV1_0_0, StellarRunnerNodeImpl, StellarRunnerSpecsImpl} from '../project/versioned/v1_0_0';\nimport {StellarProjectManifestVersioned, VersionedProjectManifest} from './versioned';\n\nconst projectsDir = path.join(__dirname, '../../test');\n\nfunction loadStellarProjectManifest(file: string): StellarProjectManifestVersioned {\n let manifestPath = file;\n if (fs.existsSync(file) && fs.lstatSync(file).isDirectory()) {\n const yamlFilePath = path.join(file, 'project.yaml');\n const jsonFilePath = path.join(file, 'project.json');\n if (fs.existsSync(yamlFilePath)) {\n manifestPath = yamlFilePath;\n } else if (fs.existsSync(jsonFilePath)) {\n manifestPath = jsonFilePath;\n } else {\n throw new Error(`Could not find project manifest under dir ${file}`);\n }\n }\n\n const doc = loadFromJsonOrYaml(manifestPath);\n const projectManifest = new StellarProjectManifestVersioned(doc as VersionedProjectManifest);\n projectManifest.validate();\n return projectManifest;\n}\n\ndescribe('project.yaml', () => {\n it('can validate project.yaml', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_falsy.yaml'))).toThrow();\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_falsy_array.yaml'))).toThrow();\n });\n\n it('can fail validation if version not supported', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_invalid_version.yaml'))).toThrow();\n });\n\n it('can validate a v1.0.0 project.yaml with templates', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'))).not.toThrow();\n });\n\n it('get v1.0.0 deployment mapping filter - transaction', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[0].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account');\n });\n\n it('get v1.0.0 deployment mapping filter - operation', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[1].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account_merge');\n });\n\n it('get v1.0.0 deployment mapping filter - effect', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[2].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account_credited');\n });\n\n it('get v1.0.0 deployment mapping filter - events', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[3].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('COUNTER');\n });\n\n it('can convert genesis hash in v1.0.0 to chainId in deployment', () => {\n const deployment = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml')).asV1_0_0.deployment;\n expect(deployment.network.chainId).not.toBeNull();\n console.log(deployment.network.chainId);\n });\n\n it.skip('can get chainId for deployment', () => {\n const deployment = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_chainId.yaml')).asV1_0_0\n .deployment;\n expect(deployment.network.chainId).toBe('moonbeamChainId');\n });\n\n it('can validate deployment runner versions', () => {\n const deployment = new DeploymentV1_0_0();\n const nodeImp = new StellarRunnerNodeImpl();\n const queryImp = new RunnerQueryBaseModel();\n deployment.specVersion = '1.0.0';\n deployment.runner = new StellarRunnerSpecsImpl();\n\n nodeImp.name = '@subql/node-stellar';\n nodeImp.version = '0.29.1';\n deployment.runner.node = nodeImp;\n\n queryImp.name = '@subql/query';\n queryImp.version = '0.213.1';\n\n deployment.runner.query = queryImp;\n\n validateSync(deployment.runner, {whitelist: true, forbidNonWhitelisted: true});\n });\n\n it('can validate a v1.0.0 project.yaml with unsupported runner node', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_bad_runner.yaml'))).toThrow();\n });\n\n //TODO, pre-release should be excluded\n it.skip('can throw error with unsupported runner version', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_bad_runner_version.yaml'))).toThrow();\n });\n\n it('can validate a v1.0.0 project.yaml runner and datasource mismatches', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_runner_ds_mismatch.yaml'))).toThrow();\n });\n\n it('can fail validation if custom ds missing processor', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_0.2.0_invalid_custom_ds.yaml'))).toThrow();\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"project.spec.js","sourceRoot":"","sources":["../../src/project/project.spec.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport fs from 'fs';\nimport path from 'path';\nimport {RunnerQueryBaseModel, loadFromJsonOrYaml} from '@subql/common';\nimport {validateSync} from 'class-validator';\nimport {DeploymentV1_0_0, StellarRunnerNodeImpl, StellarRunnerSpecsImpl} from '../project/versioned/v1_0_0';\nimport {StellarProjectManifestVersioned, VersionedProjectManifest} from './versioned';\n\nconst projectsDir = path.join(__dirname, '../../test');\n\nfunction loadStellarProjectManifest(file: string): StellarProjectManifestVersioned {\n let manifestPath = file;\n if (fs.existsSync(file) && fs.lstatSync(file).isDirectory()) {\n const yamlFilePath = path.join(file, 'project.yaml');\n const jsonFilePath = path.join(file, 'project.json');\n if (fs.existsSync(yamlFilePath)) {\n manifestPath = yamlFilePath;\n } else if (fs.existsSync(jsonFilePath)) {\n manifestPath = jsonFilePath;\n } else {\n throw new Error(`Could not find project manifest under dir ${file}`);\n }\n }\n\n const doc = loadFromJsonOrYaml(manifestPath);\n const projectManifest = new StellarProjectManifestVersioned(doc as VersionedProjectManifest);\n projectManifest.validate();\n return projectManifest;\n}\n\ndescribe('project.yaml', () => {\n it('can validate project.yaml', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_falsy.yaml'))).toThrow();\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_falsy_array.yaml'))).toThrow();\n });\n\n it('can fail validation if version not supported', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_invalid_version.yaml'))).toThrow();\n });\n\n it('can validate a v1.0.0 project.yaml with templates', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'))).not.toThrow();\n });\n\n it('get v1.0.0 deployment mapping filter - transaction', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[0].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account');\n });\n\n it('get v1.0.0 deployment mapping filter - operation', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[1].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account_merge');\n });\n\n it('get v1.0.0 deployment mapping filter - effect', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[2].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('account_credited');\n });\n\n it('get v1.0.0 deployment mapping filter - events', () => {\n const manifestVersioned = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml'));\n\n const deployment = manifestVersioned.asV1_0_0.deployment;\n const filter = deployment.dataSources[0].mapping.handlers[3].filter;\n const deploymentString = manifestVersioned.toDeployment();\n expect(filter).not.toBeNull();\n expect(deploymentString).toContain('COUNTER');\n });\n\n it('can convert genesis hash in v1.0.0 to chainId in deployment', () => {\n const deployment = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0.yaml')).asV1_0_0.deployment;\n expect(deployment.network.chainId).not.toBeNull();\n console.log(deployment.network.chainId);\n });\n\n it.skip('can get chainId for deployment', () => {\n const deployment = loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_chainId.yaml')).asV1_0_0\n .deployment;\n expect(deployment.network.chainId).toBe('moonbeamChainId');\n });\n\n it('can validate deployment runner versions', () => {\n const deployment = new DeploymentV1_0_0();\n const nodeImp = new StellarRunnerNodeImpl();\n const queryImp = new RunnerQueryBaseModel();\n deployment.specVersion = '1.0.0';\n deployment.runner = new StellarRunnerSpecsImpl();\n\n nodeImp.name = '@subql/node-stellar';\n nodeImp.version = '0.29.1';\n deployment.runner.node = nodeImp;\n\n queryImp.name = '@subql/query';\n queryImp.version = '0.213.1';\n\n deployment.runner.query = queryImp;\n\n validateSync(deployment.runner, {whitelist: true, forbidNonWhitelisted: true});\n });\n\n it('can validate a v1.0.0 project.yaml with unsupported runner node', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_bad_runner.yaml'))).toThrow();\n });\n\n //TODO, pre-release should be excluded\n it.skip('can throw error with unsupported runner version', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_bad_runner_version.yaml'))).toThrow();\n });\n\n it('can validate a v1.0.0 project.yaml runner and datasource mismatches', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_1.0.0_runner_ds_mismatch.yaml'))).toThrow();\n });\n\n it('can fail validation if custom ds missing processor', () => {\n expect(() => loadStellarProjectManifest(path.join(projectsDir, 'project_0.2.0_invalid_custom_ds.yaml'))).toThrow();\n });\n});\n"]}
|
package/dist/project/utils.js
CHANGED
|
@@ -2,38 +2,37 @@
|
|
|
2
2
|
// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors
|
|
3
3
|
// SPDX-License-Identifier: GPL-3.0
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.
|
|
5
|
+
exports.isBlockHandlerProcessor = isBlockHandlerProcessor;
|
|
6
|
+
exports.isTransactionHandlerProcessor = isTransactionHandlerProcessor;
|
|
7
|
+
exports.isSorobanTransactionHandlerProcessor = isSorobanTransactionHandlerProcessor;
|
|
8
|
+
exports.isOperationHandlerProcessor = isOperationHandlerProcessor;
|
|
9
|
+
exports.isEffectHandlerProcessor = isEffectHandlerProcessor;
|
|
10
|
+
exports.isEventHandlerProcessor = isEventHandlerProcessor;
|
|
11
|
+
exports.isCustomDs = isCustomDs;
|
|
12
|
+
exports.isRuntimeDs = isRuntimeDs;
|
|
6
13
|
const types_stellar_1 = require("@subql/types-stellar");
|
|
7
14
|
function isBlockHandlerProcessor(hp) {
|
|
8
15
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.Block;
|
|
9
16
|
}
|
|
10
|
-
exports.isBlockHandlerProcessor = isBlockHandlerProcessor;
|
|
11
17
|
function isTransactionHandlerProcessor(hp) {
|
|
12
18
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.Transaction;
|
|
13
19
|
}
|
|
14
|
-
exports.isTransactionHandlerProcessor = isTransactionHandlerProcessor;
|
|
15
20
|
function isSorobanTransactionHandlerProcessor(hp) {
|
|
16
21
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.SorobanTransaction;
|
|
17
22
|
}
|
|
18
|
-
exports.isSorobanTransactionHandlerProcessor = isSorobanTransactionHandlerProcessor;
|
|
19
23
|
function isOperationHandlerProcessor(hp) {
|
|
20
24
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.Operation;
|
|
21
25
|
}
|
|
22
|
-
exports.isOperationHandlerProcessor = isOperationHandlerProcessor;
|
|
23
26
|
function isEffectHandlerProcessor(hp) {
|
|
24
27
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.Effects;
|
|
25
28
|
}
|
|
26
|
-
exports.isEffectHandlerProcessor = isEffectHandlerProcessor;
|
|
27
29
|
function isEventHandlerProcessor(hp) {
|
|
28
30
|
return hp.baseHandlerKind === types_stellar_1.StellarHandlerKind.Event;
|
|
29
31
|
}
|
|
30
|
-
exports.isEventHandlerProcessor = isEventHandlerProcessor;
|
|
31
32
|
function isCustomDs(ds) {
|
|
32
33
|
return ds.kind !== types_stellar_1.StellarDatasourceKind.Runtime && !!ds.processor;
|
|
33
34
|
}
|
|
34
|
-
exports.isCustomDs = isCustomDs;
|
|
35
35
|
function isRuntimeDs(ds) {
|
|
36
36
|
return ds.kind === types_stellar_1.StellarDatasourceKind.Runtime;
|
|
37
37
|
}
|
|
38
|
-
exports.isRuntimeDs = isRuntimeDs;
|
|
39
38
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/project/utils.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/project/utils.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;AAgBnC,0DAIC;AAED,sEAIC;AAED,oFAIC;AAED,kEAIC;AAED,4DAIC;AAED,0DAIC;AAED,gCAIC;AAED,kCAEC;AA1DD,wDAU8B;AAI9B,SAAgB,uBAAuB,CACrC,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,KAAK,CAAC;AACzD,CAAC;AAED,SAAgB,6BAA6B,CAC3C,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,WAAW,CAAC;AAC/D,CAAC;AAED,SAAgB,oCAAoC,CAClD,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,kBAAkB,CAAC;AACtE,CAAC;AAED,SAAgB,2BAA2B,CACzC,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAgB,wBAAwB,CACtC,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,OAAO,CAAC;AAC3D,CAAC;AAED,SAAgB,uBAAuB,CACrC,EAAoE;IAEpE,OAAO,EAAE,CAAC,eAAe,KAAK,kCAAkB,CAAC,KAAK,CAAC;AACzD,CAAC;AAED,SAAgB,UAAU,CACxB,EAAmB;IAEnB,OAAO,EAAE,CAAC,IAAI,KAAK,qCAAqB,CAAC,OAAO,IAAI,CAAC,CAAE,EAAoC,CAAC,SAAS,CAAC;AACxG,CAAC;AAED,SAAgB,WAAW,CAAC,EAAmB;IAC7C,OAAO,EAAE,CAAC,IAAI,KAAK,qCAAqB,CAAC,OAAO,CAAC;AACnD,CAAC","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {\n SecondLayerHandlerProcessor,\n SubqlCustomDatasource,\n SubqlDatasource,\n StellarDatasourceKind,\n StellarHandlerKind,\n SubqlRuntimeDatasource,\n SecondLayerHandlerProcessorArray,\n SubqlCustomHandler,\n SubqlMapping,\n} from '@subql/types-stellar';\n\ntype DefaultFilter = Record<string, unknown>;\n\nexport function isBlockHandlerProcessor<F extends Record<string, unknown>, B>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.Block, F, B> {\n return hp.baseHandlerKind === StellarHandlerKind.Block;\n}\n\nexport function isTransactionHandlerProcessor<F extends Record<string, unknown>, T>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.Transaction, F, T> {\n return hp.baseHandlerKind === StellarHandlerKind.Transaction;\n}\n\nexport function isSorobanTransactionHandlerProcessor<F extends Record<string, unknown>, T>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.SorobanTransaction, F, T> {\n return hp.baseHandlerKind === StellarHandlerKind.SorobanTransaction;\n}\n\nexport function isOperationHandlerProcessor<F extends Record<string, unknown>, O>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.Operation, F, O> {\n return hp.baseHandlerKind === StellarHandlerKind.Operation;\n}\n\nexport function isEffectHandlerProcessor<F extends Record<string, unknown>, E>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.Effects, F, E> {\n return hp.baseHandlerKind === StellarHandlerKind.Effects;\n}\n\nexport function isEventHandlerProcessor<F extends Record<string, unknown>, E>(\n hp: SecondLayerHandlerProcessorArray<StellarHandlerKind, F, unknown>\n): hp is SecondLayerHandlerProcessor<StellarHandlerKind.Event, F, E> {\n return hp.baseHandlerKind === StellarHandlerKind.Event;\n}\n\nexport function isCustomDs<F extends SubqlMapping<SubqlCustomHandler>>(\n ds: SubqlDatasource\n): ds is SubqlCustomDatasource<string, F> {\n return ds.kind !== StellarDatasourceKind.Runtime && !!(ds as SubqlCustomDatasource<string>).processor;\n}\n\nexport function isRuntimeDs(ds: SubqlDatasource): ds is SubqlRuntimeDatasource {\n return ds.kind === StellarDatasourceKind.Runtime;\n}\n"]}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors
|
|
3
3
|
// SPDX-License-Identifier: GPL-3.0
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.StellarProjectManifestVersioned =
|
|
5
|
+
exports.StellarProjectManifestVersioned = void 0;
|
|
6
|
+
exports.manifestIsV1_0_0 = manifestIsV1_0_0;
|
|
6
7
|
const class_transformer_1 = require("class-transformer");
|
|
7
8
|
const v1_0_0_1 = require("./v1_0_0");
|
|
8
9
|
const SOROBAN_SUPPORTED_VERSIONS = {
|
|
@@ -11,7 +12,6 @@ const SOROBAN_SUPPORTED_VERSIONS = {
|
|
|
11
12
|
function manifestIsV1_0_0(manifest) {
|
|
12
13
|
return manifest.specVersion === '1.0.0';
|
|
13
14
|
}
|
|
14
|
-
exports.manifestIsV1_0_0 = manifestIsV1_0_0;
|
|
15
15
|
class StellarProjectManifestVersioned {
|
|
16
16
|
_impl;
|
|
17
17
|
constructor(projectManifest) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectManifestVersioned.js","sourceRoot":"","sources":["../../../src/project/versioned/ProjectManifestVersioned.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;
|
|
1
|
+
{"version":3,"file":"ProjectManifestVersioned.js","sourceRoot":"","sources":["../../../src/project/versioned/ProjectManifestVersioned.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;AAenC,4CAEC;AAfD,yDAA+C;AAE/C,qCAAmD;AAGnD,MAAM,0BAA0B,GAAG;IACjC,OAAO,EAAE,kCAAyB;CACnC,CAAC;AAMF,SAAgB,gBAAgB,CAAC,QAAiC;IAChE,OAAO,QAAQ,CAAC,WAAW,KAAK,OAAO,CAAC;AAC1C,CAAC;AAED,MAAa,+BAA+B;IAClC,KAAK,CAAuB;IAEpC,YAAY,eAAyC;QACnD,MAAM,KAAK,GAAG,0BAA0B,CAAC,eAAe,CAAC,WAAuB,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAA,gCAAY,EAAiD,KAAK,EAAE,eAAe,CAAC,CAAC;IACpG,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC;IACtC,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAkC,CAAC;IACjD,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACxC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAChC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAChC,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAChC,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;IAC/B,CAAC;CACF;AAlDD,0EAkDC","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {plainToClass} from 'class-transformer';\nimport {IStellarProjectManifest, SubqlStellarDataSource} from '../types';\nimport {ProjectManifestV1_0_0Impl} from './v1_0_0';\nexport type VersionedProjectManifest = {specVersion: string};\n\nconst SOROBAN_SUPPORTED_VERSIONS = {\n '1.0.0': ProjectManifestV1_0_0Impl,\n};\n\ntype Versions = keyof typeof SOROBAN_SUPPORTED_VERSIONS;\n\ntype ProjectManifestImpls = InstanceType<(typeof SOROBAN_SUPPORTED_VERSIONS)[Versions]>;\n\nexport function manifestIsV1_0_0(manifest: IStellarProjectManifest): manifest is ProjectManifestV1_0_0Impl {\n return manifest.specVersion === '1.0.0';\n}\n\nexport class StellarProjectManifestVersioned implements IStellarProjectManifest {\n private _impl: ProjectManifestImpls;\n\n constructor(projectManifest: VersionedProjectManifest) {\n const klass = SOROBAN_SUPPORTED_VERSIONS[projectManifest.specVersion as Versions];\n if (!klass) {\n throw new Error('specVersion not supported for project manifest file');\n }\n this._impl = plainToClass<ProjectManifestImpls, VersionedProjectManifest>(klass, projectManifest);\n }\n\n get asImpl(): ProjectManifestImpls {\n return this._impl;\n }\n\n get isV1_0_0(): boolean {\n return this.specVersion === '1.0.0';\n }\n\n get asV1_0_0(): ProjectManifestV1_0_0Impl {\n return this._impl as ProjectManifestV1_0_0Impl;\n }\n\n toDeployment(): string {\n return this._impl.deployment.toYaml();\n }\n\n validate(): void {\n return this._impl.validate();\n }\n\n get dataSources(): SubqlStellarDataSource[] {\n return this._impl.dataSources;\n }\n\n get schema(): string {\n return this._impl.schema.file;\n }\n\n get specVersion(): string {\n return this._impl.specVersion;\n }\n\n get description(): string | undefined {\n return this._impl.description;\n }\n\n get repository(): string | undefined {\n return this._impl.repository;\n }\n}\n"]}
|
|
@@ -20,13 +20,13 @@ const Stellar_NODE_NAME = `@subql/node-stellar`;
|
|
|
20
20
|
class StellarRunnerNodeImpl extends common_1.RunnerNodeImpl {
|
|
21
21
|
name = Stellar_NODE_NAME;
|
|
22
22
|
}
|
|
23
|
+
exports.StellarRunnerNodeImpl = StellarRunnerNodeImpl;
|
|
23
24
|
__decorate([
|
|
24
25
|
(0, class_validator_1.IsIn)([Stellar_NODE_NAME], {
|
|
25
26
|
message: `Runner Substrate node name incorrect, suppose be '${Stellar_NODE_NAME}'`,
|
|
26
27
|
}),
|
|
27
28
|
__metadata("design:type", String)
|
|
28
29
|
], StellarRunnerNodeImpl.prototype, "name", void 0);
|
|
29
|
-
exports.StellarRunnerNodeImpl = StellarRunnerNodeImpl;
|
|
30
30
|
class StellarRuntimeDataSourceImpl extends models_1.RuntimeDataSourceBase {
|
|
31
31
|
validate() {
|
|
32
32
|
return (0, common_1.validateObject)(this, 'failed to validate runtime datasource.');
|
|
@@ -42,23 +42,24 @@ exports.StellarCustomDataSourceImpl = StellarCustomDataSourceImpl;
|
|
|
42
42
|
class RuntimeDatasourceTemplateImpl extends StellarRuntimeDataSourceImpl {
|
|
43
43
|
name;
|
|
44
44
|
}
|
|
45
|
+
exports.RuntimeDatasourceTemplateImpl = RuntimeDatasourceTemplateImpl;
|
|
45
46
|
__decorate([
|
|
46
47
|
(0, class_validator_1.IsString)(),
|
|
47
48
|
__metadata("design:type", String)
|
|
48
49
|
], RuntimeDatasourceTemplateImpl.prototype, "name", void 0);
|
|
49
|
-
exports.RuntimeDatasourceTemplateImpl = RuntimeDatasourceTemplateImpl;
|
|
50
50
|
class CustomDatasourceTemplateImpl extends StellarCustomDataSourceImpl {
|
|
51
51
|
name;
|
|
52
52
|
}
|
|
53
|
+
exports.CustomDatasourceTemplateImpl = CustomDatasourceTemplateImpl;
|
|
53
54
|
__decorate([
|
|
54
55
|
(0, class_validator_1.IsString)(),
|
|
55
56
|
__metadata("design:type", String)
|
|
56
57
|
], CustomDatasourceTemplateImpl.prototype, "name", void 0);
|
|
57
|
-
exports.CustomDatasourceTemplateImpl = CustomDatasourceTemplateImpl;
|
|
58
58
|
class StellarRunnerSpecsImpl {
|
|
59
59
|
node;
|
|
60
60
|
query;
|
|
61
61
|
}
|
|
62
|
+
exports.StellarRunnerSpecsImpl = StellarRunnerSpecsImpl;
|
|
62
63
|
__decorate([
|
|
63
64
|
(0, class_validator_1.IsObject)(),
|
|
64
65
|
(0, class_validator_1.ValidateNested)(),
|
|
@@ -71,11 +72,11 @@ __decorate([
|
|
|
71
72
|
(0, class_transformer_1.Type)(() => common_1.RunnerQueryBaseModel),
|
|
72
73
|
__metadata("design:type", Object)
|
|
73
74
|
], StellarRunnerSpecsImpl.prototype, "query", void 0);
|
|
74
|
-
exports.StellarRunnerSpecsImpl = StellarRunnerSpecsImpl;
|
|
75
75
|
class ProjectNetworkDeploymentV1_0_0 {
|
|
76
76
|
chainId;
|
|
77
77
|
bypassBlocks;
|
|
78
78
|
}
|
|
79
|
+
exports.ProjectNetworkDeploymentV1_0_0 = ProjectNetworkDeploymentV1_0_0;
|
|
79
80
|
__decorate([
|
|
80
81
|
(0, class_validator_1.IsNotEmpty)(),
|
|
81
82
|
(0, class_transformer_1.Transform)(({ value }) => value.trim()),
|
|
@@ -87,22 +88,22 @@ __decorate([
|
|
|
87
88
|
(0, class_validator_1.IsArray)(),
|
|
88
89
|
__metadata("design:type", Array)
|
|
89
90
|
], ProjectNetworkDeploymentV1_0_0.prototype, "bypassBlocks", void 0);
|
|
90
|
-
exports.ProjectNetworkDeploymentV1_0_0 = ProjectNetworkDeploymentV1_0_0;
|
|
91
91
|
class StellarProjectNetwork extends common_1.CommonProjectNetworkV1_0_0 {
|
|
92
92
|
soroban;
|
|
93
93
|
}
|
|
94
|
+
exports.StellarProjectNetwork = StellarProjectNetwork;
|
|
94
95
|
__decorate([
|
|
95
96
|
(0, class_validator_1.IsString)(),
|
|
96
97
|
(0, class_validator_1.IsOptional)(),
|
|
97
98
|
__metadata("design:type", String)
|
|
98
99
|
], StellarProjectNetwork.prototype, "soroban", void 0);
|
|
99
|
-
exports.StellarProjectNetwork = StellarProjectNetwork;
|
|
100
100
|
class DeploymentV1_0_0 extends common_1.BaseDeploymentV1_0_0 {
|
|
101
101
|
network;
|
|
102
102
|
runner;
|
|
103
103
|
dataSources;
|
|
104
104
|
templates;
|
|
105
105
|
}
|
|
106
|
+
exports.DeploymentV1_0_0 = DeploymentV1_0_0;
|
|
106
107
|
__decorate([
|
|
107
108
|
(0, class_transformer_1.Transform)((params) => {
|
|
108
109
|
if (params.value.genesisHash && !params.value.chainId) {
|
|
@@ -145,7 +146,6 @@ __decorate([
|
|
|
145
146
|
}),
|
|
146
147
|
__metadata("design:type", Array)
|
|
147
148
|
], DeploymentV1_0_0.prototype, "templates", void 0);
|
|
148
|
-
exports.DeploymentV1_0_0 = DeploymentV1_0_0;
|
|
149
149
|
class ProjectManifestV1_0_0Impl extends common_1.ProjectManifestBaseImpl {
|
|
150
150
|
constructor() {
|
|
151
151
|
super(DeploymentV1_0_0);
|
|
@@ -160,6 +160,7 @@ class ProjectManifestV1_0_0Impl extends common_1.ProjectManifestBaseImpl {
|
|
|
160
160
|
runner;
|
|
161
161
|
parent;
|
|
162
162
|
}
|
|
163
|
+
exports.ProjectManifestV1_0_0Impl = ProjectManifestV1_0_0Impl;
|
|
163
164
|
__decorate([
|
|
164
165
|
(0, class_validator_1.Equals)('1.0.0'),
|
|
165
166
|
__metadata("design:type", Object)
|
|
@@ -216,5 +217,4 @@ __decorate([
|
|
|
216
217
|
(0, class_transformer_1.Type)(() => common_1.ParentProjectModel),
|
|
217
218
|
__metadata("design:type", Object)
|
|
218
219
|
], ProjectManifestV1_0_0Impl.prototype, "parent", void 0);
|
|
219
|
-
exports.ProjectManifestV1_0_0Impl = ProjectManifestV1_0_0Impl;
|
|
220
220
|
//# sourceMappingURL=model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/project/versioned/v1_0_0/model.ts"],"names":[],"mappings":";AAAA,8DAA8D;AAC9D,mCAAmC;;;;;;;;;;;;AAEnC,0CASuB;AAUvB,yDAAsF;AACtF,qDAAkH;AAClH,yCAAyE;AAGzE,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAEhD,MAAa,qBAAsB,SAAQ,uBAAc;IAIvD,IAAI,GAAW,iBAAiB,CAAC;CAClC;
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/project/versioned/v1_0_0/model.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2020-2025 SubQuery Pte Ltd authors & contributors\n// SPDX-License-Identifier: GPL-3.0\n\nimport {\n FileType,\n ProjectManifestBaseImpl,\n ParentProjectModel,\n RunnerNodeImpl,\n RunnerQueryBaseModel,\n validateObject,\n CommonProjectNetworkV1_0_0,\n BaseDeploymentV1_0_0,\n} from '@subql/common';\nimport {BaseMapping, NodeSpec, ParentProject, QuerySpec, RunnerSpecs} from '@subql/types-core';\nimport {\n CustomDatasourceTemplate,\n RuntimeDatasourceTemplate,\n StellarProjectManifestV1_0_0,\n SubqlCustomDatasource,\n SubqlMapping,\n SubqlRuntimeDatasource,\n} from '@subql/types-stellar';\nimport {plainToInstance, Transform, TransformFnParams, Type} from 'class-transformer';\nimport {Equals, IsArray, IsIn, IsNotEmpty, IsObject, IsOptional, IsString, ValidateNested} from 'class-validator';\nimport {CustomDataSourceBase, RuntimeDataSourceBase} from '../../models';\nimport {SubqlStellarDataSource, SubqlRuntimeHandler} from '../../types';\n\nconst Stellar_NODE_NAME = `@subql/node-stellar`;\n\nexport class StellarRunnerNodeImpl extends RunnerNodeImpl {\n @IsIn([Stellar_NODE_NAME], {\n message: `Runner Substrate node name incorrect, suppose be '${Stellar_NODE_NAME}'`,\n })\n name: string = Stellar_NODE_NAME;\n}\n\nexport class StellarRuntimeDataSourceImpl\n extends RuntimeDataSourceBase<SubqlMapping<SubqlRuntimeHandler>>\n implements SubqlRuntimeDatasource\n{\n validate(): void {\n return validateObject(this, 'failed to validate runtime datasource.');\n }\n}\n\nexport class StellarCustomDataSourceImpl<K extends string = string, M extends BaseMapping<any> = BaseMapping<any>>\n extends CustomDataSourceBase<K, M>\n implements SubqlCustomDatasource<K, M>\n{\n validate(): void {\n return validateObject(this, 'failed to validate custom datasource.');\n }\n}\n\nexport class RuntimeDatasourceTemplateImpl extends StellarRuntimeDataSourceImpl implements RuntimeDatasourceTemplate {\n @IsString()\n name!: string;\n}\n\nexport class CustomDatasourceTemplateImpl extends StellarCustomDataSourceImpl implements CustomDatasourceTemplate {\n @IsString()\n name!: string;\n}\n\nexport class StellarRunnerSpecsImpl implements RunnerSpecs {\n @IsObject()\n @ValidateNested()\n @Type(() => StellarRunnerNodeImpl)\n node!: NodeSpec;\n @IsObject()\n @ValidateNested()\n @Type(() => RunnerQueryBaseModel)\n query!: QuerySpec;\n}\n\nexport class ProjectNetworkDeploymentV1_0_0 {\n @IsNotEmpty()\n @Transform(({value}: TransformFnParams) => value.trim())\n @IsString()\n chainId!: string;\n\n @IsOptional()\n @IsArray()\n bypassBlocks?: (number | string)[];\n}\n\nexport class StellarProjectNetwork extends CommonProjectNetworkV1_0_0<FileType> {\n @IsString()\n @IsOptional()\n soroban?: string;\n}\n\nexport class DeploymentV1_0_0 extends BaseDeploymentV1_0_0 {\n @Transform((params) => {\n if (params.value.genesisHash && !params.value.chainId) {\n params.value.chainId = params.value.genesisHash;\n }\n return plainToInstance(ProjectNetworkDeploymentV1_0_0, params.value);\n })\n @ValidateNested()\n @Type(() => ProjectNetworkDeploymentV1_0_0)\n network!: ProjectNetworkDeploymentV1_0_0;\n @IsObject()\n @ValidateNested()\n @Type(() => StellarRunnerSpecsImpl)\n runner!: RunnerSpecs;\n @IsArray()\n @ValidateNested()\n @Type(() => StellarCustomDataSourceImpl, {\n discriminator: {\n property: 'kind',\n subTypes: [{value: StellarRuntimeDataSourceImpl, name: 'stellar/Runtime'}],\n },\n keepDiscriminatorProperty: true,\n })\n dataSources!: (SubqlRuntimeDatasource | SubqlCustomDatasource)[];\n @IsOptional()\n @IsArray()\n @ValidateNested()\n @Type(() => CustomDatasourceTemplateImpl, {\n discriminator: {\n property: 'kind',\n subTypes: [{value: RuntimeDatasourceTemplateImpl, name: 'stellar/Runtime'}],\n },\n keepDiscriminatorProperty: true,\n })\n templates?: (RuntimeDatasourceTemplate | CustomDatasourceTemplate)[];\n}\n\nexport class ProjectManifestV1_0_0Impl<D extends object = DeploymentV1_0_0>\n extends ProjectManifestBaseImpl<DeploymentV1_0_0>\n implements StellarProjectManifestV1_0_0\n{\n constructor() {\n super(DeploymentV1_0_0);\n }\n\n @Equals('1.0.0')\n specVersion = '1.0.0';\n @Type(() => StellarCustomDataSourceImpl, {\n discriminator: {\n property: 'kind',\n subTypes: [{value: StellarRuntimeDataSourceImpl, name: 'stellar/Runtime'}],\n },\n keepDiscriminatorProperty: true,\n })\n dataSources!: SubqlStellarDataSource[];\n @Type(() => StellarProjectNetwork)\n network!: StellarProjectNetwork;\n @IsString()\n name!: string;\n @IsString()\n version!: string;\n @ValidateNested()\n @Type(() => FileType)\n schema!: FileType;\n @IsOptional()\n @IsArray()\n @ValidateNested()\n @Type(() => CustomDatasourceTemplateImpl, {\n discriminator: {\n property: 'kind',\n subTypes: [{value: RuntimeDatasourceTemplateImpl, name: 'stellar/Runtime'}],\n },\n keepDiscriminatorProperty: true,\n })\n templates?: (RuntimeDatasourceTemplate | CustomDatasourceTemplate)[];\n @IsObject()\n @ValidateNested()\n @Type(() => StellarRunnerSpecsImpl)\n runner!: RunnerSpecs;\n\n @IsOptional()\n @IsObject()\n @Type(() => ParentProjectModel)\n parent?: ParentProject;\n}\n"]}
|