@hashgraphonline/standards-agent-kit 0.2.136 → 0.2.138

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 (211) hide show
  1. package/README.md +3 -4
  2. package/dist/cjs/builders/hcs10/hcs10-builder.d.ts +1 -0
  3. package/dist/cjs/builders/hcs2/hcs2-builder.d.ts +8 -7
  4. package/dist/cjs/builders/hcs6/hcs6-builder.d.ts +5 -4
  5. package/dist/cjs/builders/inscriber/inscriber-builder.d.ts +32 -1
  6. package/dist/cjs/index.d.ts +4 -0
  7. package/dist/cjs/signing/bytes-registry.d.ts +17 -0
  8. package/dist/cjs/signing/signer-provider.d.ts +45 -0
  9. package/dist/cjs/standards-agent-kit.cjs +1 -1
  10. package/dist/cjs/standards-agent-kit.cjs.map +1 -1
  11. package/dist/cjs/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  12. package/dist/cjs/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  13. package/dist/cjs/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  14. package/dist/cjs/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  15. package/dist/cjs/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  16. package/dist/cjs/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  17. package/dist/cjs/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  18. package/dist/cjs/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  19. package/dist/cjs/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  20. package/dist/cjs/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
  21. package/dist/cjs/types/inscription-response.d.ts +8 -0
  22. package/dist/cjs/types/tx-results.d.ts +15 -0
  23. package/dist/cjs/utils/CodedError.d.ts +4 -0
  24. package/dist/cjs/utils/inscription-utils.d.ts +21 -0
  25. package/dist/cjs/validation/hip412-schemas.d.ts +2 -2
  26. package/dist/es/builders/hcs10/hcs10-builder.d.ts +1 -0
  27. package/dist/es/builders/hcs2/hcs2-builder.d.ts +8 -7
  28. package/dist/es/builders/hcs6/hcs6-builder.d.ts +5 -4
  29. package/dist/es/builders/inscriber/inscriber-builder.d.ts +32 -1
  30. package/dist/es/index.d.ts +4 -0
  31. package/dist/es/signing/bytes-registry.d.ts +17 -0
  32. package/dist/es/signing/signer-provider.d.ts +45 -0
  33. package/dist/es/standards-agent-kit.es.js +46 -42
  34. package/dist/es/standards-agent-kit.es.js.map +1 -1
  35. package/dist/es/standards-agent-kit.es10.js +24 -83
  36. package/dist/es/standards-agent-kit.es10.js.map +1 -1
  37. package/dist/es/standards-agent-kit.es11.js +224 -20
  38. package/dist/es/standards-agent-kit.es11.js.map +1 -1
  39. package/dist/es/standards-agent-kit.es12.js +78 -27
  40. package/dist/es/standards-agent-kit.es12.js.map +1 -1
  41. package/dist/es/standards-agent-kit.es13.js +26 -36
  42. package/dist/es/standards-agent-kit.es13.js.map +1 -1
  43. package/dist/es/standards-agent-kit.es14.js +17 -39
  44. package/dist/es/standards-agent-kit.es14.js.map +1 -1
  45. package/dist/es/standards-agent-kit.es15.js +36 -58
  46. package/dist/es/standards-agent-kit.es15.js.map +1 -1
  47. package/dist/es/standards-agent-kit.es16.js +45 -18
  48. package/dist/es/standards-agent-kit.es16.js.map +1 -1
  49. package/dist/es/standards-agent-kit.es17.js +53 -16
  50. package/dist/es/standards-agent-kit.es17.js.map +1 -1
  51. package/dist/es/standards-agent-kit.es18.js +18 -28
  52. package/dist/es/standards-agent-kit.es18.js.map +1 -1
  53. package/dist/es/standards-agent-kit.es19.js +26 -12
  54. package/dist/es/standards-agent-kit.es19.js.map +1 -1
  55. package/dist/es/standards-agent-kit.es20.js +38 -136
  56. package/dist/es/standards-agent-kit.es20.js.map +1 -1
  57. package/dist/es/standards-agent-kit.es21.js +13 -24
  58. package/dist/es/standards-agent-kit.es21.js.map +1 -1
  59. package/dist/es/standards-agent-kit.es22.js +136 -39
  60. package/dist/es/standards-agent-kit.es22.js.map +1 -1
  61. package/dist/es/standards-agent-kit.es23.js +25 -41
  62. package/dist/es/standards-agent-kit.es23.js.map +1 -1
  63. package/dist/es/standards-agent-kit.es24.js +49 -31
  64. package/dist/es/standards-agent-kit.es24.js.map +1 -1
  65. package/dist/es/standards-agent-kit.es25.js +34 -18
  66. package/dist/es/standards-agent-kit.es25.js.map +1 -1
  67. package/dist/es/standards-agent-kit.es26.js +35 -19
  68. package/dist/es/standards-agent-kit.es26.js.map +1 -1
  69. package/dist/es/standards-agent-kit.es27.js +45 -32
  70. package/dist/es/standards-agent-kit.es27.js.map +1 -1
  71. package/dist/es/standards-agent-kit.es28.js +54 -25
  72. package/dist/es/standards-agent-kit.es28.js.map +1 -1
  73. package/dist/es/standards-agent-kit.es29.js +35 -23
  74. package/dist/es/standards-agent-kit.es29.js.map +1 -1
  75. package/dist/es/standards-agent-kit.es3.js +41 -1545
  76. package/dist/es/standards-agent-kit.es3.js.map +1 -1
  77. package/dist/es/standards-agent-kit.es30.js +23 -39
  78. package/dist/es/standards-agent-kit.es30.js.map +1 -1
  79. package/dist/es/standards-agent-kit.es31.js +30 -28
  80. package/dist/es/standards-agent-kit.es31.js.map +1 -1
  81. package/dist/es/standards-agent-kit.es32.js +45 -32
  82. package/dist/es/standards-agent-kit.es32.js.map +1 -1
  83. package/dist/es/standards-agent-kit.es33.js +50 -89
  84. package/dist/es/standards-agent-kit.es33.js.map +1 -1
  85. package/dist/es/standards-agent-kit.es34.js +35 -228
  86. package/dist/es/standards-agent-kit.es34.js.map +1 -1
  87. package/dist/es/standards-agent-kit.es35.js +87 -212
  88. package/dist/es/standards-agent-kit.es35.js.map +1 -1
  89. package/dist/es/standards-agent-kit.es36.js +188 -128
  90. package/dist/es/standards-agent-kit.es36.js.map +1 -1
  91. package/dist/es/standards-agent-kit.es37.js +167 -561
  92. package/dist/es/standards-agent-kit.es37.js.map +1 -1
  93. package/dist/es/standards-agent-kit.es38.js +236 -31
  94. package/dist/es/standards-agent-kit.es38.js.map +1 -1
  95. package/dist/es/standards-agent-kit.es39.js +483 -206
  96. package/dist/es/standards-agent-kit.es39.js.map +1 -1
  97. package/dist/es/standards-agent-kit.es4.js +359 -81
  98. package/dist/es/standards-agent-kit.es4.js.map +1 -1
  99. package/dist/es/standards-agent-kit.es40.js +39 -135
  100. package/dist/es/standards-agent-kit.es40.js.map +1 -1
  101. package/dist/es/standards-agent-kit.es41.js +244 -28
  102. package/dist/es/standards-agent-kit.es41.js.map +1 -1
  103. package/dist/es/standards-agent-kit.es42.js +132 -418
  104. package/dist/es/standards-agent-kit.es42.js.map +1 -1
  105. package/dist/es/standards-agent-kit.es43.js +28 -184
  106. package/dist/es/standards-agent-kit.es43.js.map +1 -1
  107. package/dist/es/standards-agent-kit.es44.js +423 -3
  108. package/dist/es/standards-agent-kit.es44.js.map +1 -1
  109. package/dist/es/standards-agent-kit.es45.js +185 -24
  110. package/dist/es/standards-agent-kit.es45.js.map +1 -1
  111. package/dist/es/standards-agent-kit.es46.js +3 -3
  112. package/dist/es/standards-agent-kit.es46.js.map +1 -1
  113. package/dist/es/standards-agent-kit.es47.js +21 -50
  114. package/dist/es/standards-agent-kit.es47.js.map +1 -1
  115. package/dist/es/standards-agent-kit.es48.js +8 -3
  116. package/dist/es/standards-agent-kit.es48.js.map +1 -1
  117. package/dist/es/standards-agent-kit.es49.js +3 -39
  118. package/dist/es/standards-agent-kit.es49.js.map +1 -1
  119. package/dist/es/standards-agent-kit.es5.js +1747 -73
  120. package/dist/es/standards-agent-kit.es5.js.map +1 -1
  121. package/dist/es/standards-agent-kit.es50.js +18 -16
  122. package/dist/es/standards-agent-kit.es50.js.map +1 -1
  123. package/dist/es/standards-agent-kit.es51.js +49 -49
  124. package/dist/es/standards-agent-kit.es51.js.map +1 -1
  125. package/dist/es/standards-agent-kit.es52.js +6 -0
  126. package/dist/es/standards-agent-kit.es52.js.map +1 -0
  127. package/dist/es/standards-agent-kit.es53.js +43 -0
  128. package/dist/es/standards-agent-kit.es53.js.map +1 -0
  129. package/dist/es/standards-agent-kit.es54.js +22 -0
  130. package/dist/es/standards-agent-kit.es54.js.map +1 -0
  131. package/dist/es/standards-agent-kit.es55.js +77 -0
  132. package/dist/es/standards-agent-kit.es55.js.map +1 -0
  133. package/dist/es/standards-agent-kit.es56.js +7 -0
  134. package/dist/es/standards-agent-kit.es56.js.map +1 -0
  135. package/dist/es/standards-agent-kit.es6.js +347 -32
  136. package/dist/es/standards-agent-kit.es6.js.map +1 -1
  137. package/dist/es/standards-agent-kit.es7.js +142 -293
  138. package/dist/es/standards-agent-kit.es7.js.map +1 -1
  139. package/dist/es/standards-agent-kit.es8.js +201 -21
  140. package/dist/es/standards-agent-kit.es8.js.map +1 -1
  141. package/dist/es/standards-agent-kit.es9.js +301 -213
  142. package/dist/es/standards-agent-kit.es9.js.map +1 -1
  143. package/dist/es/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  144. package/dist/es/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  145. package/dist/es/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  146. package/dist/es/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  147. package/dist/es/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  148. package/dist/es/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  149. package/dist/es/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  150. package/dist/es/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  151. package/dist/es/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  152. package/dist/es/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
  153. package/dist/es/types/inscription-response.d.ts +8 -0
  154. package/dist/es/types/tx-results.d.ts +15 -0
  155. package/dist/es/utils/CodedError.d.ts +4 -0
  156. package/dist/es/utils/inscription-utils.d.ts +21 -0
  157. package/dist/es/validation/hip412-schemas.d.ts +2 -2
  158. package/dist/umd/builders/hcs10/hcs10-builder.d.ts +1 -0
  159. package/dist/umd/builders/hcs2/hcs2-builder.d.ts +8 -7
  160. package/dist/umd/builders/hcs6/hcs6-builder.d.ts +5 -4
  161. package/dist/umd/builders/inscriber/inscriber-builder.d.ts +32 -1
  162. package/dist/umd/index.d.ts +4 -0
  163. package/dist/umd/signing/bytes-registry.d.ts +17 -0
  164. package/dist/umd/signing/signer-provider.d.ts +45 -0
  165. package/dist/umd/standards-agent-kit.umd.js +1 -1
  166. package/dist/umd/standards-agent-kit.umd.js.map +1 -1
  167. package/dist/umd/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
  168. package/dist/umd/tools/hcs2/CreateRegistryTool.d.ts +2 -2
  169. package/dist/umd/tools/hcs2/DeleteEntryTool.d.ts +2 -2
  170. package/dist/umd/tools/hcs2/UpdateEntryTool.d.ts +2 -2
  171. package/dist/umd/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
  172. package/dist/umd/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
  173. package/dist/umd/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
  174. package/dist/umd/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
  175. package/dist/umd/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
  176. package/dist/umd/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
  177. package/dist/umd/types/inscription-response.d.ts +8 -0
  178. package/dist/umd/types/tx-results.d.ts +15 -0
  179. package/dist/umd/utils/CodedError.d.ts +4 -0
  180. package/dist/umd/utils/inscription-utils.d.ts +21 -0
  181. package/dist/umd/validation/hip412-schemas.d.ts +2 -2
  182. package/package.json +10 -5
  183. package/src/builders/hcs10/hcs10-builder.ts +239 -6
  184. package/src/builders/hcs2/hcs2-builder.ts +302 -9
  185. package/src/builders/hcs6/hcs6-builder.ts +79 -4
  186. package/src/builders/inscriber/inscriber-builder.ts +235 -2
  187. package/src/hcs10/HCS10Client.ts +1 -1
  188. package/src/index.ts +5 -1
  189. package/src/lib/zod-render/schema-extension.ts +0 -1
  190. package/src/signing/bytes-registry.ts +501 -0
  191. package/src/signing/signer-provider.ts +120 -0
  192. package/src/tools/hcs2/CreateRegistryTool.ts +30 -5
  193. package/src/tools/hcs2/DeleteEntryTool.ts +16 -2
  194. package/src/tools/hcs2/MigrateRegistryTool.ts +16 -2
  195. package/src/tools/hcs2/QueryRegistryTool.ts +11 -2
  196. package/src/tools/hcs2/RegisterEntryTool.ts +17 -3
  197. package/src/tools/hcs2/UpdateEntryTool.ts +16 -2
  198. package/src/tools/hcs6/CreateDynamicRegistryTool.ts +17 -3
  199. package/src/tools/hcs6/RegisterDynamicHashinalTool.ts +17 -3
  200. package/src/tools/hcs6/UpdateDynamicHashinalTool.ts +17 -3
  201. package/src/tools/inscriber/InscribeFromBufferTool.ts +126 -21
  202. package/src/tools/inscriber/InscribeFromFileTool.ts +10 -13
  203. package/src/tools/inscriber/InscribeFromUrlTool.ts +15 -11
  204. package/src/tools/inscriber/InscribeHashinalTool.ts +40 -168
  205. package/src/tools/inscriber/RetrieveInscriptionTool.ts +15 -16
  206. package/src/types/inscription-response.ts +27 -0
  207. package/src/types/tx-results.ts +18 -0
  208. package/src/utils/CodedError.ts +8 -0
  209. package/src/utils/Encryption.ts +0 -2
  210. package/src/utils/ensure-agent-has-hbar.ts +4 -5
  211. package/src/utils/inscription-utils.ts +53 -0
@@ -1 +1 @@
1
- {"version":3,"file":"standards-agent-kit.es41.js","sources":["../../src/plugins/hedera/HbarPricePlugin.ts"],"sourcesContent":["\nexport { HederaGetHbarPriceTool as GetHbarPriceTool } from 'hedera-agent-kit';\n\nimport { BasePlugin, GenericPluginContext, HederaTool, HederaAgentKit } from 'hedera-agent-kit';\nimport { HederaGetHbarPriceTool } from 'hedera-agent-kit';\n\n/**\n * Plugin to provide tools related to Hedera network information, like HBAR price.\n * Uses the built-in HederaGetHbarPriceTool from hedera-agent-kit.\n */\nexport class HbarPricePlugin extends BasePlugin<GenericPluginContext> {\n id = 'hedera-hbar-price';\n name = 'Hedera HBAR Price Plugin';\n description = 'Provides tools to interact with Hedera network data, specifically HBAR price.';\n version = '1.0.0';\n author = 'Hashgraph Online';\n\n private tools: HederaTool[] = [];\n\n override async initialize(context: GenericPluginContext): Promise<void> {\n await super.initialize(context);\n this.initializeTools();\n }\n\n private initializeTools(): void {\n this.tools = [\n new HederaGetHbarPriceTool({\n hederaKit: this.context.config.hederaKit as HederaAgentKit,\n logger: this.context.logger\n })\n ];\n }\n\n getTools(): HederaTool[] {\n return this.tools;\n }\n}"],"names":["HederaGetHbarPriceTool"],"mappings":";;AAUO,MAAM,wBAAwB,WAAiC;AAAA,EAA/D,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,KAAK;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AACd,SAAA,UAAU;AACV,SAAA,SAAS;AAET,SAAQ,QAAsB,CAAA;AAAA,EAAC;AAAA,EAE/B,MAAe,WAAW,SAA8C;AACtE,UAAM,MAAM,WAAW,OAAO;AAC9B,SAAK,gBAAA;AAAA,EACP;AAAA,EAEQ,kBAAwB;AAC9B,SAAK,QAAQ;AAAA,MACX,IAAIA,uBAAuB;AAAA,QACzB,WAAW,KAAK,QAAQ,OAAO;AAAA,QAC/B,QAAQ,KAAK,QAAQ;AAAA,MAAA,CACtB;AAAA,IAAA;AAAA,EAEL;AAAA,EAEA,WAAyB;AACvB,WAAO,KAAK;AAAA,EACd;AACF;"}
1
+ {"version":3,"file":"standards-agent-kit.es41.js","sources":["../../src/state/open-convai-state.ts"],"sourcesContent":["import { updateEnvFile } from '../utils/state-tools';\nimport {\n RegisteredAgent,\n ActiveConnection,\n IStateManager,\n AgentPersistenceOptions,\n EnvFilePersistenceOptions,\n ConnectionStatus,\n} from './state-types';\nimport {\n ConnectionsManager,\n HCS10BaseClient,\n Connection,\n Logger,\n IConnectionsManager,\n} from '@hashgraphonline/standards-sdk';\n\n/**\n * Implementation of the IStateManager interface for the OpenConvai system.\n * Manages agent state and connection information with thread safety and\n * proper timestamp tracking.\n */\nexport class OpenConvaiState implements IStateManager {\n private currentAgent: RegisteredAgent | null = null;\n private connectionMessageTimestamps: Record<string, number> = {};\n private defaultEnvFilePath?: string;\n private defaultPrefix: string;\n private connectionsManager: IConnectionsManager | null = null;\n private logger: Logger;\n\n /**\n * Creates a new OpenConvaiState instance\n * @param options - Options for environment variable persistence\n */\n constructor(options?: {\n defaultEnvFilePath?: string;\n defaultPrefix?: string;\n baseClient?: HCS10BaseClient;\n disableLogging?: boolean;\n }) {\n this.defaultEnvFilePath = options?.defaultEnvFilePath;\n this.defaultPrefix = options?.defaultPrefix ?? 'TODD';\n const shouldSilence = options?.disableLogging || process.env.DISABLE_LOGGING === 'true';\n this.logger = new Logger({ module: 'OpenConvaiState', silent: shouldSilence });\n\n if (options?.baseClient) {\n this.initializeConnectionsManager(options.baseClient);\n }\n }\n\n /**\n * Initializes the ConnectionsManager\n * @param baseClient - HCS10BaseClient instance to use\n */\n initializeConnectionsManager(\n baseClient: HCS10BaseClient\n ): IConnectionsManager {\n if (!this.connectionsManager) {\n this.logger.debug('Initializing ConnectionsManager');\n this.connectionsManager = new ConnectionsManager({\n baseClient,\n logLevel: 'error',\n });\n } else {\n this.logger.debug('ConnectionsManager already initialized');\n }\n return this.connectionsManager;\n }\n\n /**\n * Gets the ConnectionsManager instance\n * @returns The ConnectionsManager instance, or null if not initialized\n */\n getConnectionsManager(): IConnectionsManager | null {\n return this.connectionsManager;\n }\n\n /**\n * Sets the current active agent and clears any previous connection data.\n * This should be called when switching between agents.\n */\n setCurrentAgent(agent: RegisteredAgent | null): void {\n this.currentAgent = agent;\n this.connectionMessageTimestamps = {};\n\n if (this.connectionsManager) {\n this.connectionsManager.clearAll();\n }\n }\n\n /**\n * Returns the currently active agent or null if none is set.\n */\n getCurrentAgent(): RegisteredAgent | null {\n return this.currentAgent;\n }\n\n /**\n * Adds a new connection to the active connections list.\n * Ensures no duplicates are added based on connectionTopicId.\n * Initializes timestamp tracking for the connection.\n */\n addActiveConnection(connection: ActiveConnection): void {\n if (!this.connectionsManager) {\n this.logger.error(\n 'ConnectionsManager not initialized. Call initializeConnectionsManager before adding connections.'\n );\n throw new Error(\n 'ConnectionsManager not initialized. Call initializeConnectionsManager before adding connections.'\n );\n }\n\n const sdkConnection: Connection = {\n connectionTopicId: connection.connectionTopicId,\n targetAccountId: connection.targetAccountId,\n targetAgentName: connection.targetAgentName,\n targetInboundTopicId: connection.targetInboundTopicId,\n status: this.convertConnectionStatus(connection.status || 'established'),\n isPending: connection.isPending || false,\n needsConfirmation: connection.needsConfirmation || false,\n created: connection.created || new Date(),\n lastActivity: connection.lastActivity,\n profileInfo: connection.profileInfo,\n connectionRequestId: connection.connectionRequestId,\n processed: true,\n };\n\n this.connectionsManager.updateOrAddConnection(sdkConnection);\n\n this.initializeTimestampIfNeeded(connection.connectionTopicId);\n }\n\n /**\n * Updates an existing connection or adds it if not found.\n * Preserves existing properties when updating by merging objects.\n */\n updateOrAddConnection(connection: ActiveConnection): void {\n this.addActiveConnection(connection);\n }\n\n /**\n * Returns a copy of all active connections.\n */\n listConnections(): ActiveConnection[] {\n if (!this.connectionsManager) {\n this.logger.debug(\n 'ConnectionsManager not initialized, returning empty connections list'\n );\n return [];\n }\n\n return this.connectionsManager\n .getAllConnections()\n .map((conn) => this.convertToActiveConnection(conn));\n }\n\n /**\n * Finds a connection by its identifier, which can be:\n * - A 1-based index as displayed in the connection list\n * - A target account ID string\n * - A connection topic ID string\n */\n getConnectionByIdentifier(identifier: string): ActiveConnection | undefined {\n if (!this.connectionsManager) {\n return undefined;\n }\n\n const connections = this.listConnections();\n\n const numericIndex = parseInt(identifier) - 1;\n if (\n !isNaN(numericIndex) &&\n numericIndex >= 0 &&\n numericIndex < connections.length\n ) {\n return connections[numericIndex];\n }\n\n const byTopicId =\n this.connectionsManager.getConnectionByTopicId(identifier);\n if (byTopicId) {\n return this.convertToActiveConnection(byTopicId);\n }\n\n const byAccountId =\n this.connectionsManager.getConnectionByAccountId(identifier);\n if (byAccountId) {\n return this.convertToActiveConnection(byAccountId);\n }\n\n return undefined;\n }\n\n /**\n * Gets the last processed message timestamp for a connection.\n * Returns 0 if no timestamp has been recorded.\n */\n getLastTimestamp(connectionTopicId: string): number {\n return this.connectionMessageTimestamps[connectionTopicId] || 0;\n }\n\n /**\n * Updates the last processed message timestamp for a connection,\n * but only if the new timestamp is more recent than the existing one.\n */\n updateTimestamp(connectionTopicId: string, timestampNanos: number): void {\n\n if (!(connectionTopicId in this.connectionMessageTimestamps)) {\n this.connectionMessageTimestamps[connectionTopicId] = timestampNanos;\n return;\n }\n\n const currentTimestamp =\n this.connectionMessageTimestamps[connectionTopicId];\n if (timestampNanos > currentTimestamp) {\n this.connectionMessageTimestamps[connectionTopicId] = timestampNanos;\n }\n }\n\n /**\n * Helper method to initialize timestamp tracking for a connection\n * if it doesn't already exist.\n */\n private initializeTimestampIfNeeded(connectionTopicId: string): void {\n if (!(connectionTopicId in this.connectionMessageTimestamps)) {\n this.connectionMessageTimestamps[connectionTopicId] =\n Date.now() * 1_000_000;\n }\n }\n\n /**\n * Converts ConnectionStatus to SDK status format\n */\n private convertConnectionStatus(\n status: string\n ): 'pending' | 'established' | 'needs_confirmation' | 'closed' {\n switch (status) {\n case 'pending':\n return 'pending';\n case 'established':\n return 'established';\n case 'needs confirmation':\n return 'needs_confirmation';\n default:\n return 'established';\n }\n }\n\n /**\n * Converts SDK Connection to ActiveConnection\n */\n private convertToActiveConnection(conn: Connection): ActiveConnection {\n return {\n targetAccountId: conn.targetAccountId,\n targetAgentName: conn.targetAgentName || `Agent ${conn.targetAccountId}`,\n targetInboundTopicId: conn.targetInboundTopicId || '',\n connectionTopicId: conn.connectionTopicId,\n status: this.convertToStateStatus(conn.status),\n created: conn.created,\n lastActivity: conn.lastActivity,\n isPending: conn.isPending,\n needsConfirmation: conn.needsConfirmation,\n profileInfo: conn.profileInfo,\n connectionRequestId: conn.connectionRequestId,\n };\n }\n\n /**\n * Converts SDK status to state status format\n */\n private convertToStateStatus(status: string): ConnectionStatus {\n switch (status) {\n case 'pending':\n return 'pending';\n case 'established':\n return 'established';\n case 'needs_confirmation':\n return 'needs confirmation';\n case 'closed':\n return 'established'; // Mapping closed to established for compatibility\n default:\n return 'unknown';\n }\n }\n\n /**\n * Persists agent data to environment variables\n * @param agent - The agent data to persist\n * @param options - Environment file persistence options\n */\n async persistAgentData(\n agent: RegisteredAgent,\n options?: AgentPersistenceOptions\n ): Promise<void> {\n if (options?.type && options.type !== 'env-file') {\n throw new Error(\n `Unsupported persistence type: ${options.type}. Only 'env-file' is supported.`\n );\n }\n\n const envFilePath =\n (options as EnvFilePersistenceOptions)?.envFilePath ||\n this.defaultEnvFilePath ||\n process.env.ENV_FILE_PATH ||\n '.env';\n\n if (!envFilePath) {\n throw new Error(\n 'Environment file path could not be determined for agent data persistence'\n );\n }\n\n const prefix =\n (options as EnvFilePersistenceOptions)?.prefix || this.defaultPrefix;\n\n if (!agent.accountId || !agent.inboundTopicId || !agent.outboundTopicId) {\n throw new Error('Agent data incomplete, cannot persist to environment');\n }\n\n const updates: Record<string, string> = {\n [`${prefix}_ACCOUNT_ID`]: agent.accountId,\n [`${prefix}_INBOUND_TOPIC_ID`]: agent.inboundTopicId,\n [`${prefix}_OUTBOUND_TOPIC_ID`]: agent.outboundTopicId,\n };\n\n if (agent.privateKey) {\n updates[`${prefix}_PRIVATE_KEY`] = agent.privateKey;\n }\n\n if (agent.profileTopicId) {\n updates[`${prefix}_PROFILE_TOPIC_ID`] = agent.profileTopicId;\n }\n\n await updateEnvFile(envFilePath, updates);\n }\n}\n"],"names":[],"mappings":";;AAsBO,MAAM,gBAAyC;AAAA;AAAA;AAAA;AAAA;AAAA,EAYpD,YAAY,SAKT;AAhBH,SAAQ,eAAuC;AAC/C,SAAQ,8BAAsD,CAAA;AAG9D,SAAQ,qBAAiD;AAavD,SAAK,qBAAqB,SAAS;AACnC,SAAK,gBAAgB,SAAS,iBAAiB;AAC/C,UAAM,gBAAgB,SAAS,kBAAkB,QAAQ,IAAI,oBAAoB;AACjF,SAAK,SAAS,IAAI,OAAO,EAAE,QAAQ,mBAAmB,QAAQ,eAAe;AAE7E,QAAI,SAAS,YAAY;AACvB,WAAK,6BAA6B,QAAQ,UAAU;AAAA,IACtD;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,6BACE,YACqB;AACrB,QAAI,CAAC,KAAK,oBAAoB;AAC5B,WAAK,OAAO,MAAM,iCAAiC;AACnD,WAAK,qBAAqB,IAAI,mBAAmB;AAAA,QAC/C;AAAA,QACA,UAAU;AAAA,MAAA,CACX;AAAA,IACH,OAAO;AACL,WAAK,OAAO,MAAM,wCAAwC;AAAA,IAC5D;AACA,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,wBAAoD;AAClD,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,OAAqC;AACnD,SAAK,eAAe;AACpB,SAAK,8BAA8B,CAAA;AAEnC,QAAI,KAAK,oBAAoB;AAC3B,WAAK,mBAAmB,SAAA;AAAA,IAC1B;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,kBAA0C;AACxC,WAAO,KAAK;AAAA,EACd;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,oBAAoB,YAAoC;AACtD,QAAI,CAAC,KAAK,oBAAoB;AAC5B,WAAK,OAAO;AAAA,QACV;AAAA,MAAA;AAEF,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AAEA,UAAM,gBAA4B;AAAA,MAChC,mBAAmB,WAAW;AAAA,MAC9B,iBAAiB,WAAW;AAAA,MAC5B,iBAAiB,WAAW;AAAA,MAC5B,sBAAsB,WAAW;AAAA,MACjC,QAAQ,KAAK,wBAAwB,WAAW,UAAU,aAAa;AAAA,MACvE,WAAW,WAAW,aAAa;AAAA,MACnC,mBAAmB,WAAW,qBAAqB;AAAA,MACnD,SAAS,WAAW,WAAW,oBAAI,KAAA;AAAA,MACnC,cAAc,WAAW;AAAA,MACzB,aAAa,WAAW;AAAA,MACxB,qBAAqB,WAAW;AAAA,MAChC,WAAW;AAAA,IAAA;AAGb,SAAK,mBAAmB,sBAAsB,aAAa;AAE3D,SAAK,4BAA4B,WAAW,iBAAiB;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,sBAAsB,YAAoC;AACxD,SAAK,oBAAoB,UAAU;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAsC;AACpC,QAAI,CAAC,KAAK,oBAAoB;AAC5B,WAAK,OAAO;AAAA,QACV;AAAA,MAAA;AAEF,aAAO,CAAA;AAAA,IACT;AAEA,WAAO,KAAK,mBACT,oBACA,IAAI,CAAC,SAAS,KAAK,0BAA0B,IAAI,CAAC;AAAA,EACvD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,0BAA0B,YAAkD;AAC1E,QAAI,CAAC,KAAK,oBAAoB;AAC5B,aAAO;AAAA,IACT;AAEA,UAAM,cAAc,KAAK,gBAAA;AAEzB,UAAM,eAAe,SAAS,UAAU,IAAI;AAC5C,QACE,CAAC,MAAM,YAAY,KACnB,gBAAgB,KAChB,eAAe,YAAY,QAC3B;AACA,aAAO,YAAY,YAAY;AAAA,IACjC;AAEA,UAAM,YACJ,KAAK,mBAAmB,uBAAuB,UAAU;AAC3D,QAAI,WAAW;AACb,aAAO,KAAK,0BAA0B,SAAS;AAAA,IACjD;AAEA,UAAM,cACJ,KAAK,mBAAmB,yBAAyB,UAAU;AAC7D,QAAI,aAAa;AACf,aAAO,KAAK,0BAA0B,WAAW;AAAA,IACnD;AAEA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,iBAAiB,mBAAmC;AAClD,WAAO,KAAK,4BAA4B,iBAAiB,KAAK;AAAA,EAChE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAgB,mBAA2B,gBAA8B;AAEvE,QAAI,EAAE,qBAAqB,KAAK,8BAA8B;AAC5D,WAAK,4BAA4B,iBAAiB,IAAI;AACtD;AAAA,IACF;AAEA,UAAM,mBACJ,KAAK,4BAA4B,iBAAiB;AACpD,QAAI,iBAAiB,kBAAkB;AACrC,WAAK,4BAA4B,iBAAiB,IAAI;AAAA,IACxD;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMQ,4BAA4B,mBAAiC;AACnE,QAAI,EAAE,qBAAqB,KAAK,8BAA8B;AAC5D,WAAK,4BAA4B,iBAAiB,IAChD,KAAK,QAAQ;AAAA,IACjB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKQ,wBACN,QAC6D;AAC7D,YAAQ,QAAA;AAAA,MACN,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA,EAKQ,0BAA0B,MAAoC;AACpE,WAAO;AAAA,MACL,iBAAiB,KAAK;AAAA,MACtB,iBAAiB,KAAK,mBAAmB,SAAS,KAAK,eAAe;AAAA,MACtE,sBAAsB,KAAK,wBAAwB;AAAA,MACnD,mBAAmB,KAAK;AAAA,MACxB,QAAQ,KAAK,qBAAqB,KAAK,MAAM;AAAA,MAC7C,SAAS,KAAK;AAAA,MACd,cAAc,KAAK;AAAA,MACnB,WAAW,KAAK;AAAA,MAChB,mBAAmB,KAAK;AAAA,MACxB,aAAa,KAAK;AAAA,MAClB,qBAAqB,KAAK;AAAA,IAAA;AAAA,EAE9B;AAAA;AAAA;AAAA;AAAA,EAKQ,qBAAqB,QAAkC;AAC7D,YAAQ,QAAA;AAAA,MACN,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA;AAAA,MACT;AACE,eAAO;AAAA,IAAA;AAAA,EAEb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBACJ,OACA,SACe;AACf,QAAI,SAAS,QAAQ,QAAQ,SAAS,YAAY;AAChD,YAAM,IAAI;AAAA,QACR,iCAAiC,QAAQ,IAAI;AAAA,MAAA;AAAA,IAEjD;AAEA,UAAM,cACH,SAAuC,eACxC,KAAK,sBACL,QAAQ,IAAI,iBACZ;AAQF,UAAM,SACH,SAAuC,UAAU,KAAK;AAEzD,QAAI,CAAC,MAAM,aAAa,CAAC,MAAM,kBAAkB,CAAC,MAAM,iBAAiB;AACvE,YAAM,IAAI,MAAM,sDAAsD;AAAA,IACxE;AAEA,UAAM,UAAkC;AAAA,MACtC,CAAC,GAAG,MAAM,aAAa,GAAG,MAAM;AAAA,MAChC,CAAC,GAAG,MAAM,mBAAmB,GAAG,MAAM;AAAA,MACtC,CAAC,GAAG,MAAM,oBAAoB,GAAG,MAAM;AAAA,IAAA;AAGzC,QAAI,MAAM,YAAY;AACpB,cAAQ,GAAG,MAAM,cAAc,IAAI,MAAM;AAAA,IAC3C;AAEA,QAAI,MAAM,gBAAgB;AACxB,cAAQ,GAAG,MAAM,mBAAmB,IAAI,MAAM;AAAA,IAChD;AAEA,UAAM,cAAc,aAAa,OAAO;AAAA,EAC1C;AACF;"}
@@ -1,427 +1,141 @@
1
- import { ZodType } from "zod";
2
- function extendZodSchema(schema) {
3
- const extendedSchema = schema;
4
- extendedSchema.withRender = function(config) {
5
- const newSchema = Object.create(this);
6
- const currentConfig = this._renderConfig || {};
7
- const mergedConfig = {
8
- ...currentConfig,
9
- ...config,
10
- ui: {
11
- ...currentConfig.ui || {},
12
- ...config.ui || {}
13
- }
14
- };
15
- if (currentConfig.progressive || config.progressive) {
16
- mergedConfig.progressive = {
17
- ...currentConfig.progressive || {},
18
- ...config.progressive || {}
19
- };
20
- }
21
- if (currentConfig.block || config.block) {
22
- mergedConfig.block = {
23
- ...currentConfig.block || {},
24
- ...config.block || {}
25
- };
26
- }
27
- newSchema._renderConfig = mergedConfig;
28
- newSchema.withRender = extendedSchema.withRender;
29
- newSchema.withProgressive = extendedSchema.withProgressive;
30
- newSchema.withBlock = extendedSchema.withBlock;
31
- return newSchema;
32
- };
33
- extendedSchema.withProgressive = function(priority, group) {
34
- const currentConfig = this._renderConfig || { fieldType: inferFieldTypeFromSchema(schema) };
35
- return this.withRender({
36
- ...currentConfig,
37
- progressive: {
38
- priority,
39
- group
40
- }
1
+ import { ServerSigner, HederaAgentKit } from "hedera-agent-kit";
2
+ import { HCS10Builder } from "./standards-agent-kit.es5.js";
3
+ import { RegisterAgentTool } from "./standards-agent-kit.es11.js";
4
+ import { FindRegistrationsTool } from "./standards-agent-kit.es16.js";
5
+ import { InitiateConnectionTool } from "./standards-agent-kit.es13.js";
6
+ import { ListConnectionsTool } from "./standards-agent-kit.es14.js";
7
+ import { SendMessageToConnectionTool } from "./standards-agent-kit.es12.js";
8
+ import { CheckMessagesTool } from "./standards-agent-kit.es15.js";
9
+ import { ConnectionMonitorTool } from "./standards-agent-kit.es17.js";
10
+ import { ManageConnectionRequestsTool } from "./standards-agent-kit.es18.js";
11
+ import { AcceptConnectionRequestTool } from "./standards-agent-kit.es19.js";
12
+ import { RetrieveProfileTool } from "./standards-agent-kit.es20.js";
13
+ import { ListUnapprovedConnectionRequestsTool } from "./standards-agent-kit.es21.js";
14
+ import { OpenConvaiState } from "./standards-agent-kit.es41.js";
15
+ import { Logger } from "@hashgraphonline/standards-sdk";
16
+ import { ENV_FILE_PATH } from "./standards-agent-kit.es47.js";
17
+ const initializeStandardsAgentKit = async (options) => {
18
+ const config = options?.clientConfig || {};
19
+ const operatorId = config.operatorId || process.env.HEDERA_OPERATOR_ID;
20
+ const operatorPrivateKey = config.operatorKey || process.env.HEDERA_OPERATOR_KEY;
21
+ const networkEnv = config.network || process.env.HEDERA_NETWORK || "testnet";
22
+ const shouldSilence = process.env.DISABLE_LOGGING === "true";
23
+ const logger = Logger.getInstance({
24
+ level: config.logLevel || "info",
25
+ silent: shouldSilence
26
+ });
27
+ let network;
28
+ if (networkEnv === "mainnet") {
29
+ network = "mainnet";
30
+ } else if (networkEnv === "testnet") {
31
+ network = "testnet";
32
+ } else {
33
+ logger.warn(
34
+ `Unsupported network specified: '${networkEnv}'. Defaulting to 'testnet'.`
35
+ );
36
+ network = "testnet";
37
+ }
38
+ if (!operatorId || !operatorPrivateKey) {
39
+ throw new Error(
40
+ "Operator ID and private key must be provided either through options or environment variables."
41
+ );
42
+ }
43
+ const stateManager = options?.stateManager || new OpenConvaiState({
44
+ defaultEnvFilePath: ENV_FILE_PATH,
45
+ defaultPrefix: "TODD"
46
+ });
47
+ logger.info("State manager initialized");
48
+ const signer = new ServerSigner(operatorId, operatorPrivateKey, network);
49
+ const hederaKit = new HederaAgentKit(signer);
50
+ await hederaKit.initialize();
51
+ logger.info(`HederaAgentKit initialized for ${operatorId} on ${network}`);
52
+ const hcs10Builder = new HCS10Builder(hederaKit, stateManager, {
53
+ useEncryption: config.useEncryption,
54
+ registryUrl: config.registryUrl,
55
+ logLevel: config.logLevel
56
+ });
57
+ let monitoringHederaKit;
58
+ let monitoringHcs10Builder;
59
+ if (options?.monitoringClient) {
60
+ const monitoringSigner = new ServerSigner(operatorId, operatorPrivateKey, network);
61
+ monitoringHederaKit = new HederaAgentKit(monitoringSigner);
62
+ await monitoringHederaKit.initialize();
63
+ monitoringHcs10Builder = new HCS10Builder(monitoringHederaKit, stateManager, {
64
+ useEncryption: config.useEncryption,
65
+ registryUrl: config.registryUrl,
66
+ logLevel: "error"
41
67
  });
42
- };
43
- extendedSchema.withBlock = function(blockId) {
44
- const currentConfig = this._renderConfig || { fieldType: inferFieldTypeFromSchema(schema) };
45
- return this.withRender({
46
- ...currentConfig,
47
- block: {
48
- id: blockId,
49
- type: "field",
50
- reusable: true
51
- }
68
+ logger.info("Monitoring client initialized");
69
+ }
70
+ const tools = {};
71
+ tools.registerAgentTool = new RegisterAgentTool({
72
+ hederaKit,
73
+ hcs10Builder,
74
+ logger: void 0
75
+ });
76
+ if (options?.createAllTools) {
77
+ tools.findRegistrationsTool = new FindRegistrationsTool({
78
+ hederaKit,
79
+ hcs10Builder,
80
+ logger: void 0
52
81
  });
53
- };
54
- return extendedSchema;
55
- }
56
- function hasRenderConfig(schema) {
57
- return Boolean(schema && typeof schema.withRender === "function");
58
- }
59
- function getRenderConfig(schema) {
60
- if (hasRenderConfig(schema)) {
61
- return schema._renderConfig;
62
- }
63
- return void 0;
64
- }
65
- function inferFieldTypeFromSchema(schema) {
66
- const typeName = schema._def?.typeName;
67
- switch (typeName) {
68
- case "ZodString": {
69
- const stringChecks = schema._def?.checks || [];
70
- for (const check of stringChecks) {
71
- if (check.kind === "email") {
72
- return "text";
73
- }
74
- if (check.kind === "url") {
75
- return "text";
76
- }
77
- }
78
- return "text";
79
- }
80
- case "ZodNumber":
81
- case "ZodBigInt":
82
- return "number";
83
- case "ZodBoolean":
84
- return "checkbox";
85
- case "ZodEnum":
86
- case "ZodNativeEnum":
87
- return "select";
88
- case "ZodArray":
89
- return "array";
90
- case "ZodUnion":
91
- case "ZodDiscriminatedUnion":
92
- return "select";
93
- case "ZodDate":
94
- return "text";
95
- case "ZodObject":
96
- return "object";
97
- case "ZodOptional":
98
- case "ZodDefault": {
99
- const innerType = schema._def?.innerType;
100
- if (innerType) {
101
- return inferFieldTypeFromSchema(innerType);
102
- }
103
- return "text";
104
- }
105
- default:
106
- return "text";
107
- }
108
- }
109
- function extractOptionsFromSchema(schema) {
110
- const typeName = schema._def?.typeName;
111
- if (typeName === "ZodEnum") {
112
- const values = schema._def?.values;
113
- if (Array.isArray(values)) {
114
- return values.map((value) => ({
115
- value,
116
- label: value.charAt(0).toUpperCase() + value.slice(1).replace(/[_-]/g, " ")
117
- }));
118
- }
119
- }
120
- if (typeName === "ZodNativeEnum") {
121
- const enumObject = schema._def?.values;
122
- if (enumObject) {
123
- return Object.entries(enumObject).map(([key, value]) => ({
124
- value,
125
- label: key.replace(/[_-]/g, " ")
126
- }));
127
- }
128
- }
129
- if (typeName === "ZodUnion") {
130
- const options = [];
131
- const unionOptions = schema._def?.options;
132
- if (Array.isArray(unionOptions)) {
133
- for (const option of unionOptions) {
134
- if (option._def?.typeName === "ZodLiteral") {
135
- const value = option._def?.value;
136
- if (value !== void 0) {
137
- options.push({
138
- value,
139
- label: typeof value === "string" ? value.charAt(0).toUpperCase() + value.slice(1) : String(value)
140
- });
141
- }
142
- }
143
- }
144
- }
145
- return options.length > 0 ? options : void 0;
146
- }
147
- return void 0;
148
- }
149
- function isOptionalSchema(schema) {
150
- const typeName = schema._def?.typeName;
151
- return typeName === "ZodOptional" || typeName === "ZodDefault";
152
- }
153
- function getInnerSchema(schema) {
154
- const typeName = schema._def?.typeName;
155
- if (typeName === "ZodOptional" || typeName === "ZodDefault") {
156
- const innerType = schema._def?.innerType;
157
- return innerType || schema;
158
- }
159
- return schema;
160
- }
161
- function extractValidationConstraints(schema) {
162
- const innerSchema = getInnerSchema(schema);
163
- const typeName = innerSchema._def?.typeName;
164
- const constraints = {};
165
- if (typeName === "ZodString") {
166
- const def = innerSchema._def;
167
- const checks = def.checks;
168
- if (checks && Array.isArray(checks)) {
169
- for (const check of checks) {
170
- switch (check.kind) {
171
- case "min":
172
- constraints.minLength = check.value;
173
- break;
174
- case "max":
175
- constraints.maxLength = check.value;
176
- break;
177
- case "email":
178
- constraints.type = "email";
179
- break;
180
- case "url":
181
- constraints.type = "url";
182
- break;
183
- case "regex":
184
- constraints.pattern = check.regex;
185
- break;
186
- }
187
- }
188
- }
189
- }
190
- if (typeName === "ZodNumber") {
191
- const def = innerSchema._def;
192
- const checks = def.checks;
193
- if (checks && Array.isArray(checks)) {
194
- for (const check of checks) {
195
- switch (check.kind) {
196
- case "min":
197
- constraints.min = check.value;
198
- break;
199
- case "max":
200
- constraints.max = check.value;
201
- break;
202
- case "int":
203
- constraints.step = 1;
204
- break;
205
- case "multipleOf":
206
- constraints.step = check.value;
207
- break;
208
- }
209
- }
210
- }
211
- }
212
- if (typeName === "ZodArray") {
213
- const def = innerSchema._def;
214
- const minLength = def.minLength;
215
- const maxLength = def.maxLength;
216
- if (minLength !== void 0) {
217
- constraints.minItems = minLength.value;
218
- }
219
- if (maxLength !== void 0) {
220
- constraints.maxItems = maxLength.value;
221
- }
222
- }
223
- return constraints;
224
- }
225
- function getDefaultValue(schema) {
226
- const typeName = schema._def?.typeName;
227
- if (typeName === "ZodDefault") {
228
- const defaultValue = schema._def?.defaultValue;
229
- if (typeof defaultValue === "function") {
230
- return defaultValue();
231
- }
232
- return defaultValue;
233
- }
234
- const innerSchema = getInnerSchema(schema);
235
- const innerTypeName = innerSchema._def?.typeName;
236
- switch (innerTypeName) {
237
- case "ZodString":
238
- return "";
239
- case "ZodNumber":
240
- case "ZodBigInt":
241
- return 0;
242
- case "ZodBoolean":
243
- return false;
244
- case "ZodArray":
245
- return [];
246
- case "ZodObject": {
247
- const shape = innerSchema._def?.shape;
248
- if (shape) {
249
- const defaultObj = {};
250
- for (const [key, value] of Object.entries(shape)) {
251
- defaultObj[key] = getDefaultValue(value);
252
- }
253
- return defaultObj;
254
- }
255
- return {};
256
- }
257
- case "ZodDate":
258
- return /* @__PURE__ */ new Date();
259
- case "ZodEnum": {
260
- const values = innerSchema._def?.values;
261
- return Array.isArray(values) && values.length > 0 ? values[0] : void 0;
262
- }
263
- default:
264
- return void 0;
82
+ tools.retrieveProfileTool = new RetrieveProfileTool({
83
+ hederaKit,
84
+ hcs10Builder,
85
+ logger: void 0
86
+ });
87
+ tools.initiateConnectionTool = new InitiateConnectionTool({
88
+ hederaKit,
89
+ hcs10Builder,
90
+ logger: void 0
91
+ });
92
+ tools.listConnectionsTool = new ListConnectionsTool({
93
+ hederaKit,
94
+ hcs10Builder,
95
+ logger: void 0
96
+ });
97
+ tools.sendMessageToConnectionTool = new SendMessageToConnectionTool({
98
+ hederaKit,
99
+ hcs10Builder,
100
+ logger: void 0
101
+ });
102
+ tools.checkMessagesTool = new CheckMessagesTool({
103
+ hederaKit,
104
+ hcs10Builder,
105
+ logger: void 0
106
+ });
107
+ tools.connectionMonitorTool = new ConnectionMonitorTool({
108
+ hederaKit: monitoringHederaKit || hederaKit,
109
+ hcs10Builder: monitoringHcs10Builder || hcs10Builder,
110
+ logger: void 0
111
+ });
112
+ tools.manageConnectionRequestsTool = new ManageConnectionRequestsTool({
113
+ hederaKit,
114
+ hcs10Builder,
115
+ logger: void 0
116
+ });
117
+ tools.acceptConnectionRequestTool = new AcceptConnectionRequestTool({
118
+ hederaKit,
119
+ hcs10Builder,
120
+ logger: void 0
121
+ });
122
+ tools.listUnapprovedConnectionRequestsTool = new ListUnapprovedConnectionRequestsTool({
123
+ hederaKit,
124
+ hcs10Builder,
125
+ logger: void 0
126
+ });
127
+ logger.info("All tools initialized");
265
128
  }
266
- }
267
- function extractFieldMetadata(schema) {
268
- const innerSchema = getInnerSchema(schema);
269
- const fieldType = inferFieldTypeFromSchema(schema);
270
- const required = !isOptionalSchema(schema);
271
- const optional = isOptionalSchema(schema);
272
- const defaultValue = getDefaultValue(schema);
273
- const options = extractOptionsFromSchema(innerSchema);
274
- const constraints = extractValidationConstraints(schema);
275
- const description = schema?.description;
276
129
  return {
277
- type: fieldType,
278
- required,
279
- optional,
280
- default: defaultValue,
281
- options,
282
- constraints,
283
- description,
284
- validation: {
285
- minLength: constraints.minLength,
286
- maxLength: constraints.maxLength,
287
- min: constraints.min,
288
- max: constraints.max,
289
- pattern: constraints.pattern ? new RegExp(constraints.pattern) : void 0
290
- }
130
+ hederaKit,
131
+ hcs10Builder,
132
+ monitoringHederaKit,
133
+ monitoringHcs10Builder,
134
+ tools,
135
+ stateManager
291
136
  };
292
- }
293
- const renderConfigs = {
294
- text: (label, placeholder, priority = "common") => ({
295
- fieldType: "text",
296
- ui: { label, placeholder, priority },
297
- progressive: { priority }
298
- }),
299
- number: (label, min, max, priority = "common") => ({
300
- fieldType: "number",
301
- ui: { label, priority },
302
- constraints: { min, max },
303
- progressive: { priority }
304
- }),
305
- select: (label, options, priority = "common") => ({
306
- fieldType: "select",
307
- ui: { label, priority },
308
- options,
309
- progressive: { priority }
310
- }),
311
- textarea: (label, rows = 3, priority = "common") => ({
312
- fieldType: "textarea",
313
- ui: { label, priority },
314
- props: { rows },
315
- progressive: { priority }
316
- }),
317
- currency: (label, symbol = "HBAR", priority = "common") => ({
318
- fieldType: "currency",
319
- ui: { label, priority },
320
- props: { symbol },
321
- progressive: { priority }
322
- }),
323
- array: (label, itemLabel, priority = "advanced") => ({
324
- fieldType: "array",
325
- ui: { label, priority },
326
- props: { itemLabel },
327
- progressive: { priority }
328
- }),
329
- essential: {
330
- text: (label, placeholder) => renderConfigs.text(label, placeholder, "essential"),
331
- number: (label, min, max) => renderConfigs.number(label, min, max, "essential"),
332
- select: (label, options) => renderConfigs.select(label, options, "essential"),
333
- textarea: (label, rows) => renderConfigs.textarea(label, rows, "essential")
334
- },
335
- advanced: {
336
- text: (label, placeholder) => renderConfigs.text(label, placeholder, "advanced"),
337
- number: (label, min, max) => renderConfigs.number(label, min, max, "advanced"),
338
- select: (label, options) => renderConfigs.select(label, options, "advanced"),
339
- textarea: (label, rows) => renderConfigs.textarea(label, rows, "advanced"),
340
- array: (label, itemLabel) => renderConfigs.array(label, itemLabel, "advanced")
341
- },
342
- expert: {
343
- text: (label, placeholder) => renderConfigs.text(label, placeholder, "expert"),
344
- number: (label, min, max) => renderConfigs.number(label, min, max, "expert"),
345
- select: (label, options) => renderConfigs.select(label, options, "expert"),
346
- textarea: (label, rows) => renderConfigs.textarea(label, rows, "expert")
347
- }
348
137
  };
349
- function installZodRenderExtensions() {
350
- if (!ZodType.prototype.withRender) {
351
- ZodType.prototype.withRender = function(config) {
352
- return extendZodSchema(this).withRender(config);
353
- };
354
- ZodType.prototype.withProgressive = function(priority, group) {
355
- return extendZodSchema(this).withProgressive(priority, group);
356
- };
357
- ZodType.prototype.withBlock = function(blockId) {
358
- return extendZodSchema(this).withBlock(blockId);
359
- };
360
- }
361
- }
362
- function createProgressiveSchema(baseSchema, groups) {
363
- const extendedSchema = extendZodSchema(baseSchema);
364
- const typeName = baseSchema._def?.typeName;
365
- if (typeName === "ZodObject") {
366
- const shape = baseSchema._def?.shape;
367
- if (shape) {
368
- for (const [fieldName, fieldSchema] of Object.entries(shape)) {
369
- let fieldGroup;
370
- let fieldPriority = "common";
371
- for (const [groupName, groupConfig] of Object.entries(groups)) {
372
- if (groupConfig.fields.includes(fieldName)) {
373
- fieldGroup = groupName;
374
- fieldPriority = groupConfig.priority;
375
- break;
376
- }
377
- }
378
- extendZodSchema(fieldSchema).withProgressive(fieldPriority, fieldGroup);
379
- }
380
- return extendedSchema;
381
- }
382
- }
383
- return extendedSchema;
384
- }
385
- function enhanceRenderConfig(config) {
386
- return {
387
- ...config,
388
- progressive: {
389
- priority: config.ui?.priority || "common",
390
- group: config.ui?.group
391
- }
392
- };
393
- }
394
- function extractProgressiveInfo(schema) {
395
- const renderConfig = getRenderConfig(schema);
396
- if (renderConfig?.progressive) {
397
- return {
398
- priority: renderConfig.progressive.priority,
399
- group: renderConfig.progressive.group
400
- };
401
- }
402
- if (renderConfig?.ui?.priority) {
403
- return {
404
- priority: renderConfig.ui.priority,
405
- group: renderConfig.ui.group
406
- };
407
- }
408
- return { priority: "common" };
409
- }
410
138
  export {
411
- createProgressiveSchema,
412
- enhanceRenderConfig,
413
- extendZodSchema,
414
- extractFieldMetadata,
415
- extractOptionsFromSchema,
416
- extractProgressiveInfo,
417
- extractValidationConstraints,
418
- getDefaultValue,
419
- getInnerSchema,
420
- getRenderConfig,
421
- hasRenderConfig,
422
- inferFieldTypeFromSchema,
423
- installZodRenderExtensions,
424
- isOptionalSchema,
425
- renderConfigs
139
+ initializeStandardsAgentKit
426
140
  };
427
141
  //# sourceMappingURL=standards-agent-kit.es42.js.map