@super-protocol/sdk-js 3.1.0-beta.4 → 3.1.0-beta.6

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.
Files changed (119) hide show
  1. package/dist/cjs/connectors/BaseConnector.d.ts +6 -0
  2. package/dist/cjs/connectors/BaseConnector.js +10 -1
  3. package/dist/cjs/connectors/BlockchainConnector.js +4 -2
  4. package/dist/cjs/connectors/BlockchainEventsListener.js +3 -2
  5. package/dist/cjs/constants.d.ts +1 -1
  6. package/dist/cjs/constants.js +116 -17
  7. package/dist/cjs/contracts/abi.d.ts +635 -168
  8. package/dist/cjs/contracts/abi.js +798 -196
  9. package/dist/cjs/crypto/types.d.ts +4 -0
  10. package/dist/cjs/crypto/utils.d.ts +3 -0
  11. package/dist/cjs/crypto/utils.js +50 -2
  12. package/dist/cjs/index.d.ts +1 -0
  13. package/dist/cjs/index.js +5 -3
  14. package/dist/cjs/models/Offer.js +5 -3
  15. package/dist/cjs/models/Order.d.ts +3 -2
  16. package/dist/cjs/models/Order.js +21 -7
  17. package/dist/cjs/models/Provider.d.ts +1 -1
  18. package/dist/cjs/models/Provider.js +8 -3
  19. package/dist/cjs/proto/Hash.d.ts +37 -0
  20. package/dist/cjs/proto/Hash.js +104 -0
  21. package/dist/cjs/proto/OrderReport.d.ts +539 -0
  22. package/dist/cjs/proto/OrderReport.js +300 -0
  23. package/dist/cjs/proto/TRI.d.ts +1 -24
  24. package/dist/cjs/proto/TRI.js +13 -78
  25. package/dist/cjs/proto/TeeDeviceInfo.d.ts +292 -0
  26. package/dist/cjs/proto/TeeDeviceInfo.js +491 -0
  27. package/dist/cjs/staticModels/Consensus.d.ts +3 -3
  28. package/dist/cjs/staticModels/Consensus.js +4 -4
  29. package/dist/cjs/staticModels/Deposits.d.ts +10 -9
  30. package/dist/cjs/staticModels/Deposits.js +21 -18
  31. package/dist/cjs/staticModels/Offers.js +7 -2
  32. package/dist/cjs/staticModels/OffersStorageRequests.js +4 -1
  33. package/dist/cjs/staticModels/Orders.d.ts +2 -1
  34. package/dist/cjs/staticModels/Orders.js +14 -2
  35. package/dist/cjs/staticModels/ProviderRegistry.d.ts +15 -6
  36. package/dist/cjs/staticModels/ProviderRegistry.js +43 -11
  37. package/dist/cjs/staticModels/ProviderRewards.js +16 -1
  38. package/dist/cjs/staticModels/Superpro.d.ts +5 -7
  39. package/dist/cjs/staticModels/Superpro.js +13 -45
  40. package/dist/cjs/staticModels/TeeOffers.js +7 -2
  41. package/dist/cjs/tee/OrderReportService.d.ts +11 -0
  42. package/dist/cjs/tee/OrderReportService.js +97 -0
  43. package/dist/cjs/tee/TeeCertificateService.d.ts +1 -0
  44. package/dist/cjs/tee/TeeCertificateService.js +5 -1
  45. package/dist/cjs/types/DistributedSecretStorage.d.ts +1 -0
  46. package/dist/cjs/types/Offer.d.ts +5 -0
  47. package/dist/cjs/types/Order.d.ts +2 -0
  48. package/dist/cjs/types/Order.js +3 -1
  49. package/dist/cjs/types/TokenInfo.d.ts +6 -1
  50. package/dist/cjs/utils/helpers/OrderArgsHelper.d.ts +1 -2
  51. package/dist/cjs/utils/helpers/OrderArgsHelper.js +1 -25
  52. package/dist/cjs/utils/helpers/calculateObjectHash.d.ts +8 -0
  53. package/dist/cjs/utils/helpers/calculateObjectHash.js +25 -0
  54. package/dist/cjs/utils/helpers/index.d.ts +1 -0
  55. package/dist/cjs/utils/helpers/index.js +2 -1
  56. package/dist/cjs/utils/order/complete-order.js +4 -1
  57. package/dist/cjs/utils/order/validate-order.js +13 -3
  58. package/dist/mjs/connectors/BaseConnector.d.ts +6 -0
  59. package/dist/mjs/connectors/BaseConnector.js +10 -1
  60. package/dist/mjs/connectors/BlockchainConnector.js +4 -2
  61. package/dist/mjs/connectors/BlockchainEventsListener.js +3 -2
  62. package/dist/mjs/constants.d.ts +1 -1
  63. package/dist/mjs/constants.js +116 -17
  64. package/dist/mjs/contracts/abi.d.ts +635 -168
  65. package/dist/mjs/contracts/abi.js +796 -194
  66. package/dist/mjs/crypto/types.d.ts +4 -0
  67. package/dist/mjs/crypto/utils.d.ts +3 -0
  68. package/dist/mjs/crypto/utils.js +45 -1
  69. package/dist/mjs/index.d.ts +1 -0
  70. package/dist/mjs/index.js +2 -1
  71. package/dist/mjs/models/Offer.js +5 -3
  72. package/dist/mjs/models/Order.d.ts +3 -2
  73. package/dist/mjs/models/Order.js +21 -7
  74. package/dist/mjs/models/Provider.d.ts +1 -1
  75. package/dist/mjs/models/Provider.js +8 -3
  76. package/dist/mjs/proto/Hash.d.ts +37 -0
  77. package/dist/mjs/proto/Hash.js +98 -0
  78. package/dist/mjs/proto/OrderReport.d.ts +539 -0
  79. package/dist/mjs/proto/OrderReport.js +294 -0
  80. package/dist/mjs/proto/TRI.d.ts +1 -24
  81. package/dist/mjs/proto/TRI.js +2 -67
  82. package/dist/mjs/proto/TeeDeviceInfo.d.ts +292 -0
  83. package/dist/mjs/proto/TeeDeviceInfo.js +485 -0
  84. package/dist/mjs/staticModels/Consensus.d.ts +3 -3
  85. package/dist/mjs/staticModels/Consensus.js +4 -4
  86. package/dist/mjs/staticModels/Deposits.d.ts +10 -9
  87. package/dist/mjs/staticModels/Deposits.js +21 -18
  88. package/dist/mjs/staticModels/Offers.js +7 -2
  89. package/dist/mjs/staticModels/OffersStorageRequests.js +4 -1
  90. package/dist/mjs/staticModels/Orders.d.ts +2 -1
  91. package/dist/mjs/staticModels/Orders.js +14 -2
  92. package/dist/mjs/staticModels/ProviderRegistry.d.ts +15 -6
  93. package/dist/mjs/staticModels/ProviderRegistry.js +43 -11
  94. package/dist/mjs/staticModels/ProviderRewards.js +17 -2
  95. package/dist/mjs/staticModels/Superpro.d.ts +5 -7
  96. package/dist/mjs/staticModels/Superpro.js +13 -42
  97. package/dist/mjs/staticModels/TeeOffers.js +7 -2
  98. package/dist/mjs/tee/OrderReportService.d.ts +11 -0
  99. package/dist/mjs/tee/OrderReportService.js +90 -0
  100. package/dist/mjs/tee/TeeCertificateService.d.ts +1 -0
  101. package/dist/mjs/tee/TeeCertificateService.js +5 -1
  102. package/dist/mjs/types/DistributedSecretStorage.d.ts +1 -0
  103. package/dist/mjs/types/Offer.d.ts +5 -0
  104. package/dist/mjs/types/Order.d.ts +2 -0
  105. package/dist/mjs/types/Order.js +3 -1
  106. package/dist/mjs/types/TokenInfo.d.ts +6 -1
  107. package/dist/mjs/utils/helpers/OrderArgsHelper.d.ts +1 -2
  108. package/dist/mjs/utils/helpers/OrderArgsHelper.js +1 -25
  109. package/dist/mjs/utils/helpers/calculateObjectHash.d.ts +8 -0
  110. package/dist/mjs/utils/helpers/calculateObjectHash.js +18 -0
  111. package/dist/mjs/utils/helpers/index.d.ts +1 -0
  112. package/dist/mjs/utils/helpers/index.js +2 -1
  113. package/dist/mjs/utils/order/complete-order.js +4 -1
  114. package/dist/mjs/utils/order/validate-order.js +13 -3
  115. package/package.json +3 -1
  116. package/dist/cjs/proto/TeeProperties.d.ts +0 -453
  117. package/dist/cjs/proto/TeeProperties.js +0 -503
  118. package/dist/mjs/proto/TeeProperties.d.ts +0 -453
  119. package/dist/mjs/proto/TeeProperties.js +0 -497
@@ -1,497 +0,0 @@
1
- /* eslint-disable */
2
- import _m0 from "protobufjs/minimal.js";
3
- export const protobufPackage = "";
4
- function createBaseTeeProperties() {
5
- return { teeDeviceInfo: undefined, teeRunCpuBenchmark: undefined, teeRunMemoryBenchmark: undefined };
6
- }
7
- export const TeeProperties = {
8
- encode(message, writer = _m0.Writer.create()) {
9
- if (message.teeDeviceInfo !== undefined) {
10
- TeeDeviceInfo.encode(message.teeDeviceInfo, writer.uint32(10).fork()).ldelim();
11
- }
12
- if (message.teeRunCpuBenchmark !== undefined) {
13
- TeeRunCpuBenchmark.encode(message.teeRunCpuBenchmark, writer.uint32(18).fork()).ldelim();
14
- }
15
- if (message.teeRunMemoryBenchmark !== undefined) {
16
- TeeRunMemoryBenchmark.encode(message.teeRunMemoryBenchmark, writer.uint32(26).fork()).ldelim();
17
- }
18
- return writer;
19
- },
20
- decode(input, length) {
21
- const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
22
- let end = length === undefined ? reader.len : reader.pos + length;
23
- const message = createBaseTeeProperties();
24
- while (reader.pos < end) {
25
- const tag = reader.uint32();
26
- switch (tag >>> 3) {
27
- case 1:
28
- if (tag !== 10) {
29
- break;
30
- }
31
- message.teeDeviceInfo = TeeDeviceInfo.decode(reader, reader.uint32());
32
- continue;
33
- case 2:
34
- if (tag !== 18) {
35
- break;
36
- }
37
- message.teeRunCpuBenchmark = TeeRunCpuBenchmark.decode(reader, reader.uint32());
38
- continue;
39
- case 3:
40
- if (tag !== 26) {
41
- break;
42
- }
43
- message.teeRunMemoryBenchmark = TeeRunMemoryBenchmark.decode(reader, reader.uint32());
44
- continue;
45
- }
46
- if ((tag & 7) === 4 || tag === 0) {
47
- break;
48
- }
49
- reader.skipType(tag & 7);
50
- }
51
- return message;
52
- },
53
- fromJSON(object) {
54
- return {
55
- teeDeviceInfo: isSet(object.teeDeviceInfo) ? TeeDeviceInfo.fromJSON(object.teeDeviceInfo) : undefined,
56
- teeRunCpuBenchmark: isSet(object.teeRunCpuBenchmark)
57
- ? TeeRunCpuBenchmark.fromJSON(object.teeRunCpuBenchmark)
58
- : undefined,
59
- teeRunMemoryBenchmark: isSet(object.teeRunMemoryBenchmark)
60
- ? TeeRunMemoryBenchmark.fromJSON(object.teeRunMemoryBenchmark)
61
- : undefined,
62
- };
63
- },
64
- toJSON(message) {
65
- const obj = {};
66
- if (message.teeDeviceInfo !== undefined) {
67
- obj.teeDeviceInfo = TeeDeviceInfo.toJSON(message.teeDeviceInfo);
68
- }
69
- if (message.teeRunCpuBenchmark !== undefined) {
70
- obj.teeRunCpuBenchmark = TeeRunCpuBenchmark.toJSON(message.teeRunCpuBenchmark);
71
- }
72
- if (message.teeRunMemoryBenchmark !== undefined) {
73
- obj.teeRunMemoryBenchmark = TeeRunMemoryBenchmark.toJSON(message.teeRunMemoryBenchmark);
74
- }
75
- return obj;
76
- },
77
- create(base) {
78
- return TeeProperties.fromPartial(base ?? {});
79
- },
80
- fromPartial(object) {
81
- const message = createBaseTeeProperties();
82
- message.teeDeviceInfo = (object.teeDeviceInfo !== undefined && object.teeDeviceInfo !== null)
83
- ? TeeDeviceInfo.fromPartial(object.teeDeviceInfo)
84
- : undefined;
85
- message.teeRunCpuBenchmark = (object.teeRunCpuBenchmark !== undefined && object.teeRunCpuBenchmark !== null)
86
- ? TeeRunCpuBenchmark.fromPartial(object.teeRunCpuBenchmark)
87
- : undefined;
88
- message.teeRunMemoryBenchmark =
89
- (object.teeRunMemoryBenchmark !== undefined && object.teeRunMemoryBenchmark !== null)
90
- ? TeeRunMemoryBenchmark.fromPartial(object.teeRunMemoryBenchmark)
91
- : undefined;
92
- return message;
93
- },
94
- };
95
- function createBaseTeeDeviceInfo() {
96
- return { cpus: [], memSize: 0, totalPhysicalCores: 0, totalLogicalCores: 0 };
97
- }
98
- export const TeeDeviceInfo = {
99
- encode(message, writer = _m0.Writer.create()) {
100
- for (const v of message.cpus) {
101
- Cpus.encode(v, writer.uint32(10).fork()).ldelim();
102
- }
103
- if (message.memSize !== 0) {
104
- writer.uint32(16).int32(message.memSize);
105
- }
106
- if (message.totalPhysicalCores !== 0) {
107
- writer.uint32(24).int32(message.totalPhysicalCores);
108
- }
109
- if (message.totalLogicalCores !== 0) {
110
- writer.uint32(32).int32(message.totalLogicalCores);
111
- }
112
- return writer;
113
- },
114
- decode(input, length) {
115
- const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
116
- let end = length === undefined ? reader.len : reader.pos + length;
117
- const message = createBaseTeeDeviceInfo();
118
- while (reader.pos < end) {
119
- const tag = reader.uint32();
120
- switch (tag >>> 3) {
121
- case 1:
122
- if (tag !== 10) {
123
- break;
124
- }
125
- message.cpus.push(Cpus.decode(reader, reader.uint32()));
126
- continue;
127
- case 2:
128
- if (tag !== 16) {
129
- break;
130
- }
131
- message.memSize = reader.int32();
132
- continue;
133
- case 3:
134
- if (tag !== 24) {
135
- break;
136
- }
137
- message.totalPhysicalCores = reader.int32();
138
- continue;
139
- case 4:
140
- if (tag !== 32) {
141
- break;
142
- }
143
- message.totalLogicalCores = reader.int32();
144
- continue;
145
- }
146
- if ((tag & 7) === 4 || tag === 0) {
147
- break;
148
- }
149
- reader.skipType(tag & 7);
150
- }
151
- return message;
152
- },
153
- fromJSON(object) {
154
- return {
155
- cpus: globalThis.Array.isArray(object?.cpus) ? object.cpus.map((e) => Cpus.fromJSON(e)) : [],
156
- memSize: isSet(object.memSize) ? globalThis.Number(object.memSize) : 0,
157
- totalPhysicalCores: isSet(object.totalPhysicalCores) ? globalThis.Number(object.totalPhysicalCores) : 0,
158
- totalLogicalCores: isSet(object.totalLogicalCores) ? globalThis.Number(object.totalLogicalCores) : 0,
159
- };
160
- },
161
- toJSON(message) {
162
- const obj = {};
163
- if (message.cpus?.length) {
164
- obj.cpus = message.cpus.map((e) => Cpus.toJSON(e));
165
- }
166
- if (message.memSize !== 0) {
167
- obj.memSize = Math.round(message.memSize);
168
- }
169
- if (message.totalPhysicalCores !== 0) {
170
- obj.totalPhysicalCores = Math.round(message.totalPhysicalCores);
171
- }
172
- if (message.totalLogicalCores !== 0) {
173
- obj.totalLogicalCores = Math.round(message.totalLogicalCores);
174
- }
175
- return obj;
176
- },
177
- create(base) {
178
- return TeeDeviceInfo.fromPartial(base ?? {});
179
- },
180
- fromPartial(object) {
181
- const message = createBaseTeeDeviceInfo();
182
- message.cpus = object.cpus?.map((e) => Cpus.fromPartial(e)) || [];
183
- message.memSize = object.memSize ?? 0;
184
- message.totalPhysicalCores = object.totalPhysicalCores ?? 0;
185
- message.totalLogicalCores = object.totalLogicalCores ?? 0;
186
- return message;
187
- },
188
- };
189
- function createBaseCpus() {
190
- return {
191
- vendorId: "",
192
- cpuFamily: 0,
193
- model: 0,
194
- modelName: "",
195
- physicalCores: 0,
196
- logicalCores: 0,
197
- baseFreq: 0,
198
- maxFreq: 0,
199
- };
200
- }
201
- export const Cpus = {
202
- encode(message, writer = _m0.Writer.create()) {
203
- if (message.vendorId !== "") {
204
- writer.uint32(10).string(message.vendorId);
205
- }
206
- if (message.cpuFamily !== 0) {
207
- writer.uint32(16).int32(message.cpuFamily);
208
- }
209
- if (message.model !== 0) {
210
- writer.uint32(24).int32(message.model);
211
- }
212
- if (message.modelName !== "") {
213
- writer.uint32(34).string(message.modelName);
214
- }
215
- if (message.physicalCores !== 0) {
216
- writer.uint32(40).int32(message.physicalCores);
217
- }
218
- if (message.logicalCores !== 0) {
219
- writer.uint32(48).int32(message.logicalCores);
220
- }
221
- if (message.baseFreq !== 0) {
222
- writer.uint32(56).int32(message.baseFreq);
223
- }
224
- if (message.maxFreq !== 0) {
225
- writer.uint32(64).int32(message.maxFreq);
226
- }
227
- return writer;
228
- },
229
- decode(input, length) {
230
- const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
231
- let end = length === undefined ? reader.len : reader.pos + length;
232
- const message = createBaseCpus();
233
- while (reader.pos < end) {
234
- const tag = reader.uint32();
235
- switch (tag >>> 3) {
236
- case 1:
237
- if (tag !== 10) {
238
- break;
239
- }
240
- message.vendorId = reader.string();
241
- continue;
242
- case 2:
243
- if (tag !== 16) {
244
- break;
245
- }
246
- message.cpuFamily = reader.int32();
247
- continue;
248
- case 3:
249
- if (tag !== 24) {
250
- break;
251
- }
252
- message.model = reader.int32();
253
- continue;
254
- case 4:
255
- if (tag !== 34) {
256
- break;
257
- }
258
- message.modelName = reader.string();
259
- continue;
260
- case 5:
261
- if (tag !== 40) {
262
- break;
263
- }
264
- message.physicalCores = reader.int32();
265
- continue;
266
- case 6:
267
- if (tag !== 48) {
268
- break;
269
- }
270
- message.logicalCores = reader.int32();
271
- continue;
272
- case 7:
273
- if (tag !== 56) {
274
- break;
275
- }
276
- message.baseFreq = reader.int32();
277
- continue;
278
- case 8:
279
- if (tag !== 64) {
280
- break;
281
- }
282
- message.maxFreq = reader.int32();
283
- continue;
284
- }
285
- if ((tag & 7) === 4 || tag === 0) {
286
- break;
287
- }
288
- reader.skipType(tag & 7);
289
- }
290
- return message;
291
- },
292
- fromJSON(object) {
293
- return {
294
- vendorId: isSet(object.vendorId) ? globalThis.String(object.vendorId) : "",
295
- cpuFamily: isSet(object.cpuFamily) ? globalThis.Number(object.cpuFamily) : 0,
296
- model: isSet(object.model) ? globalThis.Number(object.model) : 0,
297
- modelName: isSet(object.modelName) ? globalThis.String(object.modelName) : "",
298
- physicalCores: isSet(object.physicalCores) ? globalThis.Number(object.physicalCores) : 0,
299
- logicalCores: isSet(object.logicalCores) ? globalThis.Number(object.logicalCores) : 0,
300
- baseFreq: isSet(object.baseFreq) ? globalThis.Number(object.baseFreq) : 0,
301
- maxFreq: isSet(object.maxFreq) ? globalThis.Number(object.maxFreq) : 0,
302
- };
303
- },
304
- toJSON(message) {
305
- const obj = {};
306
- if (message.vendorId !== "") {
307
- obj.vendorId = message.vendorId;
308
- }
309
- if (message.cpuFamily !== 0) {
310
- obj.cpuFamily = Math.round(message.cpuFamily);
311
- }
312
- if (message.model !== 0) {
313
- obj.model = Math.round(message.model);
314
- }
315
- if (message.modelName !== "") {
316
- obj.modelName = message.modelName;
317
- }
318
- if (message.physicalCores !== 0) {
319
- obj.physicalCores = Math.round(message.physicalCores);
320
- }
321
- if (message.logicalCores !== 0) {
322
- obj.logicalCores = Math.round(message.logicalCores);
323
- }
324
- if (message.baseFreq !== 0) {
325
- obj.baseFreq = Math.round(message.baseFreq);
326
- }
327
- if (message.maxFreq !== 0) {
328
- obj.maxFreq = Math.round(message.maxFreq);
329
- }
330
- return obj;
331
- },
332
- create(base) {
333
- return Cpus.fromPartial(base ?? {});
334
- },
335
- fromPartial(object) {
336
- const message = createBaseCpus();
337
- message.vendorId = object.vendorId ?? "";
338
- message.cpuFamily = object.cpuFamily ?? 0;
339
- message.model = object.model ?? 0;
340
- message.modelName = object.modelName ?? "";
341
- message.physicalCores = object.physicalCores ?? 0;
342
- message.logicalCores = object.logicalCores ?? 0;
343
- message.baseFreq = object.baseFreq ?? 0;
344
- message.maxFreq = object.maxFreq ?? 0;
345
- return message;
346
- },
347
- };
348
- function createBaseTeeRunCpuBenchmark() {
349
- return { cpuScore: 0, cpuBenchmark: "", cpuCoresCount: 0 };
350
- }
351
- export const TeeRunCpuBenchmark = {
352
- encode(message, writer = _m0.Writer.create()) {
353
- if (message.cpuScore !== 0) {
354
- writer.uint32(8).int32(message.cpuScore);
355
- }
356
- if (message.cpuBenchmark !== "") {
357
- writer.uint32(18).string(message.cpuBenchmark);
358
- }
359
- if (message.cpuCoresCount !== 0) {
360
- writer.uint32(24).int32(message.cpuCoresCount);
361
- }
362
- return writer;
363
- },
364
- decode(input, length) {
365
- const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
366
- let end = length === undefined ? reader.len : reader.pos + length;
367
- const message = createBaseTeeRunCpuBenchmark();
368
- while (reader.pos < end) {
369
- const tag = reader.uint32();
370
- switch (tag >>> 3) {
371
- case 1:
372
- if (tag !== 8) {
373
- break;
374
- }
375
- message.cpuScore = reader.int32();
376
- continue;
377
- case 2:
378
- if (tag !== 18) {
379
- break;
380
- }
381
- message.cpuBenchmark = reader.string();
382
- continue;
383
- case 3:
384
- if (tag !== 24) {
385
- break;
386
- }
387
- message.cpuCoresCount = reader.int32();
388
- continue;
389
- }
390
- if ((tag & 7) === 4 || tag === 0) {
391
- break;
392
- }
393
- reader.skipType(tag & 7);
394
- }
395
- return message;
396
- },
397
- fromJSON(object) {
398
- return {
399
- cpuScore: isSet(object.cpuScore) ? globalThis.Number(object.cpuScore) : 0,
400
- cpuBenchmark: isSet(object.cpuBenchmark) ? globalThis.String(object.cpuBenchmark) : "",
401
- cpuCoresCount: isSet(object.cpuCoresCount) ? globalThis.Number(object.cpuCoresCount) : 0,
402
- };
403
- },
404
- toJSON(message) {
405
- const obj = {};
406
- if (message.cpuScore !== 0) {
407
- obj.cpuScore = Math.round(message.cpuScore);
408
- }
409
- if (message.cpuBenchmark !== "") {
410
- obj.cpuBenchmark = message.cpuBenchmark;
411
- }
412
- if (message.cpuCoresCount !== 0) {
413
- obj.cpuCoresCount = Math.round(message.cpuCoresCount);
414
- }
415
- return obj;
416
- },
417
- create(base) {
418
- return TeeRunCpuBenchmark.fromPartial(base ?? {});
419
- },
420
- fromPartial(object) {
421
- const message = createBaseTeeRunCpuBenchmark();
422
- message.cpuScore = object.cpuScore ?? 0;
423
- message.cpuBenchmark = object.cpuBenchmark ?? "";
424
- message.cpuCoresCount = object.cpuCoresCount ?? 0;
425
- return message;
426
- },
427
- };
428
- function createBaseTeeRunMemoryBenchmark() {
429
- return { memBandwidth: 0, memConfirmedSize: 0 };
430
- }
431
- export const TeeRunMemoryBenchmark = {
432
- encode(message, writer = _m0.Writer.create()) {
433
- if (message.memBandwidth !== 0) {
434
- writer.uint32(8).int32(message.memBandwidth);
435
- }
436
- if (message.memConfirmedSize !== 0) {
437
- writer.uint32(16).int32(message.memConfirmedSize);
438
- }
439
- return writer;
440
- },
441
- decode(input, length) {
442
- const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
443
- let end = length === undefined ? reader.len : reader.pos + length;
444
- const message = createBaseTeeRunMemoryBenchmark();
445
- while (reader.pos < end) {
446
- const tag = reader.uint32();
447
- switch (tag >>> 3) {
448
- case 1:
449
- if (tag !== 8) {
450
- break;
451
- }
452
- message.memBandwidth = reader.int32();
453
- continue;
454
- case 2:
455
- if (tag !== 16) {
456
- break;
457
- }
458
- message.memConfirmedSize = reader.int32();
459
- continue;
460
- }
461
- if ((tag & 7) === 4 || tag === 0) {
462
- break;
463
- }
464
- reader.skipType(tag & 7);
465
- }
466
- return message;
467
- },
468
- fromJSON(object) {
469
- return {
470
- memBandwidth: isSet(object.memBandwidth) ? globalThis.Number(object.memBandwidth) : 0,
471
- memConfirmedSize: isSet(object.memConfirmedSize) ? globalThis.Number(object.memConfirmedSize) : 0,
472
- };
473
- },
474
- toJSON(message) {
475
- const obj = {};
476
- if (message.memBandwidth !== 0) {
477
- obj.memBandwidth = Math.round(message.memBandwidth);
478
- }
479
- if (message.memConfirmedSize !== 0) {
480
- obj.memConfirmedSize = Math.round(message.memConfirmedSize);
481
- }
482
- return obj;
483
- },
484
- create(base) {
485
- return TeeRunMemoryBenchmark.fromPartial(base ?? {});
486
- },
487
- fromPartial(object) {
488
- const message = createBaseTeeRunMemoryBenchmark();
489
- message.memBandwidth = object.memBandwidth ?? 0;
490
- message.memConfirmedSize = object.memConfirmedSize ?? 0;
491
- return message;
492
- },
493
- };
494
- function isSet(value) {
495
- return value !== null && value !== undefined;
496
- }
497
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVlUHJvcGVydGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm90by9UZWVQcm9wZXJ0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsRUFBRSxDQUFDO0FBcUNsQyxTQUFTLHVCQUF1QjtJQUM5QixPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLENBQUM7QUFDdkcsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixNQUFNLENBQUMsT0FBc0IsRUFBRSxTQUFxQixHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUNyRSxJQUFJLE9BQU8sQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqRixDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsa0JBQWtCLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDN0Msa0JBQWtCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0YsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLHFCQUFxQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2hELHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMs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USxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzFFLFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1RSxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEUsU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzdFLGFBQWEsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RixZQUFZLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckYsUUFBUSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pFLE9BQU8sRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxP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