@hashgraphonline/standards-sdk 0.1.182 → 0.1.183

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 (92) hide show
  1. package/dist/browser/services/registry-broker/client/base-client.d.ts +2 -1
  2. package/dist/browser/services/registry-broker/client/base-client.d.ts.map +1 -1
  3. package/dist/browser/services/registry-broker/client/chat.d.ts +3 -1
  4. package/dist/browser/services/registry-broker/client/chat.d.ts.map +1 -1
  5. package/dist/browser/services/registry-broker/schemas.d.ts +307 -28
  6. package/dist/browser/services/registry-broker/schemas.d.ts.map +1 -1
  7. package/dist/browser/services/registry-broker/types.d.ts +6 -1
  8. package/dist/browser/services/registry-broker/types.d.ts.map +1 -1
  9. package/dist/browser/standards-sdk.browser.js +45 -0
  10. package/dist/browser/standards-sdk.browser.js.map +1 -1
  11. package/dist/browser-root/services/registry-broker/client/base-client.d.ts +2 -1
  12. package/dist/browser-root/services/registry-broker/client/base-client.d.ts.map +1 -1
  13. package/dist/browser-root/services/registry-broker/client/chat.d.ts +3 -1
  14. package/dist/browser-root/services/registry-broker/client/chat.d.ts.map +1 -1
  15. package/dist/browser-root/services/registry-broker/schemas.d.ts +307 -28
  16. package/dist/browser-root/services/registry-broker/schemas.d.ts.map +1 -1
  17. package/dist/browser-root/services/registry-broker/types.d.ts +6 -1
  18. package/dist/browser-root/services/registry-broker/types.d.ts.map +1 -1
  19. package/dist/browser-root/standards-sdk.root-browser.js +70 -0
  20. package/dist/browser-root/standards-sdk.root-browser.js.map +1 -1
  21. package/dist/cjs/services/registry-broker/client/base-client.d.ts +2 -1
  22. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  23. package/dist/cjs/services/registry-broker/client/chat.d.ts +3 -1
  24. package/dist/cjs/services/registry-broker/client/chat.d.ts.map +1 -1
  25. package/dist/cjs/services/registry-broker/schemas.d.ts +307 -28
  26. package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
  27. package/dist/cjs/services/registry-broker/types.d.ts +6 -1
  28. package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
  29. package/dist/cjs/standards-sdk.cjs +1 -1
  30. package/dist/cjs/standards-sdk.cjs.map +1 -1
  31. package/dist/es/services/registry-broker/client/base-client.d.ts +2 -1
  32. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  33. package/dist/es/services/registry-broker/client/chat.d.ts +3 -1
  34. package/dist/es/services/registry-broker/client/chat.d.ts.map +1 -1
  35. package/dist/es/services/registry-broker/schemas.d.ts +307 -28
  36. package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
  37. package/dist/es/services/registry-broker/types.d.ts +6 -1
  38. package/dist/es/services/registry-broker/types.d.ts.map +1 -1
  39. package/dist/es/standards-sdk.es121.js +1 -1
  40. package/dist/es/standards-sdk.es128.js +5 -5
  41. package/dist/es/standards-sdk.es138.js +1 -1
  42. package/dist/es/standards-sdk.es139.js +1 -1
  43. package/dist/es/standards-sdk.es140.js +5 -5
  44. package/dist/es/standards-sdk.es142.js +2 -2
  45. package/dist/es/standards-sdk.es145.js +6 -3
  46. package/dist/es/standards-sdk.es145.js.map +1 -1
  47. package/dist/es/standards-sdk.es148.js.map +1 -1
  48. package/dist/es/standards-sdk.es149.js +1 -1
  49. package/dist/es/standards-sdk.es161.js +46 -0
  50. package/dist/es/standards-sdk.es161.js.map +1 -1
  51. package/dist/es/standards-sdk.es163.js +54 -15
  52. package/dist/es/standards-sdk.es163.js.map +1 -1
  53. package/dist/es/standards-sdk.es164.js +102 -47
  54. package/dist/es/standards-sdk.es164.js.map +1 -1
  55. package/dist/es/standards-sdk.es165.js +64 -94
  56. package/dist/es/standards-sdk.es165.js.map +1 -1
  57. package/dist/es/standards-sdk.es166.js +180 -61
  58. package/dist/es/standards-sdk.es166.js.map +1 -1
  59. package/dist/es/standards-sdk.es167.js +14 -197
  60. package/dist/es/standards-sdk.es167.js.map +1 -1
  61. package/dist/es/standards-sdk.es168.js +66 -165
  62. package/dist/es/standards-sdk.es168.js.map +1 -1
  63. package/dist/es/standards-sdk.es169.js +657 -307
  64. package/dist/es/standards-sdk.es169.js.map +1 -1
  65. package/dist/es/standards-sdk.es170.js +120 -294
  66. package/dist/es/standards-sdk.es170.js.map +1 -1
  67. package/dist/es/standards-sdk.es171.js +191 -322
  68. package/dist/es/standards-sdk.es171.js.map +1 -1
  69. package/dist/es/standards-sdk.es172.js +294 -279
  70. package/dist/es/standards-sdk.es172.js.map +1 -1
  71. package/dist/es/standards-sdk.es173.js +440 -63
  72. package/dist/es/standards-sdk.es173.js.map +1 -1
  73. package/dist/es/standards-sdk.es174.js +317 -658
  74. package/dist/es/standards-sdk.es174.js.map +1 -1
  75. package/dist/es/standards-sdk.es175.js +66 -63
  76. package/dist/es/standards-sdk.es175.js.map +1 -1
  77. package/dist/es/standards-sdk.es177.js +24 -1
  78. package/dist/es/standards-sdk.es177.js.map +1 -1
  79. package/dist/es/standards-sdk.es179.js +1 -1
  80. package/dist/es/standards-sdk.es182.js +1 -1
  81. package/dist/es/standards-sdk.es56.js +1 -1
  82. package/dist/es/standards-sdk.es59.js +1 -1
  83. package/dist/es/standards-sdk.es60.js +1 -1
  84. package/dist/es/standards-sdk.es62.js +1 -1
  85. package/dist/es/standards-sdk.es63.js +2 -2
  86. package/dist/es/standards-sdk.es64.js +1 -1
  87. package/dist/es/standards-sdk.es65.js +1 -1
  88. package/dist/es/standards-sdk.es66.js +1 -1
  89. package/dist/es/standards-sdk.es69.js +1 -1
  90. package/dist/es/standards-sdk.es71.js +1 -1
  91. package/dist/es/standards-sdk.es72.js +1 -1
  92. package/package.json +1 -1
@@ -1,675 +1,334 @@
1
- import { skillRegistryConfigResponseSchema, skillRegistryListResponseSchema, skillCatalogResponseSchema, skillRegistryVersionsResponseSchema, skillRegistryMineResponseSchema, skillRegistryMyListResponseSchema, skillRegistryQuoteResponseSchema, skillQuotePreviewResponseSchema, skillRegistryPublishResponseSchema, skillRegistryJobStatusResponseSchema, skillRegistryOwnershipResponseSchema, skillRecommendedVersionResponseSchema, skillDeprecationsResponseSchema, skillDeprecationRecordSchema, skillBadgeResponseSchema, skillStatusResponseSchema, skillSecurityBreakdownResponseSchema, skillConversionSignalsResponseSchema, skillPreviewRecordSchema, skillPreviewLookupResponseSchema, skillInstallResponseSchema, skillInstallCopyTelemetryResponseSchema, skillRegistryTagsResponseSchema, skillRegistryCategoriesResponseSchema, skillResolverManifestResponseSchema, skillRegistryVoteStatusResponseSchema, skillVerificationRequestCreateResponseSchema, skillVerificationStatusResponseSchema, skillVerificationDomainProofChallengeResponseSchema, skillVerificationDomainProofVerifyResponseSchema } from "./standards-sdk.es161.js";
2
- function requireTrimmedString(value, fieldName) {
3
- const normalizedValue = value.trim();
4
- if (!normalizedValue) {
5
- throw new Error(`${fieldName} is required`);
6
- }
7
- return normalizedValue;
8
- }
9
- async function skillsConfig(client) {
10
- const raw = await client.requestJson("/skills/config", {
11
- method: "GET"
12
- });
13
- return client.parseWithSchema(
14
- raw,
15
- skillRegistryConfigResponseSchema,
16
- "skill registry config response"
17
- );
18
- }
19
- async function listSkills(client, params = {}) {
20
- const query = new URLSearchParams();
21
- if (params.name) {
22
- query.set("name", params.name);
23
- }
24
- if (params.version) {
25
- query.set("version", params.version);
26
- }
27
- if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
28
- query.set("limit", String(Math.trunc(params.limit)));
29
- }
30
- if (params.cursor) {
31
- query.set("cursor", params.cursor);
32
- }
33
- if (typeof params.includeFiles === "boolean") {
34
- query.set("includeFiles", params.includeFiles ? "true" : "false");
35
- }
36
- if (params.accountId) {
37
- query.set("accountId", params.accountId);
38
- }
39
- if (params.q) {
40
- query.set("q", params.q);
41
- }
42
- if (params.tag) {
43
- query.set("tag", params.tag);
44
- }
45
- if (params.category) {
46
- query.set("category", params.category);
47
- }
48
- if (typeof params.featured === "boolean") {
49
- query.set("featured", params.featured ? "true" : "false");
50
- }
51
- if (typeof params.verified === "boolean") {
52
- query.set("verified", params.verified ? "true" : "false");
53
- }
54
- if (params.view) {
55
- query.set("view", params.view);
56
- }
57
- const suffix = query.size > 0 ? `?${query.toString()}` : "";
58
- const raw = await client.requestJson(`/skills${suffix}`, {
59
- method: "GET"
60
- });
61
- return client.parseWithSchema(
62
- raw,
63
- skillRegistryListResponseSchema,
64
- "skill registry list response"
65
- );
66
- }
67
- async function getSkillSecurityBreakdown(client, params) {
68
- const normalizedJobId = requireTrimmedString(params.jobId, "jobId");
69
- const raw = await client.requestJson(
70
- `/skills/${encodeURIComponent(normalizedJobId)}/security-breakdown`,
71
- { method: "GET" }
72
- );
73
- return client.parseWithSchema(
74
- raw,
75
- skillSecurityBreakdownResponseSchema,
76
- "skill security breakdown response"
77
- );
78
- }
79
- async function getSkillsCatalog(client, params = {}) {
80
- const query = new URLSearchParams();
81
- if (params.q) {
82
- query.set("q", params.q);
83
- }
84
- if (params.category) {
85
- query.set("category", params.category);
86
- }
87
- params.tags?.forEach((tag) => {
88
- if (tag.trim()) {
89
- query.append("tag", tag.trim());
1
+ import { proto } from "@hashgraph/proto";
2
+ import { Long, FileId, ContractId } from "@hashgraph/sdk";
3
+ import { hasTransactionType } from "./standards-sdk.es175.js";
4
+ class UtilParser {
5
+ /**
6
+ * Parse Utility/System Service transaction using unified dual-branch approach
7
+ * This handles both regular transactions and signed transaction variants
8
+ */
9
+ static parseUtilTransaction(transaction, originalBytes) {
10
+ try {
11
+ if (originalBytes || transaction.toBytes) {
12
+ try {
13
+ const bytesToParse = originalBytes || transaction.toBytes();
14
+ const decoded = proto.TransactionList.decode(bytesToParse);
15
+ if (decoded.transactionList && decoded.transactionList.length > 0) {
16
+ const tx = decoded.transactionList[0];
17
+ let txBody = null;
18
+ if (tx.bodyBytes && tx.bodyBytes.length > 0) {
19
+ txBody = proto.TransactionBody.decode(tx.bodyBytes);
20
+ } else if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
21
+ const signedTx = proto.SignedTransaction.decode(
22
+ tx.signedTransactionBytes
23
+ );
24
+ if (signedTx.bodyBytes) {
25
+ txBody = proto.TransactionBody.decode(signedTx.bodyBytes);
26
+ }
27
+ }
28
+ if (txBody) {
29
+ const protoResult = this.parseFromProtobufTxBody(txBody);
30
+ if (protoResult.type && protoResult.type !== "UNKNOWN") {
31
+ return protoResult;
32
+ }
33
+ }
34
+ }
35
+ } catch (protoError) {
36
+ }
37
+ }
38
+ return this.parseFromTransactionInternals(transaction);
39
+ } catch (error) {
40
+ return {
41
+ type: "UNKNOWN",
42
+ humanReadableType: "Unknown Utility Transaction"
43
+ };
90
44
  }
91
- });
92
- if (typeof params.featured === "boolean") {
93
- query.set("featured", params.featured ? "true" : "false");
94
- }
95
- if (typeof params.verified === "boolean") {
96
- query.set("verified", params.verified ? "true" : "false");
97
- }
98
- if (params.channel) {
99
- query.set("channel", params.channel);
100
- }
101
- if (params.sortBy) {
102
- query.set("sortBy", params.sortBy);
103
- }
104
- if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
105
- query.set("limit", String(Math.trunc(params.limit)));
106
45
  }
107
- if (params.cursor) {
108
- query.set("cursor", params.cursor);
109
- }
110
- const suffix = query.size > 0 ? `?${query.toString()}` : "";
111
- const raw = await client.requestJson(`/skills/catalog${suffix}`, {
112
- method: "GET"
113
- });
114
- return client.parseWithSchema(
115
- raw,
116
- skillCatalogResponseSchema,
117
- "skill catalog response"
118
- );
119
- }
120
- async function listSkillVersions(client, params) {
121
- const normalizedName = requireTrimmedString(params.name, "name");
122
- const query = new URLSearchParams();
123
- query.set("name", normalizedName);
124
- const raw = await client.requestJson(
125
- `/skills/versions?${query.toString()}`,
126
- { method: "GET" }
127
- );
128
- return client.parseWithSchema(
129
- raw,
130
- skillRegistryVersionsResponseSchema,
131
- "skill registry versions response"
132
- );
133
- }
134
- async function listMySkills(client, params = {}) {
135
- const query = new URLSearchParams();
136
- if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
137
- query.set("limit", String(Math.trunc(params.limit)));
138
- }
139
- const suffix = query.size > 0 ? `?${query.toString()}` : "";
140
- const raw = await client.requestJson(`/skills/mine${suffix}`, {
141
- method: "GET"
142
- });
143
- return client.parseWithSchema(
144
- raw,
145
- skillRegistryMineResponseSchema,
146
- "skill registry mine response"
147
- );
148
- }
149
- async function getMySkillsList(client, params = {}) {
150
- const query = new URLSearchParams();
151
- if (typeof params.limit === "number" && Number.isFinite(params.limit)) {
152
- query.set("limit", String(Math.trunc(params.limit)));
153
- }
154
- if (params.cursor) {
155
- query.set("cursor", params.cursor);
156
- }
157
- if (params.accountId) {
158
- query.set("accountId", params.accountId);
159
- }
160
- const suffix = query.size > 0 ? `?${query.toString()}` : "";
161
- const raw = await client.requestJson(`/skills/my-list${suffix}`, {
162
- method: "GET"
163
- });
164
- return client.parseWithSchema(
165
- raw,
166
- skillRegistryMyListResponseSchema,
167
- "skill registry my list response"
168
- );
169
- }
170
- async function quoteSkillPublish(client, payload) {
171
- const raw = await client.requestJson("/skills/quote", {
172
- method: "POST",
173
- body: payload,
174
- headers: { "content-type": "application/json" }
175
- });
176
- return client.parseWithSchema(
177
- raw,
178
- skillRegistryQuoteResponseSchema,
179
- "skill registry quote response"
180
- );
181
- }
182
- async function quoteSkillPublishPreview(client, payload) {
183
- const raw = await client.requestJson("/skills/quote-preview", {
184
- method: "POST",
185
- body: payload,
186
- headers: { "content-type": "application/json" }
187
- });
188
- return client.parseWithSchema(
189
- raw,
190
- skillQuotePreviewResponseSchema,
191
- "skill quote preview response"
192
- );
193
- }
194
- async function publishSkill(client, payload) {
195
- const raw = await client.requestJson("/skills/publish", {
196
- method: "POST",
197
- body: payload,
198
- headers: { "content-type": "application/json" }
199
- });
200
- return client.parseWithSchema(
201
- raw,
202
- skillRegistryPublishResponseSchema,
203
- "skill registry publish response"
204
- );
205
- }
206
- async function getSkillPublishJob(client, jobId, params = {}) {
207
- const normalized = requireTrimmedString(jobId, "jobId");
208
- const query = new URLSearchParams();
209
- if (params.accountId) {
210
- query.set("accountId", params.accountId);
211
- }
212
- const suffix = query.size > 0 ? `?${query.toString()}` : "";
213
- const raw = await client.requestJson(
214
- `/skills/jobs/${encodeURIComponent(normalized)}${suffix}`,
215
- { method: "GET" }
216
- );
217
- return client.parseWithSchema(
218
- raw,
219
- skillRegistryJobStatusResponseSchema,
220
- "skill registry job status response"
221
- );
222
- }
223
- async function getSkillOwnership(client, params) {
224
- const normalizedName = requireTrimmedString(params.name, "name");
225
- const query = new URLSearchParams();
226
- query.set("name", normalizedName);
227
- if (params.accountId) {
228
- query.set("accountId", params.accountId);
229
- }
230
- const raw = await client.requestJson(
231
- `/skills/ownership?${query.toString()}`,
232
- {
233
- method: "GET"
46
+ /**
47
+ * Parse utility transaction from protobuf TransactionBody
48
+ * Handles all utility operations from decoded protobuf data
49
+ */
50
+ static parseFromProtobufTxBody(txBody) {
51
+ if (txBody.utilPrng) {
52
+ const utilPrng = this.parseUtilPrng(txBody.utilPrng);
53
+ if (utilPrng) {
54
+ return {
55
+ type: "PRNG",
56
+ humanReadableType: "Pseudo Random Number",
57
+ utilPrng
58
+ };
59
+ }
234
60
  }
235
- );
236
- return client.parseWithSchema(
237
- raw,
238
- skillRegistryOwnershipResponseSchema,
239
- "skill registry ownership response"
240
- );
241
- }
242
- async function getRecommendedSkillVersion(client, params) {
243
- const normalizedName = requireTrimmedString(params.name, "name");
244
- const query = new URLSearchParams();
245
- query.set("name", normalizedName);
246
- const raw = await client.requestJson(
247
- `/skills/recommended?${query.toString()}`,
248
- { method: "GET" }
249
- );
250
- return client.parseWithSchema(
251
- raw,
252
- skillRecommendedVersionResponseSchema,
253
- "skill recommended version response"
254
- );
255
- }
256
- async function setRecommendedSkillVersion(client, payload) {
257
- const normalizedName = requireTrimmedString(payload.name, "name");
258
- const normalizedVersion = requireTrimmedString(payload.version, "version");
259
- const raw = await client.requestJson("/skills/recommended", {
260
- method: "POST",
261
- body: {
262
- name: normalizedName,
263
- version: normalizedVersion
264
- },
265
- headers: { "content-type": "application/json" }
266
- });
267
- return client.parseWithSchema(
268
- raw,
269
- skillRecommendedVersionResponseSchema,
270
- "skill recommended version response"
271
- );
272
- }
273
- async function getSkillDeprecations(client, params) {
274
- const normalizedName = requireTrimmedString(params.name, "name");
275
- const query = new URLSearchParams();
276
- query.set("name", normalizedName);
277
- const raw = await client.requestJson(
278
- `/skills/deprecations?${query.toString()}`,
279
- { method: "GET" }
280
- );
281
- return client.parseWithSchema(
282
- raw,
283
- skillDeprecationsResponseSchema,
284
- "skill deprecations response"
285
- );
286
- }
287
- async function setSkillDeprecation(client, payload) {
288
- const normalizedName = requireTrimmedString(payload.name, "name");
289
- const version = payload.version?.trim();
290
- const reason = requireTrimmedString(payload.reason, "reason");
291
- const replacementRef = payload.replacementRef?.trim();
292
- const raw = await client.requestJson("/skills/deprecate", {
293
- method: "POST",
294
- body: {
295
- name: normalizedName,
296
- version,
297
- reason,
298
- replacementRef
299
- },
300
- headers: { "content-type": "application/json" }
301
- });
302
- return client.parseWithSchema(
303
- raw,
304
- skillDeprecationRecordSchema,
305
- "skill deprecation response"
306
- );
307
- }
308
- async function getSkillBadge(client, params) {
309
- const normalizedName = requireTrimmedString(params.name, "name");
310
- const query = new URLSearchParams();
311
- query.set("name", normalizedName);
312
- if (params.metric) {
313
- query.set("metric", params.metric);
314
- }
315
- if (params.label?.trim()) {
316
- query.set("label", params.label.trim());
317
- }
318
- if (params.style) {
319
- query.set("style", params.style);
320
- }
321
- const raw = await client.requestJson(
322
- `/skills/badge?${query.toString()}`,
323
- { method: "GET" }
324
- );
325
- return client.parseWithSchema(
326
- raw,
327
- skillBadgeResponseSchema,
328
- "skill badge response"
329
- );
330
- }
331
- async function getSkillStatus(client, params) {
332
- const normalizedName = requireTrimmedString(params.name, "name");
333
- const query = new URLSearchParams();
334
- query.set("name", normalizedName);
335
- if (params.version?.trim()) {
336
- query.set("version", params.version.trim());
337
- }
338
- const raw = await client.requestJson(
339
- `/skills/status?${query.toString()}`,
340
- { method: "GET" }
341
- );
342
- return client.parseWithSchema(
343
- raw,
344
- skillStatusResponseSchema,
345
- "skill status response"
346
- );
347
- }
348
- async function getSkillStatusByRepo(client, params) {
349
- const repo = requireTrimmedString(params.repo, "repo");
350
- const skillDir = requireTrimmedString(params.skillDir, "skillDir");
351
- const query = new URLSearchParams();
352
- query.set("repo", repo);
353
- query.set("skillDir", skillDir);
354
- if (params.ref?.trim()) {
355
- query.set("ref", params.ref.trim());
356
- }
357
- const raw = await client.requestJson(
358
- `/skills/status/by-repo?${query.toString()}`,
359
- { method: "GET" }
360
- );
361
- return client.parseWithSchema(
362
- raw,
363
- skillStatusResponseSchema,
364
- "skill status response"
365
- );
366
- }
367
- async function getSkillConversionSignalsByRepo(client, params) {
368
- const repo = requireTrimmedString(params.repo, "repo");
369
- const skillDir = requireTrimmedString(params.skillDir, "skillDir");
370
- const query = new URLSearchParams();
371
- query.set("repo", repo);
372
- query.set("skillDir", skillDir);
373
- if (params.ref?.trim()) {
374
- query.set("ref", params.ref.trim());
375
- }
376
- const raw = await client.requestJson(
377
- `/skills/conversion-signals/by-repo?${query.toString()}`,
378
- { method: "GET" }
379
- );
380
- return client.parseWithSchema(
381
- raw,
382
- skillConversionSignalsResponseSchema,
383
- "skill conversion signals response"
384
- );
385
- }
386
- async function uploadSkillPreviewFromGithubOidc(client, payload) {
387
- const token = requireTrimmedString(payload.token, "token");
388
- const raw = await client.requestJson(
389
- "/skills/preview/github-oidc",
390
- {
391
- method: "POST",
392
- body: payload.report,
393
- headers: {
394
- "content-type": "application/json",
395
- authorization: `Bearer ${token}`
61
+ if (txBody.freeze) {
62
+ const networkFreeze = this.parseNetworkFreezeFromProto(txBody.freeze);
63
+ if (networkFreeze) {
64
+ return {
65
+ type: "FREEZE",
66
+ humanReadableType: "Network Freeze",
67
+ freeze: networkFreeze
68
+ };
396
69
  }
397
70
  }
398
- );
399
- return client.parseWithSchema(
400
- raw,
401
- skillPreviewRecordSchema,
402
- "skill preview record response"
403
- );
404
- }
405
- async function getSkillPreview(client, params) {
406
- const normalizedName = requireTrimmedString(params.name, "name");
407
- const query = new URLSearchParams();
408
- query.set("name", normalizedName);
409
- if (params.version?.trim()) {
410
- query.set("version", params.version.trim());
411
- }
412
- const raw = await client.requestJson(
413
- `/skills/preview?${query.toString()}`,
414
- { method: "GET" }
415
- );
416
- return client.parseWithSchema(
417
- raw,
418
- skillPreviewLookupResponseSchema,
419
- "skill preview response"
420
- );
421
- }
422
- async function getSkillPreviewByRepo(client, params) {
423
- const repo = requireTrimmedString(params.repo, "repo");
424
- const skillDir = requireTrimmedString(params.skillDir, "skillDir");
425
- const query = new URLSearchParams();
426
- query.set("repo", repo);
427
- query.set("skillDir", skillDir);
428
- if (params.ref?.trim()) {
429
- query.set("ref", params.ref.trim());
430
- }
431
- const raw = await client.requestJson(
432
- `/skills/preview/by-repo?${query.toString()}`,
433
- { method: "GET" }
434
- );
435
- return client.parseWithSchema(
436
- raw,
437
- skillPreviewLookupResponseSchema,
438
- "skill preview by repo response"
439
- );
440
- }
441
- async function getSkillPreviewById(client, previewId) {
442
- const normalizedPreviewId = requireTrimmedString(previewId, "previewId");
443
- const raw = await client.requestJson(
444
- `/skills/preview/${encodeURIComponent(normalizedPreviewId)}`,
445
- { method: "GET" }
446
- );
447
- return client.parseWithSchema(
448
- raw,
449
- skillPreviewLookupResponseSchema,
450
- "skill preview by id response"
451
- );
452
- }
453
- async function getSkillInstall(client, skillRef) {
454
- const normalizedSkillRef = requireTrimmedString(skillRef, "skillRef");
455
- const raw = await client.requestJson(
456
- `/skills/${encodeURIComponent(normalizedSkillRef)}/install`,
457
- { method: "GET" }
458
- );
459
- return client.parseWithSchema(
460
- raw,
461
- skillInstallResponseSchema,
462
- "skill install response"
463
- );
464
- }
465
- async function recordSkillInstallCopy(client, skillRef, payload = {}) {
466
- const normalizedSkillRef = requireTrimmedString(skillRef, "skillRef");
467
- const raw = await client.requestJson(
468
- `/skills/${encodeURIComponent(normalizedSkillRef)}/telemetry/install-copy`,
469
- {
470
- method: "POST",
471
- body: payload,
472
- headers: { "content-type": "application/json" }
71
+ if (txBody.systemDelete) {
72
+ const systemDelete = this.parseSystemDeleteFromProto(txBody.systemDelete);
73
+ if (systemDelete) {
74
+ return {
75
+ type: "SYSTEMDELETE",
76
+ humanReadableType: "System Delete",
77
+ systemDelete
78
+ };
79
+ }
473
80
  }
474
- );
475
- return client.parseWithSchema(
476
- raw,
477
- skillInstallCopyTelemetryResponseSchema,
478
- "skill install copy telemetry response"
479
- );
480
- }
481
- async function listSkillTags(client) {
482
- const raw = await client.requestJson("/skills/tags", {
483
- method: "GET"
484
- });
485
- return client.parseWithSchema(
486
- raw,
487
- skillRegistryTagsResponseSchema,
488
- "skill tags response"
489
- );
490
- }
491
- async function listSkillCategories(client) {
492
- const raw = await client.requestJson("/skills/categories", {
493
- method: "GET"
494
- });
495
- return client.parseWithSchema(
496
- raw,
497
- skillRegistryCategoriesResponseSchema,
498
- "skill categories response"
499
- );
500
- }
501
- async function resolveSkillMarkdown(client, skillRef) {
502
- const normalizedSkillRef = requireTrimmedString(skillRef, "skillRef");
503
- const response = await client.request(
504
- `/skills/${encodeURIComponent(normalizedSkillRef)}/SKILL.md`,
505
- {
506
- method: "GET",
507
- headers: {
508
- accept: "text/markdown, text/plain;q=0.9, */*;q=0.8"
81
+ if (txBody.systemUndelete) {
82
+ const systemUndelete = this.parseSystemUndeleteFromProto(
83
+ txBody.systemUndelete
84
+ );
85
+ if (systemUndelete) {
86
+ return {
87
+ type: "SYSTEMUNDELETE",
88
+ humanReadableType: "System Undelete",
89
+ systemUndelete
90
+ };
509
91
  }
510
92
  }
511
- );
512
- return response.text();
513
- }
514
- async function resolveSkillManifest(client, skillRef) {
515
- const normalizedSkillRef = requireTrimmedString(skillRef, "skillRef");
516
- const raw = await client.requestJson(
517
- `/skills/${encodeURIComponent(normalizedSkillRef)}/manifest`,
518
- {
519
- method: "GET"
93
+ if (txBody.nodeCreate) {
94
+ const nodeCreate = this.parseNodeCreateFromProto(txBody.nodeCreate);
95
+ if (nodeCreate) {
96
+ return {
97
+ type: "NODECREATE",
98
+ humanReadableType: "Node Create",
99
+ nodeCreate
100
+ };
101
+ }
520
102
  }
521
- );
522
- return client.parseWithSchema(
523
- raw,
524
- skillResolverManifestResponseSchema,
525
- "skill resolver manifest response"
526
- );
527
- }
528
- async function getSkillVoteStatus(client, params) {
529
- const normalizedName = requireTrimmedString(params.name, "name");
530
- const query = new URLSearchParams();
531
- query.set("name", normalizedName);
532
- const raw = await client.requestJson(
533
- `/skills/vote?${query.toString()}`,
534
- { method: "GET" }
535
- );
536
- return client.parseWithSchema(
537
- raw,
538
- skillRegistryVoteStatusResponseSchema,
539
- "skill registry vote status response"
540
- );
541
- }
542
- async function setSkillVote(client, payload) {
543
- const normalizedName = requireTrimmedString(payload.name, "name");
544
- const raw = await client.requestJson("/skills/vote", {
545
- method: "POST",
546
- body: { name: normalizedName, upvoted: payload.upvoted },
547
- headers: { "content-type": "application/json" }
548
- });
549
- return client.parseWithSchema(
550
- raw,
551
- skillRegistryVoteStatusResponseSchema,
552
- "skill registry vote status response"
553
- );
554
- }
555
- async function requestSkillVerification(client, payload) {
556
- const normalizedName = requireTrimmedString(payload.name, "name");
557
- const raw = await client.requestJson(
558
- "/skills/verification/request",
559
- {
560
- method: "POST",
561
- body: {
562
- name: normalizedName,
563
- version: payload.version,
564
- tier: payload.tier
565
- },
566
- headers: { "content-type": "application/json" }
103
+ if (txBody.nodeUpdate) {
104
+ const nodeUpdate = this.parseNodeUpdateFromProto(txBody.nodeUpdate);
105
+ if (nodeUpdate) {
106
+ return {
107
+ type: "NODEUPDATE",
108
+ humanReadableType: "Node Update",
109
+ nodeUpdate
110
+ };
111
+ }
112
+ }
113
+ if (txBody.nodeDelete) {
114
+ const nodeDelete = this.parseNodeDeleteFromProto(txBody.nodeDelete);
115
+ if (nodeDelete) {
116
+ return {
117
+ type: "NODEDELETE",
118
+ humanReadableType: "Node Delete",
119
+ nodeDelete
120
+ };
121
+ }
122
+ }
123
+ return {};
124
+ }
125
+ /**
126
+ * Extract utility data from Transaction internal fields
127
+ * This handles cases where data is stored in Transaction object internals
128
+ */
129
+ static parseFromTransactionInternals(transaction) {
130
+ try {
131
+ const tx = transaction;
132
+ if (hasTransactionType(transaction, "utilPrng")) {
133
+ const utilPrng = {};
134
+ if (tx._range && tx._range !== 0) {
135
+ utilPrng.range = tx._range;
136
+ }
137
+ return {
138
+ type: "PRNG",
139
+ humanReadableType: "Pseudo Random Number",
140
+ utilPrng
141
+ };
142
+ }
143
+ if (hasTransactionType(transaction, "freeze")) {
144
+ const networkFreeze = {};
145
+ if (tx._startTime) {
146
+ networkFreeze.startTime = tx._startTime.toString();
147
+ }
148
+ if (tx._endTime) {
149
+ networkFreeze.endTime = tx._endTime.toString();
150
+ }
151
+ if (tx._updateFile) {
152
+ networkFreeze.updateFile = tx._updateFile.toString();
153
+ }
154
+ if (tx._fileHash) {
155
+ networkFreeze.fileHash = Buffer.from(tx._fileHash).toString("hex");
156
+ }
157
+ if (tx._freezeType) {
158
+ networkFreeze.freezeType = tx._freezeType;
159
+ }
160
+ return {
161
+ type: "FREEZE",
162
+ humanReadableType: "Network Freeze",
163
+ freeze: networkFreeze
164
+ };
165
+ }
166
+ if (hasTransactionType(transaction, "systemDelete")) {
167
+ const systemDelete = {};
168
+ if (tx._fileId) {
169
+ systemDelete.fileId = tx._fileId.toString();
170
+ } else if (tx._contractId) {
171
+ systemDelete.contractId = tx._contractId.toString();
172
+ }
173
+ if (tx._expirationTime) {
174
+ systemDelete.expirationTime = tx._expirationTime.toString();
175
+ }
176
+ return {
177
+ type: "SYSTEMDELETE",
178
+ humanReadableType: "System Delete",
179
+ systemDelete
180
+ };
181
+ }
182
+ if (hasTransactionType(transaction, "systemUndelete")) {
183
+ const systemUndelete = {};
184
+ if (tx._fileId) {
185
+ systemUndelete.fileId = tx._fileId.toString();
186
+ } else if (tx._contractId) {
187
+ systemUndelete.contractId = tx._contractId.toString();
188
+ }
189
+ return {
190
+ type: "SYSTEMUNDELETE",
191
+ humanReadableType: "System Undelete",
192
+ systemUndelete
193
+ };
194
+ }
195
+ return {};
196
+ } catch (error) {
197
+ return {};
567
198
  }
568
- );
569
- return client.parseWithSchema(
570
- raw,
571
- skillVerificationRequestCreateResponseSchema,
572
- "skill verification request create response"
573
- );
574
- }
575
- async function getSkillVerificationStatus(client, params) {
576
- const normalizedName = requireTrimmedString(params.name, "name");
577
- const query = new URLSearchParams();
578
- query.set("name", normalizedName);
579
- if (params.version) {
580
- query.set("version", params.version);
581
199
  }
582
- const raw = await client.requestJson(
583
- `/skills/verification/status?${query.toString()}`,
584
- { method: "GET" }
585
- );
586
- return client.parseWithSchema(
587
- raw,
588
- skillVerificationStatusResponseSchema,
589
- "skill verification status response"
590
- );
591
- }
592
- async function createSkillDomainProofChallenge(client, payload) {
593
- const normalizedName = requireTrimmedString(payload.name, "name");
594
- const raw = await client.requestJson(
595
- "/skills/verification/domain/challenge",
596
- {
597
- method: "POST",
598
- body: {
599
- name: normalizedName,
600
- version: payload.version,
601
- domain: payload.domain
602
- },
603
- headers: { "content-type": "application/json" }
200
+ /**
201
+ * Parse Network Freeze from protobuf data
202
+ */
203
+ static parseNetworkFreezeFromProto(body) {
204
+ if (!body) return void 0;
205
+ const data = {};
206
+ if (body.startTime?.seconds) {
207
+ data.startTime = `${Long.fromValue(
208
+ body.startTime.seconds
209
+ ).toString()}.${body.startTime.nanos ?? 0}`;
604
210
  }
605
- );
606
- return client.parseWithSchema(
607
- raw,
608
- skillVerificationDomainProofChallengeResponseSchema,
609
- "skill domain proof challenge response"
610
- );
611
- }
612
- async function verifySkillDomainProof(client, payload) {
613
- const normalizedName = requireTrimmedString(payload.name, "name");
614
- const challengeToken = requireTrimmedString(
615
- payload.challengeToken,
616
- "challengeToken"
617
- );
618
- const raw = await client.requestJson(
619
- "/skills/verification/domain/verify",
620
- {
621
- method: "POST",
622
- body: {
623
- name: normalizedName,
624
- version: payload.version,
625
- domain: payload.domain,
626
- challengeToken
627
- },
628
- headers: { "content-type": "application/json" }
211
+ if (body.updateFile) {
212
+ data.updateFile = new FileId(
213
+ body.updateFile.shardNum ?? 0,
214
+ body.updateFile.realmNum ?? 0,
215
+ body.updateFile.fileNum ?? 0
216
+ ).toString();
217
+ }
218
+ if (body.fileHash && body.fileHash.length > 0) {
219
+ data.fileHash = Buffer.from(body.fileHash).toString("hex");
220
+ }
221
+ if (body.freezeType !== void 0) {
222
+ const freezeTypes = [
223
+ "FREEZE_ONLY",
224
+ "PREPARE_UPGRADE",
225
+ "FREEZE_UPGRADE",
226
+ "FREEZE_ABORT"
227
+ ];
228
+ data.freezeType = freezeTypes[body.freezeType] || "FREEZE_ONLY";
629
229
  }
630
- );
631
- return client.parseWithSchema(
632
- raw,
633
- skillVerificationDomainProofVerifyResponseSchema,
634
- "skill domain proof verify response"
635
- );
230
+ return data;
231
+ }
232
+ /**
233
+ * Parse System Delete from protobuf data
234
+ */
235
+ static parseSystemDeleteFromProto(body) {
236
+ if (!body) return void 0;
237
+ const data = {};
238
+ if (body.fileID) {
239
+ data.fileId = new FileId(
240
+ body.fileID.shardNum ?? 0,
241
+ body.fileID.realmNum ?? 0,
242
+ body.fileID.fileNum ?? 0
243
+ ).toString();
244
+ } else if (body.contractID) {
245
+ data.contractId = new ContractId(
246
+ body.contractID.shardNum ?? 0,
247
+ body.contractID.realmNum ?? 0,
248
+ body.contractID.contractNum ?? 0
249
+ ).toString();
250
+ }
251
+ if (body.expirationTime?.seconds) {
252
+ data.expirationTime = Long.fromValue(
253
+ body.expirationTime.seconds
254
+ ).toString();
255
+ }
256
+ return data;
257
+ }
258
+ /**
259
+ * Parse System Undelete from protobuf data
260
+ */
261
+ static parseSystemUndeleteFromProto(body) {
262
+ if (!body) return void 0;
263
+ const data = {};
264
+ if (body.fileID) {
265
+ data.fileId = new FileId(
266
+ body.fileID.shardNum ?? 0,
267
+ body.fileID.realmNum ?? 0,
268
+ body.fileID.fileNum ?? 0
269
+ ).toString();
270
+ } else if (body.contractID) {
271
+ data.contractId = new ContractId(
272
+ body.contractID.shardNum ?? 0,
273
+ body.contractID.realmNum ?? 0,
274
+ body.contractID.contractNum ?? 0
275
+ ).toString();
276
+ }
277
+ return data;
278
+ }
279
+ /**
280
+ * Parse Node Create from protobuf data
281
+ */
282
+ static parseNodeCreateFromProto(body) {
283
+ if (!body) return void 0;
284
+ const data = {};
285
+ if (body.nodeId !== void 0) {
286
+ data.nodeId = Long.fromValue(body.nodeId).toNumber();
287
+ }
288
+ return data;
289
+ }
290
+ /**
291
+ * Parse Node Update from protobuf data
292
+ */
293
+ static parseNodeUpdateFromProto(body) {
294
+ if (!body) return void 0;
295
+ const data = {};
296
+ if (body.nodeId !== void 0) {
297
+ data.nodeId = Long.fromValue(body.nodeId).toNumber();
298
+ }
299
+ return data;
300
+ }
301
+ /**
302
+ * Parse Node Delete from protobuf data
303
+ */
304
+ static parseNodeDeleteFromProto(body) {
305
+ if (!body) return void 0;
306
+ const data = {};
307
+ if (body.nodeId !== void 0) {
308
+ data.nodeId = Long.fromValue(body.nodeId).toNumber();
309
+ }
310
+ return data;
311
+ }
312
+ static parseUtilPrng(body) {
313
+ if (!body) return void 0;
314
+ const data = {};
315
+ if (body.range && body.range !== 0) {
316
+ data.range = body.range;
317
+ }
318
+ return data;
319
+ }
320
+ static parseFreeze(body) {
321
+ return this.parseNetworkFreezeFromProto(body);
322
+ }
323
+ /**
324
+ * Parse Utility/System Service transaction from Transaction object
325
+ * This is the unified entry point that delegates to the comprehensive parsing logic
326
+ */
327
+ static parseFromTransactionObject(transaction) {
328
+ return this.parseUtilTransaction(transaction);
329
+ }
636
330
  }
637
331
  export {
638
- createSkillDomainProofChallenge,
639
- getMySkillsList,
640
- getRecommendedSkillVersion,
641
- getSkillBadge,
642
- getSkillConversionSignalsByRepo,
643
- getSkillDeprecations,
644
- getSkillInstall,
645
- getSkillOwnership,
646
- getSkillPreview,
647
- getSkillPreviewById,
648
- getSkillPreviewByRepo,
649
- getSkillPublishJob,
650
- getSkillSecurityBreakdown,
651
- getSkillStatus,
652
- getSkillStatusByRepo,
653
- getSkillVerificationStatus,
654
- getSkillVoteStatus,
655
- getSkillsCatalog,
656
- listMySkills,
657
- listSkillCategories,
658
- listSkillTags,
659
- listSkillVersions,
660
- listSkills,
661
- publishSkill,
662
- quoteSkillPublish,
663
- quoteSkillPublishPreview,
664
- recordSkillInstallCopy,
665
- requestSkillVerification,
666
- resolveSkillManifest,
667
- resolveSkillMarkdown,
668
- setRecommendedSkillVersion,
669
- setSkillDeprecation,
670
- setSkillVote,
671
- skillsConfig,
672
- uploadSkillPreviewFromGithubOidc,
673
- verifySkillDomainProof
332
+ UtilParser
674
333
  };
675
334
  //# sourceMappingURL=standards-sdk.es174.js.map