@leemour/cli-messaging 0.39.0 → 0.41.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 +1 -1
- package/dist/cli/index.d.ts +3 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/messenger/after.d.ts +5 -0
- package/dist/cli/messenger/after.d.ts.map +1 -0
- package/dist/cli/messenger/after.js +10 -0
- package/dist/cli/messenger/after.js.map +1 -0
- package/dist/cli/messenger/backfill-jobs.d.ts +1 -5
- package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
- package/dist/cli/messenger/backfill-jobs.js +4 -27
- package/dist/cli/messenger/backfill-jobs.js.map +1 -1
- package/dist/cli/messenger/chats-command.d.ts +32 -0
- package/dist/cli/messenger/chats-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-command.js +90 -4
- package/dist/cli/messenger/chats-command.js.map +1 -1
- package/dist/cli/messenger/context.d.ts +2 -0
- package/dist/cli/messenger/context.d.ts.map +1 -1
- package/dist/cli/messenger/context.js.map +1 -1
- package/dist/cli/messenger/messages-command.d.ts +1 -1
- package/dist/cli/messenger/messages-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-command.js +16 -6
- package/dist/cli/messenger/messages-command.js.map +1 -1
- package/dist/cli/messenger/models-command.d.ts +9 -0
- package/dist/cli/messenger/models-command.d.ts.map +1 -0
- package/dist/cli/messenger/models-command.js +69 -0
- package/dist/cli/messenger/models-command.js.map +1 -0
- package/dist/cli/messenger/port.d.ts +16 -1
- package/dist/cli/messenger/port.d.ts.map +1 -1
- package/dist/cli/messenger/port.js.map +1 -1
- package/dist/cli/messenger/processes.d.ts +9 -0
- package/dist/cli/messenger/processes.d.ts.map +1 -0
- package/dist/cli/messenger/processes.js +37 -0
- package/dist/cli/messenger/processes.js.map +1 -0
- package/dist/cli/messenger/serve-command.d.ts +4 -5
- package/dist/cli/messenger/serve-command.d.ts.map +1 -1
- package/dist/cli/messenger/serve-command.js +14 -22
- package/dist/cli/messenger/serve-command.js.map +1 -1
- package/dist/cli/messenger/server-command.d.ts +27 -0
- package/dist/cli/messenger/server-command.d.ts.map +1 -0
- package/dist/cli/messenger/server-command.js +453 -0
- package/dist/cli/messenger/server-command.js.map +1 -0
- package/dist/cli/messenger/transcribe-command.d.ts +1 -1
- package/dist/cli/messenger/transcribe-command.d.ts.map +1 -1
- package/dist/cli/messenger/transcribe-command.js +16 -7
- package/dist/cli/messenger/transcribe-command.js.map +1 -1
- package/dist/cli/messenger/watch-command.d.ts +2 -1
- package/dist/cli/messenger/watch-command.d.ts.map +1 -1
- package/dist/cli/messenger/watch-command.js +2 -2
- package/dist/cli/messenger/watch-command.js.map +1 -1
- package/dist/cli/settings.d.ts +4 -0
- package/dist/cli/settings.d.ts.map +1 -1
- package/dist/cli/settings.js +2 -0
- package/dist/cli/settings.js.map +1 -1
- package/dist/domain/models.d.ts +26 -0
- package/dist/domain/models.d.ts.map +1 -1
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool.d.ts +4 -0
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tool.js.map +1 -1
- package/dist/mcp/tools/chats.d.ts.map +1 -1
- package/dist/mcp/tools/chats.js +30 -5
- package/dist/mcp/tools/chats.js.map +1 -1
- package/dist/mcp/tools/messages-transcribe.d.ts.map +1 -1
- package/dist/mcp/tools/messages-transcribe.js +15 -8
- package/dist/mcp/tools/messages-transcribe.js.map +1 -1
- package/dist/mcp/tools/messages.d.ts.map +1 -1
- package/dist/mcp/tools/messages.js +15 -5
- package/dist/mcp/tools/messages.js.map +1 -1
- package/dist/speech/install.d.ts +23 -0
- package/dist/speech/install.d.ts.map +1 -0
- package/dist/speech/install.js +106 -0
- package/dist/speech/install.js.map +1 -0
- package/dist/speech/models.d.ts +38 -0
- package/dist/speech/models.d.ts.map +1 -0
- package/dist/speech/models.js +130 -0
- package/dist/speech/models.js.map +1 -0
- package/dist/speech/recognize.d.ts +24 -0
- package/dist/speech/recognize.d.ts.map +1 -0
- package/dist/speech/recognize.js +106 -0
- package/dist/speech/recognize.js.map +1 -0
- package/dist/speech/transcribe.d.ts +36 -0
- package/dist/speech/transcribe.d.ts.map +1 -0
- package/dist/speech/transcribe.js +80 -0
- package/dist/speech/transcribe.js.map +1 -0
- package/package.json +3 -1
- package/dist/cli/messenger/service-command.d.ts +0 -21
- package/dist/cli/messenger/service-command.d.ts.map +0 -1
- package/dist/cli/messenger/service-command.js +0 -305
- package/dist/cli/messenger/service-command.js.map +0 -1
|
@@ -1,305 +0,0 @@
|
|
|
1
|
-
import { execFile } from "node:child_process";
|
|
2
|
-
import { existsSync, mkdirSync, readFileSync, realpathSync, rmSync } from "node:fs";
|
|
3
|
-
import { dirname, join } from "node:path";
|
|
4
|
-
import { CliError, resolvePaths, writeSecurely } from "@leemour/cli-core";
|
|
5
|
-
import { Command } from "commander";
|
|
6
|
-
import { environmentOf } from "../context.js";
|
|
7
|
-
import { messengerContext } from "./context.js";
|
|
8
|
-
import { alive, lockPath, readLock } from "./serve-command.js";
|
|
9
|
-
const runProgram = (argv, env) => new Promise((resolve, reject) => {
|
|
10
|
-
const [file = "", ...args] = argv;
|
|
11
|
-
execFile(file, args, { env, encoding: "utf8" }, (error, stdout, stderr) => {
|
|
12
|
-
if (error?.code === "ENOENT") {
|
|
13
|
-
reject(new CliError("configuration_error", `${file} was not found — this machine has no ${file} to run serve`));
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
resolve({ code: typeof error?.code === "number" ? error.code : error ? 1 : 0, stdout, stderr });
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
const thisMachine = () => ({
|
|
20
|
-
platform: process.platform,
|
|
21
|
-
run: runProgram,
|
|
22
|
-
entry: [process.execPath, realpathSync(process.argv[1] ?? "")],
|
|
23
|
-
uid: process.getuid?.() ?? 0,
|
|
24
|
-
});
|
|
25
|
-
/**
|
|
26
|
-
* Only the variables that say **where** the files are travel into the unit: a unit written from a
|
|
27
|
-
* development checkout must open that checkout's session and store, never the owner's real ones.
|
|
28
|
-
* Nothing that could hold a credential is copied.
|
|
29
|
-
*/
|
|
30
|
-
const locationVariables = (app, env) => {
|
|
31
|
-
const names = [
|
|
32
|
-
...["CONFIG_DIR", "STATE_DIR", "CACHE_DIR"].map((name) => `${app.envPrefix}_${name}`),
|
|
33
|
-
"MESSAGING_STORE",
|
|
34
|
-
"MESSAGING_STATE_DIR",
|
|
35
|
-
];
|
|
36
|
-
return Object.fromEntries(names.flatMap((name) => (env[name] === undefined ? [] : [[name, env[name]]])));
|
|
37
|
-
};
|
|
38
|
-
const home = (env) => {
|
|
39
|
-
if (!env.HOME)
|
|
40
|
-
throw new CliError("configuration_error", "HOME is not set, so there is nowhere to put the unit");
|
|
41
|
-
return env.HOME;
|
|
42
|
-
};
|
|
43
|
-
/** `%` is a specifier in both; `$` is a variable only in `ExecStart=` — in `Environment=` it is itself. */
|
|
44
|
-
const systemdQuote = (value, { command = false } = {}) => {
|
|
45
|
-
const quoted = value.replaceAll("\\", "\\\\").replaceAll('"', '\\"').replaceAll("%", "%%");
|
|
46
|
-
return `"${command ? quoted.replaceAll("$", "$$$$") : quoted}"`;
|
|
47
|
-
};
|
|
48
|
-
const systemd = (app, system, env) => {
|
|
49
|
-
const folder = join(env.XDG_CONFIG_HOME ?? join(home(env), ".config"), "systemd", "user");
|
|
50
|
-
const checked = async (argv) => {
|
|
51
|
-
const ran = await system.run(argv, env);
|
|
52
|
-
if (ran.code !== 0)
|
|
53
|
-
throw new CliError("configuration_error", `${argv.join(" ")} failed: ${ran.stderr.trim()}`);
|
|
54
|
-
return ran.stdout;
|
|
55
|
-
};
|
|
56
|
-
return {
|
|
57
|
-
unit: (base) => {
|
|
58
|
-
const name = `${app.command}-serve-${base.profile}.service`;
|
|
59
|
-
return { ...base, name, path: join(folder, name) };
|
|
60
|
-
},
|
|
61
|
-
text: (unit) => [
|
|
62
|
-
"[Unit]",
|
|
63
|
-
`Description=${app.command} serve — keep the local message archive current (profile ${unit.profile})`,
|
|
64
|
-
"",
|
|
65
|
-
"[Service]",
|
|
66
|
-
`ExecStart=${unit.command.map((word) => systemdQuote(word, { command: true })).join(" ")}`,
|
|
67
|
-
...Object.entries(unit.environment).map(([name, value]) => `Environment=${systemdQuote(`${name}=${value}`)}`),
|
|
68
|
-
"Restart=on-failure",
|
|
69
|
-
"RestartSec=30",
|
|
70
|
-
"",
|
|
71
|
-
"[Install]",
|
|
72
|
-
"WantedBy=default.target",
|
|
73
|
-
"",
|
|
74
|
-
].join("\n"),
|
|
75
|
-
start: (unit) => [
|
|
76
|
-
["systemctl", "--user", "daemon-reload"],
|
|
77
|
-
["systemctl", "--user", "start", unit.name],
|
|
78
|
-
],
|
|
79
|
-
stop: (unit) => [["systemctl", "--user", "stop", unit.name]],
|
|
80
|
-
state: async (unit) => {
|
|
81
|
-
const ran = await system.run([
|
|
82
|
-
"systemctl",
|
|
83
|
-
"--user",
|
|
84
|
-
"show",
|
|
85
|
-
unit.name,
|
|
86
|
-
"-p",
|
|
87
|
-
"LoadState",
|
|
88
|
-
"-p",
|
|
89
|
-
"ActiveState",
|
|
90
|
-
"-p",
|
|
91
|
-
"SubState",
|
|
92
|
-
"-p",
|
|
93
|
-
"MainPID",
|
|
94
|
-
], env);
|
|
95
|
-
const fields = Object.fromEntries(ran.stdout
|
|
96
|
-
.split("\n")
|
|
97
|
-
.filter((line) => line.includes("="))
|
|
98
|
-
.map((line) => [line.slice(0, line.indexOf("=")), line.slice(line.indexOf("=") + 1)]));
|
|
99
|
-
const pid = Number(fields.MainPID);
|
|
100
|
-
return {
|
|
101
|
-
loaded: fields.LoadState === "loaded",
|
|
102
|
-
active: fields.ActiveState === "active",
|
|
103
|
-
...(pid > 0 ? { pid } : {}),
|
|
104
|
-
...(fields.ActiveState ? { detail: `${fields.ActiveState} (${fields.SubState})` } : {}),
|
|
105
|
-
};
|
|
106
|
-
},
|
|
107
|
-
logs: (unit, lines) => checked(["journalctl", "--user", "-u", unit.name, "-n", String(lines), "--no-pager"]),
|
|
108
|
-
};
|
|
109
|
-
};
|
|
110
|
-
const xml = (value) => value.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">");
|
|
111
|
-
const launchd = (app, system, env) => {
|
|
112
|
-
const folder = join(home(env), "Library", "LaunchAgents");
|
|
113
|
-
const domain = `gui/${system.uid}`;
|
|
114
|
-
return {
|
|
115
|
-
unit: (base) => {
|
|
116
|
-
const name = `${app.appName}.serve.${base.profile}`;
|
|
117
|
-
return { ...base, name, path: join(folder, `${name}.plist`) };
|
|
118
|
-
},
|
|
119
|
-
text: (unit) => [
|
|
120
|
-
'<?xml version="1.0" encoding="UTF-8"?>',
|
|
121
|
-
'<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">',
|
|
122
|
-
'<plist version="1.0">',
|
|
123
|
-
"<dict>",
|
|
124
|
-
` <key>Label</key><string>${xml(unit.name)}</string>`,
|
|
125
|
-
" <key>ProgramArguments</key>",
|
|
126
|
-
" <array>",
|
|
127
|
-
...unit.command.map((word) => ` <string>${xml(word)}</string>`),
|
|
128
|
-
" </array>",
|
|
129
|
-
" <key>EnvironmentVariables</key>",
|
|
130
|
-
" <dict>",
|
|
131
|
-
...Object.entries(unit.environment).map(([name, value]) => ` <key>${xml(name)}</key><string>${xml(value)}</string>`),
|
|
132
|
-
" </dict>",
|
|
133
|
-
" <key>RunAtLoad</key><true/>",
|
|
134
|
-
" <key>KeepAlive</key><dict><key>SuccessfulExit</key><false/></dict>",
|
|
135
|
-
" <key>ThrottleInterval</key><integer>30</integer>",
|
|
136
|
-
` <key>StandardOutPath</key><string>${xml(unit.logPath ?? "")}</string>`,
|
|
137
|
-
` <key>StandardErrorPath</key><string>${xml(unit.logPath ?? "")}</string>`,
|
|
138
|
-
"</dict>",
|
|
139
|
-
"</plist>",
|
|
140
|
-
"",
|
|
141
|
-
].join("\n"),
|
|
142
|
-
// RunAtLoad makes loading the agent the start, so `install` only writes the file.
|
|
143
|
-
start: (unit) => [["launchctl", "bootstrap", domain, unit.path]],
|
|
144
|
-
stop: (unit) => [["launchctl", "bootout", `${domain}/${unit.name}`]],
|
|
145
|
-
state: async (unit) => {
|
|
146
|
-
const ran = await system.run(["launchctl", "print", `${domain}/${unit.name}`], env);
|
|
147
|
-
if (ran.code !== 0)
|
|
148
|
-
return { loaded: false, active: false };
|
|
149
|
-
const state = /^\s*state = (.+)$/m.exec(ran.stdout)?.[1]?.trim();
|
|
150
|
-
const pid = Number(/^\s*pid = (\d+)$/m.exec(ran.stdout)?.[1]);
|
|
151
|
-
return {
|
|
152
|
-
loaded: true,
|
|
153
|
-
active: state === "running",
|
|
154
|
-
...(pid > 0 ? { pid } : {}),
|
|
155
|
-
...(state ? { detail: state } : {}),
|
|
156
|
-
};
|
|
157
|
-
},
|
|
158
|
-
// launchd opens the log itself and does not create its folder.
|
|
159
|
-
prepare: (unit) => {
|
|
160
|
-
if (unit.logPath)
|
|
161
|
-
mkdirSync(dirname(unit.logPath), { recursive: true, mode: 0o700 });
|
|
162
|
-
},
|
|
163
|
-
logs: async (unit, lines) => {
|
|
164
|
-
if (!unit.logPath || !existsSync(unit.logPath))
|
|
165
|
-
return "";
|
|
166
|
-
return `${readFileSync(unit.logPath, "utf8").split("\n").filter(Boolean).slice(-lines).join("\n")}\n`;
|
|
167
|
-
},
|
|
168
|
-
};
|
|
169
|
-
};
|
|
170
|
-
const platformFor = (app, system, env) => {
|
|
171
|
-
if (system.platform === "linux")
|
|
172
|
-
return systemd(app, system, env);
|
|
173
|
-
if (system.platform === "darwin")
|
|
174
|
-
return launchd(app, system, env);
|
|
175
|
-
throw new CliError("validation_error", `${app.command} service knows systemd (Linux) and launchd (macOS), not ${system.platform} — run \`${app.command} serve\` under your own supervisor`);
|
|
176
|
-
};
|
|
177
|
-
/**
|
|
178
|
-
* `serve` as a user service: a systemd user unit on Linux, a launchd agent on macOS, one per
|
|
179
|
-
* profile. **`install` only writes the file** — nothing starts or enables it until asked (NEED-9).
|
|
180
|
-
*/
|
|
181
|
-
export const serviceCommand = (messenger) => {
|
|
182
|
-
const { app } = messenger;
|
|
183
|
-
const command = new Command("service").description(`run \`${app.command} serve\` as a user service — systemd on Linux, launchd on macOS`);
|
|
184
|
-
const prepare = (self) => {
|
|
185
|
-
const context = messengerContext(self, messenger);
|
|
186
|
-
const system = environmentOf(self).system ?? thisMachine();
|
|
187
|
-
const platform = platformFor(app, system, context.env);
|
|
188
|
-
const state = resolvePaths({ appName: app.appName, prefix: app.envPrefix, env: context.env }).state;
|
|
189
|
-
const unit = platform.unit({
|
|
190
|
-
profile: context.profile,
|
|
191
|
-
command: [...system.entry, "serve"],
|
|
192
|
-
environment: { [`${app.envPrefix}_PROFILE`]: context.profile, ...locationVariables(app, context.env) },
|
|
193
|
-
logPath: join(state, "serve", `${context.profile}.log`),
|
|
194
|
-
});
|
|
195
|
-
const each = async (argvs) => {
|
|
196
|
-
for (const argv of argvs) {
|
|
197
|
-
const ran = await system.run(argv, context.env);
|
|
198
|
-
if (ran.code !== 0)
|
|
199
|
-
throw new CliError("configuration_error", `${argv.join(" ")} failed: ${ran.stderr.trim()}`);
|
|
200
|
-
}
|
|
201
|
-
};
|
|
202
|
-
return { context, platform, unit, each };
|
|
203
|
-
};
|
|
204
|
-
const installed = (unit) => {
|
|
205
|
-
if (!existsSync(unit.path)) {
|
|
206
|
-
throw new CliError("not_found", `no service for profile ${unit.profile} — \`${app.command} service install\` writes it`);
|
|
207
|
-
}
|
|
208
|
-
};
|
|
209
|
-
command
|
|
210
|
-
.command("install")
|
|
211
|
-
.description("write the unit for this profile; it does not start or enable it")
|
|
212
|
-
.action(function () {
|
|
213
|
-
const { context, platform, unit } = prepare(this);
|
|
214
|
-
const replaced = existsSync(unit.path);
|
|
215
|
-
writeSecurely(unit.path, platform.text(unit, app), 0o644);
|
|
216
|
-
platform.prepare?.(unit);
|
|
217
|
-
context.renderer.result({
|
|
218
|
-
profile: unit.profile,
|
|
219
|
-
unit: unit.name,
|
|
220
|
-
path: unit.path,
|
|
221
|
-
command: unit.command,
|
|
222
|
-
replaced,
|
|
223
|
-
});
|
|
224
|
-
context.renderer.note(`written, not started — \`${app.command} service start\` starts it`);
|
|
225
|
-
});
|
|
226
|
-
command
|
|
227
|
-
.command("uninstall")
|
|
228
|
-
.description("remove the unit for this profile; stop it first")
|
|
229
|
-
.action(async function () {
|
|
230
|
-
const { context, platform, unit } = prepare(this);
|
|
231
|
-
installed(unit);
|
|
232
|
-
if ((await platform.state(unit)).active) {
|
|
233
|
-
throw new CliError("validation_error", `the service is running — \`${app.command} service stop\` first`);
|
|
234
|
-
}
|
|
235
|
-
rmSync(unit.path, { force: true });
|
|
236
|
-
context.renderer.result({ profile: unit.profile, unit: unit.name, path: unit.path, removed: true });
|
|
237
|
-
});
|
|
238
|
-
command
|
|
239
|
-
.command("start")
|
|
240
|
-
.description("start the service for this profile")
|
|
241
|
-
.action(async function () {
|
|
242
|
-
const { context, platform, unit, each } = prepare(this);
|
|
243
|
-
installed(unit);
|
|
244
|
-
const held = readLock(lockPath(app, unit.profile, context.env));
|
|
245
|
-
if (held && alive(held.pid) && !(await platform.state(unit)).active) {
|
|
246
|
-
throw new CliError("validation_error", `${app.command} serve is already running for profile ${unit.profile} outside the service (PID ${held.pid}) — stop it first`);
|
|
247
|
-
}
|
|
248
|
-
await each(platform.start(unit));
|
|
249
|
-
context.renderer.result({ profile: unit.profile, unit: unit.name, started: true });
|
|
250
|
-
});
|
|
251
|
-
command
|
|
252
|
-
.command("stop")
|
|
253
|
-
.description("stop the service for this profile")
|
|
254
|
-
.action(async function () {
|
|
255
|
-
const { context, platform, unit, each } = prepare(this);
|
|
256
|
-
installed(unit);
|
|
257
|
-
await each(platform.stop(unit));
|
|
258
|
-
context.renderer.result({ profile: unit.profile, unit: unit.name, stopped: true });
|
|
259
|
-
});
|
|
260
|
-
command
|
|
261
|
-
.command("status")
|
|
262
|
-
.description("whether the unit is installed and running, and who holds the serve lock")
|
|
263
|
-
.action(async function () {
|
|
264
|
-
const { context, platform, unit } = prepare(this);
|
|
265
|
-
const isInstalled = existsSync(unit.path);
|
|
266
|
-
const state = isInstalled ? await platform.state(unit) : { loaded: false, active: false };
|
|
267
|
-
const lock = readLock(lockPath(app, unit.profile, context.env));
|
|
268
|
-
const serving = lock !== undefined && alive(lock.pid);
|
|
269
|
-
context.renderer.result({
|
|
270
|
-
profile: unit.profile,
|
|
271
|
-
unit: unit.name,
|
|
272
|
-
path: unit.path,
|
|
273
|
-
installed: isInstalled,
|
|
274
|
-
...state,
|
|
275
|
-
serve: {
|
|
276
|
-
running: serving,
|
|
277
|
-
...(serving && lock
|
|
278
|
-
? { pid: lock.pid, since: lock.startedAt, byService: state.pid !== undefined && state.pid === lock.pid }
|
|
279
|
-
: {}),
|
|
280
|
-
},
|
|
281
|
-
});
|
|
282
|
-
});
|
|
283
|
-
command
|
|
284
|
-
.command("logs")
|
|
285
|
-
.description("the service's latest log lines")
|
|
286
|
-
.option("-n, --lines <n>", "how many lines", (value) => wholeNumber(value), 50)
|
|
287
|
-
.action(async function () {
|
|
288
|
-
const { lines } = this.opts();
|
|
289
|
-
const { context, platform, unit } = prepare(this);
|
|
290
|
-
installed(unit);
|
|
291
|
-
const text = await platform.logs(unit, lines);
|
|
292
|
-
if (context.format === "pretty")
|
|
293
|
-
context.streams.data(text.replace(/\n$/, ""));
|
|
294
|
-
else
|
|
295
|
-
context.renderer.result({ profile: unit.profile, unit: unit.name, lines: text.split("\n").filter(Boolean) });
|
|
296
|
-
});
|
|
297
|
-
return command;
|
|
298
|
-
};
|
|
299
|
-
const wholeNumber = (value) => {
|
|
300
|
-
const parsed = Number(value);
|
|
301
|
-
if (!Number.isInteger(parsed) || parsed < 1)
|
|
302
|
-
throw new CliError("validation_error", `"${value}" is not a count`);
|
|
303
|
-
return parsed;
|
|
304
|
-
};
|
|
305
|
-
//# sourceMappingURL=service-command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"service-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/service-command.ts"],"names":[],"mappings":"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"}
|