sweety-html-transcripts 0.2.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/LICENSE +201 -0
- package/README.md +127 -0
- package/dist/adapters/core.d.ts +41 -0
- package/dist/adapters/core.js +30 -0
- package/dist/adapters/core.js.map +1 -0
- package/dist/adapters/discordjs.d.ts +26 -0
- package/dist/adapters/discordjs.js +102 -0
- package/dist/adapters/discordjs.js.map +1 -0
- package/dist/adapters/seyfert.d.ts +26 -0
- package/dist/adapters/seyfert.js +67 -0
- package/dist/adapters/seyfert.js.map +1 -0
- package/dist/downloader/images.d.ts +37 -0
- package/dist/downloader/images.js +119 -0
- package/dist/downloader/images.js.map +1 -0
- package/dist/generator/index.d.ts +34 -0
- package/dist/generator/index.js +81 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/renderers/attachment.d.ts +24 -0
- package/dist/generator/renderers/attachment.js +133 -0
- package/dist/generator/renderers/attachment.js.map +1 -0
- package/dist/generator/renderers/components.d.ts +8 -0
- package/dist/generator/renderers/components.js +179 -0
- package/dist/generator/renderers/components.js.map +1 -0
- package/dist/generator/renderers/content.d.ts +32 -0
- package/dist/generator/renderers/content.js +168 -0
- package/dist/generator/renderers/content.js.map +1 -0
- package/dist/generator/renderers/embed.d.ts +15 -0
- package/dist/generator/renderers/embed.js +77 -0
- package/dist/generator/renderers/embed.js.map +1 -0
- package/dist/generator/renderers/message.d.ts +15 -0
- package/dist/generator/renderers/message.js +95 -0
- package/dist/generator/renderers/message.js.map +1 -0
- package/dist/generator/renderers/reply.d.ts +7 -0
- package/dist/generator/renderers/reply.js +76 -0
- package/dist/generator/renderers/reply.js.map +1 -0
- package/dist/generator/renderers/systemMessage.d.ts +19 -0
- package/dist/generator/renderers/systemMessage.js +109 -0
- package/dist/generator/renderers/systemMessage.js.map +1 -0
- package/dist/generator/transcript.d.ts +12 -0
- package/dist/generator/transcript.js +85 -0
- package/dist/generator/transcript.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.js +143 -0
- package/dist/index.js.map +1 -0
- package/dist/static/client.d.ts +2 -0
- package/dist/static/client.js +30 -0
- package/dist/static/client.js.map +1 -0
- package/dist/types.d.ts +69 -0
- package/dist/types.js +10 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/api.d.ts +19 -0
- package/dist/utils/api.js +364 -0
- package/dist/utils/api.js.map +1 -0
- package/dist/utils/cdn.d.ts +28 -0
- package/dist/utils/cdn.js +61 -0
- package/dist/utils/cdn.js.map +1 -0
- package/dist/utils/channel.d.ts +34 -0
- package/dist/utils/channel.js +51 -0
- package/dist/utils/channel.js.map +1 -0
- package/dist/utils/embeds.d.ts +2 -0
- package/dist/utils/embeds.js +17 -0
- package/dist/utils/embeds.js.map +1 -0
- package/dist/utils/guild.d.ts +9 -0
- package/dist/utils/guild.js +19 -0
- package/dist/utils/guild.js.map +1 -0
- package/dist/utils/message.d.ts +6 -0
- package/dist/utils/message.js +11 -0
- package/dist/utils/message.js.map +1 -0
- package/dist/utils/profiles.d.ts +18 -0
- package/dist/utils/profiles.js +67 -0
- package/dist/utils/profiles.js.map +1 -0
- package/dist/utils/replacer.d.ts +28 -0
- package/dist/utils/replacer.js +67 -0
- package/dist/utils/replacer.js.map +1 -0
- package/dist/utils/user.d.ts +18 -0
- package/dist/utils/user.js +38 -0
- package/dist/utils/user.js.map +1 -0
- package/dist/utils/utils.d.ts +32 -0
- package/dist/utils/utils.js +61 -0
- package/dist/utils/utils.js.map +1 -0
- package/package.json +90 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../src/generator/renderers/components.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SingleASTNode } from 'simple-markdown';
|
|
3
|
+
import type { RenderMessageContext } from '../';
|
|
4
|
+
import { ChannelType } from 'discord-api-types/v10';
|
|
5
|
+
export declare enum RenderType {
|
|
6
|
+
EMBED = 0,
|
|
7
|
+
REPLY = 1,
|
|
8
|
+
NORMAL = 2,
|
|
9
|
+
WEBHOOK = 3
|
|
10
|
+
}
|
|
11
|
+
type RenderContentContext = RenderMessageContext & {
|
|
12
|
+
type: RenderType;
|
|
13
|
+
_internal?: {
|
|
14
|
+
largeEmojis?: boolean;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Renders discord markdown content
|
|
19
|
+
* @param content - The content to render
|
|
20
|
+
* @param context - The context to render the content in
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export default function MessageContent({ content, context }: {
|
|
24
|
+
content: string;
|
|
25
|
+
context: RenderContentContext;
|
|
26
|
+
}): Promise<React.JSX.Element>;
|
|
27
|
+
export declare function MessageSingleASTNode({ node, context }: {
|
|
28
|
+
node: SingleASTNode;
|
|
29
|
+
context: RenderContentContext;
|
|
30
|
+
}): Promise<any>;
|
|
31
|
+
export declare function getChannelType(channelType: ChannelType): 'channel' | 'voice' | 'thread' | 'forum';
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RenderType = void 0;
|
|
7
|
+
exports.default = MessageContent;
|
|
8
|
+
exports.MessageSingleASTNode = MessageSingleASTNode;
|
|
9
|
+
exports.getChannelType = getChannelType;
|
|
10
|
+
const discord_components_react_render_1 = require("@penwin/discord-components-react-render");
|
|
11
|
+
const discord_markdown_parser_1 = __importDefault(require("discord-markdown-parser"));
|
|
12
|
+
const react_1 = __importDefault(require("react"));
|
|
13
|
+
const channel_1 = require("../../utils/channel");
|
|
14
|
+
const utils_1 = require("../../utils/utils");
|
|
15
|
+
const v10_1 = require("discord-api-types/v10");
|
|
16
|
+
const user_1 = require("../../utils/user");
|
|
17
|
+
var RenderType;
|
|
18
|
+
(function (RenderType) {
|
|
19
|
+
RenderType[RenderType["EMBED"] = 0] = "EMBED";
|
|
20
|
+
RenderType[RenderType["REPLY"] = 1] = "REPLY";
|
|
21
|
+
RenderType[RenderType["NORMAL"] = 2] = "NORMAL";
|
|
22
|
+
RenderType[RenderType["WEBHOOK"] = 3] = "WEBHOOK";
|
|
23
|
+
})(RenderType || (exports.RenderType = RenderType = {}));
|
|
24
|
+
/**
|
|
25
|
+
* Renders discord markdown content
|
|
26
|
+
* @param content - The content to render
|
|
27
|
+
* @param context - The context to render the content in
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
async function MessageContent({ content, context }) {
|
|
31
|
+
if (context.type === RenderType.REPLY && content.length > 180)
|
|
32
|
+
content = content.slice(0, 180) + '...';
|
|
33
|
+
// parse the markdown
|
|
34
|
+
const parsed = (0, discord_markdown_parser_1.default)(content,
|
|
35
|
+
//? apparently now users can use extended parsing
|
|
36
|
+
// context.type === RenderType.EMBED || context.type === RenderType.WEBHOOK ? 'extended' : 'normal'
|
|
37
|
+
'extended');
|
|
38
|
+
// check if the parsed content is only emojis
|
|
39
|
+
const isOnlyEmojis = parsed.every((node) => ['emoji', 'twemoji'].includes(node.type) || (node.type === 'text' && node.content.trim().length === 0));
|
|
40
|
+
if (isOnlyEmojis) {
|
|
41
|
+
// now check if there are less than or equal to 25 emojis
|
|
42
|
+
const emojis = parsed.filter((node) => ['emoji', 'twemoji'].includes(node.type));
|
|
43
|
+
if (emojis.length <= 25) {
|
|
44
|
+
context._internal = {
|
|
45
|
+
largeEmojis: true,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return react_1.default.createElement(MessageASTNodes, { nodes: parsed, context: context });
|
|
50
|
+
}
|
|
51
|
+
// This function can probably be combined into the MessageSingleASTNode function
|
|
52
|
+
async function MessageASTNodes({ nodes, context, }) {
|
|
53
|
+
if (Array.isArray(nodes)) {
|
|
54
|
+
return (react_1.default.createElement(react_1.default.Fragment, null, nodes.map((node, i) => (react_1.default.createElement(MessageSingleASTNode, { node: node, context: context, key: i })))));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
return react_1.default.createElement(MessageSingleASTNode, { node: nodes, context: context });
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
async function MessageSingleASTNode({ node, context }) {
|
|
61
|
+
if (!node)
|
|
62
|
+
return null;
|
|
63
|
+
const type = node.type;
|
|
64
|
+
switch (type) {
|
|
65
|
+
case 'text':
|
|
66
|
+
return node.content;
|
|
67
|
+
case 'link':
|
|
68
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordLink, { href: node.target },
|
|
69
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
70
|
+
case 'url':
|
|
71
|
+
case 'autolink':
|
|
72
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordLink, { href: node.target, target: "_blank", rel: "noreferrer" },
|
|
73
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
74
|
+
case 'blockQuote':
|
|
75
|
+
if (context.type === RenderType.REPLY) {
|
|
76
|
+
return react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context });
|
|
77
|
+
}
|
|
78
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordQuote, null,
|
|
79
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
80
|
+
case 'br':
|
|
81
|
+
case 'newline':
|
|
82
|
+
if (context.type === RenderType.REPLY)
|
|
83
|
+
return ' ';
|
|
84
|
+
return react_1.default.createElement("br", null);
|
|
85
|
+
case 'channel': {
|
|
86
|
+
const id = node.id;
|
|
87
|
+
const channel = await context.callbacks.resolveChannel(id);
|
|
88
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordMention, { type: channel ? (channel_1.channelUtils.isDM(channel) ? 'channel' : getChannelType(channel.type)) : 'channel' }, channel
|
|
89
|
+
? channel_1.channelUtils.isDM(channel)
|
|
90
|
+
? 'DM Channel'
|
|
91
|
+
: channel.name
|
|
92
|
+
: `<#${id}>`));
|
|
93
|
+
}
|
|
94
|
+
case 'role': {
|
|
95
|
+
const id = node.id;
|
|
96
|
+
const role = await context.callbacks.resolveRole(id);
|
|
97
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordMention, { type: "role", color: context.type === RenderType.REPLY ? undefined : (0, utils_1.convertToHEX)(role?.color) }, role ? role.name : `<@&${id}>`));
|
|
98
|
+
}
|
|
99
|
+
case 'heading': {
|
|
100
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordHeader, { level: node.level },
|
|
101
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
102
|
+
}
|
|
103
|
+
case 'user': {
|
|
104
|
+
const id = node.id;
|
|
105
|
+
const user = await context.callbacks.resolveUser(id);
|
|
106
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordMention, { type: "user" }, user ? user_1.userUtils.displayName(user) : `<@${id}>`);
|
|
107
|
+
}
|
|
108
|
+
case 'here':
|
|
109
|
+
case 'everyone':
|
|
110
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordMention, { type: 'role', highlight: true }, `@${type}`));
|
|
111
|
+
case 'codeBlock':
|
|
112
|
+
if (context.type !== RenderType.REPLY) {
|
|
113
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordCodeBlock, { language: node.lang, code: node.content });
|
|
114
|
+
}
|
|
115
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordCode, { multiline: true }, node.content);
|
|
116
|
+
case 'inlineCode':
|
|
117
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordCode, null, node.content);
|
|
118
|
+
case 'em':
|
|
119
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordItalic, null,
|
|
120
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
121
|
+
case 'strong':
|
|
122
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordBold, null,
|
|
123
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
124
|
+
case 'underline':
|
|
125
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordUnderlined, null,
|
|
126
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
127
|
+
case 'strikethrough':
|
|
128
|
+
return (react_1.default.createElement("s", null,
|
|
129
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
130
|
+
case 'emoticon':
|
|
131
|
+
return typeof node.content === 'string' ? (node.content) : (react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context }));
|
|
132
|
+
case 'spoiler':
|
|
133
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordSpoiler, null,
|
|
134
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
135
|
+
case 'emoji':
|
|
136
|
+
case 'twemoji':
|
|
137
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordCustomEmoji, { name: node.name, url: (0, utils_1.parseDiscordEmoji)(node), embedEmoji: context.type === RenderType.EMBED, jumbo: context._internal?.largeEmojis }));
|
|
138
|
+
case 'subtext':
|
|
139
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordSubscript, null,
|
|
140
|
+
react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context })));
|
|
141
|
+
case 'timestamp':
|
|
142
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordTime, { timestamp: parseInt(node.timestamp), format: node.format });
|
|
143
|
+
default: {
|
|
144
|
+
console.log(`Unknown node type: ${type}`, node);
|
|
145
|
+
return typeof node.content === 'string' ? (node.content) : (react_1.default.createElement(MessageASTNodes, { nodes: node.content, context: context }));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
function getChannelType(channelType) {
|
|
150
|
+
switch (channelType) {
|
|
151
|
+
case v10_1.ChannelType.GuildCategory:
|
|
152
|
+
case v10_1.ChannelType.GuildAnnouncement:
|
|
153
|
+
case v10_1.ChannelType.GuildText:
|
|
154
|
+
return 'channel';
|
|
155
|
+
case v10_1.ChannelType.GuildVoice:
|
|
156
|
+
case v10_1.ChannelType.GuildStageVoice:
|
|
157
|
+
return 'voice';
|
|
158
|
+
case v10_1.ChannelType.PublicThread:
|
|
159
|
+
case v10_1.ChannelType.PrivateThread:
|
|
160
|
+
case v10_1.ChannelType.AnnouncementThread:
|
|
161
|
+
return 'thread';
|
|
162
|
+
case v10_1.ChannelType.GuildForum:
|
|
163
|
+
return 'forum';
|
|
164
|
+
default:
|
|
165
|
+
return 'channel';
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/generator/renderers/content.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { APIEmbed, APIMessageSnapshot } from 'discord-api-types/v10';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { RenderMessageContext } from '..';
|
|
4
|
+
import type { APIMessageData } from '../../utils/channel';
|
|
5
|
+
type RenderEmbedContext = RenderMessageContext & {
|
|
6
|
+
index: number;
|
|
7
|
+
message: APIMessageData | (APIMessageSnapshot['message'] & {
|
|
8
|
+
id?: string;
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
export declare function DiscordEmbed({ embed, context }: {
|
|
12
|
+
embed: APIEmbed;
|
|
13
|
+
context: RenderEmbedContext;
|
|
14
|
+
}): Promise<React.JSX.Element>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.DiscordEmbed = DiscordEmbed;
|
|
40
|
+
const discord_components_react_render_1 = require("@penwin/discord-components-react-render");
|
|
41
|
+
const v10_1 = require("discord-api-types/v10");
|
|
42
|
+
const discord_markdown_parser_1 = __importDefault(require("discord-markdown-parser"));
|
|
43
|
+
const react_1 = __importStar(require("react"));
|
|
44
|
+
const embeds_1 = require("../../utils/embeds");
|
|
45
|
+
const utils_1 = require("../../utils/utils");
|
|
46
|
+
const content_1 = __importStar(require("./content"));
|
|
47
|
+
async function DiscordEmbed({ embed, context }) {
|
|
48
|
+
if (embed.type === v10_1.EmbedType.Image || embed.type === v10_1.EmbedType.Video || embed.type === v10_1.EmbedType.GIFV) {
|
|
49
|
+
const data = embed.thumbnail;
|
|
50
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordMediaGallery, { slot: "embeds" },
|
|
51
|
+
react_1.default.createElement(discord_components_react_render_1.DiscordMediaGalleryItem, { media: data.proxy_url ?? data.url, "mime-type": data.content_type, width: data.width, height: data.height })));
|
|
52
|
+
}
|
|
53
|
+
const key = context.message.id ? `${context.message.id}-e-${context.index}` : void 0;
|
|
54
|
+
const isArticle = embed.type === v10_1.EmbedType.Article;
|
|
55
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordEmbed, { "embed-title": embed.title ?? undefined, slot: "embeds", key: key, "author-image": embed.author?.proxy_icon_url ?? embed.author?.icon_url, "author-name": embed.author?.name, "author-url": embed.author?.url, color: embed.color ? (0, utils_1.convertToHEX)(embed.color) : undefined, image: embed.image?.proxy_url ??
|
|
56
|
+
embed.image?.url ??
|
|
57
|
+
(isArticle ? (embed.thumbnail?.proxy_url ?? embed.thumbnail?.url) : void 0), thumbnail: !isArticle ? (embed.thumbnail?.proxy_url ?? embed.thumbnail?.url) : void 0, url: embed.url ?? undefined, provider: embed.provider?.name ?? undefined },
|
|
58
|
+
embed.description && (react_1.default.createElement(discord_components_react_render_1.DiscordEmbedDescription, { slot: "description" },
|
|
59
|
+
react_1.default.createElement(content_1.default, { content: embed.description, context: { ...context, type: content_1.RenderType.EMBED } }))),
|
|
60
|
+
embed.fields && embed.fields.length > 0 && (react_1.default.createElement(discord_components_react_render_1.DiscordEmbedFields, { slot: "fields" }, embed.fields.map((field, id) => {
|
|
61
|
+
const parsedTitle = (0, discord_markdown_parser_1.default)(field.name).map((node, id) => {
|
|
62
|
+
switch (node.type) {
|
|
63
|
+
case 'text':
|
|
64
|
+
return react_1.default.createElement(react_1.Fragment, { key: id }, node.content);
|
|
65
|
+
case 'inlineCode':
|
|
66
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordCode, { key: id }, node.content);
|
|
67
|
+
default:
|
|
68
|
+
throw new Error(`Unsupported node type in embed field title: ${node.type}`);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordEmbedField, { key: `${context.message.id}-e-${context.index}-f-${id}`, "field-title": field.name, inline: field.inline, "inline-index": field.inline ? (0, embeds_1.calculateInlineIndex)(embed.fields ?? [], id) : void 0 },
|
|
72
|
+
react_1.default.createElement("span", { slot: "field-title" }, parsedTitle),
|
|
73
|
+
react_1.default.createElement(content_1.default, { content: field.value, context: { ...context, type: content_1.RenderType.EMBED } })));
|
|
74
|
+
}))),
|
|
75
|
+
embed.footer && (react_1.default.createElement(discord_components_react_render_1.DiscordEmbedFooter, { slot: "footer", "footer-image": embed.footer.proxy_icon_url ?? embed.footer.icon_url, timestamp: embed.timestamp ?? undefined }, embed.footer.text))));
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=embed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embed.js","sourceRoot":"","sources":["../../../src/generator/renderers/embed.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { APIMessageSnapshot } from 'discord-api-types/v10';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { RenderMessageContext } from '..';
|
|
4
|
+
import type { APIMessageData } from '../../utils/channel';
|
|
5
|
+
export default function DiscordMessage({ message, snapshot, snapshotId, context, }: {
|
|
6
|
+
context: RenderMessageContext;
|
|
7
|
+
} & ({
|
|
8
|
+
message: APIMessageData;
|
|
9
|
+
snapshot?: undefined;
|
|
10
|
+
snapshotId?: undefined;
|
|
11
|
+
} | {
|
|
12
|
+
snapshot: APIMessageSnapshot;
|
|
13
|
+
message?: undefined;
|
|
14
|
+
snapshotId: string | number;
|
|
15
|
+
})): Promise<React.JSX.Element>;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.default = DiscordMessage;
|
|
40
|
+
const discord_components_react_render_1 = require("@penwin/discord-components-react-render");
|
|
41
|
+
const v10_1 = require("discord-api-types/v10");
|
|
42
|
+
const react_1 = __importDefault(require("react"));
|
|
43
|
+
const utils_1 = require("../../utils/utils");
|
|
44
|
+
const attachment_1 = require("./attachment");
|
|
45
|
+
const components_1 = require("./components");
|
|
46
|
+
const content_1 = __importStar(require("./content"));
|
|
47
|
+
const embed_1 = require("./embed");
|
|
48
|
+
const reply_1 = __importDefault(require("./reply"));
|
|
49
|
+
const systemMessage_1 = __importStar(require("./systemMessage"));
|
|
50
|
+
const message_1 = require("../../utils/message");
|
|
51
|
+
const guild_1 = require("../../utils/guild");
|
|
52
|
+
async function DiscordMessage({ message, snapshot, snapshotId, context, }) {
|
|
53
|
+
const { adapter } = context;
|
|
54
|
+
const isSystem = message && 'system' in message && message.system === true;
|
|
55
|
+
if (message && (isSystem || systemMessage_1.SystemMessageTypes.includes(message.type)))
|
|
56
|
+
return react_1.default.createElement(systemMessage_1.default, { message: message, context: context });
|
|
57
|
+
const isCrosspost = message?.message_reference &&
|
|
58
|
+
message.message_reference.type !== v10_1.MessageReferenceType.Forward &&
|
|
59
|
+
message.message_reference.guild_id !== message.guild_id;
|
|
60
|
+
const threadMessage = message?.thread &&
|
|
61
|
+
(message.thread.type === v10_1.ChannelType.PublicThread || message.thread.type === v10_1.ChannelType.PrivateThread)
|
|
62
|
+
? await adapter.resolveMessage(message.thread.id, message.thread.last_message_id)
|
|
63
|
+
: null;
|
|
64
|
+
const displayMessage = (message ?? snapshot.message);
|
|
65
|
+
const componets = displayMessage?.components && displayMessage.components.length > 0 && (react_1.default.createElement(discord_components_react_render_1.DiscordAttachments, { slot: "components" },
|
|
66
|
+
react_1.default.createElement(discord_components_react_render_1.DiscordComponentsColumn, null, displayMessage.components.map((component, id) => (react_1.default.createElement(components_1.Component, { key: id, component: component, id: id, context: context }))))));
|
|
67
|
+
const id = message ? `m-${message.id}` : `sn-${snapshotId}`;
|
|
68
|
+
const isForward = message && message_1.messageUtils.isForward(message);
|
|
69
|
+
const [forwardedGuild, forwardedChannel] = await Promise.all([
|
|
70
|
+
isForward && message.message_reference?.guild_id ? adapter.resolveGuild(message.message_reference.guild_id) : null,
|
|
71
|
+
isForward && message.message_reference?.guild_id
|
|
72
|
+
? adapter.resolveChannel(message.message_reference.channel_id)
|
|
73
|
+
: null,
|
|
74
|
+
]);
|
|
75
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordMessage, { id: id, timestamp: displayMessage.timestamp, "raw-timestamp": displayMessage.timestamp, key: id, edited: displayMessage.edited_timestamp !== null, server: isCrosspost ?? undefined, highlight: message?.mention_roles?.includes('@everyone') || message?.mention_roles?.includes('@here'), profile: message?.author?.id },
|
|
76
|
+
message && react_1.default.createElement(reply_1.default, { message: message, context: context }),
|
|
77
|
+
message?.interaction_metadata?.type === v10_1.InteractionType.ApplicationCommand && (react_1.default.createElement(discord_components_react_render_1.DiscordCommand, { slot: "reply", profile: message.interaction_metadata.user.id, command: message.interaction.name })),
|
|
78
|
+
displayMessage.content && (react_1.default.createElement(content_1.default, { content: displayMessage.content, context: { ...context, type: displayMessage.webhook_id ? content_1.RenderType.WEBHOOK : content_1.RenderType.NORMAL } })),
|
|
79
|
+
react_1.default.createElement(attachment_1.Attachments, { message: displayMessage, context: context }),
|
|
80
|
+
displayMessage.embeds.map((embed, id) => (react_1.default.createElement(embed_1.DiscordEmbed, { embed: embed, context: { ...context, index: id, message: displayMessage }, key: id }))),
|
|
81
|
+
componets,
|
|
82
|
+
message?.message_snapshots?.map((snpashot, index) => (react_1.default.createElement(discord_components_react_render_1.DiscordForwardedMessage, { key: index, "guild-icon": forwardedGuild ? guild_1.guildUtils.iconURL(forwardedGuild, { size: 32, extension: 'png' }) : undefined, "channel-name": forwardedChannel && 'name' in forwardedChannel ? (forwardedChannel.name ?? void 0) : undefined, timestamp: snpashot.message.timestamp, "is-same-guild": forwardedGuild?.id === context.guild?.id },
|
|
83
|
+
react_1.default.createElement(DiscordMessage, { snapshot: snpashot, context: context, snapshotId: index })))),
|
|
84
|
+
message?.reactions && message?.reactions.length > 0 && (react_1.default.createElement(discord_components_react_render_1.DiscordReactions, { slot: "reactions" }, message.reactions.map((reaction, id) => (react_1.default.createElement(discord_components_react_render_1.DiscordReaction, { key: `${message.id}r${id}`, name: reaction.emoji.name, emoji: (0, utils_1.parseDiscordEmoji)(reaction.emoji), count: reaction.count }))))),
|
|
85
|
+
message?.thread &&
|
|
86
|
+
(message.thread.type === v10_1.ChannelType.PublicThread || message.thread.type === v10_1.ChannelType.PrivateThread) && (react_1.default.createElement(discord_components_react_render_1.DiscordThread, { slot: "thread", name: message.thread.name, cta: message.thread.message_count
|
|
87
|
+
? `${message.thread.message_count} Message${message.thread.message_count > 1 ? 's' : ''}`
|
|
88
|
+
: 'View Thread' }, message.thread.last_message_id && threadMessage ? (react_1.default.createElement(discord_components_react_render_1.DiscordThreadMessage, { profile:
|
|
89
|
+
// (await message.client.messages.fetch(message.thread.lastMessageId, message.thread.id)).author.id
|
|
90
|
+
(await adapter.resolveMessage(message.thread.id, message.thread.last_message_id))?.author.id },
|
|
91
|
+
react_1.default.createElement(content_1.default, { content: threadMessage.content.length > 128
|
|
92
|
+
? threadMessage.content.substring(0, 125) + '...'
|
|
93
|
+
: threadMessage.content, context: { ...context, type: content_1.RenderType.REPLY } }))) : (`Thread messages not saved.`)))));
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/generator/renderers/message.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,iCA0JC;AApLD,6FAUiD;AAEjD,+CAA2F;AAC3F,kDAA0B;AAG1B,6CAAsD;AACtD,6CAA2C;AAC3C,6CAAyC;AACzC,qDAAuD;AACvD,mCAAuC;AACvC,oDAAmC;AACnC,iEAA2E;AAC3E,iDAAmD;AACnD,6CAA+C;AAEhC,KAAK,UAAU,cAAc,CAAC,EAC3C,OAAO,EACP,QAAQ,EACR,UAAU,EACV,OAAO,GAMR;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE5B,MAAM,QAAQ,GAAG,OAAO,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IAC3E,IAAI,OAAO,IAAI,CAAC,QAAQ,IAAI,kCAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpE,OAAO,8BAAC,uBAAoB,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI,CAAC;IAEtE,MAAM,WAAW,GACf,OAAO,EAAE,iBAAiB;QAC1B,OAAO,CAAC,iBAAiB,CAAC,IAAI,KAAK,0BAAoB,CAAC,OAAO;QAC/D,OAAO,CAAC,iBAAiB,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;IAE1D,MAAM,aAAa,GACjB,OAAO,EAAE,MAAM;QACf,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAW,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAW,CAAC,aAAa,CAAC;QACrG,CAAC,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,eAAgB,CAAC;QAClF,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,cAAc,GAAG,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAElD,CAAC;IAEF,MAAM,SAAS,GAAG,cAAc,EAAE,UAAU,IAAI,cAAc,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CACtF,8BAAC,oDAAkB,IAAC,IAAI,EAAC,YAAY;QACnC,8BAAC,yDAAuB,QACrB,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,CAChD,8BAAC,sBAAS,IAAC,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,GAAI,CACvE,CAAC,CACsB,CACP,CACtB,CAAC;IAEF,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,UAAU,EAAE,CAAC;IAE5D,MAAM,SAAS,GAAG,OAAO,IAAI,sBAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAE7D,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3D,SAAS,IAAI,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;QAClH,SAAS,IAAI,OAAO,CAAC,iBAAiB,EAAE,QAAQ;YAC9C,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC;YAC9D,CAAC,CAAC,IAAI;KACT,CAAC,CAAC;IAEH,OAAO,CACL,8BAAC,gDAAuB,IACtB,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,cAAc,CAAC,SAAS,mBACpB,cAAc,CAAC,SAAS,EACvC,GAAG,EAAE,EAAE,EACP,MAAM,EAAE,cAAc,CAAC,gBAAgB,KAAK,IAAI,EAChD,MAAM,EAAE,WAAW,IAAI,SAAS,EAChC,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,OAAO,CAAC,EACrG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAG3B,OAAO,IAAI,8BAAC,eAAY,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI;QAG/D,OAAO,EAAE,oBAAoB,EAAE,IAAI,KAAK,qBAAe,CAAC,kBAAkB,IAAI,CAC7E,8BAAC,gDAAc,IACb,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAC7C,OAAO,EAAE,OAAO,CAAC,WAAY,CAAC,IAAI,GAClC,CACH;QAGA,cAAc,CAAC,OAAO,IAAI,CACzB,8BAAC,iBAAc,IACb,OAAO,EAAE,cAAc,CAAC,OAAO,EAC/B,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAU,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAU,CAAC,MAAM,EAAE,GACjG,CACH;QAED,8BAAC,wBAAW,IAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,GAAI;QAGzD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CACxC,8BAAC,oBAAY,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,GAAG,EAAE,EAAE,GAAI,CACrG,CAAC;QAED,SAAS;QAET,OAAO,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CACpD,8BAAC,yDAAuB,IACtB,GAAG,EAAE,KAAK,gBACE,cAAc,CAAC,CAAC,CAAC,kBAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,kBAC7F,gBAAgB,IAAI,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAC5G,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,mBACtB,cAAc,EAAE,EAAE,KAAK,OAAO,CAAC,KAAK,EAAE,EAAE;YAEvD,8BAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,GAAI,CACnD,CAC3B,CAAC;QAGD,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACtD,8BAAC,kDAAgB,IAAC,IAAI,EAAC,WAAW,IAC/B,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CACvC,8BAAC,iDAAe,IACd,GAAG,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,EAC1B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAK,EAC1B,KAAK,EAAE,IAAA,yBAAiB,EAAC,QAAQ,CAAC,KAAiC,CAAC,EACpE,KAAK,EAAE,QAAQ,CAAC,KAAK,GACrB,CACH,CAAC,CACe,CACpB;QAGA,OAAO,EAAE,MAAM;YACd,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAW,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAW,CAAC,aAAa,CAAC,IAAI,CACzG,8BAAC,+CAAa,IACZ,IAAI,EAAC,QAAQ,EACb,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EACzB,GAAG,EACD,OAAO,CAAC,MAAM,CAAC,aAAa;gBAC1B,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,WAAW,OAAO,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzF,CAAC,CAAC,aAAa,IAGlB,OAAO,CAAC,MAAM,CAAC,eAAe,IAAI,aAAa,CAAC,CAAC,CAAC,CACjD,8BAAC,sDAAoB,IACnB,OAAO;YACL,mGAAmG;YACnG,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,eAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE;YAG/F,8BAAC,iBAAc,IACb,OAAO,EACL,aAAa,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG;oBAChC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK;oBACjD,CAAC,CAAC,aAAa,CAAC,OAAO,EAE3B,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,oBAAU,CAAC,KAAK,EAAE,GAC/C,CACmB,CACxB,CAAC,CAAC,CAAC,CACF,4BAA4B,CAC7B,CACa,CACjB,CACqB,CAC3B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { RenderMessageContext } from '..';
|
|
3
|
+
import type { APIMessageData } from '../../utils/channel';
|
|
4
|
+
export default function MessageReply({ message, context, }: {
|
|
5
|
+
message: APIMessageData;
|
|
6
|
+
context: RenderMessageContext;
|
|
7
|
+
}): Promise<React.JSX.Element | null>;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.default = MessageReply;
|
|
40
|
+
const discord_components_react_render_1 = require("@penwin/discord-components-react-render");
|
|
41
|
+
const react_1 = __importDefault(require("react"));
|
|
42
|
+
const v10_1 = require("discord-api-types/v10");
|
|
43
|
+
const channel_1 = require("../../utils/channel");
|
|
44
|
+
const utils_1 = require("../../utils/utils");
|
|
45
|
+
const content_1 = __importStar(require("./content"));
|
|
46
|
+
const user_1 = require("../../utils/user");
|
|
47
|
+
const replacer_1 = require("../../utils/replacer");
|
|
48
|
+
const message_1 = require("../../utils/message");
|
|
49
|
+
async function MessageReply({ message, context, }) {
|
|
50
|
+
if (message_1.messageUtils.isForward(message))
|
|
51
|
+
return null;
|
|
52
|
+
if (!message.message_reference)
|
|
53
|
+
return null;
|
|
54
|
+
if (message.message_reference.guild_id !== message.guild_id)
|
|
55
|
+
return null;
|
|
56
|
+
const referencedMessage = message.message_reference.message_id
|
|
57
|
+
? await context.adapter.resolveMessage(message.message_reference.channel_id, message.message_reference.message_id)
|
|
58
|
+
: null;
|
|
59
|
+
if (!referencedMessage)
|
|
60
|
+
return react_1.default.createElement(discord_components_react_render_1.DiscordReply, { slot: "reply" }, "Message could not be loaded.");
|
|
61
|
+
const isCrosspost = referencedMessage.message_reference && referencedMessage.message_reference.guild_id !== message.guild_id;
|
|
62
|
+
const isCommand = (0, replacer_1.isObject)(referencedMessage.interaction_metadata);
|
|
63
|
+
const referencedMember = (await context.adapter.resolveGuildMember(message.guild_id, referencedMessage.author.id));
|
|
64
|
+
const channel = await context.adapter.resolveChannel(message.channel_id);
|
|
65
|
+
const role = await context.adapter.resolveHighestGuildMemberRole(referencedMember, message.guild_id);
|
|
66
|
+
const roleColor = role?.color ?? referencedMessage.author.accent_color;
|
|
67
|
+
const authorName = referencedMessage.author.bot
|
|
68
|
+
? referencedMessage.author.username
|
|
69
|
+
: user_1.userUtils.displayName(referencedMessage.author);
|
|
70
|
+
return (react_1.default.createElement(discord_components_react_render_1.DiscordReply, { slot: "reply", edited: !isCommand && referencedMessage.edited_timestamp !== null, attachment: referencedMessage.attachments.length > 0, author: referencedMessage.member?.nick ?? authorName, avatar: user_1.userUtils.avatarURL(referencedMessage.author, { size: 32 }), roleColor: roleColor ? (0, utils_1.convertToHEX)(roleColor) : undefined, bot: !isCrosspost && referencedMessage.author.bot, verified: (0, utils_1.hasFlag)({
|
|
71
|
+
bitfield: referencedMessage.author.flags ?? referencedMessage.author.public_flags,
|
|
72
|
+
flag: v10_1.UserFlags.VerifiedBot,
|
|
73
|
+
}), op: Boolean(channel && channel_1.channelUtils.isThread(channel) && referencedMessage.author.id === channel.owner_id), server: isCrosspost ?? undefined, command: isCommand }, referencedMessage.content ? (react_1.default.createElement("span", { "data-goto": referencedMessage.id },
|
|
74
|
+
react_1.default.createElement(content_1.default, { content: referencedMessage.content, context: { ...context, type: content_1.RenderType.REPLY } }))) : isCommand ? (react_1.default.createElement("em", { "data-goto": referencedMessage.id }, "Click to see command.")) : (react_1.default.createElement("em", { "data-goto": referencedMessage.id }, "Click to see attachment."))));
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=reply.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reply.js","sourceRoot":"","sources":["../../../src/generator/renderers/reply.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { APIRole, APIUser } from 'discord-api-types/v10';
|
|
2
|
+
import { MessageType } from 'discord-api-types/v10';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import type { RenderMessageContext } from '..';
|
|
5
|
+
import type { APIMessageData, GuildMemberData } from '../../utils/channel';
|
|
6
|
+
export declare const SystemMessageTypes: MessageType[];
|
|
7
|
+
export default function SystemMessage({ message, context, }: {
|
|
8
|
+
message: APIMessageData;
|
|
9
|
+
context: RenderMessageContext;
|
|
10
|
+
}): Promise<React.JSX.Element | undefined>;
|
|
11
|
+
export declare function Highlight({ children, color }: {
|
|
12
|
+
children: React.ReactNode;
|
|
13
|
+
color?: string;
|
|
14
|
+
}): React.JSX.Element;
|
|
15
|
+
export declare function JoinMessage({ member, fallbackUser, highestRole, }: {
|
|
16
|
+
member: GuildMemberData | null | undefined;
|
|
17
|
+
fallbackUser: APIUser;
|
|
18
|
+
highestRole?: APIRole;
|
|
19
|
+
}): Promise<(string | React.JSX.Element)[]>;
|