@hashgraphonline/standards-sdk 0.1.177 → 0.1.179
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/browser/hcs-11/client.d.ts +30 -30
- package/dist/browser/hcs-21/types.d.ts +23 -23
- package/dist/browser/inscribe/inscriber.d.ts.map +1 -1
- package/dist/browser/services/registry-broker/client/base-client.d.ts +30 -1
- package/dist/browser/services/registry-broker/client/base-client.d.ts.map +1 -1
- package/dist/browser/services/registry-broker/client/credits.d.ts +6 -1
- package/dist/browser/services/registry-broker/client/credits.d.ts.map +1 -1
- package/dist/browser/services/registry-broker/client/guard.d.ts +27 -0
- package/dist/browser/services/registry-broker/client/guard.d.ts.map +1 -0
- package/dist/browser/services/registry-broker/client/skills.d.ts.map +1 -1
- package/dist/browser/services/registry-broker/schemas.d.ts +2079 -260
- package/dist/browser/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/browser/services/registry-broker/types.d.ts +89 -1
- package/dist/browser/services/registry-broker/types.d.ts.map +1 -1
- package/dist/browser/standards-sdk.browser.js +351 -6
- package/dist/browser/standards-sdk.browser.js.map +1 -1
- package/dist/browser/utils/dynamic-import.d.ts.map +1 -1
- package/dist/browser-root/hcs-11/client.d.ts +30 -30
- package/dist/browser-root/hcs-21/types.d.ts +23 -23
- package/dist/browser-root/inscribe/inscriber.d.ts.map +1 -1
- package/dist/browser-root/services/registry-broker/client/base-client.d.ts +30 -1
- package/dist/browser-root/services/registry-broker/client/base-client.d.ts.map +1 -1
- package/dist/browser-root/services/registry-broker/client/credits.d.ts +6 -1
- package/dist/browser-root/services/registry-broker/client/credits.d.ts.map +1 -1
- package/dist/browser-root/services/registry-broker/client/guard.d.ts +27 -0
- package/dist/browser-root/services/registry-broker/client/guard.d.ts.map +1 -0
- package/dist/browser-root/services/registry-broker/client/skills.d.ts.map +1 -1
- package/dist/browser-root/services/registry-broker/schemas.d.ts +2079 -260
- package/dist/browser-root/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/browser-root/services/registry-broker/types.d.ts +89 -1
- package/dist/browser-root/services/registry-broker/types.d.ts.map +1 -1
- package/dist/browser-root/standards-sdk.root-browser.js +800 -131
- package/dist/browser-root/standards-sdk.root-browser.js.map +1 -1
- package/dist/browser-root/utils/dynamic-import.d.ts.map +1 -1
- package/dist/cjs/hcs-11/client.d.ts +30 -30
- package/dist/cjs/inscribe/inscriber.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/client/base-client.d.ts +30 -1
- package/dist/cjs/services/registry-broker/client/base-client.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/client/credits.d.ts +6 -1
- package/dist/cjs/services/registry-broker/client/credits.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/client/guard.d.ts +27 -0
- package/dist/cjs/services/registry-broker/client/guard.d.ts.map +1 -0
- package/dist/cjs/services/registry-broker/client/skills.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/schemas.d.ts +1827 -8
- package/dist/cjs/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/cjs/services/registry-broker/types.d.ts +89 -1
- package/dist/cjs/services/registry-broker/types.d.ts.map +1 -1
- package/dist/cjs/standards-sdk.cjs +2 -2
- package/dist/cjs/standards-sdk.cjs.map +1 -1
- package/dist/cjs/utils/dynamic-import.d.ts.map +1 -1
- package/dist/es/hcs-11/client.d.ts +30 -30
- package/dist/es/inscribe/inscriber.d.ts.map +1 -1
- package/dist/es/services/registry-broker/client/base-client.d.ts +30 -1
- package/dist/es/services/registry-broker/client/base-client.d.ts.map +1 -1
- package/dist/es/services/registry-broker/client/credits.d.ts +6 -1
- package/dist/es/services/registry-broker/client/credits.d.ts.map +1 -1
- package/dist/es/services/registry-broker/client/guard.d.ts +27 -0
- package/dist/es/services/registry-broker/client/guard.d.ts.map +1 -0
- package/dist/es/services/registry-broker/client/skills.d.ts.map +1 -1
- package/dist/es/services/registry-broker/schemas.d.ts +1827 -8
- package/dist/es/services/registry-broker/schemas.d.ts.map +1 -1
- package/dist/es/services/registry-broker/types.d.ts +89 -1
- package/dist/es/services/registry-broker/types.d.ts.map +1 -1
- package/dist/es/standards-sdk.es116.js +1 -1
- package/dist/es/standards-sdk.es121.js +1 -1
- package/dist/es/standards-sdk.es127.js +1 -1
- package/dist/es/standards-sdk.es128.js +5 -5
- package/dist/es/standards-sdk.es138.js +1 -1
- package/dist/es/standards-sdk.es139.js +1 -1
- package/dist/es/standards-sdk.es140.js +5 -5
- package/dist/es/standards-sdk.es142.js +9 -6
- package/dist/es/standards-sdk.es142.js.map +1 -1
- package/dist/es/standards-sdk.es143.js +1 -1
- package/dist/es/standards-sdk.es145.js +89 -7
- package/dist/es/standards-sdk.es145.js.map +1 -1
- package/dist/es/standards-sdk.es147.js +2 -2
- package/dist/es/standards-sdk.es148.js +1 -1
- package/dist/es/standards-sdk.es16.js +1 -1
- package/dist/es/standards-sdk.es160.js +2147 -12461
- package/dist/es/standards-sdk.es160.js.map +1 -1
- package/dist/es/standards-sdk.es161.js +12461 -1773
- package/dist/es/standards-sdk.es161.js.map +1 -1
- package/dist/es/standards-sdk.es162.js +670 -15
- package/dist/es/standards-sdk.es162.js.map +1 -1
- package/dist/es/standards-sdk.es163.js +97 -158
- package/dist/es/standards-sdk.es163.js.map +1 -1
- package/dist/es/standards-sdk.es164.js +65 -314
- package/dist/es/standards-sdk.es164.js.map +1 -1
- package/dist/es/standards-sdk.es165.js +120 -294
- package/dist/es/standards-sdk.es165.js.map +1 -1
- package/dist/es/standards-sdk.es166.js +191 -322
- package/dist/es/standards-sdk.es166.js.map +1 -1
- package/dist/es/standards-sdk.es167.js +294 -279
- package/dist/es/standards-sdk.es167.js.map +1 -1
- package/dist/es/standards-sdk.es168.js +440 -63
- package/dist/es/standards-sdk.es168.js.map +1 -1
- package/dist/es/standards-sdk.es169.js +315 -742
- package/dist/es/standards-sdk.es169.js.map +1 -1
- package/dist/es/standards-sdk.es170.js +69 -49
- package/dist/es/standards-sdk.es170.js.map +1 -1
- package/dist/es/standards-sdk.es171.js +47 -95
- package/dist/es/standards-sdk.es171.js.map +1 -1
- package/dist/es/standards-sdk.es174.js +15 -71
- package/dist/es/standards-sdk.es174.js.map +1 -1
- package/dist/es/standards-sdk.es175.js +1 -1
- package/dist/es/standards-sdk.es176.js +2 -2
- package/dist/es/standards-sdk.es178.js +2 -2
- package/dist/es/standards-sdk.es179.js +2 -2
- package/dist/es/standards-sdk.es18.js +2 -2
- package/dist/es/standards-sdk.es180.js +1 -1
- package/dist/es/standards-sdk.es181.js +61 -3
- package/dist/es/standards-sdk.es181.js.map +1 -1
- package/dist/es/standards-sdk.es182.js +284 -167
- package/dist/es/standards-sdk.es182.js.map +1 -1
- package/dist/es/standards-sdk.es183.js +156 -206
- package/dist/es/standards-sdk.es183.js.map +1 -1
- package/dist/es/standards-sdk.es184.js +219 -223
- package/dist/es/standards-sdk.es184.js.map +1 -1
- package/dist/es/standards-sdk.es185.js +242 -0
- package/dist/es/standards-sdk.es185.js.map +1 -0
- package/dist/es/standards-sdk.es19.js +2 -2
- package/dist/es/standards-sdk.es27.js +2 -2
- package/dist/es/standards-sdk.es30.js +1 -1
- package/dist/es/standards-sdk.es31.js +1 -1
- package/dist/es/standards-sdk.es35.js +2 -2
- package/dist/es/standards-sdk.es36.js +1 -1
- package/dist/es/standards-sdk.es37.js +1 -1
- package/dist/es/standards-sdk.es56.js +1 -1
- package/dist/es/standards-sdk.es59.js +1 -1
- package/dist/es/standards-sdk.es60.js +1 -1
- package/dist/es/standards-sdk.es65.js +1 -1
- package/dist/es/standards-sdk.es66.js +1 -1
- package/dist/es/standards-sdk.es67.js +1 -1
- package/dist/es/standards-sdk.es69.js +1 -1
- package/dist/es/standards-sdk.es71.js +1 -1
- package/dist/es/standards-sdk.es72.js +1 -1
- package/dist/es/standards-sdk.es75.js +1 -1
- package/dist/es/standards-sdk.es84.js +1 -1
- package/dist/es/utils/dynamic-import.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,188 +1,305 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { guardSessionResponseSchema, guardBalanceResponseSchema, guardTrustByHashResponseSchema, guardTrustResolveResponseSchema, guardRevocationResponseSchema, guardInventoryResponseSchema, guardReceiptHistoryResponseSchema, guardArtifactTimelineResponseSchema, guardInventoryDiffResponseSchema, guardAbomResponseSchema, guardReceiptExportResponseSchema, guardDeviceListResponseSchema, guardAlertPreferencesSchema, guardExceptionListResponseSchema, guardWatchlistResponseSchema, guardReceiptSyncResponseSchema, guardTeamPolicyPackSchema } from "./standards-sdk.es160.js";
|
|
2
|
+
async function getGuardSession(client) {
|
|
3
|
+
const raw = await client.requestJson("/guard/auth/session", {
|
|
4
|
+
method: "GET"
|
|
5
|
+
});
|
|
6
|
+
return client.parseWithSchema(
|
|
7
|
+
raw,
|
|
8
|
+
guardSessionResponseSchema,
|
|
9
|
+
"guard session response"
|
|
10
|
+
);
|
|
11
|
+
}
|
|
12
|
+
async function getGuardEntitlements(client) {
|
|
13
|
+
const raw = await client.requestJson("/guard/entitlements", {
|
|
14
|
+
method: "GET"
|
|
15
|
+
});
|
|
16
|
+
return client.parseWithSchema(
|
|
17
|
+
raw,
|
|
18
|
+
guardSessionResponseSchema,
|
|
19
|
+
"guard entitlements response"
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
async function getGuardBillingBalance(client) {
|
|
23
|
+
const raw = await client.requestJson("/guard/billing/balance", {
|
|
24
|
+
method: "GET"
|
|
25
|
+
});
|
|
26
|
+
return client.parseWithSchema(
|
|
27
|
+
raw,
|
|
28
|
+
guardBalanceResponseSchema,
|
|
29
|
+
"guard billing balance response"
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
async function getGuardTrustByHash(client, sha256) {
|
|
33
|
+
const normalizedHash = sha256.trim();
|
|
34
|
+
if (!normalizedHash) {
|
|
35
|
+
throw new Error("sha256 is required");
|
|
15
36
|
}
|
|
37
|
+
const raw = await client.requestJson(
|
|
38
|
+
`/guard/trust/by-hash/${encodeURIComponent(normalizedHash)}`,
|
|
39
|
+
{ method: "GET" }
|
|
40
|
+
);
|
|
41
|
+
return client.parseWithSchema(
|
|
42
|
+
raw,
|
|
43
|
+
guardTrustByHashResponseSchema,
|
|
44
|
+
"guard trust by hash response"
|
|
45
|
+
);
|
|
16
46
|
}
|
|
17
|
-
async function
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
throw new Error("Custom ledger signer failed to produce a signature.");
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
47
|
+
async function resolveGuardTrust(client, query) {
|
|
48
|
+
const params = new URLSearchParams();
|
|
49
|
+
if (query.ecosystem?.trim()) {
|
|
50
|
+
params.set("ecosystem", query.ecosystem.trim());
|
|
24
51
|
}
|
|
25
|
-
if (
|
|
26
|
-
|
|
27
|
-
"Ledger authentication requires a Hedera Signer or custom sign function."
|
|
28
|
-
);
|
|
52
|
+
if (query.name?.trim()) {
|
|
53
|
+
params.set("name", query.name.trim());
|
|
29
54
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const signatureEntry = signatures?.[0];
|
|
33
|
-
if (!signatureEntry) {
|
|
34
|
-
throw new Error("Signer did not return any signatures.");
|
|
55
|
+
if (query.version?.trim()) {
|
|
56
|
+
params.set("version", query.version.trim());
|
|
35
57
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
58
|
+
const suffix = params.size > 0 ? `?${params.toString()}` : "";
|
|
59
|
+
const raw = await client.requestJson(
|
|
60
|
+
`/guard/trust/resolve${suffix}`,
|
|
61
|
+
{ method: "GET" }
|
|
62
|
+
);
|
|
63
|
+
return client.parseWithSchema(
|
|
64
|
+
raw,
|
|
65
|
+
guardTrustResolveResponseSchema,
|
|
66
|
+
"guard trust resolve response"
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
async function getGuardRevocations(client) {
|
|
70
|
+
const raw = await client.requestJson("/guard/revocations", {
|
|
71
|
+
method: "GET"
|
|
72
|
+
});
|
|
73
|
+
return client.parseWithSchema(
|
|
74
|
+
raw,
|
|
75
|
+
guardRevocationResponseSchema,
|
|
76
|
+
"guard revocations response"
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
async function getGuardInventory(client) {
|
|
80
|
+
const raw = await client.requestJson("/guard/inventory", {
|
|
81
|
+
method: "GET"
|
|
82
|
+
});
|
|
83
|
+
return client.parseWithSchema(
|
|
84
|
+
raw,
|
|
85
|
+
guardInventoryResponseSchema,
|
|
86
|
+
"guard inventory response"
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
async function getGuardReceiptHistory(client) {
|
|
90
|
+
const raw = await client.requestJson("/guard/history", {
|
|
91
|
+
method: "GET"
|
|
92
|
+
});
|
|
93
|
+
return client.parseWithSchema(
|
|
94
|
+
raw,
|
|
95
|
+
guardReceiptHistoryResponseSchema,
|
|
96
|
+
"guard receipt history response"
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
async function getGuardArtifactTimeline(client, artifactId) {
|
|
100
|
+
const normalizedArtifactId = artifactId.trim();
|
|
101
|
+
if (!normalizedArtifactId) {
|
|
102
|
+
throw new Error("artifactId is required");
|
|
44
103
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
104
|
+
const raw = await client.requestJson(
|
|
105
|
+
`/guard/history/${encodeURIComponent(normalizedArtifactId)}`,
|
|
106
|
+
{ method: "GET" }
|
|
107
|
+
);
|
|
108
|
+
return client.parseWithSchema(
|
|
109
|
+
raw,
|
|
110
|
+
guardArtifactTimelineResponseSchema,
|
|
111
|
+
"guard artifact timeline response"
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
async function exportGuardAbom(client) {
|
|
115
|
+
const raw = await client.requestJson("/guard/abom", {
|
|
116
|
+
method: "GET"
|
|
117
|
+
});
|
|
118
|
+
return client.parseWithSchema(
|
|
119
|
+
raw,
|
|
120
|
+
guardAbomResponseSchema,
|
|
121
|
+
"guard abom response"
|
|
122
|
+
);
|
|
123
|
+
}
|
|
124
|
+
async function exportGuardReceipts(client) {
|
|
125
|
+
const raw = await client.requestJson("/guard/receipts/export", {
|
|
126
|
+
method: "GET"
|
|
127
|
+
});
|
|
128
|
+
return client.parseWithSchema(
|
|
129
|
+
raw,
|
|
130
|
+
guardReceiptExportResponseSchema,
|
|
131
|
+
"guard receipt export response"
|
|
132
|
+
);
|
|
133
|
+
}
|
|
134
|
+
async function getGuardInventoryDiff(client) {
|
|
135
|
+
const raw = await client.requestJson("/guard/inventory/diff", {
|
|
136
|
+
method: "GET"
|
|
137
|
+
});
|
|
138
|
+
return client.parseWithSchema(
|
|
139
|
+
raw,
|
|
140
|
+
guardInventoryDiffResponseSchema,
|
|
141
|
+
"guard inventory diff response"
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
async function getGuardDevices(client) {
|
|
145
|
+
const raw = await client.requestJson("/guard/devices", {
|
|
146
|
+
method: "GET"
|
|
147
|
+
});
|
|
148
|
+
return client.parseWithSchema(
|
|
149
|
+
raw,
|
|
150
|
+
guardDeviceListResponseSchema,
|
|
151
|
+
"guard devices response"
|
|
152
|
+
);
|
|
153
|
+
}
|
|
154
|
+
async function getGuardAlertPreferences(client) {
|
|
155
|
+
const raw = await client.requestJson("/guard/alerts/preferences", {
|
|
156
|
+
method: "GET"
|
|
157
|
+
});
|
|
158
|
+
return client.parseWithSchema(
|
|
159
|
+
raw,
|
|
160
|
+
guardAlertPreferencesSchema,
|
|
161
|
+
"guard alert preferences response"
|
|
162
|
+
);
|
|
163
|
+
}
|
|
164
|
+
async function updateGuardAlertPreferences(client, payload) {
|
|
165
|
+
const raw = await client.requestJson("/guard/alerts/preferences", {
|
|
166
|
+
method: "PUT",
|
|
167
|
+
body: payload
|
|
168
|
+
});
|
|
169
|
+
return client.parseWithSchema(
|
|
170
|
+
raw,
|
|
171
|
+
guardAlertPreferencesSchema,
|
|
172
|
+
"guard alert preferences response"
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
async function getGuardExceptions(client) {
|
|
176
|
+
const raw = await client.requestJson("/guard/exceptions", {
|
|
177
|
+
method: "GET"
|
|
178
|
+
});
|
|
179
|
+
return client.parseWithSchema(
|
|
180
|
+
raw,
|
|
181
|
+
guardExceptionListResponseSchema,
|
|
182
|
+
"guard exceptions response"
|
|
183
|
+
);
|
|
184
|
+
}
|
|
185
|
+
async function getGuardWatchlist(client) {
|
|
186
|
+
const raw = await client.requestJson("/guard/watchlist", {
|
|
187
|
+
method: "GET"
|
|
188
|
+
});
|
|
189
|
+
return client.parseWithSchema(
|
|
190
|
+
raw,
|
|
191
|
+
guardWatchlistResponseSchema,
|
|
192
|
+
"guard watchlist response"
|
|
193
|
+
);
|
|
194
|
+
}
|
|
195
|
+
async function addGuardWatchlistItem(client, payload) {
|
|
196
|
+
const raw = await client.requestJson("/guard/watchlist", {
|
|
55
197
|
method: "POST",
|
|
56
|
-
|
|
57
|
-
body: {
|
|
58
|
-
accountId: payload.accountId,
|
|
59
|
-
network
|
|
60
|
-
}
|
|
198
|
+
body: payload
|
|
61
199
|
});
|
|
62
200
|
return client.parseWithSchema(
|
|
63
201
|
raw,
|
|
64
|
-
|
|
65
|
-
"
|
|
202
|
+
guardWatchlistResponseSchema,
|
|
203
|
+
"guard watchlist response"
|
|
66
204
|
);
|
|
67
205
|
}
|
|
68
|
-
async function
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
challengeId: payload.challengeId,
|
|
73
|
-
accountId: payload.accountId,
|
|
74
|
-
network,
|
|
75
|
-
signature: payload.signature
|
|
76
|
-
};
|
|
77
|
-
if (payload.signatureKind) {
|
|
78
|
-
body.signatureKind = payload.signatureKind;
|
|
206
|
+
async function removeGuardWatchlistItem(client, artifactId) {
|
|
207
|
+
const normalizedArtifactId = artifactId.trim();
|
|
208
|
+
if (!normalizedArtifactId) {
|
|
209
|
+
throw new Error("artifactId is required");
|
|
79
210
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
211
|
+
const raw = await client.requestJson(
|
|
212
|
+
`/guard/watchlist/${encodeURIComponent(normalizedArtifactId)}`,
|
|
213
|
+
{ method: "DELETE" }
|
|
214
|
+
);
|
|
215
|
+
return client.parseWithSchema(
|
|
216
|
+
raw,
|
|
217
|
+
guardWatchlistResponseSchema,
|
|
218
|
+
"guard watchlist response"
|
|
219
|
+
);
|
|
220
|
+
}
|
|
221
|
+
async function addGuardException(client, payload) {
|
|
222
|
+
const raw = await client.requestJson("/guard/exceptions", {
|
|
87
223
|
method: "POST",
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
"ledger verification response"
|
|
95
|
-
);
|
|
96
|
-
client.setLedgerApiKey(result.key);
|
|
97
|
-
return result;
|
|
98
|
-
}
|
|
99
|
-
async function authenticateWithLedger(client, options) {
|
|
100
|
-
const challenge = await client.createLedgerChallenge({
|
|
101
|
-
accountId: options.accountId,
|
|
102
|
-
network: options.network
|
|
103
|
-
});
|
|
104
|
-
const signed = await resolveLedgerAuthSignature(challenge.message, options);
|
|
105
|
-
const verification = await client.verifyLedgerChallenge({
|
|
106
|
-
challengeId: challenge.challengeId,
|
|
107
|
-
accountId: options.accountId,
|
|
108
|
-
network: options.network,
|
|
109
|
-
signature: signed.signature,
|
|
110
|
-
signatureKind: signed.signatureKind,
|
|
111
|
-
publicKey: signed.publicKey,
|
|
112
|
-
expiresInMinutes: options.expiresInMinutes
|
|
113
|
-
});
|
|
114
|
-
return verification;
|
|
115
|
-
}
|
|
116
|
-
async function authenticateWithLedgerCredentials(client, options) {
|
|
117
|
-
const {
|
|
118
|
-
accountId,
|
|
119
|
-
network,
|
|
120
|
-
signer,
|
|
121
|
-
sign,
|
|
122
|
-
hederaPrivateKey,
|
|
123
|
-
evmPrivateKey,
|
|
124
|
-
expiresInMinutes,
|
|
125
|
-
setAccountHeader = true,
|
|
126
|
-
label,
|
|
127
|
-
logger
|
|
128
|
-
} = options;
|
|
129
|
-
const resolvedNetwork = canonicalizeLedgerNetwork(network);
|
|
130
|
-
const labelSuffix = label ? ` for ${label}` : "";
|
|
131
|
-
const networkPayload = resolvedNetwork.canonical;
|
|
132
|
-
const authOptions = {
|
|
133
|
-
accountId,
|
|
134
|
-
network: networkPayload,
|
|
135
|
-
expiresInMinutes
|
|
136
|
-
};
|
|
137
|
-
if (sign) {
|
|
138
|
-
authOptions.sign = sign;
|
|
139
|
-
} else if (signer) {
|
|
140
|
-
authOptions.signer = signer;
|
|
141
|
-
} else if (hederaPrivateKey) {
|
|
142
|
-
if (resolvedNetwork.kind !== "hedera" || !resolvedNetwork.hederaNetwork) {
|
|
143
|
-
throw new Error(
|
|
144
|
-
"hederaPrivateKey can only be used with hedera:mainnet or hedera:testnet networks."
|
|
145
|
-
);
|
|
146
|
-
}
|
|
147
|
-
authOptions.signer = await createPrivateKeySignerAsync({
|
|
148
|
-
accountId,
|
|
149
|
-
privateKey: hederaPrivateKey,
|
|
150
|
-
network: resolvedNetwork.hederaNetwork
|
|
151
|
-
});
|
|
152
|
-
} else if (evmPrivateKey) {
|
|
153
|
-
if (resolvedNetwork.kind !== "evm") {
|
|
154
|
-
throw new Error(
|
|
155
|
-
"evmPrivateKey can only be used with CAIP-2 EVM networks (eip155:<chainId>)."
|
|
156
|
-
);
|
|
157
|
-
}
|
|
158
|
-
const formattedKey = evmPrivateKey.startsWith("0x") ? evmPrivateKey : `0x${evmPrivateKey}`;
|
|
159
|
-
const account = await loadViemAccount(formattedKey);
|
|
160
|
-
authOptions.sign = async (message) => ({
|
|
161
|
-
signature: await account.signMessage({ message }),
|
|
162
|
-
signatureKind: "evm",
|
|
163
|
-
publicKey: account.publicKey
|
|
164
|
-
});
|
|
165
|
-
} else {
|
|
166
|
-
throw new Error(
|
|
167
|
-
"Provide a signer, sign function, hederaPrivateKey, or evmPrivateKey to authenticate with the ledger."
|
|
168
|
-
);
|
|
169
|
-
}
|
|
170
|
-
logger?.info?.(
|
|
171
|
-
`Authenticating ledger account ${accountId} (${resolvedNetwork.canonical})${labelSuffix}...`
|
|
224
|
+
body: payload
|
|
225
|
+
});
|
|
226
|
+
return client.parseWithSchema(
|
|
227
|
+
raw,
|
|
228
|
+
guardExceptionListResponseSchema,
|
|
229
|
+
"guard exceptions response"
|
|
172
230
|
);
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
231
|
+
}
|
|
232
|
+
async function removeGuardException(client, exceptionId) {
|
|
233
|
+
const normalizedExceptionId = exceptionId.trim();
|
|
234
|
+
if (!normalizedExceptionId) {
|
|
235
|
+
throw new Error("exceptionId is required");
|
|
176
236
|
}
|
|
177
|
-
|
|
178
|
-
|
|
237
|
+
const raw = await client.requestJson(
|
|
238
|
+
`/guard/exceptions/${encodeURIComponent(normalizedExceptionId)}`,
|
|
239
|
+
{ method: "DELETE" }
|
|
240
|
+
);
|
|
241
|
+
return client.parseWithSchema(
|
|
242
|
+
raw,
|
|
243
|
+
guardExceptionListResponseSchema,
|
|
244
|
+
"guard exceptions response"
|
|
245
|
+
);
|
|
246
|
+
}
|
|
247
|
+
async function getGuardTeamPolicyPack(client) {
|
|
248
|
+
const raw = await client.requestJson("/guard/team/policy-pack", {
|
|
249
|
+
method: "GET"
|
|
250
|
+
});
|
|
251
|
+
return client.parseWithSchema(
|
|
252
|
+
raw,
|
|
253
|
+
guardTeamPolicyPackSchema,
|
|
254
|
+
"guard team policy pack response"
|
|
255
|
+
);
|
|
256
|
+
}
|
|
257
|
+
async function updateGuardTeamPolicyPack(client, payload) {
|
|
258
|
+
const raw = await client.requestJson("/guard/team/policy-pack", {
|
|
259
|
+
method: "PUT",
|
|
260
|
+
body: payload
|
|
261
|
+
});
|
|
262
|
+
return client.parseWithSchema(
|
|
263
|
+
raw,
|
|
264
|
+
guardTeamPolicyPackSchema,
|
|
265
|
+
"guard team policy pack response"
|
|
266
|
+
);
|
|
267
|
+
}
|
|
268
|
+
async function syncGuardReceipts(client, payload) {
|
|
269
|
+
const raw = await client.requestJson("/guard/receipts/sync", {
|
|
270
|
+
method: "POST",
|
|
271
|
+
body: payload
|
|
272
|
+
});
|
|
273
|
+
return client.parseWithSchema(
|
|
274
|
+
raw,
|
|
275
|
+
guardReceiptSyncResponseSchema,
|
|
276
|
+
"guard receipt sync response"
|
|
179
277
|
);
|
|
180
|
-
return verification;
|
|
181
278
|
}
|
|
182
279
|
export {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
280
|
+
addGuardException,
|
|
281
|
+
addGuardWatchlistItem,
|
|
282
|
+
exportGuardAbom,
|
|
283
|
+
exportGuardReceipts,
|
|
284
|
+
getGuardAlertPreferences,
|
|
285
|
+
getGuardArtifactTimeline,
|
|
286
|
+
getGuardBillingBalance,
|
|
287
|
+
getGuardDevices,
|
|
288
|
+
getGuardEntitlements,
|
|
289
|
+
getGuardExceptions,
|
|
290
|
+
getGuardInventory,
|
|
291
|
+
getGuardInventoryDiff,
|
|
292
|
+
getGuardReceiptHistory,
|
|
293
|
+
getGuardRevocations,
|
|
294
|
+
getGuardSession,
|
|
295
|
+
getGuardTeamPolicyPack,
|
|
296
|
+
getGuardTrustByHash,
|
|
297
|
+
getGuardWatchlist,
|
|
298
|
+
removeGuardException,
|
|
299
|
+
removeGuardWatchlistItem,
|
|
300
|
+
resolveGuardTrust,
|
|
301
|
+
syncGuardReceipts,
|
|
302
|
+
updateGuardAlertPreferences,
|
|
303
|
+
updateGuardTeamPolicyPack
|
|
187
304
|
};
|
|
188
305
|
//# sourceMappingURL=standards-sdk.es182.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standards-sdk.es182.js","sources":["../../src/services/registry-broker/client/ledger-auth.ts"],"sourcesContent":["import { Buffer } from 'buffer';\nimport type { SignerSignature } from '@hashgraph/sdk';\nimport type {\n JsonObject,\n JsonValue,\n LedgerAuthenticationOptions,\n LedgerAuthenticationSignerResult,\n LedgerChallengeRequest,\n LedgerChallengeResponse,\n LedgerCredentialAuthOptions,\n LedgerVerifyRequest,\n LedgerVerifyResponse,\n} from '../types';\nimport {\n ledgerChallengeResponseSchema,\n ledgerVerifyResponseSchema,\n} from '../schemas';\nimport { canonicalizeLedgerNetwork } from '../ledger-network';\nimport { createPrivateKeySignerAsync } from '../private-key-signer';\nimport type { RegistryBrokerClient } from './base-client';\n\nasync function loadViemAccount(privateKey: `0x${string}`): Promise<{\n publicKey: string;\n signMessage: (input: { message: string }) => Promise<string>;\n}> {\n try {\n const viem = await import('viem/accounts');\n return viem.privateKeyToAccount(privateKey);\n } catch (error) {\n const err = new Error(\n 'EVM ledger authentication requires the optional dependency \"viem\". Install it to use evmPrivateKey flows.',\n );\n (err as { cause?: unknown }).cause = error;\n throw err;\n }\n}\n\nasync function resolveLedgerAuthSignature(\n message: string,\n options: LedgerAuthenticationOptions,\n): Promise<LedgerAuthenticationSignerResult> {\n if (typeof options.sign === 'function') {\n const result = await options.sign(message);\n if (\n !result ||\n typeof result.signature !== 'string' ||\n result.signature.length === 0\n ) {\n throw new Error('Custom ledger signer failed to produce a signature.');\n }\n return result;\n }\n\n if (!options.signer || typeof options.signer.sign !== 'function') {\n throw new Error(\n 'Ledger authentication requires a Hedera Signer or custom sign function.',\n );\n }\n\n const payload = Buffer.from(message, 'utf8');\n const signatures: SignerSignature[] = await options.signer.sign([payload]);\n const signatureEntry = signatures?.[0];\n if (!signatureEntry) {\n throw new Error('Signer did not return any signatures.');\n }\n\n let derivedPublicKey: string | undefined;\n if (signatureEntry.publicKey) {\n derivedPublicKey = signatureEntry.publicKey.toString();\n } else if (typeof options.signer.getAccountKey === 'function') {\n const accountKey = await options.signer.getAccountKey();\n if (accountKey && typeof accountKey.toString === 'function') {\n derivedPublicKey = accountKey.toString();\n }\n }\n\n return {\n signature: Buffer.from(signatureEntry.signature).toString('base64'),\n signatureKind: 'raw',\n publicKey: derivedPublicKey,\n };\n}\n\nexport async function createLedgerChallenge(\n client: RegistryBrokerClient,\n payload: LedgerChallengeRequest,\n): Promise<LedgerChallengeResponse> {\n const resolvedNetwork = canonicalizeLedgerNetwork(payload.network);\n const network =\n resolvedNetwork.kind === 'hedera'\n ? (resolvedNetwork.hederaNetwork ?? resolvedNetwork.canonical)\n : resolvedNetwork.canonical;\n const raw = await client.requestJson<JsonValue>('/auth/ledger/challenge', {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body: {\n accountId: payload.accountId,\n network,\n },\n });\n\n return client.parseWithSchema(\n raw,\n ledgerChallengeResponseSchema,\n 'ledger challenge response',\n );\n}\n\nexport async function verifyLedgerChallenge(\n client: RegistryBrokerClient,\n payload: LedgerVerifyRequest,\n): Promise<LedgerVerifyResponse> {\n const resolvedNetwork = canonicalizeLedgerNetwork(payload.network);\n const network =\n resolvedNetwork.kind === 'hedera'\n ? (resolvedNetwork.hederaNetwork ?? resolvedNetwork.canonical)\n : resolvedNetwork.canonical;\n const body: JsonObject = {\n challengeId: payload.challengeId,\n accountId: payload.accountId,\n network,\n signature: payload.signature,\n };\n\n if (payload.signatureKind) {\n body.signatureKind = payload.signatureKind;\n }\n if (payload.publicKey) {\n body.publicKey = payload.publicKey;\n }\n if (typeof payload.expiresInMinutes === 'number') {\n body.expiresInMinutes = payload.expiresInMinutes;\n }\n\n const raw = await client.requestJson<JsonValue>('/auth/ledger/verify', {\n method: 'POST',\n headers: { 'content-type': 'application/json' },\n body,\n });\n\n const result = client.parseWithSchema(\n raw,\n ledgerVerifyResponseSchema,\n 'ledger verification response',\n );\n\n client.setLedgerApiKey(result.key);\n return result;\n}\n\nexport async function authenticateWithLedger(\n client: RegistryBrokerClient,\n options: LedgerAuthenticationOptions,\n): Promise<LedgerVerifyResponse> {\n const challenge = await client.createLedgerChallenge({\n accountId: options.accountId,\n network: options.network,\n });\n const signed = await resolveLedgerAuthSignature(challenge.message, options);\n const verification = await client.verifyLedgerChallenge({\n challengeId: challenge.challengeId,\n accountId: options.accountId,\n network: options.network,\n signature: signed.signature,\n signatureKind: signed.signatureKind,\n publicKey: signed.publicKey,\n expiresInMinutes: options.expiresInMinutes,\n });\n return verification;\n}\n\nexport async function authenticateWithLedgerCredentials(\n client: RegistryBrokerClient,\n options: LedgerCredentialAuthOptions,\n): Promise<LedgerVerifyResponse> {\n const {\n accountId,\n network,\n signer,\n sign,\n hederaPrivateKey,\n evmPrivateKey,\n expiresInMinutes,\n setAccountHeader = true,\n label,\n logger,\n } = options;\n\n const resolvedNetwork = canonicalizeLedgerNetwork(network);\n const labelSuffix = label ? ` for ${label}` : '';\n\n const networkPayload = resolvedNetwork.canonical;\n\n const authOptions: LedgerAuthenticationOptions = {\n accountId,\n network: networkPayload,\n expiresInMinutes,\n };\n\n if (sign) {\n authOptions.sign = sign;\n } else if (signer) {\n authOptions.signer = signer;\n } else if (hederaPrivateKey) {\n if (resolvedNetwork.kind !== 'hedera' || !resolvedNetwork.hederaNetwork) {\n throw new Error(\n 'hederaPrivateKey can only be used with hedera:mainnet or hedera:testnet networks.',\n );\n }\n authOptions.signer = await createPrivateKeySignerAsync({\n accountId,\n privateKey: hederaPrivateKey,\n network: resolvedNetwork.hederaNetwork,\n });\n } else if (evmPrivateKey) {\n if (resolvedNetwork.kind !== 'evm') {\n throw new Error(\n 'evmPrivateKey can only be used with CAIP-2 EVM networks (eip155:<chainId>).',\n );\n }\n const formattedKey = evmPrivateKey.startsWith('0x')\n ? (evmPrivateKey as `0x${string}`)\n : (`0x${evmPrivateKey}` as `0x${string}`);\n const account = await loadViemAccount(formattedKey);\n authOptions.sign = async message => ({\n signature: await account.signMessage({ message }),\n signatureKind: 'evm',\n publicKey: account.publicKey,\n });\n } else {\n throw new Error(\n 'Provide a signer, sign function, hederaPrivateKey, or evmPrivateKey to authenticate with the ledger.',\n );\n }\n\n logger?.info?.(\n `Authenticating ledger account ${accountId} (${resolvedNetwork.canonical})${labelSuffix}...`,\n );\n const verification = await client.authenticateWithLedger(authOptions);\n if (setAccountHeader) {\n client.setDefaultHeader('x-account-id', verification.accountId);\n }\n logger?.info?.(\n `Ledger authentication complete${labelSuffix}. Issued key prefix: ${verification.apiKey.prefix}…${verification.apiKey.lastFour}`,\n );\n return verification;\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standards-sdk.es182.js","sources":["../../src/services/registry-broker/client/guard.ts"],"sourcesContent":["import type {\n GuardAlertPreferences,\n GuardAlertPreferencesUpdate,\n GuardAbomResponse,\n GuardArtifactTimelineResponse,\n GuardBalanceResponse,\n GuardDeviceListResponse,\n GuardExceptionListResponse,\n GuardExceptionUpsert,\n GuardInventoryDiffResponse,\n GuardInventoryResponse,\n GuardReceiptExportResponse,\n GuardReceiptHistoryResponse,\n GuardReceiptSyncPayload,\n GuardReceiptSyncResponse,\n GuardRevocationResponse,\n GuardSessionResponse,\n GuardTeamPolicyPack,\n GuardTeamPolicyPackUpdate,\n GuardTrustByHashResponse,\n GuardTrustResolveQuery,\n GuardTrustResolveResponse,\n GuardWatchlistResponse,\n GuardWatchlistUpsert,\n JsonValue,\n} from '../types';\nimport {\n guardAlertPreferencesSchema,\n guardAbomResponseSchema,\n guardArtifactTimelineResponseSchema,\n guardBalanceResponseSchema,\n guardDeviceListResponseSchema,\n guardExceptionListResponseSchema,\n guardInventoryDiffResponseSchema,\n guardInventoryResponseSchema,\n guardReceiptExportResponseSchema,\n guardReceiptHistoryResponseSchema,\n guardReceiptSyncResponseSchema,\n guardRevocationResponseSchema,\n guardSessionResponseSchema,\n guardTeamPolicyPackSchema,\n guardTrustByHashResponseSchema,\n guardTrustResolveResponseSchema,\n guardWatchlistResponseSchema,\n} from '../schemas';\nimport type { RegistryBrokerClient } from './base-client';\n\nexport async function getGuardSession(\n client: RegistryBrokerClient,\n): Promise<GuardSessionResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/auth/session', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardSessionResponseSchema,\n 'guard session response',\n );\n}\n\nexport async function getGuardEntitlements(\n client: RegistryBrokerClient,\n): Promise<GuardSessionResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/entitlements', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardSessionResponseSchema,\n 'guard entitlements response',\n );\n}\n\nexport async function getGuardBillingBalance(\n client: RegistryBrokerClient,\n): Promise<GuardBalanceResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/billing/balance', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardBalanceResponseSchema,\n 'guard billing balance response',\n );\n}\n\nexport async function getGuardTrustByHash(\n client: RegistryBrokerClient,\n sha256: string,\n): Promise<GuardTrustByHashResponse> {\n const normalizedHash = sha256.trim();\n if (!normalizedHash) {\n throw new Error('sha256 is required');\n }\n const raw = await client.requestJson<JsonValue>(\n `/guard/trust/by-hash/${encodeURIComponent(normalizedHash)}`,\n { method: 'GET' },\n );\n return client.parseWithSchema(\n raw,\n guardTrustByHashResponseSchema,\n 'guard trust by hash response',\n );\n}\n\nexport async function resolveGuardTrust(\n client: RegistryBrokerClient,\n query: GuardTrustResolveQuery,\n): Promise<GuardTrustResolveResponse> {\n const params = new URLSearchParams();\n if (query.ecosystem?.trim()) {\n params.set('ecosystem', query.ecosystem.trim());\n }\n if (query.name?.trim()) {\n params.set('name', query.name.trim());\n }\n if (query.version?.trim()) {\n params.set('version', query.version.trim());\n }\n const suffix = params.size > 0 ? `?${params.toString()}` : '';\n const raw = await client.requestJson<JsonValue>(\n `/guard/trust/resolve${suffix}`,\n { method: 'GET' },\n );\n return client.parseWithSchema(\n raw,\n guardTrustResolveResponseSchema,\n 'guard trust resolve response',\n );\n}\n\nexport async function getGuardRevocations(\n client: RegistryBrokerClient,\n): Promise<GuardRevocationResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/revocations', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardRevocationResponseSchema,\n 'guard revocations response',\n );\n}\n\nexport async function getGuardInventory(\n client: RegistryBrokerClient,\n): Promise<GuardInventoryResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/inventory', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardInventoryResponseSchema,\n 'guard inventory response',\n );\n}\n\nexport async function getGuardReceiptHistory(\n client: RegistryBrokerClient,\n): Promise<GuardReceiptHistoryResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/history', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardReceiptHistoryResponseSchema,\n 'guard receipt history response',\n );\n}\n\nexport async function getGuardArtifactTimeline(\n client: RegistryBrokerClient,\n artifactId: string,\n): Promise<GuardArtifactTimelineResponse> {\n const normalizedArtifactId = artifactId.trim();\n if (!normalizedArtifactId) {\n throw new Error('artifactId is required');\n }\n const raw = await client.requestJson<JsonValue>(\n `/guard/history/${encodeURIComponent(normalizedArtifactId)}`,\n { method: 'GET' },\n );\n return client.parseWithSchema(\n raw,\n guardArtifactTimelineResponseSchema,\n 'guard artifact timeline response',\n );\n}\n\nexport async function exportGuardAbom(\n client: RegistryBrokerClient,\n): Promise<GuardAbomResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/abom', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardAbomResponseSchema,\n 'guard abom response',\n );\n}\n\nexport async function exportGuardReceipts(\n client: RegistryBrokerClient,\n): Promise<GuardReceiptExportResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/receipts/export', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardReceiptExportResponseSchema,\n 'guard receipt export response',\n );\n}\n\nexport async function getGuardInventoryDiff(\n client: RegistryBrokerClient,\n): Promise<GuardInventoryDiffResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/inventory/diff', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardInventoryDiffResponseSchema,\n 'guard inventory diff response',\n );\n}\n\nexport async function getGuardDevices(\n client: RegistryBrokerClient,\n): Promise<GuardDeviceListResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/devices', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardDeviceListResponseSchema,\n 'guard devices response',\n );\n}\n\nexport async function getGuardAlertPreferences(\n client: RegistryBrokerClient,\n): Promise<GuardAlertPreferences> {\n const raw = await client.requestJson<JsonValue>('/guard/alerts/preferences', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardAlertPreferencesSchema,\n 'guard alert preferences response',\n );\n}\n\nexport async function updateGuardAlertPreferences(\n client: RegistryBrokerClient,\n payload: GuardAlertPreferencesUpdate,\n): Promise<GuardAlertPreferences> {\n const raw = await client.requestJson<JsonValue>('/guard/alerts/preferences', {\n method: 'PUT',\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n guardAlertPreferencesSchema,\n 'guard alert preferences response',\n );\n}\n\nexport async function getGuardExceptions(\n client: RegistryBrokerClient,\n): Promise<GuardExceptionListResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/exceptions', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardExceptionListResponseSchema,\n 'guard exceptions response',\n );\n}\n\nexport async function getGuardWatchlist(\n client: RegistryBrokerClient,\n): Promise<GuardWatchlistResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/watchlist', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardWatchlistResponseSchema,\n 'guard watchlist response',\n );\n}\n\nexport async function addGuardWatchlistItem(\n client: RegistryBrokerClient,\n payload: GuardWatchlistUpsert,\n): Promise<GuardWatchlistResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/watchlist', {\n method: 'POST',\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n guardWatchlistResponseSchema,\n 'guard watchlist response',\n );\n}\n\nexport async function removeGuardWatchlistItem(\n client: RegistryBrokerClient,\n artifactId: string,\n): Promise<GuardWatchlistResponse> {\n const normalizedArtifactId = artifactId.trim();\n if (!normalizedArtifactId) {\n throw new Error('artifactId is required');\n }\n const raw = await client.requestJson<JsonValue>(\n `/guard/watchlist/${encodeURIComponent(normalizedArtifactId)}`,\n { method: 'DELETE' },\n );\n return client.parseWithSchema(\n raw,\n guardWatchlistResponseSchema,\n 'guard watchlist response',\n );\n}\n\nexport async function addGuardException(\n client: RegistryBrokerClient,\n payload: GuardExceptionUpsert,\n): Promise<GuardExceptionListResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/exceptions', {\n method: 'POST',\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n guardExceptionListResponseSchema,\n 'guard exceptions response',\n );\n}\n\nexport async function removeGuardException(\n client: RegistryBrokerClient,\n exceptionId: string,\n): Promise<GuardExceptionListResponse> {\n const normalizedExceptionId = exceptionId.trim();\n if (!normalizedExceptionId) {\n throw new Error('exceptionId is required');\n }\n const raw = await client.requestJson<JsonValue>(\n `/guard/exceptions/${encodeURIComponent(normalizedExceptionId)}`,\n { method: 'DELETE' },\n );\n return client.parseWithSchema(\n raw,\n guardExceptionListResponseSchema,\n 'guard exceptions response',\n );\n}\n\nexport async function getGuardTeamPolicyPack(\n client: RegistryBrokerClient,\n): Promise<GuardTeamPolicyPack> {\n const raw = await client.requestJson<JsonValue>('/guard/team/policy-pack', {\n method: 'GET',\n });\n return client.parseWithSchema(\n raw,\n guardTeamPolicyPackSchema,\n 'guard team policy pack response',\n );\n}\n\nexport async function updateGuardTeamPolicyPack(\n client: RegistryBrokerClient,\n payload: GuardTeamPolicyPackUpdate,\n): Promise<GuardTeamPolicyPack> {\n const raw = await client.requestJson<JsonValue>('/guard/team/policy-pack', {\n method: 'PUT',\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n guardTeamPolicyPackSchema,\n 'guard team policy pack response',\n );\n}\n\nexport async function syncGuardReceipts(\n client: RegistryBrokerClient,\n payload: GuardReceiptSyncPayload,\n): Promise<GuardReceiptSyncResponse> {\n const raw = await client.requestJson<JsonValue>('/guard/receipts/sync', {\n method: 'POST',\n body: payload,\n });\n return client.parseWithSchema(\n raw,\n guardReceiptSyncResponseSchema,\n 'guard receipt sync response',\n );\n}\n"],"names":[],"mappings":"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"}
|