agent-messenger 2.37.2 → 2.38.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/.claude-plugin/plugin.json +1 -1
- package/README.md +6 -0
- package/dist/package.json +1 -1
- package/dist/src/platforms/discord/cli.d.ts.map +1 -1
- package/dist/src/platforms/discord/cli.js +3 -1
- package/dist/src/platforms/discord/cli.js.map +1 -1
- package/dist/src/platforms/discord/client.d.ts +17 -1
- package/dist/src/platforms/discord/client.d.ts.map +1 -1
- package/dist/src/platforms/discord/client.js +46 -0
- package/dist/src/platforms/discord/client.js.map +1 -1
- package/dist/src/platforms/discord/commands/emoji.d.ts +13 -0
- package/dist/src/platforms/discord/commands/emoji.d.ts.map +1 -0
- package/dist/src/platforms/discord/commands/emoji.js +93 -0
- package/dist/src/platforms/discord/commands/emoji.js.map +1 -0
- package/dist/src/platforms/discord/commands/index.d.ts +2 -0
- package/dist/src/platforms/discord/commands/index.d.ts.map +1 -1
- package/dist/src/platforms/discord/commands/index.js +2 -0
- package/dist/src/platforms/discord/commands/index.js.map +1 -1
- package/dist/src/platforms/discord/commands/server.d.ts.map +1 -1
- package/dist/src/platforms/discord/commands/server.js +16 -1
- package/dist/src/platforms/discord/commands/server.js.map +1 -1
- package/dist/src/platforms/discord/commands/sticker.d.ts +15 -0
- package/dist/src/platforms/discord/commands/sticker.d.ts.map +1 -0
- package/dist/src/platforms/discord/commands/sticker.js +97 -0
- package/dist/src/platforms/discord/commands/sticker.js.map +1 -0
- package/dist/src/platforms/discord/expression-format.d.ts +41 -0
- package/dist/src/platforms/discord/expression-format.d.ts.map +1 -0
- package/dist/src/platforms/discord/expression-format.js +107 -0
- package/dist/src/platforms/discord/expression-format.js.map +1 -0
- package/dist/src/platforms/discord/expression-names.d.ts +9 -0
- package/dist/src/platforms/discord/expression-names.d.ts.map +1 -0
- package/dist/src/platforms/discord/expression-names.js +33 -0
- package/dist/src/platforms/discord/expression-names.js.map +1 -0
- package/dist/src/platforms/discord/index.d.ts +1 -1
- package/dist/src/platforms/discord/index.d.ts.map +1 -1
- package/dist/src/platforms/discord/index.js.map +1 -1
- package/dist/src/platforms/discord/types.d.ts +29 -0
- package/dist/src/platforms/discord/types.d.ts.map +1 -1
- package/dist/src/platforms/discord/types.js.map +1 -1
- package/docs/content/docs/cli/discord.mdx +73 -0
- package/docs/content/docs/sdk/discord.mdx +50 -0
- package/package.json +1 -1
- package/skills/agent-channeltalk/SKILL.md +1 -1
- package/skills/agent-channeltalkbot/SKILL.md +1 -1
- package/skills/agent-discord/SKILL.md +69 -1
- package/skills/agent-discord/references/common-patterns.md +77 -0
- package/skills/agent-discordbot/SKILL.md +1 -1
- package/skills/agent-imessage/SKILL.md +1 -1
- package/skills/agent-instagram/SKILL.md +1 -1
- package/skills/agent-kakaotalk/SKILL.md +1 -1
- package/skills/agent-line/SKILL.md +1 -1
- package/skills/agent-slack/SKILL.md +1 -1
- package/skills/agent-slackbot/SKILL.md +1 -1
- package/skills/agent-teams/SKILL.md +1 -1
- package/skills/agent-telegram/SKILL.md +1 -1
- package/skills/agent-telegrambot/SKILL.md +1 -1
- package/skills/agent-webex/SKILL.md +1 -1
- package/skills/agent-webexbot/SKILL.md +1 -1
- package/skills/agent-wechatbot/SKILL.md +1 -1
- package/skills/agent-whatsapp/SKILL.md +1 -1
- package/skills/agent-whatsappbot/SKILL.md +1 -1
- package/src/platforms/discord/cli.ts +4 -0
- package/src/platforms/discord/client.test.ts +133 -0
- package/src/platforms/discord/client.ts +72 -0
- package/src/platforms/discord/commands/emoji.test.ts +122 -0
- package/src/platforms/discord/commands/emoji.ts +124 -0
- package/src/platforms/discord/commands/index.ts +2 -0
- package/src/platforms/discord/commands/server.test.ts +45 -1
- package/src/platforms/discord/commands/server.ts +21 -1
- package/src/platforms/discord/commands/sticker.test.ts +118 -0
- package/src/platforms/discord/commands/sticker.ts +135 -0
- package/src/platforms/discord/expression-format.test.ts +107 -0
- package/src/platforms/discord/expression-format.ts +117 -0
- package/src/platforms/discord/expression-names.test.ts +41 -0
- package/src/platforms/discord/expression-names.ts +36 -0
- package/src/platforms/discord/index.ts +2 -0
- package/src/platforms/discord/types.ts +31 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises';
|
|
2
|
+
import { basename, extname, resolve } from 'node:path';
|
|
3
|
+
import { Command } from 'commander';
|
|
4
|
+
import { handleError } from '../../../shared/utils/error-handler.js';
|
|
5
|
+
import { formatOutput } from '../../../shared/utils/output.js';
|
|
6
|
+
import { DiscordClient } from '../client.js';
|
|
7
|
+
import { DiscordCredentialManager } from '../credential-manager.js';
|
|
8
|
+
import { validateStickerName } from '../expression-names.js';
|
|
9
|
+
export async function listAction(serverId, options) {
|
|
10
|
+
try {
|
|
11
|
+
const credManager = new DiscordCredentialManager();
|
|
12
|
+
const config = await credManager.load();
|
|
13
|
+
if (!config.token) {
|
|
14
|
+
console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
|
|
15
|
+
process.exit(1);
|
|
16
|
+
}
|
|
17
|
+
const client = await new DiscordClient().login({ token: config.token });
|
|
18
|
+
const stickers = await client.listStickers(serverId);
|
|
19
|
+
console.log(formatOutput({
|
|
20
|
+
server_id: serverId,
|
|
21
|
+
count: stickers.length,
|
|
22
|
+
stickers: stickers.map((sticker) => ({
|
|
23
|
+
id: sticker.id,
|
|
24
|
+
name: sticker.name,
|
|
25
|
+
tags: sticker.tags,
|
|
26
|
+
description: sticker.description ?? null,
|
|
27
|
+
})),
|
|
28
|
+
}, options.pretty));
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
handleError(error);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export async function createAction(serverId, path, options) {
|
|
35
|
+
try {
|
|
36
|
+
const credManager = new DiscordCredentialManager();
|
|
37
|
+
const config = await credManager.load();
|
|
38
|
+
if (!config.token) {
|
|
39
|
+
console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
const client = await new DiscordClient().login({ token: config.token });
|
|
43
|
+
const filePath = resolve(path);
|
|
44
|
+
const filename = basename(filePath);
|
|
45
|
+
const name = options.name ?? basename(filename, extname(filename));
|
|
46
|
+
const nameError = validateStickerName(name);
|
|
47
|
+
if (nameError) {
|
|
48
|
+
console.log(formatOutput({ error: nameError }, options.pretty));
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
const image = new Uint8Array(await readFile(filePath));
|
|
52
|
+
const sticker = await client.createSticker(serverId, { name, description: options.description ?? '', tags: options.tags }, image, filename);
|
|
53
|
+
console.log(formatOutput({ success: true, server_id: serverId, id: sticker.id, name: sticker.name }, options.pretty));
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
handleError(error);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
export async function deleteAction(serverId, stickerId, options) {
|
|
60
|
+
try {
|
|
61
|
+
const credManager = new DiscordCredentialManager();
|
|
62
|
+
const config = await credManager.load();
|
|
63
|
+
if (!config.token) {
|
|
64
|
+
console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
67
|
+
const client = await new DiscordClient().login({ token: config.token });
|
|
68
|
+
await client.deleteSticker(serverId, stickerId);
|
|
69
|
+
console.log(formatOutput({ success: true, server_id: serverId, id: stickerId }, options.pretty));
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
handleError(error);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
export const stickerCommand = new Command('sticker')
|
|
76
|
+
.description('Custom sticker commands')
|
|
77
|
+
.addCommand(new Command('list')
|
|
78
|
+
.description('List custom stickers in a server')
|
|
79
|
+
.argument('<server-id>', 'Server ID')
|
|
80
|
+
.option('--pretty', 'Pretty print JSON output')
|
|
81
|
+
.action(listAction))
|
|
82
|
+
.addCommand(new Command('create')
|
|
83
|
+
.description('Upload a custom sticker to a server')
|
|
84
|
+
.argument('<server-id>', 'Server ID')
|
|
85
|
+
.argument('<file>', 'Image file (PNG, APNG, GIF or Lottie JSON, max 512KB; Discord documents 320x320)')
|
|
86
|
+
.requiredOption('--tags <emoji>', 'Unicode emoji this sticker relates to')
|
|
87
|
+
.option('--name <name>', 'Sticker name (defaults to the filename without extension)')
|
|
88
|
+
.option('--description <text>', 'Sticker description')
|
|
89
|
+
.option('--pretty', 'Pretty print JSON output')
|
|
90
|
+
.action(createAction))
|
|
91
|
+
.addCommand(new Command('delete')
|
|
92
|
+
.description('Delete a custom sticker from a server')
|
|
93
|
+
.argument('<server-id>', 'Server ID')
|
|
94
|
+
.argument('<sticker-id>', 'Sticker ID')
|
|
95
|
+
.option('--pretty', 'Pretty print JSON output')
|
|
96
|
+
.action(deleteAction));
|
|
97
|
+
//# sourceMappingURL=sticker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sticker.js","sourceRoot":"","sources":["../../../../../src/platforms/discord/commands/sticker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decide an expression's format from its bytes, not its filename.
|
|
3
|
+
*
|
|
4
|
+
* The upload declares a media type in its multipart part, and Discord answers
|
|
5
|
+
* a part whose declared type does not match its content with a bare
|
|
6
|
+
* "Invalid Asset" — the same opaque rejection a missing type produces. A
|
|
7
|
+
* filename is unverified input, so deriving the type from the extension means
|
|
8
|
+
* one mislabelled file in a batch fails without saying which, or why.
|
|
9
|
+
*
|
|
10
|
+
* A leading `{` proves only that the file is JSON, so a sticker's JSON is
|
|
11
|
+
* checked for the one field every Lottie animation carries. Uploading `{}`
|
|
12
|
+
* otherwise comes back as a bare "Invalid Asset". Whether the animation renders
|
|
13
|
+
* is still Discord's call, and Lottie needs a VERIFIED or PARTNERED guild.
|
|
14
|
+
*
|
|
15
|
+
* This deliberately does not check dimensions. Discord's documentation gives
|
|
16
|
+
* 320x320 for stickers, but a 408x408 PNG uploads and registers fine, so a
|
|
17
|
+
* local size check would refuse files the API accepts.
|
|
18
|
+
*/
|
|
19
|
+
export type ExpressionFormat = 'png' | 'gif' | 'jpeg' | 'webp' | 'json';
|
|
20
|
+
/**
|
|
21
|
+
* The two endpoints do not take the same formats, so one shared set would let a
|
|
22
|
+
* JPEG reach the sticker endpoint — declared image/jpeg, and refused with the
|
|
23
|
+
* same opaque "Invalid Asset" this check exists to avoid.
|
|
24
|
+
*/
|
|
25
|
+
export declare const EMOJI_FORMATS: ReadonlySet<ExpressionFormat>;
|
|
26
|
+
/** APNG carries the PNG signature, so it is covered by 'png'. */
|
|
27
|
+
export declare const STICKER_FORMATS: ReadonlySet<ExpressionFormat>;
|
|
28
|
+
export declare function mediaTypeOf(format: ExpressionFormat): string;
|
|
29
|
+
export declare function sniffFormat(bytes: Uint8Array): ExpressionFormat | null;
|
|
30
|
+
/**
|
|
31
|
+
* A Lottie animation always carries a `layers` array. Checking that one field
|
|
32
|
+
* rejects an arbitrary JSON document without guessing at the rest of the
|
|
33
|
+
* schema, which would risk refusing animations a newer exporter produces.
|
|
34
|
+
*
|
|
35
|
+
* Returns the reason the document cannot be one, or null when it may be. The
|
|
36
|
+
* two faults are reported apart: a file can hold a layers array and still be
|
|
37
|
+
* broken, and "no layers array" would send its author looking in the wrong
|
|
38
|
+
* place.
|
|
39
|
+
*/
|
|
40
|
+
export declare function lottieError(bytes: Uint8Array): string | null;
|
|
41
|
+
//# sourceMappingURL=expression-format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-format.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/expression-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAEvE;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,gBAAgB,CAA2C,CAAA;AACnG,iEAAiE;AACjE,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,gBAAgB,CAAmC,CAAA;AAqB7F,wBAAgB,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAE5D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,gBAAgB,GAAG,IAAI,CA+BtE;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CAoB5D"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decide an expression's format from its bytes, not its filename.
|
|
3
|
+
*
|
|
4
|
+
* The upload declares a media type in its multipart part, and Discord answers
|
|
5
|
+
* a part whose declared type does not match its content with a bare
|
|
6
|
+
* "Invalid Asset" — the same opaque rejection a missing type produces. A
|
|
7
|
+
* filename is unverified input, so deriving the type from the extension means
|
|
8
|
+
* one mislabelled file in a batch fails without saying which, or why.
|
|
9
|
+
*
|
|
10
|
+
* A leading `{` proves only that the file is JSON, so a sticker's JSON is
|
|
11
|
+
* checked for the one field every Lottie animation carries. Uploading `{}`
|
|
12
|
+
* otherwise comes back as a bare "Invalid Asset". Whether the animation renders
|
|
13
|
+
* is still Discord's call, and Lottie needs a VERIFIED or PARTNERED guild.
|
|
14
|
+
*
|
|
15
|
+
* This deliberately does not check dimensions. Discord's documentation gives
|
|
16
|
+
* 320x320 for stickers, but a 408x408 PNG uploads and registers fine, so a
|
|
17
|
+
* local size check would refuse files the API accepts.
|
|
18
|
+
*/
|
|
19
|
+
/**
|
|
20
|
+
* The two endpoints do not take the same formats, so one shared set would let a
|
|
21
|
+
* JPEG reach the sticker endpoint — declared image/jpeg, and refused with the
|
|
22
|
+
* same opaque "Invalid Asset" this check exists to avoid.
|
|
23
|
+
*/
|
|
24
|
+
export const EMOJI_FORMATS = new Set(['png', 'gif', 'jpeg', 'webp']);
|
|
25
|
+
/** APNG carries the PNG signature, so it is covered by 'png'. */
|
|
26
|
+
export const STICKER_FORMATS = new Set(['png', 'gif', 'json']);
|
|
27
|
+
const MEDIA_TYPES = {
|
|
28
|
+
png: 'image/png',
|
|
29
|
+
gif: 'image/gif',
|
|
30
|
+
jpeg: 'image/jpeg',
|
|
31
|
+
webp: 'image/webp',
|
|
32
|
+
json: 'application/json',
|
|
33
|
+
};
|
|
34
|
+
const PNG_SIGNATURE = [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a];
|
|
35
|
+
const JPEG_SIGNATURE = [0xff, 0xd8, 0xff];
|
|
36
|
+
function startsWith(bytes, signature) {
|
|
37
|
+
return bytes.length >= signature.length && signature.every((byte, index) => bytes[index] === byte);
|
|
38
|
+
}
|
|
39
|
+
function ascii(bytes, start, length) {
|
|
40
|
+
return String.fromCharCode(...bytes.subarray(start, start + length));
|
|
41
|
+
}
|
|
42
|
+
export function mediaTypeOf(format) {
|
|
43
|
+
return MEDIA_TYPES[format];
|
|
44
|
+
}
|
|
45
|
+
export function sniffFormat(bytes) {
|
|
46
|
+
// APNG carries the PNG signature too; Discord takes both as image/png.
|
|
47
|
+
if (startsWith(bytes, PNG_SIGNATURE))
|
|
48
|
+
return 'png';
|
|
49
|
+
if (startsWith(bytes, JPEG_SIGNATURE))
|
|
50
|
+
return 'jpeg';
|
|
51
|
+
if (bytes.length >= 6 && ascii(bytes, 0, 3) === 'GIF') {
|
|
52
|
+
const version = ascii(bytes, 3, 3);
|
|
53
|
+
if (version === '87a' || version === '89a')
|
|
54
|
+
return 'gif';
|
|
55
|
+
}
|
|
56
|
+
if (bytes.length >= 12 && ascii(bytes, 0, 4) === 'RIFF' && ascii(bytes, 8, 4) === 'WEBP') {
|
|
57
|
+
return 'webp';
|
|
58
|
+
}
|
|
59
|
+
// Lottie is a JSON document. Scan past leading whitespace and a BOM until the
|
|
60
|
+
// first byte that is neither — a fixed lookahead would reject a file that is
|
|
61
|
+
// merely indented. Any binary hits a non-skippable byte almost immediately.
|
|
62
|
+
for (const byte of bytes) {
|
|
63
|
+
if (byte === 0x7b)
|
|
64
|
+
return 'json';
|
|
65
|
+
const skippable = byte === 0x20 ||
|
|
66
|
+
byte === 0x09 ||
|
|
67
|
+
byte === 0x0a ||
|
|
68
|
+
byte === 0x0d ||
|
|
69
|
+
byte === 0xef ||
|
|
70
|
+
byte === 0xbb ||
|
|
71
|
+
byte === 0xbf;
|
|
72
|
+
if (!skippable)
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* A Lottie animation always carries a `layers` array. Checking that one field
|
|
79
|
+
* rejects an arbitrary JSON document without guessing at the rest of the
|
|
80
|
+
* schema, which would risk refusing animations a newer exporter produces.
|
|
81
|
+
*
|
|
82
|
+
* Returns the reason the document cannot be one, or null when it may be. The
|
|
83
|
+
* two faults are reported apart: a file can hold a layers array and still be
|
|
84
|
+
* broken, and "no layers array" would send its author looking in the wrong
|
|
85
|
+
* place.
|
|
86
|
+
*/
|
|
87
|
+
export function lottieError(bytes) {
|
|
88
|
+
let text;
|
|
89
|
+
try {
|
|
90
|
+
// A lenient decoder substitutes U+FFFD for a malformed byte, leaving JSON
|
|
91
|
+
// that parses while the file itself is not valid UTF-8.
|
|
92
|
+
text = new TextDecoder('utf-8', { fatal: true }).decode(bytes);
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
return 'JSON file is not valid UTF-8';
|
|
96
|
+
}
|
|
97
|
+
let parsed;
|
|
98
|
+
try {
|
|
99
|
+
parsed = JSON.parse(text);
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
return 'JSON file is not valid JSON';
|
|
103
|
+
}
|
|
104
|
+
const hasLayers = typeof parsed === 'object' && parsed !== null && Array.isArray(parsed.layers);
|
|
105
|
+
return hasLayers ? null : 'JSON file is not a Lottie animation (no layers array)';
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=expression-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-format.js","sourceRoot":"","sources":["../../../../src/platforms/discord/expression-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discord answers an out-of-range expression name with a bare
|
|
3
|
+
* "Invalid Form Body", naming neither the field nor the file. In a batch
|
|
4
|
+
* upload that says nothing about which one was refused, so the name — the one
|
|
5
|
+
* part of an expression the caller supplies directly — is checked first.
|
|
6
|
+
*/
|
|
7
|
+
export declare function validateEmojiName(name: string): string | null;
|
|
8
|
+
export declare function validateStickerName(name: string): string | null;
|
|
9
|
+
//# sourceMappingURL=expression-names.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-names.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/expression-names.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW7D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQ/D"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Discord answers an out-of-range expression name with a bare
|
|
3
|
+
* "Invalid Form Body", naming neither the field nor the file. In a batch
|
|
4
|
+
* upload that says nothing about which one was refused, so the name — the one
|
|
5
|
+
* part of an expression the caller supplies directly — is checked first.
|
|
6
|
+
*/
|
|
7
|
+
const EMOJI_NAME_PATTERN = /^[A-Za-z0-9_]+$/;
|
|
8
|
+
const EMOJI_NAME_MIN = 2;
|
|
9
|
+
const EMOJI_NAME_MAX = 32;
|
|
10
|
+
const STICKER_NAME_MIN = 2;
|
|
11
|
+
const STICKER_NAME_MAX = 30;
|
|
12
|
+
export function validateEmojiName(name) {
|
|
13
|
+
if (name.length < EMOJI_NAME_MIN) {
|
|
14
|
+
return `Emoji name must be at least ${EMOJI_NAME_MIN} characters: "${name}"`;
|
|
15
|
+
}
|
|
16
|
+
if (name.length > EMOJI_NAME_MAX) {
|
|
17
|
+
return `Emoji name must be at most ${EMOJI_NAME_MAX} characters: "${name}"`;
|
|
18
|
+
}
|
|
19
|
+
if (!EMOJI_NAME_PATTERN.test(name)) {
|
|
20
|
+
return `Emoji name may only contain letters, digits, underscores: "${name}"`;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
export function validateStickerName(name) {
|
|
25
|
+
if (name.length < STICKER_NAME_MIN) {
|
|
26
|
+
return `Sticker name must be at least ${STICKER_NAME_MIN} characters: "${name}"`;
|
|
27
|
+
}
|
|
28
|
+
if (name.length > STICKER_NAME_MAX) {
|
|
29
|
+
return `Sticker name must be at most ${STICKER_NAME_MAX} characters: "${name}"`;
|
|
30
|
+
}
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=expression-names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-names.js","sourceRoot":"","sources":["../../../../src/platforms/discord/expression-names.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,kBAAkB,GAAG,iBAAiB,CAAA;AAC5C,MAAM,cAAc,GAAG,CAAC,CAAA;AACxB,MAAM,cAAc,GAAG,EAAE,CAAA;AAEzB,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAC1B,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAE3B,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QACjC,OAAO,+BAA+B,cAAc,iBAAiB,IAAI,GAAG,CAAA;IAC9E,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QACjC,OAAO,8BAA8B,cAAc,iBAAiB,IAAI,GAAG,CAAA;IAC7E,CAAC;IACD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,OAAO,8DAA8D,IAAI,GAAG,CAAA;IAC9E,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,IAAI,IAAI,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;QACnC,OAAO,iCAAiC,gBAAgB,iBAAiB,IAAI,GAAG,CAAA;IAClF,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;QACnC,OAAO,gCAAgC,gBAAgB,iBAAiB,IAAI,GAAG,CAAA;IACjF,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
|
|
@@ -3,6 +3,6 @@ export { DiscordCredentialManager } from './credential-manager.js';
|
|
|
3
3
|
export { DiscordListener } from './listener.js';
|
|
4
4
|
export { loginWithRemoteAuth } from './remote-auth.js';
|
|
5
5
|
export type { RemoteAuthOptions, RemoteAuthSession } from './remote-auth.js';
|
|
6
|
-
export type { DiscordChannel, DiscordConfig, DiscordCredentials, DiscordDMChannel, DiscordFile, DiscordGatewayChannelEvent, DiscordGatewayEvent, DiscordGatewayGenericEvent, DiscordGatewayMemberEvent, DiscordGatewayMessageCreateEvent, DiscordGatewayMessageDeleteEvent, DiscordGatewayMessageUpdateEvent, DiscordGatewayPresenceEvent, DiscordGatewayReactionEvent, DiscordGatewayTypingEvent, DiscordGuild, DiscordGuildMember, DiscordListenerEventMap, DiscordMention, DiscordMessage, DiscordReaction, DiscordReadState, DiscordReadStateSnapshot, DiscordRelationship, DiscordRole, DiscordRoleColors, DiscordRoleTags, DiscordSearchOptions, DiscordSearchResponse, DiscordSearchResult, DiscordUnreadDM, DiscordUnreadDMsResult, DiscordUnreadMention, DiscordUnreadMentionsResult, DiscordUser, DiscordUserNote, DiscordUserProfile, } from './types.js';
|
|
6
|
+
export type { DiscordChannel, DiscordConfig, DiscordCredentials, DiscordDMChannel, DiscordEmoji, DiscordFile, DiscordGatewayChannelEvent, DiscordGatewayEvent, DiscordGatewayGenericEvent, DiscordGatewayMemberEvent, DiscordGatewayMessageCreateEvent, DiscordGatewayMessageDeleteEvent, DiscordGatewayMessageUpdateEvent, DiscordGatewayPresenceEvent, DiscordGatewayReactionEvent, DiscordGatewayTypingEvent, DiscordGuild, DiscordGuildMember, DiscordListenerEventMap, DiscordMention, DiscordMessage, DiscordReaction, DiscordReadState, DiscordReadStateSnapshot, DiscordRelationship, DiscordSticker, DiscordRole, DiscordRoleColors, DiscordRoleTags, DiscordSearchOptions, DiscordSearchResponse, DiscordSearchResult, DiscordUnreadDM, DiscordUnreadDMsResult, DiscordUnreadMention, DiscordUnreadMentionsResult, DiscordUser, DiscordUserNote, DiscordUserProfile, } from './types.js';
|
|
7
7
|
export { DiscordChannelSchema, DiscordConfigSchema, DiscordCredentialsSchema, DiscordDMChannelSchema, DiscordFileSchema, DiscordGatewayOpcode, DiscordGuildSchema, DiscordIntent, DiscordMentionSchema, DiscordMessageSchema, DiscordReactionSchema, DiscordRelationshipSchema, DiscordSearchResponseSchema, DiscordSearchResultSchema, DiscordUserSchema, } from './types.js';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACzE,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACzE,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AA2CnD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
|
|
@@ -6,7 +6,14 @@ export interface DiscordGuild {
|
|
|
6
6
|
id: string;
|
|
7
7
|
name: string;
|
|
8
8
|
icon?: string;
|
|
9
|
+
/** Only present on GET /users/@me/guilds. */
|
|
9
10
|
owner?: boolean;
|
|
11
|
+
/** Only present on GET /guilds/{id}. */
|
|
12
|
+
owner_id?: string;
|
|
13
|
+
premium_tier?: number;
|
|
14
|
+
premium_subscription_count?: number;
|
|
15
|
+
emojis?: DiscordEmoji[];
|
|
16
|
+
stickers?: DiscordSticker[];
|
|
10
17
|
}
|
|
11
18
|
export interface DiscordChannel {
|
|
12
19
|
id: string;
|
|
@@ -83,6 +90,28 @@ export interface DiscordFile {
|
|
|
83
90
|
height?: number;
|
|
84
91
|
width?: number;
|
|
85
92
|
}
|
|
93
|
+
export interface DiscordEmoji {
|
|
94
|
+
id: string;
|
|
95
|
+
name: string;
|
|
96
|
+
animated?: boolean;
|
|
97
|
+
managed?: boolean;
|
|
98
|
+
available?: boolean;
|
|
99
|
+
roles?: string[];
|
|
100
|
+
user?: DiscordUser;
|
|
101
|
+
}
|
|
102
|
+
export interface DiscordSticker {
|
|
103
|
+
id: string;
|
|
104
|
+
name: string;
|
|
105
|
+
description?: string | null;
|
|
106
|
+
tags: string;
|
|
107
|
+
/** STANDARD = 1, GUILD = 2. */
|
|
108
|
+
type: number;
|
|
109
|
+
/** PNG = 1, APNG = 2, LOTTIE = 3, GIF = 4. */
|
|
110
|
+
format_type: number;
|
|
111
|
+
available?: boolean;
|
|
112
|
+
guild_id?: string;
|
|
113
|
+
user?: DiscordUser;
|
|
114
|
+
}
|
|
86
115
|
export interface DiscordMention {
|
|
87
116
|
id: string;
|
|
88
117
|
channel_id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,6CAA6C;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,0BAA0B,CAAC,EAAE,MAAM,CAAA;IACnC,MAAM,CAAC,EAAE,YAAY,EAAE,CAAA;IACvB,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;QAClB,qBAAqB,CAAC,EAAE,MAAM,CAAA;QAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,CAAA;CACF;AAGD,eAAO,MAAM,kBAAkB;aAC7B,UAAU,EAAE,CAAC;aACb,EAAE,EAAE,CAAC;aACL,WAAW,EAAE,CAAC;aACd,QAAQ,EAAE,CAAC;aACX,cAAc,EAAE,CAAC;aACjB,kBAAkB,EAAE,CAAC;aACrB,mBAAmB,EAAE,EAAE;aACvB,aAAa,EAAE,EAAE;aACjB,cAAc,EAAE,EAAE;aAClB,iBAAiB,EAAE,EAAE;aACrB,eAAe,EAAE,EAAE;aACnB,WAAW,EAAE,EAAE;aACf,WAAW,EAAE,EAAE;CACP,CAAA;AAkBV,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,OAAO,CAEhF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,OAAO,CAEvF;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,eAAe,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,WAAW,EAAE,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE;QACL,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KACpB,CAAA;IACD,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,WAAW,CAAA;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,EAAE,OAAO,CAAA;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,EAAE,MAAM,CAAA;CACrB;AAID,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,gBAAgB,EAAE,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,oBAAoB,EAAE,CAAA;IAChC,KAAK,EAAE,MAAM,CAAA;IAGb,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,WAAW,EAAE,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IAKrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAOD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,eAAe,EAAE,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAA;QACV,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,OAAO,CAAA;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,mBAAmB,EAAE,EAAE,CAAA;CAClC;AAED,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,iBAAiB,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,wBAAwB,GAAG,qBAAqB,GAAG,kCAAkC,CAAA;AAEjG,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IAC/D,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,CAAA;IAClC,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,WAAW,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kBAAkB,CAAC,EAAE,IAAI,CAAA;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC,sBAAsB,CAAC,EAAE,IAAI,CAAA;IAC7B,iBAAiB,CAAC,EAAE,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,8FAA8F;IAC9F,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,iBAAiB,CAAA;IACzB,KAAK,EAAE,OAAO,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,eAAe,CAAA;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,WAAW,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACpC,kBAAkB,EAAE,KAAK,CAAC;QACxB,IAAI,EAAE,MAAM,CAAA;QACZ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,QAAQ,EAAE,OAAO,CAAA;KAClB,CAAC,CAAA;IACF,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACrD;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CACb,MAAM,EACN;QACE,SAAS,EAAE,MAAM,CAAA;QACjB,WAAW,EAAE,MAAM,CAAA;KACpB,CACF,CAAA;CACF;AAGD,eAAO,MAAM,kBAAkB;;;;;iBAK7B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;iBAO/B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;;iBAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;iBAY/B,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;iBAM5B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;iBAMjC,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;iBAQ5B,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;iBAY/B,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;iBAKpC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;iBAWpC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;iBAGtC,CAAA;AAEF,eAAO,MAAM,wCAAwC;;;;;iBAKnD,CAAA;AAEF,eAAO,MAAM,wBAAwB;;iBAEnC,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;iBAU9B,CAAA;AAGF,eAAO,MAAM,oBAAoB;aAC/B,QAAQ,EAAE,CAAC;aACX,SAAS,EAAE,CAAC;aACZ,QAAQ,EAAE,CAAC;aACX,cAAc,EAAE,CAAC;aACjB,gBAAgB,EAAE,CAAC;aACnB,MAAM,EAAE,CAAC;aACT,SAAS,EAAE,CAAC;aACZ,mBAAmB,EAAE,CAAC;aACtB,cAAc,EAAE,CAAC;aACjB,KAAK,EAAE,EAAE;aACT,YAAY,EAAE,EAAE;CACR,CAAA;AAGV,eAAO,MAAM,aAAa;aACxB,MAAM;aACN,YAAY;aACZ,eAAe;aACf,cAAc;aACd,aAAa;aACb,qBAAqB;aACrB,kBAAkB;aAClB,cAAc;aACd,sBAAsB;aACtB,mBAAmB;aACnB,cAAc;CACN,CAAA;AAGV,MAAM,WAAW,gCAAgC;IAC/C,IAAI,EAAE,gBAAgB,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,gCAAgC;IAC/C,IAAI,EAAE,gBAAgB,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,gCAAgC;IAC/C,IAAI,EAAE,gBAAgB,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,sBAAsB,GAAG,yBAAyB,CAAA;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CACrC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,kBAAkB,GAAG,qBAAqB,CAAA;IAChD,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CACvC;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,iBAAiB,CAAA;IACvB,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,CAAA;IAC7C,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,cAAc,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,CAAA;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAID,eAAO,MAAM,yBAAyB;;;;;iBAKpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAI3E,eAAO,MAAM,2BAA2B;;;;mBAOtC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAC3B,gCAAgC,GAChC,gCAAgC,GAChC,gCAAgC,GAChC,2BAA2B,GAC3B,yBAAyB,GACzB,2BAA2B,GAC3B,yBAAyB,GACzB,0BAA0B,GAC1B,0BAA0B,CAAA;AAE9B,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAA;IACzD,cAAc,EAAE,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAA;IACzD,cAAc,EAAE,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAA;IACzD,oBAAoB,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAA;IAC1D,uBAAuB,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAA;IAC7D,gBAAgB,EAAE,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAA;IACpD,mBAAmB,EAAE,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAA;IACvD,eAAe,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAA;IACrD,YAAY,EAAE,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAA;IAChD,cAAc,EAAE,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAA;IACnD,cAAc,EAAE,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAA;IACnD,cAAc,EAAE,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAA;IACnD,aAAa,EAAE,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAA;IAClD,SAAS,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChF,YAAY,EAAE,EAAE,CAAA;IAChB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;CACtB;AAED,qBAAa,YAAa,SAAQ,KAAK;IACrC,IAAI,EAAE,MAAM,CAAA;IAEZ,YAAY,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAIxC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/platforms/discord/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/platforms/discord/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,9 @@ agent-discord server current
|
|
|
72
72
|
agent-discord server info <server-id>
|
|
73
73
|
```
|
|
74
74
|
|
|
75
|
+
`server info` reports the server's boost tier alongside its custom emoji and
|
|
76
|
+
sticker counts and the slots still free at that tier.
|
|
77
|
+
|
|
75
78
|
## Commands
|
|
76
79
|
|
|
77
80
|
### Whoami Command
|
|
@@ -182,6 +185,76 @@ agent-discord file list <channel-id>
|
|
|
182
185
|
agent-discord file info <channel-id> <file-id>
|
|
183
186
|
```
|
|
184
187
|
|
|
188
|
+
### Emoji Commands
|
|
189
|
+
|
|
190
|
+
Manage a server's custom emoji.
|
|
191
|
+
|
|
192
|
+
Listing needs no special permission. Creating needs `CREATE_GUILD_EXPRESSIONS`.
|
|
193
|
+
Deleting an expression you created needs either `CREATE_GUILD_EXPRESSIONS` or
|
|
194
|
+
`MANAGE_GUILD_EXPRESSIONS`; deleting someone else's needs `MANAGE_GUILD_EXPRESSIONS`.
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
# List custom emoji, with static and animated counts
|
|
198
|
+
agent-discord emoji list <server-id>
|
|
199
|
+
|
|
200
|
+
# Upload a custom emoji (name defaults to the filename without extension)
|
|
201
|
+
agent-discord emoji create <server-id> <path>
|
|
202
|
+
agent-discord emoji create 123456789 ./potato.png --name potato
|
|
203
|
+
|
|
204
|
+
# Delete a custom emoji
|
|
205
|
+
agent-discord emoji delete <server-id> <emoji-id>
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
An emoji name may only contain letters, digits and underscores, and must be
|
|
209
|
+
2–32 characters. The image must be at most 256KB.
|
|
210
|
+
|
|
211
|
+
The media type is read from the file's own bytes, not its extension, and each
|
|
212
|
+
command accepts only what its endpoint takes — emoji accepts PNG, GIF, JPEG and
|
|
213
|
+
WebP. Anything else is refused before the request, because Discord answers a
|
|
214
|
+
mismatched part with a bare `Invalid Asset`.
|
|
215
|
+
|
|
216
|
+
### Sticker Commands
|
|
217
|
+
|
|
218
|
+
Manage a server's custom stickers.
|
|
219
|
+
|
|
220
|
+
Listing needs no special permission. Creating needs `CREATE_GUILD_EXPRESSIONS`.
|
|
221
|
+
Deleting an expression you created needs either `CREATE_GUILD_EXPRESSIONS` or
|
|
222
|
+
`MANAGE_GUILD_EXPRESSIONS`; deleting someone else's needs `MANAGE_GUILD_EXPRESSIONS`.
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
# List custom stickers
|
|
226
|
+
agent-discord sticker list <server-id>
|
|
227
|
+
|
|
228
|
+
# Upload a custom sticker
|
|
229
|
+
agent-discord sticker create <server-id> <path> --tags <emoji>
|
|
230
|
+
agent-discord sticker create 123456789 ./potato.png --tags 🥔 --name potato --description "A potato"
|
|
231
|
+
|
|
232
|
+
# Delete a custom sticker
|
|
233
|
+
agent-discord sticker delete <server-id> <sticker-id>
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
**Sticker Options:**
|
|
237
|
+
|
|
238
|
+
- `--tags <emoji>` - Unicode emoji this sticker relates to (required)
|
|
239
|
+
- `--name <name>` - Sticker name, 2–30 characters (defaults to the filename)
|
|
240
|
+
- `--description <text>` - Sticker description
|
|
241
|
+
|
|
242
|
+
A sticker image must be a PNG, APNG, GIF or a Lottie JSON document, at most
|
|
243
|
+
512KB — a JPEG or WebP is refused locally, since the sticker endpoint does not
|
|
244
|
+
take them. A JSON sticker must carry a `layers` array, which every Lottie animation has;
|
|
245
|
+
whether it actually renders is Discord's call.
|
|
246
|
+
Animated stickers are capped at 5 seconds. Lottie stickers upload only on
|
|
247
|
+
guilds with the `VERIFIED` or `PARTNERED` feature.
|
|
248
|
+
|
|
249
|
+
Discord documents 320x320 for stickers, but does not appear to enforce it — a
|
|
250
|
+
408x408 PNG uploaded and registered unchanged. The CLI therefore checks the
|
|
251
|
+
file's format, not its dimensions. Keep to 320x320 to be safe.
|
|
252
|
+
|
|
253
|
+
> **Note:** Discord raises both allowances with the server's boost level —
|
|
254
|
+
> static emoji 50/100/150/250 and stickers 5/15/30/60 for boost tiers 0–3.
|
|
255
|
+
> `agent-discord server info <server-id>` reports the tier and the remaining
|
|
256
|
+
> slots.
|
|
257
|
+
|
|
185
258
|
### Snapshot Command
|
|
186
259
|
|
|
187
260
|
Get server overview for AI agents (brief by default):
|
|
@@ -125,6 +125,54 @@ const files = await client.listFiles(channelId)
|
|
|
125
125
|
// → DiscordFile[]
|
|
126
126
|
```
|
|
127
127
|
|
|
128
|
+
### Expressions (Emoji and Stickers)
|
|
129
|
+
|
|
130
|
+
```typescript
|
|
131
|
+
// List a guild's custom emoji
|
|
132
|
+
const emojis = await client.listEmojis(guildId)
|
|
133
|
+
// → DiscordEmoji[] { id, name, animated?, managed?, available?, roles?, user? }
|
|
134
|
+
|
|
135
|
+
// Upload a custom emoji. The media type is read from the bytes, not the filename.
|
|
136
|
+
const bytes = new Uint8Array(await readFile('./potato.png'))
|
|
137
|
+
const emoji = await client.createEmoji(guildId, 'potato', bytes, 'potato.png')
|
|
138
|
+
|
|
139
|
+
await client.deleteEmoji(guildId, emoji.id)
|
|
140
|
+
|
|
141
|
+
// List a guild's custom stickers
|
|
142
|
+
const stickers = await client.listStickers(guildId)
|
|
143
|
+
// → DiscordSticker[] { id, name, tags, type, format_type, description?, ... }
|
|
144
|
+
// type: STANDARD = 1, GUILD = 2. format_type: PNG = 1, APNG = 2, LOTTIE = 3, GIF = 4.
|
|
145
|
+
|
|
146
|
+
// Upload a custom sticker. `tags` is the unicode emoji it relates to.
|
|
147
|
+
const sticker = await client.createSticker(
|
|
148
|
+
guildId,
|
|
149
|
+
{ name: 'potato', description: 'A potato', tags: '🥔' },
|
|
150
|
+
bytes,
|
|
151
|
+
'potato.png',
|
|
152
|
+
)
|
|
153
|
+
|
|
154
|
+
await client.deleteSticker(guildId, sticker.id)
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
These methods take image bytes rather than a path, so the caller decides how the
|
|
158
|
+
image is read. The media type the upload declares is read from the bytes
|
|
159
|
+
themselves — a filename is unverified input, and Discord refuses a part whose
|
|
160
|
+
declared type does not match its content with a bare `Invalid Asset`.
|
|
161
|
+
|
|
162
|
+
Each endpoint takes its own formats: emoji accepts PNG, GIF, JPEG and WebP;
|
|
163
|
+
stickers accept PNG (including APNG), GIF and a JSON document for Lottie.
|
|
164
|
+
Bytes that are not one of the target endpoint's formats throw a `DiscordError`
|
|
165
|
+
with code `unsupported_asset` before any request is made. A sticker's JSON must
|
|
166
|
+
carry the `layers` array every Lottie animation has — `{}` is otherwise sent and
|
|
167
|
+
refused as `Invalid Asset`. Whether the animation renders is Discord's call, and
|
|
168
|
+
Lottie uploads need a `VERIFIED` or `PARTNERED` guild.
|
|
169
|
+
|
|
170
|
+
Listing needs no special permission. Creating needs `CREATE_GUILD_EXPRESSIONS`.
|
|
171
|
+
Deleting an expression you created needs either `CREATE_GUILD_EXPRESSIONS` or
|
|
172
|
+
`MANAGE_GUILD_EXPRESSIONS`; deleting someone else's needs `MANAGE_GUILD_EXPRESSIONS`. `getServer(guildId)`
|
|
173
|
+
returns `premium_tier` with the guild's `emojis` and `stickers`, which is how
|
|
174
|
+
you find out how many slots remain.
|
|
175
|
+
|
|
128
176
|
### Direct Messages
|
|
129
177
|
|
|
130
178
|
```typescript
|
|
@@ -369,6 +417,8 @@ const credentials = await manager.getCredentials()
|
|
|
369
417
|
import type {
|
|
370
418
|
DiscordGuild,
|
|
371
419
|
DiscordChannel,
|
|
420
|
+
DiscordEmoji,
|
|
421
|
+
DiscordSticker,
|
|
372
422
|
DiscordMessage,
|
|
373
423
|
DiscordUser,
|
|
374
424
|
DiscordDMChannel,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-messenger",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.38.0",
|
|
4
4
|
"description": "Multi-platform messaging CLI for AI agents (Slack, Discord, Teams, Webex, Telegram, Telegram Bot, WhatsApp, LINE, iMessage, Instagram, KakaoTalk, Channel Talk)",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|