@hashgraphonline/standards-sdk 0.1.141-canary.34 → 0.1.141-canary.38
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/dist/cjs/hcs-21/sdk.d.ts +12 -27
- package/dist/cjs/hcs-21/sdk.d.ts.map +1 -1
- package/dist/cjs/standards-sdk.cjs +1 -1
- package/dist/cjs/standards-sdk.cjs.map +1 -1
- package/dist/es/hcs-21/sdk.d.ts +12 -27
- package/dist/es/hcs-21/sdk.d.ts.map +1 -1
- package/dist/es/standards-sdk.es100.js +1 -1
- package/dist/es/standards-sdk.es102.js +1 -1
- package/dist/es/standards-sdk.es104.js +1 -1
- package/dist/es/standards-sdk.es110.js +1 -1
- package/dist/es/standards-sdk.es12.js +1 -1
- package/dist/es/standards-sdk.es128.js +1 -1
- package/dist/es/standards-sdk.es13.js +1 -1
- package/dist/es/standards-sdk.es137.js +13 -134
- package/dist/es/standards-sdk.es137.js.map +1 -1
- package/dist/es/standards-sdk.es138.js +133 -37
- package/dist/es/standards-sdk.es138.js.map +1 -1
- package/dist/es/standards-sdk.es140.js +766 -17
- package/dist/es/standards-sdk.es140.js.map +1 -1
- package/dist/es/standards-sdk.es141.js +42 -766
- package/dist/es/standards-sdk.es141.js.map +1 -1
- package/dist/es/standards-sdk.es17.js +1 -1
- package/dist/es/standards-sdk.es19.js +3 -3
- package/dist/es/standards-sdk.es20.js +1 -1
- package/dist/es/standards-sdk.es23.js +1 -1
- package/dist/es/standards-sdk.es28.js +2 -2
- package/dist/es/standards-sdk.es36.js +1 -1
- package/dist/es/standards-sdk.es37.js +2 -2
- package/dist/es/standards-sdk.es5.js +1 -1
- package/dist/es/standards-sdk.es54.js +1 -1
- package/dist/es/standards-sdk.es61.js +2 -2
- package/dist/es/standards-sdk.es65.js +1 -1
- package/dist/es/standards-sdk.es66.js +2 -2
- package/dist/es/standards-sdk.es69.js +2 -2
- package/dist/es/standards-sdk.es70.js +1 -1
- package/dist/es/standards-sdk.es72.js +1 -1
- package/dist/es/standards-sdk.es77.js +1 -1
- package/dist/es/standards-sdk.es78.js +1 -1
- package/dist/es/standards-sdk.es79.js +1 -1
- package/dist/es/standards-sdk.es8.js +1 -1
- package/dist/es/standards-sdk.es82.js +1 -1
- package/dist/es/standards-sdk.es84.js +13 -65
- package/dist/es/standards-sdk.es84.js.map +1 -1
- package/dist/es/standards-sdk.es88.js +1 -1
- package/dist/es/standards-sdk.es92.js +1 -1
- package/dist/es/standards-sdk.es93.js +1 -1
- package/dist/es/standards-sdk.es98.js +1 -1
- package/package.json +1 -1
package/dist/es/hcs-21/sdk.d.ts
CHANGED
|
@@ -37,7 +37,7 @@ export interface InscribeMetadataParams {
|
|
|
37
37
|
fileName?: string;
|
|
38
38
|
inscriptionOptions?: InscriptionOptions;
|
|
39
39
|
}
|
|
40
|
-
export interface
|
|
40
|
+
export interface CreateAdapterVersionPointerTopicParams {
|
|
41
41
|
ttl: number;
|
|
42
42
|
adminKey?: MaybeKey;
|
|
43
43
|
submitKey?: MaybeKey;
|
|
@@ -59,17 +59,9 @@ export interface CreateAdapterCategoryTopicParams {
|
|
|
59
59
|
submitKey?: MaybeKey;
|
|
60
60
|
transactionMemo?: string;
|
|
61
61
|
}
|
|
62
|
-
export interface
|
|
62
|
+
export interface PublishVersionPointerParams {
|
|
63
63
|
versionTopicId: string;
|
|
64
|
-
|
|
65
|
-
metadata?: string;
|
|
66
|
-
memo?: string;
|
|
67
|
-
transactionMemo?: string;
|
|
68
|
-
}
|
|
69
|
-
export interface RegisterVersionTopicParams {
|
|
70
|
-
registryOfRegistriesTopicId: string;
|
|
71
|
-
versionTopicId: string;
|
|
72
|
-
metadata?: string;
|
|
64
|
+
declarationTopicId: string;
|
|
73
65
|
memo?: string;
|
|
74
66
|
transactionMemo?: string;
|
|
75
67
|
}
|
|
@@ -88,19 +80,10 @@ export interface PublishCategoryEntryParams {
|
|
|
88
80
|
memo?: string;
|
|
89
81
|
transactionMemo?: string;
|
|
90
82
|
}
|
|
91
|
-
export interface
|
|
92
|
-
versionTopicId: string;
|
|
93
|
-
registryTopicId: string;
|
|
94
|
-
sequenceNumber: number;
|
|
95
|
-
metadata?: string;
|
|
96
|
-
payer?: string;
|
|
97
|
-
memo?: string;
|
|
98
|
-
op?: string;
|
|
99
|
-
}
|
|
100
|
-
export interface RegistryOfRegistriesResolution {
|
|
83
|
+
export interface VersionPointerResolution {
|
|
101
84
|
versionTopicId: string;
|
|
85
|
+
declarationTopicId: string;
|
|
102
86
|
sequenceNumber: number;
|
|
103
|
-
metadata?: string;
|
|
104
87
|
payer?: string;
|
|
105
88
|
memo?: string;
|
|
106
89
|
op?: string;
|
|
@@ -111,13 +94,15 @@ export declare class HCS21Client extends HCS21BaseClient {
|
|
|
111
94
|
constructor(config: HCS21ClientConfig);
|
|
112
95
|
inscribeMetadata(params: InscribeMetadataParams): Promise<ManifestPointer>;
|
|
113
96
|
createRegistryTopic(params: CreateRegistryTopicParams): Promise<string>;
|
|
114
|
-
|
|
97
|
+
createAdapterVersionPointerTopic(params: CreateAdapterVersionPointerTopicParams): Promise<string>;
|
|
115
98
|
createRegistryDiscoveryTopic(params: CreateRegistryDiscoveryTopicParams): Promise<string>;
|
|
116
99
|
createAdapterCategoryTopic(params: CreateAdapterCategoryTopicParams): Promise<string>;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
100
|
+
/**
|
|
101
|
+
* Publish a pointer from a version topic to the active declaration topic.
|
|
102
|
+
* Version pointer messages carry no metadata.
|
|
103
|
+
*/
|
|
104
|
+
publishVersionPointer(params: PublishVersionPointerParams): Promise<PublishDeclarationResult>;
|
|
105
|
+
resolveVersionPointer(versionTopicId: string): Promise<VersionPointerResolution>;
|
|
121
106
|
registerCategoryTopic(params: RegisterCategoryTopicParams): Promise<PublishDeclarationResult>;
|
|
122
107
|
publishCategoryEntry(params: PublishCategoryEntryParams): Promise<PublishDeclarationResult>;
|
|
123
108
|
publishDeclaration(params: PublishDeclarationParams): Promise<PublishDeclarationResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/hcs-21/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAGX,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAU,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EACL,kBAAkB,EAElB,qBAAqB,EACrB,cAAc,EACd,eAAe,EAEhB,MAAM,SAAS,CAAC;AAQjB,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC;IACjC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAChB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,QAAQ,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,kBAAkB,GAAG,sBAAsB,CAAC;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/hcs-21/sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.
|
|
1
|
+
import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es141.js";
|
|
2
2
|
import { generateHCS17Memo } from "./standards-sdk.es96.js";
|
|
3
3
|
function buildHcs17CreateTopicTx(params) {
|
|
4
4
|
const memo = generateHCS17Memo(params.ttl);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client } from "@hashgraph/sdk";
|
|
2
2
|
import { Logger } from "./standards-sdk.es106.js";
|
|
3
|
-
import { createNodeOperatorContext } from "./standards-sdk.
|
|
3
|
+
import { createNodeOperatorContext } from "./standards-sdk.es138.js";
|
|
4
4
|
import { buildHcs18CreateDiscoveryTopicTx, buildHcs18AnnounceMessage, buildHcs18SubmitDiscoveryMessageTx, buildHcs18ProposeMessage, buildHcs18RespondMessage, buildHcs18CompleteMessage, buildHcs18WithdrawMessage } from "./standards-sdk.es104.js";
|
|
5
5
|
import { HCS18BaseClient } from "./standards-sdk.es105.js";
|
|
6
6
|
class HCS18Client extends HCS18BaseClient {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TopicMessageSubmitTransaction } from "@hashgraph/sdk";
|
|
2
2
|
import { DiscoveryOperation } from "./standards-sdk.es101.js";
|
|
3
|
-
import { buildTopicCreateTx } from "./standards-sdk.
|
|
3
|
+
import { buildTopicCreateTx } from "./standards-sdk.es141.js";
|
|
4
4
|
function buildHcs18DiscoveryMemo(ttlSeconds, memoOverride) {
|
|
5
5
|
if (memoOverride && memoOverride.trim().length > 0) {
|
|
6
6
|
return memoOverride;
|
|
@@ -6,7 +6,7 @@ import "node:buffer";
|
|
|
6
6
|
import "node:crypto";
|
|
7
7
|
import "@noble/curves/secp256k1.js";
|
|
8
8
|
import "./standards-sdk.es130.js";
|
|
9
|
-
import "./standards-sdk.
|
|
9
|
+
import "./standards-sdk.es140.js";
|
|
10
10
|
import "zod";
|
|
11
11
|
class HRLResolver {
|
|
12
12
|
constructor(logLevel = "info") {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PublicKey, PrivateKey } from "@hashgraph/sdk";
|
|
2
2
|
import { HCS7BaseClient } from "./standards-sdk.es10.js";
|
|
3
|
-
import { createNodeOperatorContext } from "./standards-sdk.
|
|
3
|
+
import { createNodeOperatorContext } from "./standards-sdk.es138.js";
|
|
4
4
|
import { buildHcs7CreateRegistryTx, buildHcs7SubmitMessageTx } from "./standards-sdk.es13.js";
|
|
5
5
|
class HCS7Client extends HCS7BaseClient {
|
|
6
6
|
constructor(config) {
|
|
@@ -3,7 +3,7 @@ import { Buffer } from "node:buffer";
|
|
|
3
3
|
import { randomBytes, createHash, createCipheriv, createDecipheriv } from "node:crypto";
|
|
4
4
|
import { secp256k1 } from "@noble/curves/secp256k1.js";
|
|
5
5
|
import { canonicalizeLedgerNetwork } from "./standards-sdk.es130.js";
|
|
6
|
-
import { searchResponseSchema, statsResponseSchema, registriesResponseSchema, additionalRegistryCatalogResponseSchema, popularResponseSchema, resolveResponseSchema, registerAgentResponseSchema, registrationQuoteResponseSchema, registrationProgressResponseSchema, creditPurchaseResponseSchema, x402MinimumsResponseSchema, x402CreditPurchaseResponseSchema, ledgerChallengeResponseSchema, ledgerVerifyResponseSchema, protocolsResponseSchema, detectProtocolResponseSchema, registrySearchByNamespaceSchema, vectorSearchResponseSchema, searchStatusResponseSchema, adapterDetailsResponseSchema, websocketStatsResponseSchema, metricsSummaryResponseSchema, uaidValidationResponseSchema, uaidConnectionStatusSchema, dashboardStatsResponseSchema, adaptersResponseSchema, searchFacetsResponseSchema, createSessionResponseSchema, chatHistorySnapshotResponseSchema, chatHistoryCompactionResponseSchema, sessionEncryptionStatusResponseSchema, encryptionHandshakeResponseSchema, registerEncryptionKeyResponseSchema, sendMessageResponseSchema } from "./standards-sdk.
|
|
6
|
+
import { searchResponseSchema, statsResponseSchema, registriesResponseSchema, additionalRegistryCatalogResponseSchema, popularResponseSchema, resolveResponseSchema, registerAgentResponseSchema, registrationQuoteResponseSchema, registrationProgressResponseSchema, creditPurchaseResponseSchema, x402MinimumsResponseSchema, x402CreditPurchaseResponseSchema, ledgerChallengeResponseSchema, ledgerVerifyResponseSchema, protocolsResponseSchema, detectProtocolResponseSchema, registrySearchByNamespaceSchema, vectorSearchResponseSchema, searchStatusResponseSchema, adapterDetailsResponseSchema, websocketStatsResponseSchema, metricsSummaryResponseSchema, uaidValidationResponseSchema, uaidConnectionStatusSchema, dashboardStatsResponseSchema, adaptersResponseSchema, searchFacetsResponseSchema, createSessionResponseSchema, chatHistorySnapshotResponseSchema, chatHistoryCompactionResponseSchema, sessionEncryptionStatusResponseSchema, encryptionHandshakeResponseSchema, registerEncryptionKeyResponseSchema, sendMessageResponseSchema } from "./standards-sdk.es140.js";
|
|
7
7
|
import { ZodError } from "zod";
|
|
8
8
|
import { createPrivateKeySigner } from "./standards-sdk.es129.js";
|
|
9
9
|
import { optionalImport } from "./standards-sdk.es135.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.
|
|
1
|
+
import { buildTopicCreateTx, buildMessageTx } from "./standards-sdk.es141.js";
|
|
2
2
|
import { HCS7ConfigType, HCS7Operation } from "./standards-sdk.es9.js";
|
|
3
3
|
function buildHcs7CreateRegistryTx(params) {
|
|
4
4
|
const memo = `hcs-7:indexed:${params.ttl}`;
|
|
@@ -1,141 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
class
|
|
4
|
-
constructor(params) {
|
|
5
|
-
this.mirror = params.mirrorNode;
|
|
6
|
-
this.logger = params.logger;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Best-guess parsing for an operator key without network calls.
|
|
10
|
-
* - If PrivateKey: returns immediately with provided or fallback type.
|
|
11
|
-
* - If string with explicitType: parse directly.
|
|
12
|
-
* - If string without type: detect format; fallback to ECDSA.
|
|
13
|
-
*/
|
|
14
|
-
bestGuessOperatorKey(operatorKeyInput, explicitType) {
|
|
15
|
-
if (typeof operatorKeyInput !== "string") {
|
|
16
|
-
return { keyType: explicitType || "ecdsa", privateKey: operatorKeyInput };
|
|
17
|
-
}
|
|
18
|
-
if (explicitType) {
|
|
19
|
-
const pk = explicitType === "ed25519" ? PrivateKey.fromStringED25519(operatorKeyInput) : PrivateKey.fromStringECDSA(operatorKeyInput);
|
|
20
|
-
return { keyType: explicitType, privateKey: pk };
|
|
21
|
-
}
|
|
22
|
-
try {
|
|
23
|
-
const detected = detectKeyTypeFromString(operatorKeyInput);
|
|
24
|
-
return {
|
|
25
|
-
keyType: detected.detectedType,
|
|
26
|
-
privateKey: detected.privateKey
|
|
27
|
-
};
|
|
28
|
-
} catch {
|
|
29
|
-
return {
|
|
30
|
-
keyType: "ecdsa",
|
|
31
|
-
privateKey: PrivateKey.fromStringECDSA(operatorKeyInput)
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
}
|
|
1
|
+
import { Logger } from "./standards-sdk.es106.js";
|
|
2
|
+
import { HederaMirrorNode } from "./standards-sdk.es127.js";
|
|
3
|
+
class HCS5BaseClient {
|
|
35
4
|
/**
|
|
36
|
-
*
|
|
37
|
-
* - If PrivateKey: return immediately.
|
|
38
|
-
* - If explicitType: parse directly.
|
|
39
|
-
* - Else: query Mirror Node; fallback to local detection.
|
|
5
|
+
* Create a new HCS-5 base client
|
|
40
6
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
const account = typeof operatorId === "string" ? operatorId : operatorId.toString();
|
|
50
|
-
try {
|
|
51
|
-
const info = await this.mirror.requestAccount(account);
|
|
52
|
-
const t = info?.key?._type || "";
|
|
53
|
-
const keyType = t.includes("ED25519") ? "ed25519" : "ecdsa";
|
|
54
|
-
const privateKey = keyType === "ed25519" ? PrivateKey.fromStringED25519(operatorKeyInput) : PrivateKey.fromStringECDSA(operatorKeyInput);
|
|
55
|
-
return { keyType, privateKey };
|
|
56
|
-
} catch {
|
|
57
|
-
this.logger.warn(
|
|
58
|
-
"Mirror node key detection failed; using local detection or default ECDSA"
|
|
59
|
-
);
|
|
60
|
-
return this.bestGuessOperatorKey(operatorKeyInput);
|
|
61
|
-
}
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.network = config.network;
|
|
9
|
+
this.logger = config.logger || Logger.getInstance({
|
|
10
|
+
level: config.logLevel || "info",
|
|
11
|
+
module: "HCS5Client",
|
|
12
|
+
silent: config.silent
|
|
13
|
+
});
|
|
14
|
+
this.mirrorNode = new HederaMirrorNode(this.network, this.logger);
|
|
62
15
|
}
|
|
63
|
-
/**
|
|
64
|
-
* Resolve a supply key for the given token using Mirror Node token supply_key._type when possible.
|
|
65
|
-
*/
|
|
66
|
-
async resolveSupplyKey(tokenId, keyInput, fallbackType, explicitType) {
|
|
67
|
-
try {
|
|
68
|
-
const info = await this.mirror.getTokenInfo(tokenId);
|
|
69
|
-
const t = info?.supply_key?._type || "";
|
|
70
|
-
if (typeof keyInput !== "string") {
|
|
71
|
-
return keyInput;
|
|
72
|
-
}
|
|
73
|
-
if (explicitType) {
|
|
74
|
-
return explicitType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
75
|
-
}
|
|
76
|
-
if (t.includes("ED25519")) {
|
|
77
|
-
return PrivateKey.fromStringED25519(keyInput);
|
|
78
|
-
}
|
|
79
|
-
if (t.includes("ECDSA")) {
|
|
80
|
-
return PrivateKey.fromStringECDSA(keyInput);
|
|
81
|
-
}
|
|
82
|
-
return fallbackType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
83
|
-
} catch {
|
|
84
|
-
if (typeof keyInput !== "string") {
|
|
85
|
-
return keyInput;
|
|
86
|
-
}
|
|
87
|
-
if (explicitType) {
|
|
88
|
-
return explicitType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
89
|
-
}
|
|
90
|
-
return fallbackType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
function createNodeOperatorContext(params) {
|
|
95
|
-
const operatorId = typeof params.operatorId === "string" ? AccountId.fromString(params.operatorId) : params.operatorId;
|
|
96
|
-
const client = params.client ? params.client : params.network === "mainnet" ? Client.forMainnet() : Client.forTestnet();
|
|
97
|
-
const resolver = new NodeOperatorResolver({
|
|
98
|
-
mirrorNode: params.mirrorNode,
|
|
99
|
-
logger: params.logger
|
|
100
|
-
});
|
|
101
|
-
let currentKeyType;
|
|
102
|
-
let currentPrivateKey;
|
|
103
|
-
const guess = resolver.bestGuessOperatorKey(
|
|
104
|
-
params.operatorKey,
|
|
105
|
-
params.keyType
|
|
106
|
-
);
|
|
107
|
-
currentKeyType = guess.keyType;
|
|
108
|
-
currentPrivateKey = guess.privateKey;
|
|
109
|
-
client.setOperator(operatorId.toString(), currentPrivateKey);
|
|
110
|
-
const initPromise = (async () => {
|
|
111
|
-
try {
|
|
112
|
-
const resolved = await resolver.resolveOperatorKey(
|
|
113
|
-
operatorId,
|
|
114
|
-
params.operatorKey,
|
|
115
|
-
params.keyType
|
|
116
|
-
);
|
|
117
|
-
currentKeyType = resolved.keyType;
|
|
118
|
-
currentPrivateKey = resolved.privateKey;
|
|
119
|
-
client.setOperator(operatorId.toString(), currentPrivateKey);
|
|
120
|
-
} catch {
|
|
121
|
-
}
|
|
122
|
-
})();
|
|
123
|
-
return {
|
|
124
|
-
client,
|
|
125
|
-
operatorId,
|
|
126
|
-
get operatorKey() {
|
|
127
|
-
return currentPrivateKey;
|
|
128
|
-
},
|
|
129
|
-
get keyType() {
|
|
130
|
-
return currentKeyType;
|
|
131
|
-
},
|
|
132
|
-
ensureInitialized: async () => {
|
|
133
|
-
await initPromise;
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
16
|
}
|
|
137
17
|
export {
|
|
138
|
-
|
|
139
|
-
createNodeOperatorContext
|
|
18
|
+
HCS5BaseClient
|
|
140
19
|
};
|
|
141
20
|
//# sourceMappingURL=standards-sdk.es137.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es137.js","sources":["../../src/
|
|
1
|
+
{"version":3,"file":"standards-sdk.es137.js","sources":["../../src/hcs-5/base-client.ts"],"sourcesContent":["import { Logger, ILogger } from '../utils/logger';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { HCS5ClientConfig } from './types';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Base client for HCS-5 operations\n */\nexport abstract class HCS5BaseClient {\n protected logger: ILogger;\n protected mirrorNode: HederaMirrorNode;\n protected network: NetworkType;\n\n /**\n * Create a new HCS-5 base client\n */\n constructor(config: HCS5ClientConfig) {\n this.network = config.network;\n this.logger =\n config.logger ||\n Logger.getInstance({\n level: config.logLevel || 'info',\n module: 'HCS5Client',\n silent: config.silent,\n });\n\n this.mirrorNode = new HederaMirrorNode(this.network, this.logger);\n }\n}\n"],"names":[],"mappings":";;AAQO,MAAe,eAAe;AAAA;AAAA;AAAA;AAAA,EAQnC,YAAY,QAA0B;AACpC,SAAK,UAAU,OAAO;AACtB,SAAK,SACH,OAAO,UACP,OAAO,YAAY;AAAA,MACjB,OAAO,OAAO,YAAY;AAAA,MAC1B,QAAQ;AAAA,MACR,QAAQ,OAAO;AAAA,IAAA,CAChB;AAEH,SAAK,aAAa,IAAI,iBAAiB,KAAK,SAAS,KAAK,MAAM;AAAA,EAClE;AACF;"}
|
|
@@ -1,45 +1,141 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
1
|
+
import { AccountId, Client, PrivateKey } from "@hashgraph/sdk";
|
|
2
|
+
import { detectKeyTypeFromString } from "./standards-sdk.es114.js";
|
|
3
|
+
class NodeOperatorResolver {
|
|
4
|
+
constructor(params) {
|
|
5
|
+
this.mirror = params.mirrorNode;
|
|
6
|
+
this.logger = params.logger;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Best-guess parsing for an operator key without network calls.
|
|
10
|
+
* - If PrivateKey: returns immediately with provided or fallback type.
|
|
11
|
+
* - If string with explicitType: parse directly.
|
|
12
|
+
* - If string without type: detect format; fallback to ECDSA.
|
|
13
|
+
*/
|
|
14
|
+
bestGuessOperatorKey(operatorKeyInput, explicitType) {
|
|
15
|
+
if (typeof operatorKeyInput !== "string") {
|
|
16
|
+
return { keyType: explicitType || "ecdsa", privateKey: operatorKeyInput };
|
|
17
|
+
}
|
|
18
|
+
if (explicitType) {
|
|
19
|
+
const pk = explicitType === "ed25519" ? PrivateKey.fromStringED25519(operatorKeyInput) : PrivateKey.fromStringECDSA(operatorKeyInput);
|
|
20
|
+
return { keyType: explicitType, privateKey: pk };
|
|
21
|
+
}
|
|
22
|
+
try {
|
|
23
|
+
const detected = detectKeyTypeFromString(operatorKeyInput);
|
|
24
|
+
return {
|
|
25
|
+
keyType: detected.detectedType,
|
|
26
|
+
privateKey: detected.privateKey
|
|
27
|
+
};
|
|
28
|
+
} catch {
|
|
29
|
+
return {
|
|
30
|
+
keyType: "ecdsa",
|
|
31
|
+
privateKey: PrivateKey.fromStringECDSA(operatorKeyInput)
|
|
32
|
+
};
|
|
20
33
|
}
|
|
21
|
-
return void 0;
|
|
22
|
-
};
|
|
23
|
-
const admin = coerceKey(adminKey);
|
|
24
|
-
if (admin) {
|
|
25
|
-
tx.setAdminKey(admin);
|
|
26
34
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
35
|
+
/**
|
|
36
|
+
* Resolve an operator key using Mirror Node for key type when possible.
|
|
37
|
+
* - If PrivateKey: return immediately.
|
|
38
|
+
* - If explicitType: parse directly.
|
|
39
|
+
* - Else: query Mirror Node; fallback to local detection.
|
|
40
|
+
*/
|
|
41
|
+
async resolveOperatorKey(operatorId, operatorKeyInput, explicitType) {
|
|
42
|
+
if (typeof operatorKeyInput !== "string") {
|
|
43
|
+
return { keyType: explicitType || "ecdsa", privateKey: operatorKeyInput };
|
|
44
|
+
}
|
|
45
|
+
if (explicitType) {
|
|
46
|
+
const pk = explicitType === "ed25519" ? PrivateKey.fromStringED25519(operatorKeyInput) : PrivateKey.fromStringECDSA(operatorKeyInput);
|
|
47
|
+
return { keyType: explicitType, privateKey: pk };
|
|
48
|
+
}
|
|
49
|
+
const account = typeof operatorId === "string" ? operatorId : operatorId.toString();
|
|
50
|
+
try {
|
|
51
|
+
const info = await this.mirror.requestAccount(account);
|
|
52
|
+
const t = info?.key?._type || "";
|
|
53
|
+
const keyType = t.includes("ED25519") ? "ed25519" : "ecdsa";
|
|
54
|
+
const privateKey = keyType === "ed25519" ? PrivateKey.fromStringED25519(operatorKeyInput) : PrivateKey.fromStringECDSA(operatorKeyInput);
|
|
55
|
+
return { keyType, privateKey };
|
|
56
|
+
} catch {
|
|
57
|
+
this.logger.warn(
|
|
58
|
+
"Mirror node key detection failed; using local detection or default ECDSA"
|
|
59
|
+
);
|
|
60
|
+
return this.bestGuessOperatorKey(operatorKeyInput);
|
|
61
|
+
}
|
|
30
62
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
63
|
+
/**
|
|
64
|
+
* Resolve a supply key for the given token using Mirror Node token supply_key._type when possible.
|
|
65
|
+
*/
|
|
66
|
+
async resolveSupplyKey(tokenId, keyInput, fallbackType, explicitType) {
|
|
67
|
+
try {
|
|
68
|
+
const info = await this.mirror.getTokenInfo(tokenId);
|
|
69
|
+
const t = info?.supply_key?._type || "";
|
|
70
|
+
if (typeof keyInput !== "string") {
|
|
71
|
+
return keyInput;
|
|
72
|
+
}
|
|
73
|
+
if (explicitType) {
|
|
74
|
+
return explicitType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
75
|
+
}
|
|
76
|
+
if (t.includes("ED25519")) {
|
|
77
|
+
return PrivateKey.fromStringED25519(keyInput);
|
|
78
|
+
}
|
|
79
|
+
if (t.includes("ECDSA")) {
|
|
80
|
+
return PrivateKey.fromStringECDSA(keyInput);
|
|
81
|
+
}
|
|
82
|
+
return fallbackType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
83
|
+
} catch {
|
|
84
|
+
if (typeof keyInput !== "string") {
|
|
85
|
+
return keyInput;
|
|
86
|
+
}
|
|
87
|
+
if (explicitType) {
|
|
88
|
+
return explicitType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
89
|
+
}
|
|
90
|
+
return fallbackType === "ed25519" ? PrivateKey.fromStringED25519(keyInput) : PrivateKey.fromStringECDSA(keyInput);
|
|
91
|
+
}
|
|
37
92
|
}
|
|
38
|
-
|
|
93
|
+
}
|
|
94
|
+
function createNodeOperatorContext(params) {
|
|
95
|
+
const operatorId = typeof params.operatorId === "string" ? AccountId.fromString(params.operatorId) : params.operatorId;
|
|
96
|
+
const client = params.client ? params.client : params.network === "mainnet" ? Client.forMainnet() : Client.forTestnet();
|
|
97
|
+
const resolver = new NodeOperatorResolver({
|
|
98
|
+
mirrorNode: params.mirrorNode,
|
|
99
|
+
logger: params.logger
|
|
100
|
+
});
|
|
101
|
+
let currentKeyType;
|
|
102
|
+
let currentPrivateKey;
|
|
103
|
+
const guess = resolver.bestGuessOperatorKey(
|
|
104
|
+
params.operatorKey,
|
|
105
|
+
params.keyType
|
|
106
|
+
);
|
|
107
|
+
currentKeyType = guess.keyType;
|
|
108
|
+
currentPrivateKey = guess.privateKey;
|
|
109
|
+
client.setOperator(operatorId.toString(), currentPrivateKey);
|
|
110
|
+
const initPromise = (async () => {
|
|
111
|
+
try {
|
|
112
|
+
const resolved = await resolver.resolveOperatorKey(
|
|
113
|
+
operatorId,
|
|
114
|
+
params.operatorKey,
|
|
115
|
+
params.keyType
|
|
116
|
+
);
|
|
117
|
+
currentKeyType = resolved.keyType;
|
|
118
|
+
currentPrivateKey = resolved.privateKey;
|
|
119
|
+
client.setOperator(operatorId.toString(), currentPrivateKey);
|
|
120
|
+
} catch {
|
|
121
|
+
}
|
|
122
|
+
})();
|
|
123
|
+
return {
|
|
124
|
+
client,
|
|
125
|
+
operatorId,
|
|
126
|
+
get operatorKey() {
|
|
127
|
+
return currentPrivateKey;
|
|
128
|
+
},
|
|
129
|
+
get keyType() {
|
|
130
|
+
return currentKeyType;
|
|
131
|
+
},
|
|
132
|
+
ensureInitialized: async () => {
|
|
133
|
+
await initPromise;
|
|
134
|
+
}
|
|
135
|
+
};
|
|
39
136
|
}
|
|
40
137
|
export {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
encodeHcs2RegistryMemo
|
|
138
|
+
NodeOperatorResolver,
|
|
139
|
+
createNodeOperatorContext
|
|
44
140
|
};
|
|
45
141
|
//# sourceMappingURL=standards-sdk.es138.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es138.js","sources":["../../src/common/
|
|
1
|
+
{"version":3,"file":"standards-sdk.es138.js","sources":["../../src/common/node-operator-resolver.ts"],"sourcesContent":["import { AccountId, Client, PrivateKey } from '@hashgraph/sdk';\nimport { HederaMirrorNode } from '../services/mirror-node';\nimport { ILogger } from '../utils/logger';\nimport { detectKeyTypeFromString } from '../utils/key-type-detector';\nimport { NetworkType } from '../utils/types';\n\n/**\n * Resolves operator and supply private keys using Mirror Node as source of truth\n * with format-detection fallbacks for string keys.\n */\nexport class NodeOperatorResolver {\n private readonly mirror: HederaMirrorNode;\n private readonly logger: ILogger;\n\n constructor(params: { mirrorNode: HederaMirrorNode; logger: ILogger }) {\n this.mirror = params.mirrorNode;\n this.logger = params.logger;\n }\n\n /**\n * Best-guess parsing for an operator key without network calls.\n * - If PrivateKey: returns immediately with provided or fallback type.\n * - If string with explicitType: parse directly.\n * - If string without type: detect format; fallback to ECDSA.\n */\n bestGuessOperatorKey(\n operatorKeyInput: string | PrivateKey,\n explicitType?: 'ed25519' | 'ecdsa',\n ): { keyType: 'ed25519' | 'ecdsa'; privateKey: PrivateKey } {\n if (typeof operatorKeyInput !== 'string') {\n return { keyType: explicitType || 'ecdsa', privateKey: operatorKeyInput };\n }\n if (explicitType) {\n const pk =\n explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType: explicitType, privateKey: pk };\n }\n try {\n const detected = detectKeyTypeFromString(operatorKeyInput);\n return {\n keyType: detected.detectedType,\n privateKey: detected.privateKey,\n };\n } catch {\n return {\n keyType: 'ecdsa',\n privateKey: PrivateKey.fromStringECDSA(operatorKeyInput),\n };\n }\n }\n\n /**\n * Resolve an operator key using Mirror Node for key type when possible.\n * - If PrivateKey: return immediately.\n * - If explicitType: parse directly.\n * - Else: query Mirror Node; fallback to local detection.\n */\n async resolveOperatorKey(\n operatorId: string | AccountId,\n operatorKeyInput: string | PrivateKey,\n explicitType?: 'ed25519' | 'ecdsa',\n ): Promise<{ keyType: 'ed25519' | 'ecdsa'; privateKey: PrivateKey }> {\n if (typeof operatorKeyInput !== 'string') {\n return { keyType: explicitType || 'ecdsa', privateKey: operatorKeyInput };\n }\n if (explicitType) {\n const pk =\n explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType: explicitType, privateKey: pk };\n }\n const account =\n typeof operatorId === 'string' ? operatorId : operatorId.toString();\n try {\n const info = await this.mirror.requestAccount(account);\n const t = info?.key?._type || '';\n const keyType: 'ed25519' | 'ecdsa' = t.includes('ED25519')\n ? 'ed25519'\n : 'ecdsa';\n const privateKey =\n keyType === 'ed25519'\n ? PrivateKey.fromStringED25519(operatorKeyInput)\n : PrivateKey.fromStringECDSA(operatorKeyInput);\n return { keyType, privateKey };\n } catch {\n this.logger.warn(\n 'Mirror node key detection failed; using local detection or default ECDSA',\n );\n return this.bestGuessOperatorKey(operatorKeyInput);\n }\n }\n\n /**\n * Resolve a supply key for the given token using Mirror Node token supply_key._type when possible.\n */\n async resolveSupplyKey(\n tokenId: string,\n keyInput: string | PrivateKey,\n fallbackType: 'ed25519' | 'ecdsa',\n explicitType?: 'ed25519' | 'ecdsa',\n ): Promise<PrivateKey> {\n try {\n const info = await this.mirror.getTokenInfo(tokenId);\n const t = info?.supply_key?._type || '';\n if (typeof keyInput !== 'string') {\n return keyInput;\n }\n if (explicitType) {\n return explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n if (t.includes('ED25519')) {\n return PrivateKey.fromStringED25519(keyInput);\n }\n if (t.includes('ECDSA')) {\n return PrivateKey.fromStringECDSA(keyInput);\n }\n return fallbackType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n } catch {\n if (typeof keyInput !== 'string') {\n return keyInput;\n }\n if (explicitType) {\n return explicitType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n return fallbackType === 'ed25519'\n ? PrivateKey.fromStringED25519(keyInput)\n : PrivateKey.fromStringECDSA(keyInput);\n }\n }\n}\n\nexport interface NodeOperatorInitParams {\n network: NetworkType;\n operatorId: string | AccountId;\n operatorKey: string | PrivateKey;\n keyType?: 'ed25519' | 'ecdsa';\n mirrorNode: HederaMirrorNode;\n logger: ILogger;\n client?: Client;\n}\n\nexport interface NodeOperatorContext {\n client: Client;\n operatorId: AccountId;\n readonly operatorKey: PrivateKey;\n readonly keyType: 'ed25519' | 'ecdsa';\n ensureInitialized(): Promise<void>;\n}\n\nexport function createNodeOperatorContext(\n params: NodeOperatorInitParams,\n): NodeOperatorContext {\n const operatorId: AccountId =\n typeof params.operatorId === 'string'\n ? AccountId.fromString(params.operatorId)\n : params.operatorId;\n\n const client: Client = params.client\n ? params.client\n : params.network === 'mainnet'\n ? Client.forMainnet()\n : Client.forTestnet();\n\n const resolver = new NodeOperatorResolver({\n mirrorNode: params.mirrorNode,\n logger: params.logger,\n });\n\n let currentKeyType: 'ed25519' | 'ecdsa';\n let currentPrivateKey: PrivateKey;\n\n const guess = resolver.bestGuessOperatorKey(\n params.operatorKey,\n params.keyType,\n );\n currentKeyType = guess.keyType;\n currentPrivateKey = guess.privateKey;\n client.setOperator(operatorId.toString(), currentPrivateKey);\n\n const initPromise = (async () => {\n try {\n const resolved = await resolver.resolveOperatorKey(\n operatorId,\n params.operatorKey,\n params.keyType,\n );\n currentKeyType = resolved.keyType;\n currentPrivateKey = resolved.privateKey;\n client.setOperator(operatorId.toString(), currentPrivateKey);\n } catch {}\n })();\n\n return {\n client,\n operatorId,\n get operatorKey() {\n return currentPrivateKey;\n },\n get keyType() {\n return currentKeyType;\n },\n ensureInitialized: async () => {\n await initPromise;\n },\n };\n}\n"],"names":[],"mappings":"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"}
|