@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.
- package/README.md +3 -4
- package/dist/cjs/builders/hcs10/hcs10-builder.d.ts +1 -0
- package/dist/cjs/builders/hcs2/hcs2-builder.d.ts +8 -7
- package/dist/cjs/builders/hcs6/hcs6-builder.d.ts +5 -4
- package/dist/cjs/builders/inscriber/inscriber-builder.d.ts +32 -1
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/signing/bytes-registry.d.ts +17 -0
- package/dist/cjs/signing/signer-provider.d.ts +45 -0
- package/dist/cjs/standards-agent-kit.cjs +1 -1
- package/dist/cjs/standards-agent-kit.cjs.map +1 -1
- package/dist/cjs/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
- package/dist/cjs/tools/hcs2/CreateRegistryTool.d.ts +2 -2
- package/dist/cjs/tools/hcs2/DeleteEntryTool.d.ts +2 -2
- package/dist/cjs/tools/hcs2/UpdateEntryTool.d.ts +2 -2
- package/dist/cjs/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
- package/dist/cjs/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
- package/dist/cjs/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
- package/dist/cjs/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
- package/dist/cjs/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
- package/dist/cjs/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
- package/dist/cjs/types/inscription-response.d.ts +8 -0
- package/dist/cjs/types/tx-results.d.ts +15 -0
- package/dist/cjs/utils/CodedError.d.ts +4 -0
- package/dist/cjs/utils/inscription-utils.d.ts +21 -0
- package/dist/cjs/validation/hip412-schemas.d.ts +2 -2
- package/dist/es/builders/hcs10/hcs10-builder.d.ts +1 -0
- package/dist/es/builders/hcs2/hcs2-builder.d.ts +8 -7
- package/dist/es/builders/hcs6/hcs6-builder.d.ts +5 -4
- package/dist/es/builders/inscriber/inscriber-builder.d.ts +32 -1
- package/dist/es/index.d.ts +4 -0
- package/dist/es/signing/bytes-registry.d.ts +17 -0
- package/dist/es/signing/signer-provider.d.ts +45 -0
- package/dist/es/standards-agent-kit.es.js +46 -42
- package/dist/es/standards-agent-kit.es.js.map +1 -1
- package/dist/es/standards-agent-kit.es10.js +24 -83
- package/dist/es/standards-agent-kit.es10.js.map +1 -1
- package/dist/es/standards-agent-kit.es11.js +224 -20
- package/dist/es/standards-agent-kit.es11.js.map +1 -1
- package/dist/es/standards-agent-kit.es12.js +78 -27
- package/dist/es/standards-agent-kit.es12.js.map +1 -1
- package/dist/es/standards-agent-kit.es13.js +26 -36
- package/dist/es/standards-agent-kit.es13.js.map +1 -1
- package/dist/es/standards-agent-kit.es14.js +17 -39
- package/dist/es/standards-agent-kit.es14.js.map +1 -1
- package/dist/es/standards-agent-kit.es15.js +36 -58
- package/dist/es/standards-agent-kit.es15.js.map +1 -1
- package/dist/es/standards-agent-kit.es16.js +45 -18
- package/dist/es/standards-agent-kit.es16.js.map +1 -1
- package/dist/es/standards-agent-kit.es17.js +53 -16
- package/dist/es/standards-agent-kit.es17.js.map +1 -1
- package/dist/es/standards-agent-kit.es18.js +18 -28
- package/dist/es/standards-agent-kit.es18.js.map +1 -1
- package/dist/es/standards-agent-kit.es19.js +26 -12
- package/dist/es/standards-agent-kit.es19.js.map +1 -1
- package/dist/es/standards-agent-kit.es20.js +38 -136
- package/dist/es/standards-agent-kit.es20.js.map +1 -1
- package/dist/es/standards-agent-kit.es21.js +13 -24
- package/dist/es/standards-agent-kit.es21.js.map +1 -1
- package/dist/es/standards-agent-kit.es22.js +136 -39
- package/dist/es/standards-agent-kit.es22.js.map +1 -1
- package/dist/es/standards-agent-kit.es23.js +25 -41
- package/dist/es/standards-agent-kit.es23.js.map +1 -1
- package/dist/es/standards-agent-kit.es24.js +49 -31
- package/dist/es/standards-agent-kit.es24.js.map +1 -1
- package/dist/es/standards-agent-kit.es25.js +34 -18
- package/dist/es/standards-agent-kit.es25.js.map +1 -1
- package/dist/es/standards-agent-kit.es26.js +35 -19
- package/dist/es/standards-agent-kit.es26.js.map +1 -1
- package/dist/es/standards-agent-kit.es27.js +45 -32
- package/dist/es/standards-agent-kit.es27.js.map +1 -1
- package/dist/es/standards-agent-kit.es28.js +54 -25
- package/dist/es/standards-agent-kit.es28.js.map +1 -1
- package/dist/es/standards-agent-kit.es29.js +35 -23
- package/dist/es/standards-agent-kit.es29.js.map +1 -1
- package/dist/es/standards-agent-kit.es3.js +41 -1545
- package/dist/es/standards-agent-kit.es3.js.map +1 -1
- package/dist/es/standards-agent-kit.es30.js +23 -39
- package/dist/es/standards-agent-kit.es30.js.map +1 -1
- package/dist/es/standards-agent-kit.es31.js +30 -28
- package/dist/es/standards-agent-kit.es31.js.map +1 -1
- package/dist/es/standards-agent-kit.es32.js +45 -32
- package/dist/es/standards-agent-kit.es32.js.map +1 -1
- package/dist/es/standards-agent-kit.es33.js +50 -89
- package/dist/es/standards-agent-kit.es33.js.map +1 -1
- package/dist/es/standards-agent-kit.es34.js +35 -228
- package/dist/es/standards-agent-kit.es34.js.map +1 -1
- package/dist/es/standards-agent-kit.es35.js +87 -212
- package/dist/es/standards-agent-kit.es35.js.map +1 -1
- package/dist/es/standards-agent-kit.es36.js +188 -128
- package/dist/es/standards-agent-kit.es36.js.map +1 -1
- package/dist/es/standards-agent-kit.es37.js +167 -561
- package/dist/es/standards-agent-kit.es37.js.map +1 -1
- package/dist/es/standards-agent-kit.es38.js +236 -31
- package/dist/es/standards-agent-kit.es38.js.map +1 -1
- package/dist/es/standards-agent-kit.es39.js +483 -206
- package/dist/es/standards-agent-kit.es39.js.map +1 -1
- package/dist/es/standards-agent-kit.es4.js +359 -81
- package/dist/es/standards-agent-kit.es4.js.map +1 -1
- package/dist/es/standards-agent-kit.es40.js +39 -135
- package/dist/es/standards-agent-kit.es40.js.map +1 -1
- package/dist/es/standards-agent-kit.es41.js +244 -28
- package/dist/es/standards-agent-kit.es41.js.map +1 -1
- package/dist/es/standards-agent-kit.es42.js +132 -418
- package/dist/es/standards-agent-kit.es42.js.map +1 -1
- package/dist/es/standards-agent-kit.es43.js +28 -184
- package/dist/es/standards-agent-kit.es43.js.map +1 -1
- package/dist/es/standards-agent-kit.es44.js +423 -3
- package/dist/es/standards-agent-kit.es44.js.map +1 -1
- package/dist/es/standards-agent-kit.es45.js +185 -24
- package/dist/es/standards-agent-kit.es45.js.map +1 -1
- package/dist/es/standards-agent-kit.es46.js +3 -3
- package/dist/es/standards-agent-kit.es46.js.map +1 -1
- package/dist/es/standards-agent-kit.es47.js +21 -50
- package/dist/es/standards-agent-kit.es47.js.map +1 -1
- package/dist/es/standards-agent-kit.es48.js +8 -3
- package/dist/es/standards-agent-kit.es48.js.map +1 -1
- package/dist/es/standards-agent-kit.es49.js +3 -39
- package/dist/es/standards-agent-kit.es49.js.map +1 -1
- package/dist/es/standards-agent-kit.es5.js +1747 -73
- package/dist/es/standards-agent-kit.es5.js.map +1 -1
- package/dist/es/standards-agent-kit.es50.js +18 -16
- package/dist/es/standards-agent-kit.es50.js.map +1 -1
- package/dist/es/standards-agent-kit.es51.js +49 -49
- package/dist/es/standards-agent-kit.es51.js.map +1 -1
- package/dist/es/standards-agent-kit.es52.js +6 -0
- package/dist/es/standards-agent-kit.es52.js.map +1 -0
- package/dist/es/standards-agent-kit.es53.js +43 -0
- package/dist/es/standards-agent-kit.es53.js.map +1 -0
- package/dist/es/standards-agent-kit.es54.js +22 -0
- package/dist/es/standards-agent-kit.es54.js.map +1 -0
- package/dist/es/standards-agent-kit.es55.js +77 -0
- package/dist/es/standards-agent-kit.es55.js.map +1 -0
- package/dist/es/standards-agent-kit.es56.js +7 -0
- package/dist/es/standards-agent-kit.es56.js.map +1 -0
- package/dist/es/standards-agent-kit.es6.js +347 -32
- package/dist/es/standards-agent-kit.es6.js.map +1 -1
- package/dist/es/standards-agent-kit.es7.js +142 -293
- package/dist/es/standards-agent-kit.es7.js.map +1 -1
- package/dist/es/standards-agent-kit.es8.js +201 -21
- package/dist/es/standards-agent-kit.es8.js.map +1 -1
- package/dist/es/standards-agent-kit.es9.js +301 -213
- package/dist/es/standards-agent-kit.es9.js.map +1 -1
- package/dist/es/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
- package/dist/es/tools/hcs2/CreateRegistryTool.d.ts +2 -2
- package/dist/es/tools/hcs2/DeleteEntryTool.d.ts +2 -2
- package/dist/es/tools/hcs2/UpdateEntryTool.d.ts +2 -2
- package/dist/es/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
- package/dist/es/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
- package/dist/es/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
- package/dist/es/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
- package/dist/es/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
- package/dist/es/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
- package/dist/es/types/inscription-response.d.ts +8 -0
- package/dist/es/types/tx-results.d.ts +15 -0
- package/dist/es/utils/CodedError.d.ts +4 -0
- package/dist/es/utils/inscription-utils.d.ts +21 -0
- package/dist/es/validation/hip412-schemas.d.ts +2 -2
- package/dist/umd/builders/hcs10/hcs10-builder.d.ts +1 -0
- package/dist/umd/builders/hcs2/hcs2-builder.d.ts +8 -7
- package/dist/umd/builders/hcs6/hcs6-builder.d.ts +5 -4
- package/dist/umd/builders/inscriber/inscriber-builder.d.ts +32 -1
- package/dist/umd/index.d.ts +4 -0
- package/dist/umd/signing/bytes-registry.d.ts +17 -0
- package/dist/umd/signing/signer-provider.d.ts +45 -0
- package/dist/umd/standards-agent-kit.umd.js +1 -1
- package/dist/umd/standards-agent-kit.umd.js.map +1 -1
- package/dist/umd/tools/hcs10/InitiateConnectionTool.d.ts +4 -4
- package/dist/umd/tools/hcs2/CreateRegistryTool.d.ts +2 -2
- package/dist/umd/tools/hcs2/DeleteEntryTool.d.ts +2 -2
- package/dist/umd/tools/hcs2/UpdateEntryTool.d.ts +2 -2
- package/dist/umd/tools/hcs6/RegisterDynamicHashinalTool.d.ts +10 -10
- package/dist/umd/tools/hcs6/UpdateDynamicHashinalTool.d.ts +8 -8
- package/dist/umd/tools/inscriber/InscribeFromBufferTool.d.ts +5 -4
- package/dist/umd/tools/inscriber/InscribeFromFileTool.d.ts +2 -2
- package/dist/umd/tools/inscriber/InscribeFromUrlTool.d.ts +4 -4
- package/dist/umd/tools/inscriber/InscribeHashinalTool.d.ts +3 -3
- package/dist/umd/types/inscription-response.d.ts +8 -0
- package/dist/umd/types/tx-results.d.ts +15 -0
- package/dist/umd/utils/CodedError.d.ts +4 -0
- package/dist/umd/utils/inscription-utils.d.ts +21 -0
- package/dist/umd/validation/hip412-schemas.d.ts +2 -2
- package/package.json +10 -5
- package/src/builders/hcs10/hcs10-builder.ts +239 -6
- package/src/builders/hcs2/hcs2-builder.ts +302 -9
- package/src/builders/hcs6/hcs6-builder.ts +79 -4
- package/src/builders/inscriber/inscriber-builder.ts +235 -2
- package/src/hcs10/HCS10Client.ts +1 -1
- package/src/index.ts +5 -1
- package/src/lib/zod-render/schema-extension.ts +0 -1
- package/src/signing/bytes-registry.ts +501 -0
- package/src/signing/signer-provider.ts +120 -0
- package/src/tools/hcs2/CreateRegistryTool.ts +30 -5
- package/src/tools/hcs2/DeleteEntryTool.ts +16 -2
- package/src/tools/hcs2/MigrateRegistryTool.ts +16 -2
- package/src/tools/hcs2/QueryRegistryTool.ts +11 -2
- package/src/tools/hcs2/RegisterEntryTool.ts +17 -3
- package/src/tools/hcs2/UpdateEntryTool.ts +16 -2
- package/src/tools/hcs6/CreateDynamicRegistryTool.ts +17 -3
- package/src/tools/hcs6/RegisterDynamicHashinalTool.ts +17 -3
- package/src/tools/hcs6/UpdateDynamicHashinalTool.ts +17 -3
- package/src/tools/inscriber/InscribeFromBufferTool.ts +126 -21
- package/src/tools/inscriber/InscribeFromFileTool.ts +10 -13
- package/src/tools/inscriber/InscribeFromUrlTool.ts +15 -11
- package/src/tools/inscriber/InscribeHashinalTool.ts +40 -168
- package/src/tools/inscriber/RetrieveInscriptionTool.ts +15 -16
- package/src/types/inscription-response.ts +27 -0
- package/src/types/tx-results.ts +18 -0
- package/src/utils/CodedError.ts +8 -0
- package/src/utils/Encryption.ts +0 -2
- package/src/utils/ensure-agent-has-hbar.ts +4 -5
- package/src/utils/inscription-utils.ts +53 -0
|
@@ -1,48 +1,64 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { BaseHCS2QueryTool } from "./standards-agent-kit.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
|
|
3
|
+
import { isWalletBytesResponse } from "./standards-agent-kit.es56.js";
|
|
4
|
+
const updateEntrySchema = z.object({
|
|
5
|
+
registryTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The HCS-2 registry topic ID (must be indexed)"),
|
|
6
|
+
targetTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The new topic ID to point to"),
|
|
7
|
+
uid: z.string().describe("The unique ID of the entry to update"),
|
|
8
|
+
metadata: z.string().optional().describe("Optional metadata URI (HIP-412 format)"),
|
|
7
9
|
memo: z.string().max(500).optional().describe("Optional memo (max 500 characters)")
|
|
8
10
|
});
|
|
9
|
-
class
|
|
11
|
+
class UpdateEntryTool extends BaseHCS2QueryTool {
|
|
10
12
|
constructor() {
|
|
11
13
|
super(...arguments);
|
|
12
|
-
this.name = "
|
|
13
|
-
this.description = "
|
|
14
|
+
this.name = "updateHCS2Entry";
|
|
15
|
+
this.description = "Update an existing entry in an indexed HCS-2 registry";
|
|
14
16
|
}
|
|
15
17
|
get specificInputSchema() {
|
|
16
|
-
return
|
|
18
|
+
return updateEntrySchema;
|
|
17
19
|
}
|
|
18
20
|
async executeQuery(params, _runManager) {
|
|
19
21
|
try {
|
|
20
|
-
const result = await this.hcs2Builder.
|
|
22
|
+
const result = await this.hcs2Builder.updateEntry(
|
|
21
23
|
params.registryTopicId,
|
|
22
24
|
{
|
|
23
25
|
targetTopicId: params.targetTopicId,
|
|
26
|
+
uid: params.uid,
|
|
24
27
|
metadata: params.metadata,
|
|
25
28
|
memo: params.memo
|
|
26
29
|
}
|
|
27
30
|
);
|
|
28
|
-
if (!result.success) {
|
|
29
|
-
throw new Error(result.error || "Failed to
|
|
31
|
+
if (!("success" in result) || !result.success) {
|
|
32
|
+
throw new Error(result.error || "Failed to update entry");
|
|
30
33
|
}
|
|
31
|
-
|
|
34
|
+
if (isWalletBytesResponse(result)) {
|
|
35
|
+
const txBytes = result.transactionBytes;
|
|
36
|
+
return {
|
|
37
|
+
message: "I prepared an unsigned transaction to update the HCS-2 registry entry. Please review and approve to submit.",
|
|
38
|
+
transactionBytes: txBytes,
|
|
39
|
+
metadata: {
|
|
40
|
+
transactionBytes: txBytes,
|
|
41
|
+
pendingApproval: true,
|
|
42
|
+
description: `Update HCS-2 entry (registry ${params.registryTopicId}, uid ${params.uid} -> ${params.targetTopicId})`
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
return `Successfully updated entry in HCS-2 registry!
|
|
32
47
|
|
|
33
|
-
|
|
34
|
-
|
|
48
|
+
Registry Topic: ${params.registryTopicId}
|
|
49
|
+
UID: ${params.uid}
|
|
50
|
+
New Target Topic ID: ${params.targetTopicId}${params.metadata ? `
|
|
35
51
|
Metadata: ${params.metadata}` : ""}${params.memo ? `
|
|
36
52
|
Memo: ${params.memo}` : ""}
|
|
37
53
|
|
|
38
|
-
The
|
|
54
|
+
The entry has been updated in the registry.`;
|
|
39
55
|
} catch (error) {
|
|
40
|
-
const errorMessage = error instanceof Error ? error.message : "Failed to
|
|
41
|
-
throw new Error(`
|
|
56
|
+
const errorMessage = error instanceof Error ? error.message : "Failed to update entry";
|
|
57
|
+
throw new Error(`Entry update failed: ${errorMessage}`);
|
|
42
58
|
}
|
|
43
59
|
}
|
|
44
60
|
}
|
|
45
61
|
export {
|
|
46
|
-
|
|
62
|
+
UpdateEntryTool
|
|
47
63
|
};
|
|
48
64
|
//# sourceMappingURL=standards-agent-kit.es26.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-agent-kit.es26.js","sources":["../../src/tools/hcs2/
|
|
1
|
+
{"version":3,"file":"standards-agent-kit.es26.js","sources":["../../src/tools/hcs2/UpdateEntryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport { isWalletBytesResponse, type RegistryOperationResult } from '../../types/tx-results';\n\n/**\n * Schema for updating an entry in HCS-2\n */\nconst updateEntrySchema = z.object({\n registryTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The HCS-2 registry topic ID (must be indexed)'),\n targetTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The new topic ID to point to'),\n uid: z\n .string()\n .describe('The unique ID of the entry to update'),\n metadata: z\n .string()\n .optional()\n .describe('Optional metadata URI (HIP-412 format)'),\n memo: z\n .string()\n .max(500)\n .optional()\n .describe('Optional memo (max 500 characters)'),\n});\n\n\n/**\n * Tool for updating entries in HCS-2 registries\n */\nexport class UpdateEntryTool extends BaseHCS2QueryTool<typeof updateEntrySchema> {\n name = 'updateHCS2Entry';\n description = 'Update an existing entry in an indexed HCS-2 registry';\n\n get specificInputSchema(): typeof updateEntrySchema {\n return updateEntrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof updateEntrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n try {\n const result: RegistryOperationResult = await this.hcs2Builder.updateEntry(\n params.registryTopicId,\n {\n targetTopicId: params.targetTopicId,\n uid: params.uid,\n metadata: params.metadata,\n memo: params.memo,\n }\n );\n\n if (!('success' in result) || !result.success) {\n throw new Error(result.error || 'Failed to update entry');\n }\n\n if (isWalletBytesResponse(result)) {\n const txBytes = result.transactionBytes;\n return {\n message: 'I prepared an unsigned transaction to update the HCS-2 registry entry. Please review and approve to submit.',\n transactionBytes: txBytes,\n metadata: {\n transactionBytes: txBytes,\n pendingApproval: true,\n description: `Update HCS-2 entry (registry ${params.registryTopicId}, uid ${params.uid} -> ${params.targetTopicId})`,\n },\n };\n }\n\n return `Successfully updated entry in HCS-2 registry!\\n\\nRegistry Topic: ${params.registryTopicId}\\nUID: ${params.uid}\\nNew Target Topic ID: ${params.targetTopicId}${params.metadata ? `\\nMetadata: ${params.metadata}` : ''}${params.memo ? `\\nMemo: ${params.memo}` : ''}\\n\\nThe entry has been updated in the registry.`;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to update entry';\n throw new Error(`Entry update failed: ${errorMessage}`);\n }\n }\n}"],"names":[],"mappings":";;;AAQA,MAAM,oBAAoB,EAAE,OAAO;AAAA,EACjC,iBAAiB,EACd,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,+CAA+C;AAAA,EAC3D,eAAe,EACZ,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,8BAA8B;AAAA,EAC1C,KAAK,EACF,SACA,SAAS,sCAAsC;AAAA,EAClD,UAAU,EACP,OAAA,EACA,SAAA,EACA,SAAS,wCAAwC;AAAA,EACpD,MAAM,EACH,SACA,IAAI,GAAG,EACP,WACA,SAAS,oCAAoC;AAClD,CAAC;AAMM,MAAM,wBAAwB,kBAA4C;AAAA,EAA1E,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAgD;AAClD,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,QAAI;AACF,YAAM,SAAkC,MAAM,KAAK,YAAY;AAAA,QAC7D,OAAO;AAAA,QACP;AAAA,UACE,eAAe,OAAO;AAAA,UACtB,KAAK,OAAO;AAAA,UACZ,UAAU,OAAO;AAAA,UACjB,MAAM,OAAO;AAAA,QAAA;AAAA,MACf;AAGF,UAAI,EAAE,aAAa,WAAW,CAAC,OAAO,SAAS;AAC7C,cAAM,IAAI,MAAM,OAAO,SAAS,wBAAwB;AAAA,MAC1D;AAEA,UAAI,sBAAsB,MAAM,GAAG;AACjC,cAAM,UAAU,OAAO;AACvB,eAAO;AAAA,UACL,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,UAAU;AAAA,YACR,kBAAkB;AAAA,YAClB,iBAAiB;AAAA,YACjB,aAAa,gCAAgC,OAAO,eAAe,SAAS,OAAO,GAAG,OAAO,OAAO,aAAa;AAAA,UAAA;AAAA,QACnH;AAAA,MAEJ;AAEA,aAAO;AAAA;AAAA,kBAAoE,OAAO,eAAe;AAAA,OAAU,OAAO,GAAG;AAAA,uBAA0B,OAAO,aAAa,GAAG,OAAO,WAAW;AAAA,YAAe,OAAO,QAAQ,KAAK,EAAE,GAAG,OAAO,OAAO;AAAA,QAAW,OAAO,IAAI,KAAK,EAAE;AAAA;AAAA;AAAA,IAC7Q,SAAS,OAAO;AACd,YAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU;AAC9D,YAAM,IAAI,MAAM,wBAAwB,YAAY,EAAE;AAAA,IACxD;AAAA,EACF;AACF;"}
|
|
@@ -1,45 +1,58 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { BaseHCS2QueryTool } from "./standards-agent-kit.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
|
|
3
|
+
import { isWalletBytesResponse } from "./standards-agent-kit.es56.js";
|
|
4
|
+
const deleteEntrySchema = z.object({
|
|
5
|
+
registryTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The HCS-2 registry topic ID (must be indexed)"),
|
|
6
|
+
uid: z.string().describe("The unique ID of the entry to delete"),
|
|
7
|
+
memo: z.string().max(500).optional().describe("Optional memo (max 500 characters)")
|
|
8
8
|
});
|
|
9
|
-
class
|
|
9
|
+
class DeleteEntryTool extends BaseHCS2QueryTool {
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments);
|
|
12
|
-
this.name = "
|
|
13
|
-
this.description = "
|
|
12
|
+
this.name = "deleteHCS2Entry";
|
|
13
|
+
this.description = "Delete an entry from an indexed HCS-2 registry";
|
|
14
14
|
}
|
|
15
15
|
get specificInputSchema() {
|
|
16
|
-
return
|
|
16
|
+
return deleteEntrySchema;
|
|
17
17
|
}
|
|
18
18
|
async executeQuery(params, _runManager) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
19
|
+
try {
|
|
20
|
+
const result = await this.hcs2Builder.deleteEntry(
|
|
21
|
+
params.registryTopicId,
|
|
22
|
+
{
|
|
23
|
+
uid: params.uid,
|
|
24
|
+
memo: params.memo
|
|
25
|
+
}
|
|
26
|
+
);
|
|
27
|
+
if (!("success" in result) || !result.success) {
|
|
28
|
+
throw new Error(result.error || "Failed to delete entry");
|
|
29
|
+
}
|
|
30
|
+
if (isWalletBytesResponse(result)) {
|
|
31
|
+
const txBytes = result.transactionBytes;
|
|
32
|
+
return {
|
|
33
|
+
message: "I prepared an unsigned transaction to delete the HCS-2 registry entry. Please review and approve to submit.",
|
|
34
|
+
transactionBytes: txBytes,
|
|
35
|
+
metadata: {
|
|
36
|
+
transactionBytes: txBytes,
|
|
37
|
+
pendingApproval: true,
|
|
38
|
+
description: `Delete HCS-2 entry (registry ${params.registryTopicId}, uid ${params.uid})`
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
return `Successfully deleted entry from HCS-2 registry!
|
|
43
|
+
|
|
44
|
+
Registry Topic: ${params.registryTopicId}
|
|
45
|
+
UID: ${params.uid}${params.memo ? `
|
|
46
|
+
Memo: ${params.memo}` : ""}
|
|
47
|
+
|
|
48
|
+
The entry has been removed from the registry.`;
|
|
49
|
+
} catch (error) {
|
|
50
|
+
const errorMessage = error instanceof Error ? error.message : "Failed to delete entry";
|
|
51
|
+
throw new Error(`Entry deletion failed: ${errorMessage}`);
|
|
52
|
+
}
|
|
40
53
|
}
|
|
41
54
|
}
|
|
42
55
|
export {
|
|
43
|
-
|
|
56
|
+
DeleteEntryTool
|
|
44
57
|
};
|
|
45
58
|
//# sourceMappingURL=standards-agent-kit.es27.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-agent-kit.es27.js","sources":["../../src/tools/hcs2/
|
|
1
|
+
{"version":3,"file":"standards-agent-kit.es27.js","sources":["../../src/tools/hcs2/DeleteEntryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport { isWalletBytesResponse, type RegistryOperationResult } from '../../types/tx-results';\n\n/**\n * Schema for deleting an entry from HCS-2\n */\nconst deleteEntrySchema = z.object({\n registryTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The HCS-2 registry topic ID (must be indexed)'),\n uid: z\n .string()\n .describe('The unique ID of the entry to delete'),\n memo: z\n .string()\n .max(500)\n .optional()\n .describe('Optional memo (max 500 characters)'),\n});\n\n\n/**\n * Tool for deleting entries from HCS-2 registries\n */\nexport class DeleteEntryTool extends BaseHCS2QueryTool<typeof deleteEntrySchema> {\n name = 'deleteHCS2Entry';\n description = 'Delete an entry from an indexed HCS-2 registry';\n\n get specificInputSchema(): typeof deleteEntrySchema {\n return deleteEntrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof deleteEntrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n try {\n const result: RegistryOperationResult = await this.hcs2Builder.deleteEntry(\n params.registryTopicId,\n {\n uid: params.uid,\n memo: params.memo,\n }\n );\n\n if (!('success' in result) || !result.success) {\n throw new Error(result.error || 'Failed to delete entry');\n }\n\n if (isWalletBytesResponse(result)) {\n const txBytes = result.transactionBytes;\n return {\n message: 'I prepared an unsigned transaction to delete the HCS-2 registry entry. Please review and approve to submit.',\n transactionBytes: txBytes,\n metadata: {\n transactionBytes: txBytes,\n pendingApproval: true,\n description: `Delete HCS-2 entry (registry ${params.registryTopicId}, uid ${params.uid})`,\n },\n };\n }\n\n return `Successfully deleted entry from HCS-2 registry!\\n\\nRegistry Topic: ${params.registryTopicId}\\nUID: ${params.uid}${params.memo ? `\\nMemo: ${params.memo}` : ''}\\n\\nThe entry has been removed from the registry.`;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to delete entry';\n throw new Error(`Entry deletion failed: ${errorMessage}`);\n }\n }\n}"],"names":[],"mappings":";;;AAQA,MAAM,oBAAoB,EAAE,OAAO;AAAA,EACjC,iBAAiB,EACd,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,+CAA+C;AAAA,EAC3D,KAAK,EACF,SACA,SAAS,sCAAsC;AAAA,EAClD,MAAM,EACH,SACA,IAAI,GAAG,EACP,WACA,SAAS,oCAAoC;AAClD,CAAC;AAMM,MAAM,wBAAwB,kBAA4C;AAAA,EAA1E,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAgD;AAClD,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,QAAI;AACF,YAAM,SAAkC,MAAM,KAAK,YAAY;AAAA,QAC7D,OAAO;AAAA,QACP;AAAA,UACE,KAAK,OAAO;AAAA,UACZ,MAAM,OAAO;AAAA,QAAA;AAAA,MACf;AAGF,UAAI,EAAE,aAAa,WAAW,CAAC,OAAO,SAAS;AAC7C,cAAM,IAAI,MAAM,OAAO,SAAS,wBAAwB;AAAA,MAC1D;AAEA,UAAI,sBAAsB,MAAM,GAAG;AACjC,cAAM,UAAU,OAAO;AACvB,eAAO;AAAA,UACL,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,UAAU;AAAA,YACR,kBAAkB;AAAA,YAClB,iBAAiB;AAAA,YACjB,aAAa,gCAAgC,OAAO,eAAe,SAAS,OAAO,GAAG;AAAA,UAAA;AAAA,QACxF;AAAA,MAEJ;AAEA,aAAO;AAAA;AAAA,kBAAsE,OAAO,eAAe;AAAA,OAAU,OAAO,GAAG,GAAG,OAAO,OAAO;AAAA,QAAW,OAAO,IAAI,KAAK,EAAE;AAAA;AAAA;AAAA,IACvK,SAAS,OAAO;AACd,YAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU;AAC9D,YAAM,IAAI,MAAM,0BAA0B,YAAY,EAAE;AAAA,IAC1D;AAAA,EACF;AACF;"}
|
|
@@ -1,32 +1,61 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
|
|
3
|
+
import { isWalletBytesResponse } from "./standards-agent-kit.es56.js";
|
|
4
|
+
const migrateRegistrySchema = z.object({
|
|
5
|
+
registryTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The current HCS-2 registry topic ID"),
|
|
6
|
+
targetTopicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The new topic ID to migrate to"),
|
|
7
|
+
metadata: z.string().optional().describe("Optional metadata URI for migration details"),
|
|
8
|
+
memo: z.string().max(500).optional().describe("Optional memo (max 500 characters)")
|
|
9
|
+
});
|
|
10
|
+
class MigrateRegistryTool extends BaseHCS2QueryTool {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.name = "migrateHCS2Registry";
|
|
14
|
+
this.description = "Migrate an HCS-2 registry to a new topic";
|
|
7
15
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
*/
|
|
11
|
-
getServiceBuilder() {
|
|
12
|
-
return this.hcs6Builder;
|
|
16
|
+
get specificInputSchema() {
|
|
17
|
+
return migrateRegistrySchema;
|
|
13
18
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
async executeQuery(params, _runManager) {
|
|
20
|
+
try {
|
|
21
|
+
const result = await this.hcs2Builder.migrateRegistry(
|
|
22
|
+
params.registryTopicId,
|
|
23
|
+
{
|
|
24
|
+
targetTopicId: params.targetTopicId,
|
|
25
|
+
metadata: params.metadata,
|
|
26
|
+
memo: params.memo
|
|
27
|
+
}
|
|
28
|
+
);
|
|
29
|
+
if (!("success" in result) || !result.success) {
|
|
30
|
+
throw new Error(result.error || "Failed to migrate registry");
|
|
31
|
+
}
|
|
32
|
+
if (isWalletBytesResponse(result)) {
|
|
33
|
+
const txBytes = result.transactionBytes;
|
|
34
|
+
return {
|
|
35
|
+
message: "I prepared an unsigned transaction to migrate the HCS-2 registry. Please review and approve to submit.",
|
|
36
|
+
transactionBytes: txBytes,
|
|
37
|
+
metadata: {
|
|
38
|
+
transactionBytes: txBytes,
|
|
39
|
+
pendingApproval: true,
|
|
40
|
+
description: `Migrate HCS-2 registry (from ${params.registryTopicId} to ${params.targetTopicId})`
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return `Successfully migrated HCS-2 registry!
|
|
45
|
+
|
|
46
|
+
From Registry Topic: ${params.registryTopicId}
|
|
47
|
+
To Target Topic: ${params.targetTopicId}${params.metadata ? `
|
|
48
|
+
Metadata: ${params.metadata}` : ""}${params.memo ? `
|
|
49
|
+
Memo: ${params.memo}` : ""}
|
|
50
|
+
|
|
51
|
+
The registry has been migrated to the new topic.`;
|
|
52
|
+
} catch (error) {
|
|
53
|
+
const errorMessage = error instanceof Error ? error.message : "Failed to migrate registry";
|
|
54
|
+
throw new Error(`Registry migration failed: ${errorMessage}`);
|
|
55
|
+
}
|
|
26
56
|
}
|
|
27
57
|
}
|
|
28
58
|
export {
|
|
29
|
-
|
|
30
|
-
BaseHCS6TransactionTool
|
|
59
|
+
MigrateRegistryTool
|
|
31
60
|
};
|
|
32
61
|
//# sourceMappingURL=standards-agent-kit.es28.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-agent-kit.es28.js","sources":["../../src/tools/
|
|
1
|
+
{"version":3,"file":"standards-agent-kit.es28.js","sources":["../../src/tools/hcs2/MigrateRegistryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\nimport { isWalletBytesResponse, type RegistryOperationResult } from '../../types/tx-results';\n\n/**\n * Schema for migrating an HCS-2 registry\n */\nconst migrateRegistrySchema = z.object({\n registryTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The current HCS-2 registry topic ID'),\n targetTopicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The new topic ID to migrate to'),\n metadata: z\n .string()\n .optional()\n .describe('Optional metadata URI for migration details'),\n memo: z\n .string()\n .max(500)\n .optional()\n .describe('Optional memo (max 500 characters)'),\n});\n\n\n/**\n * Tool for migrating HCS-2 registries\n */\nexport class MigrateRegistryTool extends BaseHCS2QueryTool<typeof migrateRegistrySchema> {\n name = 'migrateHCS2Registry';\n description = 'Migrate an HCS-2 registry to a new topic';\n\n get specificInputSchema() {\n return migrateRegistrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof migrateRegistrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n try {\n const result: RegistryOperationResult = await this.hcs2Builder.migrateRegistry(\n params.registryTopicId,\n {\n targetTopicId: params.targetTopicId,\n metadata: params.metadata,\n memo: params.memo,\n }\n );\n\n if (!('success' in result) || !result.success) {\n throw new Error(result.error || 'Failed to migrate registry');\n }\n\n if (isWalletBytesResponse(result)) {\n const txBytes = result.transactionBytes;\n return {\n message: 'I prepared an unsigned transaction to migrate the HCS-2 registry. Please review and approve to submit.',\n transactionBytes: txBytes,\n metadata: {\n transactionBytes: txBytes,\n pendingApproval: true,\n description: `Migrate HCS-2 registry (from ${params.registryTopicId} to ${params.targetTopicId})`,\n },\n };\n }\n\n return `Successfully migrated HCS-2 registry!\\n\\nFrom Registry Topic: ${params.registryTopicId}\\nTo Target Topic: ${params.targetTopicId}${params.metadata ? `\\nMetadata: ${params.metadata}` : ''}${params.memo ? `\\nMemo: ${params.memo}` : ''}\\n\\nThe registry has been migrated to the new topic.`;\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : 'Failed to migrate registry';\n throw new Error(`Registry migration failed: ${errorMessage}`);\n }\n }\n}"],"names":[],"mappings":";;;AAQA,MAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,iBAAiB,EACd,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,qCAAqC;AAAA,EACjD,eAAe,EACZ,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,gCAAgC;AAAA,EAC5C,UAAU,EACP,OAAA,EACA,SAAA,EACA,SAAS,6CAA6C;AAAA,EACzD,MAAM,EACH,SACA,IAAI,GAAG,EACP,WACA,SAAS,oCAAoC;AAClD,CAAC;AAMM,MAAM,4BAA4B,kBAAgD;AAAA,EAAlF,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAsB;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,QAAI;AACF,YAAM,SAAkC,MAAM,KAAK,YAAY;AAAA,QAC7D,OAAO;AAAA,QACP;AAAA,UACE,eAAe,OAAO;AAAA,UACtB,UAAU,OAAO;AAAA,UACjB,MAAM,OAAO;AAAA,QAAA;AAAA,MACf;AAGF,UAAI,EAAE,aAAa,WAAW,CAAC,OAAO,SAAS;AAC7C,cAAM,IAAI,MAAM,OAAO,SAAS,4BAA4B;AAAA,MAC9D;AAEA,UAAI,sBAAsB,MAAM,GAAG;AACjC,cAAM,UAAU,OAAO;AACvB,eAAO;AAAA,UACL,SAAS;AAAA,UACT,kBAAkB;AAAA,UAClB,UAAU;AAAA,YACR,kBAAkB;AAAA,YAClB,iBAAiB;AAAA,YACjB,aAAa,gCAAgC,OAAO,eAAe,OAAO,OAAO,aAAa;AAAA,UAAA;AAAA,QAChG;AAAA,MAEJ;AAEA,aAAO;AAAA;AAAA,uBAAiE,OAAO,eAAe;AAAA,mBAAsB,OAAO,aAAa,GAAG,OAAO,WAAW;AAAA,YAAe,OAAO,QAAQ,KAAK,EAAE,GAAG,OAAO,OAAO;AAAA,QAAW,OAAO,IAAI,KAAK,EAAE;AAAA;AAAA;AAAA,IAClP,SAAS,OAAO;AACd,YAAM,eAAe,iBAAiB,QAAQ,MAAM,UAAU;AAC9D,YAAM,IAAI,MAAM,8BAA8B,YAAY,EAAE;AAAA,IAC9D;AAAA,EACF;AACF;"}
|
|
@@ -1,35 +1,47 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import {
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import { BaseHCS2QueryTool } from "./standards-agent-kit.es23.js";
|
|
3
|
+
const queryRegistrySchema = z.object({
|
|
4
|
+
topicId: z.string().regex(/^\d+\.\d+\.\d+$/).describe("The HCS-2 registry topic ID to query"),
|
|
5
|
+
limit: z.number().int().positive().optional().describe("Maximum number of entries to return"),
|
|
6
|
+
order: z.enum(["asc", "desc"]).optional().describe("Order of results (ascending or descending)"),
|
|
7
|
+
skip: z.number().int().min(0).optional().describe("Number of entries to skip")
|
|
6
8
|
});
|
|
7
|
-
class
|
|
8
|
-
constructor(
|
|
9
|
-
super(
|
|
10
|
-
this.name = "
|
|
11
|
-
this.description = "
|
|
9
|
+
class QueryRegistryTool extends BaseHCS2QueryTool {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.name = "queryHCS2Registry";
|
|
13
|
+
this.description = "Query entries from an HCS-2 registry (standard HCS-2). Retrieves indexed or latest entries and returns a structured summary.";
|
|
12
14
|
}
|
|
13
15
|
get specificInputSchema() {
|
|
14
|
-
return
|
|
16
|
+
return queryRegistrySchema;
|
|
15
17
|
}
|
|
16
18
|
async executeQuery(params, _runManager) {
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
const registry = await this.hcs2Builder.getRegistry(params.topicId, {
|
|
20
|
+
limit: params.limit,
|
|
21
|
+
order: params.order,
|
|
22
|
+
skip: params.skip
|
|
20
23
|
});
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
const typeVal = registry.registryType;
|
|
25
|
+
const isIndexed = typeVal === 0 || typeVal === "0" || String(typeVal).toLowerCase() === "indexed" || String(typeVal).toLowerCase() === "index" || String(typeVal).toLowerCase() === "index_topic" || String(typeVal).toLowerCase() === "indexed_registry";
|
|
26
|
+
return {
|
|
27
|
+
topicId: registry.topicId,
|
|
28
|
+
registryType: isIndexed ? "indexed" : "non-indexed",
|
|
29
|
+
ttl: registry.ttl,
|
|
30
|
+
totalEntries: registry.entries.length,
|
|
31
|
+
entries: registry.entries.map((entry) => ({
|
|
32
|
+
sequence: entry.sequence,
|
|
33
|
+
timestamp: entry.timestamp,
|
|
34
|
+
payer: entry.payer,
|
|
35
|
+
operation: entry.message.op,
|
|
36
|
+
targetTopicId: entry.message.t_id,
|
|
37
|
+
uid: entry.message.uid,
|
|
38
|
+
metadata: entry.message.metadata,
|
|
39
|
+
memo: entry.message.m
|
|
40
|
+
}))
|
|
41
|
+
};
|
|
30
42
|
}
|
|
31
43
|
}
|
|
32
44
|
export {
|
|
33
|
-
|
|
45
|
+
QueryRegistryTool
|
|
34
46
|
};
|
|
35
47
|
//# sourceMappingURL=standards-agent-kit.es29.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-agent-kit.es29.js","sources":["../../src/tools/
|
|
1
|
+
{"version":3,"file":"standards-agent-kit.es29.js","sources":["../../src/tools/hcs2/QueryRegistryTool.ts"],"sourcesContent":["import { z } from 'zod';\nimport { BaseHCS2QueryTool } from './base-hcs2-tools';\nimport { CallbackManagerForToolRun } from '@langchain/core/callbacks/manager';\n\n/**\n * Schema for querying HCS-2 registry\n */\nconst queryRegistrySchema = z.object({\n topicId: z\n .string()\n .regex(/^\\d+\\.\\d+\\.\\d+$/)\n .describe('The HCS-2 registry topic ID to query'),\n limit: z\n .number()\n .int()\n .positive()\n .optional()\n .describe('Maximum number of entries to return'),\n order: z\n .enum(['asc', 'desc'])\n .optional()\n .describe('Order of results (ascending or descending)'),\n skip: z\n .number()\n .int()\n .min(0)\n .optional()\n .describe('Number of entries to skip'),\n});\n\n\n/**\n * Tool for querying HCS-2 registries\n */\nexport class QueryRegistryTool extends BaseHCS2QueryTool<typeof queryRegistrySchema> {\n name = 'queryHCS2Registry';\n description = 'Query entries from an HCS-2 registry (standard HCS-2). Retrieves indexed or latest entries and returns a structured summary.'\n\n get specificInputSchema() {\n return queryRegistrySchema;\n }\n\n protected async executeQuery(\n params: z.infer<typeof queryRegistrySchema>,\n _runManager?: CallbackManagerForToolRun\n ): Promise<unknown> {\n const registry = await this.hcs2Builder.getRegistry(params.topicId, {\n limit: params.limit,\n order: params.order,\n skip: params.skip,\n });\n\n const typeVal = (registry as unknown as { registryType: unknown }).registryType;\n const isIndexed =\n typeVal === 0 ||\n typeVal === '0' ||\n String(typeVal).toLowerCase() === 'indexed' ||\n String(typeVal).toLowerCase() === 'index' ||\n String(typeVal).toLowerCase() === 'index_topic' ||\n String(typeVal).toLowerCase() === 'indexed_registry';\n\n return {\n topicId: registry.topicId,\n registryType: isIndexed ? 'indexed' : 'non-indexed',\n ttl: registry.ttl,\n totalEntries: registry.entries.length,\n entries: registry.entries.map(entry => ({\n sequence: entry.sequence,\n timestamp: entry.timestamp,\n payer: entry.payer,\n operation: entry.message.op,\n targetTopicId: entry.message.t_id,\n uid: entry.message.uid,\n metadata: entry.message.metadata,\n memo: entry.message.m,\n })),\n };\n }\n}"],"names":[],"mappings":";;AAOA,MAAM,sBAAsB,EAAE,OAAO;AAAA,EACnC,SAAS,EACN,OAAA,EACA,MAAM,iBAAiB,EACvB,SAAS,sCAAsC;AAAA,EAClD,OAAO,EACJ,OAAA,EACA,IAAA,EACA,SAAA,EACA,SAAA,EACA,SAAS,qCAAqC;AAAA,EACjD,OAAO,EACJ,KAAK,CAAC,OAAO,MAAM,CAAC,EACpB,SAAA,EACA,SAAS,4CAA4C;AAAA,EACxD,MAAM,EACH,OAAA,EACA,IAAA,EACA,IAAI,CAAC,EACL,WACA,SAAS,2BAA2B;AACzC,CAAC;AAMM,MAAM,0BAA0B,kBAA8C;AAAA,EAA9E,cAAA;AAAA,UAAA,GAAA,SAAA;AACL,SAAA,OAAO;AACP,SAAA,cAAc;AAAA,EAAA;AAAA,EAEd,IAAI,sBAAsB;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,MAAgB,aACd,QACA,aACkB;AAClB,UAAM,WAAW,MAAM,KAAK,YAAY,YAAY,OAAO,SAAS;AAAA,MAClE,OAAO,OAAO;AAAA,MACd,OAAO,OAAO;AAAA,MACd,MAAM,OAAO;AAAA,IAAA,CACd;AAED,UAAM,UAAW,SAAkD;AACnE,UAAM,YACJ,YAAY,KACZ,YAAY,OACZ,OAAO,OAAO,EAAE,kBAAkB,aAClC,OAAO,OAAO,EAAE,kBAAkB,WAClC,OAAO,OAAO,EAAE,kBAAkB,iBAClC,OAAO,OAAO,EAAE,YAAA,MAAkB;AAEpC,WAAO;AAAA,MACL,SAAS,SAAS;AAAA,MAClB,cAAc,YAAY,YAAY;AAAA,MACtC,KAAK,SAAS;AAAA,MACd,cAAc,SAAS,QAAQ;AAAA,MAC/B,SAAS,SAAS,QAAQ,IAAI,CAAA,WAAU;AAAA,QACtC,UAAU,MAAM;AAAA,QAChB,WAAW,MAAM;AAAA,QACjB,OAAO,MAAM;AAAA,QACb,WAAW,MAAM,QAAQ;AAAA,QACzB,eAAe,MAAM,QAAQ;AAAA,QAC7B,KAAK,MAAM,QAAQ;AAAA,QACnB,UAAU,MAAM,QAAQ;AAAA,QACxB,MAAM,MAAM,QAAQ;AAAA,MAAA,EACpB;AAAA,IAAA;AAAA,EAEN;AACF;"}
|