UNPKG

@kotori-bot/kotori-plugin-adapter-sandbox

Version:

Kotori modules test environment,a visual sandbox

76 lines (75 loc) 2.72 kB
/** * @Package @kotori-bot/kotori-plugin-adapter-sandbox * @Version 1.1.1 * @Author Hotaru <me@hotaru.icu> * @Copyright 2024-2025 Hotaru. All rights reserved. * @License BAN-ZHINESE-USING * @Link https://github.com/kotorijs/kotori * @Date 2025/8/4 17:29:40 */ "use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var elements_exports = {}; __export(elements_exports, { SandboxElements: () => SandboxElements, default: () => elements_default }); module.exports = __toCommonJS(elements_exports); var import_kotori_bot = require("kotori-bot"); class SandboxElements extends import_kotori_bot.Elements { getSupportsElements() { return ["text", "image", "voice", "video", "location", "mention", "mentionAll", "reply"]; } decode(message) { if (typeof message === "string") return message; if (!(message instanceof import_kotori_bot.MessageSingle)) { return Array.from(message).map((el) => this.decode(el)).join(""); } switch (message.data.type) { case "text": return message.toString(); case "image": return `[image,${message.data.content}]`; case "voice": return `[voice,${message.data.content}]`; case "video": return `[video,${message.data.content}]`; case "location": return `[location,${message.data.title},${message.data.content},${message.data.latitude},${message.data.longitude}]`; case "mention": return `[mention,${message.data.userId}]`; case "mentionAll": return "[all]"; case "reply": return `[reply,${message.data.messageId}]`; case "file": return `[file,${message.data.content}]`; case "audio": return `[audio,${message.data.content}]`; } } encode(raw) { return new import_kotori_bot.MessageSingle("text", { text: raw }); } } var elements_default = SandboxElements; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { SandboxElements });