pontus-x_cli 1.0.4 → 1.2.5
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 +144 -53
- package/bin/dev.js +5 -5
- package/bin/run.js +4 -5
- package/dist/commands/access.d.ts +1 -1
- package/dist/commands/access.js +3 -3
- package/dist/commands/access.js.map +1 -1
- package/dist/commands/change-price.d.ts +3 -3
- package/dist/commands/change-price.js +12 -11
- package/dist/commands/change-price.js.map +1 -1
- package/dist/commands/check-participant-compliance.d.ts +1 -1
- package/dist/commands/check-participant-compliance.js +13 -11
- package/dist/commands/check-participant-compliance.js.map +1 -1
- package/dist/commands/compute-results.d.ts +1 -1
- package/dist/commands/compute-results.js +7 -7
- package/dist/commands/compute-results.js.map +1 -1
- package/dist/commands/compute-status.d.ts +1 -1
- package/dist/commands/compute-status.js +7 -7
- package/dist/commands/compute-status.js.map +1 -1
- package/dist/commands/compute.d.ts +7 -5
- package/dist/commands/compute.js +136 -36
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/edit-additional-metadata.d.ts +3 -3
- package/dist/commands/edit-additional-metadata.js +18 -11
- package/dist/commands/edit-additional-metadata.js.map +1 -1
- package/dist/commands/edit-algo.d.ts +3 -3
- package/dist/commands/edit-algo.js +22 -13
- package/dist/commands/edit-algo.js.map +1 -1
- package/dist/commands/edit-asset-url.d.ts +3 -3
- package/dist/commands/edit-asset-url.js +12 -11
- package/dist/commands/edit-asset-url.js.map +1 -1
- package/dist/commands/edit-trusted-algos.d.ts +6 -5
- package/dist/commands/edit-trusted-algos.js +136 -21
- package/dist/commands/edit-trusted-algos.js.map +1 -1
- package/dist/commands/edit-trusted-publishers.d.ts +13 -0
- package/dist/commands/edit-trusted-publishers.js +132 -0
- package/dist/commands/edit-trusted-publishers.js.map +1 -0
- package/dist/commands/export-private-key.d.ts +2 -2
- package/dist/commands/export-private-key.js +27 -27
- package/dist/commands/export-private-key.js.map +1 -1
- package/dist/commands/generate-asset-credentials.d.ts +1 -1
- package/dist/commands/generate-asset-credentials.js +11 -11
- package/dist/commands/generate-asset-credentials.js.map +1 -1
- package/dist/commands/generate-did-web.d.ts +1 -1
- package/dist/commands/generate-did-web.js +11 -11
- package/dist/commands/generate-did-web.js.map +1 -1
- package/dist/commands/generate-participant-credentials.d.ts +1 -1
- package/dist/commands/generate-participant-credentials.js +10 -10
- package/dist/commands/generate-participant-credentials.js.map +1 -1
- package/dist/commands/get.d.ts +1 -1
- package/dist/commands/get.js +3 -3
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/login.d.ts +2 -2
- package/dist/commands/login.js +16 -13
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.d.ts +1 -1
- package/dist/commands/logout.js +7 -7
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/publish.d.ts +5 -3
- package/dist/commands/publish.js +111 -43
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/render.d.ts +12 -0
- package/dist/commands/render.js +130 -0
- package/dist/commands/render.js.map +1 -0
- package/dist/commands/revoke.d.ts +7 -6
- package/dist/commands/revoke.js +92 -23
- package/dist/commands/revoke.js.map +1 -1
- package/dist/commands/self-description.d.ts +3 -3
- package/dist/commands/self-description.js +13 -8
- package/dist/commands/self-description.js.map +1 -1
- package/dist/config.d.ts +16 -18
- package/dist/config.js +63 -62
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/aquarius.d.ts +29 -0
- package/dist/lib/aquarius.js +212 -0
- package/dist/lib/aquarius.js.map +1 -0
- package/dist/lib/gaia-x_compliance/generate-credentials/index.js +26 -25
- package/dist/lib/gaia-x_compliance/generate-credentials/index.js.map +1 -1
- package/dist/lib/manifest.d.ts +5 -0
- package/dist/lib/manifest.js +33 -0
- package/dist/lib/manifest.js.map +1 -0
- package/dist/lib/spec.d.ts +12 -0
- package/dist/lib/spec.js +266 -0
- package/dist/lib/spec.js.map +1 -0
- package/dist/lib/wallet.d.ts +2 -0
- package/dist/lib/wallet.js +19 -0
- package/dist/lib/wallet.js.map +1 -0
- package/dist/lib/yaml.d.ts +2 -0
- package/dist/lib/yaml.js +53 -0
- package/dist/lib/yaml.js.map +1 -0
- package/dist/scripts/json-schema.d.ts +1 -0
- package/dist/scripts/json-schema.js +24 -0
- package/dist/scripts/json-schema.js.map +1 -0
- package/dist/types/manifest-schema.json +52 -0
- package/dist/types/manifest.d.ts +17 -0
- package/dist/types/manifest.js +14 -0
- package/dist/types/manifest.js.map +1 -0
- package/dist/types/schema.d.ts +1 -2
- package/dist/types/schema.js +3 -2
- package/dist/types/schema.js.map +1 -1
- package/dist/types/schema.json +24 -72
- package/dist/utils/account.d.ts +2 -0
- package/dist/utils/account.js +41 -0
- package/dist/utils/account.js.map +1 -0
- package/dist/utils/asset.d.ts +25 -0
- package/dist/utils/asset.js +108 -0
- package/dist/utils/asset.js.map +1 -0
- package/dist/utils/connection.d.ts +3 -3
- package/dist/utils/connection.js +2 -2
- package/dist/utils/connection.js.map +1 -1
- package/dist/utils/login.d.ts +14 -0
- package/dist/utils/login.js +99 -0
- package/dist/utils/login.js.map +1 -0
- package/oclif.manifest.json +250 -39
- package/package.json +22 -18
- package/dist/lib/publishFromFile.d.ts +0 -2
- package/dist/lib/publishFromFile.js +0 -143
- package/dist/lib/publishFromFile.js.map +0 -1
package/dist/lib/spec.js
ADDED
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getFilesFromPaths = getFilesFromPaths;
|
|
40
|
+
exports.getEnvironmentConfig = getEnvironmentConfig;
|
|
41
|
+
exports.parseConfig = parseConfig;
|
|
42
|
+
exports.writeConfig = writeConfig;
|
|
43
|
+
exports.publishFromFile = publishFromFile;
|
|
44
|
+
const node_fs_1 = require("node:fs");
|
|
45
|
+
const node_path_1 = __importStar(require("node:path"));
|
|
46
|
+
const nautilus_1 = require("@deltadao/nautilus");
|
|
47
|
+
const ajv_1 = __importDefault(require("ajv"));
|
|
48
|
+
const ethers_1 = require("ethers");
|
|
49
|
+
const yaml_1 = require("yaml");
|
|
50
|
+
const manifest_1 = require("../lib/manifest");
|
|
51
|
+
const wallet_1 = require("../lib/wallet");
|
|
52
|
+
const schema_1 = __importDefault(require("../types/schema"));
|
|
53
|
+
function getFiles(rootPath, preference = ["spec.yaml", "spec.json", "index.ts"]) {
|
|
54
|
+
const specifications = [];
|
|
55
|
+
const walkDir = (dir) => {
|
|
56
|
+
const entries = (0, node_fs_1.readdirSync)(dir, { withFileTypes: true });
|
|
57
|
+
// Find the first preferred file that exists in this directory
|
|
58
|
+
const preferredFile = preference.find((pref) => entries.some((entry) => entry.isFile() && entry.name === pref));
|
|
59
|
+
if (preferredFile) {
|
|
60
|
+
specifications.push((0, node_path_1.join)(dir, preferredFile));
|
|
61
|
+
}
|
|
62
|
+
// Recurse into subdirectories
|
|
63
|
+
for (const entry of entries) {
|
|
64
|
+
if (entry.isDirectory()) {
|
|
65
|
+
walkDir((0, node_path_1.join)(dir, entry.name));
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
walkDir(rootPath);
|
|
70
|
+
return specifications;
|
|
71
|
+
}
|
|
72
|
+
function getFilesFromPaths(paths, preference) {
|
|
73
|
+
return paths.flatMap((path) => getFiles(path, preference));
|
|
74
|
+
}
|
|
75
|
+
async function getEnvironmentConfig(file, config, manifest) {
|
|
76
|
+
const network = config.metadata.network || process.env.NETWORK;
|
|
77
|
+
if (!network) {
|
|
78
|
+
console.error(`No network specified for file ${file}. Please add it to the metadata or set the NETWORK environment variable.`);
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
let privateKey = process.env.PRIVATE_KEY;
|
|
82
|
+
let { owner } = config.metadata;
|
|
83
|
+
if (!privateKey && !owner) {
|
|
84
|
+
console.error(`No owner or private key specified for file ${file}. Please add owner to the metadata or set the PRIVATE_KEY environment variable.`);
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
if (privateKey && !owner) {
|
|
88
|
+
owner = new ethers_1.Wallet(privateKey).address;
|
|
89
|
+
}
|
|
90
|
+
if (owner && !privateKey) {
|
|
91
|
+
const account = (0, manifest_1.getAccountByAddress)(manifest, owner);
|
|
92
|
+
const password = process.env[(account === null || account === void 0 ? void 0 : account.passwordEnvKey) || ""] || "";
|
|
93
|
+
try {
|
|
94
|
+
privateKey = await (0, wallet_1.readPrivateKey)((account === null || account === void 0 ? void 0 : account.privateKeyPath) || "", password);
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
console.error(`Failed to retrieve private key for owner ${owner}:`, error);
|
|
98
|
+
console.error("Password used:", password);
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (!privateKey) {
|
|
103
|
+
console.error(`Unable to retrieve private key for file ${file}. Please check the manifest and environment variables.`);
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
return { network, owner, privateKey };
|
|
107
|
+
}
|
|
108
|
+
function parseConfig(filePath) {
|
|
109
|
+
const raw = (0, node_fs_1.readFileSync)(filePath, "utf8");
|
|
110
|
+
const ext = node_path_1.default.extname(filePath).toLowerCase();
|
|
111
|
+
if (ext === ".json") {
|
|
112
|
+
return JSON.parse(raw);
|
|
113
|
+
}
|
|
114
|
+
if (ext === ".yaml") {
|
|
115
|
+
return (0, yaml_1.parse)(raw);
|
|
116
|
+
}
|
|
117
|
+
throw new Error(`Unsupported file extension: ${ext}`);
|
|
118
|
+
}
|
|
119
|
+
function writeConfig(config, filePath) {
|
|
120
|
+
const ext = node_path_1.default.extname(filePath).toLowerCase();
|
|
121
|
+
let content;
|
|
122
|
+
if (ext === ".json") {
|
|
123
|
+
content = JSON.stringify(config, null, 2);
|
|
124
|
+
}
|
|
125
|
+
else if (ext === ".yaml") {
|
|
126
|
+
content = (0, yaml_1.stringify)(config);
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
throw new Error(`Unsupported file extension: ${ext}`);
|
|
130
|
+
}
|
|
131
|
+
(0, node_fs_1.writeFileSync)(filePath, content, "utf8");
|
|
132
|
+
}
|
|
133
|
+
function getPricing(connection, type, currency, amount) {
|
|
134
|
+
var _a;
|
|
135
|
+
if (type === "free" || !amount) {
|
|
136
|
+
return { type: "free" };
|
|
137
|
+
}
|
|
138
|
+
const pricingMap = {
|
|
139
|
+
EURAU: connection.pricingConfig.fixedRateEURAU,
|
|
140
|
+
EUROe: connection.pricingConfig.fixedRateEUROe,
|
|
141
|
+
OCEAN: connection.pricingConfig.fixedRateOCEAN,
|
|
142
|
+
};
|
|
143
|
+
const pricingFn = (_a = pricingMap[currency]) !== null && _a !== void 0 ? _a : pricingMap.OCEAN;
|
|
144
|
+
return pricingFn(amount);
|
|
145
|
+
}
|
|
146
|
+
async function publishFromFile(filePath, providerUrl, connection, dryRun) {
|
|
147
|
+
const config = parseConfig(filePath);
|
|
148
|
+
const ajv = new ajv_1.default();
|
|
149
|
+
const validate = ajv.compile(schema_1.default);
|
|
150
|
+
const valid = validate(config);
|
|
151
|
+
if (!valid) {
|
|
152
|
+
console.error("❌ Invalid publish config file:");
|
|
153
|
+
console.error(validate.errors);
|
|
154
|
+
throw new Error(`Publish config validation failed for file ${filePath}`);
|
|
155
|
+
}
|
|
156
|
+
const folder = node_path_1.default.dirname(filePath);
|
|
157
|
+
const assetBuilder = new nautilus_1.AssetBuilder()
|
|
158
|
+
.setType(config.metadata.type)
|
|
159
|
+
.setName(config.metadata.name)
|
|
160
|
+
.setOwner(connection.wallet.address)
|
|
161
|
+
.setDescription((0, node_fs_1.readFileSync)(node_path_1.default.resolve(folder, config.metadata.description), "utf8"))
|
|
162
|
+
.setLicense(config.metadata.license)
|
|
163
|
+
.setNftData(config.nftData);
|
|
164
|
+
if (config.metadata.author) {
|
|
165
|
+
assetBuilder.setAuthor(config.metadata.author);
|
|
166
|
+
}
|
|
167
|
+
if (config.metadata.tags) {
|
|
168
|
+
assetBuilder.addTags(config.metadata.tags);
|
|
169
|
+
}
|
|
170
|
+
if (config.metadata.links) {
|
|
171
|
+
assetBuilder.addLinks(config.metadata.links);
|
|
172
|
+
}
|
|
173
|
+
if (config.credentials) {
|
|
174
|
+
if (config.credentials.allow) {
|
|
175
|
+
assetBuilder.addCredentialAddresses(nautilus_1.CredentialListTypes.ALLOW, config.credentials.allow);
|
|
176
|
+
}
|
|
177
|
+
if (config.credentials.deny) {
|
|
178
|
+
assetBuilder.addCredentialAddresses(nautilus_1.CredentialListTypes.DENY, config.credentials.deny);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
if (config.metadata.additionalInformation) {
|
|
182
|
+
assetBuilder.addAdditionalInformation(config.metadata.additionalInformation);
|
|
183
|
+
}
|
|
184
|
+
if (config.metadata.type === "algorithm" && config.metadata.algorithm) {
|
|
185
|
+
const consumerParameters = [];
|
|
186
|
+
for (const param of config.metadata.algorithm.consumerParameters || []) {
|
|
187
|
+
const consumerParameter = new nautilus_1.ConsumerParameterBuilder()
|
|
188
|
+
.setType(param.type)
|
|
189
|
+
.setName(param.name)
|
|
190
|
+
.setLabel(param.label)
|
|
191
|
+
.setDescription(param.description)
|
|
192
|
+
.setRequired(param.required)
|
|
193
|
+
.setDefault(typeof param.default === "object"
|
|
194
|
+
? JSON.stringify(param.default)
|
|
195
|
+
: param.default);
|
|
196
|
+
for (const option of param.options || []) {
|
|
197
|
+
consumerParameter.addOption(option);
|
|
198
|
+
}
|
|
199
|
+
consumerParameters.push(consumerParameter.build());
|
|
200
|
+
}
|
|
201
|
+
const algorithm = {
|
|
202
|
+
container: config.metadata.algorithm.container,
|
|
203
|
+
language: config.metadata.algorithm.language,
|
|
204
|
+
version: config.metadata.algorithm.version,
|
|
205
|
+
};
|
|
206
|
+
assetBuilder.setAlgorithm(consumerParameters.length > 0
|
|
207
|
+
? Object.assign(Object.assign({}, algorithm), { consumerParameters }) : algorithm);
|
|
208
|
+
}
|
|
209
|
+
const serviceBuilder = new nautilus_1.ServiceBuilder({
|
|
210
|
+
fileType: config.service.fileType,
|
|
211
|
+
serviceType: config.service.serviceType,
|
|
212
|
+
});
|
|
213
|
+
for (const file of config.service.files) {
|
|
214
|
+
serviceBuilder.addFile(file);
|
|
215
|
+
}
|
|
216
|
+
for (const param of config.service.consumerParameters || []) {
|
|
217
|
+
// Stringify param.default if it's an object
|
|
218
|
+
const defaultValue = typeof param.default === "object"
|
|
219
|
+
? JSON.stringify(param.default)
|
|
220
|
+
: param.default;
|
|
221
|
+
const consumerParam = new nautilus_1.ConsumerParameterBuilder()
|
|
222
|
+
.setType(param.type)
|
|
223
|
+
.setName(param.name)
|
|
224
|
+
.setLabel(param.label)
|
|
225
|
+
.setDescription(param.description)
|
|
226
|
+
.setRequired(param.required)
|
|
227
|
+
.setDefault(defaultValue)
|
|
228
|
+
.build();
|
|
229
|
+
serviceBuilder.addConsumerParameter(consumerParam);
|
|
230
|
+
}
|
|
231
|
+
if (config.trustedAlgorithms) {
|
|
232
|
+
serviceBuilder.addTrustedAlgorithms(config.trustedAlgorithms);
|
|
233
|
+
}
|
|
234
|
+
for (const trustedAlgorithmPublisher of config.trustedAlgorithmPublishers ||
|
|
235
|
+
[]) {
|
|
236
|
+
serviceBuilder.addTrustedAlgorithmPublisher(trustedAlgorithmPublisher);
|
|
237
|
+
}
|
|
238
|
+
if (config.trustOwnerAlgorithms) {
|
|
239
|
+
serviceBuilder.addTrustedAlgorithmPublisher(connection.wallet.address);
|
|
240
|
+
}
|
|
241
|
+
if (config.allowAlgorithmNetworkAccess !== undefined) {
|
|
242
|
+
serviceBuilder.allowAlgorithmNetworkAccess(config.allowAlgorithmNetworkAccess);
|
|
243
|
+
}
|
|
244
|
+
serviceBuilder
|
|
245
|
+
.setServiceEndpoint(providerUrl)
|
|
246
|
+
.setTimeout(config.service.timeout)
|
|
247
|
+
.setDatatokenNameAndSymbol(config.service.datatoken.name, config.service.datatoken.symbol)
|
|
248
|
+
.setPricing(getPricing(connection, config.service.pricing.type, config.service.pricing.currency, config.service.pricing.amount));
|
|
249
|
+
const service = serviceBuilder.build();
|
|
250
|
+
assetBuilder.addService(service);
|
|
251
|
+
const asset = assetBuilder.build();
|
|
252
|
+
console.log(`\n✅ Asset metadata:\n${JSON.stringify(asset, null, 2)}\n`);
|
|
253
|
+
if (dryRun) {
|
|
254
|
+
console.log("⚠️ Dry run enabled. Asset not published.\n");
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
console.log(`🚀 Publishing asset...`);
|
|
258
|
+
const result = await connection.nautilus.publish(asset);
|
|
259
|
+
console.log([
|
|
260
|
+
"✅ Asset published.",
|
|
261
|
+
`🔗 Transaction: ${connection.networkConfig.explorerUri}/tx/${result.setMetadataTxReceipt.transactionHash}`,
|
|
262
|
+
`🌐 Asset: https://portal.agrospai.udl.cat/asset/${result.ddo.id}`,
|
|
263
|
+
].join("\n"));
|
|
264
|
+
return asset.ddo.id;
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../src/lib/spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.readPrivateKey = readPrivateKey;
|
|
7
|
+
exports.getOwnerAddress = getOwnerAddress;
|
|
8
|
+
const node_fs_1 = require("node:fs");
|
|
9
|
+
const ethereumjs_wallet_1 = __importDefault(require("ethereumjs-wallet"));
|
|
10
|
+
async function readPrivateKey(privateKeyPath, password = "") {
|
|
11
|
+
const keyStore = JSON.parse((0, node_fs_1.readFileSync)(privateKeyPath, "utf8"));
|
|
12
|
+
const wallet = await ethereumjs_wallet_1.default.fromV3(keyStore, password);
|
|
13
|
+
return wallet.getPrivateKeyString();
|
|
14
|
+
}
|
|
15
|
+
async function getOwnerAddress(privateKey) {
|
|
16
|
+
const wallet = ethereumjs_wallet_1.default.fromPrivateKey(Buffer.from(privateKey.replace(/^0x/, ""), "hex"));
|
|
17
|
+
return wallet.getAddressString();
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=wallet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/lib/wallet.ts"],"names":[],"mappings":";;;;;AAGA,wCAOC;AAED,0CAKC;AAjBD,qCAAuC;AACvC,0EAAuC;AAEhC,KAAK,UAAU,cAAc,CAClC,cAAsB,EACtB,WAAmB,EAAE;IAErB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,MAAM,2BAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACvD,OAAO,MAAM,CAAC,mBAAmB,EAAE,CAAC;AACtC,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,UAAkB;IACtD,MAAM,MAAM,GAAG,2BAAM,CAAC,cAAc,CAClC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAClD,CAAC;IACF,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC;AACnC,CAAC"}
|
package/dist/lib/yaml.js
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.setKeyInYaml = setKeyInYaml;
|
|
7
|
+
exports.deleteKeyFromYaml = deleteKeyFromYaml;
|
|
8
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
9
|
+
const yaml_1 = __importDefault(require("yaml"));
|
|
10
|
+
function getPathSegments(key) {
|
|
11
|
+
return key.split(".").filter(Boolean);
|
|
12
|
+
}
|
|
13
|
+
function setKeyInYaml(filePath, key = "metadata.did", value) {
|
|
14
|
+
var _a;
|
|
15
|
+
const source = node_fs_1.default.readFileSync(filePath, "utf8");
|
|
16
|
+
const doc = yaml_1.default.parseDocument(source);
|
|
17
|
+
const segments = getPathSegments(key);
|
|
18
|
+
let current = doc;
|
|
19
|
+
for (let i = 0; i < segments.length; i++) {
|
|
20
|
+
const segment = segments[i];
|
|
21
|
+
const isLast = i === segments.length - 1;
|
|
22
|
+
let next = (_a = current.get) === null || _a === void 0 ? void 0 : _a.call(current, segment, true);
|
|
23
|
+
if (isLast) {
|
|
24
|
+
// Create or update (UPSERT)
|
|
25
|
+
current.set(segment, value);
|
|
26
|
+
break;
|
|
27
|
+
}
|
|
28
|
+
if (!next || !yaml_1.default.isMap(next)) {
|
|
29
|
+
next = doc.createNode({});
|
|
30
|
+
current.set(segment, next);
|
|
31
|
+
}
|
|
32
|
+
current = next;
|
|
33
|
+
}
|
|
34
|
+
node_fs_1.default.writeFileSync(filePath, doc.toString());
|
|
35
|
+
}
|
|
36
|
+
function deleteKeyFromYaml(filePath, key = "metadata.did") {
|
|
37
|
+
var _a, _b;
|
|
38
|
+
const source = node_fs_1.default.readFileSync(filePath, "utf8");
|
|
39
|
+
const doc = yaml_1.default.parseDocument(source);
|
|
40
|
+
const segments = getPathSegments(key);
|
|
41
|
+
let current = doc;
|
|
42
|
+
for (let i = 0; i < segments.length - 1; i++) {
|
|
43
|
+
current = (_a = current.get) === null || _a === void 0 ? void 0 : _a.call(current, segments[i], true);
|
|
44
|
+
if (!current || !yaml_1.default.isMap(current)) {
|
|
45
|
+
// Path does not exist → nothing to delete
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const lastSegment = segments.at(-1);
|
|
50
|
+
(_b = current.delete) === null || _b === void 0 ? void 0 : _b.call(current, lastSegment);
|
|
51
|
+
node_fs_1.default.writeFileSync(filePath, doc.toString());
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=yaml.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../src/lib/yaml.ts"],"names":[],"mappings":";;;;;AAOA,oCAiCC;AAED,8CAwBC;AAlED,sDAAyB;AACzB,gDAAwB;AAExB,SAAS,eAAe,CAAC,GAAW;IAClC,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AAED,SAAgB,YAAY,CAC1B,QAAgB,EAChB,MAAc,cAAc,EAC5B,KAAc;;IAEd,MAAM,MAAM,GAAG,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,cAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEtC,IAAI,OAAO,GAAQ,GAAG,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzC,IAAI,IAAI,GAAG,MAAA,OAAO,CAAC,GAAG,wDAAG,OAAO,EAAE,IAAI,CAAC,CAAC;QAExC,IAAI,MAAM,EAAE,CAAC;YACX,4BAA4B;YAC5B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5B,MAAM;QACR,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,iBAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAgB,iBAAiB,CAC/B,QAAgB,EAChB,MAAc,cAAc;;IAE5B,MAAM,MAAM,GAAG,iBAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,cAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEtC,IAAI,OAAO,GAAQ,GAAG,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,OAAO,GAAG,MAAA,OAAO,CAAC,GAAG,wDAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,IAAI,CAAC,cAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,0CAA0C;YAC1C,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,MAAA,OAAO,CAAC,MAAM,wDAAG,WAAW,CAAC,CAAC;IAE9B,iBAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function generateManifestJsonSchema(): void;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.generateManifestJsonSchema = generateManifestJsonSchema;
|
|
7
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
|
+
const manifest_1 = require("../types/manifest");
|
|
9
|
+
function generateManifestJsonSchema() {
|
|
10
|
+
console.log("Generating manifest JSON schema...");
|
|
11
|
+
const jsonSchema = manifest_1.manifestSchema.toJSONSchema();
|
|
12
|
+
const path = "src/types/manifest-schema.json";
|
|
13
|
+
node_fs_1.default.writeFileSync(path, JSON.stringify(jsonSchema, null, 2));
|
|
14
|
+
}
|
|
15
|
+
if (typeof require !== "undefined" && require.main === module) {
|
|
16
|
+
const cmd = process.argv[2];
|
|
17
|
+
if (cmd === "generateManifestJsonSchema") {
|
|
18
|
+
generateManifestJsonSchema();
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
console.error("Usage: npx ts-node src/scripts/json-schema.ts <command>");
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=json-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../src/scripts/json-schema.ts"],"names":[],"mappings":";;;;;AAIA,gEAKC;AATD,sDAAyB;AAEzB,gDAAmD;AAEnD,SAAgB,0BAA0B;IACxC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,yBAAc,CAAC,YAAY,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,gCAAgC,CAAC;IAC9C,iBAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,GAAG,KAAK,4BAA4B,EAAE,CAAC;QACzC,0BAA0B,EAAE,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"properties": {
|
|
5
|
+
"accounts": {
|
|
6
|
+
"type": "array",
|
|
7
|
+
"items": {
|
|
8
|
+
"type": "object",
|
|
9
|
+
"properties": {
|
|
10
|
+
"name": {
|
|
11
|
+
"type": "string"
|
|
12
|
+
},
|
|
13
|
+
"address": {
|
|
14
|
+
"type": "string"
|
|
15
|
+
},
|
|
16
|
+
"privateKeyPath": {
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"passwordEnvKey": {
|
|
20
|
+
"type": "string"
|
|
21
|
+
},
|
|
22
|
+
"assets": {
|
|
23
|
+
"type": "array",
|
|
24
|
+
"items": {
|
|
25
|
+
"type": "object",
|
|
26
|
+
"properties": {
|
|
27
|
+
"name": {
|
|
28
|
+
"type": "string"
|
|
29
|
+
},
|
|
30
|
+
"key": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
},
|
|
33
|
+
"spec": {
|
|
34
|
+
"type": "string"
|
|
35
|
+
},
|
|
36
|
+
"did": {
|
|
37
|
+
"type": "string"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"required": ["spec"],
|
|
41
|
+
"additionalProperties": false
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"required": ["address", "privateKeyPath", "passwordEnvKey", "assets"],
|
|
46
|
+
"additionalProperties": false
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"required": ["accounts"],
|
|
51
|
+
"additionalProperties": false
|
|
52
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const accountSchema: z.ZodObject<{
|
|
3
|
+
address: z.ZodString;
|
|
4
|
+
name: z.ZodOptional<z.ZodString>;
|
|
5
|
+
passwordEnvKey: z.ZodString;
|
|
6
|
+
privateKeyPath: z.ZodString;
|
|
7
|
+
}, z.core.$strip>;
|
|
8
|
+
export declare const manifestSchema: z.ZodObject<{
|
|
9
|
+
accounts: z.ZodArray<z.ZodObject<{
|
|
10
|
+
address: z.ZodString;
|
|
11
|
+
name: z.ZodOptional<z.ZodString>;
|
|
12
|
+
passwordEnvKey: z.ZodString;
|
|
13
|
+
privateKeyPath: z.ZodString;
|
|
14
|
+
}, z.core.$strip>>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export type Account = z.infer<typeof accountSchema>;
|
|
17
|
+
export type Manifest = z.infer<typeof manifestSchema>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.manifestSchema = exports.accountSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
exports.accountSchema = zod_1.z.object({
|
|
6
|
+
address: zod_1.z.string(),
|
|
7
|
+
name: zod_1.z.string().optional(),
|
|
8
|
+
passwordEnvKey: zod_1.z.string(),
|
|
9
|
+
privateKeyPath: zod_1.z.string(),
|
|
10
|
+
});
|
|
11
|
+
exports.manifestSchema = zod_1.z.object({
|
|
12
|
+
accounts: zod_1.z.array(exports.accountSchema),
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/types/manifest.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAEX,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE;IAC1B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE;CAC3B,CAAC,CAAC;AAEU,QAAA,cAAc,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,qBAAa,CAAC;CACjC,CAAC,CAAC"}
|
package/dist/types/schema.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export default schema;
|
|
1
|
+
export { default } from "./schema.json";
|
package/dist/types/schema.js
CHANGED
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var schema_json_1 = require("./schema.json");
|
|
8
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(schema_json_1).default; } });
|
|
8
9
|
//# sourceMappingURL=schema.js.map
|
package/dist/types/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAwC;AAA/B,uHAAA,OAAO,OAAA"}
|