@leemour/max-cli 0.15.0 → 0.17.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 +56 -37
- package/dist/bot/client.d.ts +6 -0
- package/dist/bot/client.d.ts.map +1 -1
- package/dist/bot/client.js +17 -3
- package/dist/bot/client.js.map +1 -1
- package/dist/bot/input.d.ts.map +1 -1
- package/dist/bot/input.js +7 -4
- package/dist/bot/input.js.map +1 -1
- package/dist/bot/joins.d.ts +26 -0
- package/dist/bot/joins.d.ts.map +1 -0
- package/dist/bot/joins.js +56 -0
- package/dist/bot/joins.js.map +1 -0
- package/dist/bot/keep.d.ts +2 -2
- package/dist/bot/keep.d.ts.map +1 -1
- package/dist/bot/keep.js +3 -2
- package/dist/bot/keep.js.map +1 -1
- package/dist/bot/map.d.ts +5 -2
- package/dist/bot/map.d.ts.map +1 -1
- package/dist/bot/map.js +7 -1
- package/dist/bot/map.js.map +1 -1
- package/dist/bot/transport.d.ts +4 -0
- package/dist/bot/transport.d.ts.map +1 -1
- package/dist/bot/transport.js +43 -3
- package/dist/bot/transport.js.map +1 -1
- package/dist/bot-mcp/instructions.d.ts +9 -0
- package/dist/bot-mcp/instructions.d.ts.map +1 -0
- package/dist/bot-mcp/instructions.js +22 -0
- package/dist/bot-mcp/instructions.js.map +1 -0
- package/dist/bot-mcp/server.d.ts +21 -0
- package/dist/bot-mcp/server.d.ts.map +1 -0
- package/dist/bot-mcp/server.js +213 -0
- package/dist/bot-mcp/server.js.map +1 -0
- package/dist/bot-mcp/tools.d.ts +27 -0
- package/dist/bot-mcp/tools.d.ts.map +1 -0
- package/dist/bot-mcp/tools.js +280 -0
- package/dist/bot-mcp/tools.js.map +1 -0
- package/dist/client.d.ts +43 -10
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +207 -31
- package/dist/client.js.map +1 -1
- package/dist/commands/account.d.ts.map +1 -1
- package/dist/commands/account.js +7 -5
- package/dist/commands/account.js.map +1 -1
- package/dist/commands/backup.js +1 -1
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/bot-check.d.ts +11 -0
- package/dist/commands/bot-check.d.ts.map +1 -0
- package/dist/commands/bot-check.js +206 -0
- package/dist/commands/bot-check.js.map +1 -0
- package/dist/commands/bot-comments.d.ts.map +1 -1
- package/dist/commands/bot-comments.js +2 -1
- package/dist/commands/bot-comments.js.map +1 -1
- package/dist/commands/bot-context.d.ts +7 -0
- package/dist/commands/bot-context.d.ts.map +1 -1
- package/dist/commands/bot-context.js +32 -2
- package/dist/commands/bot-context.js.map +1 -1
- package/dist/commands/bot-mcp.d.ts +3 -0
- package/dist/commands/bot-mcp.d.ts.map +1 -0
- package/dist/commands/bot-mcp.js +69 -0
- package/dist/commands/bot-mcp.js.map +1 -0
- package/dist/commands/bot-members.d.ts.map +1 -1
- package/dist/commands/bot-members.js +7 -4
- package/dist/commands/bot-members.js.map +1 -1
- package/dist/commands/bot-people.d.ts +10 -0
- package/dist/commands/bot-people.d.ts.map +1 -0
- package/dist/commands/bot-people.js +156 -0
- package/dist/commands/bot-people.js.map +1 -0
- package/dist/commands/bot-reads.d.ts.map +1 -1
- package/dist/commands/bot-reads.js +25 -14
- package/dist/commands/bot-reads.js.map +1 -1
- package/dist/commands/bot-sends.d.ts.map +1 -1
- package/dist/commands/bot-sends.js +6 -5
- package/dist/commands/bot-sends.js.map +1 -1
- package/dist/commands/bot-setup.d.ts.map +1 -1
- package/dist/commands/bot-setup.js +5 -4
- package/dist/commands/bot-setup.js.map +1 -1
- package/dist/commands/bot-updates.d.ts.map +1 -1
- package/dist/commands/bot-updates.js +16 -2
- package/dist/commands/bot-updates.js.map +1 -1
- package/dist/commands/bot.d.ts.map +1 -1
- package/dist/commands/bot.js +13 -4
- package/dist/commands/bot.js.map +1 -1
- package/dist/commands/chats.d.ts.map +1 -1
- package/dist/commands/chats.js +15 -30
- package/dist/commands/chats.js.map +1 -1
- package/dist/commands/check.d.ts.map +1 -1
- package/dist/commands/check.js +7 -6
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/complete.d.ts.map +1 -1
- package/dist/commands/complete.js +27 -3
- package/dist/commands/complete.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +29 -27
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/contacts.d.ts.map +1 -1
- package/dist/commands/contacts.js +21 -0
- package/dist/commands/contacts.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +75 -21
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/export.js +1 -1
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/folders.d.ts.map +1 -1
- package/dist/commands/folders.js +3 -2
- package/dist/commands/folders.js.map +1 -1
- package/dist/commands/inbox.d.ts.map +1 -1
- package/dist/commands/inbox.js +1 -1
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/messages.d.ts.map +1 -1
- package/dist/commands/messages.js +9 -11
- package/dist/commands/messages.js.map +1 -1
- package/dist/commands/models.d.ts.map +1 -1
- package/dist/commands/models.js +2 -1
- package/dist/commands/models.js.map +1 -1
- package/dist/commands/paging.d.ts +17 -1
- package/dist/commands/paging.d.ts.map +1 -1
- package/dist/commands/paging.js +22 -2
- package/dist/commands/paging.js.map +1 -1
- package/dist/commands/polls.d.ts +3 -0
- package/dist/commands/polls.d.ts.map +1 -0
- package/dist/commands/polls.js +103 -0
- package/dist/commands/polls.js.map +1 -0
- package/dist/commands/recipients.d.ts.map +1 -1
- package/dist/commands/recipients.js +3 -2
- package/dist/commands/recipients.js.map +1 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +1 -1
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/runs.d.ts.map +1 -1
- package/dist/commands/runs.js +4 -3
- package/dist/commands/runs.js.map +1 -1
- package/dist/commands/sends.d.ts.map +1 -1
- package/dist/commands/sends.js +3 -2
- package/dist/commands/sends.js.map +1 -1
- package/dist/config.d.ts +78 -7
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +143 -72
- package/dist/config.js.map +1 -1
- package/dist/diagnose.d.ts +47 -1
- package/dist/diagnose.d.ts.map +1 -1
- package/dist/diagnose.js +56 -5
- package/dist/diagnose.js.map +1 -1
- package/dist/domain/map.d.ts +9 -1
- package/dist/domain/map.d.ts.map +1 -1
- package/dist/domain/map.js +57 -0
- package/dist/domain/map.js.map +1 -1
- package/dist/domain/models.d.ts +29 -0
- package/dist/domain/models.d.ts.map +1 -1
- package/dist/domain/models.js.map +1 -1
- package/dist/export.d.ts.map +1 -1
- package/dist/export.js +2 -1
- package/dist/export.js.map +1 -1
- package/dist/generated/client.generated.d.ts +1 -0
- package/dist/generated/client.generated.d.ts.map +1 -1
- package/dist/generated/client.generated.js +1 -0
- package/dist/generated/client.generated.js.map +1 -1
- package/dist/generated/opcodes.generated.d.ts +1 -0
- package/dist/generated/opcodes.generated.d.ts.map +1 -1
- package/dist/generated/opcodes.generated.js +1 -0
- package/dist/generated/opcodes.generated.js.map +1 -1
- package/dist/generated/operations.generated.d.ts +25 -10
- package/dist/generated/operations.generated.d.ts.map +1 -1
- package/dist/generated/operations.generated.js +2 -1
- package/dist/generated/operations.generated.js.map +1 -1
- package/dist/mcp/confirm.d.ts +6 -2
- package/dist/mcp/confirm.d.ts.map +1 -1
- package/dist/mcp/confirm.js +2 -2
- package/dist/mcp/confirm.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +83 -17
- package/dist/mcp/tools.js.map +1 -1
- package/dist/moderation/check.d.ts +15 -9
- package/dist/moderation/check.d.ts.map +1 -1
- package/dist/moderation/check.js +14 -45
- package/dist/moderation/check.js.map +1 -1
- package/dist/moderation/rules.d.ts +57 -7
- package/dist/moderation/rules.d.ts.map +1 -1
- package/dist/moderation/rules.js +13 -11
- package/dist/moderation/rules.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +11 -3
- package/dist/program.js.map +1 -1
- package/dist/rendering/messages.d.ts +6 -1
- package/dist/rendering/messages.d.ts.map +1 -1
- package/dist/rendering/messages.js +24 -3
- package/dist/rendering/messages.js.map +1 -1
- package/dist/runs/events.d.ts +5 -2
- package/dist/runs/events.d.ts.map +1 -1
- package/dist/runs/events.js +4 -1
- package/dist/runs/events.js.map +1 -1
- package/dist/runs/recording.d.ts +11 -0
- package/dist/runs/recording.d.ts.map +1 -1
- package/dist/runs/recording.js +28 -12
- package/dist/runs/recording.js.map +1 -1
- package/dist/sends/guard.d.ts +2 -2
- package/dist/sends/guard.d.ts.map +1 -1
- package/dist/sends/guard.js +2 -1
- package/dist/sends/guard.js.map +1 -1
- package/dist/sends/journal.d.ts +2 -2
- package/dist/sends/journal.d.ts.map +1 -1
- package/dist/sends/journal.js.map +1 -1
- package/dist/sends/permissions.d.ts.map +1 -1
- package/dist/sends/permissions.js +3 -0
- package/dist/sends/permissions.js.map +1 -1
- package/dist/server/server-connection.d.ts +8 -1
- package/dist/server/server-connection.d.ts.map +1 -1
- package/dist/server/server-connection.js +27 -1
- package/dist/server/server-connection.js.map +1 -1
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +7 -1
- package/dist/server/server.js.map +1 -1
- package/dist/server/start.d.ts +1 -1
- package/dist/server/start.d.ts.map +1 -1
- package/dist/server/start.js +5 -3
- package/dist/server/start.js.map +1 -1
- package/dist/session/store.d.ts +2 -0
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +5 -1
- package/dist/session/store.js.map +1 -1
- package/dist/spec/index.d.ts.map +1 -1
- package/dist/spec/index.js +2 -1
- package/dist/spec/index.js.map +1 -1
- package/dist/spec/operations/account.d.ts +3 -0
- package/dist/spec/operations/account.d.ts.map +1 -1
- package/dist/spec/operations/account.js +5 -1
- package/dist/spec/operations/account.js.map +1 -1
- package/dist/spec/operations/chats.d.ts +4 -3
- package/dist/spec/operations/chats.d.ts.map +1 -1
- package/dist/spec/operations/chats.js +12 -7
- package/dist/spec/operations/chats.js.map +1 -1
- package/dist/spec/operations/contacts.d.ts +8 -3
- package/dist/spec/operations/contacts.d.ts.map +1 -1
- package/dist/spec/operations/contacts.js +26 -5
- package/dist/spec/operations/contacts.js.map +1 -1
- package/dist/spec/operations/folders.d.ts.map +1 -1
- package/dist/spec/operations/folders.js +1 -0
- package/dist/spec/operations/folders.js.map +1 -1
- package/dist/spec/operations/messages.d.ts +14 -4
- package/dist/spec/operations/messages.d.ts.map +1 -1
- package/dist/spec/operations/messages.js +30 -3
- package/dist/spec/operations/messages.js.map +1 -1
- package/dist/spec/operations/uploads.d.ts +1 -1
- package/dist/spec/operations/uploads.d.ts.map +1 -1
- package/dist/spec/operations/uploads.js +2 -1
- package/dist/spec/operations/uploads.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +5 -2
- package/skills/max-cli/SKILL.md +19 -9
package/dist/commands/bot.js
CHANGED
|
@@ -8,13 +8,16 @@ import { registryProfiles } from "../bot/registry.js";
|
|
|
8
8
|
import { plainJson } from "../bot/transport.js";
|
|
9
9
|
import { configuredProfiles } from "../config.js";
|
|
10
10
|
import { callbacksCommand, commentsCommand } from "./bot-comments.js";
|
|
11
|
-
import { assertAllowed, botContext } from "./bot-context.js";
|
|
11
|
+
import { assertAllowed, botContext, botRecordingOf, startBotRecording } from "./bot-context.js";
|
|
12
|
+
import { botMcpCommand } from "./bot-mcp.js";
|
|
12
13
|
import { adminsCommand, membersCommand } from "./bot-members.js";
|
|
14
|
+
import { peopleCommand } from "./bot-people.js";
|
|
13
15
|
import { chatsCommand, messagesCommand } from "./bot-reads.js";
|
|
14
16
|
import { guardedCall, recipientsCommand, sendsCommand } from "./bot-sends.js";
|
|
15
17
|
import { menuCommand, uploadsCommand, webhooksCommand } from "./bot-setup.js";
|
|
16
18
|
import { updatesCommand } from "./bot-updates.js";
|
|
17
19
|
import { environmentOf } from "./context.js";
|
|
20
|
+
import { renderList } from "./paging.js";
|
|
18
21
|
const apiCommand = (operation) => {
|
|
19
22
|
const binding = operation.binding.kind === "http" ? `${operation.binding.method} ${operation.binding.path}` : operation.id;
|
|
20
23
|
const command = new Command(operation.command).description(`${operation.summary ?? operation.id} — ${operation.effect} (${binding})`);
|
|
@@ -42,7 +45,8 @@ const apiCommand = (operation) => {
|
|
|
42
45
|
else if (parameter.in === "query")
|
|
43
46
|
input.query[parameter.name] = raw;
|
|
44
47
|
}
|
|
45
|
-
|
|
48
|
+
// The operation's own flags (`--limit` of get-updates) are MAX's parameters, not this program's settings.
|
|
49
|
+
const context = botContext(this.parent ?? this);
|
|
46
50
|
if (operation.effect !== "read")
|
|
47
51
|
assertAllowed(operation, context.settings);
|
|
48
52
|
const body = checkBody(operation, readBody(options));
|
|
@@ -52,6 +56,9 @@ const apiCommand = (operation) => {
|
|
|
52
56
|
};
|
|
53
57
|
export const botCommand = () => {
|
|
54
58
|
const command = new Command("bot").description("a MAX bot, through the official Bot API and a bot token — not your personal account");
|
|
59
|
+
command
|
|
60
|
+
.hook("preAction", (_group, action) => startBotRecording(action))
|
|
61
|
+
.hook("postAction", async (_group, action) => botRecordingOf(action)?.succeed());
|
|
55
62
|
const auth = new Command("auth").description("the bot token this profile uses");
|
|
56
63
|
auth
|
|
57
64
|
.command("set")
|
|
@@ -110,7 +117,7 @@ export const botCommand = () => {
|
|
|
110
117
|
.description("every name on this machine that has a bot token; --check asks MAX which bot each is")
|
|
111
118
|
.option("--check", "ask MAX who each bot is")
|
|
112
119
|
.action(async function () {
|
|
113
|
-
const { renderer, streams } = botContext(this);
|
|
120
|
+
const { renderer, format, streams } = botContext(this);
|
|
114
121
|
const check = this.opts().check === true;
|
|
115
122
|
const environment = environmentOf(this);
|
|
116
123
|
const names = [...new Set(["default", ...configuredProfiles(), ...registryProfiles()])].sort();
|
|
@@ -134,10 +141,11 @@ export const botCommand = () => {
|
|
|
134
141
|
}
|
|
135
142
|
rows.push(row);
|
|
136
143
|
}
|
|
137
|
-
renderer
|
|
144
|
+
renderList(renderer, format, rows);
|
|
138
145
|
});
|
|
139
146
|
command.addCommand(messagesCommand());
|
|
140
147
|
command.addCommand(chatsCommand());
|
|
148
|
+
command.addCommand(peopleCommand());
|
|
141
149
|
command.addCommand(recipientsCommand());
|
|
142
150
|
command.addCommand(sendsCommand());
|
|
143
151
|
for (const more of [
|
|
@@ -149,6 +157,7 @@ export const botCommand = () => {
|
|
|
149
157
|
uploadsCommand(),
|
|
150
158
|
webhooksCommand(),
|
|
151
159
|
updatesCommand(),
|
|
160
|
+
botMcpCommand(),
|
|
152
161
|
])
|
|
153
162
|
command.addCommand(more);
|
|
154
163
|
const api = new Command("api").description("every operation of the official Bot API, generated from its schema — docs/dev/bot-api-coverage.md");
|
package/dist/commands/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/commands/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAkB,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/commands/bot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAkB,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAC/F,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7E,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,MAAM,UAAU,GAAG,CAAC,SAA4B,EAAW,EAAE;IAC3D,MAAM,OAAO,GACX,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAA;IAC5G,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,WAAW,CACxD,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,EAAE,MAAM,SAAS,CAAC,MAAM,KAAK,OAAO,GAAG,CAC1E,CAAA;IACD,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,KAAK,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EACrC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CACxD,CAAA;QACD,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC/E,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;QACtB,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,iDAAiD,CAAC,CAAA;QAClF,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,+CAA+C,CAAC,CAAA;IACvF,CAAC;IACD,QAAQ,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC,CAAA;IAC3G,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAsC,CAAA;QAC/D,MAAM,KAAK,GAAoE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;QACtG,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;YAC9C,IAAI,GAAG,KAAK,SAAS;gBAAE,SAAQ;YAC/B,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YACrE,IAAI,OAAO;gBAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;YAC5D,IAAI,SAAS,CAAC,EAAE,KAAK,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;iBACxD,IAAI,SAAS,CAAC,EAAE,KAAK,OAAO;gBAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAA;QACtE,CAAC;QACD,0GAA0G;QAC1G,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,CAAA;QAC/C,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM;YAAE,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC3E,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;QACpD,MAAM,IAAI,GAAc,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAA;QACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,GAAY,EAAE;IACtC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAC5C,qFAAqF,CACtF,CAAA;IACD,OAAO;SACJ,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;SAChE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAElF,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,iCAAiC,CAAC,CAAA;IAE/E,IAAI;SACD,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,uFAAuF,CAAC;SACpG,MAAM,CAAC,KAAK;QACX,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAC5E,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACjE,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAA;QACpE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAA;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACjC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;QACjC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,UAAU,CAAC,8EAA8E,CAAC,CAAA;QACpG,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,GAAG,CAAC,UAAU;YACnB,EAAE,EAAE,GAAG,CAAC,OAAO;YACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,IAAI;SACD,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,gEAAgE,CAAC;SAC7E,MAAM,CAAC,KAAK;QACX,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACrE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,CAAA;QACnC,MAAM,GAAG,GAAG,MAAM,aAAa,EAAE,CAAC,EAAE,EAAE,CAAA;QACtC,QAAQ,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,MAAM;YACN,GAAG,EAAE,GAAG,CAAC,UAAU;YACnB,EAAE,EAAE,GAAG,CAAC,OAAO;YACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,IAAI;SACD,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,iCAAiC,CAAC;SAC9C,MAAM,CAAC;QACN,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACtD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACzE,CAAC,CAAC,CAAA;IAEJ,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAExB,OAAO;SACJ,OAAO,CAAC,IAAI,CAAC;SACb,WAAW,CAAC,0EAA0E,CAAC;SACvF,MAAM,CAAC,KAAK;QACX,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACpD,QAAQ,CAAC,MAAM,CAAC,MAAM,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,qFAAqF,CAAC;SAClG,MAAM,CAAC,SAAS,EAAE,yBAAyB,CAAC;SAC5C,MAAM,CAAC,KAAK;QACX,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAuB,CAAC,KAAK,KAAK,IAAI,CAAA;QAC7D,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,kBAAkB,EAAE,EAAE,GAAG,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC9F,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa;YAAE,OAAO,CAAC,UAAU,CAAC,yDAAyD,CAAC,CAAA;QAC5G,MAAM,IAAI,GAAG,EAAE,CAAA;QACf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YAClF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YAC3B,IAAI,CAAC,MAAM;gBAAE,SAAQ;YACrB,MAAM,GAAG,GAA4B,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAA;YACnE,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAA;oBAC5D,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;gBAC9E,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,GAAG,CAAC,OAAO,GAAI,KAA2B,CAAC,IAAI,IAAI,QAAQ,CAAA;gBAC7D,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;QACD,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEJ,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAA;IACrC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAClC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAA;IACnC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;IACvC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAClC,KAAK,MAAM,IAAI,IAAI;QACjB,cAAc,EAAE;QAChB,aAAa,EAAE;QACf,eAAe,EAAE;QACjB,gBAAgB,EAAE;QAClB,WAAW,EAAE;QACb,cAAc,EAAE;QAChB,eAAe,EAAE;QACjB,cAAc,EAAE;QAChB,aAAa,EAAE;KAChB;QACC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAE1B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CACxC,mGAAmG,CACpG,CAAA;IACD,KAAK,MAAM,SAAS,IAAI,aAAa;QAAE,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;IAC5E,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IAEvB,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/commands/chats.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC,eAAO,MAAM,YAAY,QAAO,
|
|
1
|
+
{"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/commands/chats.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC,eAAO,MAAM,YAAY,QAAO,OAkQ/B,CAAA"}
|
package/dist/commands/chats.js
CHANGED
|
@@ -6,7 +6,7 @@ import { ADMIN_RIGHTS, EVENTS_DAYS } from "../client.js";
|
|
|
6
6
|
import { checkCommand } from "./check.js";
|
|
7
7
|
import { forCommand } from "./context.js";
|
|
8
8
|
import { foldersCommand } from "./folders.js";
|
|
9
|
-
import { renderPage, window, withPaging } from "./paging.js";
|
|
9
|
+
import { renderList, renderPage, window, withPaging } from "./paging.js";
|
|
10
10
|
import { rulesCommand } from "./rules.js";
|
|
11
11
|
export const chatsCommand = () => {
|
|
12
12
|
const command = new Command("chats").description("the chats this account is in");
|
|
@@ -56,7 +56,7 @@ export const chatsCommand = () => {
|
|
|
56
56
|
command
|
|
57
57
|
.command("events")
|
|
58
58
|
.argument("<chat>", "chat id, or part of a chat name")
|
|
59
|
-
.option("--since <id-or-time>", `from this message id
|
|
59
|
+
.option("--since <id-or-time>", `from this message id, ISO 8601 time, or 2h / 1d ago; ${EVENTS_DAYS} days ago if not given`)
|
|
60
60
|
.option("--event <names>", "only these, comma-separated, as MAX names them: new, add, remove, pin…")
|
|
61
61
|
.description("who joined, left, was added or removed, and by whom — from the chat's service messages")
|
|
62
62
|
.action(async function (chat) {
|
|
@@ -73,8 +73,9 @@ export const chatsCommand = () => {
|
|
|
73
73
|
try {
|
|
74
74
|
const found = await client.chats.events(chat, options.since === undefined ? {} : { since: client.messages.moment(String(options.since), "--since") });
|
|
75
75
|
const kept = only ? { ...found, events: found.events.filter((one) => only.has(one.event)) } : found;
|
|
76
|
-
if (format !== "pretty")
|
|
77
|
-
renderer.
|
|
76
|
+
if (format !== "pretty") {
|
|
77
|
+
renderList(renderer, format, kept.events, { hasMore: kept.more, chatId: kept.chatId, since: kept.since });
|
|
78
|
+
}
|
|
78
79
|
else {
|
|
79
80
|
renderer.stream(kept.events.map((one) => ({
|
|
80
81
|
time: one.timestamp,
|
|
@@ -122,9 +123,11 @@ export const chatsCommand = () => {
|
|
|
122
123
|
annotate(command.command("create"), { mutates: true })
|
|
123
124
|
.argument("<title>", "the group's name")
|
|
124
125
|
.argument("[person...]", "people to add: an id, or part of a name")
|
|
125
|
-
.
|
|
126
|
+
.option("--channel", "a private channel instead of a group; people join it by its link")
|
|
127
|
+
.description("create a group or a channel; the people added are told")
|
|
126
128
|
.action(async function (title, people) {
|
|
127
|
-
|
|
129
|
+
const channel = this.opts().channel === true;
|
|
130
|
+
await withClient(this, "chats create", (client) => client.chats.create(title, people, { channel }));
|
|
128
131
|
});
|
|
129
132
|
const members = command.command("members").description("who is in a group or channel; add or remove people");
|
|
130
133
|
members
|
|
@@ -132,12 +135,16 @@ export const chatsCommand = () => {
|
|
|
132
135
|
.argument("<chat>", "chat id, or part of a chat name")
|
|
133
136
|
.description("everyone in a group or channel, from MAX: when their account was made and when they were last seen")
|
|
134
137
|
.action(async function (chat) {
|
|
135
|
-
const { renderer, createClient, run } = forCommand(this);
|
|
138
|
+
const { renderer, format, createClient, run } = forCommand(this);
|
|
136
139
|
await run("chats members list", async (events) => {
|
|
137
140
|
const client = createClient({ events });
|
|
138
141
|
try {
|
|
139
142
|
const found = await client.chats.members.list(chat);
|
|
140
|
-
renderer
|
|
143
|
+
renderList(renderer, format, found.members, {
|
|
144
|
+
hasMore: !found.complete,
|
|
145
|
+
chatId: found.chatId,
|
|
146
|
+
rolesKnown: found.rolesKnown,
|
|
147
|
+
});
|
|
141
148
|
if (!found.complete)
|
|
142
149
|
renderer.note(`only the first ${found.members.length} members were read`);
|
|
143
150
|
if (!found.rolesKnown)
|
|
@@ -202,28 +209,6 @@ export const chatsCommand = () => {
|
|
|
202
209
|
const changes = settingChanges(this.opts());
|
|
203
210
|
await withClient(this, "chats settings", (client) => client.chats.settings(chat, changes));
|
|
204
211
|
});
|
|
205
|
-
const requests = command.command("requests").description("people asking to join a group or channel");
|
|
206
|
-
requests
|
|
207
|
-
.command("list")
|
|
208
|
-
.argument("<chat>", "chat id, or part of a chat name")
|
|
209
|
-
.description("who is asking to join")
|
|
210
|
-
.action(async function (chat) {
|
|
211
|
-
await withClient(this, "chats requests list", (client) => client.chats.requests.list(chat));
|
|
212
|
-
});
|
|
213
|
-
annotate(requests.command("accept"), { mutates: true })
|
|
214
|
-
.argument("<chat>", "chat id, or part of a chat name")
|
|
215
|
-
.argument("<person...>", "an id from `requests list`")
|
|
216
|
-
.description("let them in")
|
|
217
|
-
.action(async function (chat, people) {
|
|
218
|
-
await withClient(this, "chats requests accept", (client) => client.chats.requests.accept(chat, people));
|
|
219
|
-
});
|
|
220
|
-
annotate(requests.command("decline"), { mutates: true })
|
|
221
|
-
.argument("<chat>", "chat id, or part of a chat name")
|
|
222
|
-
.argument("<person...>", "an id from `requests list`")
|
|
223
|
-
.description("turn them down")
|
|
224
|
-
.action(async function (chat, people) {
|
|
225
|
-
await withClient(this, "chats requests decline", (client) => client.chats.requests.decline(chat, people));
|
|
226
|
-
});
|
|
227
212
|
const link = command.command("link").description("a group's invite link");
|
|
228
213
|
link
|
|
229
214
|
.command("show")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/commands/chats.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAmB,WAAW,EAAkB,MAAM,cAAc,CAAA;AAEzF,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAG,GAAY,EAAE;IACxC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,8BAA8B,CAAC,CAAA;IAEhF,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,8BAA8B,CAAC,CAAC;SAC5E,MAAM,CAAC,iBAAiB,EAAE,4DAA4D,CAAC;SACvF,MAAM,CAAC,+BAA+B,EAAE,yBAAyB,CAAC;SAClE,MAAM,CAAC,UAAU,EAAE,iCAAiC,CAAC;SACrD,MAAM,CAAC,KAAK;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACtC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAChC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,OAAO,CAAA;QACzD,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAE1G,MAAM,GAAG,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YAEpE,IAAI,CAAC;gBACH,UAAU,CACR,OAAO,EACP,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;oBACtB,GAAG,MAAM,CAAC,QAAQ,CAAC;oBACnB,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1E,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACvE,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrD,CAAC,CACH,CAAA;YACH,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;gBACpB,KAAK,EAAE,KAAK,EAAE,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,sEAAsE,CAAC;SACnF,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAClE,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAE1G,MAAM,GAAG,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACvC,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YAEpE,IAAI,CAAC;gBACH,QAAQ,CAAC,MAAM,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAChD,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;gBACpB,KAAK,EAAE,KAAK,EAAE,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,MAAM,CAAC,sBAAsB,EAAE,0CAA0C,WAAW,wBAAwB,CAAC;SAC7G,MAAM,CAAC,iBAAiB,EAAE,wEAAwE,CAAC;SACnG,WAAW,CAAC,wFAAwF,CAAC;SACrG,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAA;QACtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAC1E,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC1G,MAAM,IAAI,GACR,OAAO,CAAC,KAAK,KAAK,SAAS;YACzB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,IAAI,GAAG,CACL,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;iBAClB,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CACxB,CAAA;QAEP,MAAM,GAAG,CAAC,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YACpE,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CACrC,IAAI,EACJ,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,EAAE,CACvG,CAAA;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;gBAEnG,IAAI,MAAM,KAAK,QAAQ;oBAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;qBACzC,CAAC;oBACJ,QAAQ,CAAC,MAAM,CACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBACxB,IAAI,EAAE,GAAG,CAAC,SAAS;wBACnB,KAAK,EAAE,GAAG,CAAC,KAAK;wBAChB,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE;wBAC5B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBACxE,CAAC,CAAC,CACJ,CAAA;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI;oBAAE,QAAQ,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAA;YAC7G,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;gBACpB,KAAK,EAAE,KAAK,EAAE,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,QAAQ,CAAC,QAAQ,EAAE,+EAA+E,CAAC;SACnG,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACjD,QAAQ,CAAC,QAAQ,EAAE,+EAA+E,CAAC;SACnG,WAAW,CAAC,2EAA2E,CAAC;SACxF,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACjD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,0DAA0D,CAAC;SACvE,MAAM,CAAC,mBAAmB,EAAE,8DAA8D,CAAC;SAC3F,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAA;QAC/B,MAAM,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CACpD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAChH,CAAA;IACH,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAClD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,8DAA8D,CAAC;SAC3E,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAC7E,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACnD,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;SACvC,QAAQ,CAAC,aAAa,EAAE,yCAAyC,CAAC;SAClE,WAAW,CAAC,2CAA2C,CAAC;SACxD,MAAM,CAAC,KAAK,WAA0B,KAAa,EAAE,MAAgB;QACpE,MAAM,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;IAEJ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,oDAAoD,CAAC,CAAA;IAC5G,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,oGAAoG,CAAC;SACjH,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QACxD,MAAM,GAAG,CAAC,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACvC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACnD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ;oBAAE,QAAQ,CAAC,IAAI,CAAC,kBAAkB,KAAK,CAAC,OAAO,CAAC,MAAM,oBAAoB,CAAC,CAAA;gBAC9F,IAAI,CAAC,KAAK,CAAC,UAAU;oBAAE,QAAQ,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAA;YAChH,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;YACtB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAChD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,aAAa,EAAE,0BAA0B,CAAC;SACnD,MAAM,CAAC,WAAW,EAAE,8DAA8D,CAAC;SACnF,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAgB;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,KAAK,IAAI,CAAA;QAC5C,MAAM,UAAU,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAC9G,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACnD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,aAAa,EAAE,0BAA0B,CAAC;SACnD,WAAW,CAAC,oCAAoC,CAAC;SACjD,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAgB;QACnE,MAAM,UAAU,CAAC,IAAI,EAAE,sBAAsB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IACvG,CAAC,CAAC,CAAA;IAEJ,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,2CAA2C,CAAC,CAAA;IACjG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAC/C,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;SAChD,cAAc,CAAC,gBAAgB,EAAE,sCAAsC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;SAC9G,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAc;QACjE,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;QACnD,MAAM,UAAU,CAAC,IAAI,EAAE,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACvG,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAClD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;SAChD,WAAW,CAAC,iDAAiD,CAAC;SAC9D,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAc;QACjE,MAAM,UAAU,CAAC,IAAI,EAAE,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IACrG,CAAC,CAAC,CAAA;IAEJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACnD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,MAAM,CAAC,iBAAiB,EAAE,cAAc,CAAC;SACzC,MAAM,CAAC,sBAAsB,EAAE,qBAAqB,CAAC;SACrD,WAAW,CAAC,sDAAsD,CAAC;SACnE,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,IAAI,EAA8C,CAAA;QACtF,MAAM,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAChD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;YACxB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;YACzC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;SACtD,CAAC,CACH,CAAA;IACH,CAAC,CAAC,CAAA;IAEJ,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAC7E,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,qDAAqD,CAAC,CAAA;IACrE,KAAK,MAAM,CAAC,IAAI,EAAE,AAAD,EAAG,IAAI,CAAC,IAAI,QAAQ;QAAE,eAAe,CAAC,MAAM,CAAC,KAAK,IAAI,WAAW,EAAE,IAAI,CAAC,CAAA;IACzF,eAAe,CAAC,MAAM,CAAC,KAAK,WAA0B,IAAY;QAChE,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3C,MAAM,UAAU,CAAC,IAAI,EAAE,gBAAgB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;IAC5F,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,0CAA0C,CAAC,CAAA;IACpG,QAAQ;SACL,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACpD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,aAAa,EAAE,4BAA4B,CAAC;SACrD,WAAW,CAAC,aAAa,CAAC;SAC1B,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAgB;QACnE,MAAM,UAAU,CAAC,IAAI,EAAE,uBAAuB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IACzG,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SACrD,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,QAAQ,CAAC,aAAa,EAAE,4BAA4B,CAAC;SACrD,WAAW,CAAC,gBAAgB,CAAC;SAC7B,MAAM,CAAC,KAAK,WAA0B,IAAY,EAAE,MAAgB;QACnE,MAAM,UAAU,CAAC,IAAI,EAAE,wBAAwB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;IAC3G,CAAC,CAAC,CAAA;IAEJ,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAA;IACzE,IAAI;SACD,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,oCAAoC,CAAC;SACjD,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACzD,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACtE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,MAAM,IAAI,QAAQ,CAChB,WAAW,EACX,GAAG,KAAK,IAAI,EAAE,8EAA8E,CAC7F,CAAA;YACH,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC7C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;SAC/C,QAAQ,CAAC,QAAQ,EAAE,iCAAiC,CAAC;SACrD,WAAW,CAAC,oDAAoD,CAAC;SACjE,MAAM,CAAC,KAAK,WAA0B,IAAY;QACjD,MAAM,UAAU,CAAC,IAAI,EAAE,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IACtF,CAAC,CAAC,CAAA;IACJ,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAA;IACpC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAClC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAElC,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,KAAK,EAAE,OAAgB,EAAE,KAAa,EAAE,GAA4C,EAAE,EAAE;IACzG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IACrE,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAE1G,MAAM,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACpE,IAAI,CAAC;YACH,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACpC,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;YACpB,KAAK,EAAE,KAAK,EAAE,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,QAAQ,GAA6D;IACzE,CAAC,aAAa,EAAE,WAAW,EAAE,+BAA+B,CAAC;IAC7D,CAAC,iBAAiB,EAAE,eAAe,EAAE,6BAA6B,CAAC;IACnE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,8BAA8B,CAAC;IACtE,CAAC,uBAAuB,EAAE,oBAAoB,EAAE,8CAA8C,CAAC;IAC/F,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,iCAAiC,CAAC;CAC1E,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,OAAgC,EAA0B,EAAE;IAClF,MAAM,OAAO,GAA2B,EAAE,CAAA;IAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACtC,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,KAAK,IAAI,0BAA0B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC7F,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,IAAI,CAAA;IAC/B,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,KAAa,EAAgB,EAAE;IAClD,MAAM,MAAM,GAAG,KAAK;SACjB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAA;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,CAAC,CAAA;IAClE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,eAAe,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAClH,CAAA;IACH,CAAC;IACD,OAAO,MAAsB,CAAA;AAC/B,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAY,EAAE;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;IAC1C,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACpF,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,+CAA+C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACzG,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/commands/chats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC;;;;GAIG;AACH,eAAO,MAAM,YAAY,QAAO,OA6C1B,CAAA"}
|
package/dist/commands/check.js
CHANGED
|
@@ -2,8 +2,9 @@ import { CliError } from "@leemour/cli-core";
|
|
|
2
2
|
import { annotate } from "@leemour/cli-core/commands";
|
|
3
3
|
import { Command } from "commander";
|
|
4
4
|
import { openProfileCache } from "../cache/index.js";
|
|
5
|
-
import { describe, finish, MAX_ACTIONS, personal, prepare } from "../moderation/check.js";
|
|
5
|
+
import { describe, finish, MAX_ACTIONS, personal, prepare, sessionPoints } from "../moderation/check.js";
|
|
6
6
|
import { forCommand } from "./context.js";
|
|
7
|
+
import { renderList } from "./paging.js";
|
|
7
8
|
/**
|
|
8
9
|
* **The one command that acts on a group's rules** (`NEED-306`): what the owner types is the
|
|
9
10
|
* consent for what the rules name, within each action's consent level (`NEED-308`). Nothing
|
|
@@ -11,11 +12,11 @@ import { forCommand } from "./context.js";
|
|
|
11
12
|
*/
|
|
12
13
|
export const checkCommand = () => annotate(new Command("check"), { mutates: true })
|
|
13
14
|
.argument("<chat>", "chat id, or part of a chat name")
|
|
14
|
-
.option("--since <id-or-time>", "judge what came after this message id
|
|
15
|
+
.option("--since <id-or-time>", "judge what came after this message id, ISO 8601 time, or 2h / 1d ago; the saved point stays")
|
|
15
16
|
.option("--dry-run", "judge and plan; do nothing")
|
|
16
17
|
.option("--allow-dangerous", "do what a rule at consent level flag asks: delete messages, remove people")
|
|
17
18
|
.option("--max-actions <n>", `at most this many actions in one check; ${MAX_ACTIONS} if not given`)
|
|
18
|
-
.description("judge a group's new messages
|
|
19
|
+
.description("judge a group's new messages and members by its rules, and act as they allow")
|
|
19
20
|
.action(async function (chat) {
|
|
20
21
|
const options = this.optsWithGlobals();
|
|
21
22
|
const { renderer, settings, format, store, interactive, ask, createClient, run } = forCommand(this);
|
|
@@ -30,12 +31,12 @@ export const checkCommand = () => annotate(new Command("check"), { mutates: true
|
|
|
30
31
|
const client = createClient({ events, ...(cache ? { cache } : {}) });
|
|
31
32
|
try {
|
|
32
33
|
const prepared = await prepare(client, {
|
|
33
|
-
store,
|
|
34
|
+
points: sessionPoints(store),
|
|
34
35
|
profile: settings.profile,
|
|
35
36
|
chat,
|
|
36
37
|
...(options.since === undefined ? {} : { since: client.messages.moment(String(options.since), "--since") }),
|
|
37
38
|
});
|
|
38
|
-
const { rows, notes } = await finish(personal(client), store, prepared, {
|
|
39
|
+
const { rows, notes } = await finish(personal(client), sessionPoints(store), prepared, {
|
|
39
40
|
allowDangerous: options.allowDangerous === true,
|
|
40
41
|
dryRun: options.dryRun === true,
|
|
41
42
|
maxActions,
|
|
@@ -43,7 +44,7 @@ export const checkCommand = () => annotate(new Command("check"), { mutates: true
|
|
|
43
44
|
? { confirm: async (finding) => /^y(es)?$/i.test((await ask(`${describe(finding)}? [y/N] `)).trim()) }
|
|
44
45
|
: {}),
|
|
45
46
|
});
|
|
46
|
-
renderer
|
|
47
|
+
renderList(renderer, format, format === "pretty" ? rows.map(pretty) : rows);
|
|
47
48
|
for (const note of notes)
|
|
48
49
|
renderer.note(note);
|
|
49
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAiB,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/commands/check.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,QAAO,OAuC7B,CAAA"}
|
|
@@ -4,8 +4,10 @@ import { CliError, singleLine } from "@leemour/cli-core";
|
|
|
4
4
|
import { describeOptions, describeProgram } from "@leemour/cli-core/commands";
|
|
5
5
|
import { formatSuggestions, suggest } from "@leemour/cli-core/completion";
|
|
6
6
|
import { Command } from "commander";
|
|
7
|
+
import { ChatRegistry } from "../bot/registry.js";
|
|
7
8
|
import { openProfileCache, profileCacheFile } from "../cache/index.js";
|
|
8
9
|
import { configuredProfiles } from "../config.js";
|
|
10
|
+
import { knownProfiles } from "../diagnose.js";
|
|
9
11
|
import { commandWords, DEFAULT_PROFILE, liftProfile, rootOf, usableProfileName } from "../profile.js";
|
|
10
12
|
import { outputFor } from "./context.js";
|
|
11
13
|
const SHELLS = ["zsh", "bash", "fish", "powershell"];
|
|
@@ -37,13 +39,15 @@ export const completeCommand = () => new Command("complete")
|
|
|
37
39
|
}
|
|
38
40
|
// The last word is still being typed, so it is never taken for a profile: `mess` is on its way to `messages`.
|
|
39
41
|
const { profile, rest } = words.length > 1 ? liftProfile(words, commandWords(root)) : { profile: undefined, rest: words };
|
|
40
|
-
const
|
|
42
|
+
const named = profile ?? process.env.MAX_PROFILE_LOCK ?? process.env.MAX_PROFILE ?? DEFAULT_PROFILE;
|
|
43
|
+
const bot = rest[0] === "bot";
|
|
44
|
+
const cache = bot ? undefined : await readableCache(named);
|
|
41
45
|
try {
|
|
42
46
|
const suggestions = suggest({
|
|
43
47
|
commands: describeProgram(root),
|
|
44
48
|
globalOptions: describeOptions(root),
|
|
45
49
|
words: rest.length > 0 ? rest : [""],
|
|
46
|
-
sources: sourcesFrom(cache, profile === undefined),
|
|
50
|
+
sources: bot ? botSourcesFrom(named, profile === undefined) : sourcesFrom(cache, profile === undefined),
|
|
47
51
|
});
|
|
48
52
|
streams.data(formatSuggestions(suggestions));
|
|
49
53
|
}
|
|
@@ -72,6 +76,26 @@ const sourcesFrom = (cache, atTheStart) => {
|
|
|
72
76
|
...(atTheStart ? { firstWord: profileNames } : {}),
|
|
73
77
|
};
|
|
74
78
|
};
|
|
79
|
+
/** A bot's chats are the ones it has seen (`bots/<profile>.json`); the personal cache is another account's. */
|
|
80
|
+
const botSourcesFrom = (profile, atTheStart) => {
|
|
81
|
+
const chats = () => {
|
|
82
|
+
if (process.env.MAX_PROFILE_LOCK && profile !== process.env.MAX_PROFILE_LOCK)
|
|
83
|
+
return [];
|
|
84
|
+
try {
|
|
85
|
+
return new ChatRegistry(usableProfileName(profile))
|
|
86
|
+
.list()
|
|
87
|
+
.map((chat) => ({ value: chat.id, description: singleLine(chat.title ?? "") }));
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
return [];
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
return {
|
|
94
|
+
arguments: { chat: chats },
|
|
95
|
+
options: { chat: chats },
|
|
96
|
+
...(atTheStart ? { firstWord: profileNames } : {}),
|
|
97
|
+
};
|
|
98
|
+
};
|
|
75
99
|
/**
|
|
76
100
|
* **Ids only, never a title or a name as the word.** bash's `compgen -W` expands `$(…)` in every
|
|
77
101
|
* word it is given, and a title is whatever somebody else typed — so the id is the word, and the
|
|
@@ -86,7 +110,7 @@ const personSuggestions = (cache) => cache.people
|
|
|
86
110
|
.map((person) => ({ value: person.id, description: singleLine(person.name ?? "") }));
|
|
87
111
|
const profileNames = () => {
|
|
88
112
|
try {
|
|
89
|
-
return configuredProfiles();
|
|
113
|
+
return knownProfiles({ configured: configuredProfiles() }).map(({ name }) => name);
|
|
90
114
|
}
|
|
91
115
|
catch {
|
|
92
116
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAA0B,iBAAiB,EAAmB,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAClH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAmB,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACrG,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;AAEpD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAY,EAAE,CAC3C,IAAI,OAAO,CAAC,UAAU,CAAC;KACpB,WAAW,CAAC,kEAAkE,CAAC;KAC/E,QAAQ,CAAC,YAAY,CAAC;KACtB,kBAAkB,EAAE;KACpB,UAAU,CAAC,KAAK,CAAC;KACjB,MAAM,CAAC,KAAK,WAA0B,KAAe;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACzB,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAEnC,sGAAsG;IACtG,MAAM,GAAG,GAAI,IAAwC,CAAC,OAAO,CAAA;IAC7D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,8BAA8B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC5F,CAAC;QACD,uFAAuF;QACvF,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;QAC3B,OAAM;IACR,CAAC;IAED,8GAA8G;IAC9G,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GACrB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACjG,MAAM,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../src/commands/complete.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA8BnC,eAAO,MAAM,aAAa,QAAO,OAsFhC,CAAA"}
|
package/dist/commands/config.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { join } from "node:path";
|
|
3
|
-
import { CliError, pathsAreOverridden, resolvePaths } from "@leemour/cli-core";
|
|
1
|
+
import { CliError, pathsAreOverridden } from "@leemour/cli-core";
|
|
4
2
|
import { Command } from "commander";
|
|
5
|
-
import { ALL_SETTINGS, changeSetting } from "../config.js";
|
|
3
|
+
import { ALL_SETTINGS, changeSetting, PERSONAL_ONLY_SETTINGS, resolveSettings, scopePath, } from "../config.js";
|
|
4
|
+
import { knownProfiles } from "../diagnose.js";
|
|
6
5
|
import { forCommand } from "./context.js";
|
|
7
6
|
const SHOWN = [
|
|
8
7
|
"limit",
|
|
@@ -17,6 +16,7 @@ const SHOWN = [
|
|
|
17
16
|
"allow",
|
|
18
17
|
"sendsPerHour",
|
|
19
18
|
"updateCheck",
|
|
19
|
+
"transcribeModel",
|
|
20
20
|
];
|
|
21
21
|
export const configCommand = () => {
|
|
22
22
|
const command = new Command("config").description("the settings in force, and where each one came from");
|
|
@@ -27,17 +27,23 @@ export const configCommand = () => {
|
|
|
27
27
|
command
|
|
28
28
|
.command("show")
|
|
29
29
|
.description("the profile, the profiles that exist, and each setting with where it came from")
|
|
30
|
-
.
|
|
31
|
-
|
|
30
|
+
.option("--bot", "the settings a `max bot` command on this profile gets, rather than the personal account's")
|
|
31
|
+
.action(function (options) {
|
|
32
|
+
const context = forCommand(this);
|
|
33
|
+
const { renderer } = context;
|
|
34
|
+
const settings = options.bot
|
|
35
|
+
? resolveSettings(this.optsWithGlobals(), { kind: "bot" })
|
|
36
|
+
: context.settings;
|
|
32
37
|
const overridden = pathsAreOverridden({ appName: "max-cli", prefix: "MAX" });
|
|
33
38
|
renderer.result({
|
|
34
39
|
profile: settings.profile,
|
|
35
40
|
profileFrom: settings.sources.profile,
|
|
36
|
-
|
|
41
|
+
kind: settings.kind,
|
|
42
|
+
profiles: knownProfiles({ configured: settings.configuredProfiles }),
|
|
37
43
|
configFile: settings.configPath,
|
|
38
44
|
configFound: settings.configFound,
|
|
39
45
|
pathsOverridden: overridden,
|
|
40
|
-
settings: SHOWN.map((setting) => ({
|
|
46
|
+
settings: SHOWN.filter((setting) => settings.kind === "personal" || !PERSONAL_ONLY_SETTINGS.includes(setting)).map((setting) => ({
|
|
41
47
|
setting,
|
|
42
48
|
// No list is every action, and `null` would read as none.
|
|
43
49
|
value: setting === "allow" ? (settings.allow ?? "all") : (settings[setting] ?? null),
|
|
@@ -53,7 +59,9 @@ export const configCommand = () => {
|
|
|
53
59
|
const sub = command
|
|
54
60
|
.command(action)
|
|
55
61
|
.argument("<setting>", `one of: ${ALL_SETTINGS.join(", ")}`)
|
|
56
|
-
.option("--defaults", "change what every profile gets, rather than this profile")
|
|
62
|
+
.option("--defaults", "change what every profile gets, rather than this profile")
|
|
63
|
+
.option("--personal", "only for personal accounts — the personal section of the file")
|
|
64
|
+
.option("--bot", "only for bots — the bot section of the file");
|
|
57
65
|
if (action === "set")
|
|
58
66
|
sub
|
|
59
67
|
.argument("<value>", "a number, true or false, or for allow a list like send,reaction")
|
|
@@ -63,19 +71,21 @@ export const configCommand = () => {
|
|
|
63
71
|
sub.action(function (setting, given) {
|
|
64
72
|
const value = action === "set" ? String(given) : undefined;
|
|
65
73
|
const { settings, renderer } = forCommand(this);
|
|
66
|
-
const
|
|
67
|
-
if (
|
|
68
|
-
|
|
69
|
-
throw new CliError("permission_error", `this process is locked to profile ${settings.profile} (MAX_PROFILE_LOCK) — --defaults changes every profile`);
|
|
74
|
+
const flags = this.opts();
|
|
75
|
+
if (flags.personal && flags.bot) {
|
|
76
|
+
throw new CliError("validation_error", "--personal and --bot name different sections; use one");
|
|
70
77
|
}
|
|
71
|
-
const
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
const kind = flags.bot ? "bot" : flags.personal ? "personal" : undefined;
|
|
79
|
+
const defaults = flags.defaults === true;
|
|
80
|
+
if ((defaults || setting === "defaultProfile") && process.env.MAX_PROFILE_LOCK) {
|
|
81
|
+
// Both reach past this profile: the defaults are every profile's, defaultProfile picks one.
|
|
82
|
+
throw new CliError("permission_error", `this process is locked to profile ${settings.profile} (MAX_PROFILE_LOCK) — ${setting === "defaultProfile" ? "defaultProfile" : "--defaults"} changes other profiles`);
|
|
83
|
+
}
|
|
84
|
+
const scope = { profile: defaults ? undefined : settings.profile, kind };
|
|
85
|
+
const saved = changeSetting(settings.configPath, { ...scope, setting, value });
|
|
76
86
|
renderer.result({
|
|
77
87
|
configFile: settings.configPath,
|
|
78
|
-
scope:
|
|
88
|
+
scope: setting === "defaultProfile" ? "defaultProfile" : scopePath(scope),
|
|
79
89
|
setting,
|
|
80
90
|
value: saved,
|
|
81
91
|
});
|
|
@@ -83,12 +93,4 @@ export const configCommand = () => {
|
|
|
83
93
|
}
|
|
84
94
|
return command;
|
|
85
95
|
};
|
|
86
|
-
const profilesWithState = () => {
|
|
87
|
-
const dir = join(resolvePaths({ appName: "max-cli", prefix: "MAX" }).state, "profiles");
|
|
88
|
-
if (!existsSync(dir))
|
|
89
|
-
return [];
|
|
90
|
-
return readdirSync(dir)
|
|
91
|
-
.filter((name) => name.endsWith(".json"))
|
|
92
|
-
.map((name) => name.slice(0, -".json".length));
|
|
93
|
-
};
|
|
94
96
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,cAAc,CAAA;AAI7D;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,QAAO,
|
|
1
|
+
{"version":3,"file":"contacts.d.ts","sourceRoot":"","sources":["../../src/commands/contacts.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,cAAc,CAAA;AAI7D;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,QAAO,OAqLlC,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,cAAc,EAenD,CAAA"}
|
|
@@ -109,6 +109,8 @@ export const contactsCommand = () => {
|
|
|
109
109
|
for (const [name, description] of [
|
|
110
110
|
["add", "add a person to your contacts — `contacts list` still shows only people you have a dialog with"],
|
|
111
111
|
["remove", "remove a person from your contacts; the chat stays, a name you gave them may not"],
|
|
112
|
+
["block", "stop a person from writing to you — they need not be a contact"],
|
|
113
|
+
["unblock", "let a blocked person write to you again"],
|
|
112
114
|
]) {
|
|
113
115
|
annotate(command.command(name), { mutates: true })
|
|
114
116
|
.argument("<person>", "person id — `contacts lookup` finds one — or part of a known name")
|
|
@@ -128,6 +130,25 @@ export const contactsCommand = () => {
|
|
|
128
130
|
});
|
|
129
131
|
});
|
|
130
132
|
}
|
|
133
|
+
annotate(command.command("rename"), { mutates: true })
|
|
134
|
+
.argument("<person>", "person id — `contacts lookup` finds one — or part of a known name")
|
|
135
|
+
.argument("<first-name>", "the name you want to see for them")
|
|
136
|
+
.argument("[last-name]")
|
|
137
|
+
.description("give a person a name of your own — they do not see it")
|
|
138
|
+
.action(async function (person, firstName, lastName) {
|
|
139
|
+
const { renderer, settings, createClient, run } = forCommand(this);
|
|
140
|
+
const cache = await openProfileCache(settings.profile, { onProblem: (message) => renderer.note(message) });
|
|
141
|
+
await run("contacts rename", async (events) => {
|
|
142
|
+
const client = createClient({ events, ...(cache ? { cache } : {}) });
|
|
143
|
+
try {
|
|
144
|
+
renderer.result(await client.contacts.rename(person, firstName, lastName));
|
|
145
|
+
}
|
|
146
|
+
finally {
|
|
147
|
+
await client.close();
|
|
148
|
+
cache?.close();
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
});
|
|
131
152
|
/** A file rather than lines on argv, for the same reason `lookup` asks: these are phone numbers. */
|
|
132
153
|
annotate(command.command("import"), { mutates: true })
|
|
133
154
|
.argument("<file>", "one person per line: number, then a comma or a tab, then the name")
|