agenticpool 1.0.18 → 2.0.0
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 +68 -118
- package/bin/agenticpool.js +6 -0
- package/dist/adapters/autogen.d.ts +33 -0
- package/dist/adapters/autogen.d.ts.map +1 -0
- package/dist/adapters/autogen.js +49 -0
- package/dist/adapters/autogen.js.map +1 -0
- package/dist/adapters/crewai.d.ts +30 -0
- package/dist/adapters/crewai.d.ts.map +1 -0
- package/dist/adapters/crewai.js +48 -0
- package/dist/adapters/crewai.js.map +1 -0
- package/dist/adapters/langchain.d.ts +30 -0
- package/dist/adapters/langchain.d.ts.map +1 -0
- package/dist/adapters/langchain.js +53 -0
- package/dist/adapters/langchain.js.map +1 -0
- package/dist/adapters/llamaindex.d.ts +29 -0
- package/dist/adapters/llamaindex.d.ts.map +1 -0
- package/dist/adapters/llamaindex.js +47 -0
- package/dist/adapters/llamaindex.js.map +1 -0
- package/dist/adapters/openai.d.ts +21 -0
- package/dist/adapters/openai.d.ts.map +1 -0
- package/dist/adapters/openai.js +51 -0
- package/dist/adapters/openai.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +187 -0
- package/dist/cli.js.map +1 -0
- package/dist/client.d.ts +115 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +251 -0
- package/dist/client.js.map +1 -0
- package/dist/commands/balance.d.ts +4 -0
- package/dist/commands/balance.d.ts.map +1 -0
- package/dist/commands/balance.js +34 -0
- package/dist/commands/balance.js.map +1 -0
- package/dist/commands/contract.d.ts +20 -0
- package/dist/commands/contract.d.ts.map +1 -0
- package/dist/commands/contract.js +188 -0
- package/dist/commands/contract.js.map +1 -0
- package/dist/commands/favor.d.ts +21 -0
- package/dist/commands/favor.d.ts.map +1 -0
- package/dist/commands/favor.js +144 -0
- package/dist/commands/favor.js.map +1 -0
- package/dist/commands/init.d.ts +5 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +77 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/reputation.d.ts +2 -0
- package/dist/commands/reputation.d.ts.map +1 -0
- package/dist/commands/reputation.js +38 -0
- package/dist/commands/reputation.js.map +1 -0
- package/dist/commands/serve.d.ts +7 -0
- package/dist/commands/serve.d.ts.map +1 -0
- package/dist/commands/serve.js +110 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/services.d.ts +16 -0
- package/dist/commands/services.d.ts.map +1 -0
- package/dist/commands/services.js +93 -0
- package/dist/commands/services.js.map +1 -0
- package/dist/commands/trust.d.ts +2 -0
- package/dist/commands/trust.d.ts.map +1 -0
- package/dist/commands/trust.js +44 -0
- package/dist/commands/trust.js.map +1 -0
- package/dist/commands/whoami.d.ts +2 -0
- package/dist/commands/whoami.d.ts.map +1 -0
- package/dist/commands/whoami.js +32 -0
- package/dist/commands/whoami.js.map +1 -0
- package/dist/config.d.ts +30 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +72 -0
- package/dist/config.js.map +1 -0
- package/dist/economy/duckies.d.ts +75 -0
- package/dist/economy/duckies.d.ts.map +1 -0
- package/dist/economy/duckies.js +386 -0
- package/dist/economy/duckies.js.map +1 -0
- package/dist/index.d.ts +12 -2
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -29
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +90 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/package.json +28 -38
- package/LICENSE +0 -1
- package/dist/api/ApiClient.d.ts +0 -37
- package/dist/api/ApiClient.js +0 -160
- package/dist/api/index.d.ts +0 -1
- package/dist/api/index.js +0 -6
- package/dist/auth/AuthHelper.d.ts +0 -17
- package/dist/auth/AuthHelper.js +0 -197
- package/dist/commands/auth.d.ts +0 -2
- package/dist/commands/auth.js +0 -206
- package/dist/commands/config.d.ts +0 -2
- package/dist/commands/config.js +0 -51
- package/dist/commands/connections.d.ts +0 -2
- package/dist/commands/connections.js +0 -244
- package/dist/commands/contacts.d.ts +0 -2
- package/dist/commands/contacts.js +0 -205
- package/dist/commands/conversations.d.ts +0 -2
- package/dist/commands/conversations.js +0 -251
- package/dist/commands/errors.d.ts +0 -2
- package/dist/commands/errors.js +0 -73
- package/dist/commands/humans.d.ts +0 -2
- package/dist/commands/humans.js +0 -161
- package/dist/commands/identities.d.ts +0 -2
- package/dist/commands/identities.js +0 -141
- package/dist/commands/index.d.ts +0 -11
- package/dist/commands/index.js +0 -26
- package/dist/commands/messages.d.ts +0 -2
- package/dist/commands/messages.js +0 -154
- package/dist/commands/networks.d.ts +0 -2
- package/dist/commands/networks.js +0 -430
- package/dist/commands/profile.d.ts +0 -2
- package/dist/commands/profile.js +0 -225
- package/dist/config/ConfigManager.d.ts +0 -47
- package/dist/config/ConfigManager.js +0 -234
- package/dist/config/index.d.ts +0 -1
- package/dist/config/index.js +0 -7
- package/dist/datamodel/index.d.ts +0 -3
- package/dist/datamodel/index.js +0 -20
- package/dist/datamodel/models/humans.d.ts +0 -81
- package/dist/datamodel/models/humans.js +0 -3
- package/dist/datamodel/models/index.d.ts +0 -110
- package/dist/datamodel/models/index.js +0 -3
- package/dist/datamodel/toon/index.d.ts +0 -5
- package/dist/datamodel/toon/index.js +0 -211
- package/dist/limits/LimitsManager.d.ts +0 -23
- package/dist/limits/LimitsManager.js +0 -99
- package/dist/utils/colors.d.ts +0 -16
- package/dist/utils/colors.js +0 -23
- package/dist/utils/logger.d.ts +0 -11
- package/dist/utils/logger.js +0 -34
package/dist/commands/errors.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
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.registerErrorCommands = registerErrorCommands;
|
|
7
|
-
const AuthHelper_1 = require("../auth/AuthHelper");
|
|
8
|
-
const datamodel_1 = require("../datamodel");
|
|
9
|
-
const logger_1 = require("../utils/logger");
|
|
10
|
-
const colors_1 = __importDefault(require("../utils/colors"));
|
|
11
|
-
const cli_table3_1 = __importDefault(require("cli-table3"));
|
|
12
|
-
function registerErrorCommands(program) {
|
|
13
|
-
const errors = program.command('errors').description('Error report management');
|
|
14
|
-
errors
|
|
15
|
-
.command('list')
|
|
16
|
-
.description('List your recent error reports')
|
|
17
|
-
.option('-l, --limit <number>', 'Number of errors to show', '10')
|
|
18
|
-
.option('--format <format>', 'Output format: toon, json, human', 'human')
|
|
19
|
-
.option('--human', 'Shortcut for --format human')
|
|
20
|
-
.action(async (options) => {
|
|
21
|
-
try {
|
|
22
|
-
const format = options.human ? 'human' : options.format;
|
|
23
|
-
const client = await AuthHelper_1.AuthHelper.getApiClient();
|
|
24
|
-
client.setFormat('json');
|
|
25
|
-
const response = await client.get('/v1/errors', { limit: options.limit });
|
|
26
|
-
if (response.success && response.data) {
|
|
27
|
-
if (format === 'json') {
|
|
28
|
-
console.log(JSON.stringify(response.data, null, 2));
|
|
29
|
-
}
|
|
30
|
-
else if (format === 'human') {
|
|
31
|
-
if (response.data.length === 0) {
|
|
32
|
-
logger_1.logger.success('No errors found.');
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
const table = new cli_table3_1.default({
|
|
36
|
-
head: [colors_1.default.cyan('ID'), colors_1.default.cyan('Command'), colors_1.default.cyan('Error'), colors_1.default.cyan('Agent'), colors_1.default.cyan('Time')],
|
|
37
|
-
colWidths: [12, 30, 30, 15, 20],
|
|
38
|
-
wordWrap: true
|
|
39
|
-
});
|
|
40
|
-
response.data.forEach((err) => {
|
|
41
|
-
const cmd = (err.command || '').length > 28 ? err.command.substring(0, 28) + '...' : (err.command || '');
|
|
42
|
-
const msg = (err.errorMessage || '').length > 28 ? err.errorMessage.substring(0, 28) + '...' : (err.errorMessage || '');
|
|
43
|
-
const agent = err.agentModel || err.agentName || '-';
|
|
44
|
-
let time = '-';
|
|
45
|
-
if (err.timestamp) {
|
|
46
|
-
const ts = err.timestamp._seconds ? new Date(err.timestamp._seconds * 1000) : new Date(err.timestamp);
|
|
47
|
-
time = ts.toLocaleString();
|
|
48
|
-
}
|
|
49
|
-
table.push([
|
|
50
|
-
(err.id || '-').substring(0, 8),
|
|
51
|
-
cmd,
|
|
52
|
-
msg,
|
|
53
|
-
agent,
|
|
54
|
-
time
|
|
55
|
-
]);
|
|
56
|
-
});
|
|
57
|
-
console.log(table.toString());
|
|
58
|
-
console.log(colors_1.default.gray(`\nShowing ${response.data.length} errors`));
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
console.log((0, datamodel_1.encode)(response.data));
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
logger_1.logger.error('Error:', response.error?.message || 'Failed to list errors');
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
catch (error) {
|
|
69
|
-
logger_1.logger.error('Error:', error instanceof Error ? error.message : 'Unknown error');
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQU9BLHNEQThEQztBQXBFRCxtREFBZ0Q7QUFDaEQsNENBQXNDO0FBQ3RDLDRDQUF5QztBQUN6Qyw2REFBb0M7QUFDcEMsNERBQStCO0FBRS9CLFNBQWdCLHFCQUFxQixDQUFDLE9BQWdCO0lBQ3BELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFFaEYsTUFBTTtTQUNILE9BQU8sQ0FBQyxNQUFNLENBQUM7U0FDZixXQUFXLENBQUMsZ0NBQWdDLENBQUM7U0FDN0MsTUFBTSxDQUFDLHNCQUFzQixFQUFFLDBCQUEwQixFQUFFLElBQUksQ0FBQztTQUNoRSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsa0NBQWtDLEVBQUUsT0FBTyxDQUFDO1NBQ3hFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsNkJBQTZCLENBQUM7U0FDaEQsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFZLEVBQUUsRUFBRTtRQUM3QixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDeEQsTUFBTSxNQUFNLEdBQUcsTUFBTSx1QkFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQy9DLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFekIsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFRLFlBQVksRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUVqRixJQUFJLFFBQVEsQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLElBQUksRUFB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LElBQUksQ0FBQyxNQUFNLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RFLENBQUM7cUJBQU0sQ0FBQztvQkFDTixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUEsa0JBQU0sRUFBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDckMsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixlQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFFLE9BQU8sSUFBSSx1QkFBdUIsQ0FBQyxDQUFDO1lBQzdFLENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGVBQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ25GLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnY29tbWFuZGVyJztcbmltcG9ydCB7IEF1dGhIZWxwZXIgfSBmcm9tICcuLi9hdXRoL0F1dGhIZWxwZXInO1xuaW1wb3J0IHsgZW5jb2RlIH0gZnJvbSAnLi4vZGF0YW1vZGVsJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJy4uL3V0aWxzL2xvZ2dlcic7XG5pbXBvcnQgY2hhbGsgZnJvbSAnLi4vdXRpbHMvY29sb3JzJztcbmltcG9ydCBUYWJsZSBmcm9tICdjbGktdGFibGUzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyRXJyb3JDb21tYW5kcyhwcm9ncmFtOiBDb21tYW5kKTogdm9pZCB7XG4gIGNvbnN0IGVycm9ycyA9IHByb2dyYW0uY29tbWFuZCgnZXJyb3JzJykuZGVzY3JpcHRpb24oJ0Vycm9yIHJlcG9ydCBtYW5hZ2VtZW50Jyk7XG5cbiAgZXJyb3JzXG4gICAgLmNvbW1hbmQoJ2xpc3QnKVxuICAgIC5kZXNjcmlwdGlvbignTGlzdCB5b3VyIHJlY2VudCBlcnJvciByZXBvcnRzJylcbiAgICAub3B0aW9uKCctbCwgLS1saW1pdCA8bnVtYmVyPicsICdOdW1iZXIgb2YgZXJyb3JzIHRvIHNob3cnLCAnMTAnKVxuICAgIC5vcHRpb24oJy0tZm9ybWF0IDxmb3JtYXQ+JywgJ091dHB1dCBmb3JtYXQ6IHRvb24sIGpzb24sIGh1bWFuJywgJ2h1bWFuJylcbiAgICAub3B0aW9uKCctLWh1bWFuJywgJ1Nob3J0Y3V0IGZvciAtLWZvcm1hdCBodW1hbicpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBmb3JtYXQgPSBvcHRpb25zLmh1bWFuID8gJ2h1bWFuJyA6IG9wdGlvbnMuZm9ybWF0O1xuICAgICAgICBjb25zdCBjbGllbnQgPSBhd2FpdCBBdXRoSGVscGVyLmdldEFwaUNsaWVudCgpO1xuICAgICAgICBjbGllbnQuc2V0Rm9ybWF0KCdqc29uJyk7XG5cbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZ2V0PGFueVtdPignL3YxL2Vycm9ycycsIHsgbGltaXQ6IG9wdGlvbnMubGltaXQgfSk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MgJiYgcmVzcG9uc2UuZGF0YSkge1xuICAgICAgICAgIGlmIChmb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UuZGF0YSwgbnVsbCwgMikpO1xuICAgICAgICAgIH0gZWxzZSBpZiAoZm9ybWF0ID09PSAnaHVtYW4nKSB7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2UuZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgbG9nZ2VyLnN1Y2Nlc3MoJ05vIGVycm9ycyBmb3VuZC4nKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCB0YWJsZSA9IG5ldyBUYWJsZSh7XG4gICAgICAgICAgICAgIGhlYWQ6IFtjaGFsay5jeWFuKCdJRCcpLCBjaGFsay5jeWFuKCdDb21tYW5kJyksIGNoYWxrLmN5YW4oJ0Vycm9yJyksIGNoYWxrLmN5YW4oJ0FnZW50JyksIGNoYWxrLmN5YW4oJ1RpbWUnKV0sXG4gICAgICAgICAgICAgIGNvbFdpZHRoczogWzEyLCAzMCwgMzAsIDE1LCAyMF0sXG4gICAgICAgICAgICAgIHdvcmRXcmFwOiB0cnVlXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmVzcG9uc2UuZGF0YS5mb3JFYWNoKChlcnI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBjbWQgPSAoZXJyLmNvbW1hbmQgfHwgJycpLmxlbmd0aCA+IDI4ID8gZXJyLmNvbW1hbmQuc3Vic3RyaW5nKDAsIDI4KSArICcuLi4nIDogKGVyci5jb21tYW5kIHx8ICcnKTtcbiAgICAgICAgICAgICAgY29uc3QgbXNnID0gKGVyci5lcnJvck1lc3NhZ2UgfHwgJycpLmxlbmd0aCA+IDI4ID8gZXJyLmVycm9yTWVzc2FnZS5zdWJzdHJpbmcoMCwgMjgpICsgJy4uLicgOiAoZXJyLmVycm9yTWVzc2FnZSB8fCAnJyk7XG4gICAgICAgICAgICAgIGNvbnN0IGFnZW50ID0gZXJyLmFnZW50TW9kZWwgfHwgZXJyLmFnZW50TmFtZSB8fCAnLSc7XG4gICAgICAgICAgICAgIGxldCB0aW1lID0gJy0nO1xuICAgICAgICAgICAgICBpZiAoZXJyLnRpbWVzdGFtcCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRzID0gZXJyLnRpbWVzdGFtcC5fc2Vjb25kcyA/IG5ldyBEYXRlKGVyci50aW1lc3RhbXAuX3NlY29uZHMgKiAxMDAwKSA6IG5ldyBEYXRlKGVyci50aW1lc3RhbXApO1xuICAgICAgICAgICAgICAgIHRpbWUgPSB0cy50b0xvY2FsZVN0cmluZygpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHRhYmxlLnB1c2goW1xuICAgICAgICAgICAgICAgIChlcnIuaWQgfHwgJy0nKS5zdWJzdHJpbmcoMCwgOCksXG4gICAgICAgICAgICAgICAgY21kLFxuICAgICAgICAgICAgICAgIG1zZyxcbiAgICAgICAgICAgICAgICBhZ2VudCxcbiAgICAgICAgICAgICAgICB0aW1lXG4gICAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKHRhYmxlLnRvU3RyaW5nKCkpO1xuICAgICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JheShgXFxuU2hvd2luZyAke3Jlc3BvbnNlLmRhdGEubGVuZ3RofSBlcnJvcnNgKSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGVuY29kZShyZXNwb25zZS5kYXRhKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZ2dlci5lcnJvcignRXJyb3I6JywgcmVzcG9uc2UuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBsaXN0IGVycm9ycycpO1xuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBsb2dnZXIuZXJyb3IoJ0Vycm9yOicsIGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InKTtcbiAgICAgIH1cbiAgICB9KTtcbn1cbiJdfQ==
|
package/dist/commands/humans.js
DELETED
|
@@ -1,161 +0,0 @@
|
|
|
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.registerHumansCommands = registerHumansCommands;
|
|
7
|
-
const api_1 = require("../api");
|
|
8
|
-
const config_1 = require("../config");
|
|
9
|
-
const colors_1 = __importDefault(require("../utils/colors"));
|
|
10
|
-
const DEFAULT_HUMANS_API_URL = 'https://us-central1-agenticpool-humans.cloudfunctions.net/api';
|
|
11
|
-
function registerHumansCommands(program) {
|
|
12
|
-
const humans = program.command('humans').description('Human account management commands');
|
|
13
|
-
humans
|
|
14
|
-
.command('login')
|
|
15
|
-
.description('Authenticate as a human (stores Firebase ID token)')
|
|
16
|
-
.requiredOption('-t, --token <idToken>', 'Firebase ID token from humans-app login')
|
|
17
|
-
.requiredOption('-u, --uid <uid>', 'Your human UID')
|
|
18
|
-
.action(async (options) => {
|
|
19
|
-
try {
|
|
20
|
-
const config = await config_1.configManager.getGlobalConfig();
|
|
21
|
-
const updated = { ...config, humanJwt: options.token, humanUid: options.uid, humanJwtExpiresAt: Date.now() + 3600 * 1000 };
|
|
22
|
-
await config_1.configManager.saveGlobalConfig(updated);
|
|
23
|
-
console.log(colors_1.default.green('✓ Human credentials saved!'));
|
|
24
|
-
console.log(colors_1.default.gray('UID:'), options.uid);
|
|
25
|
-
}
|
|
26
|
-
catch (error) {
|
|
27
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
humans
|
|
31
|
-
.command('logout')
|
|
32
|
-
.description('Remove stored human credentials')
|
|
33
|
-
.action(async () => {
|
|
34
|
-
try {
|
|
35
|
-
const config = await config_1.configManager.getGlobalConfig();
|
|
36
|
-
delete config.humanJwt;
|
|
37
|
-
delete config.humanUid;
|
|
38
|
-
delete config.humanJwtExpiresAt;
|
|
39
|
-
await config_1.configManager.saveGlobalConfig(config);
|
|
40
|
-
console.log(colors_1.default.green('✓ Human credentials removed.'));
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
const myProfile = humans.command('my-profile').description('Manage your human profile');
|
|
47
|
-
myProfile
|
|
48
|
-
.command('get')
|
|
49
|
-
.description('Get your human profile')
|
|
50
|
-
.action(async () => {
|
|
51
|
-
try {
|
|
52
|
-
const { client } = await getHumanAuthenticatedClient();
|
|
53
|
-
const response = await client.get('/v1/profile');
|
|
54
|
-
if (response.success && response.data) {
|
|
55
|
-
const profile = response.data;
|
|
56
|
-
console.log(colors_1.default.cyan.bold(`\n${profile.displayName || 'No display name'}\n`));
|
|
57
|
-
console.log(colors_1.default.gray('UID:'), profile.uid);
|
|
58
|
-
if (profile.email)
|
|
59
|
-
console.log(colors_1.default.gray('Email:'), profile.email);
|
|
60
|
-
if (profile.phone)
|
|
61
|
-
console.log(colors_1.default.gray('Phone:'), profile.phone);
|
|
62
|
-
if (profile.telegram)
|
|
63
|
-
console.log(colors_1.default.gray('Telegram:'), profile.telegram);
|
|
64
|
-
if (profile.photoUrl)
|
|
65
|
-
console.log(colors_1.default.gray('Photo:'), profile.photoUrl);
|
|
66
|
-
if (profile.notes)
|
|
67
|
-
console.log(colors_1.default.gray('Notes:'), profile.notes);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to get profile');
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
catch (error) {
|
|
74
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
myProfile
|
|
78
|
-
.command('update')
|
|
79
|
-
.description('Update your human profile')
|
|
80
|
-
.option('--display-name <name>', 'Display name')
|
|
81
|
-
.option('--phone <phone>', 'Phone number')
|
|
82
|
-
.option('--email <email>', 'Email address')
|
|
83
|
-
.option('--telegram <handle>', 'Telegram handle')
|
|
84
|
-
.option('--photo-url <url>', 'Photo URL')
|
|
85
|
-
.option('--notes <text>', 'Notes')
|
|
86
|
-
.action(async (options) => {
|
|
87
|
-
try {
|
|
88
|
-
const { client } = await getHumanAuthenticatedClient();
|
|
89
|
-
const body = {};
|
|
90
|
-
if (options.displayName)
|
|
91
|
-
body.displayName = options.displayName;
|
|
92
|
-
if (options.phone)
|
|
93
|
-
body.phone = options.phone;
|
|
94
|
-
if (options.email)
|
|
95
|
-
body.email = options.email;
|
|
96
|
-
if (options.telegram)
|
|
97
|
-
body.telegram = options.telegram;
|
|
98
|
-
if (options.photoUrl)
|
|
99
|
-
body.photoUrl = options.photoUrl;
|
|
100
|
-
if (options.notes)
|
|
101
|
-
body.notes = options.notes;
|
|
102
|
-
const response = await client.put('/v1/profile', body);
|
|
103
|
-
if (response.success) {
|
|
104
|
-
console.log(colors_1.default.green('✓ Profile updated!'));
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to update profile');
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
catch (error) {
|
|
111
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
humans
|
|
115
|
-
.command('push-profiles')
|
|
116
|
-
.description('Push locally stored agent profiles to humans API')
|
|
117
|
-
.action(async () => {
|
|
118
|
-
try {
|
|
119
|
-
const { client, humanUid } = await getHumanAuthenticatedClient();
|
|
120
|
-
const profiles = await config_1.configManager.getAllJSONProfiles();
|
|
121
|
-
const networkIds = Object.keys(profiles);
|
|
122
|
-
if (networkIds.length === 0) {
|
|
123
|
-
console.log(colors_1.default.yellow('No local JSON profiles found. Run "profile build" first.'));
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
console.log(colors_1.default.cyan(`Pushing ${networkIds.length} profile(s) to humans API...\n`));
|
|
127
|
-
const payload = {
|
|
128
|
-
humanUid,
|
|
129
|
-
profiles: networkIds.map(networkId => ({
|
|
130
|
-
networkId,
|
|
131
|
-
...profiles[networkId]
|
|
132
|
-
}))
|
|
133
|
-
};
|
|
134
|
-
const response = await client.post('/v1/profiles/push', payload);
|
|
135
|
-
if (response.success) {
|
|
136
|
-
console.log(colors_1.default.green(`✓ Pushed ${networkIds.length} profile(s) successfully!`));
|
|
137
|
-
networkIds.forEach(id => console.log(colors_1.default.gray(' -'), id));
|
|
138
|
-
}
|
|
139
|
-
else {
|
|
140
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to push profiles');
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
catch (error) {
|
|
144
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
async function getHumanAuthenticatedClient() {
|
|
149
|
-
const config = await config_1.configManager.getGlobalConfig();
|
|
150
|
-
if (!config.humanJwt || !config.humanUid) {
|
|
151
|
-
throw new Error('Not authenticated as a human. Run "agenticpool humans login" first.');
|
|
152
|
-
}
|
|
153
|
-
if (config.humanJwtExpiresAt && Date.now() > config.humanJwtExpiresAt) {
|
|
154
|
-
throw new Error('Human session expired. Run "agenticpool humans login" again.');
|
|
155
|
-
}
|
|
156
|
-
const humansApiUrl = config.humansApiUrl || DEFAULT_HUMANS_API_URL;
|
|
157
|
-
const client = new api_1.ApiClient(humansApiUrl);
|
|
158
|
-
client.setAuthToken(config.humanJwt);
|
|
159
|
-
return { client, humanUid: config.humanUid };
|
|
160
|
-
}
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVtYW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL2h1bWFucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQU9BLHdEQXVJQztBQTdJRCxnQ0FBbUM7QUFDbkMsc0NBQTBDO0FBQzFDLDZEQUFvQztBQUVwQyxNQUFNLHNCQUFzQixHQUFHLCtEQUErRCxDQUFDO0FBRS9GLFNBQWdCLHNCQUFzQixDQUFDLE9BQWdCO0lBQ3JELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFFMUYsTUFBTTtTQUNILE9BQU8sQ0FBQyxPQUFPLENBQUM7U0FDaEIsV0FBVyxDQUFDLG9EQUFvRCxDQUFDO1NBQ2pFLGNBQWMsQ0FBQyx1QkFBdUIsRUFBRSx5Q0FBeUMsQ0FBQztTQUNsRixjQUFjLENBQUMsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUM7U0FDbkQsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtRQUN4QixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLHNCQUFhLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDckQsTUFBTSxPQUFPLEdBQUcsRUFBRSxHQUFHLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxHQUFHLElBQUksRUFBRSxDQUFDO1lBQzNILE1BQU0sc0JBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUU5QyxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFLLENBQUMsS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQztZQUN2RCxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0YsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUwsTUFBTTtTQUNILE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDakIsV0FBVyxDQUFDLGlDQUFpQyxDQUFDO1NBQzlDLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNqQixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLHNCQUFhLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDckQsT0FBUSxNQUFjLENBQUMsUUFBUSxDQUFDO1lBQ2hDLE9BQVEsTUFBYyxDQUFDLFFBQVEsQ0FBQztZQUNoQyxPQUFRLE1BQWMsQ0FBQyxpQkFBaUIsQ0FBQztZQUN6QyxNQUFNLHNCQUFhLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFN0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQy9GLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVMLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFFeEYsU0FBUztTQUNOLE9BQU8sQ0FBQyxLQUFLLENBQUM7U0FDZCxXQUFXLENBQUMsd0JBQXdCLENBQUM7U0FDckMsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2pCLElBQUksQ0FBQztZQUNILE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLDJCQUEyQixFQUFFLENBQUM7WUFFdkQsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFNLGFBQWEsQ0FBQyxDQUFDO1lBRXRELElBQUksUUFBUSxDQUFDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3RDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQzlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssT0FBTyxDQUFDLFdBQVcsSUFBSSxpQkFBaUIsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDaEYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzdDLElBQUksT0FBTyxDQUFDLEtBQUs7b0JBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BFLElBQUksT0FBTyxDQUFDLEtBQUs7b0JBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3BFLElBQUksT0FBTyxDQUFDLFFBQVE7b0JBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzdFLElBQUksT0FBTyxDQUFDLFFBQVE7b0JBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzFFLElBQUksT0FBTyxDQUFDLEtBQUs7b0JBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdEUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksdUJBQXVCLENBQUMsQ0FBQztZQUN6RixDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQy9GLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVMLFNBQVM7U0FDTixPQUFPLENBQUMsUUFBUSxDQUFDO1NBQ2pCLFdBQVcsQ0FBQywyQkFBMkIsQ0FBQztTQUN4QyxNQUFNLENBQUMsdUJBQXVCLEVBQUUsY0FBYyxDQUFDO1NBQy9DLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxjQUFjLENBQUM7U0FDekMsTUFBTSxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQztTQUMxQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsaUJBQWlCLENBQUM7U0FDaEQsTUFBTSxDQUFDLG1CQUFtQixFQUFFLFdBQVcsQ0FBQztTQUN4QyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDO1NBQ2pDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDeEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sMkJBQTJCLEVBQUUsQ0FBQztZQUV2RCxNQUFNLElBQUksR0FBUSxFQUFFLENBQUM7WUFDckIsSUFBSSxPQUFPLENBQUMsV0FBVztnQkFBRSxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDaEUsSUFBSSxPQUFPLENBQUMsS0FBSztnQkFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDOUMsSUFBSSxPQUFPLENBQUMsS0FBSztnQkFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDOUMsSUFBSSxPQUFPLENBQUMsUUFBUTtnQkFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDdkQsSUFBSSxPQUFPLENBQUMsUUFBUTtnQkFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDdkQsSUFBSSxPQUFPLENBQUMsS0FBSztnQkFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFFOUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUV2RCxJQUFJLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDckIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7WUFDakQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksMEJBQTBCLENBQUMsQ0FBQztZQUM1RixDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQy9GLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztJQUVMLE1BQU07U0FDSCxPQUFPLENBQUMsZUFBZSxDQUFDO1NBQ3hCLFdBQVcsQ0FBQyxrREFBa0QsQ0FBQztTQUMvRCxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDakIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLDJCQUEyQixFQUFFLENBQUM7WUFDakUsTUFBTSxRQUFRLEdBQUcsTUFBTSxzQkFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDMUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUV6QyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQUssQ0FBQyxNQUFNLENBQUMsMERBQTBELENBQUMsQ0FBQyxDQUFDO2dCQUN0RixPQUFPO1lBQ1QsQ0FBQztZQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxVQUFVLENBQUMsTUFBTSxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUM7WUFFdEYsTUFBTSxPQUFPLEdBQUc7Z0JBQ2QsUUFBUTtnQkFDUixRQUFRLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ3JDLFNBQVM7b0JBQ1QsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDO2lCQUN2QixDQUFDLENBQUM7YUFDSixDQUFDO1lBRUYsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRWpFLElBQUksUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFLLENBQUMsS0FBSyxDQUFDLFlBQVksVUFBVSxDQUFDLE1BQU0sMkJBQTJCLENBQUMsQ0FBQyxDQUFDO2dCQUNuRixVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQy9ELENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLHlCQUF5QixDQUFDLENBQUM7WUFDM0YsQ0FBQztRQUNILENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvRixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDO0FBRUQsS0FBSyxVQUFVLDJCQUEyQjtJQUN4QyxNQUFNLE1BQU0sR0FBRyxNQUFNLHNCQUFhLENBQUMsZUFBZSxFQUFTLENBQUM7SUFFNUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFFRCxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDdEUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4REFBOEQsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxJQUFJLHNCQUFzQixDQUFDO0lBQ25FLE1BQU0sTUFBTSxHQUFHLElBQUksZUFBUyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNDLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXJDLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUMvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJ2NvbW1hbmRlcic7XG5pbXBvcnQgeyBBcGlDbGllbnQgfSBmcm9tICcuLi9hcGknO1xuaW1wb3J0IHsgY29uZmlnTWFuYWdlciB9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQgY2hhbGsgZnJvbSAnLi4vdXRpbHMvY29sb3JzJztcblxuY29uc3QgREVGQVVMVF9IVU1BTlNfQVBJX1VSTCA9ICdodHRwczovL3VzLWNlbnRyYWwxLWFnZW50aWNwb29sLWh1bWFucy5jbG91ZGZ1bmN0aW9ucy5uZXQvYXBpJztcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVySHVtYW5zQ29tbWFuZHMocHJvZ3JhbTogQ29tbWFuZCk6IHZvaWQge1xuICBjb25zdCBodW1hbnMgPSBwcm9ncmFtLmNvbW1hbmQoJ2h1bWFucycpLmRlc2NyaXB0aW9uKCdIdW1hbiBhY2NvdW50IG1hbmFnZW1lbnQgY29tbWFuZHMnKTtcblxuICBodW1hbnNcbiAgICAuY29tbWFuZCgnbG9naW4nKVxuICAgIC5kZXNjcmlwdGlvbignQXV0aGVudGljYXRlIGFzIGEgaHVtYW4gKHN0b3JlcyBGaXJlYmFzZSBJRCB0b2tlbiknKVxuICAgIC5yZXF1aXJlZE9wdGlvbignLXQsIC0tdG9rZW4gPGlkVG9rZW4+JywgJ0ZpcmViYXNlIElEIHRva2VuIGZyb20gaHVtYW5zLWFwcCBsb2dpbicpXG4gICAgLnJlcXVpcmVkT3B0aW9uKCctdSwgLS11aWQgPHVpZD4nLCAnWW91ciBodW1hbiBVSUQnKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IGF3YWl0IGNvbmZpZ01hbmFnZXIuZ2V0R2xvYmFsQ29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWQgPSB7IC4uLmNvbmZpZywgaHVtYW5Kd3Q6IG9wdGlvbnMudG9rZW4sIGh1bWFuVWlkOiBvcHRpb25zLnVpZCwgaHVtYW5Kd3RFeHBpcmVzQXQ6IERhdGUubm93KCkgKyAzNjAwICogMTAwMCB9O1xuICAgICAgICBhd2FpdCBjb25maWdNYW5hZ2VyLnNhdmVHbG9iYWxDb25maWcodXBkYXRlZCk7XG5cbiAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JlZW4oJ+KckyBIdW1hbiBjcmVkZW50aWFscyBzYXZlZCEnKSk7XG4gICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ1VJRDonKSwgb3B0aW9ucy51aWQpO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihjaGFsay5yZWQoJ0Vycm9yOicpLCBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgaHVtYW5zXG4gICAgLmNvbW1hbmQoJ2xvZ291dCcpXG4gICAgLmRlc2NyaXB0aW9uKCdSZW1vdmUgc3RvcmVkIGh1bWFuIGNyZWRlbnRpYWxzJylcbiAgICAuYWN0aW9uKGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IGF3YWl0IGNvbmZpZ01hbmFnZXIuZ2V0R2xvYmFsQ29uZmlnKCk7XG4gICAgICAgIGRlbGV0ZSAoY29uZmlnIGFzIGFueSkuaHVtYW5Kd3Q7XG4gICAgICAgIGRlbGV0ZSAoY29uZmlnIGFzIGFueSkuaHVtYW5VaWQ7XG4gICAgICAgIGRlbGV0ZSAoY29uZmlnIGFzIGFueSkuaHVtYW5Kd3RFeHBpcmVzQXQ7XG4gICAgICAgIGF3YWl0IGNvbmZpZ01hbmFnZXIuc2F2ZUdsb2JhbENvbmZpZyhjb25maWcpO1xuXG4gICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyZWVuKCfinJMgSHVtYW4gY3JlZGVudGlhbHMgcmVtb3ZlZC4nKSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKGNoYWxrLnJlZCgnRXJyb3I6JyksIGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogJ1Vua25vd24gZXJyb3InKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICBjb25zdCBteVByb2ZpbGUgPSBodW1hbnMuY29tbWFuZCgnbXktcHJvZmlsZScpLmRlc2NyaXB0aW9uKCdNYW5hZ2UgeW91ciBodW1hbiBwcm9maWxlJyk7XG5cbiAgbXlQcm9maWxlXG4gICAgLmNvbW1hbmQoJ2dldCcpXG4gICAgLmRlc2NyaXB0aW9uKCdHZXQgeW91ciBodW1hbiBwcm9maWxlJylcbiAgICAuYWN0aW9uKGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgY2xpZW50IH0gPSBhd2FpdCBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTtcblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQ8YW55PignL3YxL3Byb2ZpbGUnKTtcblxuICAgICAgICBpZiAocmVzcG9uc2Uuc3VjY2VzcyAmJiByZXNwb25zZS5kYXRhKSB7XG4gICAgICAgICAgY29uc3QgcHJvZmlsZSA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuY3lhbi5ib2xkKGBcXG4ke3Byb2ZpbGUuZGlzcGxheU5hbWUgfHwgJ05vIGRpc3BsYXkgbmFtZSd9XFxuYCkpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ1VJRDonKSwgcHJvZmlsZS51aWQpO1xuICAgICAgICAgIGlmIChwcm9maWxlLmVtYWlsKSBjb25zb2xlLmxvZyhjaGFsay5ncmF5KCdFbWFpbDonKSwgcHJvZmlsZS5lbWFpbCk7XG4gICAgICAgICAgaWYgKHByb2ZpbGUucGhvbmUpIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ1Bob25lOicpLCBwcm9maWxlLnBob25lKTtcbiAgICAgICAgICBpZiAocHJvZmlsZS50ZWxlZ3JhbSkgY29uc29sZS5sb2coY2hhbGsuZ3JheSgnVGVsZWdyYW06JyksIHByb2ZpbGUudGVsZWdyYW0pO1xuICAgICAgICAgIGlmIChwcm9maWxlLnBob3RvVXJsKSBjb25zb2xlLmxvZyhjaGFsay5ncmF5KCdQaG90bzonKSwgcHJvZmlsZS5waG90b1VybCk7XG4gICAgICAgICAgaWYgKHByb2ZpbGUubm90ZXMpIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ05vdGVzOicpLCBwcm9maWxlLm5vdGVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGNoYWxrLnJlZCgnRXJyb3I6JyksIHJlc3BvbnNlLmVycm9yPy5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZ2V0IHByb2ZpbGUnKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihjaGFsay5yZWQoJ0Vycm9yOicpLCBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgbXlQcm9maWxlXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZScpXG4gICAgLmRlc2NyaXB0aW9uKCdVcGRhdGUgeW91ciBodW1hbiBwcm9maWxlJylcbiAgICAub3B0aW9uKCctLWRpc3BsYXktbmFtZSA8bmFtZT4nLCAnRGlzcGxheSBuYW1lJylcbiAgICAub3B0aW9uKCctLXBob25lIDxwaG9uZT4nLCAnUGhvbmUgbnVtYmVyJylcbiAgICAub3B0aW9uKCctLWVtYWlsIDxlbWFpbD4nLCAnRW1haWwgYWRkcmVzcycpXG4gICAgLm9wdGlvbignLS10ZWxlZ3JhbSA8aGFuZGxlPicsICdUZWxlZ3JhbSBoYW5kbGUnKVxuICAgIC5vcHRpb24oJy0tcGhvdG8tdXJsIDx1cmw+JywgJ1Bob3RvIFVSTCcpXG4gICAgLm9wdGlvbignLS1ub3RlcyA8dGV4dD4nLCAnTm90ZXMnKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgY2xpZW50IH0gPSBhd2FpdCBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTtcblxuICAgICAgICBjb25zdCBib2R5OiBhbnkgPSB7fTtcbiAgICAgICAgaWYgKG9wdGlvbnMuZGlzcGxheU5hbWUpIGJvZHkuZGlzcGxheU5hbWUgPSBvcHRpb25zLmRpc3BsYXlOYW1lO1xuICAgICAgICBpZiAob3B0aW9ucy5waG9uZSkgYm9keS5waG9uZSA9IG9wdGlvbnMucGhvbmU7XG4gICAgICAgIGlmIChvcHRpb25zLmVtYWlsKSBib2R5LmVtYWlsID0gb3B0aW9ucy5lbWFpbDtcbiAgICAgICAgaWYgKG9wdGlvbnMudGVsZWdyYW0pIGJvZHkudGVsZWdyYW0gPSBvcHRpb25zLnRlbGVncmFtO1xuICAgICAgICBpZiAob3B0aW9ucy5waG90b1VybCkgYm9keS5waG90b1VybCA9IG9wdGlvbnMucGhvdG9Vcmw7XG4gICAgICAgIGlmIChvcHRpb25zLm5vdGVzKSBib2R5Lm5vdGVzID0gb3B0aW9ucy5ub3RlcztcblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5wdXQoJy92MS9wcm9maWxlJywgYm9keSk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmVlbign4pyTIFByb2ZpbGUgdXBkYXRlZCEnKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihjaGFsay5yZWQoJ0Vycm9yOicpLCByZXNwb25zZS5lcnJvcj8ubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSBwcm9maWxlJyk7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoY2hhbGsucmVkKCdFcnJvcjonKSwgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcicpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gIGh1bWFuc1xuICAgIC5jb21tYW5kKCdwdXNoLXByb2ZpbGVzJylcbiAgICAuZGVzY3JpcHRpb24oJ1B1c2ggbG9jYWxseSBzdG9yZWQgYWdlbnQgcHJvZmlsZXMgdG8gaHVtYW5zIEFQSScpXG4gICAgLmFjdGlvbihhc3luYyAoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGNsaWVudCwgaHVtYW5VaWQgfSA9IGF3YWl0IGdldEh1bWFuQXV0aGVudGljYXRlZENsaWVudCgpO1xuICAgICAgICBjb25zdCBwcm9maWxlcyA9IGF3YWl0IGNvbmZpZ01hbmFnZXIuZ2V0QWxsSlNPTlByb2ZpbGVzKCk7XG4gICAgICAgIGNvbnN0IG5ldHdvcmtJZHMgPSBPYmplY3Qua2V5cyhwcm9maWxlcyk7XG5cbiAgICAgICAgaWYgKG5ldHdvcmtJZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coY2hhbGsueWVsbG93KCdObyBsb2NhbCBKU09OIHByb2ZpbGVzIGZvdW5kLiBSdW4gXCJwcm9maWxlIGJ1aWxkXCIgZmlyc3QuJykpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmN5YW4oYFB1c2hpbmcgJHtuZXR3b3JrSWRzLmxlbmd0aH0gcHJvZmlsZShzKSB0byBodW1hbnMgQVBJLi4uXFxuYCkpO1xuXG4gICAgICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICAgICAgaHVtYW5VaWQsXG4gICAgICAgICAgcHJvZmlsZXM6IG5ldHdvcmtJZHMubWFwKG5ldHdvcmtJZCA9PiAoe1xuICAgICAgICAgICAgbmV0d29ya0lkLFxuICAgICAgICAgICAgLi4ucHJvZmlsZXNbbmV0d29ya0lkXVxuICAgICAgICAgIH0pKVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgY2xpZW50LnBvc3QoJy92MS9wcm9maWxlcy9wdXNoJywgcGF5bG9hZCk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmVlbihg4pyTIFB1c2hlZCAke25ldHdvcmtJZHMubGVuZ3RofSBwcm9maWxlKHMpIHN1Y2Nlc3NmdWxseSFgKSk7XG4gICAgICAgICAgbmV0d29ya0lkcy5mb3JFYWNoKGlkID0+IGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJyAgLScpLCBpZCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoY2hhbGsucmVkKCdFcnJvcjonKSwgcmVzcG9uc2UuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBwdXNoIHByb2ZpbGVzJyk7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoY2hhbGsucmVkKCdFcnJvcjonKSwgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcicpO1xuICAgICAgfVxuICAgIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTogUHJvbWlzZTx7IGNsaWVudDogQXBpQ2xpZW50OyBodW1hblVpZDogc3RyaW5nIH0+IHtcbiAgY29uc3QgY29uZmlnID0gYXdhaXQgY29uZmlnTWFuYWdlci5nZXRHbG9iYWxDb25maWcoKSBhcyBhbnk7XG5cbiAgaWYgKCFjb25maWcuaHVtYW5Kd3QgfHwgIWNvbmZpZy5odW1hblVpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGF1dGhlbnRpY2F0ZWQgYXMgYSBodW1hbi4gUnVuIFwiYWdlbnRpY3Bvb2wgaHVtYW5zIGxvZ2luXCIgZmlyc3QuJyk7XG4gIH1cblxuICBpZiAoY29uZmlnLmh1bWFuSnd0RXhwaXJlc0F0ICYmIERhdGUubm93KCkgPiBjb25maWcuaHVtYW5Kd3RFeHBpcmVzQXQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0h1bWFuIHNlc3Npb24gZXhwaXJlZC4gUnVuIFwiYWdlbnRpY3Bvb2wgaHVtYW5zIGxvZ2luXCIgYWdhaW4uJyk7XG4gIH1cblxuICBjb25zdCBodW1hbnNBcGlVcmwgPSBjb25maWcuaHVtYW5zQXBpVXJsIHx8IERFRkFVTFRfSFVNQU5TX0FQSV9VUkw7XG4gIGNvbnN0IGNsaWVudCA9IG5ldyBBcGlDbGllbnQoaHVtYW5zQXBpVXJsKTtcbiAgY2xpZW50LnNldEF1dGhUb2tlbihjb25maWcuaHVtYW5Kd3QpO1xuXG4gIHJldHVybiB7IGNsaWVudCwgaHVtYW5VaWQ6IGNvbmZpZy5odW1hblVpZCB9O1xufVxuIl19
|
|
@@ -1,141 +0,0 @@
|
|
|
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.registerIdentityCommands = registerIdentityCommands;
|
|
7
|
-
const api_1 = require("../api");
|
|
8
|
-
const config_1 = require("../config");
|
|
9
|
-
const datamodel_1 = require("../datamodel");
|
|
10
|
-
const colors_1 = __importDefault(require("../utils/colors"));
|
|
11
|
-
const DEFAULT_HUMANS_API_URL = 'https://us-central1-agenticpool-humans.cloudfunctions.net/api';
|
|
12
|
-
function registerIdentityCommands(program) {
|
|
13
|
-
const identities = program.command('identities').description('Identity management commands');
|
|
14
|
-
identities
|
|
15
|
-
.command('register')
|
|
16
|
-
.description('Register a network identity for your human profile')
|
|
17
|
-
.requiredOption('-n, --network <id>', 'Network ID')
|
|
18
|
-
.requiredOption('-p, --public-token <token>', 'Your agent public token on this network')
|
|
19
|
-
.requiredOption('-d, --description <text>', 'Agent description for this identity')
|
|
20
|
-
.option('--format <format>', 'Output format: toon, json, text', 'toon')
|
|
21
|
-
.action(async (options) => {
|
|
22
|
-
try {
|
|
23
|
-
const { client, humanUid } = await getHumanAuthenticatedClient();
|
|
24
|
-
client.setFormat(options.format === 'json' ? 'json' : 'toon');
|
|
25
|
-
const response = await client.post('/v1/identities', {
|
|
26
|
-
humanUid,
|
|
27
|
-
networkId: options.network,
|
|
28
|
-
publicToken: options.publicToken,
|
|
29
|
-
agentDescription: options.description
|
|
30
|
-
});
|
|
31
|
-
if (response.success && response.data) {
|
|
32
|
-
if (options.format === 'json') {
|
|
33
|
-
console.log(JSON.stringify(response.data, null, 2));
|
|
34
|
-
}
|
|
35
|
-
else if (options.format === 'toon') {
|
|
36
|
-
console.log((0, datamodel_1.encode)(response.data));
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
const identity = response.data;
|
|
40
|
-
console.log(colors_1.default.green('✓ Identity registered!'));
|
|
41
|
-
console.log(colors_1.default.gray('ID:'), identity.id);
|
|
42
|
-
console.log(colors_1.default.gray('Network:'), options.network);
|
|
43
|
-
console.log(colors_1.default.gray('Public Token:'), options.publicToken);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to register identity');
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
identities
|
|
55
|
-
.command('list')
|
|
56
|
-
.description('List your registered identities')
|
|
57
|
-
.option('--format <format>', 'Output format: toon, json, text', 'toon')
|
|
58
|
-
.action(async (options) => {
|
|
59
|
-
try {
|
|
60
|
-
const { client, humanUid } = await getHumanAuthenticatedClient();
|
|
61
|
-
client.setFormat(options.format === 'json' ? 'json' : 'toon');
|
|
62
|
-
const response = await client.get('/v1/identities');
|
|
63
|
-
if (response.success && response.data) {
|
|
64
|
-
if (options.format === 'json') {
|
|
65
|
-
console.log(JSON.stringify(response.data, null, 2));
|
|
66
|
-
}
|
|
67
|
-
else if (options.format === 'toon') {
|
|
68
|
-
console.log((0, datamodel_1.encode)(response.data));
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
if (response.data.length === 0) {
|
|
72
|
-
console.log(colors_1.default.yellow('No identities registered.'));
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
console.log(colors_1.default.green.bold(`\nYour Identities (${response.data.length}):\n`));
|
|
76
|
-
response.data.forEach((identity) => {
|
|
77
|
-
console.log(colors_1.default.cyan.bold(identity.networkId));
|
|
78
|
-
console.log(colors_1.default.gray(' ID:'), identity.id);
|
|
79
|
-
console.log(colors_1.default.gray(' Public Token:'), identity.publicToken);
|
|
80
|
-
console.log(colors_1.default.gray(' Description:'), identity.agentDescription || '(none)');
|
|
81
|
-
if (identity.addedAt) {
|
|
82
|
-
console.log(colors_1.default.gray(' Added:'), formatTimestamp(identity.addedAt));
|
|
83
|
-
}
|
|
84
|
-
console.log();
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to list identities');
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
catch (error) {
|
|
93
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
identities
|
|
97
|
-
.command('remove')
|
|
98
|
-
.description('Remove a registered identity')
|
|
99
|
-
.requiredOption('-i, --id <id>', 'Identity ID')
|
|
100
|
-
.action(async (options) => {
|
|
101
|
-
try {
|
|
102
|
-
const { client } = await getHumanAuthenticatedClient();
|
|
103
|
-
const response = await client.delete(`/v1/identities/${options.id}`);
|
|
104
|
-
if (response.success) {
|
|
105
|
-
console.log(colors_1.default.green('✓ Identity removed!'));
|
|
106
|
-
console.log(colors_1.default.gray('ID:'), options.id);
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
console.error(colors_1.default.red('Error:'), response.error?.message || 'Failed to remove identity');
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
catch (error) {
|
|
113
|
-
console.error(colors_1.default.red('Error:'), error instanceof Error ? error.message : 'Unknown error');
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
async function getHumanAuthenticatedClient() {
|
|
118
|
-
const config = await config_1.configManager.getGlobalConfig();
|
|
119
|
-
if (!config.humanJwt || !config.humanUid) {
|
|
120
|
-
throw new Error('Not authenticated as a human. Please log in at humans.agenticpool.net first.');
|
|
121
|
-
}
|
|
122
|
-
if (config.humanJwtExpiresAt && Date.now() > config.humanJwtExpiresAt) {
|
|
123
|
-
throw new Error('Human session expired. Please log in again at humans.agenticpool.net.');
|
|
124
|
-
}
|
|
125
|
-
const humansApiUrl = config.humansApiUrl || DEFAULT_HUMANS_API_URL;
|
|
126
|
-
const client = new api_1.ApiClient(humansApiUrl);
|
|
127
|
-
client.setAuthToken(config.humanJwt);
|
|
128
|
-
return { client, humanUid: config.humanUid };
|
|
129
|
-
}
|
|
130
|
-
function formatTimestamp(ts) {
|
|
131
|
-
if (!ts)
|
|
132
|
-
return 'unknown';
|
|
133
|
-
if (ts._seconds) {
|
|
134
|
-
return new Date(ts._seconds * 1000).toISOString();
|
|
135
|
-
}
|
|
136
|
-
if (typeof ts === 'string' || typeof ts === 'number') {
|
|
137
|
-
return new Date(ts).toISOString();
|
|
138
|
-
}
|
|
139
|
-
return String(ts);
|
|
140
|
-
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9pZGVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBUUEsNERBeUdDO0FBaEhELGdDQUFtQztBQUNuQyxzQ0FBMEM7QUFDMUMsNENBQXNDO0FBQ3RDLDZEQUFvQztBQUVwQyxNQUFNLHNCQUFzQixHQUFHLCtEQUErRCxDQUFDO0FBRS9GLFNBQWdCLHdCQUF3QixDQUFDLE9BQWdCO0lBQ3ZELE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsV0FBVyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFFN0YsVUFBVTtTQUNQLE9BQU8sQ0FBQyxVQUFVLENBQUM7U0FDbkIsV0FBVyxDQUFDLG9EQUFvRCxDQUFDO1NBQ2pFLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxZQUFZLENBQUM7U0FDbEQsY0FBYyxDQUFDLDRCQUE0QixFQUFFLHlDQUF5QyxDQUFDO1NBQ3ZGLGNBQWMsQ0FBQywwQkFBMEIsRUFBRSxxQ0FBcUMsQ0FBQztTQUNqRixNQUFNLENBQUMsbUJBQW1CLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxDQUFDO1NBQ3RFLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDeEIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLDJCQUEyQixFQUFFLENBQUM7WUFDakUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUU5RCxNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQU0sZ0JBQWdCLEVBQUU7Z0JBQ3hELFFBQVE7Z0JBQ1IsU0FBUyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUMxQixX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QUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO0FBQy9DLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxFQUFPO0lBQzlCLElBQUksQ0FBQyxFQUFFO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDMUIsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsT0FBTyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BELENBQUM7SUFDRCxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUNyRCxPQUFPLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJ2NvbW1hbmRlcic7XG5pbXBvcnQgeyBBcGlDbGllbnQgfSBmcm9tICcuLi9hcGknO1xuaW1wb3J0IHsgY29uZmlnTWFuYWdlciB9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBlbmNvZGUgfSBmcm9tICcuLi9kYXRhbW9kZWwnO1xuaW1wb3J0IGNoYWxrIGZyb20gJy4uL3V0aWxzL2NvbG9ycyc7XG5cbmNvbnN0IERFRkFVTFRfSFVNQU5TX0FQSV9VUkwgPSAnaHR0cHM6Ly91cy1jZW50cmFsMS1hZ2VudGljcG9vbC1odW1hbnMuY2xvdWRmdW5jdGlvbnMubmV0L2FwaSc7XG5cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlcklkZW50aXR5Q29tbWFuZHMocHJvZ3JhbTogQ29tbWFuZCk6IHZvaWQge1xuICBjb25zdCBpZGVudGl0aWVzID0gcHJvZ3JhbS5jb21tYW5kKCdpZGVudGl0aWVzJykuZGVzY3JpcHRpb24oJ0lkZW50aXR5IG1hbmFnZW1lbnQgY29tbWFuZHMnKTtcblxuICBpZGVudGl0aWVzXG4gICAgLmNvbW1hbmQoJ3JlZ2lzdGVyJylcbiAgICAuZGVzY3JpcHRpb24oJ1JlZ2lzdGVyIGEgbmV0d29yayBpZGVudGl0eSBmb3IgeW91ciBodW1hbiBwcm9maWxlJylcbiAgICAucmVxdWlyZWRPcHRpb24oJy1uLCAtLW5ldHdvcmsgPGlkPicsICdOZXR3b3JrIElEJylcbiAgICAucmVxdWlyZWRPcHRpb24oJy1wLCAtLXB1YmxpYy10b2tlbiA8dG9rZW4+JywgJ1lvdXIgYWdlbnQgcHVibGljIHRva2VuIG9uIHRoaXMgbmV0d29yaycpXG4gICAgLnJlcXVpcmVkT3B0aW9uKCctZCwgLS1kZXNjcmlwdGlvbiA8dGV4dD4nLCAnQWdlbnQgZGVzY3JpcHRpb24gZm9yIHRoaXMgaWRlbnRpdHknKVxuICAgIC5vcHRpb24oJy0tZm9ybWF0IDxmb3JtYXQ+JywgJ091dHB1dCBmb3JtYXQ6IHRvb24sIGpzb24sIHRleHQnLCAndG9vbicpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBjbGllbnQsIGh1bWFuVWlkIH0gPSBhd2FpdCBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTtcbiAgICAgICAgY2xpZW50LnNldEZvcm1hdChvcHRpb25zLmZvcm1hdCA9PT0gJ2pzb24nID8gJ2pzb24nIDogJ3Rvb24nKTtcblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5wb3N0PGFueT4oJy92MS9pZGVudGl0aWVzJywge1xuICAgICAgICAgIGh1bWFuVWlkLFxuICAgICAgICAgIG5ldHdvcmtJZDogb3B0aW9ucy5uZXR3b3JrLFxuICAgICAgICAgIHB1YmxpY1Rva2VuOiBvcHRpb25zLnB1YmxpY1Rva2VuLFxuICAgICAgICAgIGFnZW50RGVzY3JpcHRpb246IG9wdGlvbnMuZGVzY3JpcHRpb25cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MgJiYgcmVzcG9uc2UuZGF0YSkge1xuICAgICAgICAgIGlmIChvcHRpb25zLmZvcm1hdCA9PT0gJ2pzb24nKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShyZXNwb25zZS5kYXRhLCBudWxsLCAyKSk7XG4gICAgICAgICAgfSBlbHNlIGlmIChvcHRpb25zLmZvcm1hdCA9PT0gJ3Rvb24nKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlbmNvZGUocmVzcG9uc2UuZGF0YSkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBpZGVudGl0eSA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmVlbign4pyTIElkZW50aXR5IHJlZ2lzdGVyZWQhJykpO1xuICAgICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JheSgnSUQ6JyksIGlkZW50aXR5LmlkKTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ05ldHdvcms6JyksIG9wdGlvbnMubmV0d29yayk7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmF5KCdQdWJsaWMgVG9rZW46JyksIG9wdGlvbnMucHVibGljVG9rZW4pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGNoYWxrLnJlZCgnRXJyb3I6JyksIHJlc3BvbnNlLmVycm9yPy5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gcmVnaXN0ZXIgaWRlbnRpdHknKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihjaGFsay5yZWQoJ0Vycm9yOicpLCBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgaWRlbnRpdGllc1xuICAgIC5jb21tYW5kKCdsaXN0JylcbiAgICAuZGVzY3JpcHRpb24oJ0xpc3QgeW91ciByZWdpc3RlcmVkIGlkZW50aXRpZXMnKVxuICAgIC5vcHRpb24oJy0tZm9ybWF0IDxmb3JtYXQ+JywgJ091dHB1dCBmb3JtYXQ6IHRvb24sIGpzb24sIHRleHQnLCAndG9vbicpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBjbGllbnQsIGh1bWFuVWlkIH0gPSBhd2FpdCBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTtcbiAgICAgICAgY2xpZW50LnNldEZvcm1hdChvcHRpb25zLmZvcm1hdCA9PT0gJ2pzb24nID8gJ2pzb24nIDogJ3Rvb24nKTtcblxuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGNsaWVudC5nZXQ8YW55W10+KCcvdjEvaWRlbnRpdGllcycpO1xuXG4gICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzICYmIHJlc3BvbnNlLmRhdGEpIHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5mb3JtYXQgPT09ICdqc29uJykge1xuICAgICAgICAgICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UuZGF0YSwgbnVsbCwgMikpO1xuICAgICAgICAgIH0gZWxzZSBpZiAob3B0aW9ucy5mb3JtYXQgPT09ICd0b29uJykge1xuICAgICAgICAgICAgY29uc29sZS5sb2coZW5jb2RlKHJlc3BvbnNlLmRhdGEpKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHJlc3BvbnNlLmRhdGEubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLnllbGxvdygnTm8gaWRlbnRpdGllcyByZWdpc3RlcmVkLicpKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmVlbi5ib2xkKGBcXG5Zb3VyIElkZW50aXRpZXMgKCR7cmVzcG9uc2UuZGF0YS5sZW5ndGh9KTpcXG5gKSk7XG5cbiAgICAgICAgICAgIHJlc3BvbnNlLmRhdGEuZm9yRWFjaCgoaWRlbnRpdHk6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5jeWFuLmJvbGQoaWRlbnRpdHkubmV0d29ya0lkKSk7XG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJyAgSUQ6JyksIGlkZW50aXR5LmlkKTtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JheSgnICBQdWJsaWMgVG9rZW46JyksIGlkZW50aXR5LnB1YmxpY1Rva2VuKTtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JheSgnICBEZXNjcmlwdGlvbjonKSwgaWRlbnRpdHkuYWdlbnREZXNjcmlwdGlvbiB8fCAnKG5vbmUpJyk7XG4gICAgICAgICAgICAgIGlmIChpZGVudGl0eS5hZGRlZEF0KSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coY2hhbGsuZ3JheSgnICBBZGRlZDonKSwgZm9ybWF0VGltZXN0YW1wKGlkZW50aXR5LmFkZGVkQXQpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zb2xlLmxvZygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoY2hhbGsucmVkKCdFcnJvcjonKSwgcmVzcG9uc2UuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBsaXN0IGlkZW50aXRpZXMnKTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihjaGFsay5yZWQoJ0Vycm9yOicpLCBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6ICdVbmtub3duIGVycm9yJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgaWRlbnRpdGllc1xuICAgIC5jb21tYW5kKCdyZW1vdmUnKVxuICAgIC5kZXNjcmlwdGlvbignUmVtb3ZlIGEgcmVnaXN0ZXJlZCBpZGVudGl0eScpXG4gICAgLnJlcXVpcmVkT3B0aW9uKCctaSwgLS1pZCA8aWQ+JywgJ0lkZW50aXR5IElEJylcbiAgICAuYWN0aW9uKGFzeW5jIChvcHRpb25zKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGNsaWVudCB9ID0gYXdhaXQgZ2V0SHVtYW5BdXRoZW50aWNhdGVkQ2xpZW50KCk7XG5cbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBjbGllbnQuZGVsZXRlKGAvdjEvaWRlbnRpdGllcy8ke29wdGlvbnMuaWR9YCk7XG5cbiAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhjaGFsay5ncmVlbign4pyTIElkZW50aXR5IHJlbW92ZWQhJykpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGNoYWxrLmdyYXkoJ0lEOicpLCBvcHRpb25zLmlkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGNoYWxrLnJlZCgnRXJyb3I6JyksIHJlc3BvbnNlLmVycm9yPy5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gcmVtb3ZlIGlkZW50aXR5Jyk7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoY2hhbGsucmVkKCdFcnJvcjonKSwgZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiAnVW5rbm93biBlcnJvcicpO1xuICAgICAgfVxuICAgIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRIdW1hbkF1dGhlbnRpY2F0ZWRDbGllbnQoKTogUHJvbWlzZTx7IGNsaWVudDogQXBpQ2xpZW50OyBodW1hblVpZDogc3RyaW5nIH0+IHtcbiAgY29uc3QgY29uZmlnID0gYXdhaXQgY29uZmlnTWFuYWdlci5nZXRHbG9iYWxDb25maWcoKSBhcyBhbnk7XG5cbiAgaWYgKCFjb25maWcuaHVtYW5Kd3QgfHwgIWNvbmZpZy5odW1hblVpZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGF1dGhlbnRpY2F0ZWQgYXMgYSBodW1hbi4gUGxlYXNlIGxvZyBpbiBhdCBodW1hbnMuYWdlbnRpY3Bvb2wubmV0IGZpcnN0LicpO1xuICB9XG5cbiAgaWYgKGNvbmZpZy5odW1hbkp3dEV4cGlyZXNBdCAmJiBEYXRlLm5vdygpID4gY29uZmlnLmh1bWFuSnd0RXhwaXJlc0F0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdIdW1hbiBzZXNzaW9uIGV4cGlyZWQuIFBsZWFzZSBsb2cgaW4gYWdhaW4gYXQgaHVtYW5zLmFnZW50aWNwb29sLm5ldC4nKTtcbiAgfVxuXG4gIGNvbnN0IGh1bWFuc0FwaVVybCA9IGNvbmZpZy5odW1hbnNBcGlVcmwgfHwgREVGQVVMVF9IVU1BTlNfQVBJX1VSTDtcbiAgY29uc3QgY2xpZW50ID0gbmV3IEFwaUNsaWVudChodW1hbnNBcGlVcmwpO1xuICBjbGllbnQuc2V0QXV0aFRva2VuKGNvbmZpZy5odW1hbkp3dCk7XG5cbiAgcmV0dXJuIHsgY2xpZW50LCBodW1hblVpZDogY29uZmlnLmh1bWFuVWlkIH07XG59XG5cbmZ1bmN0aW9uIGZvcm1hdFRpbWVzdGFtcCh0czogYW55KTogc3RyaW5nIHtcbiAgaWYgKCF0cykgcmV0dXJuICd1bmtub3duJztcbiAgaWYgKHRzLl9zZWNvbmRzKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHRzLl9zZWNvbmRzICogMTAwMCkudG9JU09TdHJpbmcoKTtcbiAgfVxuICBpZiAodHlwZW9mIHRzID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdHMgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHRzKS50b0lTT1N0cmluZygpO1xuICB9XG4gIHJldHVybiBTdHJpbmcodHMpO1xufVxuIl19
|
package/dist/commands/index.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export { registerAuthCommands } from './auth';
|
|
2
|
-
export { registerNetworkCommands } from './networks';
|
|
3
|
-
export { registerProfileCommands } from './profile';
|
|
4
|
-
export { registerConversationCommands } from './conversations';
|
|
5
|
-
export { registerMessageCommands } from './messages';
|
|
6
|
-
export { registerConfigCommands } from './config';
|
|
7
|
-
export { registerConnectionCommands } from './connections';
|
|
8
|
-
export { registerIdentityCommands } from './identities';
|
|
9
|
-
export { registerContactCommands } from './contacts';
|
|
10
|
-
export { registerHumansCommands } from './humans';
|
|
11
|
-
export { registerErrorCommands } from './errors';
|
package/dist/commands/index.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.registerErrorCommands = exports.registerHumansCommands = exports.registerContactCommands = exports.registerIdentityCommands = exports.registerConnectionCommands = exports.registerConfigCommands = exports.registerMessageCommands = exports.registerConversationCommands = exports.registerProfileCommands = exports.registerNetworkCommands = exports.registerAuthCommands = void 0;
|
|
4
|
-
var auth_1 = require("./auth");
|
|
5
|
-
Object.defineProperty(exports, "registerAuthCommands", { enumerable: true, get: function () { return auth_1.registerAuthCommands; } });
|
|
6
|
-
var networks_1 = require("./networks");
|
|
7
|
-
Object.defineProperty(exports, "registerNetworkCommands", { enumerable: true, get: function () { return networks_1.registerNetworkCommands; } });
|
|
8
|
-
var profile_1 = require("./profile");
|
|
9
|
-
Object.defineProperty(exports, "registerProfileCommands", { enumerable: true, get: function () { return profile_1.registerProfileCommands; } });
|
|
10
|
-
var conversations_1 = require("./conversations");
|
|
11
|
-
Object.defineProperty(exports, "registerConversationCommands", { enumerable: true, get: function () { return conversations_1.registerConversationCommands; } });
|
|
12
|
-
var messages_1 = require("./messages");
|
|
13
|
-
Object.defineProperty(exports, "registerMessageCommands", { enumerable: true, get: function () { return messages_1.registerMessageCommands; } });
|
|
14
|
-
var config_1 = require("./config");
|
|
15
|
-
Object.defineProperty(exports, "registerConfigCommands", { enumerable: true, get: function () { return config_1.registerConfigCommands; } });
|
|
16
|
-
var connections_1 = require("./connections");
|
|
17
|
-
Object.defineProperty(exports, "registerConnectionCommands", { enumerable: true, get: function () { return connections_1.registerConnectionCommands; } });
|
|
18
|
-
var identities_1 = require("./identities");
|
|
19
|
-
Object.defineProperty(exports, "registerIdentityCommands", { enumerable: true, get: function () { return identities_1.registerIdentityCommands; } });
|
|
20
|
-
var contacts_1 = require("./contacts");
|
|
21
|
-
Object.defineProperty(exports, "registerContactCommands", { enumerable: true, get: function () { return contacts_1.registerContactCommands; } });
|
|
22
|
-
var humans_1 = require("./humans");
|
|
23
|
-
Object.defineProperty(exports, "registerHumansCommands", { enumerable: true, get: function () { return humans_1.registerHumansCommands; } });
|
|
24
|
-
var errors_1 = require("./errors");
|
|
25
|
-
Object.defineProperty(exports, "registerErrorCommands", { enumerable: true, get: function () { return errors_1.registerErrorCommands; } });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQThDO0FBQXJDLDRHQUFBLG9CQUFvQixPQUFBO0FBQzdCLHVDQUFxRDtBQUE1QyxtSEFBQSx1QkFBdUIsT0FBQTtBQUNoQyxxQ0FBb0Q7QUFBM0Msa0hBQUEsdUJBQXVCLE9BQUE7QUFDaEMsaURBQStEO0FBQXRELDZIQUFBLDRCQUE0QixPQUFBO0FBQ3JDLHVDQUFxRDtBQUE1QyxtSEFBQSx1QkFBdUIsT0FBQTtBQUNoQyxtQ0FBa0Q7QUFBekMsZ0hBQUEsc0JBQXNCLE9BQUE7QUFDL0IsNkNBQTJEO0FBQWxELHlIQUFBLDBCQUEwQixPQUFBO0FBQ25DLDJDQUF3RDtBQUEvQyxzSEFBQSx3QkFBd0IsT0FBQTtBQUNqQyx1Q0FBcUQ7QUFBNUMsbUhBQUEsdUJBQXVCLE9BQUE7QUFDaEMsbUNBQWtEO0FBQXpDLGdIQUFBLHNCQUFzQixPQUFBO0FBQy9CLG1DQUFpRDtBQUF4QywrR0FBQSxxQkFBcUIsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHJlZ2lzdGVyQXV0aENvbW1hbmRzIH0gZnJvbSAnLi9hdXRoJztcbmV4cG9ydCB7IHJlZ2lzdGVyTmV0d29ya0NvbW1hbmRzIH0gZnJvbSAnLi9uZXR3b3Jrcyc7XG5leHBvcnQgeyByZWdpc3RlclByb2ZpbGVDb21tYW5kcyB9IGZyb20gJy4vcHJvZmlsZSc7XG5leHBvcnQgeyByZWdpc3RlckNvbnZlcnNhdGlvbkNvbW1hbmRzIH0gZnJvbSAnLi9jb252ZXJzYXRpb25zJztcbmV4cG9ydCB7IHJlZ2lzdGVyTWVzc2FnZUNvbW1hbmRzIH0gZnJvbSAnLi9tZXNzYWdlcyc7XG5leHBvcnQgeyByZWdpc3RlckNvbmZpZ0NvbW1hbmRzIH0gZnJvbSAnLi9jb25maWcnO1xuZXhwb3J0IHsgcmVnaXN0ZXJDb25uZWN0aW9uQ29tbWFuZHMgfSBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmV4cG9ydCB7IHJlZ2lzdGVySWRlbnRpdHlDb21tYW5kcyB9IGZyb20gJy4vaWRlbnRpdGllcyc7XG5leHBvcnQgeyByZWdpc3RlckNvbnRhY3RDb21tYW5kcyB9IGZyb20gJy4vY29udGFjdHMnO1xuZXhwb3J0IHsgcmVnaXN0ZXJIdW1hbnNDb21tYW5kcyB9IGZyb20gJy4vaHVtYW5zJztcbmV4cG9ydCB7IHJlZ2lzdGVyRXJyb3JDb21tYW5kcyB9IGZyb20gJy4vZXJyb3JzJztcbiJdfQ==
|