@hashgraphonline/standards-sdk 0.1.146-chore-jsr-improvements.canary.01d3174.92 → 0.1.146-chore-jsr-improvements.canary.62a5b19.93

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 (165) hide show
  1. package/dist/cjs/services/registry-broker/client/adapters.d.ts +4 -19
  2. package/dist/cjs/services/registry-broker/client/adapters.d.ts.map +1 -1
  3. package/dist/cjs/services/registry-broker/client/agents.d.ts +4 -15
  4. package/dist/cjs/services/registry-broker/client/agents.d.ts.map +1 -1
  5. package/dist/cjs/services/registry-broker/client/base-client.d.ts +51 -1
  6. package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
  7. package/dist/cjs/services/registry-broker/client/chat-history.d.ts +4 -22
  8. package/dist/cjs/services/registry-broker/client/chat-history.d.ts.map +1 -1
  9. package/dist/cjs/services/registry-broker/client/chat.d.ts +4 -32
  10. package/dist/cjs/services/registry-broker/client/chat.d.ts.map +1 -1
  11. package/dist/cjs/services/registry-broker/client/credits.d.ts +4 -39
  12. package/dist/cjs/services/registry-broker/client/credits.d.ts.map +1 -1
  13. package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts +4 -34
  14. package/dist/cjs/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -1
  15. package/dist/cjs/services/registry-broker/client/encryption.d.ts +4 -32
  16. package/dist/cjs/services/registry-broker/client/encryption.d.ts.map +1 -1
  17. package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts +4 -9
  18. package/dist/cjs/services/registry-broker/client/ledger-auth.d.ts.map +1 -1
  19. package/dist/cjs/services/registry-broker/client.d.ts +4 -0
  20. package/dist/cjs/services/registry-broker/client.d.ts.map +1 -1
  21. package/dist/cjs/standards-sdk.cjs +3 -3
  22. package/dist/cjs/standards-sdk.cjs.map +1 -1
  23. package/dist/es/services/registry-broker/client/adapters.d.ts +4 -19
  24. package/dist/es/services/registry-broker/client/adapters.d.ts.map +1 -1
  25. package/dist/es/services/registry-broker/client/agents.d.ts +4 -15
  26. package/dist/es/services/registry-broker/client/agents.d.ts.map +1 -1
  27. package/dist/es/services/registry-broker/client/base-client.d.ts +51 -1
  28. package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
  29. package/dist/es/services/registry-broker/client/chat-history.d.ts +4 -22
  30. package/dist/es/services/registry-broker/client/chat-history.d.ts.map +1 -1
  31. package/dist/es/services/registry-broker/client/chat.d.ts +4 -32
  32. package/dist/es/services/registry-broker/client/chat.d.ts.map +1 -1
  33. package/dist/es/services/registry-broker/client/credits.d.ts +4 -39
  34. package/dist/es/services/registry-broker/client/credits.d.ts.map +1 -1
  35. package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts +4 -34
  36. package/dist/es/services/registry-broker/client/encrypted-chat-manager.d.ts.map +1 -1
  37. package/dist/es/services/registry-broker/client/encryption.d.ts +4 -32
  38. package/dist/es/services/registry-broker/client/encryption.d.ts.map +1 -1
  39. package/dist/es/services/registry-broker/client/ledger-auth.d.ts +4 -9
  40. package/dist/es/services/registry-broker/client/ledger-auth.d.ts.map +1 -1
  41. package/dist/es/services/registry-broker/client.d.ts +4 -0
  42. package/dist/es/services/registry-broker/client.d.ts.map +1 -1
  43. package/dist/es/standards-sdk.es.js +9 -16
  44. package/dist/es/standards-sdk.es.js.map +1 -1
  45. package/dist/es/standards-sdk.es101.js +1 -1
  46. package/dist/es/standards-sdk.es103.js +1 -1
  47. package/dist/es/standards-sdk.es109.js +2 -9
  48. package/dist/es/standards-sdk.es109.js.map +1 -1
  49. package/dist/es/standards-sdk.es11.js +1 -1
  50. package/dist/es/standards-sdk.es110.js +5 -5
  51. package/dist/es/standards-sdk.es12.js +1 -1
  52. package/dist/es/standards-sdk.es120.js +1 -1
  53. package/dist/es/standards-sdk.es121.js +1 -1
  54. package/dist/es/standards-sdk.es122.js +5 -5
  55. package/dist/es/standards-sdk.es124.js +1 -1
  56. package/dist/es/standards-sdk.es125.js +1 -1
  57. package/dist/es/standards-sdk.es127.js +624 -155
  58. package/dist/es/standards-sdk.es127.js.map +1 -1
  59. package/dist/es/standards-sdk.es128.js +16 -103
  60. package/dist/es/standards-sdk.es128.js.map +1 -1
  61. package/dist/es/standards-sdk.es129.js +72 -112
  62. package/dist/es/standards-sdk.es129.js.map +1 -1
  63. package/dist/es/standards-sdk.es130.js +75 -235
  64. package/dist/es/standards-sdk.es130.js.map +1 -1
  65. package/dist/es/standards-sdk.es131.js +53 -173
  66. package/dist/es/standards-sdk.es131.js.map +1 -1
  67. package/dist/es/standards-sdk.es132.js +156 -119
  68. package/dist/es/standards-sdk.es132.js.map +1 -1
  69. package/dist/es/standards-sdk.es133.js +8 -327
  70. package/dist/es/standards-sdk.es133.js.map +1 -1
  71. package/dist/es/standards-sdk.es134.js +74 -613
  72. package/dist/es/standards-sdk.es134.js.map +1 -1
  73. package/dist/es/standards-sdk.es135.js +61 -13
  74. package/dist/es/standards-sdk.es135.js.map +1 -1
  75. package/dist/es/standards-sdk.es136.js +30 -81
  76. package/dist/es/standards-sdk.es136.js.map +1 -1
  77. package/dist/es/standards-sdk.es137.js +34 -87
  78. package/dist/es/standards-sdk.es137.js.map +1 -1
  79. package/dist/es/standards-sdk.es138.js +28 -60
  80. package/dist/es/standards-sdk.es138.js.map +1 -1
  81. package/dist/es/standards-sdk.es139.js +933 -159
  82. package/dist/es/standards-sdk.es139.js.map +1 -1
  83. package/dist/es/standards-sdk.es140.js +12289 -7
  84. package/dist/es/standards-sdk.es140.js.map +1 -1
  85. package/dist/es/standards-sdk.es141.js +122 -70
  86. package/dist/es/standards-sdk.es141.js.map +1 -1
  87. package/dist/es/standards-sdk.es142.js +35 -58
  88. package/dist/es/standards-sdk.es142.js.map +1 -1
  89. package/dist/es/standards-sdk.es143.js +56 -30
  90. package/dist/es/standards-sdk.es143.js.map +1 -1
  91. package/dist/es/standards-sdk.es144.js +84 -34
  92. package/dist/es/standards-sdk.es144.js.map +1 -1
  93. package/dist/es/standards-sdk.es145.js +17 -28
  94. package/dist/es/standards-sdk.es145.js.map +1 -1
  95. package/dist/es/standards-sdk.es146.js +152 -118
  96. package/dist/es/standards-sdk.es146.js.map +1 -1
  97. package/dist/es/standards-sdk.es147.js +314 -34
  98. package/dist/es/standards-sdk.es147.js.map +1 -1
  99. package/dist/es/standards-sdk.es148.js +342 -13
  100. package/dist/es/standards-sdk.es148.js.map +1 -1
  101. package/dist/es/standards-sdk.es149.js +395 -12231
  102. package/dist/es/standards-sdk.es149.js.map +1 -1
  103. package/dist/es/standards-sdk.es150.js +331 -959
  104. package/dist/es/standards-sdk.es150.js.map +1 -1
  105. package/dist/es/standards-sdk.es151.js +69 -49
  106. package/dist/es/standards-sdk.es151.js.map +1 -1
  107. package/dist/es/standards-sdk.es152.js +121 -66
  108. package/dist/es/standards-sdk.es152.js.map +1 -1
  109. package/dist/es/standards-sdk.es16.js +2 -9
  110. package/dist/es/standards-sdk.es16.js.map +1 -1
  111. package/dist/es/standards-sdk.es18.js +5 -12
  112. package/dist/es/standards-sdk.es18.js.map +1 -1
  113. package/dist/es/standards-sdk.es19.js +3 -10
  114. package/dist/es/standards-sdk.es19.js.map +1 -1
  115. package/dist/es/standards-sdk.es22.js +1 -1
  116. package/dist/es/standards-sdk.es27.js +5 -12
  117. package/dist/es/standards-sdk.es27.js.map +1 -1
  118. package/dist/es/standards-sdk.es30.js +1 -1
  119. package/dist/es/standards-sdk.es31.js +1 -1
  120. package/dist/es/standards-sdk.es35.js +3 -10
  121. package/dist/es/standards-sdk.es35.js.map +1 -1
  122. package/dist/es/standards-sdk.es36.js +3 -3
  123. package/dist/es/standards-sdk.es37.js +1 -1
  124. package/dist/es/standards-sdk.es4.js +1 -1
  125. package/dist/es/standards-sdk.es53.js +1 -1
  126. package/dist/es/standards-sdk.es56.js +1 -1
  127. package/dist/es/standards-sdk.es58.js +1 -1
  128. package/dist/es/standards-sdk.es59.js +1 -1
  129. package/dist/es/standards-sdk.es60.js +3 -10
  130. package/dist/es/standards-sdk.es60.js.map +1 -1
  131. package/dist/es/standards-sdk.es62.js +1 -1
  132. package/dist/es/standards-sdk.es64.js +1 -1
  133. package/dist/es/standards-sdk.es65.js +2 -2
  134. package/dist/es/standards-sdk.es68.js +2 -2
  135. package/dist/es/standards-sdk.es69.js +1 -1
  136. package/dist/es/standards-sdk.es7.js +1 -1
  137. package/dist/es/standards-sdk.es71.js +1 -1
  138. package/dist/es/standards-sdk.es76.js +1 -1
  139. package/dist/es/standards-sdk.es77.js +2 -9
  140. package/dist/es/standards-sdk.es77.js.map +1 -1
  141. package/dist/es/standards-sdk.es78.js +1 -1
  142. package/dist/es/standards-sdk.es81.js +1 -1
  143. package/dist/es/standards-sdk.es83.js +1 -1
  144. package/dist/es/standards-sdk.es87.js +3 -3
  145. package/dist/es/standards-sdk.es91.js +1 -1
  146. package/dist/es/standards-sdk.es92.js +1 -1
  147. package/dist/es/standards-sdk.es97.js +1 -1
  148. package/dist/es/standards-sdk.es99.js +1 -1
  149. package/package.json +1 -1
  150. package/dist/es/standards-sdk.es153.js +0 -175
  151. package/dist/es/standards-sdk.es153.js.map +0 -1
  152. package/dist/es/standards-sdk.es154.js +0 -325
  153. package/dist/es/standards-sdk.es154.js.map +0 -1
  154. package/dist/es/standards-sdk.es155.js +0 -349
  155. package/dist/es/standards-sdk.es155.js.map +0 -1
  156. package/dist/es/standards-sdk.es156.js +0 -456
  157. package/dist/es/standards-sdk.es156.js.map +0 -1
  158. package/dist/es/standards-sdk.es157.js +0 -334
  159. package/dist/es/standards-sdk.es157.js.map +0 -1
  160. package/dist/es/standards-sdk.es158.js +0 -79
  161. package/dist/es/standards-sdk.es158.js.map +0 -1
  162. package/dist/es/standards-sdk.es159.js +0 -242
  163. package/dist/es/standards-sdk.es159.js.map +0 -1
  164. package/dist/es/standards-sdk.es160.js +0 -247
  165. package/dist/es/standards-sdk.es160.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es150.js","sources":["../../src/services/registry-broker/schemas.ts"],"sourcesContent":["import { z } from 'zod';\nimport { adapterDeclarationSchema } from '../../hcs-21/types';\n\nexport enum AIAgentType {\n MANUAL = 0,\n AUTONOMOUS = 1,\n}\n\nexport enum AIAgentCapability {\n TEXT_GENERATION = 0,\n IMAGE_GENERATION = 1,\n AUDIO_GENERATION = 2,\n VIDEO_GENERATION = 3,\n CODE_GENERATION = 4,\n LANGUAGE_TRANSLATION = 5,\n SUMMARIZATION_EXTRACTION = 6,\n KNOWLEDGE_RETRIEVAL = 7,\n DATA_INTEGRATION = 8,\n MARKET_INTELLIGENCE = 9,\n TRANSACTION_ANALYTICS = 10,\n SMART_CONTRACT_AUDIT = 11,\n GOVERNANCE_FACILITATION = 12,\n SECURITY_MONITORING = 13,\n COMPLIANCE_ANALYSIS = 14,\n FRAUD_DETECTION = 15,\n MULTI_AGENT_COORDINATION = 16,\n API_INTEGRATION = 17,\n WORKFLOW_AUTOMATION = 18,\n}\n\ntype JsonValue =\n | string\n | number\n | boolean\n | null\n | JsonValue[]\n | { [key: string]: JsonValue };\n\nconst capabilitySchema = z.nativeEnum(AIAgentCapability);\nconst capabilityValueSchema = z.union([z.number(), z.string()]);\nconst jsonPrimitiveSchema = z.union([\n z.string(),\n z.number(),\n z.boolean(),\n z.null(),\n]);\nconst jsonValueSchema: z.ZodType<JsonValue> = z.lazy(() =>\n z.union([\n jsonPrimitiveSchema,\n z.array(jsonValueSchema),\n z.record(jsonValueSchema),\n ]),\n);\n\nconst agentProfileSchema = z\n .object({\n version: z.string(),\n type: z.number(),\n display_name: z.string(),\n alias: z.string().optional(),\n bio: z.string().optional(),\n socials: z.array(jsonValueSchema).optional(),\n aiAgent: z\n .object({\n type: z.nativeEnum(AIAgentType),\n creator: z.string().optional(),\n model: z.string().optional(),\n capabilities: z\n .array(z.union([capabilitySchema, z.number()]))\n .optional(),\n })\n .optional(),\n uaid: z.string().optional(),\n })\n .catchall(jsonValueSchema);\n\nconst cipherEnvelopeRecipientSchema = z.object({\n uaid: z.string().optional(),\n ledgerAccountId: z.string().optional(),\n userId: z.string().optional(),\n email: z.string().optional(),\n encryptedShare: z.string(),\n});\n\nconst cipherEnvelopeSchema = z.object({\n algorithm: z.string(),\n ciphertext: z.string(),\n nonce: z.string(),\n associatedData: z.string().optional(),\n keyLocator: z\n .object({\n sessionId: z.string().optional(),\n revision: z.number().optional(),\n })\n .optional(),\n recipients: z.array(cipherEnvelopeRecipientSchema),\n});\n\nconst peerSummarySchema = z.object({\n keyType: z.string(),\n publicKey: z.string(),\n uaid: z.string().optional(),\n ledgerAccountId: z.string().optional(),\n userId: z.string().optional(),\n email: z.string().optional(),\n});\n\nconst handshakeParticipantSchema = z.object({\n role: z.enum(['requester', 'responder']),\n uaid: z.string().optional(),\n userId: z.string().optional(),\n ledgerAccountId: z.string().optional(),\n keyType: z.string(),\n longTermPublicKey: z.string().optional(),\n ephemeralPublicKey: z.string(),\n signature: z.string().optional(),\n metadata: z.record(jsonValueSchema).optional(),\n submittedAt: z.string(),\n});\n\nconst encryptionHandshakeRecordSchema = z.object({\n sessionId: z.string(),\n algorithm: z.string(),\n createdAt: z.string(),\n expiresAt: z.number(),\n status: z.enum(['pending', 'complete']),\n requester: handshakeParticipantSchema.optional(),\n responder: handshakeParticipantSchema.optional(),\n});\n\nconst sessionEncryptionSummarySchema = z.object({\n enabled: z.boolean(),\n algorithm: z.string(),\n requireCiphertext: z.boolean(),\n requester: peerSummarySchema.nullable().optional(),\n responder: peerSummarySchema.nullable().optional(),\n handshake: encryptionHandshakeRecordSchema.nullable().optional(),\n});\n\nconst chatHistoryEntrySchema = z.object({\n messageId: z.string(),\n role: z.enum(['user', 'agent']),\n content: z.string(),\n timestamp: z.string(),\n cipherEnvelope: cipherEnvelopeSchema.optional(),\n metadata: z.record(jsonValueSchema).optional(),\n});\n\nconst metadataFacetSchema = z\n .record(\n z.union([\n z.array(jsonValueSchema),\n z.record(jsonValueSchema),\n jsonValueSchema,\n ]),\n )\n .optional();\n\nconst searchHitSchema = z\n .object({\n id: z.string(),\n uaid: z.string(),\n registry: z.string(),\n name: z.string(),\n description: z.string().optional(),\n capabilities: z.array(capabilityValueSchema),\n endpoints: z\n .union([z.record(jsonValueSchema), z.array(z.string())])\n .optional(),\n metadata: z.record(jsonValueSchema).optional(),\n metadataFacet: metadataFacetSchema,\n profile: agentProfileSchema.optional(),\n protocols: z.array(z.string()).optional(),\n adapter: z.string().optional(),\n originalId: z.string().optional(),\n communicationSupported: z.boolean().optional(),\n routingSupported: z.boolean().optional(),\n available: z.boolean().optional(),\n availabilityStatus: z.string().optional(),\n availabilityCheckedAt: z.string().optional(),\n availabilitySource: z.string().optional(),\n availabilityLatencyMs: z.number().optional(),\n availabilityScore: z.number().optional(),\n capabilityLabels: z.array(z.string()).optional(),\n capabilityTokens: z.array(z.string()).optional(),\n image: z.string().optional(),\n createdAt: z.string().optional(),\n updatedAt: z.string().optional(),\n lastSeen: z.string().optional(),\n lastIndexed: z.string().optional(),\n })\n .passthrough();\n\nexport const searchResponseSchema = z.object({\n hits: z.array(searchHitSchema),\n total: z.number(),\n page: z.number(),\n limit: z.number(),\n});\n\nexport const statsResponseSchema = z.object({\n totalAgents: z.number(),\n registries: z.record(z.number()),\n capabilities: z.record(z.number()),\n lastUpdate: z.string(),\n status: z.string(),\n});\n\nexport const registriesResponseSchema = z.object({\n registries: z.array(z.string()),\n});\n\nexport const popularResponseSchema = z.object({\n searches: z.array(z.string()),\n});\n\nexport const resolveResponseSchema = z.object({\n agent: searchHitSchema,\n});\n\nconst agentFeedbackSummarySchema = z.object({\n averageScore: z.number(),\n totalFeedbacks: z.number(),\n registry: z.string().optional(),\n network: z.string().optional(),\n updatedAt: z.string().optional(),\n});\n\nconst agentFeedbackEntrySchema = z.object({\n registry: z.string(),\n network: z.string().optional(),\n agentId: z.number(),\n client: z.string(),\n score: z.number(),\n tag1: z.string().nullable().optional(),\n tag2: z.string().nullable().optional(),\n revoked: z.boolean(),\n feedbackIndex: z.number().nullable().optional(),\n fileUri: z.string().nullable().optional(),\n fileHash: z.string().nullable().optional(),\n createdAt: z.string().nullable().optional(),\n});\n\nexport const agentFeedbackResponseSchema = z.object({\n uaid: z.string(),\n summary: agentFeedbackSummarySchema,\n entries: z.array(agentFeedbackEntrySchema),\n});\n\nexport const agentFeedbackEligibilityResponseSchema = z.object({\n uaid: z.string(),\n sessionId: z.string(),\n eligible: z.boolean(),\n messageCount: z.number(),\n minimumMessages: z.number(),\n reason: z.string().optional(),\n onchain: z\n .object({\n eligible: z.boolean(),\n reason: z.string().optional(),\n estimatedCredits: z.number().optional(),\n usdEstimate: z.number().optional(),\n nativeFeeEstimate: z.number().optional(),\n })\n .optional(),\n});\n\nexport const agentFeedbackSubmissionResponseSchema = z.object({\n uaid: z.string(),\n registry: z.string(),\n network: z.string().optional(),\n agentId: z.number(),\n score: z.number(),\n tag1: z.string().nullable().optional(),\n tag2: z.string().nullable().optional(),\n fileUri: z.string().nullable().optional(),\n fileHash: z.string().nullable().optional(),\n feedbackIndex: z.number().nullable().optional(),\n transactionHash: z.string().nullable().optional(),\n signature: z.string().nullable().optional(),\n submittedAt: z.string(),\n});\n\nexport const agentFeedbackIndexResponseSchema = z.object({\n page: z.number(),\n limit: z.number(),\n total: z.number(),\n items: z.array(\n z.object({\n uaid: z.string(),\n registry: z.string(),\n network: z.string().optional(),\n agentId: z.number().nullable().optional(),\n summary: agentFeedbackSummarySchema.nullable(),\n trustScore: z.number().nullable().optional(),\n }),\n ),\n});\n\nexport const agentFeedbackEntriesIndexResponseSchema = z.object({\n page: z.number(),\n limit: z.number(),\n total: z.number(),\n items: z.array(\n z.object({\n uaid: z.string(),\n entry: agentFeedbackEntrySchema,\n }),\n ),\n});\n\nexport const createSessionResponseSchema = z.object({\n sessionId: z.string(),\n uaid: z.string().nullable().optional(),\n agent: z.object({\n name: z.string(),\n description: z.string().optional(),\n capabilities: z.record(jsonValueSchema).nullable().optional(),\n skills: z.array(z.string()).optional(),\n }),\n history: z.array(chatHistoryEntrySchema).optional().default([]),\n historyTtlSeconds: z.number().nullable().optional(),\n encryption: sessionEncryptionSummarySchema.nullable().optional(),\n});\n\nexport const sendMessageResponseSchema = z.object({\n sessionId: z.string(),\n uaid: z.string().nullable().optional(),\n message: z.string(),\n timestamp: z.string(),\n rawResponse: jsonValueSchema.optional(),\n content: z.string().optional(),\n ops: z.array(z.record(jsonValueSchema)).optional(),\n history: z.array(chatHistoryEntrySchema).optional(),\n historyTtlSeconds: z.number().nullable().optional(),\n encrypted: z.boolean().optional(),\n});\n\nexport const chatHistorySnapshotResponseSchema = z.object({\n sessionId: z.string(),\n history: z.array(chatHistoryEntrySchema),\n historyTtlSeconds: z.number(),\n});\n\nexport const chatHistoryCompactionRequestSchema = z\n .object({\n preserveEntries: z.number().int().min(0).optional(),\n })\n .strict();\n\nexport const chatHistoryCompactionResponseSchema = z.object({\n sessionId: z.string(),\n history: z.array(chatHistoryEntrySchema),\n summaryEntry: chatHistoryEntrySchema,\n preservedEntries: z.array(chatHistoryEntrySchema),\n historyTtlSeconds: z.number(),\n creditsDebited: z.number(),\n metadata: z.record(jsonValueSchema).optional(),\n});\n\nexport const sessionEncryptionStatusResponseSchema = z.object({\n sessionId: z.string(),\n encryption: sessionEncryptionSummarySchema.nullable(),\n});\n\nexport const encryptionHandshakeResponseSchema = z.object({\n sessionId: z.string(),\n handshake: encryptionHandshakeRecordSchema,\n});\n\nexport const registerEncryptionKeyResponseSchema = z.object({\n id: z.string(),\n keyType: z.string(),\n publicKey: z.string(),\n uaid: z.string().nullable(),\n ledgerAccountId: z.string().nullable(),\n ledgerNetwork: z.string().nullable().optional(),\n userId: z.string().nullable().optional(),\n email: z.string().nullable().optional(),\n createdAt: z.string(),\n updatedAt: z.string(),\n});\n\nexport const ledgerChallengeResponseSchema = z.object({\n challengeId: z.string(),\n message: z.string(),\n expiresAt: z.string(),\n});\n\nconst ledgerApiKeySummarySchema = z.object({\n id: z.string(),\n label: z.string().optional(),\n prefix: z.string(),\n lastFour: z.string(),\n createdAt: z.string(),\n lastUsedAt: z.string().nullable().optional(),\n ownerType: z.literal('ledger'),\n ledgerAccountId: z.string().optional(),\n ledgerNetwork: z.string().optional(),\n ledgerNetworkCanonical: z.string().optional(),\n});\n\nexport const ledgerVerifyResponseSchema = z.object({\n key: z.string(),\n apiKey: ledgerApiKeySummarySchema,\n accountId: z.string(),\n network: z.string(),\n networkCanonical: z.string().optional(),\n});\n\nexport const protocolsResponseSchema = z.object({\n protocols: z.array(z.string()),\n});\n\nexport const detectProtocolResponseSchema = z.object({\n protocol: z.string().nullable(),\n});\n\nexport const registrySearchByNamespaceSchema = z.object({\n hits: z.array(searchHitSchema),\n total: z.number(),\n page: z.number().optional(),\n limit: z.number().optional(),\n});\n\nconst capabilityFilterValueSchema = z.union([z.string(), z.number()]);\n\nconst vectorSearchFilterSchema = z\n .object({\n capabilities: z.array(capabilityFilterValueSchema).optional(),\n type: z.enum(['ai-agents', 'mcp-servers']).optional(),\n registry: z.string().optional(),\n protocols: z.array(z.string()).optional(),\n adapter: z.array(z.string()).optional(),\n })\n .strict();\n\nexport const vectorSearchRequestSchema = z\n .object({\n query: z.string(),\n filter: vectorSearchFilterSchema.optional(),\n limit: z.number().int().min(1).max(100).optional(),\n offset: z.number().int().min(0).optional(),\n })\n .strict();\n\nconst vectorSearchHitSchema = z.object({\n agent: searchHitSchema,\n score: z.number().optional(),\n highlights: z.record(z.array(z.string())).optional(),\n});\n\nexport const vectorSearchResponseSchema = z.object({\n hits: z.array(vectorSearchHitSchema),\n total: z.number(),\n took: z.number(),\n totalAvailable: z.number().optional(),\n visible: z.number().optional(),\n limited: z.boolean().optional(),\n credits_used: z.number().optional(),\n});\n\nconst vectorStatusSchema = z.object({\n enabled: z.boolean(),\n healthy: z.boolean(),\n mode: z.enum(['disabled', 'initializing', 'healthy', 'degraded', 'error']),\n lastUpdated: z.string(),\n details: z.record(z.any()).optional(),\n lastError: z\n .object({\n message: z.string(),\n stack: z.string().optional(),\n timestamp: z.string().optional(),\n })\n .optional(),\n});\n\nexport const searchStatusResponseSchema = z.object({\n storageMode: z.string(),\n vectorStatus: vectorStatusSchema,\n});\n\nexport const websocketStatsResponseSchema = z.object({\n clients: z.number(),\n stats: z\n .object({\n totalClients: z.number().optional(),\n clientsByRegistry: z.record(z.number()).optional(),\n clientsByEventType: z.record(z.number()).optional(),\n })\n .passthrough(),\n});\n\nconst durationStatsSchema = z.object({\n p50: z.number(),\n p90: z.number(),\n p95: z.number(),\n p99: z.number(),\n});\n\nexport const metricsSummaryResponseSchema = z.object({\n http: z.object({\n requestsTotal: z.number(),\n activeConnections: z.number(),\n requestDuration: durationStatsSchema,\n }),\n search: z.object({\n queriesTotal: z.number(),\n queryDuration: durationStatsSchema,\n }),\n indexing: z.object({ agentsTotal: z.number(), crawlErrors: z.number() }),\n registration: z.object({\n total: z.number(),\n failures: z.number(),\n duration: durationStatsSchema,\n }),\n cache: z.object({\n hits: z.number(),\n misses: z.number(),\n hitRate: z.number(),\n }),\n websocket: z.object({ connections: z.number() }),\n});\n\nexport const uaidValidationResponseSchema = z.object({\n uaid: z.string(),\n valid: z.boolean(),\n formats: z.array(z.string()),\n});\n\nconst adapterConnectionSchema = z.object({\n id: z.string(),\n agentId: z.string(),\n protocol: z.string(),\n endpoint: z.string(),\n status: z.enum(['connected', 'disconnected', 'error']),\n metadata: z.record(jsonPrimitiveSchema).optional(),\n createdAt: z.string(),\n});\n\nexport const uaidConnectionStatusSchema = z.object({\n connected: z.boolean(),\n connection: adapterConnectionSchema.optional(),\n adapter: z.string().optional(),\n agentId: z.string().optional(),\n});\n\nexport const dashboardStatsResponseSchema = z.object({\n operatorId: z.string().optional(),\n adapters: z\n .array(\n z.object({\n name: z.string(),\n version: z.string(),\n status: z.string(),\n agentCount: z.number(),\n lastDiscovery: z.string(),\n registryType: z.string(),\n health: z.string(),\n }),\n )\n .optional(),\n totalAgents: z.number().optional(),\n elasticsearchDocumentCount: z.number().optional(),\n agentsByAdapter: z.record(z.number()).optional(),\n agentsByRegistry: z.record(z.number()).optional(),\n systemInfo: z\n .object({\n uptime: z.number().optional(),\n version: z.string().optional(),\n network: z.string().optional(),\n })\n .optional(),\n});\n\nconst registrationAgentSchema = z.object({\n id: z.string(),\n name: z.string(),\n type: z.string(),\n endpoint: z.string().optional(),\n capabilities: z.array(capabilityValueSchema),\n registry: z.string().optional(),\n protocol: z.string().optional(),\n profile: agentProfileSchema.optional(),\n nativeId: z.string().optional(),\n metadata: z.record(jsonValueSchema).optional(),\n});\n\nconst registrationProfileInfoSchema = z.object({\n tId: z.string().nullable(),\n sizeBytes: z.number().optional(),\n});\n\nconst profileRegistrySchema = z\n .object({\n topicId: z.string().optional(),\n sequenceNumber: z.number().optional(),\n profileReference: z.string().optional(),\n profileTopicId: z.string().optional(),\n })\n .passthrough()\n .nullable()\n .optional();\n\nconst additionalRegistryResultSchema = z.object({\n registry: z.string(),\n status: z.enum([\n 'created',\n 'duplicate',\n 'skipped',\n 'error',\n 'updated',\n 'pending',\n ]),\n agentId: z.string().nullable().optional(),\n agentUri: z.string().nullable().optional(),\n error: z.string().optional(),\n metadata: z.record(jsonValueSchema).optional(),\n registryKey: z.string().optional(),\n networkId: z.string().optional(),\n networkName: z.string().optional(),\n chainId: z.number().optional(),\n estimatedCredits: z.number().nullable().optional(),\n gasEstimateCredits: z.number().nullable().optional(),\n gasEstimateUsd: z.number().nullable().optional(),\n gasPriceGwei: z.number().nullable().optional(),\n gasLimit: z.number().nullable().optional(),\n creditMode: z.enum(['fixed', 'gas']).nullable().optional(),\n minCredits: z.number().nullable().optional(),\n consumedCredits: z.number().nullable().optional(),\n cost: z\n .object({\n credits: z.number(),\n usd: z.number(),\n eth: z.number(),\n gasUsedWei: z.string(),\n effectiveGasPriceWei: z.string().nullable().optional(),\n transactions: z\n .array(\n z.object({\n hash: z.string(),\n gasUsedWei: z.string(),\n effectiveGasPriceWei: z.string().nullable().optional(),\n costWei: z.string(),\n }),\n )\n .optional(),\n })\n .optional(),\n});\n\nconst registrationCreditsSchema = z.object({\n base: z.number(),\n additional: z.number(),\n total: z.number(),\n});\n\nconst hcs10RegistrySchema = z\n .object({\n status: z.string(),\n uaid: z.string().optional(),\n transactionId: z.string().optional(),\n consensusTimestamp: z.string().optional(),\n registryTopicId: z.string().optional(),\n topicSequenceNumber: z.number().optional(),\n payloadHash: z.string().optional(),\n profileReference: z.string().optional(),\n tId: z.string().optional(),\n profileSizeBytes: z.number().optional(),\n error: z.string().optional(),\n })\n .passthrough();\n\nconst additionalRegistryNetworkSchema = z\n .object({\n key: z.string(),\n registryId: z.string().optional(),\n networkId: z.string().optional(),\n name: z.string().optional(),\n chainId: z.number().optional(),\n label: z.string().optional(),\n estimatedCredits: z.number().nullable().optional(),\n baseCredits: z.number().nullable().optional(),\n gasPortionCredits: z.number().nullable().optional(),\n gasPortionUsd: z.number().nullable().optional(),\n gasEstimateCredits: z.number().nullable().optional(),\n gasEstimateUsd: z.number().nullable().optional(),\n gasPriceGwei: z.number().nullable().optional(),\n gasLimit: z.number().nullable().optional(),\n minCredits: z.number().nullable().optional(),\n creditMode: z.string().nullable().optional(),\n })\n .passthrough();\n\nconst additionalRegistryDescriptorSchema = z.object({\n id: z.string(),\n label: z.string(),\n networks: z.array(additionalRegistryNetworkSchema),\n});\n\nexport const additionalRegistryCatalogResponseSchema = z.object({\n registries: z.array(additionalRegistryDescriptorSchema),\n});\n\nconst registerAgentSuccessResponse = z.object({\n success: z.literal(true),\n status: z.enum(['created', 'duplicate', 'updated']).optional(),\n uaid: z.string(),\n agentId: z.string(),\n message: z.string().optional(),\n registry: z.string().optional(),\n attemptId: z.string().nullable().optional(),\n agent: registrationAgentSchema,\n openConvAI: z\n .object({\n compatible: z.boolean(),\n hcs11Profile: agentProfileSchema.optional(),\n bridgeEndpoint: z.string().optional(),\n })\n .optional(),\n profile: registrationProfileInfoSchema.optional(),\n profileRegistry: profileRegistrySchema.nullable().optional(),\n hcs10Registry: hcs10RegistrySchema.nullable().optional(),\n credits: registrationCreditsSchema.optional(),\n additionalRegistries: z.array(additionalRegistryResultSchema).optional(),\n additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),\n additionalRegistryCostPerRegistry: z.number().optional(),\n});\n\nconst registerAgentPendingResponse = z.object({\n success: z.literal(true),\n status: z.literal('pending'),\n message: z.string(),\n uaid: z.string(),\n agentId: z.string(),\n registry: z.string().optional(),\n attemptId: z.string().nullable(),\n agent: registrationAgentSchema,\n openConvAI: z\n .object({\n compatible: z.boolean(),\n hcs11Profile: agentProfileSchema.optional(),\n bridgeEndpoint: z.string().optional(),\n })\n .optional(),\n profile: registrationProfileInfoSchema.optional(),\n profileRegistry: profileRegistrySchema.nullable().optional(),\n hcs10Registry: hcs10RegistrySchema.nullable().optional(),\n credits: registrationCreditsSchema,\n additionalRegistries: z.array(additionalRegistryResultSchema),\n additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),\n additionalRegistryCostPerRegistry: z.number().optional(),\n});\n\nconst registerAgentPartialResponse = z.object({\n success: z.literal(false),\n status: z.literal('partial'),\n message: z.string(),\n uaid: z.string(),\n agentId: z.string(),\n registry: z.string().optional(),\n attemptId: z.string().nullable().optional(),\n agent: registrationAgentSchema,\n openConvAI: z\n .object({\n compatible: z.boolean(),\n hcs11Profile: agentProfileSchema.optional(),\n bridgeEndpoint: z.string().optional(),\n })\n .optional(),\n profile: registrationProfileInfoSchema.optional(),\n profileRegistry: profileRegistrySchema.nullable().optional(),\n hcs10Registry: hcs10RegistrySchema.nullable().optional(),\n credits: registrationCreditsSchema.optional(),\n additionalRegistries: z.array(additionalRegistryResultSchema).optional(),\n additionalRegistryCredits: z.array(additionalRegistryResultSchema).optional(),\n additionalRegistryCostPerRegistry: z.number().optional(),\n errors: z\n .array(\n z.object({\n registry: z.string(),\n registryKey: z.string().nullable().optional(),\n error: z.string(),\n }),\n )\n .min(1),\n});\n\nexport const registerAgentSuccessResponseSchema = registerAgentSuccessResponse;\nexport const registerAgentPendingResponseSchema = registerAgentPendingResponse;\nexport const registerAgentPartialResponseSchema = registerAgentPartialResponse;\nexport const registerAgentResponseSchema = z.union([\n registerAgentSuccessResponse,\n registerAgentPendingResponse,\n registerAgentPartialResponse,\n]);\n\nconst registrationProgressAdditionalEntry = z.object({\n registryId: z.string(),\n registryKey: z.string(),\n networkId: z.string().optional(),\n networkName: z.string().optional(),\n chainId: z.number().optional(),\n label: z.string().optional(),\n status: z.enum(['pending', 'in_progress', 'completed', 'failed']),\n error: z.string().optional(),\n credits: z.number().nullable().optional(),\n agentId: z.string().nullable().optional(),\n agentUri: z.string().nullable().optional(),\n metadata: z.record(jsonValueSchema).optional(),\n lastUpdated: z.string(),\n});\n\nconst registrationProgressRecord = z.object({\n attemptId: z.string(),\n mode: z.enum(['register', 'update']),\n status: z.enum(['pending', 'partial', 'completed', 'failed']),\n uaid: z.string().optional(),\n agentId: z.string().optional(),\n registryNamespace: z.string(),\n accountId: z.string().optional(),\n startedAt: z.string(),\n completedAt: z.string().optional(),\n primary: z.object({\n status: z.enum(['pending', 'completed', 'failed']),\n finishedAt: z.string().optional(),\n error: z.string().optional(),\n }),\n additionalRegistries: z.record(\n z.string(),\n registrationProgressAdditionalEntry,\n ),\n errors: z.array(z.string()).optional(),\n});\n\nexport const registrationProgressResponseSchema = z.object({\n progress: registrationProgressRecord,\n});\n\nexport const registrationProgressAdditionalEntrySchema =\n registrationProgressAdditionalEntry;\nexport const registrationProgressRecordSchema = registrationProgressRecord;\n\nexport const registrationQuoteResponseSchema = z.object({\n accountId: z.string().nullable().optional(),\n registry: z.string().optional(),\n protocol: z.string().optional(),\n requiredCredits: z.number(),\n availableCredits: z.number().nullable().optional(),\n shortfallCredits: z.number().nullable().optional(),\n creditsPerHbar: z.number().nullable().optional(),\n estimatedHbar: z.number().nullable().optional(),\n});\n\nexport const creditPurchaseResponseSchema = z.object({\n success: z.boolean().optional(),\n purchaser: z.string(),\n credits: z.number(),\n hbarAmount: z.number(),\n transactionId: z.string(),\n consensusTimestamp: z.string().nullable().optional(),\n});\n\nconst x402SettlementSchema = z\n .object({\n success: z.boolean().optional(),\n transaction: z.string().optional(),\n network: z.string().optional(),\n payer: z.string().optional(),\n errorReason: z.string().optional(),\n })\n .strict();\n\nexport const x402CreditPurchaseResponseSchema = z.object({\n success: z.boolean(),\n accountId: z.string(),\n creditedCredits: z.number(),\n usdAmount: z.number(),\n balance: z.number(),\n payment: z\n .object({\n payer: z.string().optional(),\n requirement: z.record(jsonValueSchema).optional(),\n settlement: x402SettlementSchema.optional(),\n })\n .optional(),\n});\n\nexport const x402MinimumsResponseSchema = z.object({\n minimums: z\n .record(\n z.object({\n network: z.string().optional(),\n gasLimit: z.number().optional(),\n gasPriceWei: z.string().optional(),\n gasUsd: z.number().optional(),\n minUsd: z.number().optional(),\n ethUsd: z.number().optional(),\n fetchedAt: z.string().optional(),\n source: z.string().optional(),\n }),\n )\n .optional(),\n creditUnitUsd: z.number().optional(),\n});\n\nexport const adaptersResponseSchema = z.object({\n adapters: z.array(z.string()),\n});\n\nexport const adapterRegistryCategorySchema = z.object({\n id: z.number().int(),\n network: z.string(),\n type: z.string(),\n slug: z.string(),\n name: z.string(),\n description: z.string().nullable().optional(),\n topicId: z.string(),\n versionTopicId: z.string(),\n registryTransactionId: z.string().nullable().optional(),\n versionTransactionId: z.string().nullable().optional(),\n metadataPointer: z.string().nullable().optional(),\n metadataSequence: z.number().int().nullable().optional(),\n createdAt: z.string(),\n updatedAt: z.string(),\n metadata: jsonValueSchema.optional().nullable(),\n});\n\nexport const adapterRegistryCategoriesResponseSchema = z.object({\n categories: z.array(adapterRegistryCategorySchema),\n});\n\nexport const adapterRegistryAdapterSchema = z\n .object({\n id: z.union([z.string(), z.number()]).optional(),\n network: z.string().optional(),\n categoryId: z.union([z.string(), z.number()]).nullable().optional(),\n operation: z.string().optional(),\n adapterId: z.string(),\n adapterName: z.string(),\n entity: z.string(),\n manifestPointer: z.string().nullable().optional(),\n manifestSequence: z.number().int().nullable().optional(),\n packageRegistry: z.string().nullable().optional(),\n packageName: z.string().nullable().optional(),\n packageVersion: z.string().nullable().optional(),\n packageIntegrity: z.string().nullable().optional(),\n stateModel: z.string().nullable().optional(),\n config: jsonValueSchema.nullable().optional(),\n signature: z.string().nullable().optional(),\n manifest: jsonValueSchema.nullable().optional(),\n keywords: z.array(z.string()).optional(),\n searchText: z.string().nullable().optional(),\n creditAccountId: z.string().nullable().optional(),\n registeredByUserId: z.string().nullable().optional(),\n registeredByEmail: z.string().nullable().optional(),\n totalCostHbar: z.number().nullable().optional(),\n totalCostCredits: z.number().nullable().optional(),\n consensusTimestamp: z.string().nullable().optional(),\n sequenceNumber: z.number().int().nullable().optional(),\n payerAccountId: z.string().nullable().optional(),\n mirrorNodePayload: jsonValueSchema.nullable().optional(),\n versionTopicId: z.string().nullable().optional(),\n declarationTopicId: z.string().nullable().optional(),\n categoryEntrySequence: z.number().int().nullable().optional(),\n categoryEntryTransactionId: z.string().nullable().optional(),\n versionPointerSequence: z.number().int().nullable().optional(),\n versionPointerTransactionId: z.string().nullable().optional(),\n transactionId: z.string().nullable().optional(),\n createdAt: z.string().optional(),\n category: adapterRegistryCategorySchema.optional(),\n })\n .passthrough();\n\nexport const adapterRegistryAdaptersResponseSchema = z.object({\n network: z.string(),\n adapters: z.array(adapterRegistryAdapterSchema),\n});\n\nexport const adapterRegistryCreateCategoryResponseSchema = z.object({\n category: adapterRegistryCategorySchema,\n});\n\nexport const adapterRegistrySubmitAdapterResponseSchema = z.object({\n adapter: z.record(jsonValueSchema),\n declaration: adapterDeclarationSchema,\n transactionId: z.string().optional().nullable(),\n category: adapterRegistryCategorySchema,\n});\n\nexport const adapterRegistrySubmitAdapterAcceptedResponseSchema = z\n .object({\n submissionId: z.string(),\n status: z.string().optional(),\n network: z.string().optional(),\n message: z.string().optional(),\n })\n .passthrough();\n\nexport const adapterRegistrySubmissionStatusResponseSchema = z.object({\n submission: z\n .object({\n id: z.string(),\n network: z.string(),\n status: z.enum(['pending', 'running', 'completed', 'failed']),\n adapterId: z.string(),\n categorySlug: z.string().nullable().optional(),\n creditAccountId: z.string().nullable().optional(),\n registeredByUserId: z.string().nullable().optional(),\n registeredByEmail: z.string().nullable().optional(),\n requestPayload: jsonValueSchema.optional(),\n resultPayload: jsonValueSchema.nullable().optional(),\n error: z.string().nullable().optional(),\n createdAt: z.string().optional(),\n updatedAt: z.string().optional(),\n startedAt: z.string().nullable().optional(),\n completedAt: z.string().nullable().optional(),\n })\n .passthrough(),\n});\n\nexport const adapterChatProfileSchema = z.object({\n supportsChat: z.boolean(),\n delivery: z.string().optional(),\n transport: z.string().optional(),\n streaming: z.boolean().optional(),\n requiresAuth: z.array(z.string()).optional(),\n notes: z.string().optional(),\n});\n\nconst adapterCapabilitiesSchema = z.object({\n discovery: z.boolean(),\n routing: z.boolean(),\n communication: z.boolean(),\n translation: z.boolean(),\n protocols: z.array(z.string()),\n});\n\nexport const adapterDescriptorSchema = z.object({\n id: z.string(),\n name: z.string(),\n version: z.string(),\n author: z.string(),\n description: z.string(),\n supportedProtocols: z.array(z.string()),\n registryType: z.enum(['web2', 'web3', 'hybrid']),\n chatProfile: adapterChatProfileSchema.optional(),\n capabilities: adapterCapabilitiesSchema,\n enabled: z.boolean(),\n priority: z.number(),\n status: z.enum(['running', 'stopped']),\n});\n\nexport const adapterDetailsResponseSchema = z.object({\n adapters: z.array(adapterDescriptorSchema),\n});\n\nconst metadataFacetOptionSchema = z.object({\n value: z.union([z.string(), z.number(), z.boolean()]),\n label: z.string(),\n});\n\nconst searchFacetSchema = z.object({\n key: z.string(),\n label: z.string(),\n description: z.string().optional(),\n type: z.enum(['string', 'boolean', 'number']),\n adapters: z.array(z.string()).optional(),\n options: z.array(metadataFacetOptionSchema).optional(),\n});\n\nexport const searchFacetsResponseSchema = z.object({\n facets: z.array(searchFacetSchema),\n});\n"],"names":["AIAgentType","AIAgentCapability"],"mappings":"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"}
1
+ {"version":3,"file":"standards-sdk.es150.js","sources":["../../src/utils/parsers/util-parser.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { Transaction, Long, FileId, ContractId } from '@hashgraph/sdk';\nimport {\n UtilPrngData,\n NetworkFreezeData,\n SystemDeleteData,\n SystemUndeleteData,\n NodeCreateData,\n NodeUpdateData,\n NodeDeleteData,\n} from '../transaction-parser-types';\nimport {\n parseKey,\n extractTransactionBody,\n hasTransactionType,\n} from './parser-utils';\n\n/**\n * Utility and System Operations Parser\n *\n * Handles parsing for utility and system transaction types including:\n * - Pseudo-random number generation (PRNG)\n * - Network freeze operations\n * - System delete/undelete operations\n * - Node management operations\n * - Proper dual-branch parsing (regular vs signed transactions)\n * - Comprehensive protobuf extraction\n */\nexport class UtilParser {\n /**\n * Parse Utility/System Service transaction using unified dual-branch approach\n * This handles both regular transactions and signed transaction variants\n */\n static parseUtilTransaction(\n transaction: Transaction,\n originalBytes?: Uint8Array,\n ): {\n type?: string;\n humanReadableType?: string;\n utilPrng?: UtilPrngData;\n networkFreeze?: NetworkFreezeData;\n systemDelete?: SystemDeleteData;\n systemUndelete?: SystemUndeleteData;\n nodeCreate?: NodeCreateData;\n nodeUpdate?: NodeUpdateData;\n nodeDelete?: NodeDeleteData;\n [key: string]: unknown;\n } {\n try {\n if (originalBytes || transaction.toBytes) {\n try {\n const bytesToParse = originalBytes || transaction.toBytes();\n const decoded = proto.TransactionList.decode(bytesToParse);\n\n if (decoded.transactionList && decoded.transactionList.length > 0) {\n const tx = decoded.transactionList[0];\n let txBody: proto.ITransactionBody | null = null;\n\n if (tx.bodyBytes && tx.bodyBytes.length > 0) {\n txBody = proto.TransactionBody.decode(tx.bodyBytes);\n } else if (\n tx.signedTransactionBytes &&\n tx.signedTransactionBytes.length > 0\n ) {\n const signedTx = proto.SignedTransaction.decode(\n tx.signedTransactionBytes,\n );\n if (signedTx.bodyBytes) {\n txBody = proto.TransactionBody.decode(signedTx.bodyBytes);\n }\n }\n\n if (txBody) {\n const protoResult = this.parseFromProtobufTxBody(txBody);\n if (protoResult.type && protoResult.type !== 'UNKNOWN') {\n return protoResult;\n }\n }\n }\n } catch (protoError) {}\n }\n\n return this.parseFromTransactionInternals(transaction);\n } catch (error) {\n return {\n type: 'UNKNOWN',\n humanReadableType: 'Unknown Utility Transaction',\n };\n }\n }\n\n /**\n * Parse utility transaction from protobuf TransactionBody\n * Handles all utility operations from decoded protobuf data\n */\n private static parseFromProtobufTxBody(txBody: proto.ITransactionBody): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n if (txBody.utilPrng) {\n const utilPrng = this.parseUtilPrng(txBody.utilPrng);\n if (utilPrng) {\n return {\n type: 'PRNG',\n humanReadableType: 'Pseudo Random Number',\n utilPrng,\n };\n }\n }\n\n if (txBody.freeze) {\n const networkFreeze = this.parseNetworkFreezeFromProto(txBody.freeze);\n if (networkFreeze) {\n return {\n type: 'FREEZE',\n humanReadableType: 'Network Freeze',\n freeze: networkFreeze,\n };\n }\n }\n\n if (txBody.systemDelete) {\n const systemDelete = this.parseSystemDeleteFromProto(txBody.systemDelete);\n if (systemDelete) {\n return {\n type: 'SYSTEMDELETE',\n humanReadableType: 'System Delete',\n systemDelete,\n };\n }\n }\n\n if (txBody.systemUndelete) {\n const systemUndelete = this.parseSystemUndeleteFromProto(\n txBody.systemUndelete,\n );\n if (systemUndelete) {\n return {\n type: 'SYSTEMUNDELETE',\n humanReadableType: 'System Undelete',\n systemUndelete,\n };\n }\n }\n\n if (txBody.nodeCreate) {\n const nodeCreate = this.parseNodeCreateFromProto(txBody.nodeCreate);\n if (nodeCreate) {\n return {\n type: 'NODECREATE',\n humanReadableType: 'Node Create',\n nodeCreate,\n };\n }\n }\n\n if (txBody.nodeUpdate) {\n const nodeUpdate = this.parseNodeUpdateFromProto(txBody.nodeUpdate);\n if (nodeUpdate) {\n return {\n type: 'NODEUPDATE',\n humanReadableType: 'Node Update',\n nodeUpdate,\n };\n }\n }\n\n if (txBody.nodeDelete) {\n const nodeDelete = this.parseNodeDeleteFromProto(txBody.nodeDelete);\n if (nodeDelete) {\n return {\n type: 'NODEDELETE',\n humanReadableType: 'Node Delete',\n nodeDelete,\n };\n }\n }\n\n return {};\n }\n\n /**\n * Extract utility data from Transaction internal fields\n * This handles cases where data is stored in Transaction object internals\n */\n private static parseFromTransactionInternals(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n try {\n const tx = transaction as unknown as {\n _range?: number;\n _startTime?: { toString(): string };\n _endTime?: { toString(): string };\n _updateFile?: { toString(): string };\n _fileHash?: Uint8Array;\n _freezeType?: string;\n _fileId?: { toString(): string };\n _contractId?: { toString(): string };\n _expirationTime?: { toString(): string };\n _nodeId?: number;\n _accountId?: { toString(): string };\n _description?: string;\n _gossipEndpoint?: Array<unknown>;\n _serviceEndpoint?: Array<unknown>;\n _gossipCaCertificate?: Uint8Array;\n _grpcCertificateHash?: Uint8Array;\n _adminKey?: unknown;\n constructor?: { name?: string };\n };\n\n if (hasTransactionType(transaction, 'utilPrng')) {\n const utilPrng: UtilPrngData = {};\n if (tx._range && tx._range !== 0) {\n utilPrng.range = tx._range;\n }\n\n return {\n type: 'PRNG',\n humanReadableType: 'Pseudo Random Number',\n utilPrng,\n };\n }\n\n if (hasTransactionType(transaction, 'freeze')) {\n const networkFreeze: NetworkFreezeData = {};\n\n if (tx._startTime) {\n networkFreeze.startTime = tx._startTime.toString();\n }\n if (tx._endTime) {\n networkFreeze.endTime = tx._endTime.toString();\n }\n if (tx._updateFile) {\n networkFreeze.updateFile = tx._updateFile.toString();\n }\n if (tx._fileHash) {\n networkFreeze.fileHash = Buffer.from(tx._fileHash).toString('hex');\n }\n if (tx._freezeType) {\n networkFreeze.freezeType = tx._freezeType as any;\n }\n\n return {\n type: 'FREEZE',\n humanReadableType: 'Network Freeze',\n freeze: networkFreeze,\n };\n }\n\n if (hasTransactionType(transaction, 'systemDelete')) {\n const systemDelete: SystemDeleteData = {};\n\n if (tx._fileId) {\n systemDelete.fileId = tx._fileId.toString();\n } else if (tx._contractId) {\n systemDelete.contractId = tx._contractId.toString();\n }\n\n if (tx._expirationTime) {\n systemDelete.expirationTime = tx._expirationTime.toString();\n }\n\n return {\n type: 'SYSTEMDELETE',\n humanReadableType: 'System Delete',\n systemDelete,\n };\n }\n\n if (hasTransactionType(transaction, 'systemUndelete')) {\n const systemUndelete: SystemUndeleteData = {};\n\n if (tx._fileId) {\n systemUndelete.fileId = tx._fileId.toString();\n } else if (tx._contractId) {\n systemUndelete.contractId = tx._contractId.toString();\n }\n\n return {\n type: 'SYSTEMUNDELETE',\n humanReadableType: 'System Undelete',\n systemUndelete,\n };\n }\n\n return {};\n } catch (error) {\n return {};\n }\n }\n\n /**\n * Parse Network Freeze from protobuf data\n */\n private static parseNetworkFreezeFromProto(\n body: proto.IFreezeTransactionBody,\n ): NetworkFreezeData | undefined {\n if (!body) return undefined;\n\n const data: NetworkFreezeData = {};\n\n if (body.startTime?.seconds) {\n data.startTime = `${Long.fromValue(\n body.startTime.seconds,\n ).toString()}.${body.startTime.nanos ?? 0}`;\n }\n\n if (body.updateFile) {\n data.updateFile = new FileId(\n body.updateFile.shardNum ?? 0,\n body.updateFile.realmNum ?? 0,\n body.updateFile.fileNum ?? 0,\n ).toString();\n }\n\n if (body.fileHash && body.fileHash.length > 0) {\n data.fileHash = Buffer.from(body.fileHash).toString('hex');\n }\n\n if (body.freezeType !== undefined) {\n const freezeTypes = [\n 'FREEZE_ONLY',\n 'PREPARE_UPGRADE',\n 'FREEZE_UPGRADE',\n 'FREEZE_ABORT',\n ];\n data.freezeType = (freezeTypes[body.freezeType] as any) || 'FREEZE_ONLY';\n }\n\n return data;\n }\n\n /**\n * Parse System Delete from protobuf data\n */\n private static parseSystemDeleteFromProto(\n body: proto.ISystemDeleteTransactionBody,\n ): SystemDeleteData | undefined {\n if (!body) return undefined;\n\n const data: SystemDeleteData = {};\n\n if (body.fileID) {\n data.fileId = new FileId(\n body.fileID.shardNum ?? 0,\n body.fileID.realmNum ?? 0,\n body.fileID.fileNum ?? 0,\n ).toString();\n } else if (body.contractID) {\n data.contractId = new ContractId(\n body.contractID.shardNum ?? 0,\n body.contractID.realmNum ?? 0,\n body.contractID.contractNum ?? 0,\n ).toString();\n }\n\n if (body.expirationTime?.seconds) {\n data.expirationTime = Long.fromValue(\n body.expirationTime.seconds,\n ).toString();\n }\n\n return data;\n }\n\n /**\n * Parse System Undelete from protobuf data\n */\n private static parseSystemUndeleteFromProto(\n body: proto.ISystemUndeleteTransactionBody,\n ): SystemUndeleteData | undefined {\n if (!body) return undefined;\n\n const data: SystemUndeleteData = {};\n\n if (body.fileID) {\n data.fileId = new FileId(\n body.fileID.shardNum ?? 0,\n body.fileID.realmNum ?? 0,\n body.fileID.fileNum ?? 0,\n ).toString();\n } else if (body.contractID) {\n data.contractId = new ContractId(\n body.contractID.shardNum ?? 0,\n body.contractID.realmNum ?? 0,\n body.contractID.contractNum ?? 0,\n ).toString();\n }\n\n return data;\n }\n\n /**\n * Parse Node Create from protobuf data\n */\n private static parseNodeCreateFromProto(\n body: any,\n ): NodeCreateData | undefined {\n if (!body) return undefined;\n\n const data: NodeCreateData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n /**\n * Parse Node Update from protobuf data\n */\n private static parseNodeUpdateFromProto(\n body: any,\n ): NodeUpdateData | undefined {\n if (!body) return undefined;\n\n const data: NodeUpdateData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n /**\n * Parse Node Delete from protobuf data\n */\n private static parseNodeDeleteFromProto(\n body: any,\n ): NodeDeleteData | undefined {\n if (!body) return undefined;\n\n const data: NodeDeleteData = {};\n\n if (body.nodeId !== undefined) {\n data.nodeId = Long.fromValue(body.nodeId).toNumber();\n }\n\n return data;\n }\n\n static parseUtilPrng(\n body: proto.IUtilPrngTransactionBody,\n ): UtilPrngData | undefined {\n if (!body) return undefined;\n const data: UtilPrngData = {};\n if (body.range && body.range !== 0) {\n data.range = body.range;\n }\n return data;\n }\n\n static parseFreeze(\n body: proto.IFreezeTransactionBody,\n ): NetworkFreezeData | undefined {\n return this.parseNetworkFreezeFromProto(body);\n }\n\n /**\n * Parse Utility/System Service transaction from Transaction object\n * This is the unified entry point that delegates to the comprehensive parsing logic\n */\n static parseFromTransactionObject(transaction: Transaction): {\n type?: string;\n humanReadableType?: string;\n [key: string]: unknown;\n } {\n return this.parseUtilTransaction(transaction);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,59 +1,79 @@
1
- const ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
2
- const BASE = 58;
3
- function base58Encode(bytes) {
4
- if (bytes.length === 0) return "";
5
- let zeros = 0;
6
- while (zeros < bytes.length && bytes[zeros] === 0) zeros++;
7
- if (zeros === bytes.length) return "1".repeat(zeros);
8
- const digits = [0];
9
- for (let i = zeros; i < bytes.length; i++) {
10
- let carry = bytes[i];
11
- for (let j = 0; j < digits.length; j++) {
12
- const val = (digits[j] << 8) + carry;
13
- digits[j] = val % BASE;
14
- carry = val / BASE | 0;
15
- }
16
- while (carry > 0) {
17
- digits.push(carry % BASE);
18
- carry = carry / BASE | 0;
19
- }
1
+ import { proto } from "@hashgraph/proto";
2
+ import { ContractId } from "@hashgraph/sdk";
3
+ import { Buffer } from "buffer";
4
+ function parseKey(key) {
5
+ if (!key) {
6
+ return void 0;
7
+ }
8
+ if (key.contractID) {
9
+ return `ContractID: ${new ContractId(
10
+ key.contractID.shardNum ?? 0,
11
+ key.contractID.realmNum ?? 0,
12
+ key.contractID.contractNum ?? 0
13
+ ).toString()}`;
14
+ }
15
+ if (key.ed25519) {
16
+ return `ED25519: ${Buffer.from(key.ed25519).toString("hex")}`;
17
+ }
18
+ if (key.ECDSASecp256k1) {
19
+ return `ECDSA_secp256k1: ${Buffer.from(key.ECDSASecp256k1).toString(
20
+ "hex"
21
+ )}`;
22
+ }
23
+ if (key?.keyList?.keys?.length > 0) {
24
+ const keys = key.keyList.keys.map((k) => parseKey(k)).filter(Boolean);
25
+ return `KeyList (${keys.length} keys): [${keys.join(", ")}]`;
20
26
  }
21
- let result = "";
22
- for (let i = 0; i < zeros; i++) result += "1";
23
- for (let i = digits.length - 1; i >= 0; i--) result += ALPHABET[digits[i]];
24
- return result;
27
+ if (key?.thresholdKey?.keys?.keys?.length > 0) {
28
+ const keys = key.thresholdKey.keys.keys.map((k) => parseKey(k)).filter(Boolean);
29
+ return `ThresholdKey (${key.thresholdKey.threshold} of ${keys.length}): [${keys.join(", ")}]`;
30
+ }
31
+ if (key.delegatableContractId) {
32
+ return `DelegatableContractID: ${new ContractId(
33
+ key.delegatableContractId.shardNum ?? 0,
34
+ key.delegatableContractId.realmNum ?? 0,
35
+ key.delegatableContractId.contractNum ?? 0
36
+ ).toString()}`;
37
+ }
38
+ if (Object.keys(key).length === 0) {
39
+ return "Empty Key Structure";
40
+ }
41
+ return "Unknown or Unset Key Type";
25
42
  }
26
- function base58Decode(text) {
27
- if (text.length === 0) return new Uint8Array(0);
28
- let zeros = 0;
29
- while (zeros < text.length && text[zeros] === "1") zeros++;
30
- const b256 = [];
31
- for (let i = zeros; i < text.length; i++) {
32
- const ch = text[i];
33
- const val = ALPHABET.indexOf(ch);
34
- if (val === -1) throw new Error("Invalid Base58 character");
35
- let carry = val;
36
- for (let j = 0; j < b256.length; j++) {
37
- const x = b256[j] * BASE + carry;
38
- b256[j] = x & 255;
39
- carry = x >> 8;
43
+ function extractTransactionBody(transaction) {
44
+ try {
45
+ const bytes = transaction.toBytes ? transaction.toBytes() : void 0;
46
+ if (!bytes) {
47
+ return null;
48
+ }
49
+ const decoded = proto.TransactionList.decode(bytes);
50
+ if (!decoded.transactionList || decoded.transactionList.length === 0) {
51
+ return null;
52
+ }
53
+ const tx = decoded.transactionList[0];
54
+ if (tx.bodyBytes && tx.bodyBytes.length > 0) {
55
+ return proto.TransactionBody.decode(tx.bodyBytes);
40
56
  }
41
- while (carry > 0) {
42
- b256.push(carry & 255);
43
- carry >>= 8;
57
+ if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {
58
+ const signedTx = proto.SignedTransaction.decode(
59
+ tx.signedTransactionBytes
60
+ );
61
+ if (signedTx.bodyBytes) {
62
+ return proto.TransactionBody.decode(signedTx.bodyBytes);
63
+ }
44
64
  }
65
+ return null;
66
+ } catch (error) {
67
+ return null;
45
68
  }
46
- for (let i = 0; i < zeros; i++) b256.push(0);
47
- b256.reverse();
48
- return Uint8Array.from(b256);
49
69
  }
50
- function multibaseB58btcDecode(zText) {
51
- if (!zText.startsWith("z")) throw new Error("Invalid multibase base58btc");
52
- return base58Decode(zText.slice(1));
70
+ function hasTransactionType(transaction, transactionField) {
71
+ const txBody = extractTransactionBody(transaction);
72
+ return !!(txBody && txBody[transactionField]);
53
73
  }
54
74
  export {
55
- base58Decode,
56
- base58Encode,
57
- multibaseB58btcDecode
75
+ extractTransactionBody,
76
+ hasTransactionType,
77
+ parseKey
58
78
  };
59
79
  //# sourceMappingURL=standards-sdk.es151.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es151.js","sources":["../../src/hcs-14/base58.ts"],"sourcesContent":["/**\n * Minimal Base58 encoder/decoder (Bitcoin alphabet) with no external dependencies.\n */\n\nconst ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz';\nconst BASE = 58;\n\nfunction countLeadingZeros(bytes: Uint8Array): number {\n let zeros = 0;\n for (let i = 0; i < bytes.length && bytes[i] === 0; i++) {\n zeros++;\n }\n return zeros;\n}\n\nexport function base58Encode(bytes: Uint8Array): string {\n if (bytes.length === 0) return '';\n\n let zeros = 0;\n while (zeros < bytes.length && bytes[zeros] === 0) zeros++;\n\n if (zeros === bytes.length) return '1'.repeat(zeros);\n\n const digits: number[] = [0];\n for (let i = zeros; i < bytes.length; i++) {\n let carry = bytes[i];\n for (let j = 0; j < digits.length; j++) {\n const val = (digits[j] << 8) + carry;\n digits[j] = val % BASE;\n carry = (val / BASE) | 0;\n }\n while (carry > 0) {\n digits.push(carry % BASE);\n carry = (carry / BASE) | 0;\n }\n }\n\n let result = '';\n for (let i = 0; i < zeros; i++) result += '1';\n for (let i = digits.length - 1; i >= 0; i--) result += ALPHABET[digits[i]];\n return result;\n}\n\nexport function base58Decode(text: string): Uint8Array {\n if (text.length === 0) return new Uint8Array(0);\n\n let zeros = 0;\n while (zeros < text.length && text[zeros] === '1') zeros++;\n\n const b256: number[] = [];\n for (let i = zeros; i < text.length; i++) {\n const ch = text[i];\n const val = ALPHABET.indexOf(ch);\n if (val === -1) throw new Error('Invalid Base58 character');\n\n let carry = val;\n for (let j = 0; j < b256.length; j++) {\n const x = b256[j] * BASE + carry;\n b256[j] = x & 0xff;\n carry = x >> 8;\n }\n while (carry > 0) {\n b256.push(carry & 0xff);\n carry >>= 8;\n }\n }\n\n for (let i = 0; i < zeros; i++) b256.push(0);\n b256.reverse();\n return Uint8Array.from(b256);\n}\n\nexport function multibaseB58btcDecode(zText: string): Uint8Array {\n if (!zText.startsWith('z')) throw new Error('Invalid multibase base58btc');\n return base58Decode(zText.slice(1));\n}\n"],"names":[],"mappings":"AAIA,MAAM,WAAW;AACjB,MAAM,OAAO;AAUN,SAAS,aAAa,OAA2B;AACtD,MAAI,MAAM,WAAW,EAAG,QAAO;AAE/B,MAAI,QAAQ;AACZ,SAAO,QAAQ,MAAM,UAAU,MAAM,KAAK,MAAM,EAAG;AAEnD,MAAI,UAAU,MAAM,OAAQ,QAAO,IAAI,OAAO,KAAK;AAEnD,QAAM,SAAmB,CAAC,CAAC;AAC3B,WAAS,IAAI,OAAO,IAAI,MAAM,QAAQ,KAAK;AACzC,QAAI,QAAQ,MAAM,CAAC;AACnB,aAAS,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;AACtC,YAAM,OAAO,OAAO,CAAC,KAAK,KAAK;AAC/B,aAAO,CAAC,IAAI,MAAM;AAClB,cAAS,MAAM,OAAQ;AAAA,IACzB;AACA,WAAO,QAAQ,GAAG;AAChB,aAAO,KAAK,QAAQ,IAAI;AACxB,cAAS,QAAQ,OAAQ;AAAA,IAC3B;AAAA,EACF;AAEA,MAAI,SAAS;AACb,WAAS,IAAI,GAAG,IAAI,OAAO,IAAK,WAAU;AAC1C,WAAS,IAAI,OAAO,SAAS,GAAG,KAAK,GAAG,IAAK,WAAU,SAAS,OAAO,CAAC,CAAC;AACzE,SAAO;AACT;AAEO,SAAS,aAAa,MAA0B;AACrD,MAAI,KAAK,WAAW,EAAG,QAAO,IAAI,WAAW,CAAC;AAE9C,MAAI,QAAQ;AACZ,SAAO,QAAQ,KAAK,UAAU,KAAK,KAAK,MAAM,IAAK;AAEnD,QAAM,OAAiB,CAAA;AACvB,WAAS,IAAI,OAAO,IAAI,KAAK,QAAQ,KAAK;AACxC,UAAM,KAAK,KAAK,CAAC;AACjB,UAAM,MAAM,SAAS,QAAQ,EAAE;AAC/B,QAAI,QAAQ,GAAI,OAAM,IAAI,MAAM,0BAA0B;AAE1D,QAAI,QAAQ;AACZ,aAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,YAAM,IAAI,KAAK,CAAC,IAAI,OAAO;AAC3B,WAAK,CAAC,IAAI,IAAI;AACd,cAAQ,KAAK;AAAA,IACf;AACA,WAAO,QAAQ,GAAG;AAChB,WAAK,KAAK,QAAQ,GAAI;AACtB,gBAAU;AAAA,IACZ;AAAA,EACF;AAEA,WAAS,IAAI,GAAG,IAAI,OAAO,IAAK,MAAK,KAAK,CAAC;AAC3C,OAAK,QAAA;AACL,SAAO,WAAW,KAAK,IAAI;AAC7B;AAEO,SAAS,sBAAsB,OAA2B;AAC/D,MAAI,CAAC,MAAM,WAAW,GAAG,EAAG,OAAM,IAAI,MAAM,6BAA6B;AACzE,SAAO,aAAa,MAAM,MAAM,CAAC,CAAC;AACpC;"}
1
+ {"version":3,"file":"standards-sdk.es151.js","sources":["../../src/utils/parsers/parser-utils.ts"],"sourcesContent":["import { proto } from '@hashgraph/proto';\nimport { ContractId, Transaction } from '@hashgraph/sdk';\nimport { Buffer } from 'buffer';\n\nexport function parseKey(\n key: proto.IKey | null | undefined,\n): string | undefined {\n if (!key) {\n return undefined;\n }\n\n if (key.contractID) {\n return `ContractID: ${new ContractId(\n key.contractID.shardNum ?? 0,\n key.contractID.realmNum ?? 0,\n key.contractID.contractNum ?? 0,\n ).toString()}`;\n }\n if (key.ed25519) {\n return `ED25519: ${Buffer.from(key.ed25519).toString('hex')}`;\n }\n if (key.ECDSASecp256k1) {\n return `ECDSA_secp256k1: ${Buffer.from(key.ECDSASecp256k1).toString(\n 'hex',\n )}`;\n }\n if (key?.keyList?.keys?.length > 0) {\n const keys = key.keyList.keys.map(k => parseKey(k)).filter(Boolean);\n return `KeyList (${keys.length} keys): [${keys.join(', ')}]`;\n }\n if (key?.thresholdKey?.keys?.keys?.length > 0) {\n const keys = key.thresholdKey.keys.keys\n .map(k => parseKey(k))\n .filter(Boolean);\n return `ThresholdKey (${key.thresholdKey.threshold} of ${\n keys.length\n }): [${keys.join(', ')}]`;\n }\n if (key.delegatableContractId) {\n return `DelegatableContractID: ${new ContractId(\n key.delegatableContractId.shardNum ?? 0,\n key.delegatableContractId.realmNum ?? 0,\n key.delegatableContractId.contractNum ?? 0,\n ).toString()}`;\n }\n if (Object.keys(key).length === 0) {\n return 'Empty Key Structure';\n }\n\n return 'Unknown or Unset Key Type';\n}\n\n/**\n * Extract TransactionBody from Transaction object using protobuf parsing\n * This replaces fragile constructor name checking with reliable protobuf data\n */\nexport function extractTransactionBody(\n transaction: Transaction,\n): proto.ITransactionBody | null {\n try {\n const bytes = transaction.toBytes ? transaction.toBytes() : undefined;\n if (!bytes) {\n return null;\n }\n\n const decoded = proto.TransactionList.decode(bytes);\n if (!decoded.transactionList || decoded.transactionList.length === 0) {\n return null;\n }\n\n const tx = decoded.transactionList[0];\n\n if (tx.bodyBytes && tx.bodyBytes.length > 0) {\n return proto.TransactionBody.decode(tx.bodyBytes);\n }\n\n if (tx.signedTransactionBytes && tx.signedTransactionBytes.length > 0) {\n const signedTx = proto.SignedTransaction.decode(\n tx.signedTransactionBytes,\n );\n if (signedTx.bodyBytes) {\n return proto.TransactionBody.decode(signedTx.bodyBytes);\n }\n }\n\n return null;\n } catch (error) {\n return null;\n }\n}\n\n/**\n * Check if transaction has specific transaction type using protobuf data\n * This replaces constructor name checking with reliable protobuf field detection\n */\nexport function hasTransactionType(\n transaction: Transaction,\n transactionField: keyof proto.ITransactionBody,\n): boolean {\n const txBody = extractTransactionBody(transaction);\n return !!(txBody && txBody[transactionField]);\n}\n"],"names":[],"mappings":";;;AAIO,SAAS,SACd,KACoB;AACpB,MAAI,CAAC,KAAK;AACR,WAAO;AAAA,EACT;AAEA,MAAI,IAAI,YAAY;AAClB,WAAO,eAAe,IAAI;AAAA,MACxB,IAAI,WAAW,YAAY;AAAA,MAC3B,IAAI,WAAW,YAAY;AAAA,MAC3B,IAAI,WAAW,eAAe;AAAA,IAAA,EAC9B,UAAU;AAAA,EACd;AACA,MAAI,IAAI,SAAS;AACf,WAAO,YAAY,OAAO,KAAK,IAAI,OAAO,EAAE,SAAS,KAAK,CAAC;AAAA,EAC7D;AACA,MAAI,IAAI,gBAAgB;AACtB,WAAO,oBAAoB,OAAO,KAAK,IAAI,cAAc,EAAE;AAAA,MACzD;AAAA,IAAA,CACD;AAAA,EACH;AACA,MAAI,KAAK,SAAS,MAAM,SAAS,GAAG;AAClC,UAAM,OAAO,IAAI,QAAQ,KAAK,IAAI,CAAA,MAAK,SAAS,CAAC,CAAC,EAAE,OAAO,OAAO;AAClE,WAAO,YAAY,KAAK,MAAM,YAAY,KAAK,KAAK,IAAI,CAAC;AAAA,EAC3D;AACA,MAAI,KAAK,cAAc,MAAM,MAAM,SAAS,GAAG;AAC7C,UAAM,OAAO,IAAI,aAAa,KAAK,KAChC,IAAI,CAAA,MAAK,SAAS,CAAC,CAAC,EACpB,OAAO,OAAO;AACjB,WAAO,iBAAiB,IAAI,aAAa,SAAS,OAChD,KAAK,MACP,OAAO,KAAK,KAAK,IAAI,CAAC;AAAA,EACxB;AACA,MAAI,IAAI,uBAAuB;AAC7B,WAAO,0BAA0B,IAAI;AAAA,MACnC,IAAI,sBAAsB,YAAY;AAAA,MACtC,IAAI,sBAAsB,YAAY;AAAA,MACtC,IAAI,sBAAsB,eAAe;AAAA,IAAA,EACzC,UAAU;AAAA,EACd;AACA,MAAI,OAAO,KAAK,GAAG,EAAE,WAAW,GAAG;AACjC,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAMO,SAAS,uBACd,aAC+B;AAC/B,MAAI;AACF,UAAM,QAAQ,YAAY,UAAU,YAAY,YAAY;AAC5D,QAAI,CAAC,OAAO;AACV,aAAO;AAAA,IACT;AAEA,UAAM,UAAU,MAAM,gBAAgB,OAAO,KAAK;AAClD,QAAI,CAAC,QAAQ,mBAAmB,QAAQ,gBAAgB,WAAW,GAAG;AACpE,aAAO;AAAA,IACT;AAEA,UAAM,KAAK,QAAQ,gBAAgB,CAAC;AAEpC,QAAI,GAAG,aAAa,GAAG,UAAU,SAAS,GAAG;AAC3C,aAAO,MAAM,gBAAgB,OAAO,GAAG,SAAS;AAAA,IAClD;AAEA,QAAI,GAAG,0BAA0B,GAAG,uBAAuB,SAAS,GAAG;AACrE,YAAM,WAAW,MAAM,kBAAkB;AAAA,QACvC,GAAG;AAAA,MAAA;AAEL,UAAI,SAAS,WAAW;AACtB,eAAO,MAAM,gBAAgB,OAAO,SAAS,SAAS;AAAA,MACxD;AAAA,IACF;AAEA,WAAO;AAAA,EACT,SAAS,OAAO;AACd,WAAO;AAAA,EACT;AACF;AAMO,SAAS,mBACd,aACA,kBACS;AACT,QAAM,SAAS,uBAAuB,WAAW;AACjD,SAAO,CAAC,EAAE,UAAU,OAAO,gBAAgB;AAC7C;"}
@@ -1,87 +1,142 @@
1
- import { isBrowser } from "./standards-sdk.es118.js";
2
- let nodeRequire;
3
- function isModuleNotFound(specifier, error) {
4
- if (!error || typeof error !== "object") {
5
- return false;
1
+ const DEFAULT_USER_AGENT = "@hol-org/rb-client";
2
+ const DEFAULT_BASE_URL = "https://hol.org/registry/api/v1";
3
+ const JSON_CONTENT_TYPE = /application\/json/i;
4
+ const DEFAULT_HISTORY_TOP_UP_HBAR = 0.25;
5
+ const stripTrailingSlashes = (value) => {
6
+ let end = value.length;
7
+ while (end > 0 && value.charCodeAt(end - 1) === 47) {
8
+ end -= 1;
6
9
  }
7
- const code = Reflect.get(error, "code");
8
- const message = Reflect.get(error, "message");
9
- const messageText = typeof message === "string" ? message : "";
10
- if (typeof code === "string" && code.includes("MODULE_NOT_FOUND")) {
11
- return messageText.includes(specifier);
12
- }
13
- if (messageText) {
14
- const lowered = messageText.toLowerCase();
15
- if (lowered.includes("cannot find module") || lowered.includes("module not found") || lowered.includes("cannot find package")) {
16
- return lowered.includes(specifier.toLowerCase());
10
+ return end === value.length ? value : value.slice(0, end);
11
+ };
12
+ const createAbortError = () => typeof DOMException === "function" ? new DOMException("Aborted", "AbortError") : new Error("The operation was aborted");
13
+ const normaliseHeaderName = (name) => name.trim().toLowerCase();
14
+ const isBrowserRuntime = () => typeof window !== "undefined" && typeof window.fetch === "function";
15
+ const isJsonObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
16
+ function normaliseBaseUrl(input) {
17
+ const trimmed = input?.trim();
18
+ let baseCandidate = trimmed && trimmed.length > 0 ? trimmed : DEFAULT_BASE_URL;
19
+ try {
20
+ const url = new URL(stripTrailingSlashes(baseCandidate));
21
+ const hostname = url.hostname.toLowerCase();
22
+ const ensureRegistryPrefix = () => {
23
+ if (!url.pathname.startsWith("/registry")) {
24
+ url.pathname = url.pathname === "/" ? "/registry" : `/registry${url.pathname}`;
25
+ }
26
+ };
27
+ if (hostname === "hol.org") {
28
+ ensureRegistryPrefix();
29
+ baseCandidate = url.toString();
30
+ } else if (hostname === "registry.hashgraphonline.com" || hostname === "hashgraphonline.com") {
31
+ ensureRegistryPrefix();
32
+ url.hostname = "hol.org";
33
+ baseCandidate = url.toString();
17
34
  }
35
+ } catch {
36
+ }
37
+ const withoutTrailing = stripTrailingSlashes(baseCandidate);
38
+ if (/\/api\/v\d+$/i.test(withoutTrailing)) {
39
+ return withoutTrailing;
18
40
  }
19
- return false;
41
+ if (/\/api$/i.test(withoutTrailing)) {
42
+ return `${withoutTrailing}/v1`;
43
+ }
44
+ return `${withoutTrailing}/api/v1`;
20
45
  }
21
- async function resolveNodeRequire() {
22
- if (nodeRequire !== void 0) {
23
- return nodeRequire;
46
+ function buildSearchQuery(params) {
47
+ const query = new URLSearchParams();
48
+ const appendList = (key, values) => {
49
+ if (!values) {
50
+ return;
51
+ }
52
+ values.forEach((value) => {
53
+ if (typeof value === "string") {
54
+ const trimmed = value.trim();
55
+ if (trimmed.length > 0) {
56
+ query.append(key, trimmed);
57
+ }
58
+ }
59
+ });
60
+ };
61
+ if (params.q) {
62
+ const trimmed = params.q.trim();
63
+ if (trimmed.length > 0) {
64
+ query.set("q", trimmed);
65
+ }
24
66
  }
25
- if (isBrowser) {
26
- nodeRequire = null;
27
- return nodeRequire;
67
+ if (typeof params.page === "number") {
68
+ query.set("page", params.page.toString());
28
69
  }
29
- try {
30
- const globalObject = typeof global !== "undefined" ? global : globalThis;
31
- const req = globalObject.process?.mainModule?.require ?? globalObject.require;
32
- nodeRequire = typeof req === "function" && typeof req.resolve === "function" ? req : null;
33
- } catch {
34
- nodeRequire = null;
70
+ if (typeof params.limit === "number") {
71
+ query.set("limit", params.limit.toString());
35
72
  }
36
- return nodeRequire;
37
- }
38
- async function dynamicImport(specifier) {
39
- try {
40
- return await import(specifier);
41
- } catch (error) {
42
- if (isModuleNotFound(specifier, error)) {
43
- return null;
73
+ if (params.registry) {
74
+ const trimmed = params.registry.trim();
75
+ if (trimmed.length > 0) {
76
+ query.set("registry", trimmed);
44
77
  }
45
- throw error;
46
78
  }
47
- }
48
- async function optionalImport(specifier, options = {}) {
49
- if (isBrowser) {
50
- return dynamicImport(specifier);
79
+ appendList("registries", params.registries);
80
+ if (typeof params.minTrust === "number") {
81
+ query.set("minTrust", params.minTrust.toString());
51
82
  }
52
- if (!options.preferImport) {
53
- const requireFn = await resolveNodeRequire();
54
- if (requireFn) {
55
- try {
56
- return requireFn(specifier);
57
- } catch (error) {
58
- if (!isModuleNotFound(specifier, error)) {
59
- throw error;
60
- }
83
+ appendList("capabilities", params.capabilities);
84
+ appendList("protocols", params.protocols);
85
+ appendList("adapters", params.adapters);
86
+ if (params.metadata) {
87
+ Object.entries(params.metadata).forEach(([key, values]) => {
88
+ if (!key || !Array.isArray(values) || values.length === 0) {
89
+ return;
90
+ }
91
+ const trimmedKey = key.trim();
92
+ if (trimmedKey.length === 0) {
93
+ return;
61
94
  }
95
+ values.forEach((value) => {
96
+ if (value === void 0 || value === null) {
97
+ return;
98
+ }
99
+ query.append(`metadata.${trimmedKey}`, String(value));
100
+ });
101
+ });
102
+ }
103
+ if (params.type) {
104
+ const trimmedType = params.type.trim();
105
+ if (trimmedType.length > 0 && trimmedType.toLowerCase() !== "all") {
106
+ query.set("type", trimmedType);
62
107
  }
63
108
  }
64
- return dynamicImport(specifier);
65
- }
66
- function optionalImportSync(specifier) {
67
- if (isBrowser) {
68
- return null;
109
+ if (params.verified === true) {
110
+ query.set("verified", "true");
69
111
  }
70
- try {
71
- const globalObject = typeof global !== "undefined" ? global : globalThis;
72
- const req = globalObject.process?.mainModule?.require ?? globalObject.require;
73
- if (typeof req === "function" && typeof req.resolve === "function") {
74
- return req(specifier);
112
+ if (params.online === true) {
113
+ query.set("online", "true");
114
+ }
115
+ if (params.sortBy) {
116
+ const trimmedSort = params.sortBy.trim();
117
+ if (trimmedSort.length > 0) {
118
+ query.set("sortBy", trimmedSort);
75
119
  }
76
- } catch (error) {
77
- if (!isModuleNotFound(specifier, error)) {
78
- throw error;
120
+ }
121
+ if (params.sortOrder) {
122
+ const lowered = params.sortOrder.toLowerCase();
123
+ if (lowered === "asc" || lowered === "desc") {
124
+ query.set("sortOrder", lowered);
79
125
  }
80
126
  }
81
- return null;
127
+ const queryString = query.toString();
128
+ return queryString.length > 0 ? `?${queryString}` : "";
82
129
  }
83
130
  export {
84
- optionalImport,
85
- optionalImportSync
131
+ DEFAULT_BASE_URL,
132
+ DEFAULT_HISTORY_TOP_UP_HBAR,
133
+ DEFAULT_USER_AGENT,
134
+ JSON_CONTENT_TYPE,
135
+ buildSearchQuery,
136
+ createAbortError,
137
+ isBrowserRuntime,
138
+ isJsonObject,
139
+ normaliseBaseUrl,
140
+ normaliseHeaderName
86
141
  };
87
142
  //# sourceMappingURL=standards-sdk.es152.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standards-sdk.es152.js","sources":["../../src/utils/dynamic-import.ts"],"sourcesContent":["import { isBrowser } from './is-browser';\n\nlet nodeRequire: NodeRequire | null | undefined;\n\nfunction isModuleNotFound(specifier: string, error: unknown): boolean {\n if (!error || typeof error !== 'object') {\n return false;\n }\n const code = Reflect.get(error, 'code');\n const message = Reflect.get(error, 'message');\n const messageText = typeof message === 'string' ? message : '';\n\n if (typeof code === 'string' && code.includes('MODULE_NOT_FOUND')) {\n return messageText.includes(specifier);\n }\n\n if (messageText) {\n const lowered = messageText.toLowerCase();\n if (\n lowered.includes('cannot find module') ||\n lowered.includes('module not found') ||\n lowered.includes('cannot find package')\n ) {\n return lowered.includes(specifier.toLowerCase());\n }\n }\n\n return false;\n}\n\nasync function resolveNodeRequire(): Promise<NodeRequire | null> {\n if (nodeRequire !== undefined) {\n return nodeRequire;\n }\n\n if (isBrowser) {\n nodeRequire = null;\n return nodeRequire;\n }\n\n try {\n const globalObject =\n typeof global !== 'undefined'\n ? (global as typeof globalThis)\n : globalThis;\n const req =\n globalObject.process?.mainModule?.require ??\n (globalObject as { require?: NodeRequire }).require;\n\n nodeRequire =\n typeof req === 'function' &&\n typeof (req as NodeRequire).resolve === 'function'\n ? (req as NodeRequire)\n : null;\n } catch {\n nodeRequire = null;\n }\n\n return nodeRequire;\n}\n\nasync function dynamicImport<T>(specifier: string): Promise<T | null> {\n try {\n return (await import(specifier)) as T;\n } catch (error) {\n if (isModuleNotFound(specifier, error)) {\n return null;\n }\n throw error as Error;\n }\n}\n\ntype OptionalImportOptions = {\n preferImport?: boolean;\n};\n\nexport async function optionalImport<T>(\n specifier: string,\n options: OptionalImportOptions = {},\n): Promise<T | null> {\n if (isBrowser) {\n return dynamicImport<T>(specifier);\n }\n\n if (!options.preferImport) {\n const requireFn = await resolveNodeRequire();\n if (requireFn) {\n try {\n return requireFn(specifier) as T;\n } catch (error) {\n if (!isModuleNotFound(specifier, error)) {\n throw error as Error;\n }\n }\n }\n }\n\n return dynamicImport<T>(specifier);\n}\n\nexport function optionalImportSync<T>(specifier: string): T | null {\n if (isBrowser) {\n return null;\n }\n\n try {\n const globalObject =\n typeof global !== 'undefined'\n ? (global as typeof globalThis)\n : globalThis;\n const req =\n globalObject.process?.mainModule?.require ??\n (globalObject as { require?: NodeRequire }).require;\n\n if (\n typeof req === 'function' &&\n typeof (req as NodeRequire).resolve === 'function'\n ) {\n return req(specifier) as T;\n }\n } catch (error) {\n if (!isModuleNotFound(specifier, error)) {\n throw error as Error;\n }\n }\n\n return null;\n}\n"],"names":[],"mappings":";AAEA,IAAI;AAEJ,SAAS,iBAAiB,WAAmB,OAAyB;AACpE,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACvC,WAAO;AAAA,EACT;AACA,QAAM,OAAO,QAAQ,IAAI,OAAO,MAAM;AACtC,QAAM,UAAU,QAAQ,IAAI,OAAO,SAAS;AAC5C,QAAM,cAAc,OAAO,YAAY,WAAW,UAAU;AAE5D,MAAI,OAAO,SAAS,YAAY,KAAK,SAAS,kBAAkB,GAAG;AACjE,WAAO,YAAY,SAAS,SAAS;AAAA,EACvC;AAEA,MAAI,aAAa;AACf,UAAM,UAAU,YAAY,YAAA;AAC5B,QACE,QAAQ,SAAS,oBAAoB,KACrC,QAAQ,SAAS,kBAAkB,KACnC,QAAQ,SAAS,qBAAqB,GACtC;AACA,aAAO,QAAQ,SAAS,UAAU,YAAA,CAAa;AAAA,IACjD;AAAA,EACF;AAEA,SAAO;AACT;AAEA,eAAe,qBAAkD;AAC/D,MAAI,gBAAgB,QAAW;AAC7B,WAAO;AAAA,EACT;AAEA,MAAI,WAAW;AACb,kBAAc;AACd,WAAO;AAAA,EACT;AAEA,MAAI;AACF,UAAM,eACJ,OAAO,WAAW,cACb,SACD;AACN,UAAM,MACJ,aAAa,SAAS,YAAY,WACjC,aAA2C;AAE9C,kBACE,OAAO,QAAQ,cACf,OAAQ,IAAoB,YAAY,aACnC,MACD;AAAA,EACR,QAAQ;AACN,kBAAc;AAAA,EAChB;AAEA,SAAO;AACT;AAEA,eAAe,cAAiB,WAAsC;AACpE,MAAI;AACF,WAAQ,MAAM,OAAO;AAAA,EACvB,SAAS,OAAO;AACd,QAAI,iBAAiB,WAAW,KAAK,GAAG;AACtC,aAAO;AAAA,IACT;AACA,UAAM;AAAA,EACR;AACF;AAMA,eAAsB,eACpB,WACA,UAAiC,IACd;AACnB,MAAI,WAAW;AACb,WAAO,cAAiB,SAAS;AAAA,EACnC;AAEA,MAAI,CAAC,QAAQ,cAAc;AACzB,UAAM,YAAY,MAAM,mBAAA;AACxB,QAAI,WAAW;AACb,UAAI;AACF,eAAO,UAAU,SAAS;AAAA,MAC5B,SAAS,OAAO;AACd,YAAI,CAAC,iBAAiB,WAAW,KAAK,GAAG;AACvC,gBAAM;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,cAAiB,SAAS;AACnC;AAEO,SAAS,mBAAsB,WAA6B;AACjE,MAAI,WAAW;AACb,WAAO;AAAA,EACT;AAEA,MAAI;AACF,UAAM,eACJ,OAAO,WAAW,cACb,SACD;AACN,UAAM,MACJ,aAAa,SAAS,YAAY,WACjC,aAA2C;AAE9C,QACE,OAAO,QAAQ,cACf,OAAQ,IAAoB,YAAY,YACxC;AACA,aAAO,IAAI,SAAS;AAAA,IACtB;AAAA,EACF,SAAS,OAAO;AACd,QAAI,CAAC,iBAAiB,WAAW,KAAK,GAAG;AACvC,YAAM;AAAA,IACR;AAAA,EACF;AAEA,SAAO;AACT;"}
1
+ {"version":3,"file":"standards-sdk.es152.js","sources":["../../src/services/registry-broker/client/utils.ts"],"sourcesContent":["import type {\n AgentAuthConfig,\n AgentRegistrationRequest,\n JsonObject,\n JsonValue,\n SearchParams,\n} from '../types';\n\nexport const DEFAULT_USER_AGENT = '@hol-org/rb-client';\nexport const DEFAULT_PROGRESS_INTERVAL_MS = 1_500;\nexport const DEFAULT_PROGRESS_TIMEOUT_MS = 5 * 60 * 1_000;\nexport const DEFAULT_BASE_URL = 'https://hol.org/registry/api/v1';\nexport const JSON_CONTENT_TYPE = /application\\/json/i;\nexport const DEFAULT_HISTORY_TOP_UP_HBAR = 0.25;\nexport const MINIMUM_REGISTRATION_AUTO_TOP_UP_CREDITS = 1;\n\nconst stripTrailingSlashes = (value: string): string => {\n let end = value.length;\n while (end > 0 && value.charCodeAt(end - 1) === 47) {\n end -= 1;\n }\n return end === value.length ? value : value.slice(0, end);\n};\n\nexport const createAbortError = (): Error =>\n typeof DOMException === 'function'\n ? new DOMException('Aborted', 'AbortError')\n : new Error('The operation was aborted');\n\nexport const normaliseHeaderName = (name: string): string =>\n name.trim().toLowerCase();\n\nexport const isBrowserRuntime = (): boolean =>\n typeof window !== 'undefined' && typeof window.fetch === 'function';\n\nexport const toJsonValue = (value: unknown): JsonValue => {\n if (value === null) {\n return null;\n }\n if (value instanceof Date) {\n return value.toISOString();\n }\n if (\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n ) {\n return value;\n }\n if (Array.isArray(value)) {\n return value.map(item => (item === undefined ? null : toJsonValue(item)));\n }\n if (typeof value === 'object') {\n const result: JsonObject = {};\n Object.entries(value as Record<string, unknown>).forEach(\n ([key, entryValue]) => {\n if (entryValue !== undefined) {\n result[key] = toJsonValue(entryValue);\n }\n },\n );\n return result;\n }\n throw new TypeError('Only JSON-compatible values are supported');\n};\n\nexport const isJsonObject = (value: JsonValue): value is JsonObject =>\n typeof value === 'object' && value !== null && !Array.isArray(value);\n\nexport const toJsonObject = (value: unknown): JsonObject => {\n const normalised = toJsonValue(value);\n if (isJsonObject(normalised)) {\n return normalised;\n }\n throw new TypeError('Expected JSON object value');\n};\n\nexport const serialiseAuthConfig = (auth: AgentAuthConfig): JsonObject => {\n const authPayload: JsonObject = {};\n if (auth.type) {\n authPayload.type = auth.type;\n }\n if (auth.token) {\n authPayload.token = auth.token;\n }\n if (auth.username) {\n authPayload.username = auth.username;\n }\n if (auth.password) {\n authPayload.password = auth.password;\n }\n if (auth.headerName) {\n authPayload.headerName = auth.headerName;\n }\n if (auth.headerValue) {\n authPayload.headerValue = auth.headerValue;\n }\n if (auth.headers) {\n authPayload.headers = { ...auth.headers };\n }\n return authPayload;\n};\n\nexport const serialiseAgentRegistrationRequest = (\n payload: AgentRegistrationRequest,\n): JsonObject => {\n const body: JsonObject = {\n profile: toJsonObject(payload.profile),\n };\n if (payload.endpoint !== undefined) {\n body.endpoint = payload.endpoint;\n }\n if (payload.protocol !== undefined) {\n body.protocol = payload.protocol;\n }\n if (payload.communicationProtocol !== undefined) {\n body.communicationProtocol = payload.communicationProtocol;\n }\n if (payload.registry !== undefined) {\n body.registry = payload.registry;\n }\n if (payload.additionalRegistries !== undefined) {\n body.additionalRegistries = payload.additionalRegistries;\n }\n if (payload.metadata !== undefined) {\n body.metadata = toJsonObject(payload.metadata);\n }\n return body;\n};\n\nexport type X402NetworkId = 'base' | 'base-sepolia';\n\nexport const normalizeHexPrivateKey = (value: string): `0x${string}` => {\n const trimmed = value.trim();\n if (!trimmed) {\n throw new Error('evmPrivateKey is required');\n }\n return trimmed.startsWith('0x')\n ? (trimmed as `0x${string}`)\n : (`0x${trimmed}` as `0x${string}`);\n};\n\nexport function normaliseBaseUrl(input?: string): string {\n const trimmed = input?.trim();\n let baseCandidate =\n trimmed && trimmed.length > 0 ? trimmed : DEFAULT_BASE_URL;\n\n try {\n const url = new URL(stripTrailingSlashes(baseCandidate));\n const hostname = url.hostname.toLowerCase();\n const ensureRegistryPrefix = (): void => {\n if (!url.pathname.startsWith('/registry')) {\n url.pathname =\n url.pathname === '/' ? '/registry' : `/registry${url.pathname}`;\n }\n };\n\n if (hostname === 'hol.org') {\n ensureRegistryPrefix();\n baseCandidate = url.toString();\n } else if (\n hostname === 'registry.hashgraphonline.com' ||\n hostname === 'hashgraphonline.com'\n ) {\n ensureRegistryPrefix();\n url.hostname = 'hol.org';\n baseCandidate = url.toString();\n }\n } catch {}\n\n const withoutTrailing = stripTrailingSlashes(baseCandidate);\n if (/\\/api\\/v\\d+$/i.test(withoutTrailing)) {\n return withoutTrailing;\n }\n if (/\\/api$/i.test(withoutTrailing)) {\n return `${withoutTrailing}/v1`;\n }\n return `${withoutTrailing}/api/v1`;\n}\n\nexport function buildSearchQuery(params: SearchParams): string {\n const query = new URLSearchParams();\n const appendList = (key: string, values?: string[]) => {\n if (!values) {\n return;\n }\n values.forEach(value => {\n if (typeof value === 'string') {\n const trimmed = value.trim();\n if (trimmed.length > 0) {\n query.append(key, trimmed);\n }\n }\n });\n };\n\n if (params.q) {\n const trimmed = params.q.trim();\n if (trimmed.length > 0) {\n query.set('q', trimmed);\n }\n }\n if (typeof params.page === 'number') {\n query.set('page', params.page.toString());\n }\n if (typeof params.limit === 'number') {\n query.set('limit', params.limit.toString());\n }\n if (params.registry) {\n const trimmed = params.registry.trim();\n if (trimmed.length > 0) {\n query.set('registry', trimmed);\n }\n }\n appendList('registries', params.registries);\n if (typeof params.minTrust === 'number') {\n query.set('minTrust', params.minTrust.toString());\n }\n appendList('capabilities', params.capabilities);\n appendList('protocols', params.protocols);\n appendList('adapters', params.adapters);\n\n if (params.metadata) {\n Object.entries(params.metadata).forEach(([key, values]) => {\n if (!key || !Array.isArray(values) || values.length === 0) {\n return;\n }\n const trimmedKey = key.trim();\n if (trimmedKey.length === 0) {\n return;\n }\n values.forEach(value => {\n if (value === undefined || value === null) {\n return;\n }\n query.append(`metadata.${trimmedKey}`, String(value));\n });\n });\n }\n\n if (params.type) {\n const trimmedType = params.type.trim();\n if (trimmedType.length > 0 && trimmedType.toLowerCase() !== 'all') {\n query.set('type', trimmedType);\n }\n }\n\n if (params.verified === true) {\n query.set('verified', 'true');\n }\n\n if (params.online === true) {\n query.set('online', 'true');\n }\n\n if (params.sortBy) {\n const trimmedSort = params.sortBy.trim();\n if (trimmedSort.length > 0) {\n query.set('sortBy', trimmedSort);\n }\n }\n\n if (params.sortOrder) {\n const lowered = params.sortOrder.toLowerCase();\n if (lowered === 'asc' || lowered === 'desc') {\n query.set('sortOrder', lowered);\n }\n }\n const queryString = query.toString();\n return queryString.length > 0 ? `?${queryString}` : '';\n}\n"],"names":[],"mappings":"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"}