@jsbot-tellus/core 2.0.3 → 2.1.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.
Files changed (78) hide show
  1. package/README.md +13 -17
  2. package/dist/app.js +12 -40
  3. package/dist/app.js.map +1 -1
  4. package/dist/core/config/schema.d.ts +0 -2
  5. package/dist/core/config/schema.d.ts.map +1 -1
  6. package/dist/core/config/schema.js +0 -1
  7. package/dist/core/config/schema.js.map +1 -1
  8. package/dist/core/dispatch/command.d.ts +24 -2
  9. package/dist/core/dispatch/command.d.ts.map +1 -1
  10. package/dist/core/dispatch/command.js +297 -60
  11. package/dist/core/dispatch/command.js.map +1 -1
  12. package/dist/core/dispatch/router.d.ts +17 -3
  13. package/dist/core/dispatch/router.d.ts.map +1 -1
  14. package/dist/core/dispatch/router.js +38 -2
  15. package/dist/core/dispatch/router.js.map +1 -1
  16. package/dist/core/index.d.ts +1 -1
  17. package/dist/core/index.d.ts.map +1 -1
  18. package/dist/core/plugin/command-params.d.ts +15 -0
  19. package/dist/core/plugin/command-params.d.ts.map +1 -0
  20. package/dist/core/plugin/command-params.js +427 -0
  21. package/dist/core/plugin/command-params.js.map +1 -0
  22. package/dist/core/plugin/context.d.ts.map +1 -1
  23. package/dist/core/plugin/context.js +27 -0
  24. package/dist/core/plugin/context.js.map +1 -1
  25. package/dist/core/plugin/install-dir.d.ts +6 -9
  26. package/dist/core/plugin/install-dir.d.ts.map +1 -1
  27. package/dist/core/plugin/install-dir.js +99 -79
  28. package/dist/core/plugin/install-dir.js.map +1 -1
  29. package/dist/core/plugin/install-validate.d.ts +2 -1
  30. package/dist/core/plugin/install-validate.d.ts.map +1 -1
  31. package/dist/core/plugin/install-validate.js +25 -17
  32. package/dist/core/plugin/install-validate.js.map +1 -1
  33. package/dist/core/plugin/installer.d.ts +3 -3
  34. package/dist/core/plugin/installer.d.ts.map +1 -1
  35. package/dist/core/plugin/installer.js +143 -140
  36. package/dist/core/plugin/installer.js.map +1 -1
  37. package/dist/core/plugin/loader.d.ts +1 -0
  38. package/dist/core/plugin/loader.d.ts.map +1 -1
  39. package/dist/core/plugin/loader.js +24 -2
  40. package/dist/core/plugin/loader.js.map +1 -1
  41. package/dist/core/plugin/types.d.ts +11 -3
  42. package/dist/core/plugin/types.d.ts.map +1 -1
  43. package/dist/core/plugin/types.js.map +1 -1
  44. package/dist/plugins/admin/index.d.ts.map +1 -1
  45. package/dist/plugins/admin/index.js +119 -86
  46. package/dist/plugins/admin/index.js.map +1 -1
  47. package/dist/plugins/core/index.d.ts.map +1 -1
  48. package/dist/plugins/core/index.js +4 -1
  49. package/dist/plugins/core/index.js.map +1 -1
  50. package/docs/architecture.md +22 -24
  51. package/docs/configuration.md +19 -23
  52. package/docs/feature-parity.md +4 -4
  53. package/docs/migration.md +13 -13
  54. package/docs/plugin-api.md +156 -26
  55. package/docs/plugin-development.md +390 -0
  56. package/docs/release.md +2 -2
  57. package/examples/plugins/hello/README.md +10 -5
  58. package/examples/plugins/hello/index.js +3 -6
  59. package/package.json +2 -1
  60. package/src/app.ts +16 -55
  61. package/src/core/config/schema.ts +0 -1
  62. package/src/core/dispatch/command.ts +474 -70
  63. package/src/core/dispatch/router.ts +77 -3
  64. package/src/core/index.ts +2 -0
  65. package/src/core/plugin/command-params.ts +595 -0
  66. package/src/core/plugin/context.ts +47 -2
  67. package/src/core/plugin/install-dir.ts +117 -111
  68. package/src/core/plugin/install-validate.ts +36 -34
  69. package/src/core/plugin/installer.ts +228 -184
  70. package/src/core/plugin/loader.ts +36 -2
  71. package/src/core/plugin/types.ts +23 -3
  72. package/src/plugins/admin/index.ts +302 -233
  73. package/src/plugins/core/index.ts +5 -1
  74. package/dist/core/plugin/installed.d.ts +0 -9
  75. package/dist/core/plugin/installed.d.ts.map +0 -1
  76. package/dist/core/plugin/installed.js +0 -113
  77. package/dist/core/plugin/installed.js.map +0 -1
  78. package/src/core/plugin/installed.ts +0 -165
@@ -1,65 +1,107 @@
1
+ import { compileCommandParams, } from '../plugin/command-params.js';
2
+ function normalizeSegment(label, value) {
3
+ const trimmed = value.trim();
4
+ if (!trimmed) {
5
+ throw new Error(`${label} must not be empty`);
6
+ }
7
+ if (/\s/.test(trimmed)) {
8
+ throw new Error(`${label} must be a single segment; use commands.group() for multi-level commands`);
9
+ }
10
+ return trimmed;
11
+ }
12
+ function uniqueStrings(values) {
13
+ const seen = new Set();
14
+ const result = [];
15
+ for (const value of values) {
16
+ const key = value.toLowerCase();
17
+ if (seen.has(key))
18
+ continue;
19
+ seen.add(key);
20
+ result.push(value);
21
+ }
22
+ return result;
23
+ }
24
+ function groupBases(name, aliases) {
25
+ return uniqueStrings([
26
+ normalizeSegment('group name', name),
27
+ ...aliases.map((alias) => normalizeSegment('group alias', alias)),
28
+ ]);
29
+ }
30
+ function composedBases(parentBases, name, aliases, kind) {
31
+ const variants = uniqueStrings([
32
+ normalizeSegment(`${kind} name`, name),
33
+ ...aliases.map((alias) => normalizeSegment(`${kind} alias`, alias)),
34
+ ]);
35
+ const bases = [];
36
+ const seen = new Set();
37
+ for (const parent of parentBases) {
38
+ for (const variant of variants) {
39
+ const path = `${parent} ${variant}`;
40
+ const key = path.toLowerCase();
41
+ if (seen.has(key))
42
+ continue;
43
+ seen.add(key);
44
+ bases.push(path);
45
+ }
46
+ }
47
+ return bases;
48
+ }
49
+ function createGroupUsageHandler(children) {
50
+ return async (_event, context, match) => {
51
+ const root = `${match.prefix}${match.command}`;
52
+ const names = children.map((child) => child.name);
53
+ const lines = [
54
+ names.length > 0
55
+ ? `用法:${root} <${names.join('|')}>`
56
+ : `用法:${root}`,
57
+ ];
58
+ for (const child of children) {
59
+ const usage = child.usage !== undefined ? ` ${child.usage}` : '';
60
+ const command = `${root} ${child.name}${usage}`;
61
+ lines.push(child.description !== undefined
62
+ ? `${command} - ${child.description}`
63
+ : command);
64
+ }
65
+ await context.send(lines.join('\n'));
66
+ };
67
+ }
1
68
  export class CommandRegistry {
2
69
  index = new Map();
3
70
  registrations = new Set();
4
71
  byPlugin = new Map();
5
72
  register(registration) {
6
- const names = [
7
- ...new Set([registration.name, ...registration.aliases].map((name) => name.toLowerCase())),
8
- ];
9
- const prefixes = [...new Set(registration.prefixes)];
10
- for (const prefix of prefixes) {
11
- for (const name of names) {
12
- const existing = this.index.get(prefix)?.get(name);
13
- if (existing) {
14
- throw new Error(`command conflict: ${prefix}${name}`);
15
- }
16
- }
73
+ const name = normalizeSegment('command name', registration.name);
74
+ const aliases = uniqueStrings(registration.aliases.map((alias) => normalizeSegment('command alias', alias))).filter((alias) => alias.toLowerCase() !== name.toLowerCase());
75
+ const normalized = this.withParams({
76
+ ...registration,
77
+ name,
78
+ aliases,
79
+ });
80
+ return this.insert(normalized, [name, ...aliases]);
81
+ }
82
+ group(registration, setup) {
83
+ const prefixes = uniqueStrings(registration.prefixes);
84
+ const bases = groupBases(registration.name, registration.aliases);
85
+ const children = [];
86
+ const scope = this.createGroupScope(registration.pluginId, bases, prefixes, registration.permission, children);
87
+ try {
88
+ setup(scope.registrar);
89
+ const dispose = this.registerGroupRoot(registration.pluginId, bases, prefixes, registration.permission, registration.description, registration.params, registration.handler, children);
90
+ scope.track(dispose);
17
91
  }
18
- for (const prefix of prefixes) {
19
- const bucket = this.index.get(prefix) ?? new Map();
20
- for (const name of names) {
21
- bucket.set(name, registration);
22
- }
23
- this.index.set(prefix, bucket);
92
+ catch (error) {
93
+ scope.disposeAll();
94
+ throw error;
24
95
  }
25
- this.registrations.add(registration);
26
- const pluginSet = this.byPlugin.get(registration.pluginId) ??
27
- new Set();
28
- pluginSet.add(registration);
29
- this.byPlugin.set(registration.pluginId, pluginSet);
30
- let disposed = false;
31
- return () => {
32
- if (disposed)
33
- return;
34
- disposed = true;
35
- for (const prefix of prefixes) {
36
- const bucket = this.index.get(prefix);
37
- if (!bucket)
38
- continue;
39
- for (const name of names) {
40
- if (bucket.get(name) === registration) {
41
- bucket.delete(name);
42
- }
43
- }
44
- if (bucket.size === 0) {
45
- this.index.delete(prefix);
46
- }
47
- }
48
- this.registrations.delete(registration);
49
- pluginSet.delete(registration);
50
- if (pluginSet.size === 0) {
51
- this.byPlugin.delete(registration.pluginId);
52
- }
53
- };
96
+ return scope.disposeAll;
54
97
  }
55
98
  removePlugin(pluginId) {
56
99
  const registrations = this.byPlugin.get(pluginId);
57
100
  if (!registrations)
58
101
  return;
59
102
  for (const registration of [...registrations]) {
60
- const prefixes = registration.prefixes;
61
103
  const names = [registration.name, ...registration.aliases].map((name) => name.toLowerCase());
62
- for (const prefix of prefixes) {
104
+ for (const prefix of registration.prefixes) {
63
105
  const bucket = this.index.get(prefix);
64
106
  if (!bucket)
65
107
  continue;
@@ -86,6 +128,9 @@ export class CommandRegistry {
86
128
  ...(registration.description !== undefined
87
129
  ? { description: registration.description }
88
130
  : {}),
131
+ ...(registration.usage !== undefined
132
+ ? { usage: registration.usage }
133
+ : {}),
89
134
  pluginId: registration.pluginId,
90
135
  }));
91
136
  }
@@ -100,21 +145,213 @@ export class CommandRegistry {
100
145
  const text = prefix ? raw.slice(prefix.length).trimStart() : raw;
101
146
  if (!text)
102
147
  continue;
103
- const [head = '', ...args] = text.split(/\s+/);
104
- const registration = this.index.get(prefix)?.get(head.toLowerCase());
105
- if (!registration)
148
+ const tokens = [...text.matchAll(/\S+/g)];
149
+ if (tokens.length === 0)
106
150
  continue;
107
- return {
108
- registration,
109
- match: {
110
- command: head,
111
- prefix,
112
- args,
113
- rest: text.slice(head.length).trim(),
114
- },
115
- };
151
+ for (let count = tokens.length; count >= 1; count -= 1) {
152
+ const matched = tokens.slice(0, count);
153
+ const first = matched[0];
154
+ const last = matched[matched.length - 1];
155
+ if (!first || !last)
156
+ continue;
157
+ const key = matched
158
+ .map((token) => token[0])
159
+ .join(' ')
160
+ .toLowerCase();
161
+ const registration = this.index.get(prefix)?.get(key);
162
+ if (!registration)
163
+ continue;
164
+ const start = first.index ?? 0;
165
+ const end = (last.index ?? 0) + last[0].length;
166
+ return {
167
+ registration,
168
+ match: {
169
+ command: text
170
+ .slice(start, end)
171
+ .replace(/\s+/g, ' ')
172
+ .trim(),
173
+ prefix,
174
+ args: tokens.slice(count).map((token) => token[0]),
175
+ rest: text.slice(end).trim(),
176
+ },
177
+ };
178
+ }
116
179
  }
117
180
  return null;
118
181
  }
182
+ withParams(registration) {
183
+ if (registration.params === undefined)
184
+ return registration;
185
+ const compiled = compileCommandParams(registration.params);
186
+ return {
187
+ ...registration,
188
+ paramsParser: compiled,
189
+ usage: compiled.usage,
190
+ };
191
+ }
192
+ insert(registration, paths) {
193
+ const prefixes = uniqueStrings(registration.prefixes);
194
+ const names = uniqueStrings(paths);
195
+ for (const prefix of prefixes) {
196
+ for (const name of names) {
197
+ const existing = this.index.get(prefix)?.get(name.toLowerCase());
198
+ if (existing) {
199
+ throw new Error(`command conflict: ${prefix}${name}`);
200
+ }
201
+ }
202
+ }
203
+ for (const prefix of prefixes) {
204
+ const bucket = this.index.get(prefix) ?? new Map();
205
+ for (const name of names) {
206
+ bucket.set(name.toLowerCase(), registration);
207
+ }
208
+ this.index.set(prefix, bucket);
209
+ }
210
+ this.registrations.add(registration);
211
+ const pluginSet = this.byPlugin.get(registration.pluginId) ??
212
+ new Set();
213
+ pluginSet.add(registration);
214
+ this.byPlugin.set(registration.pluginId, pluginSet);
215
+ let disposed = false;
216
+ return () => {
217
+ if (disposed)
218
+ return;
219
+ disposed = true;
220
+ for (const prefix of prefixes) {
221
+ const bucket = this.index.get(prefix);
222
+ if (!bucket)
223
+ continue;
224
+ for (const name of names) {
225
+ if (bucket.get(name.toLowerCase()) === registration) {
226
+ bucket.delete(name.toLowerCase());
227
+ }
228
+ }
229
+ if (bucket.size === 0) {
230
+ this.index.delete(prefix);
231
+ }
232
+ }
233
+ this.registrations.delete(registration);
234
+ pluginSet.delete(registration);
235
+ if (pluginSet.size === 0) {
236
+ this.byPlugin.delete(registration.pluginId);
237
+ }
238
+ };
239
+ }
240
+ createGroupScope(pluginId, bases, prefixes, permission, children) {
241
+ const disposers = [];
242
+ let disposed = false;
243
+ const track = (dispose, cleanup) => {
244
+ let done = false;
245
+ const tracked = () => {
246
+ if (done)
247
+ return;
248
+ done = true;
249
+ cleanup?.();
250
+ dispose();
251
+ };
252
+ disposers.push(tracked);
253
+ return tracked;
254
+ };
255
+ const disposeAll = () => {
256
+ if (disposed)
257
+ return;
258
+ disposed = true;
259
+ for (const dispose of disposers.splice(0).reverse()) {
260
+ dispose();
261
+ }
262
+ };
263
+ const registrar = {
264
+ register: (options, handler) => {
265
+ const childBases = composedBases(bases, options.name, options.aliases ?? [], 'command');
266
+ const name = childBases[0];
267
+ if (!name) {
268
+ throw new Error('command name must not be empty');
269
+ }
270
+ const registration = this.withParams({
271
+ pluginId,
272
+ name,
273
+ aliases: childBases.slice(1),
274
+ prefixes: options.prefixes ?? prefixes,
275
+ permission: options.permission ?? permission,
276
+ ...(options.description !== undefined
277
+ ? { description: options.description }
278
+ : {}),
279
+ ...(options.params !== undefined
280
+ ? { params: options.params }
281
+ : {}),
282
+ handler,
283
+ });
284
+ const dispose = this.insert(registration, childBases);
285
+ const record = {
286
+ name: options.name.trim(),
287
+ ...(options.description !== undefined
288
+ ? { description: options.description }
289
+ : {}),
290
+ ...(registration.usage !== undefined
291
+ ? { usage: registration.usage }
292
+ : {}),
293
+ };
294
+ children.push(record);
295
+ return track(dispose, () => {
296
+ const index = children.indexOf(record);
297
+ if (index >= 0) {
298
+ children.splice(index, 1);
299
+ }
300
+ });
301
+ },
302
+ group: (options, nestedSetup) => {
303
+ const nestedBases = composedBases(bases, options.name, options.aliases ?? [], 'group');
304
+ const nestedPrefixes = options.prefixes ?? prefixes;
305
+ const nestedPermission = options.permission ?? permission;
306
+ const nestedChildren = [];
307
+ const nestedScope = this.createGroupScope(pluginId, nestedBases, nestedPrefixes, nestedPermission, nestedChildren);
308
+ try {
309
+ nestedSetup(nestedScope.registrar);
310
+ const dispose = this.registerGroupRoot(pluginId, nestedBases, nestedPrefixes, nestedPermission, options.description, options.params, options.handler, nestedChildren);
311
+ nestedScope.track(dispose);
312
+ }
313
+ catch (error) {
314
+ nestedScope.disposeAll();
315
+ throw error;
316
+ }
317
+ const record = {
318
+ name: options.name.trim(),
319
+ ...(options.description !== undefined
320
+ ? { description: options.description }
321
+ : {}),
322
+ ...(options.params !== undefined
323
+ ? {
324
+ usage: compileCommandParams(options.params).usage,
325
+ }
326
+ : {}),
327
+ };
328
+ children.push(record);
329
+ return track(nestedScope.disposeAll, () => {
330
+ const index = children.indexOf(record);
331
+ if (index >= 0) {
332
+ children.splice(index, 1);
333
+ }
334
+ });
335
+ },
336
+ };
337
+ return { registrar, disposeAll, track };
338
+ }
339
+ registerGroupRoot(pluginId, bases, prefixes, permission, description, params, handler, children) {
340
+ const name = bases[0];
341
+ if (!name) {
342
+ throw new Error('group name must not be empty');
343
+ }
344
+ const registration = this.withParams({
345
+ pluginId,
346
+ name,
347
+ aliases: bases.slice(1),
348
+ prefixes,
349
+ permission,
350
+ ...(description !== undefined ? { description } : {}),
351
+ ...(params !== undefined ? { params } : {}),
352
+ handler: handler ?? createGroupUsageHandler(children),
353
+ });
354
+ return this.insert(registration, bases);
355
+ }
119
356
  }
120
357
  //# sourceMappingURL=command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/core/dispatch/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/core/dispatch/command.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import type { EventNext, SnowLumaEvent, SnowLumaEventContextWithQuote } from '@snowluma/sdk';
1
+ import type { EventNext, OneBotMessageEvent, SnowLumaEvent, SnowLumaEventContextWithQuote } from '@snowluma/sdk';
2
2
  import type { Logger } from '../logging/logger.js';
3
3
  import type { MessageSender } from '../messaging/sender.js';
4
4
  import type { PluginGate } from '../plugin/gating.js';
5
- import type { CommandHandler, CommandInfo, MessageHandler, MiddlewareOptions, NoticeHandler, NoticeOptions, PluginMiddleware, RequestHandler, RequestOptions } from '../plugin/types.js';
5
+ import type { CommandGroupRegistrar, CommandHandler, CommandInfo, MessageHandler, MiddlewareOptions, NoticeHandler, NoticeOptions, PluginMiddleware, RequestHandler, RequestOptions } from '../plugin/types.js';
6
6
  import type { RoleService } from '../security/roles.js';
7
7
  import type { Permission } from '../security/permission.js';
8
8
  export type RouterEventMiddleware = (event: SnowLumaEvent, context: SnowLumaEventContextWithQuote, next: EventNext) => void | Promise<void>;
@@ -12,6 +12,7 @@ export interface RouterDeps {
12
12
  gate: PluginGate;
13
13
  logger: Logger;
14
14
  }
15
+ type AnyCommandHandler = CommandHandler<OneBotMessageEvent, any[]>;
15
16
  export interface RegisterCommandOptions {
16
17
  pluginId: string;
17
18
  name: string;
@@ -19,7 +20,18 @@ export interface RegisterCommandOptions {
19
20
  prefixes?: string[] | undefined;
20
21
  permission?: Permission | undefined;
21
22
  description?: string | undefined;
22
- handler: CommandHandler;
23
+ params?: string | undefined;
24
+ handler: AnyCommandHandler;
25
+ }
26
+ export interface RegisterCommandGroupOptions {
27
+ pluginId: string;
28
+ name: string;
29
+ aliases?: string[] | undefined;
30
+ prefixes?: string[] | undefined;
31
+ permission?: Permission | undefined;
32
+ description?: string | undefined;
33
+ params?: string | undefined;
34
+ handler?: AnyCommandHandler | undefined;
23
35
  }
24
36
  export interface RegisterNoticeOptions extends NoticeOptions {
25
37
  pluginId: string;
@@ -48,6 +60,7 @@ export declare class Router {
48
60
  readonly dispatch: RouterEventMiddleware;
49
61
  private handleEvent;
50
62
  registerCommand(options: RegisterCommandOptions): () => void;
63
+ registerCommandGroup(options: RegisterCommandGroupOptions, setup: (group: CommandGroupRegistrar) => void): () => void;
51
64
  registerMessage(pluginId: string, handler: MessageHandler): () => void;
52
65
  registerNotice(options: RegisterNoticeOptions): () => void;
53
66
  registerRequest(options: RegisterRequestOptions): () => void;
@@ -59,4 +72,5 @@ export declare class Router {
59
72
  private runHandlers;
60
73
  private safeRun;
61
74
  }
75
+ export {};
62
76
  //# sourceMappingURL=router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/dispatch/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/core/dispatch/router.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { isMessageEvent, isNoticeEvent, isRequestEvent } from '@snowluma/sdk';
2
+ import { CommandParamsError } from '../plugin/command-params.js';
2
3
  import { PermissionRefuser } from '../security/refuse.js';
3
- import { CommandRegistry } from './command.js';
4
+ import { CommandRegistry, } from './command.js';
4
5
  import { createEventContext, eventTypeOf, HandlerRegistry, isNoticeOf, isRequestOf, } from './handler.js';
5
6
  import { MiddlewareRegistry, } from './middleware.js';
6
7
  export class Router {
@@ -52,7 +53,24 @@ export class Router {
52
53
  return;
53
54
  }
54
55
  const commandContext = createEventContext(event, sdkContext, this.sender, found.match);
55
- await this.safeRun(found.registration.pluginId, 'command', () => found.registration.handler(event, commandContext, found.match));
56
+ let args = [];
57
+ if (found.registration.paramsParser) {
58
+ try {
59
+ const parsed = found.registration.paramsParser.parse(found.match.rest);
60
+ args = parsed.args;
61
+ if (parsed.ignored.length > 0) {
62
+ this.logger.debug(`ignored extra arguments for ${found.registration.name}`, parsed.ignored.join(' '));
63
+ }
64
+ }
65
+ catch (error) {
66
+ if (error instanceof CommandParamsError) {
67
+ await commandContext.send(`${error.message}\n用法:${found.match.prefix}${found.registration.name} ${error.usage}`, { quote: false });
68
+ return;
69
+ }
70
+ throw error;
71
+ }
72
+ }
73
+ await this.safeRun(found.registration.pluginId, 'command', () => found.registration.handler(event, commandContext, found.match, ...args));
56
74
  return;
57
75
  }
58
76
  }
@@ -82,10 +100,28 @@ export class Router {
82
100
  ...(options.description !== undefined
83
101
  ? { description: options.description }
84
102
  : {}),
103
+ ...(options.params !== undefined ? { params: options.params } : {}),
85
104
  handler: options.handler,
86
105
  };
87
106
  return this.commands.register(registration);
88
107
  }
108
+ registerCommandGroup(options, setup) {
109
+ const registration = {
110
+ pluginId: options.pluginId,
111
+ name: options.name,
112
+ aliases: options.aliases ?? [],
113
+ prefixes: options.prefixes ?? ['/'],
114
+ permission: options.permission ?? 'User',
115
+ ...(options.description !== undefined
116
+ ? { description: options.description }
117
+ : {}),
118
+ ...(options.params !== undefined ? { params: options.params } : {}),
119
+ ...(options.handler !== undefined
120
+ ? { handler: options.handler }
121
+ : {}),
122
+ };
123
+ return this.commands.group(registration, setup);
124
+ }
89
125
  registerMessage(pluginId, handler) {
90
126
  return this.handlers.registerMessage(pluginId, handler);
91
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/dispatch/router.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAiB7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,EAAE,eAAe,EAA4B,MAAM,cAAc,CAAA;AACxE,OAAO,EACH,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,UAAU,EACV,WAAW,GACd,MAAM,cAAc,CAAA;AACrB,OAAO,EACH,kBAAkB,GAErB,MAAM,iBAAiB,CAAA;AAwCxB,MAAM,OAAO,MAAM;IACf,SAAS,GAAG,KAAK,CAAA;IAEA,MAAM,CAAQ;IACd,MAAM,CAAe;IACrB,KAAK,CAAa;IAClB,IAAI,CAAY;IAChB,OAAO,CAAmB;IAC1B,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;IAChC,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;IAChC,WAAW,GAAG,IAAI,kBAAkB,EAAE,CAAA;IACtC,MAAM,GAAG,IAAI,GAAG,EAAiB,CAAA;IAElD,YAAY,IAAgB;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAClE,CAAC;IAEQ,QAAQ,GAA0B,KAAK,EAC5C,KAAK,EACL,UAAU,EACV,IAAI,EACN,EAAE;QACA,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAM;QAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;QACrD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAEpB,IAAI,CAAC;YACD,MAAM,GAAG,CAAA;QACb,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAC3B,CAAC;IACL,CAAC,CAAA;IAEO,KAAK,CAAC,WAAW,CACrB,KAAoB,EACpB,UAAyC,EACzC,IAAe;QAEf,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAElE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YAEzC,IAAI,OAAO,CAAC,OAAO;gBAAE,OAAM;YAE3B,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBAEpD,IAAI,KAAK,EAAE,CAAC;oBACR,UAAU,CAAC,eAAe,EAAE,CAAA;oBAE5B,IACI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC1D,CAAC;wBACC,OAAM;oBACV,CAAC;oBAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBAE7C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;wBACvD,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CACnB,KAAK,EACL,UAAU,EACV,KAAK,CAAC,YAAY,CAAC,UAAU,EAC7B,IAAI,CACP,CAAA;wBACD,OAAM;oBACV,CAAC;oBAED,MAAM,cAAc,GAAG,kBAAkB,CACrC,KAAK,EACL,UAAU,EACV,IAAI,CAAC,MAAM,EACX,KAAK,CAAC,KAAK,CACd,CAAA;oBAED,MAAM,IAAI,CAAC,OAAO,CACd,KAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,SAAS,EACT,GAAG,EAAE,CACD,KAAK,CAAC,YAAY,CAAC,OAAO,CACtB,KAAK,EACL,cAAc,EACd,KAAK,CAAC,KAAK,CACd,CACR,CAAA;oBAED,OAAM;gBACV,CAAC;YACL,CAAC;YAED,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;QAC/C,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACD,MAAM,IAAI,EAAE,CAAA;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,eAAe,CAAC,OAA+B;QAC3C,MAAM,YAAY,GAAwB;YACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC;YACnC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,MAAM;YACxC,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;gBACjC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAA;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC/C,CAAC;IAED,eAAe,CAAC,QAAgB,EAAE,OAAuB;QACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;IAED,cAAc,CAAC,OAA8B;QACzC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;YAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS;gBAChC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE;gBACpC,CAAC,CAAC,EAAE,CAAC;YACT,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;gBAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE;gBAC9B,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC,CAAA;IACN,CAAC;IAED,eAAe,CAAC,OAA+B;QAC3C,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS;gBACjC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;YACT,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC,CAAA;IACN,CAAC;IAED,kBAAkB,CAAC,OAAkC;QACjD,MAAM,YAAY,GAA2B;YACzC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC;YAC7C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC;YAC/B,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAA;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAClD,CAAC;IAED,YAAY,CAAC,QAAgB;QACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACpC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACpC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;QAEvC,SAAS,CAAC;YACN,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAA;YAEhC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAErC,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAEvC,IAAI,SAAS,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAA;YAEhC,MAAM,SAAS,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;gBACrD,IAAI,OAAO,GAAG,KAAK,CAAA;gBAEnB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC1B,IAAI,OAAO;wBAAE,OAAM;oBAEnB,OAAO,GAAG,IAAI,CAAA;oBACd,OAAO,CAAC,KAAK,CAAC,CAAA;gBAClB,CAAC,EAAE,SAAS,CAAC,CAAA;gBAEb,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oBACvC,IAAI,OAAO;wBAAE,OAAM;oBAEnB,OAAO,GAAG,IAAI,CAAA;oBACd,YAAY,CAAC,KAAK,CAAC,CAAA;oBACnB,OAAO,CAAC,IAAI,CAAC,CAAA;gBACjB,CAAC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,SAAS;gBAAE,OAAO,KAAK,CAAA;QAChC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,cAAc,CACxB,KAAoB,EACpB,OAA8C;QAE9C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,CAAC,SAAS;YAAE,OAAM;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW;aACxB,IAAI,CAAC,SAAS,CAAC;aACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;QAEhE,IAAI,KAAK,GAAG,CAAC,CAAC,CAAA;QAEd,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;YACnC,KAAK,IAAI,CAAC,CAAA;YAEV,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YAE9B,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO;gBAAE,OAAM;YAE1C,IAAI,MAAM,GAAG,KAAK,CAAA;YAElB,MAAM,QAAQ,GAAG,KAAK,IAAmB,EAAE;gBACvC,IAAI,MAAM;oBAAE,OAAM;gBAElB,MAAM,GAAG,IAAI,CAAA;gBACb,MAAM,IAAI,EAAE,CAAA;YAChB,CAAC,CAAA;YAED,IAAI,CAAC;gBACD,MAAM,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,UAAU,UAAU,CAAC,QAAQ,oBAAoB,EACjD,KAAK,CACR,CAAA;gBACD,MAAM,QAAQ,EAAE,CAAA;YACpB,CAAC;QACL,CAAC,CAAA;QAED,MAAM,IAAI,EAAE,CAAA;IAChB,CAAC;IAEO,KAAK,CAAC,WAAW,CACrB,KAAoB,EACpB,UAAyC;QAEzC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,cAAc,GAAG,kBAAkB,CACrC,KAAK,EACL,UAAU,EACV,IAAI,CAAC,MAAM,CACd,CAAA;YAED,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAClD,IAAI,cAAc,CAAC,OAAO;oBAAE,OAAM;gBAElC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;oBACrD,SAAQ;gBACZ,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CACd,YAAY,CAAC,QAAQ,EACrB,iBAAiB,EACjB,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CACpD,CAAA;YACL,CAAC;YAED,OAAM;QACV,CAAC;QAED,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,aAAa,GAAG,kBAAkB,CACpC,KAAK,EACL,UAAU,EACV,IAAI,CAAC,MAAM,CACd,CAAA;YAED,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjD,IAAI,aAAa,CAAC,OAAO;oBAAE,OAAM;gBAEjC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC;oBAAE,SAAQ;gBAE9C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;oBACrD,SAAQ;gBACZ,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CACd,YAAY,CAAC,QAAQ,EACrB,gBAAgB,EAChB,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CACnD,CAAA;YACL,CAAC;YAED,OAAM;QACV,CAAC;QAED,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,cAAc,GAAG,kBAAkB,CACrC,KAAK,EACL,UAAU,EACV,IAAI,CAAC,MAAM,CACd,CAAA;YAED,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;gBAClD,IAAI,cAAc,CAAC,OAAO;oBAAE,OAAM;gBAElC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC;oBAAE,SAAQ;gBAE/C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;oBACrD,SAAQ;gBACZ,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CACd,YAAY,CAAC,QAAQ,EACrB,iBAAiB,EACjB,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,CAAC,CACpD,CAAA;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO,CACjB,QAAgB,EAChB,IAAY,EACZ,GAA+B;QAE/B,IAAI,CAAC;YACD,MAAM,GAAG,EAAE,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,QAAQ,IAAI,IAAI,SAAS,EAAE,KAAK,CAAC,CAAA;QACjE,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/core/dispatch/router.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ export { PluginConfigError } from './plugin/host.js';
9
9
  export { InstallerError } from './plugin/installer.js';
10
10
  export type { PluginKV } from './plugin/kv.js';
11
11
  export { definePlugin } from './plugin/types.js';
12
- export type { AnyPluginDefinition, CommandHandler, CommandInfo, CommandMatch, CommandOptions, CommandRegistrar, CoreServices, EventContext, EventRegistrar, EventType, InstalledPackageInfo, MessageHandler, MiddlewareOptions, MiddlewareRegistrar, NoticeHandler, NoticeOptions, PluginContext, PluginDefinition, PluginInstallResult, PluginInstaller, PluginManifest, PluginMiddleware, PluginRemoveResult, PluginStatus, PluginStatusEntry, PluginUpdateResult, RequestHandler, RequestOptions, } from './plugin/types.js';
12
+ export type { AnyPluginDefinition, CommandGroupOptions, CommandGroupRegistrar, CommandHandler, CommandInfo, CommandMatch, CommandOptions, CommandRegistrar, CoreServices, EventContext, EventRegistrar, EventType, InstalledPackageInfo, MessageHandler, MiddlewareOptions, MiddlewareRegistrar, NoticeHandler, NoticeOptions, PluginContext, PluginDefinition, PluginInstallResult, PluginInstaller, PluginManifest, PluginMiddleware, PluginRemoveResult, PluginStatus, PluginStatusEntry, PluginUpdateResult, RequestHandler, RequestOptions, } from './plugin/types.js';
13
13
  export type { Permission } from './security/permission.js';
14
14
  export type { SessionMessage, SessionRole, SessionState, SessionStore, } from './storage/session.js';
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,YAAY,EACR,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,GACd,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,YAAY,EACR,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,YAAY,EACR,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACf,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,YAAY,EACR,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,WAAW,GACd,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,YAAY,EACR,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,SAAS,EACT,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,YAAY,EACR,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACf,MAAM,sBAAsB,CAAA"}
@@ -0,0 +1,15 @@
1
+ export type CommandParamType = 'string' | 'text' | 'number' | 'integer' | 'boolean';
2
+ export interface ParsedCommandParams {
3
+ args: unknown[];
4
+ ignored: string[];
5
+ }
6
+ export interface CompiledCommandParams {
7
+ usage: string;
8
+ parse(input: string): ParsedCommandParams;
9
+ }
10
+ export declare class CommandParamsError extends Error {
11
+ readonly usage: string;
12
+ constructor(message: string, usage: string);
13
+ }
14
+ export declare function compileCommandParams(declaration: string): CompiledCommandParams;
15
+ //# sourceMappingURL=command-params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-params.d.ts","sourceRoot":"","sources":["../../../src/core/plugin/command-params.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;AAExD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,OAAO,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,qBAAqB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAAA;CAC5C;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IAEtB,YAAY,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAIzC;CACJ;AAoiBD,wBAAgB,oBAAoB,CAChC,WAAW,EAAE,MAAM,GACpB,qBAAqB,CAuBvB"}